summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJovansonlee Cesar <ivanceras@gmail.com>2020-02-04 12:11:32 +0800
committerJovansonlee Cesar <ivanceras@gmail.com>2020-02-04 12:11:32 +0800
commit049dcb0ddf4826eb69a6884e7d92efdce0e60c4f (patch)
tree40f861bbd0cf11d3df75c4133a44636532708386
parentca5443423ee779154eca263f4d4326e6365ba3cb (diff)
Revert "Update README.md"
-rw-r--r--README.md772
1 files changed, 347 insertions, 425 deletions
diff --git a/README.md b/README.md
index 65541cc..27779ee 100644
--- a/README.md
+++ b/README.md
@@ -1,426 +1,348 @@
-<table><tr><td>
-<pre>
-|
-|Svgbob is a diagramming model
-|which uses a set of typing characters
-|to approximate the intended shape.
-|
-| .---.
-| /-o-/--
-| .-/ / /->
-| ( * \/
-| '-. \
-| \ /
-| '
-|It uses a combination of characters
-|which are readily available on your keyboards.
-|
-|What can it do?
-|
-| o-> Basic shapes
-| .- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -.
-| ! . :
-| ! +------+ .------. .------. /\ .' `. :
-| ! | | | | ( ) / \ .' `. ^ :
-| ! +------+ '------' '------' '----' `. .' / # :
-| ! _______ ________ # `.' / ^ / :
-| ! / \ /\ \ \ o----> | ^ # / / :
-| ! / \ / \ ) ) <----# | | ^ : / v :
-| ! \ / \ / /_______/ v | ! : :
-| ! \_______/ \/ o. o ! V :
-| ! `.~~~~. :
-| ! '. O :
-| ! .-----------. . <. .> . '. ^ \ :
-| ! ( ) ( ) ( ) : \ \ :
-| ! '-----+ ,---' `> ' ` <' '.~~~~> \ v :
-| ! |/ * :
-| ! ' _ __ :
-| ! _ __ .-. .--. .--.--. .--. .' '. ,' `. :
-| ! (_) (__) ( 3 ) ( 4 ) ( 4( )4 ) ( 5 ) ( 6 ) ( 7 ) :
-| ! '-' `--' `--'--' `--' `._.' `.__,' :
-| ! ___ ____ ____ _____ !
-| ! ,' `. ,' `. .' `. ,' `. !
-| ! / 8 \ / 9 \ / \ / \ !
-| ! \ / \ / ( 10 ) ( 11 ) !
-| ! `.___,' `.____,' \ / \ / !
-| ! ______ `.____.' `._____,' !
-| ! ,' `. !
-| ! / \ .-----. .----. !
-| ! | 12 | \ / \ \ !
-| ! | | \ / \ \ !
-| ! \ / ' '----' !
-| ! `.______,' !
-| `~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
-|
-|
-| o-> Quick logo scribbles
-| .---. _
-| /-o-/-- .--. |-| .--.
-| .-/ / /-> /--. \ .--)-| .--.-. //.-.\
-| ( * \/ / O )| | |-| |->| | (+(-*-))
-| '-. \ /\ |-// . * | '--'-' \\'-'/
-| \ / \ '+'/ \__/ '--'
-| ' '--'
-|
-| .----. _
-| | | ,--(_)
-| __|____|__ _/ .-. \
-| | ______--| (_)( ) )
-| `-/.::::.\-' \ `-'_/
-| `--------' `--(_)
-|
-|
-| o-> Even unicode box drawing characters are supported
-| ┌─┬┐ ╔═╦╗ ╓─╥╖ ╒═╤╕
-| ├─┼┤ ╠═╬╣ ╟─╫╢ ╞═╪╡
-| └─┴┘ ╚═╩╝ ╙─╨╜ ╘═╧╛
-| ╭─┬╮
-| ├─┼┤
-| ╰─┴╯
-|
-| o-> Grids
-|
-|
-|
-| .----. .----.
-| / \ / \ .-----+-----+-----.
-| + +----+ +----. | | | | .-----+-----+-----+-----+
-| \ / \ / \ | | | | / / / / /
-| +----+ +----+ + +-----+-----+-----+ +-----+-----+-----+-----+
-| / \ / \ / | | | | / / / / /
-| + +----+ +----+ | | | | +-----+-----+-----+-----+
-| \ / \ / \ +-----+-----+-----+ / / / / /
-| '----+ +----+ + | | | | +-----+-----+-----+-----+
-| \ / \ / | | | | / / / / /
-| '----' '----' '-----+-----+-----' '-----+-----+-----+-----+
-|
-|
-|
-|
-|
-| ___ ___ .---+---+---+---+---. .---+---+---+---. .---. .---.
-| ___/ \___/ \ | | | | | | / \ / \ / \ / \ / | +---+ |
-| / \___/ \___/ +---+---+---+---+---+ +---+---+---+---+ +---+ +---+
-| \___/ \___/ \ | | | | | | \ / \ / \ / \ / \ | +---+ |
-| / \___/ \___/ +---+---+---+---+---+ +---+---+---+---+ +---+ +---+
-| \___/ \___/ \ | | | | | | / \ / \ / \ / \ / | +---+ |
-| \___/ \___/ '---+---+---+---+---' '---+---+---+---' '---' '---'
-|
-|
-| o-> Graphics Diagram
-|
-| .
-| 0 3 P * Eye / ^ /
-| *-------* +y \ +) \ / Reflection
-| 1 /| 2 /| ^ \ \ \ v
-| *-------* | | v0 \ v3 --------*--------
-| | |4 | |7 | ◄╮ *----\-----*
-| | *-----|-* ⤹ +-----> +x / v X \ .-.<-------- o
-| |/ |/ / ⤴ / o \ ( / ) Refraction / \
-| *-------* v / \ '-' / \
-| 5 6 +z v1 *------------------* v2 | o-----o
-| v
-|
-|
-| o-> CJK characters
-|
-| .------------. | .-----------. | .-----.
-| | 文件系统 | | | 调度器 | | | MMU |
-| '------------' | '-----------' | '-----'
-|
-| o-> Sequence Diagrams
-|
-| .---> F
-| A B C D /
-| *-------*-----*---*----*-----> E
-| \ ^ \
-| v / '---> G
-| B --> C -'
-|
-|
-| ,-.
-| `-'
-| /|\
-| ,---. |
-| |Bob| / \
-| `-+-' Alice
-| | hello |
-| |-------------->|
-| | |
-| | Is it ok? |
-| |<- - - - - - - |
-| ,-+-. Alice
-| |Bob| ,-.
-| `---' `-'
-| /|\
-| |
-| / \
-|
-|
-| .─.
-| ( 0 )
-| `-'
-| / \
-| / \
-| V V
-| .─. .─.
-| ( 1 ) ( 4 )
-| `-' `-' .
-| / \ | \ `.
-| / \ | \ `.
-| V V | \ `.
-| .─. .─. V V V
-| ( 2 ) ( 3 ) .─. .─. .─.
-| `─' `─' ( 5 ) ( 6 ) ( 7 )
-| `─' `─' `─'
-|
-|
-|
-| o-> Plot diagrams
-|
-| ▲
-| Uin ┊ .------------------------
-| ┊ |
-| ┊ |
-| *---'┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄▶
-|
-| Udc▲
-|"Udc_OK"┊ .---------------------
-| ┊ / :
-| ┊ / :
-| *---'┄┄┄┄:┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄▶
-| :<----->:
-| ▲ 500ms :
-| ┊ :
-|Cpu.Qon ┊┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄.-----------
-| ┊ | Inactive
-| ┊ Active |
-| *----------------'┄┄┄┄┄┄┄┄┄┄┄▶
-|
-| o-> Railroad diagrams
-|
-| ┌------┐ .-. ┌---┐
-| o--╮---| elem |--( ; )-| n |--╭--o
-| | └------┘ `-' └---┘ |
-| | ╭------>------╮ |
-| | | ┌---┐ | |
-| ╰-╯-╭--| x |--╮-╰----------╯
-| | | └---┘ | |
-| | | .-. | |
-| | `--( , )--' ^
-| | `-' |
-| | ╭-------->---------╮ |
-| | | ┌---┐ .-. | |
-| ╰--╰-╭-| x |--( , )-╮-╯----╯
-| | └---┘ `-' |
-| `-------<------'
-| .------------>---------------.
-| ┌-------------┐ .-. .-. | ┌------┐ .-. ┌-----┐ | .-. ┌------┐
-| O____| struct_name |_( : )_( | )_◞__| name |_( : )__| tpe |___◟___( | )__| body |______O
-| ◝ └-------------┘ `-' `-' ◜ └------┘ `-' └-----┘ ◝ `-' └------┘ ◜
-| | | .-. | |
-| | `------------<------( , )--' |
-| | `-' |
-| `--------------------------------------------------------------------------------'
-|
-| o-> Statistical charts
-|
-|
-| E +-------------------------*--+ E | o
-| D |-------------------*--*--|--* D | o o | o
-| C |-------------*--* | | | | C | o o | | | |
-| B |-------*--* | | | | | | B | o o | | | | | |
-| A +-*--*--+--+--+--+--+--+--+--+ A +-o--o--|--|--|--|--|--|--|--|
-| 5 10 15 20 25 30 35 40 45 50 5 10 15 20 25 30 35 40 45 50
-|
-|
-|
-| 85.67 ┤ ╭╮
-| 78.20 ┤ ││ ╭╮
-| 70.73 ┤ ││ ╭╮ ╭╮ ╭╮ ╭╮ ╭╯╰─╮
-| 63.27 ┤ ╭╮ ╭─╮ ││ ╭╯╰╮│╰─╯╰╮╭╮│╰──╯ │╭
-| 55.80 ┤ ╭╮ ╭╮││╭╮ ╭╮╭╮ │ ╰─╯╰─╯ ││ ││││ ╰╯
-| 48.33 ┤ │╰╮ ╭──╮ │││││╰╮│╰╯│ │ ╰╯ ╰╯╰╯
-| 40.87 ┤╭╮ │ ╰╮╭╮ ╭╯ ╰─╮╭╮╭─╯╰╯╰╯ ╰╯ ╰──╯
-| 33.40 ┤││ │ ╰╯╰╮╭╯ ││╰╯
-| 25.93 ┤││╭╯ ╰╯ ╰╯
-| 18.47 ┼╯││
-| 11.00 ┤ ╰╯
-| └───────────┴───────────┴───────────┴───────────┴───────────┴────
-| 2011 2012 2013 2014 2015 2016
-|
-|
-|
-|
-|
-|
-|
-| o-> Flow charts
-| .--. .---. .---. .---. .---. .---. .---.
-| | | OS API '---' '---' '---' '---' '---' '---'
-| v | | | | | | |
-| .-. .-. .-. | v v | v | v
-| .-->'-' '-' '-' | .------------. | .-----------. | .-----.
-| | \ | / | | Filesystem | | | Scheduler | | | MMU |
-| | v . v | '------------' | '-----------' | '-----'
-| |_______/ \_____| | | | |
-| \ / v | | v
-| | ____ .----. | | .---------.
-| '--> /___/ | IO |<----' | | Network |
-| '----' | '---------'
-| | | |
-| v v v
-| .---------------------------------------.
-| | HAL |
-| '---------------------------------------'
-|
-|
-| o-> Block diagrams
-|
-|
-| vncviewer .-,( ),-.
-| __ _ .-( )-. gateway vncserver
-| [__]|=| ---->( internet )-------> __________ ------> ____ __
-| /⠶⠶ /|_| '-( ).-' [_...__...°] | | |==|
-| '-.( ).-' |____| | |
-| /⠶⠶⠶ / |__|
-|
-|
-| Valveless --------.
-| Pulsejet engine /
-| V
-| _________.------------------+
-| .---------' / -------->
-| / .-------._________ \ thrust-->
-| ( ( _________ `-----------o------+ -------->
-| \ `----' '----' |
-| `------._ __^___.----. |
-| || | |
-| fuel __^ || | ^__spark |GND
-| intake || | plug |
-| || | |
-| || | |
-| ____|| `------------. |
-| / .---' | |
-| | | | | +-+-+-+-+-+
-| .---| |---. __ | | |-+-+-+-+-|
-| ___| +-+-+--|--o `---------*-----|--------------O-+-+-+-+-|
-| .-------> ___ ||||||| | power | *--------------O-+-+-+-+-|
-| \ | ||||||| | switch | | |-+-+-+-+-|
-| Water `-+-+-+-+-' +--o-----o--+ +-+-+-+-+-+
-| intake HHO | |
-| Generator | + - | Solar panel
-| +-----------+
-| Battery
-|
-| =======
-| ===== symbolic antenna
-| ===
-| =
-| |
-| | micro henry
-| | coil w/tuning lug
-| | .----.
-| | (.-') |
-| | (.-') |
-| | (.-') | pico farad cap
-| | (.-' | ___ (trimmable)
-| | | | |___|
-| PC -> .----'-----'---'---'
-| Board `-------------------
-| ground plane (foil)
-|
-|
-|
-|
-| o-> Mindmaps
-|
-| .--> Alpha
-| /
-| .----> Initial Release
-| Planning *-------. / \
-| \ / '---> Patch 1
-| Initial research \ / \
-| * \ / '--> Patch 2
-| \ \ /---------> Beta
-| \ \ /
-| \ o o _______
-| \ .---. *--.___ / \
-| '------> ( ) '------O-> . Release .
-| `---' o \_______/
-| o o o \
-| / \ \ \
-| .--' \ \ \
-| / \ \ '----+-> Push backs
-| / \ \ \
-| /| \ \ '----> Setbacks
-| / | \ \
-| V /| \ '-----> Reception
-| Team / | \
-| v /| \
-| Worklaod / . '-->> Career change
-| V /
-| PTO /
-| V
-| Bug
-|
-|
-| o-> It can do complex stuff such as circuit diagrams
-|
-|
-| +10-15V ___0,047R
-| *---------o-----o-|___|-o--o---------o----o-------.
-| + | | | | | | | |
-| -===- _|_ | | .+. | | |
-| -===- .-. | | | | 2k2 | | |
-| -===- 470| + | | | | | | _|_
-| - | uF| '--. | '+' .+. | \ / LED
-| +---------o |6 |7 |8 1k | | | -+-
-| ___|___ .-+----+--+--. | | | |
-| -═══- | | '+' | |
-| - | |1 | |/ BC |
-| GND | +------o--+ 547 |
-| | | | |`> |
-| | | ,+. | |
-| .-------+ | 220R| | o----||-+ IRF9Z34
-| | | | | | | |+->
-| | | MC34063 | `+' | ||-+
-| | | | | | | BYV29 -12V6
-| | | | '----' o--|<-o----o--X OUT
-| 6000 micro - | + | |2 | | |
-| Farad, 40V ___|_____ | |--o C| | |
-| Capacitor ~ ~ ~ ~ ~ | | GND 30uH C| | --- 470
-| | | |3 1nF C| | ### uF
-| | | |-------||--. | | | +
-| | '-----+----+-' | GND | GND
-| | 5| 4| | |
-| | | '-------------o-------------o
-| | | ___ |
-| `-------------*------/\/\/------------o--|___|-'
-| 2k | 1k0
-| .+.
-| | | 5k6 + 3k3
-| | | in Serie
-| '+'
-| |
-| GND
-|
-|
-|
-| .-------------.
-| / Advantages: /
-|'-------------'
-| -* Plain text format
-| Ultimately portable, backward compatible and future proof.
-| -* Degrades gracefully
-| Even when not using a graphical renderer, it would still looks good
-| as text based diagrams. Paste the text in your source code.
-| -* Easiest to use. Anyone knows how to edit text.
-|
-
-</pre>
-</td>
-<td>
+# Svgbob
+
+<a href="https://crates.io/crates/svgbob"><img src="https://img.shields.io/crates/v/svgbob.svg" alt="svgbob’s current version badge" title="svgbob’s current version badge"></a><a href="https://travis-ci.org/ivanceras/svgbob">
+<img src="https://api.travis-ci.org/ivanceras/svgbob.svg"/>
+</a>
+
+Svgbob is an ascii to svg converter.
+
+There is a Work-in-Progress spec [here](https://github.com/ivanceras/svgbob/blob/master/spec.md)
+Contribution to the spec is welcomed.
+
+#### Please support this project:
+ [![Become a patron](https://c5.patreon.com/external/logo/become_a_patron_button.png)](https://www.patreon.com/ivanceras)
+
+
+[Demo](http://ivanceras.github.io/svgbob-editor/)
+
+[Docs](https://docs.rs/svgbob)
+
+
+# Using in command line
+
+`cargo install svgbob_cli`
+
+`svgbob` normally operates on stdin and stdout:
+```console
+$ svgbob < examples/long.bob > long.svg
+```
+produces an SVG in `long.svg` similar to the one produced by the old `main` binary. `svgbob` also allows passing arguments instead:
+```console
+$ svgbob examples/long.bob -o long.svg
+```
+And you can mix and match:
+```console
+$ svgbob -o long.svg < examples/long.bob
+$ svgbob examples/long.bob > long.svg
+```
+
+You can pipe string from the output of other program:
+```console
+echo -e "+--+\n| |\n+--+" | svgbob
+```
+You can also pass an inline string:
+```console
+svgbob -s -- "+--+\n| |\n+--+"
+```
+
+This is also documented in the output of `svgbob --help`:
+```console
+
+svgbob 0.2.5
+SvgBobRus is an ascii to svg converter
+
+USAGE:
+ svgbob [FLAGS] [OPTIONS] [input] [SUBCOMMAND]
+
+FLAGS:
+ -h, --help Prints help information
+ -s parse an inline string
+ -V, --version Prints version information
+
+OPTIONS:
+ --font-family <font-family> text will be rendered with this font (default: 'arial')
+ --font-size <font-size> text will be rendered with this font size (default: 14)
+ -o, --output <output> where to write svg output [default: STDOUT]
+ --scale <scale> scale the entire svg (dimensions, font size, stroke width) by this factor
+ (default: 1)
+ --stroke-width <stroke-width> stroke width for all lines (default: 2)
+
+ARGS:
+ <input> svgbob text file or inline string to parse [default: STDIN]
+
+SUBCOMMANDS:
+ build Batch convert files to svg.
+ help Prints this message or the help of the given subcommand(s)
+
+```
+
+
+
+
<img src="https://ivanceras.github.io/svgbob/svgbob/examples/demo.svg"/>
-</td>
-</tr></table>
+
+The SVG image is generated from the ascii text below.
+
+```bob
+
+Svgbob is a diagramming model
+which uses a set of typing characters
+to approximate the intended shape.
+
+ .---.
+ /-o-/--
+ .-/ / /->
+ ( * \/
+ '-. \
+ \ /
+ '
+It uses a combination of these characters
+"which are readily available on your keyboards".
+
+What can it do?
+
+ o-> Basic shapes
+ .
+ +------+ .------. .------. /\ .' `.
+ | | | | ( ) / \ .' `.
+ +------+ '------' '------' '----' `. .'
+ _______ ________ `.' ^ /
+ / \ /\ \ \ ----> | ^ / /
+ / \ / \ ) ) <---- | | / v
+ \ / \ / /_______/ v |
+ \_______/ \/
+
+ .-----------. . <. .> . ^ \
+ ( ) ( ) ( ) \ \
+ '-----+ ,---' `> ' ` <' \ v
+ |/
+
+
+ o-> Quick logo scribbles
+ .---. _
+ /-o-/-- .--. |-| .--.
+ .-/ / /-> /--. \ .--)-| .--.-. //.-.\
+ ( * \/ / O )| | |-| |->| | (+(-*-))
+ '-. \ /\ |-// . * | '--'-' \\'-'/
+ \ / \ '+'/ \__/ '--'
+ ' '--'
+
+ o-> Even unicode box drawing characters are supported
+ ┌─┬┐ ╔═╦╗ ╓─╥╖ ╒═╤╕
+ ├─┼┤ ╠═╬╣ ╟─╫╢ ╞═╪╡
+ └─┴┘ ╚═╩╝ ╙─╨╜ ╘═╧╛
+
+
+ o-> Sequence Diagrams
+
+ .---> F
+ A B C D /
+ *-------*-----*---*----*-----> E
+ \ ^ \
+ v / '---> G
+ B --> C -'
+
+
+ o-> Statistical charts
+
+
+ E +-------------------------*--+ E | o
+ D |-------------------*--*--|--* D | o o | o
+ C |-------------*--* | | | | C | o o | | | |
+ B |-------*--* | | | | | | B | o o | | | | | |
+ A +-*--*--+--+--+--+--+--+--+--+ A +-o--o--+--+--+--+--+--+--+--+
+ 5 10 15 20 25 30 35 40 45 50 5 10 15 20 25 30 35 40 45 50
+
+
+
+
+
+
+
+
+
+
+ o-> Flow charts
+ .--. .---. .---. .---. .---. .---. .---.
+ | | OS API '---' '---' '---' '---' '---' '---'
+ v | | | | | | |
+ .-. .-. .-. | v v | v | v
+ .-->'-' '-' '-' | .------------. | .-----------. | .-----.
+ | \ | / | | Filesystem | | | Scheduler | | | MMU |
+ | v . v | '------------' | '-----------' | '-----'
+ '_______/ \_____| | | | |
+ \ / v | | v
+ | ____ .----. | | .---------.
+ '--> /___/ | IO |<----' | | Network |
+ '----' | '---------'
+ | | |
+ v v v
+ .---------------------------------------.
+ | HAL |
+ '---------------------------------------'
+
+
+ o-> Block diagrams
+
+ .-,( ),-.
+ ___ _ .-( )-.
+ [___]|=| -->( ) __________
+ /::/ |_| '-( ).-' --->[_...__...°]
+ '-.( ).-'
+ \ ____ __
+ '--->| | |==|
+ |____| | |
+ /::::/ |__|
+
+ o-> Mindmaps
+
+ .--> Alpha
+ /
+ .----> Initial Release
+ Planning *-------. / \
+ \ / '---> Patch 1
+ Initial research \ / \
+ * \ / '--> Patch 2
+ \ \ .---------> Beta
+ \ \ /
+ \ o o _______
+ \ .---. o--.___ / \
+ '------> ( ) '----*---> . Release .
+ `---' o \_______/
+ o o o \
+ / \ \ \
+ .--' \ \ \
+ / \ \ '----+-> Push backs
+ . \ \ \
+ /| \ \ '----> Setbacks
+ / . \ \
+ V /| \ '-----> Reception
+ Team / . \
+ v /| \
+ Worklaod / . '-->> Career change
+ V /
+ PTO /
+ V
+ Bug
+
+
+ o-> It can do complex stuff such as circuit diagrams
+
+
+ +10-15V ___0,047R
+ *------o------o-|___|-o--o---------o----o-------.
+ | | | | | | |
+ --- | | .+. | | |
+ 470uF ### | | | | 2k2 | | |
+ | + | | | | | | .+.
+ *------o '--. | '+' .+. | '-'
+ | |6 |7 |8 1k | | | |
+ GND .-+----+--+--. | | | |
+ | | '+' | |
+ | |1 | |/ BC |
+ | +------o--+ 547 |
+ | | | |`> |
+ | | ,+. | |
+ | | 220R| | o----||-+ IRF9Z34
+ | | | | | |+->
+ | MC34063 | `+' | ||-+
+ | | | | | BYV29 -12V6
+ | | '----' o--|<-o----o--X OUT
+ | |2 | | |
+ | |--o C| | |
+ | | GND 30uH C| | --- 470
+ | |3 1nF C| | ### uF
+ | |-------||--. | | | +
+ '-----+----+-' | GND | GND
+ 5| 4| | |
+ | '-------------o-------------o
+ | ___ |
+ '------/\/\/------------o--|___|-'
+ | 1k0
+ .+.
+ | | 5k6 + 3k3
+ | | in Serie
+ '+'
+ |
+ GND
+
+ .-------------.
+ / Advantages: /
+'-------------'
+ -* Plain text format
+ Ultimately portable, backward compatible and future proof.
+ -* Degrades gracefully
+ Even when not using a graphical renderer, it would still looks good
+ as text based diagrams. Paste the text in your source code.
+ -* Easiest to use. Anyone knows how to edit text.
+
+
+ About Svgbob editor:
+=======================
+
+ -> The editor is a plain text editor in replace and block mode
+ with smarter prediction on where you intended to type next.
+ i.e: typing / will move the cursor north east to continue the line.
+ -> The editor also has an xray lens that reveals the underlying characters
+ underneath that comprises the graph. Move the mouse around to see the characters
+ that build up which image, while holding the mouse down
+ momentarily cancels the xray
+
+ .------------------------------.
+( This page is editable. Try it! )
+ '------------------------------'
+
++----------+
+| FAQ: |
++----------+
+
+ Q: "Why is there too much spacing on words"
+ A: It is an intended behaviour as all the text are meant
+ for labels. Each words of sentences corresponds to each separate text
+ elements in the SVG output in order to maintain
+ "a bit of alignment closes to their original location. *[0]"
+
+ Q: Do people really type in diagrams in text, isn't that tedious?
+ A: Using simple text editors to make text diagrams like these are really
+ "tedious. Power users of vim or emacs can make diagrams with ease.*[1]"
+
+ Q: Your editor sucks!
+ A: That's the beauty of plain text.
+ Use whatever editor you like.
+
+ Q: "How to integrate this in markdown?"
+ A: "There is a project called [Spongedown](https://ivanceras.github.io/spongedown)"
+ which specifically does that. The svgbob diagramming feature is guarded
+ with ```bob code block so as not to pollute the markdown syntax.
+
+
+"Footnotes:"
+"*[0]: Fonts mostly condensed words to look"
+ and render nicely. Monospace fonts should have solved this
+ problem, however the monospace fonts used in browsers
+ are not really monospaced (i.e CJK full-width characters
+ are only rendered 1.5x larger than ascii characters,
+ "instead of 2x larger). In the terminal however, full-width"
+ characters are rendered 2x larger using either monospace
+ or non-monspaced fonts.
+
+ .------------. | .-----------. | .-----. Look at that
+ | 文件系统 | | | 调度器 | | | MMU | -------------->
+ '------------' | '-----------' | '-----' monospace eh?
+
+ Also using monofont on final output document makes it look like meant
+ "something for devs, instead of documents for all."
+ For a more heavy usage of text just use markdown format,
+ "there is also [Spongedown](https://ivanceras.github.io/spongedown)"
+ which allow you to write in markdown, combine it with svgbob diagrams,
+ "together some other features like csv and math equations."
+
+"*[1] In vim, there is a drawIt plugin which helps you easily draw ascii"
+ diagrams. For vim without using any plugins, you can use combination
+ "of BLOCK mode editing(CTRL-v), REPLACE mode(SHIFT-r)",
+ :set virtualedit=all to easily move the cursor everywhere,
+ "cut, copy and paste text in block mode (<C-v> jjll 1vp)".
+ For emacs: there is artist mode.
+
+```
+