georgi-shinmun 0.3.10 → 0.4

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.
Files changed (40) hide show
  1. data/README.md +4 -34
  2. data/Rakefile +25 -2
  3. data/example/assets/stylesheets/{6-comments.css → 5-comments.css} +0 -0
  4. data/example/assets/stylesheets/{7-diff.css → 6-diff.css} +0 -0
  5. data/example/assets/stylesheets/{8-blog.css → 7-blog.css} +0 -0
  6. data/example/templates/archive.rhtml +12 -0
  7. data/lib/shinmun/post.rb +1 -1
  8. data/lib/shinmun/routes.rb +18 -69
  9. data/test/blog_spec.rb +2 -3
  10. data/test/post_spec.rb +2 -2
  11. metadata +31 -61
  12. data/.gitignore +0 -4
  13. data/LICENSE +0 -18
  14. data/example/assets/stylesheets/5-coderay.css +0 -112
  15. data/example/assets/wmd/images/bg-fill.png +0 -0
  16. data/example/assets/wmd/images/bg.png +0 -0
  17. data/example/assets/wmd/images/blockquote.png +0 -0
  18. data/example/assets/wmd/images/bold.png +0 -0
  19. data/example/assets/wmd/images/code.png +0 -0
  20. data/example/assets/wmd/images/h1.png +0 -0
  21. data/example/assets/wmd/images/hr.png +0 -0
  22. data/example/assets/wmd/images/img.png +0 -0
  23. data/example/assets/wmd/images/italic.png +0 -0
  24. data/example/assets/wmd/images/link.png +0 -0
  25. data/example/assets/wmd/images/ol.png +0 -0
  26. data/example/assets/wmd/images/redo.png +0 -0
  27. data/example/assets/wmd/images/separator.png +0 -0
  28. data/example/assets/wmd/images/ul.png +0 -0
  29. data/example/assets/wmd/images/undo.png +0 -0
  30. data/example/assets/wmd/images/wmd-on.png +0 -0
  31. data/example/assets/wmd/images/wmd.png +0 -0
  32. data/example/assets/wmd/showdown.js +0 -421
  33. data/example/assets/wmd/wmd-base.js +0 -1799
  34. data/example/assets/wmd/wmd-plus.js +0 -311
  35. data/example/assets/wmd/wmd.js +0 -73
  36. data/example/templates/admin/commit.rhtml +0 -27
  37. data/example/templates/admin/commits.rhtml +0 -9
  38. data/example/templates/admin/edit.rhtml +0 -17
  39. data/example/templates/admin/pages.rhtml +0 -19
  40. data/example/templates/admin/posts.rhtml +0 -24
data/README.md CHANGED
@@ -2,9 +2,7 @@ Shinmun - a git-based blog engine
2
2
  ==========================================
3
3
 
4
4
  Shinmun is a small git-based blog engine. Write posts in your favorite
5
- editor, git-push it and serve your blog straight from a
6
- repository.
7
-
5
+ editor, git-push it and serve your blog straight from a repository.
8
6
 
9
7
  ### Features
10
8
 
@@ -16,7 +14,6 @@ repository.
16
14
  * Flickr and Delicious aggregations
17
15
  * Syntax highlighting provided by [CodeRay][4]
18
16
  * AJAX comment system with Markdown preview
19
- * Web frontend using [WMD Editor][12]
20
17
 
21
18
 
22
19
  ### Quickstart
@@ -92,11 +89,9 @@ RHTML, YAML, Delphi
92
89
  To activate CodeRay for a code block, you have to declare the language
93
90
  in lower case:
94
91
 
95
- @@ruby
96
-
97
- def method_missing(id, *args, &block)
98
- puts "#{id} was called with #{args.inspect}"
99
- end
92
+ def method_missing(id, *args, &block)
93
+ puts "#{id} was called with #{args.inspect}"
94
+ end
100
95
 
101
96
  **Note that the declaration MUST be followed by a blank line!**
102
97
 
@@ -171,8 +166,6 @@ Layout and templates are rendered by *ERB*. The layout is defined in
171
166
  `templates/layout.rhtml`. The content will be provided in the variable
172
167
  `@content`. A minimal example:
