Files
swarm-master/ansible/roles/openclaw/templates/vimrc.j2
William Valentin aceeb7b542 Initial commit — OpenClaw VM infrastructure
- ansible/: VM provisioning playbooks and roles
  - provision-vm.yml: create KVM VM from Ubuntu cloud image
  - install.yml: install OpenClaw on guest (upstream)
  - customize.yml: swappiness, virtiofs fstab, linger
  - roles/vm/: libvirt domain XML, cloud-init templates
  - inventory.yml + host_vars/zap.yml: zap instance config
- backup-openclaw-vm.sh: daily rsync + MinIO upload
- restore-openclaw-vm.sh: full redeploy from scratch
- README.md: full operational documentation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 12:18:31 -07:00

137 lines
4.5 KiB
Django/Jinja

" Vim Configuration - Generated by Ansible
" Modern, practical vim setup for development and debugging
" Basic Settings
set nocompatible " Disable vi compatibility
filetype plugin indent on " Enable file type detection
syntax on " Enable syntax highlighting
" UI Settings
set number " Show line numbers
set relativenumber " Show relative line numbers
set ruler " Show cursor position
set showcmd " Show command in bottom bar
set wildmenu " Visual autocomplete for command menu
set showmatch " Highlight matching brackets
set cursorline " Highlight current line
set laststatus=2 " Always show status line
set colorcolumn=80,120 " Show column markers
" Search Settings
set incsearch " Search as characters are entered
set hlsearch " Highlight search results
set ignorecase " Case insensitive search
set smartcase " Case sensitive when uppercase present
" Indentation
set autoindent " Auto-indent new lines
set smartindent " Smart indent
set expandtab " Use spaces instead of tabs
set tabstop=2 " Number of visual spaces per TAB
set shiftwidth=2 " Number of spaces for auto-indent
set softtabstop=2 " Number of spaces in tab when editing
" Performance
set lazyredraw " Don't redraw while executing macros
set ttyfast " Fast terminal connection
" Backups and Undo
set nobackup " No backup files
set nowritebackup " No backup while editing
set noswapfile " No swap files
set undofile " Persistent undo
set undodir=~/.vim/undo " Undo directory
set undolevels=1000 " Maximum number of undos
set undoreload=10000 " Maximum lines to save for undo
" File Handling
set encoding=utf-8 " Use UTF-8 encoding
set fileencoding=utf-8 " File encoding
set autoread " Auto-reload changed files
set hidden " Allow hidden buffers
" Navigation
set scrolloff=8 " Keep 8 lines above/below cursor
set sidescrolloff=8 " Keep 8 columns left/right of cursor
set mouse=a " Enable mouse support
" Folding
set foldmethod=indent " Fold based on indentation
set foldlevel=99 " Open all folds by default
" Status Line
set statusline=%F " Full file path
set statusline+=%m " Modified flag
set statusline+=%r " Read-only flag
set statusline+=%h " Help buffer flag
set statusline+=%w " Preview window flag
set statusline+=%= " Right align
set statusline+=%y " File type
set statusline+=\ [%{&ff}] " File format
set statusline+=\ [%{strlen(&fenc)?&fenc:'none'}] " File encoding
set statusline+=\ %l:%c " Line:Column
set statusline+=\ %p%% " Percentage through file
" Key Mappings
let mapleader = "," " Set leader key to comma
" Quick save
nnoremap <leader>w :w<CR>
" Quick quit
nnoremap <leader>q :q<CR>
" Clear search highlighting
nnoremap <leader><space> :nohlsearch<CR>
" Split navigation
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l
" Tab navigation
nnoremap <leader>tn :tabnew<CR>
nnoremap <leader>tc :tabclose<CR>
nnoremap <leader>1 1gt
nnoremap <leader>2 2gt
nnoremap <leader>3 3gt
nnoremap <leader>4 4gt
nnoremap <leader>5 5gt
" Buffer navigation
nnoremap <leader>bn :bnext<CR>
nnoremap <leader>bp :bprevious<CR>
nnoremap <leader>bd :bdelete<CR>
" Paste toggle
set pastetoggle=<F2>
" File Type Specific
autocmd FileType python setlocal tabstop=4 shiftwidth=4 softtabstop=4
autocmd FileType javascript,typescript,json setlocal tabstop=2 shiftwidth=2 softtabstop=2
autocmd FileType yaml,yml setlocal tabstop=2 shiftwidth=2 softtabstop=2
autocmd FileType go setlocal tabstop=4 shiftwidth=4 softtabstop=4 noexpandtab
autocmd FileType markdown setlocal wrap linebreak nolist
" Auto-create undo directory
if !isdirectory($HOME."/.vim/undo")
call mkdir($HOME."/.vim/undo", "p", 0700)
endif
" Colors
set background=dark
if &term =~ "xterm" || &term =~ "screen"
set t_Co=256
endif
" Highlight trailing whitespace
highlight ExtraWhitespace ctermbg=red guibg=red
match ExtraWhitespace /\s\+$/
" Remember cursor position
autocmd BufReadPost *
\ if line("'\"") > 1 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif