The script genconfig.bash concatenates the main configuration file with
a host specific one to create a session-specific configration file that
is then passed to i3. It therefore has to be called in .xinitrc or
something comparable before starting i3. If no host specific
configuration is found, a default file will be used instead. This is
useful for providing default that should not go into the main
configuration file, maybe because they are incompatible with some host
specific settings. For example a default bar{} block goes there, as if
this was in the main config, two i3bar instances would be started when a
host specific config specifies its own.
164 lines
5.8 KiB
VimL
164 lines
5.8 KiB
VimL
" 01 important
|
|
" 02 moving around, searching and patterns
|
|
" 03 tags
|
|
" 04 displaying text
|
|
" 05 syntax, highlighting and spelling
|
|
" 06 multiple windows
|
|
" 07 multiple tab pages
|
|
" 08 terminal
|
|
" 09 using the mouse
|
|
" 10 printing
|
|
" 11 messages and info
|
|
" 12 selecting text
|
|
" 13 editing text
|
|
" 14 tabs and indenting
|
|
" 15 folding
|
|
" 16 diff mode
|
|
" 17 mapping
|
|
" 18 reading and writing files
|
|
" 19 the swap file
|
|
" 20 command line editing
|
|
" 21 executing external commands
|
|
" 22 running make and jumping to errors
|
|
" 23 language specific
|
|
" 24 multi-byte characters
|
|
" 25 various
|
|
|
|
set nocompatible
|
|
|
|
" setup of vundle
|
|
filetype off
|
|
set rtp+=~/.vim/bundle/vundle/
|
|
call vundle#rc()
|
|
Bundle 'gmarik/vundle'
|
|
|
|
filetype plugin indent on
|
|
|
|
" solarized color theme
|
|
Bundle 'altercation/vim-colors-solarized'
|
|
|
|
" setup for the solarized color theme
|
|
set background=dark
|
|
let g:solarized_termcolors=16
|
|
let g:solarized_termtrans=1
|
|
let g:solarized_contrase="normal"
|
|
let g:solarized_visibility="normal"
|
|
syntax enable
|
|
colorscheme solarized
|
|
|
|
set mouse=a " enable mouse support
|
|
set mousehide " hide the mouse when typing
|
|
|
|
set history=1000 " history length for commands, defaults to
|
|
" 20
|
|
|
|
set nobackup " do not create a backup
|
|
set nowritebackup
|
|
|
|
|
|
set showmode " show the current mode
|
|
set cursorline " highlight the current line
|
|
set number " enable linenumbers
|
|
set numberwidth=2 " only use as many columns for the line
|
|
" numbers as necessary
|
|
set relativenumber " show file numbers relative to the current
|
|
" line instead of absolute ones, but still
|
|
" the absolute linenumber on the current
|
|
" line due to 'number' being set
|
|
set showmatch " show matching brackets/parentheses
|
|
set incsearch " show matches while typing in a search
|
|
set hlsearch " highlight matches in a search
|
|
|
|
set ignorecase " ignore case when only searching for
|
|
" lowercase
|
|
set smartcase " letters, case sensitive otherwis
|
|
|
|
set foldenable " auto-fold code
|
|
|
|
set wrap " wrap text
|
|
set linebreak
|
|
|
|
set backspace=indent,eol,start " allowing backspacing over autoindent,
|
|
" line breaks and start of insert
|
|
|
|
set encoding=utf-8 " set the encoding
|
|
|
|
|
|
set showmode " show current mode in the status line
|
|
|
|
set swapfile " use a swapfile
|
|
set updatecount=200 " default, number of characters that have
|
|
" to be typed before the swapfile is
|
|
" written to disk
|
|
set updatetime=10000 " time in milliseconds after the swapfile
|
|
" is written to disk
|
|
|
|
set title " let vim set the title of the window
|
|
set titlestring="" " use default titlestring
|
|
|
|
|
|
|
|
set autoread " automatically reload a file when it was
|
|
" changed outside of vim
|
|
|
|
set gdefault " apply replace patterns to the whole line
|
|
" by default
|
|
|
|
set tabstop=4 " one tab equals 4 spaces
|
|
set softtabstop=4 " makes the spaces feel like real tabs
|
|
set shiftwidth=4 " one indent level equals 4 spaces
|
|
set expandtab " expand tabs to spaces
|
|
set autoindent " copy indent from current line when
|
|
" starting a new one
|
|
set smartindent " smart indenting for C-like languages
|
|
set smarttab " use shiftwidth when tabbing in front of
|
|
" a line instead of tabsstop/softtabstop
|
|
|
|
set undofile " use an undo file
|
|
set undodir=~/.vim/backups " store undo files in a fixed directory
|
|
" instead of the current directory
|
|
set undolevels=1000 " undo a maximum of 1000 changes
|
|
set undoreload=10000 " save the whole buffer for undo when
|
|
" reloading it
|
|
|
|
|
|
set foldmethod=indent " fold according to indet
|
|
set foldnestmax=2 " fold a maximum of 2 levels
|
|
set nofoldenable " unfold everything by default
|
|
|
|
set scrolloff=4 " show context at the screen edges
|
|
|
|
|
|
set showcmd " show (partial) command in the command line
|
|
set hidden " buffers can exist without a window
|
|
|
|
set ttyfast " enhance smoothness
|
|
set ruler " show position in status line
|
|
|
|
set wildmenu " show a menu when autocompleting
|
|
set wildmode=list:longest " automatically complete up to the level
|
|
" of ambiguity
|
|
|
|
set autochdir " automatically change to the directory that
|
|
" contains the file that is edited
|
|
|
|
let mapleader = ","
|
|
|
|
nnoremap / /\v
|
|
vnoremap / /\v
|
|
nnoremap <leader><space> :noh<cr>
|
|
nnoremap <tab> %
|
|
vnoremap <tab> %
|
|
|
|
nnoremap j gj
|
|
nnoremap k gk
|
|
|
|
function! TrimWhiteSpace()
|
|
%s/\s\+$//e
|
|
endfunction
|
|
|
|
autocmd FileWritePre * :call TrimWhiteSpace()
|
|
autocmd FileAppendPre * :call TrimWhiteSpace()
|
|
autocmd FilterWritePre * :call TrimWhiteSpace()
|
|
autocmd BufWritePre * :call TrimWhiteSpace()
|