173
168
 
174
- @@rhtml
175
-
176
169
  <html>
177
170
  <head>
178
171
  <title><%= @blog.title %></title>
@@ -186,8 +179,6 @@ Layout and templates are rendered by *ERB*. The layout is defined in
186
179
  The attributes of a post are accessible as instance variables in a
187
180
  template:
188
181
 
189
- @@rhtml
190
-
191
182
  <div class="article">
192
183
  <div class="date">
193
184
  <%= date @date %>
@@ -247,8 +238,6 @@ Passenger as described in my [blog post][2].
247
238
  Assuming that you are on a Debian or Ubuntu system, you can create a
248
239
  file named `/etc/apache2/sites-available/blog`:
249
240
 
250
- @@xml
251
-
252
241
  <VirtualHost *:80>
253
242
  ServerName myblog.com
254
243
  DocumentRoot /var/www/blog/public
@@ -264,22 +253,6 @@ domain:
264
253
  $ /etc/init.d/apache2 restart
265
254
 
266
255
 
267
- ### Web Frontend
268
-
269
- The example blog has a builtin web frontend. Currently it only works
270
- on localhost:9292.
271
-
272
- The frontend allows you to create, edit, read or delete posts or
273
- pages. Editing a post shows up a form with the [wmd editor][12]. You
274
- have to look yourself for a correct YAML header, otherwise you will
275
- get incorrect results.
276
-
277
- One nice thing about the frontend is the *Commits* page, where you can
278
- look at a list of recent commits. Clicking on a commit brings you to a
279
- single commit overview, where you can inspect changes introduced by
280
- this particular commit.
281
-
282
-
283
256
  ### GitHub Project
284
257
 
285
258
  Download or fork the package at my [github repository][1]
@@ -296,6 +269,3 @@ Download or fork the package at my [github repository][1]
296
269
  [9]: http://textile.thresholdstate.com/
297
270
  [10]: http://en.wikipedia.org/wiki/Html
298
271
  [11]: http://www.kernel.org/pub/software/scm/git/docs/git-push.html
299
- [12]: http://wmd-editor.com/
300
- [13]: http://github.com/mojombo/jekyll
301
- [14]: http://github.com/blog/272-github-pages
data/Rakefile CHANGED
@@ -1,6 +1,28 @@
1
1
  require 'rake'
2
2
  require 'rake/rdoctask'
3
-
3
+
4
+ begin
5
+ require 'spec/rake/spectask'
6
+ rescue LoadError
7
+ puts <<-EOS
8
+ To use rspec for testing you must install the rspec gem:
9
+ gem install rspec
10
+ EOS
11
+ exit(0)
12
+ end
13
+
14
+ desc "Run all specs"
15
+ Spec::Rake::SpecTask.new(:spec) do |t|
16
+ t.spec_opts = ['-cfs']
17
+ t.spec_files = FileList['test/**/*_spec.rb']
18
+ end
19
+
20
+ desc "Print SpecDocs"
21
+ Spec::Rake::SpecTask.new(:doc) do |t|
22
+ t.spec_opts = ["--format", "specdoc"]
23
+ t.spec_files = FileList['test/*_spec.rb']
24
+ end
25
+
4
26
  desc "Generate RDoc documentation"
5
27
  Rake::RDocTask.new(:rdoc) do |rdoc|
6
28
  rdoc.options << '--line-numbers' << '--inline-source' <<
@@ -14,4 +36,5 @@ Rake::RDocTask.new(:rdoc) do |rdoc|
14
36
  end
15
37
  end
16
38
 
17
-
39
+ desc "Run the rspec"
40
+ task :default => :spec
@@ -0,0 +1,12 @@
1
+ <h1><%= "#{Date::MONTHNAMES[@month]} #{@year}" %></h1>
2
+
3
+ <div class="articles">
4
+ <% for post in @blog.posts_for_month(@year, @month) %>
5
+ <div class="article">
6
+ <div class="date"><%= human_date post.date %></div>
7
+ <h2><%= post_link post %></h2>
8
+ <%= post.summary %>
9
+ </div>
10
+ <hr/>
11
+ <% end %>
12
+ </div>
data/lib/shinmun/post.rb CHANGED
@@ -82,7 +82,7 @@ module Shinmun
82
82
  end
