sponsor Vim development Vim logo Vim Book Ad

TabLineSet.vim : A Vim7 tabline customization

 script karma  Rating 18/6, Downloaded by 5332  Comments, bugs, improvements  Vim wiki

created by
Eric Arnold
 
script type
utility
 
description
Screenshot link:  http://www.geocities.com/eric_p_arnold/TabLineSet_eg.html

See feedback tip#1239   http://vim.sourceforge.net/tips/tip.php?tip_id=1239

Synopsis:

    -   Configurable, intelligent/dynamic tab field sizing.

    -   See all buffers loaded in windows in all tabs.

    -   New colorscheme and general presentation.  The highlighting groups are
        defined at the end of the script.  Tweak as desired.

    -   The indicator sets are customizable.
        (It will also turn verbose mode off automatically, as needed.)

        You can add the   g:TabLineSet_.*   vars to your .vimrc, where you can
        customize tab min/max, etc., and these these indicators:
            modified        : whether any window in the tab needs saving
            windows         : window count in the tab
            buffers_list    : tab label contains comma list of buffers contained
            closers         : add hot spots ("!") to the tab for click-to-close

            These are mostly for development, but might be useful otherwise:
            tabnr           : include the tab number for the selected tab/window
            winnr           : ... window number
            bufnr           : ... buffer number
            filler_func     : tell it to use   g:TabLineSetFillerFunc   to
                              contain the name of a function to be evaluated
                              at runtime.  It's proof of concept, mostly.


    -   You can add these mappings to your .vimrc to control the verbose
        settings on the fly:

        The first one toggles all indicators off:

            nmap <Leader>tv :call TabLineSet_verbose_toggle()<CR>

        The second rotates through a list of option settings which
        configurable/extensible via g:TabLineSet_verbose_sets.  See below.

            nmap <Leader>tr :call TabLineSet_verbose_rotate()<CR>

    -   Additional customization can be done via the filter lists.  These are
        more complex, requiring use of regex's and such, but they allow you to
        make arbitrary changes to the TabLine string at runtime.

    -   You have the choice of editing stuff in place here, but it might be
        better to copy the vars and highlights of interest into your .vimrc .
        I think I've isolated it all to be easy to cut and paste, maybe.

    -   Finally, the ultimate customization:  dink around with the script
        yourself :-)


 
install details
Put it in the plugin directory.  Tweak it as desired.


 

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
TabLineSet.vim 2.0.1 2006-05-23 7.0 Eric Arnold - startup bug with Tab.._min undefined
[blah, sorry]
TabLineSet.vim 2.0 2006-05-23 7.0 Eric Arnold - Heavily restructured for support for gui tabs;
probably installed some bugs too :-P
- Some speed tweaks
- Added g:TabLineSet_max_cols to enable GUI tab
scrolling
TabLineSet.vim 1.8.3 2006-05-17 7.0 Eric Arnold - Checks for need to recalc, now ~instant return for page redraws
TabLineSet.vim 1.8.1.1 2006-05-14 7.0 Eric Arnold Added wrap-max-lines increase/decrease "buttons" on tabline.
TabLineSet.vim 1.8.1 2006-05-14 7.0 Eric Arnold - Corrected indexing for mousefunc patch
TabLineSet.vim 1.8 2006-05-14 7.0 Eric Arnold - Use the tabline wrapping patch if available.
TabLineSet.vim 1.7.1 2006-05-06 7.0 Eric Arnold - Reset highlighting based on synIDattr() and whether some external operation has cleared attributes.
TabLineSet.vim 1.7 2006-05-04 7.0 Eric Arnold - Added pre- and post-proc function hooks
TabLineSet.vim 1.61 2006-05-02 7.0 Eric Arnold - [Really, this time]Fixed problem where slow-down occurs when the
tabline function is called for every keystroke.  Use
the toggle or rotate mappings/functions to reset the
highlighting, if something clobbers it.
TabLineSet.vim 1.55 2006-04-16 7.0 Eric Arnold - disable the g:TabLineSetFillerFunc per the performance problem with VIm70d.
TabLineSet.vim 1.5 2006-04-09 7.0 Eric Arnold - added filter lists so users can apply multiple regex's to the tabline string from the config vars.
- re-arranged the close button, the window counter,
  and the (tab,win,buf) list
TabLineSet.vim 1.4 2006-04-03 7.0 Eric Arnold - added comma list of buffers contained in tab
- changed toggle and rotate mapping functions to
  handle multiple option sets to switch through
TabLineSet.vim 1.3.5 2006-04-02 7.0 Eric Arnold Added an autocommand to address problems of start up highlighting conflicts.
TabLineSet.vim 1.3 2006-04-02 7.0 Eric Arnold
- Added more indicators, and toggle mapping funcs
for verbose control.
- Changed the name of the script from tabset.vim
- Solidified the non-GUI color scheme.
- Started some hooks to customize slack area.
tabset.vim 1.2 2006-04-01 7.0 Eric Arnold Fixed some bugs, better width calc., more presentation and highlighting thingies.
tabset.vim 1.1 2006-03-31 7.0 Eric Arnold Initial upload
ip used for rating: 142.132.191.50

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
   
Vim at Github