automatic 14.12.2 → 26.08
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.
- checksums.yaml +5 -5
- data/README.md +635 -83
- data/VERSION +1 -1
- data/automatic.gemspec +109 -248
- data/bin/automatic +20 -139
- data/config/feed2console.yml +10 -4
- data/config/feed2markdown.yml +41 -0
- data/doc/AI_TUTORIAL.md +518 -0
- data/doc/BASIC_DESIGN.md +516 -0
- data/doc/COPYING.LESSER +165 -0
- data/doc/DEPLOYMENT.md +824 -0
- data/doc/LICENSE.md +14 -0
- data/doc/PLUGINS.md +1875 -0
- data/doc/PLUGIN_DEVELOPMENT.md +86 -0
- data/doc/POLICY.md +857 -0
- data/doc/QUICKSTART.md +256 -0
- data/doc/RELEASING.md +381 -0
- data/doc/REQUIREMENTS.md +526 -0
- data/doc/VERSIONS +208 -0
- data/lib/automatic/cli.rb +248 -0
- data/lib/automatic/environment.rb +31 -5
- data/lib/automatic/feed_maker.rb +10 -9
- data/lib/automatic/feed_parser.rb +51 -35
- data/lib/automatic/http.rb +107 -0
- data/lib/automatic/log.rb +49 -18
- data/lib/automatic/opml.rb +3 -1
- data/lib/automatic/pipeline.rb +63 -32
- data/lib/automatic/recipe.rb +56 -17
- data/lib/automatic/version.rb +14 -1
- data/lib/automatic.rb +78 -20
- data/plugins/custom_feed/svn_log.rb +73 -32
- data/plugins/custom_feed/web.rb +348 -0
- data/plugins/filter/absolute_uri.rb +43 -27
- data/plugins/filter/accept.rb +38 -45
- data/plugins/filter/claude.rb +217 -0
- data/plugins/filter/clear.rb +12 -8
- data/plugins/filter/description_link.rb +49 -51
- data/plugins/filter/full_feed.rb +158 -52
- data/plugins/filter/gemini.rb +216 -0
- data/plugins/filter/github_feed.rb +38 -26
- data/plugins/filter/ignore.rb +33 -44
- data/plugins/filter/image.rb +36 -25
- data/plugins/filter/image_source.rb +58 -52
- data/plugins/filter/join.rb +107 -0
- data/plugins/filter/one.rb +19 -26
- data/plugins/filter/open_ai.rb +198 -0
- data/plugins/filter/rand.rb +16 -17
- data/plugins/filter/sakura_ai.rb +205 -0
- data/plugins/filter/sanitize.rb +29 -34
- data/plugins/filter/sort.rb +20 -27
- data/plugins/filter/tumblr_resize.rb +31 -23
- data/plugins/notify/ikachan.rb +86 -48
- data/plugins/provide/fluentd.rb +43 -24
- data/plugins/publish/amazon_s3.rb +73 -40
- data/plugins/publish/console.rb +19 -16
- data/plugins/publish/console_link.rb +20 -17
- data/plugins/publish/eject.rb +48 -26
- data/plugins/publish/fluentd.rb +50 -30
- data/plugins/publish/hatena_bookmark.rb +88 -71
- data/plugins/publish/instapaper.rb +69 -59
- data/plugins/publish/markdown.rb +278 -0
- data/plugins/publish/memcached.rb +35 -29
- data/plugins/store/database.rb +50 -48
- data/plugins/store/digest.rb +212 -0
- data/plugins/store/file.rb +99 -68
- data/plugins/store/full_text.rb +32 -25
- data/plugins/store/permalink.rb +18 -22
- data/plugins/subscription/feed.rb +34 -21
- data/plugins/subscription/link.rb +31 -32
- data/plugins/subscription/text.rb +32 -46
- data/plugins/subscription/tumblr.rb +55 -44
- data/plugins/subscription/xml.rb +40 -36
- metadata +108 -321
- data/Gemfile +0 -38
- data/Rakefile +0 -59
- data/doc/ChangeLog +0 -303
- data/doc/PLUGINS +0 -750
- data/doc/PLUGINS.ja +0 -753
- data/doc/README +0 -511
- data/doc/README.ja +0 -519
- data/plugins/filter/google_news.rb +0 -50
- data/plugins/publish/google_calendar.rb +0 -84
- data/plugins/publish/hipchat.rb +0 -46
- data/plugins/publish/pocket.rb +0 -45
- data/plugins/publish/twitter.rb +0 -58
- data/plugins/subscription/chan_toru.rb +0 -57
- data/plugins/subscription/g_guide.rb +0 -57
- data/plugins/subscription/pocket.rb +0 -51
- data/plugins/subscription/twitter.rb +0 -69
- data/plugins/subscription/twitter_search.rb +0 -50
- data/plugins/subscription/weather.rb +0 -33
- data/script/build +0 -84
- data/spec/fixtures/sampleFeeds.tsv +0 -1
- data/spec/fixtures/sampleFeeds2.tsv +0 -2
- data/spec/fixtures/sampleRecipe.yml +0 -24
- data/spec/lib/automatic/log_spec.rb +0 -32
- data/spec/lib/automatic/pipeline_spec.rb +0 -68
- data/spec/lib/automatic/recipe_spec.rb +0 -40
- data/spec/lib/automatic_spec.rb +0 -99
- data/spec/plugins/custom_feed/svn_log_spec.rb +0 -31
- data/spec/plugins/filter/absolute_uri_spec.rb +0 -61
- data/spec/plugins/filter/accept_spec.rb +0 -331
- data/spec/plugins/filter/clear_spec.rb +0 -49
- data/spec/plugins/filter/description_link_spec.rb +0 -138
- data/spec/plugins/filter/full_feed_spec.rb +0 -129
- data/spec/plugins/filter/github_feed_spec.rb +0 -55
- data/spec/plugins/filter/google_news_spec.rb +0 -69
- data/spec/plugins/filter/ignore_spec.rb +0 -328
- data/spec/plugins/filter/image_source_spec.rb +0 -89
- data/spec/plugins/filter/image_spec.rb +0 -65
- data/spec/plugins/filter/one_spec.rb +0 -71
- data/spec/plugins/filter/rand_spec.rb +0 -52
- data/spec/plugins/filter/sanitize_spec.rb +0 -153
- data/spec/plugins/filter/sort_spec.rb +0 -189
- data/spec/plugins/filter/tumblr_resize_spec.rb +0 -109
- data/spec/plugins/notify/ikachan_spec.rb +0 -58
- data/spec/plugins/provide/fluentd_spec.rb +0 -49
- data/spec/plugins/publish/amazon_s3_spec.rb +0 -40
- data/spec/plugins/publish/console_spec.rb +0 -30
- data/spec/plugins/publish/eject_spec.rb +0 -40
- data/spec/plugins/publish/fluentd_spec.rb +0 -40
- data/spec/plugins/publish/google_calendar_spec.rb +0 -83
- data/spec/plugins/publish/hatena_bookmark_spec.rb +0 -134
- data/spec/plugins/publish/hipchat_spec.rb +0 -69
- data/spec/plugins/publish/instapaper_spec.rb +0 -82
- data/spec/plugins/publish/memcached_spec.rb +0 -63
- data/spec/plugins/publish/pocket_spec.rb +0 -51
- data/spec/plugins/publish/twitter_spec.rb +0 -73
- data/spec/plugins/store/file_spec.rb +0 -58
- data/spec/plugins/store/full_text_spec.rb +0 -152
- data/spec/plugins/store/permalink_spec.rb +0 -206
- data/spec/plugins/subscription/chan_toru_spec.rb +0 -56
- data/spec/plugins/subscription/feed_spec.rb +0 -71
- data/spec/plugins/subscription/g_guide_spec.rb +0 -82
- data/spec/plugins/subscription/link_spec.rb +0 -72
- data/spec/plugins/subscription/pocket_spec.rb +0 -57
- data/spec/plugins/subscription/text_spec.rb +0 -84
- data/spec/plugins/subscription/tumblr_spec.rb +0 -74
- data/spec/plugins/subscription/twitter_search_spec.rb +0 -57
- data/spec/plugins/subscription/twitter_spec.rb +0 -73
- data/spec/plugins/subscription/weather_spec.rb +0 -44
- data/spec/plugins/subscription/xml_spec.rb +0 -84
- data/spec/spec_helper.rb +0 -106
- data/spec/user_dir/plugins/store/mock.rb +0 -16
- data/test/fixtures/sampleOPML.xml +0 -11
- data/test/integration/test_absoluteurl.yml +0 -25
- data/test/integration/test_activerecord.yml +0 -24
- data/test/integration/test_add_pocket.yml +0 -26
- data/test/integration/test_chan_toru.yml +0 -21
- data/test/integration/test_descriptionlink.yml +0 -21
- data/test/integration/test_fluentd.yml +0 -22
- data/test/integration/test_fulltext.yml +0 -30
- data/test/integration/test_google_news.yml +0 -21
- data/test/integration/test_googlealert.yml +0 -21
- data/test/integration/test_hatenabookmark.yml +0 -30
- data/test/integration/test_ignore.yml +0 -25
- data/test/integration/test_ignore2.yml +0 -22
- data/test/integration/test_image2local.yml +0 -33
- data/test/integration/test_instapaper.yml +0 -26
- data/test/integration/test_link2local.yml +0 -34
- data/test/integration/test_one.yml +0 -23
- data/test/integration/test_pocket.yml +0 -22
- data/test/integration/test_rand.yml +0 -21
- data/test/integration/test_sanitize.yml +0 -23
- data/test/integration/test_sort.yml +0 -36
- data/test/integration/test_svnlog.yml +0 -15
- data/test/integration/test_text2feed.yml +0 -36
- data/test/integration/test_tumblr2local.yml +0 -43
- data/test/integration/test_twitter_search.yml +0 -22
- data/test/integration/test_weather.yml +0 -19
- data/test/integration/test_xml2fluentd.yml +0 -21
- data/vendor/.gitkeep +0 -0
data/doc/PLUGINS
DELETED
|
@@ -1,750 +0,0 @@
|
|
|
1
|
-
===========================
|
|
2
|
-
Description of the plug-ins
|
|
3
|
-
===========================
|
|
4
|
-
|
|
5
|
-
SubscriptionFeed
|
|
6
|
-
----------------
|
|
7
|
-
[Path]
|
|
8
|
-
/plugins/subscription/feed.rb
|
|
9
|
-
|
|
10
|
-
[Abstract]
|
|
11
|
-
Subscribe to feed.
|
|
12
|
-
|
|
13
|
-
[Syntax]
|
|
14
|
-
- module: SubscriptionFeed
|
|
15
|
-
config:
|
|
16
|
-
feeds:
|
|
17
|
-
- FEED
|
|
18
|
-
- FEED ...
|
|
19
|
-
retry: RETRY_COUNT
|
|
20
|
-
interval: INTERVAL_FOR_RETRY (in seconds.)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
SubscriptionLink
|
|
24
|
-
----------------
|
|
25
|
-
[Path]
|
|
26
|
-
/plugins/subscription/link.rb
|
|
27
|
-
|
|
28
|
-
[Abstract]
|
|
29
|
-
Subscribe urls and extract there links.
|
|
30
|
-
|
|
31
|
-
[Syntax]
|
|
32
|
-
- module: SubscriptionLink
|
|
33
|
-
config:
|
|
34
|
-
urls:
|
|
35
|
-
- URL
|
|
36
|
-
- URL ...
|
|
37
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
38
|
-
retry: RETRY_COUNT
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
SubscriptionXml
|
|
42
|
-
---------------
|
|
43
|
-
[Path]
|
|
44
|
-
/plugins/subscription/xml.rb
|
|
45
|
-
|
|
46
|
-
[Abstract]
|
|
47
|
-
Subscribe XML API with GET method.
|
|
48
|
-
This plug-in store encoded XML in content_encoded of RSS feed.
|
|
49
|
-
|
|
50
|
-
[Syntax]
|
|
51
|
-
- module: SubscriptionXml
|
|
52
|
-
config:
|
|
53
|
-
urls:
|
|
54
|
-
- URL
|
|
55
|
-
- URL ... (XML base API)
|
|
56
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
57
|
-
retry: RETRY_COUNT
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
SubscriptionTumblr
|
|
61
|
-
------------------
|
|
62
|
-
[Path]
|
|
63
|
-
/plugins/subscription/tumblr.rb
|
|
64
|
-
|
|
65
|
-
[Abstract]
|
|
66
|
-
Subscribe tumblr and extract the links.
|
|
67
|
-
If pages specified, including past pages.
|
|
68
|
-
|
|
69
|
-
[Syntax]
|
|
70
|
-
- module: SubscriptionTumblr
|
|
71
|
-
config:
|
|
72
|
-
urls:
|
|
73
|
-
- URL
|
|
74
|
-
- URL ...
|
|
75
|
-
pages: PAGES
|
|
76
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
77
|
-
retry: RETRY_COUNT
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
SubscriptionTwitter
|
|
81
|
-
-------------------
|
|
82
|
-
[Path]
|
|
83
|
-
/plugins/subscription/twitter.rb
|
|
84
|
-
|
|
85
|
-
[Abstract]
|
|
86
|
-
Subscribe twitter and extract there statuses and the links.
|
|
87
|
-
|
|
88
|
-
[Syntax]
|
|
89
|
-
- module: SubscriptionTwittter
|
|
90
|
-
config:
|
|
91
|
-
urls:
|
|
92
|
-
- URL
|
|
93
|
-
- URL ...
|
|
94
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
95
|
-
retry: RETRY_COUNT
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
SubscriptionTwitterSearch
|
|
99
|
-
-------------------------
|
|
100
|
-
[Path]
|
|
101
|
-
/plugins/subscription/twitter_search.rb
|
|
102
|
-
|
|
103
|
-
[Abstract]
|
|
104
|
-
The search results of a twitter are acquired.
|
|
105
|
-
|
|
106
|
-
[Syntax]
|
|
107
|
-
- module: SubscriptionTwitterSearch
|
|
108
|
-
config:
|
|
109
|
-
search: search word
|
|
110
|
-
opt: option
|
|
111
|
-
consumer_key: 'your_consumer_key'
|
|
112
|
-
consumer_secret: 'your_consumer_secret'
|
|
113
|
-
oauth_token: 'your_oauth_token'
|
|
114
|
-
oauth_token_secret: 'your_oauth_token_secret'
|
|
115
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
116
|
-
retry: RETRY_COUNT
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
SubscriptionWeather
|
|
120
|
-
-------------------
|
|
121
|
-
[Path]
|
|
122
|
-
/plugins/subscription/weather.rb
|
|
123
|
-
|
|
124
|
-
[Abstract]
|
|
125
|
-
Subscribe weather (using gem weather_hacker) by zipcode.
|
|
126
|
-
|
|
127
|
-
[Syntax]
|
|
128
|
-
- module: SubscriptionWeather
|
|
129
|
-
config:
|
|
130
|
-
zipcode: ZIPCODE (ex. 166-0003)
|
|
131
|
-
day: DAY (ex. 'today', 'tomorrow')
|
|
132
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
133
|
-
retry: RETRY_COUNT
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
SubscriptionText
|
|
137
|
-
----------------
|
|
138
|
-
[Path]
|
|
139
|
-
/plugins/subscription/text.rb
|
|
140
|
-
|
|
141
|
-
[Abstract]
|
|
142
|
-
Create new feeds from urls, titles, feeds on text.
|
|
143
|
-
Reading data from TSV (sep = '\t') formatted files.
|
|
144
|
-
|
|
145
|
-
[Syntax]
|
|
146
|
-
- module: SubscriptionText
|
|
147
|
-
config:
|
|
148
|
-
titles:
|
|
149
|
-
- 'title'
|
|
150
|
-
urls:
|
|
151
|
-
- 'url'
|
|
152
|
-
feeds:
|
|
153
|
-
-
|
|
154
|
-
title: 'title'
|
|
155
|
-
url: 'url'
|
|
156
|
-
-
|
|
157
|
-
title: 'title'
|
|
158
|
-
url: 'url'
|
|
159
|
-
files:
|
|
160
|
-
- 'somefile1.tsv'
|
|
161
|
-
- 'somefile2.tsv'
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
SubscriptionPocket
|
|
165
|
-
------------------
|
|
166
|
-
[Path]
|
|
167
|
-
/plugins/subscription/pocket.rb
|
|
168
|
-
|
|
169
|
-
[Abstract]
|
|
170
|
-
Pocket API is struck and it is creation of feed.
|
|
171
|
-
|
|
172
|
-
[Syntax]
|
|
173
|
-
- module: SubscriptionPocket
|
|
174
|
-
config:
|
|
175
|
-
consumer_key: 'your_consumer_key'
|
|
176
|
-
access_token: 'your_access_token'
|
|
177
|
-
optional: # see http://getpocket.com/developer/docs/v3/retrieve
|
|
178
|
-
favorite: 1
|
|
179
|
-
count: 2
|
|
180
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
181
|
-
retry: RETRY_COUNT
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
SubscriptionGGuide
|
|
185
|
-
------------------
|
|
186
|
-
[Path]
|
|
187
|
-
/plugins/subscription/g_guide.rb
|
|
188
|
-
|
|
189
|
-
[Abstract]
|
|
190
|
-
search keyword to the G guide (information on a TV program) rss
|
|
191
|
-
|
|
192
|
-
[Syntax]
|
|
193
|
-
- module: SubscriptionGGuide
|
|
194
|
-
config:
|
|
195
|
-
keyword: 'anime,shogi' # search word (',' dividing and coming out two or more search)
|
|
196
|
-
station: '地上波' # (It means terrestrial broadcasting in Japanese.)
|
|
197
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
198
|
-
retry: RETRY_COUNT
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
SubscriptionChanToru
|
|
202
|
-
--------------------
|
|
203
|
-
[Path]
|
|
204
|
-
/plugins/subscription/chan_toru.rb
|
|
205
|
-
|
|
206
|
-
[Abstract]
|
|
207
|
-
Search keyword to CHAN-TORU (information on a TV program) rss
|
|
208
|
-
(SubscriptionGGuide Plug-in dependence)
|
|
209
|
-
|
|
210
|
-
[Syntax]
|
|
211
|
-
- module: SubscriptionChanToru
|
|
212
|
-
config:
|
|
213
|
-
keyword: 'anime' # search word
|
|
214
|
-
station: '地上波' # (It means terrestrial broadcasting in Japanese.)
|
|
215
|
-
interval: INTERVAL_FOR_SCRAPING (in seconds.)
|
|
216
|
-
retry: RETRY_COUNT
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
FilterClear
|
|
220
|
-
-----------
|
|
221
|
-
[Path]
|
|
222
|
-
/plugins/filter/clear.rb
|
|
223
|
-
|
|
224
|
-
[Abstract]
|
|
225
|
-
Clear Pipeline.
|
|
226
|
-
|
|
227
|
-
[Syntax]
|
|
228
|
-
- module: FilterClear
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
FilterSort
|
|
232
|
-
----------
|
|
233
|
-
[Path]
|
|
234
|
-
/plugins/filter/sort.rb
|
|
235
|
-
|
|
236
|
-
[Abstract]
|
|
237
|
-
Sort feed by date asc or desc.
|
|
238
|
-
If desc is specified, it's sort feed by date desc.
|
|
239
|
-
|
|
240
|
-
[Syntax]
|
|
241
|
-
- module: FilterSort
|
|
242
|
-
config:
|
|
243
|
-
sort: asc or desc
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
FilterIgnore
|
|
247
|
-
------------
|
|
248
|
-
[Path]
|
|
249
|
-
/plugins/filter/ignore.rb
|
|
250
|
-
|
|
251
|
-
[Abstract]
|
|
252
|
-
Exclude the NG word.
|
|
253
|
-
|
|
254
|
-
[Syntax]
|
|
255
|
-
- module: FilterIgnore
|
|
256
|
-
config:
|
|
257
|
-
link:
|
|
258
|
-
- KEYWORD
|
|
259
|
-
- KEYWORD ...
|
|
260
|
-
description:
|
|
261
|
-
- KEYWORD
|
|
262
|
-
- KEYWORD ...
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
FilterAccept
|
|
266
|
-
------------
|
|
267
|
-
[Path]
|
|
268
|
-
/plugins/filter/accept.rb
|
|
269
|
-
|
|
270
|
-
[Abstract]
|
|
271
|
-
Contain the OK word.
|
|
272
|
-
|
|
273
|
-
[Syntax]
|
|
274
|
-
- module: FilterAccept
|
|
275
|
-
config:
|
|
276
|
-
link:
|
|
277
|
-
- KEYWORD
|
|
278
|
-
- KEYWORD ...
|
|
279
|
-
description:
|
|
280
|
-
- KEYWORD
|
|
281
|
-
- KEYWORD ...
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
FilterImage
|
|
285
|
-
-----------
|
|
286
|
-
[Path]
|
|
287
|
-
/plugins/filter/image.rb
|
|
288
|
-
|
|
289
|
-
[Abstract]
|
|
290
|
-
Extract images from the link.
|
|
291
|
-
If not image, the permalink will be nil.
|
|
292
|
-
|
|
293
|
-
[Syntax]
|
|
294
|
-
- module: FilterImage
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
FilterImageSource
|
|
298
|
-
-----------------
|
|
299
|
-
[Path]
|
|
300
|
-
/plugins/filter/image_source.rb
|
|
301
|
-
|
|
302
|
-
[Abstract]
|
|
303
|
-
Rewrite the permalink to source of the image in the contents.
|
|
304
|
-
If there is no source of image, the permalink will be nil.
|
|
305
|
-
|
|
306
|
-
[Syntax]
|
|
307
|
-
- module: FilterImageSource
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
FilterOne
|
|
311
|
-
---------
|
|
312
|
-
[Path]
|
|
313
|
-
/plugins/filter/one.rb
|
|
314
|
-
|
|
315
|
-
[Abstract]
|
|
316
|
-
Select a item from items.
|
|
317
|
-
|
|
318
|
-
[Syntax]
|
|
319
|
-
- module: FilterOne
|
|
320
|
-
config:
|
|
321
|
-
pick: last (If none, pick the first item.)
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
FilterRand
|
|
325
|
-
----------
|
|
326
|
-
[Path]
|
|
327
|
-
/plugins/filter/rand.rb
|
|
328
|
-
|
|
329
|
-
[Abstract]
|
|
330
|
-
Randomize the array of the feed items.
|
|
331
|
-
|
|
332
|
-
[Syntax]
|
|
333
|
-
- module: FilterRand
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
FilterSanitize
|
|
337
|
-
--------------
|
|
338
|
-
[Path]
|
|
339
|
-
/plugins/filter/sanitize.rb
|
|
340
|
-
|
|
341
|
-
[Abstract]
|
|
342
|
-
Strip the html tags.
|
|
343
|
-
Reference: https://github.com/rgrove/sanitize
|
|
344
|
-
|
|
345
|
-
[Syntax]
|
|
346
|
-
- module: FilterSanitize
|
|
347
|
-
config:
|
|
348
|
-
mode: basic or relaxed or restricted
|
|
349
|
-
(default: restricted)
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
FilterFullFeed
|
|
353
|
-
--------------
|
|
354
|
-
[Path]
|
|
355
|
-
/plugins/filter/full_feed.rb
|
|
356
|
-
|
|
357
|
-
[Abstract]
|
|
358
|
-
Get full text of feed entry.
|
|
359
|
-
|
|
360
|
-
[Syntax]
|
|
361
|
-
- module: FilterFeed
|
|
362
|
-
config:
|
|
363
|
-
siteinfo: your siteinfo file's path
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
FilterAbsoluteURI
|
|
367
|
-
-----------------
|
|
368
|
-
[Path]
|
|
369
|
-
/plugins/filter/absolute_uri.rb
|
|
370
|
-
|
|
371
|
-
[Description]
|
|
372
|
-
Rewrite relative path to absolute one.
|
|
373
|
-
|
|
374
|
-
[Syntax]
|
|
375
|
-
- module: FilterAbsoluteURI
|
|
376
|
-
config:
|
|
377
|
-
url: http://targethost.com/
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
FilterTumblrResize
|
|
381
|
-
------------------
|
|
382
|
-
[Path]
|
|
383
|
-
/plugins/filter/tumblr_resize.rb
|
|
384
|
-
|
|
385
|
-
[Abstract]
|
|
386
|
-
Rewrite the permalink to the maximum size of
|
|
387
|
-
the Tumblr (High Res).
|
|
388
|
-
|
|
389
|
-
[Assumption]
|
|
390
|
-
It has already been rewritten to perm link image link
|
|
391
|
-
|
|
392
|
-
[Syntax]
|
|
393
|
-
- module: FilterTumblrResize
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
FilterDescriptionLink
|
|
397
|
-
---------------------
|
|
398
|
-
[Path]
|
|
399
|
-
/plugins/filter/description_link.rb
|
|
400
|
-
|
|
401
|
-
[Abstract]
|
|
402
|
-
Pickup http or https URL from description.
|
|
403
|
-
Re-write link to the URL.
|
|
404
|
-
|
|
405
|
-
[Syntax]
|
|
406
|
-
- module: FilterDescriptionLink
|
|
407
|
-
config:
|
|
408
|
-
clear_description: 1 # Set empty to description.
|
|
409
|
-
get_title: 1 # Get title after re-write link.
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
FilterGoogleNews
|
|
413
|
-
----------------
|
|
414
|
-
[Path]
|
|
415
|
-
/plugins/filter/google_news.rb
|
|
416
|
-
|
|
417
|
-
[Abstract]
|
|
418
|
-
Re-write Google News link to a new link of the redirect.
|
|
419
|
-
|
|
420
|
-
[Syntax]
|
|
421
|
-
- module: FilterGoogleNews
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
StorePermalink
|
|
425
|
-
--------------
|
|
426
|
-
[Path]
|
|
427
|
-
/plugins/store/permalink.rb
|
|
428
|
-
|
|
429
|
-
[Abstract]
|
|
430
|
-
Save a permanent link.
|
|
431
|
-
The duplicate permalink will be discarded.
|
|
432
|
-
|
|
433
|
-
[Syntax]
|
|
434
|
-
- module: StorePermalink
|
|
435
|
-
config:
|
|
436
|
-
db: DB_NAME
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
StoreFullText
|
|
440
|
-
-------------
|
|
441
|
-
[Path]
|
|
442
|
-
/plugins/store/full_text.rb
|
|
443
|
-
|
|
444
|
-
[Abstract]
|
|
445
|
-
Save a full text of contents.
|
|
446
|
-
|
|
447
|
-
Saved text can be viewed in the viewer below
|
|
448
|
-
https://github.com/id774/blog_viewer
|
|
449
|
-
|
|
450
|
-
[Syntax]
|
|
451
|
-
- Module: StoreFullText
|
|
452
|
-
config:
|
|
453
|
-
db: DB_NAME
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
StoreFile
|
|
457
|
-
---------
|
|
458
|
-
[Path]
|
|
459
|
-
/plugins/store/file.rb
|
|
460
|
-
|
|
461
|
-
[Abstract]
|
|
462
|
-
Store target to local file system.
|
|
463
|
-
This emulate "Right click to save"
|
|
464
|
-
If scheme begin with "s3n://", get file from Amazon S3.
|
|
465
|
-
Re-write URI scheme to file URI scheme and return feeds.
|
|
466
|
-
|
|
467
|
-
[Syntax]
|
|
468
|
-
- Module: StoreFile
|
|
469
|
-
config:
|
|
470
|
-
path: SAVE_TO_PATH
|
|
471
|
-
retry: RETRY_COUNT
|
|
472
|
-
interval: INTERVAL_FOR_DOWNLOAD (in seconds.)
|
|
473
|
-
access_key: ACCESS_KEY_ID (Only using S3)
|
|
474
|
-
secret_key: SECRET_ACCESS_KEY (Only using S3)
|
|
475
|
-
bucket_name: AMAZONS3_BUCKET_NAME (Only using S3)
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
PublishConsole
|
|
479
|
-
--------------
|
|
480
|
-
[Path]
|
|
481
|
-
/plugins/publish/console.rb
|
|
482
|
-
|
|
483
|
-
[Abstract]
|
|
484
|
-
Output pipeline to the console.
|
|
485
|
-
|
|
486
|
-
[Syntax]
|
|
487
|
-
- module: PublishConsole
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
PublishAmazonS3
|
|
491
|
-
---------------
|
|
492
|
-
[Path]
|
|
493
|
-
/plugins/publish/amazon_s3.rb
|
|
494
|
-
|
|
495
|
-
[Abstract]
|
|
496
|
-
Upload file to Amazon S3.
|
|
497
|
-
|
|
498
|
-
[Description]
|
|
499
|
-
Read file URI scheme and upload it to aws.
|
|
500
|
-
Postulate feed link must be file URI scheme.
|
|
501
|
-
|
|
502
|
-
[Syntax]
|
|
503
|
-
- module: PublishAmazonS3
|
|
504
|
-
config:
|
|
505
|
-
access_key: ACCESS_KEY_ID
|
|
506
|
-
secret_key: SECRET_ACCESS_KEY
|
|
507
|
-
bucket_name: AMAZONS3_BUCKET_NAME
|
|
508
|
-
target_path: PATH_ON_BUCKET
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
PublishFluentd
|
|
512
|
-
--------------
|
|
513
|
-
[Path]
|
|
514
|
-
/plugins/publish/fluentd.rb
|
|
515
|
-
|
|
516
|
-
[Abstract]
|
|
517
|
-
Output to fluentd with fluent-logger.
|
|
518
|
-
|
|
519
|
-
[Description]
|
|
520
|
-
This plugin outputs feed to fluentd.
|
|
521
|
-
Following fluentd config example.
|
|
522
|
-
|
|
523
|
-
<source>
|
|
524
|
-
type forward
|
|
525
|
-
port 9999
|
|
526
|
-
</source>
|
|
527
|
-
|
|
528
|
-
[Syntax]
|
|
529
|
-
- module: PublishFluentd
|
|
530
|
-
config:
|
|
531
|
-
host: HOSTNAME
|
|
532
|
-
port: PORT_NUMBER
|
|
533
|
-
tag: TAGS (example: automatic.feed)
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
ProvideFluentd
|
|
537
|
-
--------------
|
|
538
|
-
[Path]
|
|
539
|
-
/plugins/provide/fluentd.rb
|
|
540
|
-
|
|
541
|
-
[Abstract]
|
|
542
|
-
This plugin output content_encoded to fluentd.
|
|
543
|
-
|
|
544
|
-
[Description]
|
|
545
|
-
Provide::Fluentd is different from Publish::Fluentd.
|
|
546
|
-
|
|
547
|
-
Publish::Fluentd -> Output feed to flulentd.
|
|
548
|
-
Provide::Fluentd -> Output content_encoded to fluentd.
|
|
549
|
-
|
|
550
|
-
[Syntax]
|
|
551
|
-
- module: ProvideFluentd
|
|
552
|
-
config:
|
|
553
|
-
host: HOSTNAME
|
|
554
|
-
port: PORT_NUMBER
|
|
555
|
-
tag: TAGS (example: automatic.feed)
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
PublishMemcached
|
|
559
|
-
----------------
|
|
560
|
-
[Path]
|
|
561
|
-
/plugins/publish/memcached.rb
|
|
562
|
-
|
|
563
|
-
[Abstract]
|
|
564
|
-
Output feeds converted hash to memcached with dalli.
|
|
565
|
-
|
|
566
|
-
[Syntax]
|
|
567
|
-
- module: PublishMemcached
|
|
568
|
-
config:
|
|
569
|
-
host: HOSTNAME
|
|
570
|
-
port: PORT_NUMBER
|
|
571
|
-
key: KEY
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
PublishHatenaBookmark
|
|
575
|
-
---------------------
|
|
576
|
-
[Path]
|
|
577
|
-
/plugins/publish/hatenabookmark.rb
|
|
578
|
-
|
|
579
|
-
[Abstract]
|
|
580
|
-
Bookmarking to Hatena Bookmark (Social Bookmark).
|
|
581
|
-
|
|
582
|
-
[Description]
|
|
583
|
-
Generate the XML for submission to
|
|
584
|
-
Hatena Bookmark API.
|
|
585
|
-
|
|
586
|
-
[Syntax]
|
|
587
|
-
- module: PublishHatenaBookmark
|
|
588
|
-
config:
|
|
589
|
-
username: HATENA_ID
|
|
590
|
-
passowrd: PASSWORD
|
|
591
|
-
interval: INTERVAL_FOR_BOOKMARK (in seconds.)
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
PublishTwitter
|
|
595
|
-
--------------
|
|
596
|
-
[Path]
|
|
597
|
-
/plugins/publish/twitter.rb
|
|
598
|
-
|
|
599
|
-
[Abstract]
|
|
600
|
-
Publish to twitter.
|
|
601
|
-
|
|
602
|
-
[Syntax]
|
|
603
|
-
- module: PublishTwitter
|
|
604
|
-
config:
|
|
605
|
-
consumer_key: 'your_consumer_key'
|
|
606
|
-
consumer_secret: 'your_consumer_secret'
|
|
607
|
-
oauth_token: 'your_oauth_token'
|
|
608
|
-
oauth_token_secret: 'your_oauth_token_secret'
|
|
609
|
-
tweet_tmp: 'tweet text {link}'
|
|
610
|
-
interval: INTERVAL_FOR_RETRY (in seconds.)
|
|
611
|
-
retry: RETRY_COUNT
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
PublishPocket
|
|
615
|
-
-------------
|
|
616
|
-
[Path]
|
|
617
|
-
/plugins/publish/pocket.rb
|
|
618
|
-
|
|
619
|
-
[Abstract]
|
|
620
|
-
Register an appointment to Pocket.
|
|
621
|
-
|
|
622
|
-
[Description]
|
|
623
|
-
Submission to Pocket API. (using gem pocket-ruby)
|
|
624
|
-
|
|
625
|
-
[Syntax]
|
|
626
|
-
- module: PublishPocket
|
|
627
|
-
config:
|
|
628
|
-
consumer_key: CONSUMER_KEY
|
|
629
|
-
access_token: ACCESS_TOKEN
|
|
630
|
-
interval: INTERVAL_FOR_RETRY (in seconds.)
|
|
631
|
-
retry: RETRY_COUNT
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
PublishInstapaper
|
|
635
|
-
-----------------
|
|
636
|
-
[Path]
|
|
637
|
-
/plugins/publish/instapaper.rb
|
|
638
|
-
|
|
639
|
-
[Abstract]
|
|
640
|
-
Register an appointment to Instapaper.
|
|
641
|
-
|
|
642
|
-
[Description]
|
|
643
|
-
Submission to Instapaper API.
|
|
644
|
-
|
|
645
|
-
[Syntax]
|
|
646
|
-
- module: PublishInstapaper
|
|
647
|
-
config:
|
|
648
|
-
email: INSTAPAPER_ACCOUNT
|
|
649
|
-
password: PASSWORD
|
|
650
|
-
interval: INTERVAL_FOR_RETRY (in seconds.)
|
|
651
|
-
retry: RETRY_COUNT
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
PublishGoogleCalendar
|
|
655
|
-
---------------------
|
|
656
|
-
[Path]
|
|
657
|
-
/plugins/publish/google_calendar.rb
|
|
658
|
-
|
|
659
|
-
[Abstract]
|
|
660
|
-
Register an appointment to Google Calendar.
|
|
661
|
-
|
|
662
|
-
[Description]
|
|
663
|
-
Register item.title to Google Calendar.
|
|
664
|
-
|
|
665
|
-
[Syntax]
|
|
666
|
-
- module: PublishGoogleCalendar
|
|
667
|
-
config:
|
|
668
|
-
username: GOOGLE_ACCOUNT
|
|
669
|
-
password: PASSWORD
|
|
670
|
-
interval: INTERVAL
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
PublishEject
|
|
674
|
-
------------
|
|
675
|
-
[Path]
|
|
676
|
-
/plugins/publish/eject.rb
|
|
677
|
-
|
|
678
|
-
[Abstract]
|
|
679
|
-
eject by the feed link count.
|
|
680
|
-
|
|
681
|
-
[Syntax]
|
|
682
|
-
- module: PublishEject
|
|
683
|
-
config:
|
|
684
|
-
interval: INTERVAL
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
PublishHipchat
|
|
688
|
-
--------------
|
|
689
|
-
[Path]
|
|
690
|
-
/plugins/publish/hipchat.rb
|
|
691
|
-
|
|
692
|
-
[Abstract]
|
|
693
|
-
Register a message to HipChat
|
|
694
|
-
|
|
695
|
-
[Description]
|
|
696
|
-
Using HipChat API (https://www.hipchat.com/docs/api),
|
|
697
|
-
post a message to specific room.
|
|
698
|
-
|
|
699
|
-
[Syntax]
|
|
700
|
-
- module: PublishHipchat
|
|
701
|
-
config:
|
|
702
|
-
api_token: API token of HipChat (required)
|
|
703
|
-
room_id: ID or name of the room. (required)
|
|
704
|
-
username: Name the message will appear be sent from. (required)
|
|
705
|
-
color: Background color for message (default: yellow)
|
|
706
|
-
notify: Whether or not this message should trigger a notification for people in the room (0 => false, 1 => true, default: 0)
|
|
707
|
-
interval: INTERVAL_FOR_RETRY (in seconds.)
|
|
708
|
-
retry: RETRY_COUNT
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
NotifyIkachan
|
|
712
|
-
-------------
|
|
713
|
-
[Path]
|
|
714
|
-
/plugins/notify/ikachan.rb
|
|
715
|
-
|
|
716
|
-
[Abstract]
|
|
717
|
-
Send a message to ikachan.
|
|
718
|
-
|
|
719
|
-
[Description]
|
|
720
|
-
POST to ikachan via HTTP.
|
|
721
|
-
ikachan is: http://blog.yappo.jp/yappo/archives/000760.html
|
|
722
|
-
|
|
723
|
-
[Syntax]
|
|
724
|
-
- module: NotifyIkachan
|
|
725
|
-
config:
|
|
726
|
-
url: http://sample.com
|
|
727
|
-
port: 4979 # port number, the default is 4979.
|
|
728
|
-
channels: foo,bar,#baz # '#' is priced automatically, multiple by ','
|
|
729
|
-
command: notice # privmsg,notice etc..
|
|
730
|
-
interval: 5 # post interval. (s)
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
CustomFeedSVNLog
|
|
734
|
-
----------------
|
|
735
|
-
[Path]
|
|
736
|
-
/plugins/custom_feed/svn_log.rb
|
|
737
|
-
|
|
738
|
-
[Abstract]
|
|
739
|
-
Get new revision info from SVN.
|
|
740
|
-
|
|
741
|
-
[Description]
|
|
742
|
-
Get the number that is specified by fetch_items.
|
|
743
|
-
|
|
744
|
-
[Syntax]
|
|
745
|
-
- module: CustomFeedSVNLog
|
|
746
|
-
config:
|
|
747
|
-
target: http://redmine.rubyforge.org/svn
|
|
748
|
-
fetch_items: 2 # If not specified, 30
|
|
749
|
-
|
|
750
|
-
|