83
83
 
84
84
  # Split up the source into header and body. Load the header as
85
- # yaml document if present.
85
+ # yaml document.
86
86
  def parse(src)
87
87
  if src =~ /\A---(.*?)---(.*)/m
88
88
  @head = YAML.load($1)
@@ -1,31 +1,31 @@
1
1
  Shinmun::Blog.map do
2
2
 
3
- get '/categories/(.*)\.rss' do |category|
3
+ category_feed '/categories/(.*)\.rss' do |category|
4
4
  render 'category.rxml', find_category(category).merge(:layout => false)
5
5
  end
6
6
 
7
- get '/categories/(.*)' do |category|
7
+ category '/categories/(.*)' do |category|
8
8
  render 'category.rhtml', find_category(category)
9
9
  end
10
10
 
11
- get '/tags/(.*)' do |tag|
11
+ tag '/tags/(.*)' do |tag|
12
12
  render 'category.rhtml', :name => "Tag: #{tag}", :posts => posts.select { |p| p.tag_list.include?(tag) }
13
13
  end
14
14
 
15
- get '/(\d+)/(\d+)/(.*)' do |year, month, name|
15
+ post '/(\d+)/(\d+)/(.*)' do |year, month, name|
16
16
  post = find_post(year.to_i, month.to_i, name)
17
17
  render 'post.rhtml', :post => post, :comments => comments_for(post.path)
18
18
  end
19
19
 
20
- get '/(\d+)/(\d+)' do |year, month|
20
+ archive '/(\d+)/(\d+)' do |year, month|
21
21
  render 'archive.rhtml', :year => year.to_i, :month => month.to_i, :posts => posts_for_month(year.to_i, month.to_i)
22
22
  end
23
23
 
24
- get '/index\.rss' do
24
+ feed '/index\.rss' do
25
25
  render 'index.rxml', :layout => false
26
26
  end
27
27
 
28
- post '/comments' do
28
+ comments '/comments' do
29
29
  if params['preview'] == 'true'
30
30
  render '_comments.rhtml', :comments => [Shinmun::Comment.new(params)]
31
31
  else
@@ -34,76 +34,25 @@ Shinmun::Blog.map do
34
34
  end
35
35
  end
36
36
 
37
- get '/assets/javascripts\.js' do
37
+ javascripts '/assets/javascripts\.js' do
38
38
  scripts = assets['javascripts'].to_a.join
39
- if_none_match(etag(scripts)) { scripts }
39
+ if_none_match(etag(scripts)) do
40
+ text scripts
41
+ end
40
42
  end
41
43
 
42
- get '/assets/stylesheets\.css' do
44
+ stylesheets '/assets/stylesheets\.css' do
43
45
  styles = assets['stylesheets'].to_a.join
44
- if_none_match(etag(styles)) { styles }
46
+ if_none_match(etag(styles)) do
47
+ text styles
48
+ end
45
49
  end
46
50
 
47
- get '/assets/(.*)' do |path|
51
+ assets '/assets/(.*)' do |path|
48
52
  file = assets[path] or raise "#{path} not found"
49
- if_none_match(etag(file)) { file }
50
- end
51
-
52
- map '/admin' do
53
- use(Class.new do
54
- def initialize(app); @app = app; end
55
- def call(env)
56
- if env['HTTP_HOST'] == 'localhost:9292'
57
- @app.call(env)
58
- else
59
- [401, {}, '<h1>Not Allowed</h1>']
60
- end
61
- end
62
- end)
63
-
64
- get '/posts/(.*)' do |page|
65
- render 'admin/posts.rhtml', :posts => posts_by_date, :page => page.to_i, :page_size => 10
66
- end
67
-
68
- get '/pages' do
69
- render 'admin/pages.rhtml'
70
- end
71
-
72
- get '/commits/(.*)' do |id|
73
- render 'admin/commit.rhtml', :commit => repo.commit(id)
74
- end
75
-
76
- get '/commits' do
77
- render 'admin/commits.rhtml'
53
+ if_none_match(etag(file)) do
54
+ text file
78
55
  end
