neruda 0.2.0 → 0.2.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bf44dce40376682ca2835d1472ccd7eb2ea47d5e7b892623da09350077bf4a10
4
- data.tar.gz: fcabfb117f2ac44a76fc325a84982be6dd6e389872f4fb6bfbd10bf05924d882
3
+ metadata.gz: 65d74457beb2f9469147295e9edd1f0f2ba9bc307b0adf5c7945cad322be5dd1
4
+ data.tar.gz: 7327285f32dc4cf51cf60d08afcb4e1e170654a0d173dd2c802d45be7b979f94
5
5
  SHA512:
6
- metadata.gz: 7113b65a71b026c419a6de56d7ba2b84cdf9fbf6b02a977736dbad0484a225c2d97acb4df906c957e51a9c3b968b3260fb748856630fc534c4f30a7d5aa280d7
7
- data.tar.gz: 1e478aa7c7c9ac80cb9293fb873baeadbfa25864cffb81460ac5e727b46360228f5eeb0f525116e88b35a537a2ae07c94f5b373e037095168c1b929ccc07bb9b
6
+ metadata.gz: 8a4317715347eff92a1ba934234d05612901a2b90c74827a5c8feed173be1d5ca390f0a19cc56bf8c7c854753fd7a03b1a08b7347c4447e714d632f847652d95
7
+ data.tar.gz: c898c9c6128405a60b4f0f9c6402fa23a1a3b221175b6296065b93d1dd6c20f8b45c3fa51c238c549cfc454615d7161fe10eb73ff692a1b35a55f8c17f7c94f4
data/bin/pablo CHANGED
@@ -27,11 +27,15 @@ module PabloCommands
27
27
 
28
28
  def pablo_build(file = ARGV[0])
29
29
  @rake.options.build_all = true
30
- if file.nil?
31
- @rake.invoke_task('site:build')
32
- else
33
- @rake.invoke_task("site:build:one[#{file}]")
30
+ # Update org-config.el, if necessary
31
+ @rake.invoke_task('org-config.el')
32
+ suffix = ''
33
+ if !file.nil?
34
+ suffix = ":one[#{file}]"
35
+ elsif @options[:force]
36
+ suffix = '[true]'
34
37
  end
38
+ @rake.invoke_task("site:build#{suffix}")
35
39
  end
36
40
 
37
41
  def pablo_preview
@@ -93,9 +93,15 @@ module Neruda
93
93
  names = projects.keys.map do |p|
94
94
  ["\"#{p}\"", "\"#{p}-assets\""]
95
95
  end.flatten
96
- names << "\"theme-#{settings['theme']}\""
96
+ unless settings['theme'] == 'default'
97
+ names << "\"theme-#{settings['theme']}\""
98
+ end
97
99
  sources.each do |s|
100
+ # Default theme defined in settings is already included
98
101
  next unless s['theme'] && s['theme'] != settings['theme']
102
+ # Never include theme named 'default' as it does not rely on any
103
+ # file to export.
104
+ next if s['theme'] == 'default'
99
105
  theme = "\"theme-#{s['theme']}\""
100
106
  next if names.include? theme
101
107
  names << theme
@@ -131,7 +137,7 @@ module Neruda
131
137
  other_lines << format(':exclude "%<value>s"',
132
138
  value: opts['exclude'])
133
139
  end
134
- themeconf = org_theme_config(opts['theme']) || ''
140
+ themeconf = org_theme_config(opts['theme'])
135
141
  <<~ORGPROJECT
