All Projects → webdevel → tabulous

webdevel / tabulous

Licence: GPL-2.0 license
Vim plugin for setting the tabline including the tab page labels. It is lightweight and written in pure Vim script.

Programming Languages

Vim Script
2826 projects

Projects that are alternatives of or similar to tabulous

VimConfig
Configuration files for Vi-IMproved.
Stars: ✭ 23 (+9.52%)
Mutual labels:  vim-plugins, vim-scripts
vim-gitbranch
Provides the branch name of the current git repository
Stars: ✭ 171 (+714.29%)
Mutual labels:  vim-plugins, vim-scripts
filestyle
filestyle is a Vim plugin that highlights unwanted whitespace and characters.
Stars: ✭ 30 (+42.86%)
Mutual labels:  vim-plugins, vim-scripts
Vim Devicons
Adds file type icons to Vim plugins such as: NERDTree, vim-airline, CtrlP, unite, Denite, lightline, vim-startify and many more
Stars: ✭ 4,473 (+21200%)
Mutual labels:  vim-plugins, vim-scripts
vim-searchant
searchant.vim is obsoleted by vim-searchhi
Stars: ✭ 55 (+161.9%)
Mutual labels:  vim-plugins
Bullets.vim
🔫 Bullets.vim is a Vim/NeoVim plugin for automated bullet lists.
Stars: ✭ 199 (+847.62%)
Mutual labels:  vim-plugins
Vim Packager
Vim plugin manager that utilizes "jobs" and "pack" features.
Stars: ✭ 197 (+838.1%)
Mutual labels:  vim-plugins
Vim Arduino
Vim plugin for compiling and uploading arduino sketches
Stars: ✭ 187 (+790.48%)
Mutual labels:  vim-plugins
vim-sass-colors
sass/scss/less/css color literal and color variable highlighting (works with imports)
Stars: ✭ 24 (+14.29%)
Mutual labels:  vim-plugins
lh-tags
ctags base updating, and browsing from vim
Stars: ✭ 25 (+19.05%)
Mutual labels:  vim-plugins
Vim Arpeggio
Vim plugin: Mappings for simultaneously pressed keys
Stars: ✭ 216 (+928.57%)
Mutual labels:  vim-plugins
Vim Go
Go development plugin for Vim
Stars: ✭ 14,085 (+66971.43%)
Mutual labels:  vim-plugins
vim-stylus
A better vim plugin for stylus, including proper and up-to-date syntax highligting, indentation and autocomplete
Stars: ✭ 49 (+133.33%)
Mutual labels:  vim-plugins
Vifm.vim
Vim plugin that allows use of vifm as a file picker
Stars: ✭ 197 (+838.1%)
Mutual labels:  vim-plugins
tmux-zsh-vim-titles
Unified terminal titles in tmux, zsh, and vim/nvim
Stars: ✭ 28 (+33.33%)
Mutual labels:  vim-plugins
Visual Split.vim
Vim plugin to control splits with visual selections or text objects
Stars: ✭ 190 (+804.76%)
Mutual labels:  vim-plugins
Is.vim
incremental search improved - successor of incsearch.vim
Stars: ✭ 209 (+895.24%)
Mutual labels:  vim-plugins
vim-modusline
🌈 Mode-specific statusline colors
Stars: ✭ 39 (+85.71%)
Mutual labels:  vim-plugins
Vim Racket
vim bundle for Racket
Stars: ✭ 207 (+885.71%)
Mutual labels:  vim-plugins
Vim Anyfold
Language agnostic vim plugin for folding and motion based on indentation.
Stars: ✭ 208 (+890.48%)
Mutual labels:  vim-plugins

Tabulous

Lightweight Vim plugin to enhance the tabline including numbered tab page labels; it's written entirely in Vim script.

Tabulous


Features

