Updating README.md
This commit is contained in:
parent
bd1b995316
commit
135a101384
108
README.md
108
README.md
@ -1 +1,107 @@
|
||||
# vimdown
|
||||
# Md2Vim #
|
||||
|
||||
Writing technical documentation for [Vim](http://www.vim.org/) extensions is not very exciting; having to manually
|
||||
convert what you've just written in [Markdown](https://daringfireball.net/projects/markdown/) to the
|
||||
[vimdoc](http://vimdoc.sourceforge.net/htmldoc/usr_toc.html) help format is even less fun. As I grew tired of doing this
|
||||
over and over for my [ArgWrap](/projects/argwrap/) extension, I decided to formally solve this problem for myself and
|
||||
others, creating the Md2Vim converter tool.
|
||||
|
||||
Md2Vim is implemented in [Golang](https://golang.org/) as a custom renderer for the
|
||||
[blackfriday](https://github.com/russross/blackfriday) Markdown processor. Maintainability, ease of use, and beautiful
|
||||
vimdoc output were primary considerations in its design.
|
||||
|
||||
## Installation ##
|
||||
|
||||
If you already have the Go environment and toolchain set up, you can get the latest version by running:
|
||||
|
||||
```
|
||||
$ go get github.com/FooSoft/md2vim
|
||||
```
|
||||
|
||||
Otherwise, you can use the pre-built binaries for the platforms below:
|
||||
|
||||
* [Linux](http://foosoft.net/projects/md2vim/dl/md2vim-linux64.tar.gz)
|
||||
* [Windows](http://foosoft.net/projects/md2vim/dl/md2vim-win32.tar.gz)
|
||||
|
||||
|
||||
## Example ##
|
||||
|
||||
Let's generate the documentation for [ArgWrap](/projects/argwrap/) by executing the command shown below (split into
|
||||
multiple lines due to length considerations):
|
||||
|
||||
```
|
||||
$ md2vim -desc "Wrap and unwrap function arguments, lists, and dictionaries in Vim"
|
||||
-cols=120
|
||||
README.md
|
||||
doc/argwrap.txt
|
||||
```
|
||||
|
||||
And here is the animation of it happening in a terminal window; notice the pretty help file layout Vim.
|
||||
|
||||
![](http://foosoft.net/projects/md2vim/img/demo.gif)
|
||||
|
||||
## Requirements ##
|
||||
|
||||
Md2Vim makes the reasonable assumption that your document headings are arranged in a single-root hierarchy for the
|
||||
purposes of table of contents generation. As long as you have exactly one top level heading (usually the title of your
|
||||
extension), with sub-headings following it (directions for installation, configurations, etc.) everything will look and
|
||||
work great. If you don't want to follow this hierarchy in your help file, you can still use this tool as long as you
|
||||
disable table of contents generation.
|
||||
|
||||
## Usage ##
|
||||
|
||||
Executing Md2Vim with the -help command line argument will trigger online help to be displayed. The list below provides
|
||||
a more detailed description of what the parameters do.
|
||||
|
||||
* `cols`
|
||||
|
||||
The number of columns used for laying out vimdoc files to make them look as good as possible with your content.
|
||||
Notice that file contents will not be wrapped to this value; this is purely for such things as horizontal rule
|
||||
widths and help tag positioning. This defaults to 80, but that's a bit too narrow for some people.
|
||||
|
||||
* `desc`
|
||||
|
||||
Vim help files are supposed to start with the following two fields on the first line:
|
||||
|
||||
```
|
||||
filename.txt Description of this help file's contents
|
||||
```
|
||||
|
||||
The first field is the filename of the generated vimdoc help file; the second is the description can you provide
|
||||
with this parameter.
|
||||
|
||||
* `norules`
|
||||
|
||||
By default, we generate horizontal rules above level 1-2 headings, as shown below:
|
||||
|
||||
```
|
||||
================================================================================
|
||||
Level 1 Heading
|
||||
--------------------------------------------------------------------------------
|
||||
Level 2 Heading
|
||||
```
|
||||
If you don't like the way it looks you can turn it off.
|
||||
|
||||
* `notoc`
|
||||
|
||||
If you don't want to generate a table of contents you can specify this argument. The table of contents lists all of
|
||||
the child headings underneath the primary heading; it is always inserted right before the second heading in your
|
||||
document.
|
||||
|
||||
* `pascal`
|
||||
|
||||
By default, all help tags get converted to lower case and space delimited words are joined with underscores.
|
||||
|
||||
```
|
||||
rigellians-how_to_cook_for_fourty_humans
|
||||
```
|
||||
|
||||
If you prefer the PascalCase way of doing things, set this flag and your output will look like this:
|
||||
|
||||
```
|
||||
Rigellians-HowToCookForFourtyHumans
|
||||
```
|
||||
|
||||
* `tabs`
|
||||
|
||||
If you don't like four space tabs for some reason you can change it to something else with this parameter.
|
||||
|
Loading…
Reference in New Issue
Block a user