tmux/examples/tmux.vim

115 lines
4.8 KiB
VimL
Raw Normal View History

2008-12-20 09:09:57 +00:00
" Vim syntax file
" Language: tmux(1) configuration file
2012-07-16 22:19:13 +00:00
" Maintainer: Tiago Cunha <tcunha@users.sourceforge.net>
" Last Change: $Date: 2010-07-27 18:29:07 $
2009-10-25 22:16:55 +00:00
" License: This file is placed in the public domain.
"
" To install this file:
"
" - Drop the file in the syntax directory into runtimepath (such as
" ~/.vim/syntax/tmux.vim).
" - Make the filetype recognisable by adding the following to filetype.vim
" (~/.vim/filetype.vim):
"
" augroup filetypedetect
" au BufNewFile,BufRead .tmux.conf*,tmux.conf* setf tmux
" augroup END
"
" - Switch on syntax highlighting by adding "syntax enable" to .vimrc.
"
2008-12-20 09:09:57 +00:00
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
setlocal iskeyword+=-
syntax case match
syn keyword tmuxAction any current none
syn keyword tmuxBoolean off on
2012-07-16 22:19:13 +00:00
syn keyword tmuxCmds
\ attach[-session] bind[-key] break-pane breakp capture-pane capturep
\ choose-buffer choose-client choose-list choose-session choose-tree
\ choose-window clear-history clearhist clock-mode command-prompt
\ confirm[-before] copy-mode delete-buffer deleteb detach[-client]
\ display[-message] display-panes displayp find-window findw
\ has[-session] if[-shell] join-pane joinp kill-pane killp kill-server
\ kill-session kill-window killw last-pane lastp last[-window]
\ link-window linkw list-buffers lsb list-clients lsc
\ list-commands lscm list-keys lsk list-panes lsp list-sessions ls
\ list-windows lsw load-buffer loadb lock-client lockc lock[-server]
\ lock-session locks move-pane movep move-window movew new[-session]
\ next-layout nextl next[-window] paste-buffer pasteb pipe-pane pipep
\ previous-layout prevl prev[ious-window] refresh[-client]
\ rename[-session] rename-window renamew resize-pane resizep
\ respawn-pane respawnp respawn-window respawnw rotate-window rotatew
\ run[-shell] save-buffer saveb select-layout selectl
\ select-pane selectp select-window selectw send[-keys] send-prefix
\ server-info info set-buffer setb set-environment setenv set[-option]
\ set-window-option setw show-buffer showb show-environment showenv
\ show-messages showmsgs show[-options] show-window-options showw
\ source[-file] split-window splitw start[-server]
\ suspend-client suspendc swap-pane swapp swap-window swapw
\ switch-client switchc unbind[-key] unlink-window unlinkw wait[-for]
2008-12-20 09:09:57 +00:00
2012-07-16 22:19:13 +00:00
syn keyword tmuxOptsSet
\ buffer-limit escape-time exit-unattached exit-unattached focus-events
\ quiet set-clipboard
\ assume-paste-time base-index bell-action bell-on-alert default-command
2012-07-16 22:19:13 +00:00
\ default-shell default-terminal destroy-unattached detach-on-destroy
\ display-panes-active-colour display-panes-colour display-panes-time
\ display-time history-limit lock-after-time lock-command lock-server
\ message-command-style message-limit message-style mouse-resize-pane
\ mouse-select-pane mouse-select-window mouse-utf8
\ pane-active-border-style pane-border-style prefix prefix2
2012-07-16 22:19:13 +00:00
\ renumber-windows repeat-time set-remain-on-exit set-titles
\ set-titles-string status status-interval status-justify status-keys
\ status-left status-left-length status-left-style status-position
\ status-right status-right-length staus-right-style status-utf8
\ terminal-overrides update-environment visual-activity visual-bell
\ visual-content visual-silence word-separators
2008-12-20 09:09:57 +00:00
2012-07-16 22:19:13 +00:00
syn keyword tmuxOptsSetw
\ aggressive-resize allow-rename alternate-screen automatic-rename
2012-07-16 22:19:13 +00:00
\ c0-change-interval c0-change-trigger clock-mode-colour
\ clock-mode-style force-height force-width force-height
\ force-width main-pane-height main-pane-width mode-keys
\ mode-mouse mode-style monitor-activity monitor-content monitor-silence
2012-07-16 22:19:13 +00:00
\ other-pane-height other-pane-width pane-base-index remain-on-exit
\ synchronize-panes utf8 window-status-activity-style
\ window-status-bell-style window-status-content-style
\ window-status-current-format window-status-current-style
\ window-status-format window-status-last-style window-status-separator
\ window-status-style wrap-search xterm-keys
2008-12-20 09:09:57 +00:00
syn keyword tmuxTodo FIXME NOTE TODO XXX contained
syn match tmuxKey /\(C-\|M-\|\^\)\+\S\+/ display
2008-12-20 09:09:57 +00:00
syn match tmuxNumber /\d\+/ display
syn match tmuxOptions /\s-\a\+/ display
2008-12-20 09:09:57 +00:00
syn match tmuxVariable /\w\+=/ display
syn match tmuxVariableExpansion /\${\=\w\+}\=/ display
syn region tmuxComment start=/#/ end=/$/ contains=tmuxTodo display oneline
syn region tmuxString start=/"/ end=/"/ display oneline
syn region tmuxString start=/'/ end=/'/ display oneline
hi def link tmuxAction Boolean
hi def link tmuxBoolean Boolean
hi def link tmuxCmds Keyword
hi def link tmuxComment Comment
hi def link tmuxKey Special
hi def link tmuxNumber Number
hi def link tmuxOptions Identifier
hi def link tmuxOptsSet Function
hi def link tmuxOptsSetw Function
2008-12-20 09:09:57 +00:00
hi def link tmuxString String
hi def link tmuxTodo Todo
hi def link tmuxVariable Constant
hi def link tmuxVariableExpansion Constant
let b:current_syntax = "tmux"