Shows the tab page number on every tab label for quickly navigating to the desired tab <number>gt. Rename the current tab page label. Tabs display an indicator when a buffer has been modified and not saved. Dynamically updates the filename of the currently focused window in the tab page. Eliminates inefficient use of string concatenation operator by using printf where possible. Does not show filename extensions to preserve the amount of tab label space. Performs runtime calculation of maximum tab label length and truncates accordingly (Dynamic resizing of tab labels). Options are configurable from .vimrc.

Planned Features

Enhancement of tab label truncation algorithm Toggle tab page numbers on and off by keyboard shortcut Toggle tab label filename extensions on and off by keyboard shortcut Toggle tab label truncation on and off by keyboard shortcut

In progress: keyboard shortcuts and enhancement of tab label truncation algorithm.


Install

You may choose your preferred method of installation.

Windows users, change all occurrences of ~/.vim to ~\vimfiles.


Vimrc Tabulous Installation

Run the following commands in a terminal:

mkdir -p ~/.vim/bundle
cd ~/.vim/bundle
git clone https://github.com/webdevel/tabulous.git
echo 'set runtimepath^=~/.vim/bundle/tabulous' >> ~/.vimrc

Restart Vim.


Pathogen Tabulous Installation

Run the following commands in a terminal:

mkdir -p ~/.vim/bundle
cd ~/.vim/bundle
git clone https://github.com/webdevel/tabulous.git

Restart Vim.


Vundle Tabulous Installation

If your Vundle version is less than 0.10.2, change Plugin to Bundle.

Enter this in your .vimrc:

Plugin 'webdevel/tabulous'

Then enter the following command-lines in Vim:

:source %
:PluginInstall

NeoBundle Tabulous Installation

Enter this in your .vimrc:

NeoBundle 'webdevel/tabulous'

Then enter the following command-lines in Vim:

:source %
:NeoBundleInstall

VimPlug Tabulous Installation

Enter this in your .vimrc:

Plug 'webdevel/tabulous'

Then enter the following command-lines in Vim:

:source %
:PlugInstall

Command-Lines

Tabulous adds the following commands available from Vim's Command-Line mode.

TabulousRename

Rename the current tab page label name to <string>. The new label name is remembered until the buffer associated with the label name is wiped out or you use TabulousRename again on the same label name.

:TabulousRename <string>

Configuration

No configuration is necessary by default. However, there are options if you want to set them. Any of the following configuration options may simply be added to a new line in your .vimrc.

Disable Plugin

This disables the plugin entirely.

let loadTabulous = 1
Tab Label Truncation

This enables or disables tab page label truncation. The default is 1 enabled.

let tabulousLabelNameTruncate = 0
Tab Close

This sets the tab close string for mouse clicks. The default is X enabled.

let tabulousCloseStr = ''
Tab Label Name Options

This sets the tab label name options which may be valid filename-modifiers recognized by the Vim command fnamemodify. The defaults are :t:r which remove directories and file extension from a tab label name.

let tabulousLabelNameOptions = ''
Tab Label Modified

This sets the string that indicates the buffer associated with a tab has been modified, but not yet saved. The default value is shown below.

let tabulousLabelModifiedStr = '+'
Tab Label Left

This sets the string on the left of the tab label. The default value is shown below.

let tabulousLabelLeftStr = ' '
Tab Label Right

This sets the string on the right of the tab label. The default value is shown below.

let tabulousLabelRightStr = ' '
Tab Label Number

This sets the string on the right of the tab label number. The default value is shown below.

let tabulousLabelNumberStr = ' '
Tab Label Name Left

This sets the string on the left of the tab label name. The default value is shown below.

let tabulousLabelNameLeftStr = ''
Tab Label Default Name

This sets the default tab label name. The default value is shown below.

let tabulousLabelNameDefault = '[No Name]'

Keyboard Shortcuts

There are no default mappings for renaming your tabs, but you can map it easily like this:

map <C-t> :call g:tabulous#renameTab()<cr>

This maps Ctrl + t to rename your tab.


License

Tabulous is free and open source software. It is licensed by the GNU General Public License version 2 (GPLv2).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].