kitabu 2.0.0 → 2.0.1

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 (72) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1 -1
  3. data/Gemfile.lock +1 -1
  4. data/README.md +7 -5
  5. data/lib/kitabu.rb +12 -1
  6. data/lib/kitabu/cli.rb +1 -1
  7. data/lib/kitabu/exporter.rb +5 -5
  8. data/lib/kitabu/{parser.rb → exporter/base.rb} +9 -11
  9. data/lib/kitabu/exporter/css.rb +24 -0
  10. data/lib/kitabu/{parser → exporter}/epub.rb +2 -2
  11. data/lib/kitabu/exporter/html.rb +109 -0
  12. data/lib/kitabu/{parser → exporter}/mobi.rb +2 -2
  13. data/lib/kitabu/exporter/pdf.rb +43 -0
  14. data/lib/kitabu/{parser → exporter}/txt.rb +2 -2
  15. data/lib/kitabu/footnotes/base.rb +33 -0
  16. data/lib/kitabu/footnotes/html.rb +52 -0
  17. data/lib/kitabu/footnotes/pdf.rb +47 -0
  18. data/lib/kitabu/source_list.rb +73 -0
  19. data/lib/kitabu/stats.rb +1 -1
  20. data/lib/kitabu/stream.rb +1 -1
  21. data/lib/kitabu/toc/html.rb +6 -6
  22. data/lib/kitabu/version.rb +1 -1
  23. data/spec/kitabu/exporter/css_spec.rb +16 -0
  24. data/spec/kitabu/{parser → exporter}/epub_spec.rb +3 -3
  25. data/spec/kitabu/exporter/html_spec.rb +36 -0
  26. data/spec/kitabu/{parser → exporter}/mobi_spec.rb +3 -3
  27. data/spec/kitabu/{parser → exporter}/pdf_spec.rb +3 -3
  28. data/spec/kitabu/{parser → exporter}/txt_spec.rb +3 -3
  29. data/spec/kitabu/footnotes/html_spec.rb +67 -0
  30. data/spec/kitabu/{parser/html_spec.rb → source_list_spec.rb} +5 -34
  31. data/spec/kitabu/stats_spec.rb +7 -7
  32. data/templates/templates/styles/pdf.scss +1 -47
  33. data/templates/text/04_Dynamic_Content.erb +1 -1
  34. metadata +29 -54
  35. data/examples/kitabu/output/epub/images/.gitkeep +0 -0
  36. data/examples/kitabu/output/epub/images/kitabu-icon.png +0 -0
  37. data/examples/kitabu/output/epub/images/kitabu-icon.svg +0 -19
  38. data/examples/kitabu/output/epub/images/kitabu-word.png +0 -0
  39. data/examples/kitabu/output/epub/images/kitabu-word.svg +0 -14
  40. data/examples/kitabu/output/epub/images/kitabu.png +0 -0
  41. data/examples/kitabu/output/epub/images/kitabu.svg +0 -20
  42. data/examples/kitabu/output/epub/section_0.html +0 -266
  43. data/examples/kitabu/output/epub/section_1.html +0 -246
  44. data/examples/kitabu/output/epub/section_2.html +0 -520
  45. data/examples/kitabu/output/epub/section_3.html +0 -282
  46. data/examples/kitabu/output/epub/section_4.html +0 -276
  47. data/examples/kitabu/output/epub/styles/epub.css +0 -437
  48. data/examples/kitabu/output/epub/styles/html.css +0 -712
  49. data/examples/kitabu/output/epub/styles/pdf.css +0 -840
  50. data/examples/kitabu/output/epub/styles/print.css +0 -1278
  51. data/examples/kitabu/output/epub/toc.html +0 -37
  52. data/examples/kitabu/output/images/.gitkeep +0 -0
  53. data/examples/kitabu/output/images/kitabu-icon.png +0 -0
  54. data/examples/kitabu/output/images/kitabu-icon.svg +0 -19
  55. data/examples/kitabu/output/images/kitabu-word.png +0 -0
  56. data/examples/kitabu/output/images/kitabu-word.svg +0 -14
  57. data/examples/kitabu/output/images/kitabu.png +0 -0
  58. data/examples/kitabu/output/images/kitabu.svg +0 -20
  59. data/examples/kitabu/output/kitabu.epub +0 -0
  60. data/examples/kitabu/output/kitabu.html +0 -513
  61. data/examples/kitabu/output/kitabu.mobi +0 -0
  62. data/examples/kitabu/output/kitabu.pdf +0 -0
  63. data/examples/kitabu/output/kitabu.pdf.html +0 -729
  64. data/examples/kitabu/output/kitabu.print.html +0 -729
  65. data/examples/kitabu/output/kitabu.print.pdf +0 -0
  66. data/examples/kitabu/output/kitabu.txt +0 -440
  67. data/examples/kitabu/output/styles/epub.css +0 -437
  68. data/examples/kitabu/output/styles/html.css +0 -712
  69. data/examples/kitabu/output/styles/pdf.css +0 -840
  70. data/examples/kitabu/output/styles/print.css +0 -1278
  71. data/lib/kitabu/parser/html.rb +0 -208
  72. data/lib/kitabu/parser/pdf.rb +0 -88
