jota 0.9.0dev5 → 0.9.0.dev7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +1 -1
- data/lib/clip.rb +7 -7
- data/lib/gui.rb +9 -23
- data/lib/helper.rb +2 -30
- data/lib/immediate.rb +1 -1
- data/lib/jota.glade +167 -165
- data/lib/jota.rb +34 -29
- data/lib/jota_curses.rb +27 -29
- data/lib/version.rb +4 -3
- metadata +11 -10
data/LICENSE
CHANGED
data/lib/clip.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
# $Id: clip.rb
|
2
|
+
# $Id: clip.rb 296 2011-01-31 10:39:18Z dz $
|
3
3
|
|
4
4
|
require 'time'
|
5
5
|
require 'version'
|
@@ -43,11 +43,11 @@ def Clip.from_mbox(str)
|
|
43
43
|
(key, value) = line.split(/\s*: /,2)
|
44
44
|
value.chomp!
|
45
45
|
case key.downcase
|
46
|
-
when "x-flags"
|
46
|
+
when "flags", "x-flags"
|
47
47
|
cl.wrap = value.downcase.include?("w")
|
48
48
|
when "subject"
|
49
|
-
cl.title,charset =
|
50
|
-
when "date"
|
49
|
+
cl.title,charset = value
|
50
|
+
when "created-at", "date"
|
51
51
|
cl.created = Time.parse(value)
|
52
52
|
when "content-type"
|
53
53
|
case value
|
@@ -70,9 +70,9 @@ def to_mbox
|
|
70
70
|
str = ""
|
71
71
|
charset = "UTF-8"
|
72
72
|
|
73
|
-
str << "
|
73
|
+
str << "Created-At: %s\n" % @created.ctime
|
74
74
|
|
75
|
-
str << "Subject: %s\n" %
|
75
|
+
str << "Subject: %s\n" % @title
|
76
76
|
|
77
77
|
case @type
|
78
78
|
when :text
|
@@ -81,7 +81,7 @@ def to_mbox
|
|
81
81
|
str << "Content-Type: application/x-jota-pref\n"
|
82
82
|
end
|
83
83
|
|
84
|
-
str << "
|
84
|
+
str << "Flags: "
|
85
85
|
str << "w" if @wrap
|
86
86
|
str << "\n"
|
87
87
|
|
data/lib/gui.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
# $Id: gui.rb
|
3
|
+
# $Id: gui.rb 299 2011-02-24 21:19:55Z dz $
|
4
4
|
|
5
5
|
|
6
6
|
# rdoc: see http://en.wikibooks.org/wiki/Ruby_Programming/RubyDoc
|
@@ -38,7 +38,6 @@ require 'preferences'
|
|
38
38
|
class Gui
|
39
39
|
|
40
40
|
require 'libglade2'
|
41
|
-
include GetText
|
42
41
|
|
43
42
|
attr :glade
|
44
43
|
|
@@ -84,40 +83,31 @@ end
|
|
84
83
|
|
85
84
|
def create_gui(width=nil, height=nil)
|
86
85
|
glade_file = File.dirname(__FILE__)+"/jota.glade"
|
87
|
-
domain = nil
|
88
|
-
localedir = nil
|
89
86
|
|
90
87
|
print_verbose "creating gui"
|
91
88
|
|
92
|
-
bindtextdomain(domain, localedir, nil, "UTF-8")
|
93
|
-
|
94
89
|
print_verbose " loading glade spec from '#{glade_file}'"
|
95
|
-
@glade = GladeXML.new(glade_file,
|
96
|
-
nil,
|
97
|
-
domain,
|
98
|
-
localedir,
|
99
|
-
GladeXML::FILE) do |handler|
|
100
|
-
method(handler)
|
101
|
-
end
|
102
|
-
|
103
90
|
|
104
|
-
|
105
|
-
|
106
|
-
|
91
|
+
@builder = Gtk::Builder.new
|
92
|
+
@glade = @builder.add_from_file(glade_file)
|
93
|
+
@builder.connect_signals do |handler|
|
94
|
+
method(handler)
|
95
|
+
end
|
107
96
|
|
97
|
+
# Widgets
|
98
|
+
@top_window = @glade["top"]
|
99
|
+
@clip_widget = @glade["clip"]
|
108
100
|
|
109
101
|
# Show
|
110
102
|
print_debug " showing widgets"
|
111
103
|
show
|
112
104
|
|
113
|
-
|
114
105
|
# Set size of top window
|
115
106
|
width = 740 if width.nil?
|
116
107
|
height = 280 if height.nil?
|
117
108
|
@top_window.resize(width, height)
|
118
109
|
print_verbose "setting window size to #{width}x#{height}"
|
119
110
|
|
120
|
-
|
121
111
|
# Accelerators
|
122
112
|
@accel_group = Gtk::AccelGroup.new
|
123
113
|
@top_window.add_accel_group(@accel_group)
|
@@ -134,21 +124,17 @@ def create_gui(width=nil, height=nil)
|
|
134
124
|
@glade["menu_quit"].add_accelerator('activate', @accel_group,
|
135
125
|
Gdk::Keyval::GDK_Q, Gdk::Window::CONTROL_MASK, Gtk::ACCEL_VISIBLE)
|
136
126
|
|
137
|
-
|
138
127
|
# Update buttons and stuff
|
139
128
|
update
|
140
129
|
set_style
|
141
130
|
set_about_dialog
|
142
131
|
|
143
|
-
|
144
132
|
# Call 'update' and 'autosave' every second
|
145
133
|
Gtk.timeout_add(1000) do
|
146
134
|
update
|
147
135
|
autosave
|
148
136
|
true
|
149
137
|
end
|
150
|
-
|
151
|
-
|
152
138
|
end
|
153
139
|
|
154
140
|
|
data/lib/helper.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
|
2
|
-
# $Id: helper.rb
|
2
|
+
# $Id: helper.rb 296 2011-01-31 10:39:18Z dz $
|
3
3
|
|
4
4
|
def escape_from(str)
|
5
5
|
str.gsub!(/\n(>*)From /,"\n\\1>From ")
|
@@ -16,7 +16,7 @@ end
|
|
16
16
|
def expand_filename(str, dirname, filename)
|
17
17
|
# test on $RUBY_PLATFORM is less reliable, can be mswin, mingw, java
|
18
18
|
if ENV["HOMEDRIVE"] then
|
19
|
-
homedir = ENV["HOMEDRIVE"]+
|
19
|
+
homedir = ENV["HOMEDRIVE"]+ENV["HOMEPATH"]
|
20
20
|
else
|
21
21
|
homedir = ENV["HOME"]
|
22
22
|
end
|
@@ -98,31 +98,3 @@ def editor(str)
|
|
98
98
|
|
99
99
|
return lines
|
100
100
|
end
|
101
|
-
|
102
|
-
def q_encode(charset,str)
|
103
|
-
#if str =~ /^[ -<>@-^`-~]*$/ then # all printable except "=?_"
|
104
|
-
if str =~ /[ -~]*/ then
|
105
|
-
result = str
|
106
|
-
else
|
107
|
-
encoded = [str].pack("M")
|
108
|
-
encoded.gsub!(/ /,"_")
|
109
|
-
encoded.gsub!(/\?/,"=3F")
|
110
|
-
encoded.sub!(/=$/,"")
|
111
|
-
result = "=?%s?Q?%s?=" % [charset, encoded]
|
112
|
-
end
|
113
|
-
|
114
|
-
return result
|
115
|
-
end
|
116
|
-
|
117
|
-
def q_decode(str)
|
118
|
-
md = /^=\?(.*)?\?Q\?(.*?)\?=/i.match(str)
|
119
|
-
if md then
|
120
|
-
charset = md[1]
|
121
|
-
str.gsub!(/_/," ")
|
122
|
-
str = md[2].unpack("M").first
|
123
|
-
else
|
124
|
-
charset = nil
|
125
|
-
end
|
126
|
-
|
127
|
-
return str,charset
|
128
|
-
end
|
data/lib/immediate.rb
CHANGED