termtter 1.2.0 → 1.3.0
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/ChangeLog +115 -0
- data/README.rdoc +25 -10
- data/Rakefile +53 -34
- data/lib/plugins/cool.rb +2 -5
- data/lib/plugins/curry.rb +43 -0
- data/lib/plugins/db.rb +91 -0
- data/lib/plugins/{auto_reload.rb → defaults/auto_reload.rb} +0 -0
- data/lib/plugins/defaults/command_line.rb +111 -0
- data/lib/plugins/{exec.rb → defaults/exec.rb} +2 -7
- data/lib/plugins/{fib.rb → defaults/fib.rb} +1 -4
- data/lib/plugins/defaults/retweet.rb +34 -0
- data/lib/plugins/{standard_commands.rb → defaults/standard_commands.rb} +60 -136
- data/lib/plugins/defaults/standard_completion.rb +67 -0
- data/lib/plugins/{stdout.rb → defaults/stdout.rb} +30 -19
- data/lib/plugins/defaults.rb +14 -0
- data/lib/plugins/en2ja.rb +11 -5
- data/lib/plugins/english.rb +2 -2
- data/lib/plugins/expand-tinyurl.rb +27 -6
- data/lib/plugins/github-issues.rb +192 -0
- data/lib/plugins/group.rb +30 -4
- data/lib/plugins/growl.rb +10 -1
- data/lib/plugins/http_server/favicon.ico +0 -0
- data/lib/plugins/http_server/index.html +117 -0
- data/lib/plugins/http_server.rb +82 -0
- data/lib/plugins/irb.rb +6 -0
- data/lib/plugins/l2.rb +1 -1
- data/lib/plugins/list_with_opts.rb +0 -3
- data/lib/plugins/log.rb +6 -9
- data/lib/plugins/modify_arg_hook_sample.rb +3 -5
- data/lib/plugins/multi_reply.rb +0 -5
- data/lib/plugins/notify-send.rb +1 -1
- data/lib/plugins/notify-send2.rb +1 -1
- data/lib/plugins/notify-send3.rb +11 -3
- data/lib/plugins/open_url.rb +0 -8
- data/lib/plugins/otsune.rb +3 -9
- data/lib/plugins/outputz.rb +1 -1
- data/lib/plugins/pool.rb +30 -0
- data/lib/plugins/quicklook.rb +1 -1
- data/lib/plugins/saykanji.rb +81 -0
- data/lib/plugins/shell.rb +1 -6
- data/lib/plugins/sl.rb +8 -8
- data/lib/plugins/tinyurl.rb +26 -7
- data/lib/plugins/trends.rb +84 -0
- data/lib/plugins/twitpic.rb +46 -0
- data/lib/plugins/uri-open.rb +1 -1
- data/lib/plugins/wassr.rb +0 -3
- data/lib/plugins/whois.rb +45 -0
- data/lib/plugins/yhara.rb +2 -6
- data/lib/termtter/client.rb +73 -100
- data/lib/termtter/config.rb +4 -6
- data/lib/termtter/config_setup.rb +1 -1
- data/lib/termtter/hook.rb +2 -2
- data/lib/termtter/optparse.rb +14 -1
- data/lib/termtter/system_extensions.rb +3 -2
- data/lib/termtter/task_manager.rb +1 -5
- data/lib/termtter/version.rb +1 -1
- data/spec/plugins/cool_spec.rb +1 -1
- data/spec/plugins/curry_spec.rb +13 -0
- data/spec/plugins/db_spec.rb +62 -0
- data/spec/plugins/english_spec.rb +2 -2
- data/spec/plugins/fib_spec.rb +2 -2
- data/spec/plugins/filter_spec.rb +2 -2
- data/spec/plugins/pause_spec.rb +1 -1
- data/spec/plugins/primes_spec.rb +2 -2
- data/spec/plugins/shell_spec.rb +1 -1
- data/spec/plugins/sl_spec.rb +1 -1
- data/spec/plugins/{standard_plugins_spec.rb → standard_commands_spec.rb} +2 -2
- data/spec/plugins/whois_spec.rb +20 -0
- data/spec/termtter/client_spec.rb +114 -37
- data/spec/termtter/config_spec.rb +10 -0
- data/spec/termtter/optparse_spec.rb +16 -0
- data/spec/termtter_spec.rb +7 -8
- metadata +39 -19
- data/History.txt +0 -4
- data/lib/plugins/direct_messages.rb +0 -36
- data/lib/plugins/retweet.rb +0 -46
@@ -1,27 +1,24 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
|
-
|
3
2
|
require File.dirname(__FILE__) + '/../spec_helper'
|
4
3
|
|
5
4
|
module Termtter
|
6
|
-
|
7
5
|
describe Client do
|
8
|
-
|
9
6
|
before do
|
10
7
|
Client.setup_logger
|
11
8
|
end
|
12
9
|
|
13
|
-
it '
|
10
|
+
it 'takes command' do
|
14
11
|
command = Command.new(:name => :test)
|
15
12
|
Client.register_command(command)
|
16
13
|
Client.get_command(:test).should == command
|
17
14
|
end
|
18
15
|
|
19
|
-
it '
|
16
|
+
it 'takes command as Hash' do
|
20
17
|
Client.register_command(:name => :test)
|
21
18
|
Client.get_command(:test).name.should == :test
|
22
19
|
end
|
23
20
|
|
24
|
-
it '
|
21
|
+
it 'takes register_command as block' do
|
25
22
|
process = lambda {}
|
26
23
|
Client.register_command('test', &process)
|
27
24
|
command = Client.get_command(:test)
|
@@ -29,7 +26,7 @@ module Termtter
|
|
29
26
|
command.exec_proc.should == process
|
30
27
|
end
|
31
28
|
|
32
|
-
it '
|
29
|
+
it 'takes register_command as block with options' do
|
33
30
|
process = lambda {}
|
34
31
|
Client.register_command('test', :help => 'help', &process)
|
35
32
|
command = Client.get_command(:test)
|
@@ -38,7 +35,13 @@ module Termtter
|
|
38
35
|
command.help.should == 'help'
|
39
36
|
end
|
40
37
|
|
41
|
-
it '
|
38
|
+
it 'takes register command as block with symbol name' do
|
39
|
+
lambda {
|
40
|
+
Client.register_command(:name) {}
|
41
|
+
}.should_not raise_error
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'takes add_command as block' do
|
42
45
|
Client.add_command('test') do |c|
|
43
46
|
c.aliases = ['t']
|
44
47
|
c.help = 'test command is a test'
|
@@ -49,7 +52,7 @@ module Termtter
|
|
49
52
|
command.help.should == 'test command is a test'
|
50
53
|
end
|
51
54
|
|
52
|
-
it '
|
55
|
+
it 'takes add_command as block without past config' do
|
53
56
|
Client.add_command('past') do |c|
|
54
57
|
c.help = 'past help'
|
55
58
|
end
|
@@ -62,7 +65,7 @@ module Termtter
|
|
62
65
|
lambda { Client.add_command('past') }.should raise_error(ArgumentError)
|
63
66
|
end
|
64
67
|
|
65
|
-
it '
|
68
|
+
it 'calls command' do
|
66
69
|
command_arg = nil
|
67
70
|
command = Command.new(:name => :test, :exec_proc => lambda {|arg| command_arg = arg})
|
68
71
|
Client.register_command(command)
|
@@ -79,18 +82,18 @@ module Termtter
|
|
79
82
|
end
|
80
83
|
end
|
81
84
|
|
82
|
-
it '
|
85
|
+
it 'takes new_hook' do
|
83
86
|
hook = Hook.new(:name => :test)
|
84
87
|
Client.register_hook(hook)
|
85
88
|
Client.get_hook(:test).should == hook
|
86
89
|
end
|
87
90
|
|
88
|
-
it '
|
91
|
+
it 'takes hook as Hash' do
|
89
92
|
Client.register_hook(:name => :test)
|
90
93
|
Client.get_hook(:test).name.should == :test
|
91
94
|
end
|
92
95
|
|
93
|
-
it '
|
96
|
+
it 'calls new_hook' do
|
94
97
|
hook_called = false
|
95
98
|
Client.register_hook(:name => :test1, :points => [:point1], :exec_proc => lambda {hook_called = true})
|
96
99
|
hook_called.should == false
|
@@ -98,7 +101,7 @@ module Termtter
|
|
98
101
|
hook_called.should == true
|
99
102
|
end
|
100
103
|
|
101
|
-
it '
|
104
|
+
it 'calls new_hook with args' do
|
102
105
|
arg1 = nil
|
103
106
|
arg2 = nil
|
104
107
|
Client.register_hook(:name => :test1, :points => [:point1], :exec_proc => lambda {|a1, a2| arg1 = a1; arg2 = a2})
|
@@ -109,7 +112,7 @@ module Termtter
|
|
109
112
|
arg2.should == 'bar'
|
110
113
|
end
|
111
114
|
|
112
|
-
it '
|
115
|
+
it 'return hooks when call get_hooks' do
|
113
116
|
hook1 = Client.register_hook(:name => :test1, :points => [:point1])
|
114
117
|
hook2 = Client.register_hook(:name => :test2, :points => [:point1])
|
115
118
|
hook3 = Client.register_hook(:name => :test3, :points => [:point2])
|
@@ -121,7 +124,7 @@ module Termtter
|
|
121
124
|
hooks.include?(hook3).should == false
|
122
125
|
end
|
123
126
|
|
124
|
-
it '
|
127
|
+
it 'calls decide_arg hooks' do
|
125
128
|
input_command = nil
|
126
129
|
input_arg = nil
|
127
130
|
decided_arg = nil
|
@@ -131,7 +134,7 @@ module Termtter
|
|
131
134
|
Client.register_hook( :name => :test2,
|
132
135
|
:points => [:pre_exec_update],
|
133
136
|
:exec_proc => lambda {|cmd, arg| decided_arg = arg})
|
134
|
-
Client.register_command(:name => :update, :aliases => [:u])
|
137
|
+
Client.register_command(:name => :update, :aliases => [:u], :exec => lambda{|arg|})
|
135
138
|
|
136
139
|
input_command.should == nil
|
137
140
|
input_arg.should == nil
|
@@ -142,31 +145,62 @@ module Termtter
|
|
142
145
|
decided_arg.should == 'FOO'
|
143
146
|
end
|
144
147
|
|
145
|
-
it '
|
148
|
+
it 'calls pre_command hooks' do
|
149
|
+
hook_called = false
|
150
|
+
Client.register_hook( :name => :test,
|
151
|
+
:points => [:pre_command],
|
152
|
+
:exec_proc => lambda {|text| hook_called = true; text})
|
153
|
+
Client.register_command(:name => :update, :exec => lambda{|arg|})
|
154
|
+
|
155
|
+
hook_called.should == false
|
156
|
+
Client.call_commands('')
|
157
|
+
hook_called.should == true
|
158
|
+
|
159
|
+
hook_called = false
|
160
|
+
Client.call_commands('update foo')
|
161
|
+
hook_called.should == true
|
162
|
+
end
|
163
|
+
|
164
|
+
it 'calls post_command hooks' do
|
165
|
+
hook_called = false
|
166
|
+
Client.register_hook( :name => :test,
|
167
|
+
:points => [:post_command],
|
168
|
+
:exec_proc => lambda {|text| hook_called = true})
|
169
|
+
Client.register_command(:name => :update, :exec => lambda{|arg|})
|
170
|
+
|
171
|
+
hook_called.should == false
|
172
|
+
Client.call_commands('')
|
173
|
+
hook_called.should == false
|
174
|
+
|
175
|
+
Client.call_commands('update foo')
|
176
|
+
hook_called.should == true
|
177
|
+
end
|
178
|
+
|
179
|
+
it 'calls pre_exec hooks' do
|
146
180
|
hook_called = false
|
147
181
|
Client.register_hook( :name => :test,
|
148
182
|
:points => [:pre_exec_update],
|
149
183
|
:exec_proc => lambda {|cmd, arg| hook_called = true})
|
150
|
-
Client.register_command(:name => :update)
|
184
|
+
Client.register_command(:name => :update, :exec => lambda{|arg|})
|
151
185
|
|
152
186
|
hook_called.should == false
|
153
187
|
Client.call_commands('update foo')
|
154
188
|
hook_called.should == true
|
155
189
|
end
|
156
190
|
|
157
|
-
it '
|
191
|
+
it 'able to cancel exec command' do
|
158
192
|
command_called = false
|
159
193
|
Client.register_hook( :name => :test,
|
160
194
|
:points => [:pre_exec_update],
|
161
|
-
:exec_proc => lambda {|cmd, arg|
|
162
|
-
Client.register_command(:name => :update, :exec_proc => lambda {|
|
195
|
+
:exec_proc => lambda {|cmd, arg| raise CommandCanceled})
|
196
|
+
Client.register_command(:name => :update, :exec_proc => lambda {|arg| command_called = true})
|
163
197
|
|
164
198
|
command_called.should == false
|
165
199
|
Client.call_commands('update foo')
|
166
200
|
command_called.should == false
|
167
201
|
end
|
168
202
|
|
169
|
-
it '
|
203
|
+
it 'calls post_exec hooks' do
|
170
204
|
command_result = nil
|
171
205
|
Client.register_hook( :name => :test,
|
172
206
|
:points => [:post_exec_update],
|
@@ -178,7 +212,7 @@ module Termtter
|
|
178
212
|
command_result.should == 'foo'
|
179
213
|
end
|
180
214
|
|
181
|
-
it '
|
215
|
+
it 'calls exit hooks' do
|
182
216
|
hook_called = false
|
183
217
|
Client.register_hook(
|
184
218
|
:name => :test,
|
@@ -192,7 +226,7 @@ module Termtter
|
|
192
226
|
hook_called.should == true
|
193
227
|
end
|
194
228
|
|
195
|
-
it '
|
229
|
+
it 'calls plural hooks' do
|
196
230
|
hook1_called = false
|
197
231
|
hook2_called = false
|
198
232
|
Client.register_hook(:name => :hook1, :points => [:exit], :exec_proc => lambda {hook1_called = true})
|
@@ -206,7 +240,7 @@ module Termtter
|
|
206
240
|
hook2_called.should == true
|
207
241
|
end
|
208
242
|
|
209
|
-
it '
|
243
|
+
it 'is able to override hooks' do
|
210
244
|
hook1_called = false
|
211
245
|
hook2_called = false
|
212
246
|
Client.register_hook(:name => :hook, :points => [:exit], :exec_proc => lambda {hook1_called = true})
|
@@ -220,7 +254,31 @@ module Termtter
|
|
220
254
|
hook2_called.should == true
|
221
255
|
end
|
222
256
|
|
223
|
-
it '
|
257
|
+
it 'takes register_hook as block' do
|
258
|
+
process = lambda {}
|
259
|
+
Client.register_hook('test', &process)
|
260
|
+
hook = Client.get_hook(:test)
|
261
|
+
hook.name.should == :test
|
262
|
+
hook.exec_proc.should == process
|
263
|
+
end
|
264
|
+
|
265
|
+
it 'takes register_hook as block with options' do
|
266
|
+
process = lambda {}
|
267
|
+
Client.register_hook('test', :point => :foo, &process)
|
268
|
+
hook = Client.get_hook(:test)
|
269
|
+
hook.name.should == :test
|
270
|
+
hook.exec_proc.should == process
|
271
|
+
hook.points.should == [:foo]
|
272
|
+
end
|
273
|
+
|
274
|
+
it 'takes register hook as block with symbol name' do
|
275
|
+
lambda {
|
276
|
+
Client.register_hook(:name) {}
|
277
|
+
}.should_not raise_error
|
278
|
+
end
|
279
|
+
|
280
|
+
it 'runs' do
|
281
|
+
pending
|
224
282
|
Client.should_receive(:load_config)
|
225
283
|
Termtter::API.should_receive(:setup)
|
226
284
|
Client.should_receive(:start_input_thread)
|
@@ -229,31 +287,31 @@ module Termtter
|
|
229
287
|
|
230
288
|
it 'load_config'
|
231
289
|
|
232
|
-
it '
|
290
|
+
it 'does nothing when ~/.termtter is directory' do
|
233
291
|
File.should_receive(:ftype).and_return('directory')
|
234
292
|
Client.should_not_receive(:move_legacy_config_file)
|
235
293
|
Client.legacy_config_support
|
236
294
|
end
|
237
295
|
|
238
|
-
it '
|
296
|
+
it 'does "move_legacy_config_file" when ~/.termtter is file' do
|
239
297
|
File.should_receive(:ftype).and_return('file')
|
240
298
|
Client.should_receive(:move_legacy_config_file)
|
241
299
|
Client.legacy_config_support
|
242
300
|
end
|
243
301
|
|
244
|
-
it '
|
302
|
+
it 'moves legacy config file' do
|
245
303
|
FileUtils.should_receive(:mv).twice
|
246
304
|
Dir.should_receive(:mkdir)
|
247
305
|
Client.move_legacy_config_file
|
248
306
|
end
|
249
307
|
|
250
|
-
it '
|
308
|
+
it 'handles error' do
|
251
309
|
logger = Client.instance_eval{@logger}
|
252
310
|
logger.should_receive(:error).with("StandardError: error")
|
253
311
|
Client.handle_error StandardError.new('error')
|
254
312
|
end
|
255
313
|
|
256
|
-
it '
|
314
|
+
it 'cancels command by hook' do
|
257
315
|
command = Command.new(:name => :test)
|
258
316
|
Client.register_command(command)
|
259
317
|
Client.register_hook(
|
@@ -267,7 +325,7 @@ module Termtter
|
|
267
325
|
Client.call_commands('test')
|
268
326
|
end
|
269
327
|
|
270
|
-
it '
|
328
|
+
it 'gets default help' do
|
271
329
|
$stdout, old_stdout = StringIO.new, $stdout # FIXME That suspends any debug informations!
|
272
330
|
help_command = Client.get_command(:help)
|
273
331
|
help_command.should_not be_nil
|
@@ -276,7 +334,7 @@ module Termtter
|
|
276
334
|
$stdout = old_stdout
|
277
335
|
end
|
278
336
|
|
279
|
-
it '
|
337
|
+
it 'gets an added help' do
|
280
338
|
Client.register_command(
|
281
339
|
:name => :foo,
|
282
340
|
:help => [
|
@@ -304,13 +362,13 @@ module Termtter
|
|
304
362
|
Client.commands.size.should == 3
|
305
363
|
end
|
306
364
|
|
307
|
-
it '
|
365
|
+
it 'finds a command' do
|
308
366
|
Client.find_commands('foo1').size.should == 1
|
309
367
|
Client.find_commands('foo1')[0].name.should == :foo1
|
310
368
|
Client.find_commands('bar').size.should == 1
|
311
369
|
end
|
312
370
|
|
313
|
-
it '
|
371
|
+
it 'finds no command' do
|
314
372
|
Client.find_commands('foo').size.should == 0
|
315
373
|
end
|
316
374
|
end
|
@@ -320,9 +378,28 @@ module Termtter
|
|
320
378
|
Client.clear_command
|
321
379
|
end
|
322
380
|
|
323
|
-
it '
|
381
|
+
it 'no command' do
|
324
382
|
Client.commands.size.should == 0
|
325
383
|
end
|
326
384
|
end
|
385
|
+
|
386
|
+
describe '.plug' do
|
387
|
+
it 'loads a plugin' do
|
388
|
+
Client.should_receive(:load).with('plugins/aaa.rb')
|
389
|
+
Client.plug 'aaa'
|
390
|
+
end
|
391
|
+
|
392
|
+
it 'loads a plugin with plugin name as Symbol' do
|
393
|
+
Client.should_receive(:load).with('plugins/aaa.rb')
|
394
|
+
Client.plug :aaa
|
395
|
+
end
|
396
|
+
|
397
|
+
it 'loads plugins' do
|
398
|
+
Client.should_receive(:load).with('plugins/aaa.rb')
|
399
|
+
Client.should_receive(:load).with('plugins/bbb.rb')
|
400
|
+
Client.should_receive(:load).with('plugins/ccc.rb')
|
401
|
+
Client.plug ['aaa', 'bbb', 'ccc']
|
402
|
+
end
|
403
|
+
end
|
327
404
|
end
|
328
405
|
end
|
@@ -107,5 +107,15 @@ module Termtter
|
|
107
107
|
@config.plugins.set_default :only, 'after_value'
|
108
108
|
@config.plugins.only.should == 'before_value'
|
109
109
|
end
|
110
|
+
|
111
|
+
it 'should be called set_default with int multiple times' do
|
112
|
+
@config.set_default(:foo, 1)
|
113
|
+
@config.set_default(:foo, 2)
|
114
|
+
end
|
115
|
+
|
116
|
+
it 'should be called set_default with string multiple times' do
|
117
|
+
@config.set_default(:foo, 'foo')
|
118
|
+
@config.set_default(:foo, 'bar')
|
119
|
+
end
|
110
120
|
end
|
111
121
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
require File.dirname(__FILE__) + '/../spec_helper'
|
3
|
+
|
4
|
+
describe 'optparse' do
|
5
|
+
def run_termtter(opt)
|
6
|
+
`./run_termtter.rb #{opt}`
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'accepts -h option' do
|
10
|
+
run_termtter('-h').should match(/Usage/)
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'accepts -m option' do
|
14
|
+
pending
|
15
|
+
end
|
16
|
+
end
|
data/spec/termtter_spec.rb
CHANGED
@@ -4,26 +4,25 @@ require File.dirname(__FILE__) + '/spec_helper'
|
|
4
4
|
|
5
5
|
describe Termtter, 'when plugin is called (without init option)' do
|
6
6
|
it 'should require global plugin if exist' do
|
7
|
-
should_receive(:load).with('plugins/aaa.rb')
|
8
|
-
|
7
|
+
Termtter::Client.should_receive(:load).with('plugins/aaa.rb')
|
8
|
+
Termtter::Client.plug 'aaa'
|
9
9
|
end
|
10
10
|
|
11
11
|
it 'should require user plugin if not exist' do
|
12
|
-
should_receive(:load).with('plugins/aaa.rb')
|
13
|
-
|
12
|
+
Termtter::Client.should_receive(:load).with('plugins/aaa.rb')
|
13
|
+
Termtter::Client.plug 'aaa'
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'should handle_error if there are no plugins in global or user' do
|
17
17
|
Termtter::Client.should_receive(:handle_error)
|
18
|
-
|
18
|
+
Termtter::Client.plug 'not-exist-plugin-hehehehehehe'
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
22
|
describe Termtter, 'when plugin is called (with init option)' do
|
23
23
|
it 'init option will become config' do
|
24
|
-
should_receive(:load)
|
25
|
-
|
26
|
-
plugin 'aaa', :bbb => :ccc
|
24
|
+
Termtter::Client.should_receive(:load)
|
25
|
+
Termtter::Client.plug 'aaa', :bbb => :ccc
|
27
26
|
config.plugins.aaa.bbb.should == :ccc
|
28
27
|
end
|
29
28
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: termtter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jugyo
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2009-
|
13
|
+
date: 2009-07-27 00:00:00 +09:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -53,7 +53,7 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 0.6.4
|
55
55
|
version:
|
56
|
-
description: Termtter is a terminal based Twitter client
|
56
|
+
description: Termtter is a terminal based Twitter client.
|
57
57
|
email: jugyo.org@gmail.com
|
58
58
|
executables:
|
59
59
|
- kill_termtter
|
@@ -62,28 +62,39 @@ extensions: []
|
|
62
62
|
|
63
63
|
extra_rdoc_files:
|
64
64
|
- README.rdoc
|
65
|
-
-
|
65
|
+
- ChangeLog
|
66
66
|
files:
|
67
|
+
- Rakefile
|
68
|
+
- README.rdoc
|
69
|
+
- ChangeLog
|
67
70
|
- lib/plugins/addspace.rb
|
68
71
|
- lib/plugins/april_fool.rb
|
69
|
-
- lib/plugins/auto_reload.rb
|
70
72
|
- lib/plugins/bomb.rb
|
71
73
|
- lib/plugins/clear.rb
|
72
74
|
- lib/plugins/command_plus.rb
|
73
75
|
- lib/plugins/confirm.rb
|
74
76
|
- lib/plugins/cool.rb
|
75
77
|
- lib/plugins/countter.rb
|
78
|
+
- lib/plugins/curry.rb
|
79
|
+
- lib/plugins/db.rb
|
80
|
+
- lib/plugins/defaults/auto_reload.rb
|
81
|
+
- lib/plugins/defaults/command_line.rb
|
82
|
+
- lib/plugins/defaults/exec.rb
|
83
|
+
- lib/plugins/defaults/fib.rb
|
84
|
+
- lib/plugins/defaults/retweet.rb
|
85
|
+
- lib/plugins/defaults/standard_commands.rb
|
86
|
+
- lib/plugins/defaults/standard_completion.rb
|
87
|
+
- lib/plugins/defaults/stdout.rb
|
88
|
+
- lib/plugins/defaults.rb
|
76
89
|
- lib/plugins/devel.rb
|
77
|
-
- lib/plugins/direct_messages.rb
|
78
90
|
- lib/plugins/en2ja.rb
|
79
91
|
- lib/plugins/english.rb
|
80
92
|
- lib/plugins/erb.rb
|
81
|
-
- lib/plugins/exec.rb
|
82
93
|
- lib/plugins/exec_and_update.rb
|
83
94
|
- lib/plugins/expand-tinyurl.rb
|
84
|
-
- lib/plugins/fib.rb
|
85
95
|
- lib/plugins/fib_filter.rb
|
86
96
|
- lib/plugins/filter.rb
|
97
|
+
- lib/plugins/github-issues.rb
|
87
98
|
- lib/plugins/graduatter.rb
|
88
99
|
- lib/plugins/grass.rb
|
89
100
|
- lib/plugins/group.rb
|
@@ -92,7 +103,11 @@ files:
|
|
92
103
|
- lib/plugins/hatebu.rb
|
93
104
|
- lib/plugins/hatebu_and_update.rb
|
94
105
|
- lib/plugins/history.rb
|
106
|
+
- lib/plugins/http_server/favicon.ico
|
107
|
+
- lib/plugins/http_server/index.html
|
108
|
+
- lib/plugins/http_server.rb
|
95
109
|
- lib/plugins/ignore.rb
|
110
|
+
- lib/plugins/irb.rb
|
96
111
|
- lib/plugins/irc_gw.rb
|
97
112
|
- lib/plugins/keyword.rb
|
98
113
|
- lib/plugins/l2.rb
|
@@ -111,6 +126,7 @@ files:
|
|
111
126
|
- lib/plugins/otsune.rb
|
112
127
|
- lib/plugins/outputz.rb
|
113
128
|
- lib/plugins/pause.rb
|
129
|
+
- lib/plugins/pool.rb
|
114
130
|
- lib/plugins/post_exec_hook_sample.rb
|
115
131
|
- lib/plugins/pre_exec_hook_sample.rb
|
116
132
|
- lib/plugins/primes.rb
|
@@ -120,9 +136,9 @@ files:
|
|
120
136
|
- lib/plugins/reblog.rb
|
121
137
|
- lib/plugins/reload.rb
|
122
138
|
- lib/plugins/reply.rb
|
123
|
-
- lib/plugins/retweet.rb
|
124
139
|
- lib/plugins/reverse.rb
|
125
140
|
- lib/plugins/say.rb
|
141
|
+
- lib/plugins/saykanji.rb
|
126
142
|
- lib/plugins/scrape.rb
|
127
143
|
- lib/plugins/screen-notify.rb
|
128
144
|
- lib/plugins/screen.rb
|
@@ -130,8 +146,6 @@ files:
|
|
130
146
|
- lib/plugins/shell.rb
|
131
147
|
- lib/plugins/sl.rb
|
132
148
|
- lib/plugins/spam.rb
|
133
|
-
- lib/plugins/standard_commands.rb
|
134
|
-
- lib/plugins/stdout.rb
|
135
149
|
- lib/plugins/storage/DB.rb
|
136
150
|
- lib/plugins/storage/status.rb
|
137
151
|
- lib/plugins/storage/status_mook.rb
|
@@ -141,11 +155,14 @@ files:
|
|
141
155
|
- lib/plugins/timer.rb
|
142
156
|
- lib/plugins/tinyurl.rb
|
143
157
|
- lib/plugins/translation.rb
|
158
|
+
- lib/plugins/trends.rb
|
159
|
+
- lib/plugins/twitpic.rb
|
144
160
|
- lib/plugins/typable_id.rb
|
145
161
|
- lib/plugins/update_editor.rb
|
146
162
|
- lib/plugins/uri-open.rb
|
147
163
|
- lib/plugins/wassr.rb
|
148
164
|
- lib/plugins/wassr_post.rb
|
165
|
+
- lib/plugins/whois.rb
|
149
166
|
- lib/plugins/yhara.rb
|
150
167
|
- lib/plugins/yhara_filter.rb
|
151
168
|
- lib/plugins/yonda.rb
|
@@ -154,6 +171,7 @@ files:
|
|
154
171
|
- lib/termtter/command.rb
|
155
172
|
- lib/termtter/config.rb
|
156
173
|
- lib/termtter/config_setup.rb
|
174
|
+
- lib/termtter/config_template.erb
|
157
175
|
- lib/termtter/connection.rb
|
158
176
|
- lib/termtter/hook.rb
|
159
177
|
- lib/termtter/optparse.rb
|
@@ -162,8 +180,9 @@ files:
|
|
162
180
|
- lib/termtter/task_manager.rb
|
163
181
|
- lib/termtter/version.rb
|
164
182
|
- lib/termtter.rb
|
165
|
-
- lib/termtter/config_template.erb
|
166
183
|
- spec/plugins/cool_spec.rb
|
184
|
+
- spec/plugins/curry_spec.rb
|
185
|
+
- spec/plugins/db_spec.rb
|
167
186
|
- spec/plugins/english_spec.rb
|
168
187
|
- spec/plugins/fib_spec.rb
|
169
188
|
- spec/plugins/filter_spec.rb
|
@@ -172,24 +191,25 @@ files:
|
|
172
191
|
- spec/plugins/shell_spec.rb
|
173
192
|
- spec/plugins/sl_spec.rb
|
174
193
|
- spec/plugins/spam_spec.rb
|
175
|
-
- spec/plugins/
|
194
|
+
- spec/plugins/standard_commands_spec.rb
|
176
195
|
- spec/plugins/storage/DB_spec.rb
|
177
196
|
- spec/plugins/storage/status_spec.rb
|
197
|
+
- spec/plugins/whois_spec.rb
|
178
198
|
- spec/spec_helper.rb
|
179
199
|
- spec/termtter/client_spec.rb
|
180
200
|
- spec/termtter/command_spec.rb
|
181
201
|
- spec/termtter/config_spec.rb
|
182
202
|
- spec/termtter/hook_spec.rb
|
203
|
+
- spec/termtter/optparse_spec.rb
|
183
204
|
- spec/termtter/task_manager_spec.rb
|
184
205
|
- spec/termtter/task_spec.rb
|
185
206
|
- spec/termtter_spec.rb
|
186
207
|
- test/friends_timeline.json
|
187
208
|
- test/search.json
|
188
|
-
- README.rdoc
|
189
|
-
- History.txt
|
190
|
-
- Rakefile
|
191
209
|
has_rdoc: true
|
192
210
|
homepage: http://wiki.github.com/jugyo/termtter
|
211
|
+
licenses: []
|
212
|
+
|
193
213
|
post_install_message:
|
194
214
|
rdoc_options:
|
195
215
|
- --main
|
@@ -213,9 +233,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
213
233
|
requirements: []
|
214
234
|
|
215
235
|
rubyforge_project: termtter
|
216
|
-
rubygems_version: 1.3.
|
236
|
+
rubygems_version: 1.3.4
|
217
237
|
signing_key:
|
218
|
-
specification_version:
|
219
|
-
summary: Terminal based Twitter client
|
238
|
+
specification_version: 3
|
239
|
+
summary: Terminal based Twitter client.
|
220
240
|
test_files: []
|
221
241
|
|
data/History.txt
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
# -*- coding: utf-8 -*-
|
2
|
-
module Termtter::Client
|
3
|
-
register_command(
|
4
|
-
:name => :direct_messages,
|
5
|
-
:aliases => [:ds],
|
6
|
-
:exec_proc => lambda {|arg|
|
7
|
-
event = :list_user_timeline
|
8
|
-
ds = Termtter::API.twitter.direct_messages
|
9
|
-
DM = Struct.new :id, :text, :user, :created_at, :in_reply_to_status_id
|
10
|
-
statuses = ds.map do |d|
|
11
|
-
DM.new(d.id, d.text, d.sender, d.created_at)
|
12
|
-
end
|
13
|
-
output(statuses, event)
|
14
|
-
},
|
15
|
-
:completion_proc => lambda {|cmd, arg|
|
16
|
-
},
|
17
|
-
:help => ['direct_messages,ds', 'List direct messages for you']
|
18
|
-
)
|
19
|
-
|
20
|
-
register_command(
|
21
|
-
:name => :sent_direct_messages,
|
22
|
-
:aliases => [:sds],
|
23
|
-
:exec_proc => lambda {|arg|
|
24
|
-
event = :list_user_timeline
|
25
|
-
ds = Termtter::API.twitter.sent_direct_messages
|
26
|
-
DM = Struct.new :id, :text, :user, :created_at, :in_reply_to_status_id
|
27
|
-
statuses = ds.map do |d|
|
28
|
-
DM.new(d.id, "@#{d.recipient.screen_name} #{d.text}", d.sender, d.created_at)
|
29
|
-
end
|
30
|
-
output(statuses, event)
|
31
|
-
},
|
32
|
-
:completion_proc => lambda {|cmd, arg|
|
33
|
-
},
|
34
|
-
:help => ['sent_direct_messages, sds', 'List direct messages from you']
|
35
|
-
)
|
36
|
-
end
|