1. Introduction |vim-markdown-introduction|
2. Installation |vim-markdown-installation|
- 3. Options |vim-markdown-options|
+ 3. Basic usage |vim-markdown-basic-usage|
+ 1. Folding |vim-markdown-folding|
+ 2. Concealing |vim-markdown-concealing|
+ 4. Options |vim-markdown-options|
1. Disable Folding |vim-markdown-disable-folding|
2. Change fold style |vim-markdown-change-fold-style|
3. Set header folding level |vim-markdown-set-header-folding-level|
6. Text emphasis restriction to single-lines
|vim-markdown-text-emphasis-restriction-to-single-lines|
7. Syntax Concealing |vim-markdown-syntax-concealing|
- 8. Syntax extensions |vim-markdown-syntax-extensions|
+ 8. Fenced code block languages |vim-markdown-fenced-code-block-languages|
+ 9. Follow named anchors |vim-markdown-follow-named-anchors|
+ 10. Syntax extensions |vim-markdown-syntax-extensions|
1. LaTeX math |vim-markdown-latex-math|
2. YAML Front Matter |vim-markdown-yaml-front-matter|
3. TOML Front Matter |vim-markdown-toml-front-matter|
4. JSON Front Matter |vim-markdown-json-front-matter|
- 4. Mappings |vim-markdown-mappings|
- 5. Commands |vim-markdown-commands|
- 6. Credits |vim-markdown-credits|
- 7. License |vim-markdown-license|
- 8. References |vim-markdown-references|
+ 11. Adjust new list item indent |vim-markdown-adjust-new-list-item-indent|
+ 12. Do not require .md extensions for Markdown links
+ |vim-markdown-do-not-require-.md-extensions-for-markdown-links|
+ 13. Auto-write when following link
+ |vim-markdown-auto-write-when-following-link|
+ 14. Change default file extension
+ |vim-markdown-change-default-file-extension|
+ 15. Do not automatically insert bulletpoints
+ |vim-markdown-do-not-automatically-insert-bulletpoints|
+ 16. Change how to open new files |vim-markdown-change-how-to-open-new-files|
+ 5. Mappings |vim-markdown-mappings|
+ 6. Commands |vim-markdown-commands|
+ 7. Credits |vim-markdown-credits|
+ 8. License |vim-markdown-license|
+ 9. References |vim-markdown-references|
===============================================================================
*vim-markdown-introduction*
cd ~/.vim
tar --strip=1 -zxf vim-markdown-master.tar.gz
<
+===============================================================================
+ *vim-markdown-basic-usage*
+Basic usage ~
+
+-------------------------------------------------------------------------------
+ *vim-markdown-folding*
+Folding ~
+
+Folding is enabled for headers by default.
+
+The following commands are useful to open and close folds:
+
+ *vim-markdown-zr*
+- 'zr': reduces fold level throughout the buffer
+ *vim-markdown-zR*
+- 'zR': opens all folds
+ *vim-markdown-zm*
+- 'zm': increases fold level throughout the buffer
+ *vim-markdown-zM*
+- 'zM': folds everything all the way
+ *vim-markdown-za*
+- 'za': open a fold your cursor is on
+ *vim-markdown-zA*
+- 'zA': open a fold your cursor is on recursively
+ *vim-markdown-zc*
+- 'zc': close a fold your cursor is on
+ *vim-markdown-zC*
+- 'zC': close a fold your cursor is on recursively
+
+Options are available to disable folding or change folding style.
+
+Try ':help fold-expr' and ':help fold-commands' for details.
+
+-------------------------------------------------------------------------------
+ *vim-markdown-concealing*
+Concealing ~
+
+Concealing is set for some syntax such as bold, italic, code block and link.
+
+Concealing lets you conceal text with other text. The actual source text is not
+modified. If you put your cursor on the concealed line, the conceal goes away.
+
+Options are available to disable or change concealing.
+
+Try ':help concealcursor' and ':help conceallevel' for details.
+
===============================================================================
*vim-markdown-options*
Options ~
>
let g:vim_markdown_folding_style_pythonic = 1
<
+Level 1 heading which is served as a document title is not folded.
+'g:vim_markdown_folding_level' setting is not active with this fold style.
+
+To prevent foldtext from being set add the following to your '.vimrc':
+>
+ let g:vim_markdown_override_foldtext = 0
+<
-------------------------------------------------------------------------------
*vim-markdown-set-header-folding-level*
Set header folding level ~
Text emphasis restriction to single-lines ~
By default text emphasis works across multiple lines until a closing token is
-found. However, it's possible to restrict text emphasis to a single line (ie,
+found. However, it's possible to restrict text emphasis to a single line (i.e.,
for it to be applied a closing token must be found on the same line). To do so:
>
let g:vim_markdown_emphasis_multiline = 0
Concealing is set for some syntax.
-For example, conceal '[link text](link url)' as just 'link text'.
+For example, conceal '[link text](link url)' as just 'link text'. Also,
+'_italic_' and '*italic*' will conceal to just _italic_. Similarly '__bold__',
+'**bold**', '___italic bold___', and '***italic bold***' will conceal to just
+**bold**, **bold**, **_italic bold_**, and **_italic bold_** respectively.
To enable conceal use Vim's standard conceal configuration.
>
>
let g:vim_markdown_conceal = 0
<
+To disable math conceal with LaTeX math syntax enabled, add the following to
+your '.vimrc':
+>
+ let g:tex_conceal = ""
+ let g:vim_markdown_math = 1
+<
+-------------------------------------------------------------------------------
+ *vim-markdown-fenced-code-block-languages*
+Fenced code block languages ~
+
+You can use filetype name as fenced code block languages for syntax
+highlighting. If you want to use different name from filetype, you can add it
+in your '.vimrc' like so:
+>
+ let g:vim_markdown_fenced_languages = ['csharp=cs']
+<
+This will cause the following to be highlighted using the 'cs' filetype syntax.
+>
+ ```csharp
+ ...
+ ```
+<
+Default is "['c++=cpp', 'viml=vim', 'bash=sh', 'ini=dosini']".
+
+-------------------------------------------------------------------------------
+ *vim-markdown-follow-named-anchors*
+Follow named anchors ~
+
+This feature allows the 'ge' command to follow named anchors in links of the
+form 'file#anchor' or just '#anchor', where file may omit the '.md' extension
+as usual. Two variables control its operation:
+>
+ let g:vim_markdown_follow_anchor = 1
+<
+This tells vim-markdown whether to attempt to follow a named anchor in a link
+or not. When it is 1, and only if a link can be split in two parts by the
+pattern '#', then the first part is interpreted as the file and the second one
+as the named anchor. This also includes urls of the form '#anchor', for which
+the first part is considered empty, meaning that the target file is the current
+one. After the file is opened, the anchor will be searched.
+
+Default is '0'.
+>
+ let g:vim_markdown_anchorexpr = "'<<'.v:anchor.'>>'"
+<
+This expression will be evaluated substituting 'v:anchor' with a quoted string
+that contains the anchor to visit. The result of the evaluation will become the
+real anchor to search in the target file. This is useful in order to convert
+anchors of the form, say, 'my-section-title' to searches of the form 'My
+Section Title' or '<<my-section-title>>'.
+
+Default is "''".
+
-------------------------------------------------------------------------------
*vim-markdown-syntax-extensions*
Syntax extensions ~
>
let g:vim_markdown_json_frontmatter = 1
<
+-------------------------------------------------------------------------------
+ *vim-markdown-adjust-new-list-item-indent*
+Adjust new list item indent ~
+
+You can adjust a new list indent. For example, you insert a single line like
+below:
+>
+ * item1
+<
+Then if you type 'o' to insert new line in vim and type '* item2', the result
+will be:
+>
+ * item1
+ * item2
+<
+vim-markdown automatically insert the indent. By default, the number of spaces
+of indent is 4. If you'd like to change the number as 2, just write:
+>
+ let g:vim_markdown_new_list_item_indent = 2
+<
+-------------------------------------------------------------------------------
+ *vim-markdown-do-not-require-.md-extensions-for-markdown-links*
+Do not require .md extensions for Markdown links ~
+
+If you want to have a link like this '[link text](link-url)' and follow it for
+editing in vim using the 'ge' command, but have it open the file "link-url.md"
+instead of the file "link-url", then use this option:
+>
+ let g:vim_markdown_no_extensions_in_markdown = 1
+<
+This is super useful for GitLab and GitHub wiki repositories.
+
+Normal behaviour would be that vim-markup required you to do this '[link text
+](link-url.md)', but this is not how the Gitlab and GitHub wiki repositories
+work. So this option adds some consistency between the two.
+
+-------------------------------------------------------------------------------
+ *vim-markdown-auto-write-when-following-link*
+Auto-write when following link ~
+
+If you follow a link like this '[link text](link-url)' using the 'ge' shortcut,
+this option will automatically save any edits you made before moving you:
+>
+ let g:vim_markdown_autowrite = 1
+<
+-------------------------------------------------------------------------------
+ *vim-markdown-change-default-file-extension*
+Change default file extension ~
+
+If you would like to use a file extension other than '.md' you may do so using
+the 'vim_markdown_auto_extension_ext' variable:
+>
+ let g:vim_markdown_auto_extension_ext = 'txt'
+<
+-------------------------------------------------------------------------------
+ *vim-markdown-do-not-automatically-insert-bulletpoints*
+Do not automatically insert bulletpoints ~
+
+Automatically inserting bulletpoints can lead to problems when wrapping text
+(see issue #232 for details), so it can be disabled:
+>
+ let g:vim_markdown_auto_insert_bullets = 0
+<
+In that case, you probably also want to set the new list item indent to 0 as
+well, or you will have to remove an indent each time you add a new list item:
+>
+ let g:vim_markdown_new_list_item_indent = 0
+<
+-------------------------------------------------------------------------------
+ *vim-markdown-change-how-to-open-new-files*
+Change how to open new files ~
+
+By default when following a link the target file will be opened in your current
+buffer. This behavior can change if you prefer using splits or tabs by using
+the 'vim_markdown_edit_url_in' variable. Possible values are 'tab', 'vsplit',
+'hsplit', 'current' opening in a new tab, vertical split, horizontal split, and
+current buffer respectively. Defaults to current buffer if not set:
+>
+ let g:vim_markdown_edit_url_in = 'tab'
+<
===============================================================================
*vim-markdown-mappings*
Mappings ~
The following work on normal and visual modes:
- *gx*
+ *vim-markdown-gx*
- 'gx': open the link under the cursor in the same browser as the standard
'gx' command. '<Plug>Markdown_OpenUrlUnderCursor'
<
Known limitation: does not work for links that span multiple lines.
- *]]*
+ *vim-markdown-ge*
+- 'ge': open the link under the cursor in Vim for editing. Useful for
+ relative markdown links. '<Plug>Markdown_EditUrlUnderCursor'
+
+ The rules for the cursor position are the same as the 'gx' command.
+
+ *vim-markdown-]]*
- ']]': go to next header. '<Plug>Markdown_MoveToNextHeader'
- *[[*
+ *vim-markdown-[[*
- '[[': go to previous header. Contrast with ']c'.
'<Plug>Markdown_MoveToPreviousHeader'
- *][*
+ *vim-markdown-][*
- '][': go to next sibling header if any.
'<Plug>Markdown_MoveToNextSiblingHeader'
- *[]*
+ *vim-markdown-[]*
- '[]': go to previous sibling header if any.
'<Plug>Markdown_MoveToPreviousSiblingHeader'
- *]c*
+ *vim-markdown-]c*
- ']c': go to Current header. '<Plug>Markdown_MoveToCurHeader'
- *]u*
+ *vim-markdown-]u*
- ']u': go to parent header (Up). '<Plug>Markdown_MoveToParentHeader'
This plugin follows the recommended Vim plugin mapping interface, so to change