79
-
80
- map '/edit/(.*)' do
81
- get do |path|
82
- render 'admin/edit.rhtml', :post => store[path]
83
- end
84
-
85
- post do |path|
86
- post = store[path]
87
- update_post(post, params['data'])
88
- redirect(post.date ? '/admin/posts/' : '/admin/pages')
89
- end
90
- end
91
-
92
- post '/delete/(.*)' do |path|
93
- post = store[path]
94
- delete_post post
95
- redirect(post.date ? '/admin/posts/' : '/admin/pages/')
96
- end
97
-
98
- post '/create' do
99
- post = create_post(params)
100
- redirect "/admin/edit/#{post.path}"
101
- end
102
-
103
- get '' do
104
- redirect '/admin/posts/'
105
- end
106
-
107
56
  end
108
57
 
109
58
  get '/$' do
data/test/blog_spec.rb CHANGED
@@ -5,9 +5,8 @@ require 'pp'
5
5
 
6
6
  describe Shinmun::Blog do
7
7
 
8
- TEST_DIR = File.expand_path(File.dirname(__FILE__))
9
- TEMPLATES_DIR = File.expand_path(TEST_DIR + '/templates')
10
- REPO = TEST_DIR + '/repo'
8
+ TEMPLATES_DIR = File.expand_path(File.dirname(__FILE__) + '/templates')
9
+ REPO = '/tmp/shinmun-test'
11
10
 
12
11
  before do
13
12
  FileUtils.rm_rf REPO
data/test/post_spec.rb CHANGED
@@ -17,11 +17,11 @@ nodes.
17
17
  END
18
18
 
19
19
  it 'should parse and dump in the same way' do
20
- Shinmun::Post.new(:type => 'md').parse(POST).dump.should == (POST)
20
+ Shinmun::Post.new(:type => 'md', :src => POST).dump.should == (POST)
21
21
  end
22
22
 
23
23
  it "should parse the yaml header" do
24
- post = Shinmun::Post.new(:type => 'md').parse(POST)
24
+ post = Shinmun::Post.new(:type => 'md', :src => POST)
25
25
  post.title.should == 'Patroon - a Javascript Template Engine'
26
26
  post.category.should == 'Javascript'
27
27
  post.date.should == Date.new(2008,9,9)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: georgi-shinmun
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.10
4
+ version: "0.4"
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthias Georgi
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-04-12 00:00:00 -07:00
12
+ date: 2008-04-13 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -61,89 +61,59 @@ extensions: []
61
61
  extra_rdoc_files:
62
62
  - README.md
63
63
  files:
64
- - .gitignore
65
- - LICENSE
66
64
  - README.md
67
65
  - Rakefile
68
66
  - bin/shinmun
69
- - example/pages/about.md
70
67
  - example/Rakefile
71
- - example/templates
72
- - example/templates/index.rhtml
73
- - example/templates/page.rhtml
74
- - example/templates/_comments.rhtml
75
- - example/templates/category.rhtml
76
- - example/templates/_comment_form.rhtml
77
- - example/templates/post.rhtml
78
- - example/templates/index.rxml
79
- - example/templates/admin
80
- - example/templates/admin/commit.rhtml
81
- - example/templates/admin/posts.rhtml
82
- - example/templates/admin/pages.rhtml
83
- - example/templates/admin/edit.rhtml
84
- - example/templates/admin/commits.rhtml
85
- - example/templates/category.rxml
86
- - example/templates/_pagination.rhtml
87
- - example/templates/layout.rhtml
88
68
  - example/assets/images/favicon.ico
89
69
  - example/assets/images/loading.gif
90
- - example/assets/stylesheets/7-diff.css
91
- - example/assets/stylesheets/8-blog.css
92
- - example/assets/stylesheets/6-comments.css
93
- - example/assets/stylesheets/5-coderay.css
70
+ - example/assets/javascripts/1-jquery.min.js
71
+ - example/assets/javascripts/2-jquery-form.min.js
72
+ - example/assets/javascripts/3-comments.js
73
+ - example/assets/javascripts/4-coderay.js
74
+ - example/assets/print.css
94
75
  - example/assets/stylesheets/1-reset.css
