{"id":20816524,"url":"https://github.com/webdevel/tabulous","last_synced_at":"2025-05-07T13:21:20.821Z","repository":{"id":46142018,"uuid":"59974684","full_name":"webdevel/tabulous","owner":"webdevel","description":"Vim plugin for setting the tabline including the tab page labels. It is lightweight and written in pure Vim script.","archived":false,"fork":false,"pushed_at":"2022-12-25T07:56:23.000Z","size":21,"stargazers_count":20,"open_issues_count":4,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-31T10:22:37.800Z","etag":null,"topics":["plugin","tab","tab-label","tabline","tabulous","vim","vim-plugins","vim-scripts"],"latest_commit_sha":null,"homepage":null,"language":"Vim script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/webdevel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-05-30T02:24:55.000Z","updated_at":"2024-07-01T08:05:40.000Z","dependencies_parsed_at":"2023-01-30T21:45:29.317Z","dependency_job_id":null,"html_url":"https://github.com/webdevel/tabulous","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webdevel%2Ftabulous","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webdevel%2Ftabulous/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webdevel%2Ftabulous/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webdevel%2Ftabulous/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webdevel","download_url":"https://codeload.github.com/webdevel/tabulous/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252883398,"owners_count":21819170,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["plugin","tab","tab-label","tabline","tabulous","vim","vim-plugins","vim-scripts"],"created_at":"2024-11-17T21:34:48.844Z","updated_at":"2025-05-07T13:21:20.800Z","avatar_url":"https://github.com/webdevel.png","language":"Vim script","readme":"# *Tabulous*\nLightweight Vim plugin to enhance the tabline including numbered tab page labels; it's written entirely in Vim script.\n\n![Tabulous](http://i.imgur.com/rrh3lIN.gif \"Tabulous\")\n\n---\n\n### Features\nShows the tab page number on every tab label for quickly navigating to the desired tab **`\u003cnumber\u003egt`**.\nRename the current tab page label.\nTabs display an indicator when a buffer has been modified and not saved.\nDynamically updates the filename of the currently focused window in the tab page.\nEliminates inefficient use of string concatenation operator by using **`printf`** where possible.\nDoes not show filename extensions to preserve the amount of tab label space.\nPerforms runtime calculation of maximum tab label length and truncates accordingly (Dynamic resizing of tab labels).\nOptions are configurable from **`.vimrc`**.\n\n##### Planned Features\nEnhancement of tab label truncation algorithm\nToggle tab page numbers on and off by keyboard shortcut\nToggle tab label filename extensions on and off by keyboard shortcut\nToggle tab label truncation on and off by keyboard shortcut\n\u003e In progress: keyboard shortcuts and enhancement of tab label truncation algorithm.\n\n---\n\n### Install\nYou may choose your preferred method of installation.\n\u003e Windows users, change all occurrences of **`~/.vim`** to **`~\\vimfiles.`**\n\n---\n\n##### Vimrc *Tabulous* Installation\nRun the following commands in a terminal:\n```sh\nmkdir -p ~/.vim/bundle\ncd ~/.vim/bundle\ngit clone https://github.com/webdevel/tabulous.git\necho 'set runtimepath^=~/.vim/bundle/tabulous' \u003e\u003e ~/.vimrc\n```\nRestart Vim.\n\n---\n\n##### Pathogen *Tabulous* Installation\nRun the following commands in a terminal:\n```sh\nmkdir -p ~/.vim/bundle\ncd ~/.vim/bundle\ngit clone https://github.com/webdevel/tabulous.git\n```\nRestart Vim.\n\n---\n\n##### Vundle *Tabulous* Installation\n\u003e If your Vundle version is less than `0.10.2,` change **`Plugin`** to **`Bundle`**.\n\nEnter this in your **`.vimrc`**:\n```sh\nPlugin 'webdevel/tabulous'\n```\nThen enter the following command-lines in Vim:\n```sh\n:source %\n:PluginInstall\n```\n\n---\n\n##### NeoBundle *Tabulous* Installation\nEnter this in your **`.vimrc`**:\n```sh\nNeoBundle 'webdevel/tabulous'\n```\nThen enter the following command-lines in Vim:\n```sh\n:source %\n:NeoBundleInstall\n```\n\n---\n\n##### VimPlug *Tabulous* Installation\nEnter this in your **`.vimrc`**:\n```sh\nPlug 'webdevel/tabulous'\n```\nThen enter the following command-lines in Vim:\n```sh\n:source %\n:PlugInstall\n```\n\n---\n\n### Command-Lines\nTabulous adds the following commands available from Vim's Command-Line mode.\n\n##### TabulousRename\nRename the current tab page label name to **`\u003cstring\u003e`**. 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.\n\n```vimL\n:TabulousRename \u003cstring\u003e\n```\n\n---\n\n### Configuration\nNo 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`**.\n\n##### Disable Plugin\nThis disables the plugin entirely.\n```sh\nlet loadTabulous = 1\n```\n\n##### Tab Label Truncation\nThis enables or disables tab page label truncation. The default is **`1`** enabled.\n```sh\nlet tabulousLabelNameTruncate = 0\n```\n\n##### Tab Close\nThis sets the tab close string for mouse clicks. The default is **`X`** enabled.\n```sh\nlet tabulousCloseStr = ''\n```\n\n##### Tab Label Name Options\nThis 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.\n```sh\nlet tabulousLabelNameOptions = ''\n```\n\n##### Tab Label Modified\nThis sets the string that indicates the buffer associated with a tab has been modified, but not yet saved. The default value is shown below.\n```sh\nlet tabulousLabelModifiedStr = '+'\n```\n\n##### Tab Label Left\nThis sets the string on the left of the tab label. The default value is shown below.\n```sh\nlet tabulousLabelLeftStr = ' '\n```\n\n##### Tab Label Right\nThis sets the string on the right of the tab label. The default value is shown below.\n```sh\nlet tabulousLabelRightStr = ' '\n```\n\n##### Tab Label Number\nThis sets the string on the right of the tab label number. The default value is shown below.\n```sh\nlet tabulousLabelNumberStr = ' '\n```\n\n##### Tab Label Name Left\nThis sets the string on the left of the tab label name. The default value is shown below.\n```sh\nlet tabulousLabelNameLeftStr = ''\n```\n\n##### Tab Label Default Name\nThis sets the default tab label name. The default value is shown below.\n```sh\nlet tabulousLabelNameDefault = '[No Name]'\n```\n\n---\n\n### Keyboard Shortcuts\n\nThere are no default mappings for renaming your tabs, but you can map it easily like this:\n\n```vimL\nmap \u003cC-t\u003e :call g:tabulous#renameTab()\u003ccr\u003e\n```\n\nThis maps `Ctrl + t` to rename your tab.\n\n---\n\n### License\n*Tabulous* is free and open source software. It is licensed by the GNU General Public License version 2 (GPLv2).\n\n[filename-modifiers]: http://vimdoc.sourceforge.net/htmldoc/cmdline.html#filename-modifiers\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebdevel%2Ftabulous","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebdevel%2Ftabulous","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebdevel%2Ftabulous/lists"}