aboutsummaryrefslogtreecommitdiff
path: root/.vimrc
diff options
context:
space:
mode:
authorPolesznyák Márk <contact@pml68.dev>2025-11-29 00:21:56 +0100
committerPolesznyák Márk <contact@pml68.dev>2025-11-29 00:36:55 +0100
commit3d340c689b39427f1b29b642baa108d7f5fc39ac (patch)
treed60483635a42e28278bb81c8c199cb5dad03c823 /.vimrc
downloaddotfiles-3d340c689b39427f1b29b642baa108d7f5fc39ac.tar.gz
feat: initial commit
Diffstat (limited to '')
-rw-r--r--.vimrc149
1 files changed, 149 insertions, 0 deletions
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..b56e82c
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,149 @@
+syntax enable
+filetype plugin indent on
+set grepprg=grep\ -nH\ $*
+
+set number
+set relativenumber
+set scrolloff=10
+set nocursorline
+
+set conceallevel=2
+set laststatus=2
+
+set shiftwidth=2
+set tabstop=2
+set softtabstop=2
+set expandtab
+
+set mouse=
+
+set noswapfile
+set nobackup
+
+set magic
+set showmatch
+set nocompatible
+
+set wildmenu
+set wildmode=list:longest,full
+set completeopt=longest,menuone,preview
+set tags=$MYVIMDIR/system.tags,tags
+set omnifunc=syntaxcomplete#Complete
+
+set splitright
+set splitbelow
+set cmdheight=1
+set whichwrap+=<,>,[,]
+set ignorecase
+set smartcase
+set hlsearch
+set incsearch
+set shortmess-=S
+set smartindent
+set autoindent
+
+set encoding=utf8
+try
+ lang en_us
+catch
+endtry
+
+set background=dark
+if has('termguicolors')
+ set termguicolors
+endif
+
+try
+ let g:disable_bg = 1
+ let g:disable_float_bg = 1
+ colorscheme rosepine
+catch /^Vim\%((\a\+)\)\=:E185/
+ colorscheme slate
+endtry
+
+let b:branch_name = ''
+function BranchName()
+ let branch = system("git branch --show-current 2> /dev/null | tr -d '\n'")
+ if branch != ''
+ let b:branch_name=' ' .. branch
+ else
+ let b:branch_name=''
+ endif
+ return b:branch_name
+endfunction
+
+let g:word_count=wordcount().words
+function WordCount()
+ if has_key(wordcount(),'visual_words')
+ let g:word_count=wordcount().visual_words."/".wordcount().words
+ else
+ let g:word_count=wordcount().cursor_words."/".wordcount().words
+ endif
+ return g:word_count
+endfunction
+
+set statusline=
+set statusline=\ %<\ %f\ %{BranchName()}\ %m\ %=\ [%{&filetype}]\ %l:%c\
+
+if has('unnamedplus')
+ set clipboard=unnamedplus
+else
+ set clipboard=unnamed
+endif
+
+let mapleader = ' '
+let g:mapleader = ' '
+
+map <C-a>v :vert term<cr>
+map <C-a>- :term<cr>
+map <C-j> <C-W>j
+map <C-k> <C-W>k
+map <C-h> <C-W>h
+map <C-l> <C-W>l
+tnoremap <Esc> <C-\><C-n>
+tmap <C-j> <C-\><C-n><C-W>j
+tmap <C-k> <C-\><C-n><C-W>k
+tmap <C-h> <C-\><C-n><C-W>h
+tmap <C-l> <C-\><C-n><C-W>l
+
+map n nzz
+map N Nzz
+
+nnoremap <cr> :nohl<cr>
+nnoremap <leader>e :Ex<cr>
+nnoremap F =ap
+nnoremap <leader>rc :e $MYVIMRC<cr>
+nnoremap <leader><leader> :!chmod 755 %<cr>
+
+inoremap <C-o> <C-x><C-o>
+nnoremap <leader>gd <C-]>
+nnoremap <leader>x :bw<cr>
+nnoremap <leader>n :bn<cr>
+nnoremap <leader>p :bp<cr>
+
+nnoremap <Esc>J :m .+1<cr>==
+nnoremap <Esc>K :m .-2<cr>==
+vnoremap J :m '>+1<cr>gv=gv
+vnoremap K :m '<-2<cr>gv=gv
+
+nnoremap <Esc>a <C-a>
+nnoremap <Esc>x <C-x>
+vnoremap > >gv
+vnoremap < <gv
+
+augroup VimRC
+ au!
+ au VimEnter * if expand("%") == "" | e . | endif
+ au BufWritePost .vimrc source $MYVIMRC
+ au FileType make setlocal noexpandtab
+ au FileType markdown,mail {
+ setlocal spell spelllang=en_us
+ setlocal statusline+=\ w:%{WordCount()}
+ nnoremap <C-n> ]s
+ nnoremap <C-p> [s
+ }
+ au FileType cs {
+ setlocal makeprg=dotnet\ run
+ setlocal errorformat=\ %#%f(%l\\\,%c):\ error\ CS%n:\ %m
+ }
+augroup END