76
+ - example/assets/stylesheets/2-typo.css
95
77
  - example/assets/stylesheets/3-table.css
96
78
  - example/assets/stylesheets/4-article.css
97
- - example/assets/stylesheets/2-typo.css
98
- - example/assets/print.css
99
- - example/assets/wmd/images/wmd.png
100
- - example/assets/wmd/images/bg-fill.png
101
- - example/assets/wmd/images/italic.png
102
- - example/assets/wmd/images/h1.png
103
- - example/assets/wmd/images/wmd-on.png
104
- - example/assets/wmd/images/undo.png
105
- - example/assets/wmd/images/link.png
106
- - example/assets/wmd/images/bold.png
107
- - example/assets/wmd/images/ul.png
108
- - example/assets/wmd/images/img.png
109
- - example/assets/wmd/images/blockquote.png
110
- - example/assets/wmd/images/code.png
111
- - example/assets/wmd/images/hr.png
112
- - example/assets/wmd/images/bg.png
113
- - example/assets/wmd/images/separator.png
114
- - example/assets/wmd/images/redo.png
115
- - example/assets/wmd/images/ol.png
116
- - example/assets/wmd/showdown.js
117
- - example/assets/wmd/wmd-plus.js
118
- - example/assets/wmd/wmd-base.js
119
- - example/assets/wmd/wmd.js
120
- - example/assets/javascripts/2-jquery-form.min.js
121
- - example/assets/javascripts/1-jquery.min.js
122
- - example/assets/javascripts/4-coderay.js
123
- - example/assets/javascripts/3-comments.js
79
+ - example/assets/stylesheets/5-comments.css
80
+ - example/assets/stylesheets/6-diff.css
81
+ - example/assets/stylesheets/7-blog.css
124
82
  - example/config.ru
125
83
  - example/config/blog.yml
84
+ - example/pages/about.md
85
+ - example/templates/_comment_form.rhtml
86
+ - example/templates/_comments.rhtml
87
+ - example/templates/_pagination.rhtml
88
+ - example/templates/archive.rhtml
89
+ - example/templates/category.rhtml
90
+ - example/templates/category.rxml
91
+ - example/templates/index.rhtml
92
+ - example/templates/index.rxml
93
+ - example/templates/layout.rhtml
94
+ - example/templates/page.rhtml
95
+ - example/templates/post.rhtml
126
96
  - lib/shinmun.rb
127
97
  - lib/shinmun/aggregations/delicious.rb
128
98
  - lib/shinmun/aggregations/flickr.rb
129
99
  - lib/shinmun/blog.rb
130
- - lib/shinmun/routes.rb
131
100
  - lib/shinmun/bluecloth_coderay.rb
132
101
  - lib/shinmun/comment.rb
133
102
  - lib/shinmun/helpers.rb
134
103
  - lib/shinmun/post.rb
135
104
  - lib/shinmun/post_handler.rb
136
- - test/templates/index.rhtml
137
- - test/templates/page.rhtml
105
+ - lib/shinmun/routes.rb
106
+ - test/blog_spec.rb
107
+ - test/post_spec.rb
138
108
  - test/templates/_comments.rhtml
109
+ - test/templates/archive.rhtml
139
110
  - test/templates/category.rhtml
140
- - test/templates/post.rhtml
141
- - test/templates/index.rxml
142
111
  - test/templates/category.rxml
143
- - test/templates/archive.rhtml
112
+ - test/templates/index.rhtml
113
+ - test/templates/index.rxml
144
114
  - test/templates/layout.rhtml
145
- - test/blog_spec.rb
146
- - test/post_spec.rb
115
+ - test/templates/page.rhtml
116
+ - test/templates/post.rhtml
147
117
  has_rdoc: true
148
118
  homepage: http://github.com/georgi/shinmun
149
119
  post_install_message:
