Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

55 lines (40 sloc) 1.954 kb
This plugin tries to duplicate the functionality of Marc Weber's
outline.vim (vimscript #1947) on the basis of its description and of
vim's own |:g|. Other than outline.vim, it relies on tlib (vimscript
#1863).
The TToC command can be used to get a quick table of contents of the
buffer based on a given regular expression. The regexp can be defined on
the command line, in window (w:ttoc_rx), buffer-local (b:ttoc_rx)
variables or in global filetype-specific (g:ttoc_rx_{&filetype})
variables. The order actually is: [wbg]:ttoc_rx_{&filetype} >
[wbg]:ttoc_rx.
The TToC command can also evaluate an expression to get the line
numbers. The expression is evalutated if TToC is invoked without a regex
argument and the expression is defined for that filetype
([wbg]:ttoc_expr_{&filetype}). The expression needs to return either a
sorted and unique list of line numbers either as a vim list or as a
newline-separated string.
In the list view, you can select a line and either preview it (<c-p>),
jump there (<), close the list and jump there (<cr>).
Example: >
" Use the default settings for the current file-type
:TToC
" Show all words beginning at column 1
:TToC ^\w
" Show 'if' statements (but not the concluding 'then' statement)
:TToC ^\s*if\>.\{-}\ze\s\+then
" Show 'if' statements and 3 extra lines
:3TToC! \<if\>
The TToC with a bang works somewhat like |:g| only that you can
browse/filter the list and select an item after reviewing the results.
Try it out and compare (with the help file as current buffer): >
:TToC! TToC
with >
:g/TToC
-----------------------------------------------------------------------
Status: Works for me (there may be some minor quirks)
Dependencies:
tlib :: http://github.com/tomtom/tlib_vim
> git clone git://github.com/tomtom/tlib_vim.git
Install: See http://github.com/tomtom/vimtlib/blob/master/INSTALL.TXT
See http://github.com/tomtom for related plugins.
Jump to Line
Something went wrong with that request. Please try again.