Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.


This is a mirror of

This library provides some utility functions. There isn't much need to 
install it unless another plugin requires you to do so.

The most useful functions provided by this library probably are:

tlib#input#List(), tlib#input#ListW()
    - Display a list
    - Dynamically filter items matching a pattern (somethat like google)
        - E.g. you filter for "foo -bar": show all entries containing foo but not bar.
    - Select items from a list
    - Do stuff
        - Developers can define keys that trigger some action with the 
          selected items

    + Edit a list (copy, cut, paste, delete, edit ...)

    Set a variable only if it doesn't already exist.

    Open a scratch buffer (a buffer without a file).

:TVarArg VAR1, [VAR2, DEFAULT2] ...
    Handle "rest" (variable) arguments in functions.
      function! Foo(...)
          TVarArg ['a', 1], 'b'
          echo 'a='. a
          echo 'b='. b

TBrowseOutput COMMAND
    Every wondered how to effciently browse the output of a command 
    without redirecting it to a file? This command takes a command as 
    argument and presents the output via |tlib#input#List()| so that you 
    can easily search for a keyword (e.g. the name of a variable or 
    function) and the like.
    If you press enter, the selected line will be copied to the command 
    line. Press ESC to cancel browsing.
      TBrowseOutput 20verb TeaseTheCulprit
      TBrowseOutput let
      TBrowseOutput map

Related (small) plugins that utilize tlib and thus provide some degree of uniform user experience:
    tbibtools (vimscript #1915): bibtex-related utilities (sort, reformat, list contents ...)
    tmboxbrowser (vimscript #1906): A mbox browser -- Read your e-mails with vim
    tmru (vimscript #1864): Most Recently Used Files
    trag (vimscript #2033): A slightly language-aware alternative to grep
    tregisters (vimscript #2017): List, edit, and run/execute registers/clipboards
    tselectbuffer (vimscript #1866): A quick buffer selector/switcher
    tselectfile (vimscript #1865): A quick file selector/browser/explorer (sort of)
    ttagecho (vimscript #2055): Show current tag information
    ttagcomplete (vimscript #2069): Context-sensitive tags-based completion and code skeletons
    ttags (vimscript #2018): Tag list browser (List, filter, preview, jump to tags)
    ttoc (vimscript #2014): A regexp-based table of contents of the current buffer

For full details, please see:
Something went wrong with that request. Please try again.