data/.gitignore DELETED
@@ -1,4 +0,0 @@
1
- *~
2
- doc/*
3
- pkg/*
4
- test/repo
data/LICENSE DELETED
@@ -1,18 +0,0 @@
1
- Copyright (c) 2008 Matthias Georgi <http://www.matthias-georgi.de>
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to
5
- deal in the Software without restriction, including without limitation the
6
- rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7
- sell copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
16
- THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
17
- IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
18
- CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,112 +0,0 @@
1
- pre {
2
- margin: 1em 0;
3
- padding: 0.8em 1em;
4
- background: #f9f9f9;
5
- border: 1px solid #ddd;
6
- font-family: monospace;
7
- font-size: 1.1em;
8
- line-height: 1.5em;
9
- color: #110000;
10
- overflow: auto;
11
- }
12
-
13
- .code-area {
14
- width:100%;
15
- }
16
-
17
- .code-link {
18
- padding-left:1em;
19
- border-top: 1px solid #ddd;
20
- border-left: 1px solid #ddd;
21
- border-right: 1px solid #ddd;
22
- }
23
-
24
- .code-link a {
25
- text-decoration: none;
26
- font-size: 0.8em;
27
- }
28
-
29
- pre.highlight {
30
- margin: 0;
31
- }
32
-
33
- pre.highlight ol {
34
- margin: 0;
35
- color: #333;
36
- }
37
-
38
- .af { color:#00C }
39
- .an { color:#007 }
40
- .av { color:#700 }
41
- .aw { color:#C00 }
42
- .bi { color:#509; font-weight:bold }
43
- .c { color:#888 }
44
-
45
- .ch { color:#04D }
46
- .ch .k { color:#04D }
47
- .ch .dl { color:#039 }
48
-
49
- .cl { color:#B06; font-weight:bold }
50
- .co { color:#036; font-weight:bold }
51
- .cr { color:#0A0 }
52
- .cv { color:#369 }
53
- .df { color:#099; font-weight:bold }
54
- .di { color:#088; font-weight:bold }
55
- .dl { color:black }
56
- .do { color:#970 }
57
- .ds { color:#D42; font-weight:bold }
58
- .e { color:#666; font-weight:bold }
59
- .en { color:#800; font-weight:bold }
60
- .er { color:#F00; background-color:#FAA }
61
- .ex { color:#F00; font-weight:bold }
62
- .fl { color:#60E; font-weight:bold }
63
- .fu { color:#06B; font-weight:bold }
64
- .gv { color:#d70; font-weight:bold }
65
- .hx { color:#058; font-weight:bold }
66
- .i { color:#00D; font-weight:bold }
67
- .ic { color:#B44; font-weight:bold }
68
-
69
- .il { background: #eee }
70
- .il .il { background: #ddd }
71
- .il .il .il { background: #ccc }
72
- .il .dl { font-weight: bold ! important; color: #888 ! important }
73
-
74
- .in { color:#B2B; font-weight:bold }
75
- .iv { color:#33B }
76
- .la { color:#970; font-weight:bold }
77
- .lv { color:#963 }
78
- .oc { color:#40E; font-weight:bold }
79
- .on { color:#000; font-weight:bold }
80
- .op { }
81
- .pc { color:#038; font-weight:bold }
82
- .pd { color:#369; font-weight:bold }
83
- .pp { color:#579 }
84
- .pt { color:#339; font-weight:bold }
85
- .r { color:#080; font-weight:bold }
86
-
87
- .rx { background-color:#fff0ff }
88
- .rx .k { color:#808 }
89
- .rx .dl { color:#404 }
90
- .rx .mod { color:#C2C }
91
- .rx .fu { color:#404; font-weight: bold }
92
-
93
- .s { background-color:#fff0f0 }
94
- .s .s { background-color:#ffe0e0 }
95
- .s .s .s { background-color:#ffd0d0 }
96
- .s .k { color:#D20 }
97
- .s .dl { color:#710 }
98
-
99
- .sh { background-color:#f0fff0 }
100
- .sh .k { color:#2B2 }
101
- .sh .dl { color:#161 }
102
-
103
- .sy { color:#A60 }
104
- .sy .k { color:#A60 }
105
- .sy .dl { color:#630 }
106
-
107
- .ta { color:#070 }
108
- .tf { color:#070; font-weight:bold }
109
- .ts { color:#D70; font-weight:bold }
110
- .ty { color:#339; font-weight:bold }
111
- .v { color:#036 }
112
- .xt { color:#444 }
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file