Skip to content
Branch: master
Go to file
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
doc
 
 
etc
 
 
 
 
 
 
 
 
 
 

README

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.

You can’t perform that action at this time.