Files
stormux/x86_64/airootfs/etc/skel.stormux/.vimrc
2025-11-29 03:54:28 -05:00

78 lines
2.3 KiB
VimL

" ~/.vimrc
" Vim configuration for Stormux
" Ensure vim directory structure exists
" mkdir -p ~/.vim/{backup,swap,views}
set nocompatible " Use Vim settings (not Vi compatible)
filetype off " Required for some plugins
" Terminal and encoding
set term=linux " Make arrow and other keys work
scriptencoding utf-8
" History and undo
set history=1000 " Store more history (default is 20)
set undoreload=10000 " Maximum lines to save for undo on buffer reload
" Backup and swap file configuration
set backup " Enable backups
set backupdir=$HOME/.vim/backup//
set directory=$HOME/.vim/swap//
set viewdir=$HOME/.vim/views//
" Search settings
set ignorecase " Case insensitive search
set smartcase " Case sensitive when uppercase present
set gdefault " /g flag on :s substitutions by default
" Spell checking
set spell " Enable spell checking
" Display settings
set wrap " Wrap long lines
set linebreak " Break lines at word boundaries
set noruler " Disable ruler (for accessibility)
set laststatus=0 " Never show status line
set noshowcmd " Don't show commands in status
" Indentation settings
set shiftwidth=4 " Use indents of 4 spaces
set expandtab " Tabs are spaces, not tabs
set tabstop=4 " An indentation every four columns
set softtabstop=4 " Let backspace delete indent
" Leader key
let mapleader = ','
" Remap semicolon to colon for easier commands
nnoremap ; :
" Yank from cursor to end of line (consistent with C and D)
nnoremap Y y$
" Em-dash insertion
inoremap ,-
" Working directory shortcuts
cmap cwd lcd %:p:h
cmap cd. lcd %:p:h
" Write with sudo if you forgot to open with sudo
cmap w!! w !sudo tee % >/dev/null
" Disable automatic comment continuation
autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
" Load vim helper functions if they exist
if filereadable(expand("~/.vim/dates.vim"))
source ~/.vim/dates.vim
endif
if filereadable(expand("~/.vim/emoji.vim"))
source ~/.vim/emoji.vim
endif
" Enable filetype detection and indenting
filetype plugin indent on