136
142
  ("#{project_name}"
137
143
  :base-directory "#{opts['path']}"
@@ -171,10 +177,17 @@ module Neruda
171
177
  HTMLHEAD
172
178
  end
173
179
 
174
- def org_default_html_options
180
+ def org_default_html_options(project)
181
+ curtheme = project['theme'] || settings['theme']
182
+ if curtheme.nil? || curtheme == 'default'
183
+ return { 'html-head' => '__ATOM_FEED__',
184
+ 'html-postamble' => org_default_postamble,
185
+ 'html-head-include-default-style' => 't',
186
+ 'html-head-include-scripts' => 't' }
187
+ end
175
188
  { 'html-head' => org_default_html_head,
176
189
  'html-postamble' => org_default_postamble,
177
- 'html-head-include-default-style' => 't',
190
+ 'html-head-include-default-style' => 'nil',
178
191
  'html-head-include-scripts' => 'nil' }
179
192
  end
180
193
 
@@ -192,14 +205,15 @@ module Neruda
192
205
  end
193
206
 
194
207
  def build_project_org_headers(project)
195
- orgtplopts = org_default_html_options.merge(
208
+ orgtplopts = org_default_html_options(project).merge(
196
209
  settings['org-html'] || {}, project['org-html'] || {}
197
210
  )
198
211
  orgtpl = []
212
+ truthy_val = ['t', 'nil', '1'].freeze
199
213
  orgtplopts.each do |k, v|
200
214
  v = expand_vars_in_html_head(v, project) if k == 'html-head'
201
215
  val = v.strip.gsub(/"/, '\"')
202
- if ['t', 'nil', '1'].include? val
216
+ if truthy_val.include? val
203
217
  orgtpl << ":#{k} #{val}"
204
218
  else
205
219
  orgtpl << ":#{k} \"#{val}\""
@@ -224,26 +238,20 @@ module Neruda
224
238
  end
225
239
 
226
240
  def org_default_theme_config
227
- org_theme_config(settings['theme']).split("\n").map do |line|
228
- if line[0] == '('
229
- line
230
- else
231
- " #{line}"
232
- end
233
- end.join("\n")
241
+ theme_config = org_theme_config(settings['theme'])
242
+ return theme_config if theme_config == ''
243
+ output = theme_config.split("\n").map do |line|
244
+ " #{line}"
245
+ end
246
+ format("\n%<conf>s", conf: output.join("\n"))
234
247
  end
235
248
 
236
249
  def org_theme_config(theme)
237
- return nil if theme.nil?
250
+ return '' if theme.nil? || theme == 'default'
238
251
  workdir = Dir.pwd
239
- if theme == 'default'
240
- sourcedir = File.expand_path('../../../', __dir__)
241
- else
242
- sourcedir = workdir
243
- end
244
252
  <<~THEMECONFIG
245
253
  ("theme-#{theme}"
246
- :base-directory "#{sourcedir}/themes/#{theme}"
254
+ :base-directory "#{workdir}/themes/#{theme}"
247
255
  :base-extension "jpg\\\\\\|gif\\\\\\|png\\\\\\|js\\\\\\|css\\\\\\|otf\\\\\\|ttf\\\\\\|woff2?"
248
256
  :recursive t
249
257
  :publishing-directory "#{workdir}/#{settings['public_folder']}/assets/#{theme}"
@@ -10,8 +10,7 @@
10
10
  user-full-name "__AUTHOR_NAME__"
11
11
  org-html-metadata-timestamp-format "__LONG_DATE_FMT__"
12
12
  org-publish-project-alist
13
- `(__ALL_PROJECTS__
14
- __THEME_CONFIG__
13
+ `(__ALL_PROJECTS____THEME_CONFIG__
15
14
  ("website" :components (__ALL_PROJECTS_NAMES__))))
16
15
 
17
16
  ;; Load neruda lib
@@ -69,12 +69,11 @@ module Neruda
69
69
  elsif title.nil? || title == 'index'
70
70
  title = Neruda::Config.settings['title']
71
71
  end
72
- head = <<~HEADER
72
+ <<~HEADER.strip
73
73
  #+title: #{title}
74
74
  #+author: #{Neruda::Config.settings['author']}
75
75
  #+language: #{Neruda::Config.settings['lang']}
76
76
  HEADER
77
- head.strip
78
77
  end
79
78
 
80
79
  def org_articles(articles_list)
@@ -5,7 +5,7 @@ module Neruda
5
5
  module OrgFileClassMethods
6
6
  def source_for_target(file_name)
7
7
  # file_name may be frozen...
8
- src = file_name.sub(/\.html$/, '.org')
8
+ src = file_name.sub(/\.html\z/, '.org')
9
9
  pubfolder = Neruda::Config.settings['public_folder']
10
10
  src.sub!(/^#{pubfolder}\//, '')
11
11
  # Look for match in each possible sources. The first found wins.
@@ -25,7 +25,7 @@ module Neruda
25
25
  def target_for_source(file_name, project, with_public_folder: true)
26
26
  return nil if file_name.nil?
27
27
  # file_name may be frozen...
28
- target = file_name.sub(/\.org$/, '.html').sub(/^#{Dir.pwd}\//, '')
28
+ target = file_name.sub(/\.org\z/, '.html').sub(/^#{Dir.pwd}\//, '')
29
29
  if project.nil?
30
30
  subfolder = File.basename(File.dirname(target))
31
31
  target = File.basename(target)
@@ -44,15 +44,15 @@ module Neruda
44
44
  # Look for match in each possible sources. The first found wins.
45
45
  Neruda::Config.sources.each do |project|
46
46
  project_relative_path = project['path'].sub(/^#{Dir.pwd}\//, '')
47
- return project if file_name =~ /^#{project_relative_path}\//
47
+ return project if file_name.match?(/^#{project_relative_path}\//)
48
48
  end
49
49
  nil
50
50
  end
51
51
 
52
52
  def slug(title)
53
- title.downcase.gsub(' ', '-')
53
+ title.downcase.tr(' ', '-')
54
54
  .encode('ascii', fallback: ->(k) { translit(k) })
55
- .gsub(/[^\w-]/, '').gsub(/-$/, '')
55
+ .gsub(/[^\w-]/, '').delete_suffix('-')
56
56
  end
57
57
 
58
58
  private
@@ -7,8 +7,7 @@ module Neruda
7
7
  # This module holds HTML formatter methods for the {Neruda::OrgFile}
8
8
  # class.
9
9
  module OrgFileHtmlizer
10
- # Publish the current file or the entire project if
11
- # {Neruda::OrgFile#file @file} is ~nil~.
10
+ # Publish the current file
12
11
  #
13
12
  # @return [Boolean, nil] the underlying ~system~ method return value
14
13
  def publish
@@ -20,7 +20,7 @@ module Neruda # rubocop:disable Style/Documentation
20
20
 
21
21
  def local_path(requested_path)
22
22
  routes = Neruda::Config.settings.dig('preview', 'routes') || {}
23
- return routes[requested_path] if routes.keys.include? requested_path
23
+ return routes[requested_path] if routes.has_key? requested_path
24
24
  local_path = Neruda::Config.settings['public_folder'] + requested_path
25
25
  if File.directory? local_path
26
26
  local_path = format(
@@ -33,7 +33,7 @@ module Neruda # rubocop:disable Style/Documentation
33
33
 
34
34
  def parse_body(local_path, local_host)
35
35
  body = IO.read local_path
36
- return body unless local_path.match?(/\.(?:ht|x)ml$/)
36
+ return body unless local_path.match?(/\.(?:ht|x)ml\z/)
37
37
  domain = Neruda::Config.settings['domain']
38
38
  return body if domain == ''
39
39
  body.gsub(/"file:\/\//, format('"%<host>s', host: local_host))
data/lib/neruda/utils.rb CHANGED
@@ -26,24 +26,25 @@ module Neruda
26
26
  # configuration
27
27
  PABLO_OPTIONS = {
28
28
  '-a' => { long: 'author' },
29
+ '-d' => { long: 'directory', boolean: true },
30
+ '-f' => { long: 'force', boolean: true },
31
+ '-h' => { long: 'help', boolean: true, meth: :on_tail },
29
32
  '-l' => { long: 'lang', keyword: 'LOCALE' },
30
- '-t' => { long: 'title' },
31
33
  '-p' => { long: 'path' },
32
- '-d' => { long: 'directory', boolean: true },
34
+ '-t' => { long: 'title' },
33
35
  '-v' => { long: 'verbose', boolean: true, meth: :on_tail },
34
- '-h' => { long: 'help', boolean: true, meth: :on_tail },
35
36
  '-V' => { long: 'version', boolean: true, meth: :on_tail }
36
37
  }.freeze
37
38
 
38
39
  # @return [Hash] the possible ~pablo~ subcommands and their
39
40
  # configuration
40
41
  PABLO_COMMANDS = {
41
- 'init' => { opts: ['-a', '-l', '-t', '-v', '-h'] },
42
+ 'init' => { opts: ['-a', '-h', '-l', '-t', '-v'] },
42
43
  'config' => { alias: 'init' },
43
44
  'preview' => { opts: ['-h'] },
44
- 'open' => { opts: ['-a', '-l', '-t', '-d', '-p', '-v', '-h'] },
45
+ 'open' => { opts: ['-a', '-d', '-h', '-l', '-p', '-t', '-v'] },
45
46
  'edit' => { alias: 'open' },
46
- 'build' => { opts: ['-h'] },
47
+ 'build' => { opts: ['-f', '-h'] },
47
48
  'publish' => { opts: ['-h'] },
48
49
  'help' => { opts: ['-h'] },
49
50
  'basic' => { opts: ['-h', '-V'], label: '<command>' }
@@ -150,10 +151,10 @@ module Neruda
150
151
  # @return [String] either apple, windows or linux (default)
151
152
  # :nocov:
152
153
  def current_os
153
- if ENV['OS'] == 'Windows_NT' || RUBY_PLATFORM =~ /cygwin/
154
+ if ENV['OS'] == 'Windows_NT' || RUBY_PLATFORM.include?('cygwin')
154
155
  return 'windows'
155
156
  end
156
- return 'apple' if RUBY_PLATFORM =~ /darwin/
157
+ return 'apple' if RUBY_PLATFORM.include?('darwin')
157
158
  'linux'
158
159
  end
159
160
  # :nocov:
@@ -166,7 +167,9 @@ module Neruda
166
167
  return if Neruda::Config.org_last_version.nil?
167
168
  # :nocov:
168
169
  tarball = "org-#{Neruda::Config.org_last_version}.tar.gz"
169
- dest_file = "tmp/#{tarball}"
170
+ # Remove version number in dest file to allow easy rake file
171
+ # task naming
172
+ dest_file = 'tmp/org.tar.gz'
170
173
  return if File.exist?(dest_file)
171
174
  uri = URI("https://orgmode.org/#{tarball}")
172
175
  # Will crash on purpose if anything goes wrong
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Neruda
4
4
  # @return [String] the version number of the current Neruda release.
5
- VERSION = '0.2.0'
5
+ VERSION = '0.2.2'
6
6
  end
data/lib/tasks/org.rake CHANGED
@@ -5,9 +5,16 @@ require 'open-uri'
5
5
  # Neruda::Config is required by Neruda::Utils
6
6
  require 'neruda/utils'
7
7
 
8
+ require 'rake/clean'
9
+
10
+ CLOBBER.push(
11
+ 'tmp/org.tar.gz', 'tmp/__last_org_version__',
12
+ 'org-config.el', '.dir-locals.el', 'htmlize.el'
13
+ )
14
+
8
15
  namespace :org do
9
16
  desc 'Download last version of Org'
10
- task :download do
17
+ file 'tmp/org.tar.gz' do
11
18
  verbose = Rake::FileUtilsExt.verbose_flag
12
19
  download = Thread.new do
13
20
  Thread.current[:org_version] = Neruda::Config.org_last_version
@@ -22,7 +29,7 @@ namespace :org do
22
29
  end
23
30
 
24
31
  desc 'Compile Org'
25
- task compile: ['org:download'] do
32
+ task compile: 'tmp/org.tar.gz' do |task|
26
33
  verbose = Rake::FileUtilsExt.verbose_flag
27
34
  org_version = "org-#{Neruda::Config.org_last_version}"
28
35
  next if Dir.exist?("#{org_version}/lisp")
@@ -32,9 +39,7 @@ namespace :org do
32
39
  make << 'EMACSQ="emacs -Q --eval \'(setq inhibit-message t)\'"'
33
40
  end
34
41
  build = Thread.new do
35
- tarball = "tmp/#{org_version}.tar.gz"
36
- sh "tar xzf #{tarball}"
37
- File.unlink tarball
42
+ sh "tar xzf #{task.prerequisites[0]}"
38
43
  sh((make + ['compile']).join(' '))
39
44
  sh((make + ['autoloads']).join(' '))
40
45
  Dir.glob('org-[0-9.]*').each do |ov|
@@ -51,19 +56,10 @@ namespace :org do
51
56
  end
52
57
 
53
58
  file 'htmlize.el' do
54
- verbose = Rake::FileUtilsExt.verbose_flag
55
- build = Thread.new do
56
- htmlize = URI(
57
- 'https://raw.githubusercontent.com/hniksic/emacs-htmlize/master/htmlize.el'
58
- ).open.read
59
- IO.write 'htmlize.el', htmlize
60
- end
61
- if verbose
62
- build.join
63
- warn 'htmlize.el has been locally installed'
64
- else
65
- Neruda::Utils.throbber(build, 'Installing htmlize.el:')
66
- end
59
+ htmlize = URI(
60
+ 'https://raw.githubusercontent.com/hniksic/emacs-htmlize/master/htmlize.el'
61
+ ).open.read
62
+ IO.write 'htmlize.el', htmlize
67
63
  end
68
64
 
69
65
  file 'org-config.el' => 'htmlize.el' do
@@ -74,11 +70,22 @@ namespace :org do
74
70
  Neruda::Config.write_dir_locals
75
71
  end
76
72
 
77
- desc 'Install org'
78
- task install: ['org:compile', 'org-config.el', '.dir-locals.el'] do
73
+ desc 'Install Org'
74
+ multitask install: ['org:compile', 'org-config.el', '.dir-locals.el'] do
79
75
  mkdir_p "#{Neruda::Config.settings['public_folder']}/assets"
80
76
  Neruda::Config.sources.each do |s|
81
77
  mkdir_p s['path'] unless Dir.exist? s['path']
82
78
  end
83
79
  end
80
+
81
+ # The following task only run the clobber task (not provided by us)
82
+ # and the org:install one, which is already tested. Thus, we can
83
+ # safely remove it from coverage.
84
+ # :nocov:
85
+ desc 'Upgrade Org'
86
+ task :upgrade do
87
+ Rake::Task['clobber'].execute
88
+ Rake::Task['org:install'].invoke
89
+ end
90
+ # :nocov:
84
91
  end
data/lib/tasks/site.rake CHANGED
@@ -24,10 +24,11 @@ namespace :site do
24
24
  end
25
25
 
26
26
  desc 'Convert all org files'
27
- task build: :index do
27
+ task :build, [:force?] => [:index] do |_, args|
28
+ args.with_defaults(:force? => false)
28
29
  build_html = Thread.new do
30
+ rm_r 'tmp/timestamps', force: true if args[:force?]
29
31
  Neruda::Emacs.new(verbose: Rake::FileUtilsExt.verbose_flag).publish
30
- # TODO: Find a way to publish the virtual tag project
31
32
  end
32
33
  begin
33
34
  Neruda::Utils.throbber(build_html, 'Building:')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: neruda
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Étienne Deparis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-16 00:00:00.000000000 Z
11
+ date: 2020-10-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -142,14 +142,42 @@ dependencies:
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: '0.90'
145
+ version: '0.93'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: '0.90'
152
+ version: '0.93'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rubocop-performance
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '1.8'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '1.8'
167
+ - !ruby/object:Gem::Dependency
168
+ name: rubocop-rspec
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '1.43'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '1.43'
153
181
  - !ruby/object:Gem::Dependency
154
182
  name: simplecov
155
183
  requirement: !ruby/object:Gem::Requirement
@@ -212,11 +240,6 @@ files:
212
240
  - lib/tasks/tags.rake
213
241
  - locales/en.yml
214
242
  - locales/fr.yml
215
- - themes/default/css/htmlize.css
216
- - themes/default/css/style.css
217
- - themes/default/img/bottom.png
218
- - themes/default/img/tic.png
219
- - themes/default/img/top.png
220
243
  homepage: https://git.umaneti.net/neruda/about/
221
244
  licenses:
222
245
  - WTFPL
@@ -1,346 +0,0 @@
1
- /**
2
- * This file has been generated with the `org-html-htmlize-generate-css'
3
- * command of org mode, with the Dracula theme enabled.
4
- * The Dracula theme is released under an MIT license and thus the
5
- * following is also released under this license.
6
- * See https://github.com/dracula/emacs for details.
7
- */
8
-
9
- .src {
10
- color: #f8f8f2;
11
- background-color: #282a36;
12
- padding: .6em 1em;
13
- }
14
- pre.src a:hover {
15
- text-decoration: underline;
16
- }
17
-
18
- .org-bold {
19
- /* bold */
20
- font-weight: bold;
21
- }
22
- .org-bold-italic {
23
- /* bold-italic */
24
- font-weight: bold;
25
- font-style: italic;
26
- }
27
-
28
- .org-builtin {
29
- /* font-lock-builtin-face */
30
- color: #ffb86c;
31
- }
32
- .org-button {
33
- /* button */
34
- color: #8be9fd;
35
- text-decoration: underline;
36
- }
37
- .org-comment {
38
- /* font-lock-comment-face */
39
- color: #6272a4;
40
- }
41
- .org-comment-delimiter {
42
- /* font-lock-comment-delimiter-face */
43
- color: #6272a4;
44
- }
45
- .org-constant {
46
- /* font-lock-constant-face */
47
- color: #8be9fd;
48
- }
49
- .org-cursor {
50
- /* cursor */
51
- background-color: #8be9fd;
52
- }
53
- .org-doc {
54
- /* font-lock-doc-face */
55
- color: #6272a4;
56
- }
57
- .org-error {
58
- /* error */
59
- color: #ffc0cb;
60
- font-weight: bold;
61
- }
62
- .org-escape-glyph {
63
- /* escape-glyph */
64
- color: #00ffff;
65
- }
66
- .org-file-name-shadow {
67
- /* file-name-shadow */
68
- color: #b3b3b3;
69
- }
70
- .org-fringe {
71
- /* fringe */
72
- color: #b6b6b2;
73
- background-color: #282a36;
74
- }
75
- .org-function-name {
76
- /* font-lock-function-name-face */
77
- color: #50fa7b;
78
- font-weight: bold;
79
- }
80
- .org-glyphless-char {
81
- /* glyphless-char */
82
- font-size: 60%;
83
- }
84
- .org-header-line {
85
- /* header-line */
86
- background-color: #282a36;
87
- }
88
- .org-header-line-highlight {
89
- /* header-line-highlight */
90
- color: #ccccc7;
91
- background-color: #464752;
92
- }
93
- .org-help-argument-name {
94
- /* help-argument-name */
95
- font-style: italic;
96
- }
97
- .org-highlight {
98
- /* highlight */
99
- color: #ccccc7;
100
- background-color: #464752;
101
- }
102
- .org-hl-line {
103
- /* hl-line */
104
- background-color: #44475a;
105
- }
106
- .org-homoglyph {
107
- /* homoglyph */
108
- color: #00ffff;
109
- }
110
- .org-italic {
111
- /* italic */
112
- font-style: italic;
113
- }
114
- .org-keyword {
115
- /* font-lock-keyword-face */
116
- color: #ff79c6;
117
- font-weight: bold;
118
- }
119
- .org-lazy-highlight {
120
- /* lazy-highlight */
121
- color: #e2e2dc;
122
- background-color: #464752;
123
- }
124
- .org-line-number-current-line {
125
- /* line-number-current-line */
126
- color: #b3b3b3;
127
- background-color: #282a36;
128
- }
129
- .org-link {
130
- /* link */
131
- color: #8be9fd;
132
- text-decoration: underline;
133
- }
134
- .org-link-visited {
135
- /* link-visited */
136
- color: #ee82ee;
137
- text-decoration: underline;
138
- }
139
- .org-linum {
140
- /* linum */
141
- color: #565761;
142
- background-color: #282a36;
143
- font-style: italic;
144
- }
145
- .org-match {
146
- /* match */
147
- background-color: #3a5fcd;
148
- }
149
- .org-negation-char {
150
- /* font-lock-negation-char-face */
151
- color: #8be9fd;
152
- }
153
- .org-next-error {
154
- /* next-error */
155
- color: #282a36;
156
- background-color: #f1fa8c;
157
- }
158
- .org-nobreak-hyphen {
159
- /* nobreak-hyphen */
160
- color: #00ffff;
161
- }
162
- .org-nobreak-space {
163
- /* nobreak-space */
164
- color: #00ffff;
165
- text-decoration: underline;
166
- }
167
- .org-outline-1 {
168
- /* outline-1 */
169
- color: #50fa7b;
170
- }
171
- .org-outline-2 {
172
- /* outline-2 */
173
- color: #bd93f9;
174
- }
175
- .org-outline-3 {
176
- /* outline-3 */
177
- color: #8be9fd;
178
- }
179
- .org-outline-4 {
180
- /* outline-4 */
181
- color: #ffb86c;
182
- }
183
- .org-outline-5 {
184
- /* outline-5 */
185
- color: #ffb86c;
186
- }
187
- .org-outline-6 {
188
- /* outline-6 */
189
- color: #0189cc;
190
- }
191
- .org-outline-7 {
192
- /* outline-7 */
193
- color: #ffb86c;
194
- }
195
- .org-outline-8 {
196
- /* outline-8 */
197
- color: #f1fa8c;
198
- }
199
- .org-page-break-lines {
200
- /* page-break-lines */
201
- color: #6272a4;
202
- }
203
- .org-preprocessor {
204
- /* font-lock-preprocessor-face */
205
- color: #ffb86c;
206
- }
207
- .org-py-builtins {
208
- /* py-builtins-face */
209
- color: #ffb86c;
210
- }
211
- .org-py-class-name {
212
- /* py-class-name-face */
213
- color: #bd93f9;
214
- }
215
- .org-py-decorators {
216
- /* py-decorators-face */
217
- color: #ff79c6;
218
- font-weight: bold;
219
- }
220
- .org-py-def-class {
221
- /* py-def-class-face */
222
- color: #ff79c6;
223
- font-weight: bold;
224
- }
225
- .org-py-exception-name {
226
- /* py-exception-name-face */
227
- color: #ffb86c;
228
- }
229
- .org-py-import-from {
230
- /* py-import-from-face */
231
- color: #ff79c6;
232
- font-weight: bold;
233
- }
234
- .org-py-number {
235
- /* py-number-face */
236
- color: #f8f8f2;
237
- background-color: #282a36;
238
- }
239
- .org-py-object-reference {
240
- /* py-object-reference-face */
241
- color: #ff79c6;
242
- font-weight: bold;
243
- }
244
- .org-py-pseudo-keyword {
245
- /* py-pseudo-keyword-face */
246
- color: #ff79c6;
247
- font-weight: bold;
248
- }
249
- .org-py-try-if {
250
- /* py-try-if-face */
251
- color: #ff79c6;
252
- font-weight: bold;
253
- }
254
- .org-py-variable-name {
255
- /* py-variable-name-face */
256
- color: #f8f8f2;
257
- background-color: #282a36;
258
- }
259
- .org-py-xxx-tag {
260
- /* py-XXX-tag-face */
261
- color: #f1fa8c;
262
- }
263
- .org-query-replace {
264
- /* query-replace */
265
- color: #ffb86c;
266
- background-color: #464752;
267
- font-weight: bold;
268
- }
269
- .org-regexp-grouping-backslash {
270
- /* font-lock-regexp-grouping-backslash */
271
- font-weight: bold;
272
- }
273
- .org-regexp-grouping-construct {
274
- /* font-lock-regexp-grouping-construct */
275
- font-weight: bold;
276
- }
277
- .org-region {
278
- /* region */
279
- color: #282a36;
280
- background-color: #f1fa8c;
281
- }
282
- .org-shadow {
283
- /* shadow */
284
- color: #b3b3b3;
285
- }
286
- .org-show-paren-match {
287
- /* show-paren-match */
288
- background-color: #4f94cd;
289
- }
290
- .org-show-paren-match-expression {
291
- /* show-paren-match-expression */
292
- background-color: #4f94cd;
293
- }
294
- .org-show-paren-mismatch {
295
- /* show-paren-mismatch */
296
- color: #ffffff;
297
- background-color: #a020f0;
298
- }
299
- .org-string {
300
- /* font-lock-string-face */
301
- color: #f1fa8c;
302
- }
303
- .org-success {
304
- /* success */
305
- color: #00ff00;
306
- font-weight: bold;
307
- }
308
- .org-tooltip {
309
- /* tooltip */
310
- color: #000000;
311
- background-color: #ffffe0;
312
- }
313
- .org-trailing-whitespace {
314
- /* trailing-whitespace */
315
- background-color: #ffb86c;
316
- }
317
- .org-type {
318
- /* font-lock-type-face */
319
- color: #bd93f9;
320
- }
321
- .org-underline {
322
- /* underline */
323
- text-decoration: underline;
324
- }
325
- .org-variable-name {
326
- /* font-lock-variable-name-face */
327
- color: #f8f8f2;
328
- }
329
- .org-vertical-border {
330
- /* vertical-border */
331
- color: #373844;
332
- }
333
- .org-warning {
334
- /* warning */
335
- color: #ffb86c;
336
- }
337
- .org-warning-1 {
338
- /* font-lock-warning-face */
339
- color: #ffb86c;
340
- background-color: #373844;
341
- }
342
- .org-which-func {
343
- /* which-func */
344
- color: #50fa7b;
345
- font-weight: bold;
346
- }
@@ -1,153 +0,0 @@
1
- /*
2
-
3
- Version 2
4
- Dernière modification: Milouse
5
-
6
-
7
- Umaneti.net Legacy
8
- ==================
9
-
10
- -> pour une largeur d'écran de 800 pixels
11
- -> cette feuille est libre de droits
12
-
13
- */
14
-
15
- body {
16
- font-size: 12pt;
17
- color: #000000;
18
- background: url('/assets/default/img/top.png') top repeat-x;
19
- font-family: sans-serif;
20
- margin-bottom: 0;
21
- }
22
-
23
- h1 {color: #ffba53;}
24
-
25
- h2 {
26
- color: #68a5c3;
27
- margin-left: 1em;
28
- margin-top: 1.5em;
29
- }
30
- h2 code {
31
- color: #68a5c3;
32
- }
33
-
34
- h3 {color:#ffba53;}
35
-
36
- a[hreflang]:after {
37
- content: "\00a0[" attr(hreflang) "]";
38
- color: #cccccc;
39
- background: transparent;
40
- }
41
-
42
- a, a:visited {color: #666666;}
43
- a:hover {text-decoration: none;}
44
-
45
- img {border: 0;}
46
-
47
- blockquote {
48
- font-style: italic;
49
- border-left: 4px solid #666666;
50
- padding-left: 1em;
51
- }
52
-
53
- acronym {
54
- border-bottom:dotted 1px #666666;
55
- cursor:help;
56
- }
57
-
58
- code {
59
- font-family: monospace;
60
- color: #c74350;
61
- }
62
- .org-src-container pre {
63
- overflow: auto;
64
- }
65
- .org-src-container label.org-src-name {
66
- display: block;
67
- text-align: center;
68
- font-size: .9em;
69
- color: #666666;
70
- }
71
-
72
- ul {
73
- list-style: url('/assets/default/img/tic.png');
74
- padding-left: 2em;
75
- }
76
-
77
- ol {padding-left: 2em;}
78
-
79
- p, li {
80
- text-align: justify;
81
- line-height: 1.75em;
82
- }
83
-
84
- dt {
85
- font-weight: bold;
86
- }
87
-
88
- .underline {
89
- text-decoration: underline;
90
- }
91
-
92
- .org-center {
93
- text-align: center;
94
- }
95
-
96
- fieldset {border: 0;}
97
-
98
- input, textarea {
99
- border: 1px solid #cccccc;
100
- margin: 3px 0px;
101
- background: #ffffff;
102
- }
103
- input:hover,
104
- input:focus,
105
- textarea:hover,
106
- textarea:focus {
107
- border: 1px solid #ffba53;
108
- background: #ffffff;
109
- }
110
-
111
- /* ID #TOUT pour faire que la page soit centrée de 800 de large. --------------------- */
112
- #preamble, #content, #postamble {
113
- width: 800px;
114
- margin: 1em auto;
115
- padding: 1em;
116
- }
117
-
118
- /* Header */
119
-
120
- #content header h1 {
121
- text-align: right;
122
- margin-bottom: 1.5em;
123
- }
124
-
125
- #preamble nav ul {
126
- list-style: none;
127
- padding-left: 0;
128
- }
129
- #preamble li {
130
- display: inline;
131
- line-height: 1em;
132
- }
133
- #preamble li::before {
134
- content: " · ";
135
- }
136
- #preamble li:first-child::before {
137
- content: "";
138
- }
139
-
140
- /* Footer */
141
-
142
- #postamble {
143
- background: url('/assets/default/img/bottom.png') top repeat-x;
144
- border-top: 1px solid #cccccc;
145
- font-size: .8em;
146
- text-align: center;
147
- margin-bottom: 0;
148
- }
149
-
150
- .post-meta {
151
- font-size: .9em;
152
- font-style: italic;
153
- }
Binary file
Binary file
Binary file