@@ -1,440 +0,0 @@
1
-
2
-
3
-
4
-
5
-
6
- This guide will help you understand how all of the pieces fit together on
7
- Kitabu.
8
- Nando Vieira
9
-
10
- Contents
11
-
12
- Getting_Started
13
- Installing_Ruby
14
- Installing_PrinceXML
15
- Installing_KindleGen
16
- Creating_Chapters
17
- Syntax_Highlighting
18
- What_about_the_syntax
19
- Lexers
20
- Dynamic_Content
21
- Escaping_ERb_code
22
- Exporting_Files
23
- Exporting_PDF_with_DocRaptor
24
-
25
- Getting Started
26
-
27
- This guide is designed for beginners who want to get started with Kitabu from
28
- scratch. However, to get the most out of it, you need to have some
29
- prerequisites installed:
30
-
31
- * The Ruby interpreter version 2.0.0 or greater.
32
- * The PrinceXML converter version 9.0 or greater.
33
- * The KindleGen converter.
34
-
35
-
36
- Installing Ruby
37
-
38
- To install Ruby, consider using RVM or rbenv, both available for Mac OSX and
39
- Linux distros. If you’re running a Windows, well, I can’t help you. I
40
- don’t even know if Kitabu runs over Windows boxes, so if you find any bugs,
41
- make sure you let_me_know.
42
-
43
- Installing PrinceXML
44
-
45
- PrinceXML is the best HTML to PDF converter available. You can use advanced CSS
46
- features to style your book in any way you want. But good things don’t come
47
- for free, and PrinceXML is no exception. The Professional License, which you
48
- grant you a installation on a single computer by a single user costs 495USD. If
49
- you don’t like the price tag, consider using DocRaptor when you’re ready to
50
- publish your book.
51
- To install PrinceXML, go to the website and download the correct version for
52
- your platform; you can choose from Mac OSX, to Linux and Windows.
53
-
54
- Installing KindleGen
55
-
56
- KindleGen is the command-line tool that allows you to convert e-pubs into .mobi
57
- files. You can’t sell these files, though.1 So if that’s the case, consider
58
- using Calibre for this task.2
59
- If you’re running Homebrew on the Mac OSX, you can install it with brew
60
- install kindlegen. Go to KindleGen’s_website and download the appropriate
61
- installer otherwise.
62
- -------------------------------------------------------------------------------
63
-
64
- 1. You can, but that would be a violation of Amazon’s terms of use.� ↩
65
- 2. Calibre is not perfect, but does a good job.� ↩
66
-
67
-
68
- Creating Chapters
69
-
70
- You can create chapters by having multiple files or directories. They’re
71
- alphabetically sorted, so make sure you use a prefixed file name like
72
- 01_Introduction.md as the file name.
73
- If you’re going to write a long book, make sure you use the directory
74
- organization. This way you can have smaller text files, which will be easier to
75
- read and change as you go. A file structure suggestion for a book about Ruby_on
76
- Rails would be:
77
-
78
- getting-started-with-rails
79
- ├── text
80
- � � └── 01_Guide_Assumptions.md
81
- � � └── 02_Whats_Rails.md
82
- � � └── 03_Creating_A_New_Project
83
- � � └── 01_Installing_Rails.md
84
- � � └── 02_Creating_The_Blog_Application.md
85
- � � └── 04_Hello_Rails
86
- � � └── 01_Starting_Up_The_Web_Server.md
87
- � � └── 02_Say_Hello_Rails.md
88
- � � └── 03_Setting_The_Application_Home_Page.md
89
- � � └── ...
90
-
91
- Notice that the file name does not need to be readable, but it will make your
92
- life easier.
93
-
94
- Syntax Highlighting
95
-
96
-
97
- What about the syntax
98
-
99
- Kitabu uses Route as the syntax highlight formatter. It emits an output
100
- compatible with stylesheets designed for pygments, the Python library used by
101
- many.
102
- To highlight a code block, use the fenced block syntax. The following example
103
- would be formatted as Ruby.
104
-
105
- ```ruby
106
- class User
107
- attr_accessor :name, :email
108
-
109
- def initialize(name, email)
110
- @name = name
111
- @email = email
112
- end
113
- end
114
- ```
115
-
116
- The output would be something like this:
117
-
118
- class User
119
- attr_accessor :name, :email
120
-
121
- def initialize(name, email)
122
- @name = name
123
- @email = email
124
- end
125
- end
126
-
127
- If you’re using Sublime Text, make sure you install the Markdown_Extended
128
- plugin; it enables code syntax highlighting on your Markdown files.
129
- You can also provide inline options such as line numbers and inline rendering.
130
-
131
- ```ruby?line_numbers=1
132
- class User
133
- attr_accessor :name, :email
134
-
135
- def initialize(name, email)
136
- @name = name
137
- @email = email
138
- end
139
- end
140
- ```
141
-
142
- This would be rendered like this:
143
-
144
-
145
- 1 class User
146
- 2 attr_accessor :name, :email
147
- 3
148
- 4 def initialize(name, email)
149
- 5 @name = name
150
- 6 @email = email
151
- 7 end
152
- 8 end
153
-
154
-
155
-
156
- Lexers
157
-
158
- Rouge comes with dozens of lexers. Check out this list, generated dynamically
159
- when you export your e-book.
160
-
161
- * Apache apache
162
- configuration files for Apache web server
163
- * AppleScript applescript
164
- The AppleScript scripting language by Apple Inc. (http://developer.apple.com/
165
- applescript/)
166
- * C c
167
- The C programming language
168
- * Clojure clojure
169
- The Clojure programming language (clojure.org)
170
- * CoffeeScript coffeescript
171
- The Coffeescript programming language (coffeescript.org)
172
- * Common Lisp common_lisp
173
- The Common Lisp variant of Lisp (common-lisp.net)
174
- * Config File conf
175
- A generic lexer for configuration files
176
- * C++ cpp
177
- The C++ programming language
178
- * C# csharp
179
- a multi-paradigm language targeting .NET
180
- * CSS css
181
- Cascading Style Sheets, used to style web pages
182
- * Dart dart
183
- The Dart programming language (dartlang.com)
184
- * diff diff
185
- Lexes unified diffs or patches
186
- * Elixir elixir
187
- Elixir language (elixir-lang.org)
188
- * ERB erb
189
- Embedded ruby template files
190
- * Erlang erlang
191
- The Erlang programming language (erlang.org)
192
- * Factor factor
193
- Factor, the practical stack language (factorcode.org)
194
- * Gherkin gherkin
195
- A business-readable spec DSL ( github.com/cucumber/cucumber/wiki/Gherkin )
196
- * Go go
197
- The Go programming language (http://golang.org)
198
- * Groovy groovy
199
- The Groovy programming language (groovy.codehaus.org)
200
- * Haml haml
201
- The Haml templating system for Ruby (haml.info)
202
- * Handlebars handlebars
203
- the Handlebars and Mustache templating languages
204
- * Haskell haskell
205
- The Haskell programming language (haskell.org)
206
- * HTML html
207
- HTML, the markup language of the web
208
- * HTTP http
209
- http requests and responses
210
- * INI ini
211
- the INI configuration format
212
- * Io io
213
- The IO programming language (http://iolanguage.com)
214
- * Java java
215
- The Java programming language (java.com)
216
- * JavaScript javascript
217
- JavaScript, the browser scripting language
218
- * Json json
219
- JavaScript Object Notation (json.org)
220
- * Liquid liquid
221
- Liquid is a templating engine for Ruby (liquidmarkup.org)
222
- * Literate CoffeeScript literate_coffeescript
223
- Literate coffeescript
224
- * Literate Haskell literate_haskell
225
- Literate haskell
226
- * LLVM llvm
227
- The LLVM Compiler Infrastructure (http://llvm.org/)
228
- * Lua lua
229
- Lua (http://www.lua.org)
230
- * Make make
231
- Makefile syntax
232
- * Markdown markdown
233
- Markdown, a light-weight markup language for authors
234
- * MATLAB matlab
235
- Matlab
236
- * MoonScript moonscript
237
- Moonscript (http://www.moonscript.org)
238
- * nginx nginx
239
- configuration files for the nginx web server (nginx.org)
240
- * Nim nim
241
- The Nim programming language (http://nim-lang.org/)
242
- * Objective-C objective_c
243
- an extension of C commonly used to write Apple software
244
- * OCaml ocaml
245
- Objective CAML (ocaml.org)
246
- * Perl perl
247
- The Perl scripting language (perl.org)
248
- * PHP php
249
- The PHP scripting language (php.net)
250
- * Plain Text plaintext
251
- A boring lexer that doesn’t highlight anything
252
- * Prolog prolog
253
- The Prolog programming language (http://en.wikipedia.org/wiki/Prolog)
254
- * .properties properties
255
- .properties config files for Java
256
- * Puppet puppet
257
- The Puppet configuration management language (puppetlabs.org)
258
- * Python python
259
- The Python programming language (python.org)
260
- * QML qml
261
- QML, a UI markup language
262
- * R r
263
- The R statistics language (r-project.org)
264
- * Racket racket
265
- Racket is a Lisp descended from Scheme (racket-lang.org)
266
- * Ruby ruby
267
- The Ruby programming language (ruby-lang.org)
268
- * Rust rust
269
- The Rust programming language (rust-lang.org)
270
- * Sass sass
271
- The Sass stylesheet language language (sass-lang.com)
272
- * Scala scala
273
- The Scala programming language (scala-lang.org)
274
- * Scheme scheme
275
- The Scheme variant of Lisp
276
- * SCSS scss
277
- SCSS stylesheets (sass-lang.com)
278
- * sed sed
279
- sed, the ultimate stream editor
280
- * shell shell
281
- Various shell languages, including sh and bash
282
- * Slim slim
283
- The Slim template language
284
- * Smalltalk smalltalk
285
- The Smalltalk programming language
286
- * SML sml
287
- Standard ML
288
- * SQL sql
289
- Structured Query Language, for relational databases
290
- * Swift swift
291
- Multi paradigm, compiled programming language developed by Apple for iOS and
292
- OS X development. (developer.apple.com/swift)
293
- * Tcl tcl
294
- The Tool Command Language (tcl.tk)
295
- * TeX tex
296
- The TeX typesetting system
297
- * TOML toml
298
- the TOML configuration format (https://github.com/mojombo/toml)
299
- * Visual Basic vb
300
- Visual Basic
301
- * VimL viml
302
- VimL, the scripting language for the Vim editor (vim.org)
303
- * XML xml
304
- XML
305
- * YAML yaml
306
- Yaml Ain’t Markup Language (yaml.org)
307
-
308
- And if what you want is not on this list, make you open_a_ticket on the
309
- project.
310
-
311
- Dynamic Content
312
-
313
- Sometimes you may find useful to generate content dynamically. Maybe you’re
314
- going to read some configuration file, or maybe you just want to define some
315
- helpers. Kitabu has support for ERb files; all you need to do is naming your
316
- text file as .erb.
317
- On the previous chapter, we listed all supported Rouge lexers. To do that, I
318
- created a helper that looks like this:
319
-
320
- module Kitabu
321
- module Helpers
322
- def lexers_list
323
- buffer = '<ul class="lexers">'
324
-
325
- Rouge::Lexers.constants.each do |const|
326
- lexer = Rouge::Lexers.const_get(const)
327
-
328
- begin
329
- title = lexer.title
330
- tag = lexer.tag
331
- description = lexer.desc
332
- rescue Exception => e
333
- next
334
- end
335
-
336
- buffer << '<li>'
337
- buffer << "<strong>#{title}</strong> "
338
- buffer << "<code>#{tag}</code><br>"
339
- buffer << "<span>#{description}</span>"
340
- buffer << '</li>'
341
- end
342
-
343
- buffer << '</ul>'
344
- buffer
345
- end
346
- end
347
- end
348
-
349
- To use it, I just needed to add <%= lexers_list %> to my text file. This
350
- allows you to create anything you need!
351
- Kitabu comes with some built-in helpers, such as note. With this helper, you
352
- can create a note that generates a HTML structure, so you can easily style it.
353
- The syntax for using the note helper is note(type, &block).
354
-
355
- <% note do %>
356
- Some text that will be parsed as Markdown.
357
- <% end %>
358
-
359
- By default, this will generate a <div class="note info"> tag, but you can
360
- use anything you want.
361
-
362
- <% note :warning do %>
363
- Some text that will be parsed as Markdown.
364
- <% end %>
365
-
366
- Check_out_the_source for a sample on how to create block helpers like note.
367
-
368
- Escaping ERb code
369
-
370
- If you want to write a book about Rails, you’re likely to use lots of ERb
371
- tags. In this case, make sure you escape the and markers as <% %> and
372
- <%= %>; otherwise you’ll have a syntax error.
373
-
374
- <%%= Date.today %>
375
-
376
-
377
- Exporting Files
378
-
379
- You can generate files as you go. Just execute kitabu export from your book’s
380
- root directory.
381
-
382
- $ kitabu export
383
- ** e-book has been exported
384
-
385
- This command will generate all supported formats1. The generated files will be
386
- placed on your output directory; the following output list only the relevant
387
- files.
388
-
389
- $ tree output
390
- output
391
- ├── images
392
- │� � ├── kitabu.png
393
- │� � └── kitabu.svg
394
- ├── kitabu.epub
395
- ├── kitabu.html
396
- ├── kitabu.mobi
397
- ├── kitabu.pdf
398
- ├── kitabu.print.pdf
399
- ├── kitabu.txt
400
- └── styles
401
- ├── epub.css
402
- ├── html.css
403
- ├── pdf.css
404
- └── print.css
405
-
406
- This can take a while depending on your book size, but usually the process is
407
- pretty fast. If you want to generate a specific format faster, provide the --
408
- only flag.
409
-
410
- $ kitabu export --only pdf
411
-
412
- You can also automatically generate files when something changes. You can use
413
- Guard for this, and Kitabu even generates a sample file for you. All you have
414
- to do is running bundle exec guard.
415
-
416
- $ bundle exec guard
417
- 20:38:10 - INFO - Guard is now watching at '/Users/fnando/Projects/kitabu/
418
- examples/kitabu'
419
- ** e-book has been exported
420
-
421
-
422
- Exporting PDF with DocRaptor
423
-
424
- After exporting your files (you can use --only pdf for this), upload files to
425
- somewhere public, possibly your Dropbox account. You can even use curl; since
426
- the command is quite long, you can view it at https://gist.github.com/fnando/
427
- de555a08e7aab14a661a.
428
- -------------------------------------------------------------------------------
429
-
430
- 1. Depend on Prince, html2text and KindleGen being available on your
431
- $PATH.� ↩
432
-
433
-
434
- Kitabu
435
-
436
- This guide will help you understand how all of the pieces fit together on
437
- Kitabu.
438
- Nando Vieira
439
- Copyright (C) 2015 Nando Vieira.
440
-
@@ -1,437 +0,0 @@
1
- /*! normalize.css v3.0.2 | MIT License | git.io/normalize */
2
- /**
3
- * 1. Set default font family to sans-serif.
4
- * 2. Prevent iOS text size adjust after orientation change, without disabling
5
- * user zoom.
6
- */
7
- /* line 9, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
8
- html {
9
- font-family: sans-serif;
10
- /* 1 */
11
- -ms-text-size-adjust: 100%;
12
- /* 2 */
13
- -webkit-text-size-adjust: 100%;
14
- /* 2 */
15
- }
16
-
17
- /**
18
- * Remove default margin.
19
- */
20
- /* line 19, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
21
- body {
22
- margin: 0;
23
- }
24
-
25
- /* HTML5 display definitions
26
- ========================================================================== */
27
- /**
28
- * Correct `block` display not defined for any HTML5 element in IE 8/9.
29
- * Correct `block` display not defined for `details` or `summary` in IE 10/11
30
- * and Firefox.
31
- * Correct `block` display not defined for `main` in IE 11.
32
- */
33
- /* line 33, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
34
- article,
35
- aside,
36
- details,
37
- figcaption,
38
- figure,
39
- footer,
40
- header,
41
- hgroup,
42
- main,
43
- menu,
44
- nav,
45
- section,
46
- summary {
47
- display: block;
48
- }
49
-
50
- /**
51
- * 1. Correct `inline-block` display not defined in IE 8/9.
52
- * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
53
- */
54
- /* line 54, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
55
- audio,
56
- canvas,
57
- progress,
58
- video {
59
- display: inline-block;
60
- /* 1 */
61
- vertical-align: baseline;
62
- /* 2 */
63
- }
64
-
65
- /**
66
- * Prevent modern browsers from displaying `audio` without controls.
67
- * Remove excess height in iOS 5 devices.
68
- */
69
- /* line 67, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
70
- audio:not([controls]) {
71
- display: none;
72
- height: 0;
73
- }
74
-
75
- /**
76
- * Address `[hidden]` styling not present in IE 8/9/10.
77
- * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
78
- */
79
- /* line 77, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
80
- [hidden],
81
- template {
82
- display: none;
83
- }
84
-
85
- /* Links
86
- ========================================================================== */
87
- /**
88
- * Remove the gray background color from active links in IE 10.
89
- */
90
- /* line 89, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
91
- a {
92
- background-color: transparent;
93
- }
94
-
95
- /**
96
- * Improve readability when focused and also mouse hovered in all browsers.
97
- */
98
- /* line 97, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
99
- a:active,
100
- a:hover {
101
- outline: 0;
102
- }
103
-
104
- /* Text-level semantics
105
- ========================================================================== */
106
- /**
107
- * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
108
- */
109
- /* line 109, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
110
- abbr[title] {
111
- border-bottom: 1px dotted;
112
- }
113
-
114
- /**
115
- * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
116
- */
117
- /* line 117, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
118
- b,
119
- strong {
120
- font-weight: bold;
121
- }
122
-
123
- /**
124
- * Address styling not present in Safari and Chrome.
125
- */
126
- /* line 126, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
127
- dfn {
128
- font-style: italic;
129
- }
130
-
131
- /**
132
- * Address variable `h1` font-size and margin within `section` and `article`
133
- * contexts in Firefox 4+, Safari, and Chrome.
134
- */
135
- /* line 135, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
136
- h1 {
137
- font-size: 2em;
138
- margin: 0.67em 0;
139
- }
140
-
141
- /**
142
- * Address styling not present in IE 8/9.
143
- */
144
- /* line 144, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
145
- mark {
146
- background: #ff0;
147
- color: #000;
148
- }
149
-
150
- /**
151
- * Address inconsistent and variable font size in all browsers.
152
- */
153
- /* line 153, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
154
- small {
155
- font-size: 80%;
156
- }
157
-
158
- /**
159
- * Prevent `sub` and `sup` affecting `line-height` in all browsers.
160
- */
161
- /* line 161, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
162
- sub,
163
- sup {
164
- font-size: 75%;
165
- line-height: 0;
166
- position: relative;
167
- vertical-align: baseline;
168
- }
169
-
170
- /* line 169, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
171
- sup {
172
- top: -0.5em;
173
- }
174
-
175
- /* line 173, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
176
- sub {
177
- bottom: -0.25em;
178
- }
179
-
180
- /* Embedded content
181
- ========================================================================== */
182
- /**
183
- * Remove border when inside `a` element in IE 8/9/10.
184
- */
185
- /* line 184, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
186
- img {
187
- border: 0;
188
- }
189
-
190
- /**
191
- * Correct overflow not hidden in IE 9/10/11.
192
- */
193
- /* line 192, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
194
- svg:not(:root) {
195
- overflow: hidden;
196
- }
197
-
198
- /* Grouping content
199
- ========================================================================== */
200
- /**
201
- * Address margin not present in IE 8/9 and Safari.
202
- */
203
- /* line 203, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
204
- figure {
205
- margin: 1em 40px;
206
- }
207
-
208
- /**
209
- * Address differences between Firefox and other browsers.
210
- */
211
- /* line 211, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
212
- hr {
213
- -moz-box-sizing: content-box;
214
- box-sizing: content-box;
215
- height: 0;
216
- }
217
-
218
- /**
219
- * Contain overflow in all browsers.
220
- */
221
- /* line 221, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
222
- pre {
223
- overflow: auto;
224
- }
225
-
226
- /**
227
- * Address odd `em`-unit font size rendering in all browsers.
228
- */
229
- /* line 229, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
230
- code,
231
- kbd,
232
- pre,
233
- samp {
234
- font-family: monospace, monospace;
235
- font-size: 1em;
236
- }
237
-
238
- /* Forms
239
- ========================================================================== */
240
- /**
241
- * Known limitation: by default, Chrome and Safari on OS X allow very limited
242
- * styling of `select`, unless a `border` property is set.
243
- */
244
- /**
245
- * 1. Correct color not being inherited.
246
- * Known issue: affects color of disabled elements.
247
- * 2. Correct font properties not being inherited.
248
- * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
249
- */
250
- /* line 252, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
251
- button,
252
- input,
253
- optgroup,
254
- select,
255
- textarea {
256
- color: inherit;
257
- /* 1 */
258
- font: inherit;
259
- /* 2 */
260
- margin: 0;
261
- /* 3 */
262
- }
263
-
264
- /**
265
- * Address `overflow` set to `hidden` in IE 8/9/10/11.
266
- */
267
- /* line 266, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
268
- button {
269
- overflow: visible;
270
- }
271
-
272
- /**
273
- * Address inconsistent `text-transform` inheritance for `button` and `select`.
274
- * All other form control elements do not inherit `text-transform` values.
275
- * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
276
- * Correct `select` style inheritance in Firefox.
277
- */
278
- /* line 277, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
279
- button,
280
- select {
281
- text-transform: none;
282
- }
283
-
284
- /**
285
- * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
286
- * and `video` controls.
287
- * 2. Correct inability to style clickable `input` types in iOS.
288
- * 3. Improve usability and consistency of cursor style between image-type
289
- * `input` and others.
290
- */
291
- /* line 290, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
292
- button,
293
- html input[type="button"],
294
- input[type="reset"],
295
- input[type="submit"] {
296
- -webkit-appearance: button;
297
- /* 2 */
298
- cursor: pointer;
299
- /* 3 */
300
- }
301
-
302
- /**
303
- * Re-set default cursor for disabled elements.
304
- */
305
- /* line 302, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
306
- button[disabled],
307
- html input[disabled] {
308
- cursor: default;
309
- }
310
-
311
- /**
312
- * Remove inner padding and border in Firefox 4+.
313
- */
314
- /* line 311, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
315
- button::-moz-focus-inner,
316
- input::-moz-focus-inner {
317
- border: 0;
318
- padding: 0;
319
- }
320
-
321
- /**
322
- * Address Firefox 4+ setting `line-height` on `input` using `!important` in
323
- * the UA stylesheet.
324
- */
325
- /* line 322, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
326
- input {
327
- line-height: normal;
328
- }
329
-
330
- /**
331
- * It's recommended that you don't attempt to style these elements.
332
- * Firefox's implementation doesn't respect box-sizing, padding, or width.
333
- *
334
- * 1. Address box sizing set to `content-box` in IE 8/9/10.
335
- * 2. Remove excess padding in IE 8/9/10.
336
- */
337
- /* line 334, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
338
- input[type="checkbox"],
339
- input[type="radio"] {
340
- box-sizing: border-box;
341
- /* 1 */
342
- padding: 0;
343
- /* 2 */
344
- }
345
-
346
- /**
347
- * Fix the cursor style for Chrome's increment/decrement buttons. For certain
348
- * `font-size` values of the `input`, it causes the cursor style of the
349
- * decrement button to change from `default` to `text`.
350
- */
351
- /* line 346, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
352
- input[type="number"]::-webkit-inner-spin-button,
353
- input[type="number"]::-webkit-outer-spin-button {
354
- height: auto;
355
- }
356
-
357
- /**
358
- * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
359
- * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
360
- * (include `-moz` to future-proof).
361
- */
362
- /* line 357, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
363
- input[type="search"] {
364
- -webkit-appearance: textfield;
365
- /* 1 */
366
- -moz-box-sizing: content-box;
367
- -webkit-box-sizing: content-box;
368
- /* 2 */
369
- box-sizing: content-box;
370
- }
371
-
372
- /**
373
- * Remove inner padding and search cancel button in Safari and Chrome on OS X.
374
- * Safari (but not Chrome) clips the cancel button when the search input has
375
- * padding (and `textfield` appearance).
376
- */
377
- /* line 370, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
378
- input[type="search"]::-webkit-search-cancel-button,
379
- input[type="search"]::-webkit-search-decoration {
380
- -webkit-appearance: none;
381
- }
382
-
383
- /**
384
- * Define consistent border, margin, and padding.
385
- */
386
- /* line 379, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
387
- fieldset {
388
- border: 1px solid #c0c0c0;
389
- margin: 0 2px;
390
- padding: 0.35em 0.625em 0.75em;
391
- }
392
-
393
- /**
394
- * 1. Correct `color` not being inherited in IE 8/9/10/11.
395
- * 2. Remove padding so people aren't caught out if they zero out fieldsets.
396
- */
397
- /* line 390, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
398
- legend {
399
- border: 0;
400
- /* 1 */
401
- padding: 0;
402
- /* 2 */
403
- }
404
-
405
- /**
406
- * Remove default vertical scrollbar in IE 8/9/10/11.
407
- */
408
- /* line 399, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
409
- textarea {
410
- overflow: auto;
411
- }
412
-
413
- /**
414
- * Don't inherit the `font-weight` (applied by a rule above).
415
- * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
416
- */
417
- /* line 408, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
418
- optgroup {
419
- font-weight: bold;
420
- }
421
-
422
- /* Tables
423
- ========================================================================== */
424
- /**
425
- * Remove most spacing between table cells.
426
- */
427
- /* line 419, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
428
- table {
429
- border-collapse: collapse;
430
- border-spacing: 0;
431
- }
432
-
433
- /* line 424, /Users/fnando/Projects/kitabu/examples/kitabu/templates/styles/files/_normalize.scss */
434
- td,
435
- th {
436
- padding: 0;
437
- }