mamemose 0.4.0.4 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 7f1a0ae5f014e6a2a75c439f1d7103ff82ee68cc
4
+ data.tar.gz: 0291e781ffc6c51e4f0586601bc0f35e32a025cf
5
+ SHA512:
6
+ metadata.gz: e1bfc7755e7cae746db1df9958eea3a38ee05ebf0cd5a5e19a818a5b2e60cfb4f5f1576b91b93d88c00385c0d4c2eb93291b55d2e82b58c71c2631a8c34e5b0f
7
+ data.tar.gz: 579fce45060fd1a59928e60e4dc6652c020024481415c060b8149d7e21959af6bf05df5c9778f2d568e3ed8b5a52c29a4ba920c9fd88a0642f07c12b792901ee
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  mamemose: Markdown memo server
2
2
  ====
3
3
 
4
- version 0.4.0.4
4
+ version 0.4.1
5
5
 
6
6
  概要
7
7
  ----
@@ -112,9 +112,8 @@ $ mamemose s /path/to/file 8000
112
112
  ### シンタックスハイライト
113
113
 
114
114
  [コード部分に GitHub Flavored Markdown の記法](http://github.github.com/github-flavored-markdown/)
115
- を使い、シンタックスハイライトに
116
- [SyntaxHighlighter](http://alexgorbatchev.com/SyntaxHighlighter/)
117
- を使うことができます。設定例を参照。
115
+ を使うとシンタックスハイライトされます。ハイライトエンジンは
116
+ [CodeRay](https://github.com/rubychan/coderay) を使用。
118
117
 
119
118
  ### 数式
120
119
 
@@ -161,7 +160,7 @@ $ mamemose s /path/to/file 8000
161
160
  ```ruby
162
161
  ['_Store','.AppleDouble','.LSOverride','Icon',/^\./,/~$/,
163
162
  '.Spotlight-V100','.Trashes','Thumbs.db','ehthumbs.db',
164
- 'Desktop.ini','$RECYCLE.BIN',/^#/,'MathJax','syntaxhighlighter']
163
+ 'Desktop.ini','$RECYCLE.BIN',/^#/,'MathJax']
165
164
  ```
166
165
 
167
166
  ### 設定ファイル例
@@ -187,44 +186,6 @@ CUSTOM_HEADER = <<HEADER
187
186
  <script src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
188
187
  </script>
189
188
  HEADER
190
-
191
- # すべてのページで SyntaxHighlighter が使えるように
192
- host = "http://alexgorbatchev.com/pub/sh/current" # 変数も使えます
193
- CUSTOM_FOOTER = <<FOOTER
194
- <link href="#{host}/styles/shCoreDefault.css" rel="stylesheet" />
195
- <script src="#{host}/scripts/shCore.js"></script>
196
- <script src="#{host}/scripts/shAutoloader.js"></script>
197
- <script>
198
- SyntaxHighlighter.autoloader(
199
- 'AS3 as3 #{host}/scripts/shBrushAS3.js',
200
- 'AppleScript applescript #{host}/scripts/shBrushAppleScript.js',
201
- 'Bash bash #{host}/scripts/shBrushBash.js',
202
- 'CSharp csharp #{host}/scripts/shBrushCSharp.js',
203
- 'ColdFusion coldfusion #{host}/scripts/shBrushColdFusion.js',
204
- 'Cpp cpp #{host}/scripts/shBrushCpp.js',
205
- 'Css css #{host}/scripts/shBrushCss.js',
206
- 'Delphi delphi #{host}/scripts/shBrushDelphi.js',
207
- 'Diff diff #{host}/scripts/shBrushDiff.js',
208
- 'Erlang erlang #{host}/scripts/shBrushErlang.js',
209
- 'Groovy groovy #{host}/scripts/shBrushGroovy.js',
210
- 'JScript jscript #{host}/scripts/shBrushJScript.js',
211
- 'Java java #{host}/scripts/shBrushJava.js',
212
- 'JavaFX javafx #{host}/scripts/shBrushJavaFX.js',
213
- 'Perl perl #{host}/scripts/shBrushPerl.js',
214
- 'Php php #{host}/scripts/shBrushPhp.js',
215
- 'Plain plain #{host}/scripts/shBrushPlain.js',
216
- 'PowerShell powershell #{host}/scripts/shBrushPowerShell.js',
217
- 'Python python #{host}/scripts/shBrushPython.js',
218
- 'Ruby ruby #{host}/scripts/shBrushRuby.js',
219
- 'Sass sass #{host}/scripts/shBrushSass.js',
220
- 'Scala scala #{host}/scripts/shBrushScala.js',
221
- 'Sql sql #{host}/scripts/shBrushSql.js',
222
- 'Vb vb #{host}/scripts/shBrushVb.js',
223
- 'Xml xml #{host}/scripts/shBrushXml.js'
224
- );
225
- SyntaxHighlighter.all();
226
- </script>
227
- FOOTER
228
189
  ```
229
190
 
230
191
  ### 使用例
@@ -263,8 +224,6 @@ FOOTER
263
224
 
264
225
  ![](https://raw.github.com/daimatz/mamemose/master/sample.png)
265
226
 
266
- MathJax と SyntaxHighlighter はローカルにダウンロードして使うのが親切だと思います。
267
-
268
227
  検索
269
228
  ----
270
229
 
@@ -281,9 +240,6 @@ FAQ と予想されるもの
281
240
  - 検索が遅いのはどうしようもないです。 5KB 〜 10KB くらいのメモが 3000 件くらいまでなら
282
241
  まあ使えるかなというのは確認したつもりですが
283
242
  - SSD 積んでますか?
284
- - 他の言語もシンタックスハイライトしたいんだけど
285
- - SyntaxHighlighter の構文ファイルを自分で書いて読み込むようにしましょう
286
- - Haskell 用のは書きました [gist](https://gist.github.com/3969549)
287
243
  - reStructuredText 対応して
288
244
  - Python で書いてください
289
245
  - 更新のとき自動でページ最下部に行ってほしい
data/lib/mamemose/env.rb CHANGED
@@ -7,9 +7,7 @@ PORT = 20000 if !defined?(PORT)
7
7
  WS_PORT = 20001 if !defined?(WS_PORT)
8
8
  RECENT_NUM = 10 if !defined?(RECENT_NUM)
9
9
  RECENT_PATTERN = /.*/ if !defined?(RECENT_PATTERN)
10
- IGNORE_FILES = ['.DS_Store','.AppleDouble','.LSOverride','Icon',/^\./,/~$/,
11
- '.Spotlight-V100','.Trashes','Thumbs.db','ehthumbs.db',
12
- 'Desktop.ini','$RECYCLE.BIN',/^#/,'MathJax','syntaxhighlighter'] if !defined?(IGNORE_FILES)
10
+ IGNORE_FILES = [/^\./,/^#/,/~$/,'Icon','Thumbs.db','ehthumbs.db', 'Desktop.ini','$RECYCLE.BIN','hidden'] if !defined?(IGNORE_FILES)
13
11
  MARKDOWN_PATTERN = /\.(md|markdown)$/ if !defined?(MARKDOWN_PATTERN)
14
12
  INDEX_PATTERN = /^README/i if !defined?(INDEX_PATTERN)
15
13
  CUSTOM_HEADER = '' if !defined?(CUSTOM_HEADER)
data/lib/mamemose/html.rb CHANGED
@@ -19,8 +19,8 @@ body {
19
19
  pre {
20
20
  border: 1px solid #090909;
21
21
  background-color: #f8f8f8;
22
- padding: 0.5em;
23
- margin: 0.5em 1em;
22
+ padding: 0;
23
+ margin: 0;
24
24
  }
25
25
  code {
26
26
  border: 1px solid #cccccc;
@@ -139,6 +139,25 @@ table tr th :first-child, table tr td :first-child {
139
139
  table tr th :last-child, table tr td :last-child {
140
140
  margin-bottom: 0;
141
141
  }
142
+ table.CodeRay {
143
+ width: 95%;
144
+ border: 1px solid black;
145
+ }
146
+ table.CodeRay tr {
147
+ border: 0;
148
+ }
149
+ table.CodeRay td.line-numbers {
150
+ width: 26px;
151
+ border-right: 1px solid black;
152
+ text-align: right;
153
+ }
154
+ table.CodeRay td {
155
+ border: 0;
156
+ padding: 0 5px;
157
+ }
158
+ table.CodeRay td pre {
159
+ border: 0;
160
+ }
142
161
  --></style>
143
162
  <script>
144
163
  function copy(text) {
@@ -1,5 +1,5 @@
1
1
  module Mamemose
2
- VERSION = "0.4.0.4"
2
+ VERSION = "0.4.1"
3
3
 
4
4
  module WebSocket
5
5
  VERSION = "0.1.0"
data/lib/mamemose.rb CHANGED
@@ -4,6 +4,7 @@ require 'find'
4
4
  require 'uri'
5
5
  require 'redcarpet'
6
6
  require 'htmlentities'
7
+ require 'coderay'
7
8
 
8
9
  require 'mamemose/version'
9
10
 
@@ -14,9 +15,8 @@ require 'mamemose/env'
14
15
 
15
16
  class HTMLwithSyntaxHighlighter < Redcarpet::Render::XHTML
16
17
  def block_code(code, lang)
17
- code = HTMLEntities.new.encode(code)
18
- lang ||= "plain"
19
- return "<pre class='brush: #{lang}'>#{code}</pre>"
18
+ lang ||= 'plain'
19
+ CodeRay.scan(code, lang.to_sym).div(:line_numbers => :table)
20
20
  end
21
21
  end
22
22
 
data/mamemose.gemspec CHANGED
@@ -19,4 +19,5 @@ Gem::Specification.new do |gem|
19
19
  gem.add_dependency "htmlentities", ">= 4.3.0"
20
20
  gem.add_dependency "thor", ">= 0.17.0"
21
21
  gem.add_dependency "em-websocket", ">= 0.5.0"
22
+ gem.add_dependency "coderay", ">= 1.1.0"
22
23
  end
metadata CHANGED
@@ -1,80 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mamemose
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0.4
5
- prerelease:
4
+ version: 0.4.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - daimatz
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-04-06 00:00:00.000000000 Z
11
+ date: 2013-10-30 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: redcarpet
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: 2.2.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: 2.2.0
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: htmlentities
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: 4.3.0
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: 4.3.0
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: thor
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: 0.17.0
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: 0.17.0
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: em-websocket
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: 0.5.0
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - '>='
76
67
  - !ruby/object:Gem::Version
77
68
  version: 0.5.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: coderay
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: 1.1.0
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: 1.1.0
78
83
  description: Markdown memo server
79
84
  email:
80
85
  - dai@daimatz.net
@@ -103,26 +108,25 @@ files:
103
108
  - sample.png
104
109
  homepage: https://github.com/daimatz/mamemose
105
110
  licenses: []
111
+ metadata: {}
106
112
  post_install_message:
107
113
  rdoc_options: []
108
114
  require_paths:
109
115
  - lib
110
116
  required_ruby_version: !ruby/object:Gem::Requirement
111
- none: false
112
117
  requirements:
113
- - - ! '>='
118
+ - - '>='
114
119
  - !ruby/object:Gem::Version
115
120
  version: '0'
116
121
  required_rubygems_version: !ruby/object:Gem::Requirement
117
- none: false
118
122
  requirements:
119
- - - ! '>='
123
+ - - '>='
120
124
  - !ruby/object:Gem::Version
121
125
  version: '0'
122
126
  requirements: []
123
127
  rubyforge_project:
124
- rubygems_version: 1.8.23
128
+ rubygems_version: 2.0.3
125
129
  signing_key:
126
- specification_version: 3
130
+ specification_version: 4
127
131
  summary: Markdown memo server
128
132
  test_files: []