Michael Bryan
fd7e8d1b7b
Add support for alternative backends ( #507 )
...
* Added a mechanism for creating alternate backends
* Added a CmdRenderer and the ability to have multiple renderers
* Made MDBook::load() autodetect renderers
* Added a couple methods to RenderContext
* Converted RenderContext.version to a String
* Made sure all alternate renderers are invoked as `mdbook-*`
* Factored out the logic for determining which renderer to use
* Added tests for renderer detection
* Made it so `mdbook test` works on the book-example again
* Updated the "For Developers" docs
* Removed `[output.epub]` from the example book's book.toml
* Added a bit more info on how backends should work
* Added a `destination` key to the RenderContext
* Altered how we wait for an alternate backend to finish
* Refactored the Renderer trait to not use MDBook and moved livereload to the template
* Moved info for developers out of the book.toml format chapter
* MOAR docs
* MDBook::build() no longer takes &mut self
* Replaced a bunch of println!()'s with proper log macros
* Cleaned up the build() method and backend discovery
* Added a couple notes and doc-comments
* Found a race condition when backends exit really quickly
* Added support for backends with arguments
* Fixed a funny doc-comment
2018-01-07 22:10:48 +08:00
Jan Likar
dedc208a6a
Prohibit 'print.md' files ( #524 )
...
* Prohibit 'print.md' files
Fix #258 by emmiting an error whenever an mdBook contains a
"print.md" file in its root.
* Apply suggested changes
* Add tests
2018-01-07 00:02:23 +08:00
boxdot
e461610dab
Implement partial include of source files ( #520 )
...
* Implement partial include of source files.
The macro `{{include some_file}}` accepts now optional line number
arguments, s.t. the specified line range is included. The following
forms are supported:
* `{{include some_file::}}` is equivalent to `{{include some_file}}`
* `{{include some_file:from:}}` includes lines [from, infinity)
* `{{include some_file::to}}` includes lines [0, to]
* `{{include some_file:from:to}}` includes lines [from, to]
* Remove the special case IncludeFull which is IncludeFrom(0).
* Use Range, RangeFrom, RangeTo and RangeFull to represent include-ranges.
Also:
* Move out introduced methods as free functions.
* Introduce RangeArgument trait as long it is unstable in stdlib.
* Use itertools for joining of lines on the fly.
* Split tests.
* Simplify include file argument parsing.
* Make utils::string private and link collections_range feature issue.
2018-01-06 05:03:30 +08:00
Mario Nebl
7c81335c9a
Use <button> for menu bar ( #523 )
2018-01-04 17:19:20 +08:00
Michael Bryan
e74c376833
You need to call `rx.iter()` to iterate over events from a channel ( #522 )
2018-01-03 19:32:49 +08:00
Michael Bryan
b5382f49c6
Merge pull request #474 from stgn/sidebar-swipe
...
Basic swipe gesture functionality for opening/closing sidebar
2018-01-02 22:10:30 +08:00
Michael Bryan
cba16a0083
Updated dependencies and made logging more readable
2017-12-30 18:43:46 +08:00
Michael Bryan
549a9ffd54
Merge pull request #470 from stgn/sidebar-page-ux
...
Improve experience on smaller screens
2017-12-30 16:15:50 +08:00
Justin Ridgewell
61356ce5fe
Implement playpen defaults
...
Avoids issues where we enable `editable` but forget to specify `editor`
(eg, https://github.com/rust-lang/rust-by-example/issues/963 ). Since we
already include Ace editor, seems like we can just treat it as the
default.
2017-12-21 00:18:12 -05:00
Shane Nelson
31fb443562
Cleanup and various fixes
2017-12-18 00:14:25 -05:00
Shane Nelson
a2759b7bd2
Prevent horizontal scroll on mobile browsers if page wrapper is pushed off-screen
2017-12-17 23:04:30 -05:00
Shane Nelson
71689da6b1
Force hidden sidebar on load for screen widths smaller than sidebar plus content and simplify styles
2017-12-17 23:04:30 -05:00
Shane Nelson
6e90e520d6
Avoid resizing page/content on sidebar toggle
2017-12-17 23:04:30 -05:00
Michael Bryan
65acb355d7
Merge pull request #513 from Michael-F-Bryan/error-messages
...
Added better error messages for missing CSS/JS
2017-12-14 20:28:28 +11:00
Michael Bryan
89eff2d824
Added better error messages for missing CSS/JS
2017-12-14 20:03:17 +11:00
Michael Bryan
a280a3003b
Merge pull request #447 from Listwon/clipboard
...
Fix copy to clipboard is available only for rust snippets
2017-12-13 14:32:41 +11:00
Michael Bryan
cb6f2289cf
Merge pull request #510 from Michael-F-Bryan/book-json-warning
...
Added a warning if people use the book.json config file
2017-12-13 13:18:51 +11:00
Michael Bryan
396426662d
Made `mdbook watch` and `mdbook serve` rebuild the book again ( #508 )
...
Made `mdbook watch` and `mdbook serve` rebuild the book again
2017-12-13 12:04:24 +11:00
Michael Bryan
718d251c7f
Added a warning if people use the book.json config file
2017-12-13 11:55:37 +11:00
Michael Bryan
a46e2e2b27
Merge branch 'master' into book-representation-3
2017-12-11 19:06:09 +11:00
Michael Bryan
75dac15f09
Fixed a couple issues with the docs
2017-12-11 18:50:31 +11:00
Michael Bryan
ff9e0b0add
Made sure create_missing also creates the parent directory
2017-12-11 17:29:32 +11:00
Michael Bryan
148511eceb
Able to parse all existing SUMMARY.md files
2017-12-11 17:20:05 +11:00
Michael Bryan
f5e9b857de
Rewrote summary parser from a state machine to use recursive descent
2017-12-11 15:17:20 +11:00
Michael Bryan
4f4e86db3a
Added tests to make sure we parse existing SUMMARY.md's
2017-12-11 12:26:11 +11:00
Michael Bryan
ebcf41c25b
Improved error messages using error_chain::ChainedError::display_chain()
2017-12-11 11:42:36 +11:00
Michael Bryan
1b51cd244e
Moved the book examples to the top level lib.rs
2017-12-11 11:29:30 +11:00
Michael Bryan
be4654c9c2
Fleshed out the docs for the book module
2017-12-11 11:24:43 +11:00
Michael Bryan
ace0b51fb6
Put the `create_missing` feature back in
2017-12-11 10:32:35 +11:00
Michael Bryan
9950f69c48
Removed the `MDBook::read_config()` method because it's redundant now
2017-12-10 23:13:46 +11:00
Michael Bryan
751da4f05f
Added a test to make sure you can include rust files in chapters
2017-12-10 22:59:35 +11:00
Michael Bryan
527fc5cf79
Completely removed the `create_missing` option from MDBook
2017-12-10 22:52:20 +11:00
Michael Bryan
f993677626
All tests finally pass!
2017-12-10 22:52:00 +11:00
Michael Bryan
21498631b3
Made sure the dummy book can build
2017-12-10 22:50:57 +11:00
Michael Bryan
8b21da9950
Fleshed out book creation
2017-12-10 22:50:57 +11:00
Michael Bryan
47eb4788cb
Introduced the `BookBuilder`.
...
- You now use a `BookBuilder` for creating a book directory tree
- This also removes the `--no-create` argument
2017-12-10 22:49:40 +11:00
Michael Bryan
cafb8b75e7
The library not compiles (probably completely broken)
2017-12-10 22:44:20 +11:00
Michael Bryan
4c6c696c87
Copied across the summary parser and Book structure (doesn't compile)
2017-12-10 22:43:12 +11:00
Michael Bryan
3838fa0e68
Merge pull request #501 from lifta42/master
...
Fix misplaced "previous" icon
2017-12-10 22:34:09 +11:00
Michael Bryan
8ee795045a
Added a quick fix so if the config isn't found we use a default
2017-12-09 20:36:23 +11:00
lifta42
9143110a43
Optimized the stylesheet for better performance
2017-12-06 16:20:22 +08:00
Michael Bryan
e735bc6d3e
Merge pull request #500 from cspiegel/create-missing
...
WIP: Add a create-missing option to book.toml.
2017-12-06 00:30:49 +08:00
lifta42
3b136689ee
Fix a CSS bug to show arrow properly
...
The arrow for "previous chapter" was on the incorrect position when screen width is between 1060px and 1250px.
2017-12-02 14:25:24 +08:00
projektir
32df76d077
Adding a header partial integration #453
2017-11-30 21:48:29 -08:00
Chris Spiegel
b0b09bad3f
Clean up build configuration.
...
This rolls all "create missing" handling into BuildConfig, and moves the
build-dir option from the "book" table to the "build" table. Some
documentation cleanup surrounding the build table is also updated.
2017-11-30 07:39:58 -08:00
Chris Spiegel
93874edebf
Add a create-missing option to book.toml.
2017-11-29 20:02:58 -08:00
Anna Liao
5ce05a79be
updated links from azerupi to rust-lang-nursery ( #489 )
2017-11-22 11:35:18 +01:00
Jacob Wahlgren
3d5eb48e32
Refactor navigation helpers ( #465 )
...
* Refactor navigation helpers
* Target::find: take previous_item by reference
This makes more sense for find as an interface, though it causes a
second clone in some cases. Maybe rustc is smart here?
* Test next and previous navigation helpers
* Add more next/previous tests
2017-11-18 19:17:26 +08:00
Michael Bryan
5eff572dbb
Updated the warning to give some basic migration instructions
2017-11-12 21:37:39 +08:00
Michael Bryan
238dfb7d1d
Added in legacy config format support
2017-11-12 21:37:38 +08:00
Michael Bryan
c25c5d72c8
Went back and simplified Config to be a smart wrapper around toml::Table
2017-11-12 21:37:38 +08:00
Michael Bryan
3aa6436679
Added in things from @Phaiax's review
2017-11-12 21:37:38 +08:00
Michael Bryan
d37821c194
Rebased after #438
2017-11-12 21:37:38 +08:00
Michael Bryan
1b5137c84e
All tests pass again :)
2017-11-12 21:37:37 +08:00
Michael Bryan
18c725ee12
Integration tests pass again
2017-11-12 21:37:37 +08:00
Michael Bryan
1743f2a39f
Removed the now redundant config files
2017-11-12 21:37:37 +08:00
Michael Bryan
cee3296a32
main library tests pass
2017-11-12 21:37:37 +08:00
Michael Bryan
ddb0834da8
Upgraded binaries to new configuration API
2017-11-12 21:37:36 +08:00
Michael Bryan
b74c2c18ef
Removed all references to old the configuration from the html renderer
2017-11-12 21:37:36 +08:00
Michael Bryan
c056b5cbd0
Removed old configs from MDBook
2017-11-12 21:37:36 +08:00
Michael Bryan
8d7970b32d
Changed to the new config types
2017-11-12 21:37:36 +08:00
Michael Bryan
1d22a9a040
Added some basic deserializing tests and helpers
2017-11-12 21:37:36 +08:00
Michael Bryan
6059883229
Added some basic configuration objects
2017-11-12 21:37:35 +08:00
Bartłomiej T. Listwon
8960013322
Fix copy to clipboard is available only for rust snippets
...
Fixes #432
2017-11-10 21:18:14 +01:00
Michael Bryan
79dd03e8e9
Merge pull request #471 from stgn/theme-popup-absolute
...
Use absolute positioning for theme popup
2017-11-10 13:31:12 +08:00
François
aecc403fb8
add tooltip to icons ( #477 )
...
add tooltip to icons and previous/next chapter links
2017-10-27 14:46:55 +02:00
Shane Nelson
6e4d2485c3
Basic swipe gesture functionality for opening/closing sidebar
2017-10-23 20:51:43 -04:00
Mathieu David
cd711bfb1c
Merge pull request #456 from Michael-F-Bryan/conditional-ga
...
Conditional Google Analytics
2017-10-18 14:10:53 +02:00
Mathieu David
afd9ccb7b1
Merge pull request #461 from Michael-F-Bryan/move-custom-js
...
Custom JS belongs at the bottom
2017-10-18 14:09:14 +02:00
Shane Nelson
dd3bef8000
Use absolute positioning for theme popup
2017-10-16 21:40:32 -04:00
Jacob Wahlgren
7e5892bd35
Ignore unhelpful clippy warning
...
As discussed in https://github.com/azerupi/mdBook/pull/466
2017-10-12 22:14:48 +02:00
Jacob Wahlgren
56cee872e8
Box Handlebars template error
...
See https://github.com/azerupi/mdBook/pull/466#issuecomment-335450110
2017-10-12 21:50:33 +02:00
Michael Bryan
a554390aa2
Slightly cleaned up the google analytics tag (skip ci)
2017-10-09 09:53:02 +08:00
Jacob Wahlgren
8f6523a94c
Fix some clippy warnings
2017-10-07 18:11:05 +02:00
Michael Bryan
ac9c150902
Moved custom JS to the bottom
2017-10-04 19:59:10 +08:00
Michael Bryan
f2e56c887b
Got the logic around the wrong way
2017-10-04 19:57:06 +08:00
Michael Bryan
b4a12fa723
Made sure google analytics isn't included when inspecting locally
2017-10-04 19:57:06 +08:00
Pratik Karki
382fc4139b
run rustfmt on the repository #398(Updated) ( #438 )
...
rustfmt the repository #398
2017-10-03 13:40:23 +02:00
Mathieu David
a6d4881e00
Merge pull request #450 from Zengor/master
...
Call playground with /execute
2017-09-23 21:35:41 +02:00
steveklabnik
9b64db908f
prefix sidebar too
2017-09-22 13:58:45 -04:00
steveklabnik
f562878131
I forgot one theme, thanks budziq
2017-09-22 13:56:58 -04:00
Zengor
3823fc0e74
Call playground with /execute and not the legacy /evaluate.json
...
This commit changes the url used to call the playground, and the
request parameter format to go with it. The older evaluate is
available in the playground as a form of backwards compatibility
and swithcing now opens way for using newer features.
2017-09-21 00:24:47 -03:00
steveklabnik
793fb8f654
Change key for theme to not clobber old books
...
Fixes https://github.com/azerupi/mdBook/issues/448
2017-09-19 16:59:16 -04:00
Bartłomiej T. Listwon
911683d2cf
Fix styling regression on print media in chromium
...
Forces 0px left padding on print view even if sidebar is visible
2017-09-18 22:10:31 +02:00
Bartłomiej T. Listwon
91fd8a2865
Fix code snippet font size a little smaller in FF
2017-09-18 11:18:21 +02:00
Steve Klabnik
a3b6e549e2
Merge pull request #440 from budziq/force_runnable
...
added `mdbook-runnable` infostring support
2017-09-14 12:48:29 -04:00
Michal Budzynski
c056df597a
added `mdbook-runnable` infostring support
...
makes `ignore`'d playpens runnable
2017-09-13 22:54:01 +02:00
Mathieu David
0d6adc5fc9
Fix the issue with pages named print not at the root
2017-09-13 22:17:23 +02:00
Mathieu David
ef5895fa78
Update all dependencies
2017-09-11 19:38:10 +02:00
Mathieu David
84ef4d2617
preserve dashes when generating anchors and trim whitespace
2017-09-08 19:59:04 +02:00
Mathieu David
016ec8836c
Merge pull request #415 from azerupi/fix-print-title
...
Fix the print title that was using the title from the last rendered chapter
2017-09-07 23:29:54 +02:00
Mathieu David
881a1b39ff
Remove the logic in handlebars and expose the 3 different titles in the handlebars variables
2017-09-07 23:19:22 +02:00
Mathieu David
a1e58229b2
Merge pull request #418 from behnam/manifest
...
[Cargo.toml] Fix package.exclude warnings
2017-09-07 22:46:49 +02:00
Mathieu David
276eab095c
Merge pull request #427 from budziq/spurious_reloads
...
Do not trigger spurious watch events on Write and Remove
2017-09-07 22:45:12 +02:00
Michal Budzynski
570ce6681f
Do not trigger spurious watch events on Write and Remove
2017-09-06 22:33:56 +02:00
Behnam Esfahbod
ddee839d9c
[renderer] Err on bad file names, instead of panic
...
Addressing the review comments.
2017-09-06 02:25:10 -07:00
Behnam Esfahbod
99945542ca
[renderer] Add normalize_path()
...
On the web, the normalized path separator is forward-slash (`/`), so we
use the built-in `is_separator()` method to replace any path separator
with the forward-slash, to ensure consistent output on unix and windows
machines.
2017-09-06 00:52:17 -07:00
Behnam Esfahbod
956a5cc7fd
Fix heading links in nested pages
...
Plus fixing the whitespace chars not being replaced by hyphen.
Also expand tests for link creations, and add test for nested pages.
Fixes <https://github.com/azerupi/mdBook/issues/416 >
Fixes <https://github.com/azerupi/mdBook/issues/417 >
2017-09-06 00:52:17 -07:00
Behnam Esfahbod
cef62ec42e
Fix build and test warnings
...
Move non-test test module files into their own directories to prevent
cargo from running them as tests. Then suppress the left-over warnings.
Move *dummy book* code and data into a shared folder, and leave the rest
of helper utilities (one function) in the original module.
2017-09-06 00:52:17 -07:00
Behnam Esfahbod
b1362bfa06
[watch] Fix build warnings
2017-09-06 00:52:15 -07:00