From b436f74ce94928b13cd6d52799d0e04403af14e2 Mon Sep 17 00:00:00 2001 From: adamstuck Date: Sat, 2 Oct 2021 19:57:23 +0200 Subject: setup neovim --- .config/nvim/init.vim | 156 +++++++------------------------------------------- 1 file changed, 22 insertions(+), 134 deletions(-) (limited to '.config/nvim') diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index 87701e0..ed02ddf 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -1,172 +1,60 @@ -" URL: https://vim.wikia.com/wiki/Example_vimrc -" Authors: https://vim.wikia.com/wiki/Vim_on_Libera_Chat -" Description: A minimal, but feature rich, example .vimrc. If you are a -" newbie, basing your first .vimrc on this file is a good choice. -" If you're a more advanced user, building your own .vimrc based -" on this file is still a good idea. - -"------------------------------------------------------------ -" Features {{{1 -" -" These options and commands enable some very useful features in Vim, that -" no user should have to live without. - -" Set 'nocompatible' to ward off unexpected things that your distro might -" have made, as well as sanely reset options when re-sourcing .vimrc -set nocompatible - -" Attempt to determine the type of a file based on its name and possibly its -" contents. Use this to allow intelligent auto-indenting for each filetype, -" and for plugins that are filetype specific. if has('filetype') filetype indent plugin on endif -" Enable syntax highlighting if has('syntax') syntax on endif -"------------------------------------------------------------ -" Must have options {{{1 -" -" These are highly recommended options. +if has('mouse') + set mouse=a +endif -" Vim with default settings does not allow easy switching between multiple files -" in the same editor window. Users can use multiple split windows or multiple -" tab pages to edit multiple files, but it is still best to enable an option to -" allow easier switching between files. -" -" One such option is the 'hidden' option, which allows you to re-use the same -" window and switch from an unsaved buffer without saving it first. Also allows -" you to keep an undo history for multiple files when re-using the same window -" in this way. Note that using persistent undo also lets you undo in multiple -" files even in the same window, but is less efficient and is actually designed -" for keeping undo history after closing Vim entirely. Vim will complain if you -" try to quit without saving, and swap files will keep you safe if your computer -" crashes. set hidden - -" Note that not everyone likes working this way (with the hidden option). -" Alternatives include using tabs or split windows instead of re-using the same -" window as mentioned above, and/or either of the following options: -" set confirm -" set autowriteall - -" Better command-line completion set wildmenu - -" Show partial commands in the last line of the screen set showcmd - -" Highlight searches (use to temporarily turn off highlighting; see the -" mapping of below) set hlsearch - -" Modelines have historically been a source of security vulnerabilities. As -" such, it may be a good idea to disable them and use the securemodelines -" script, . -" set nomodeline - - -"------------------------------------------------------------ -" Usability options {{{1 -" -" These are options that users frequently set in their .vimrc. Some of them -" change Vim's behaviour in ways which deviate from the true Vi way, but -" which are considered to add usability. Which, if any, of these options to -" use is very much a personal preference, but they are harmless. - -" Use case insensitive search, except when using capital letters set ignorecase set smartcase - -" Allow backspacing over autoindent, line breaks and start of insert action set backspace=indent,eol,start - -" When opening a new line and no filetype-specific indenting is enabled, keep -" the same indent as the line you're currently on. Useful for READMEs, etc. set autoindent - -" Stop certain movements from always going to the first character of a line. -" While this behaviour deviates from that of Vi, it does what most users -" coming from other editors would expect. set nostartofline - -" Display the cursor position on the last line of the screen or in the status -" line of a window set ruler set laststatus=0 - -" Instead of failing a command because of unsaved changes, instead raise a -" dialogue asking if you wish to save changed files. set confirm - -" Use visual bell instead of beeping when doing something wrong set visualbell - -" And reset the terminal code for the visual bell. If visualbell is set, and -" this line is also included, vim will neither flash nor beep. If visualbell -" is unset, this does nothing. -set t_vb= - -" Enable use of the mouse for all modes -if has('mouse') - set mouse=a -endif - -" Set the command window height to 2 lines, to avoid many cases of having to -" "press to continue" set cmdheight=2 - -" Display line numbers on the left set number set relativenumber - -" Quickly time out on keycodes, but never time out on mappings set notimeout ttimeout ttimeoutlen=200 - -" Use to toggle between 'paste' and 'nopaste' set pastetoggle= - - - -"------------------------------------------------------------ -" Indentation options {{{1 -" -" Indentation settings according to personal preference. - -" Indentation settings for using 4 spaces instead of tabs. -" Do not change 'tabstop' from its default value of 8 with this setup. set shiftwidth=4 set softtabstop=4 set expandtab +set incsearch -" Indentation settings for using hard tabs for indent. Display tabs as -" four characters wide. -"set shiftwidth=4 -"set tabstop=4 - - -"------------------------------------------------------------ -" Mappings {{{1 -" -" Useful mappings - -" Map Y to act like D and C, i.e. to yank until EOL, rather than act as yy, -" which is the default map Y y$ - -" Map (redraw screen) to also turn off search highlighting until the -" next search nnoremap :nohl - nnoremap n nzzzv nnoremap N Nzzzv -colorscheme default -highlight CursorLineNr cterm=bold ctermfg=Yellow -highlight LineNr ctermfg=Brown +" inoremap kj +inoremap , ,u +inoremap . .u +inoremap [ [u +inoremap ! !u +inoremap ? ?u + +nnoremap k (v:count > 5 ? "m'" . v:count : "") . 'k' +nnoremap j (v:count > 5 ? "m'" . v:count : "") . 'j' +nnoremap + +call plug#begin() +Plug 'gruvbox-community/gruvbox' +call plug#end() -"------------------------------------------------------------ +colorscheme gruvbox +highlight CursorLineNr cterm=bold ctermfg=Yellow ctermbg=none +highlight Normal ctermbg=none +let mapleader=" " -- cgit v1.2.3-70-g09d2