summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris <[email protected]>2020-04-24 15:29:55 -0400
committerChris <[email protected]>2020-04-24 15:29:55 -0400
commit81f3cf18db8d8fbc7a0c63ac7fe3915d7202eee2 (patch)
treed2b23c306d9d96c3c6d1a373ac13093eb69a7b17
parent1688fdbe9dca8ff9eaa674de44b5f336a623b742 (diff)
auto push
-rw-r--r--README.md127
-rw-r--r--general/settings.vim43
-rw-r--r--init.vim4
-rw-r--r--keys/mappings.vim41
-rw-r--r--themes/onedark.vim23
-rw-r--r--vim-plug/plugins.vim11
6 files changed, 121 insertions, 128 deletions
diff --git a/README.md b/README.md
deleted file mode 100644
index afb15dbb..00000000
--- a/README.md
+++ /dev/null
@@ -1,127 +0,0 @@
-# Nvim
-
-Plugging my [blog](chrisatmachine.com)
-Plugging my [YouTube channel](https://www.youtube.com/channel/UCS97tchJDq17Qms3cux8wcA)
-
-## Install
-
-Dependencies:
-
-- neovim
-- Node
-- Python3
-- Ripgrep
-- fzf
-- ranger
-- hack-nerd-font
-- ranger
-- universal-ctags
-
-### Install dependencies On MacOS
-
-```
-brew install node
-brew install neovim
-brew install ripgrep
-brew install fzf
-brew tap homebrew/cask-fonts
-brew cask install font-hack-nerd-font
-brew install ranger
-brew install --HEAD universal-ctags/universal-ctags/universal-ctags
-```
-
-### Install dependencies on Linux
-
-I assume you can figure it out based on the requirements smart guy
-
-### Setting Node path and Python3 path
-
-#### pythonpath
-
-Create `modules/pythonpath.vim` and point it to a version of python that has neovim installed
-
-example:
-
-```
-let g:python3_host_prog = expand("~/.miniconda/envs/neovim/bin/python3.8")
-```
-
-#### nodepath for Coc
-
-Create `modules/nodepath.vim` and point it to a version of python that has neovim installed
-
-example:
-
-```
-let g:coc_node_path = expand("~/.nvm/versions/node/v12.16.1/bin/node")
-let g:node_host_prog = expand("~/.nvm/versions/node/v12.16.1/bin/node")
-```
-
-## Set up plugin manager
-
-```
-sh ~/.config/nvim/utils/installer.sh ~/.config/nvim/dein
-```
-
-## Install packages
-
-You should now run `nvim` and wait while the package manager installs your plugins
-
-
-## Post install
-
-After install open Neovim and run the following:
-
-```
-:UpdateRemotePlugins
-
-:checkhealth
-```
-
-## CoC Language support
-
-
-You may need to do this if CoC says it can't find Javascript:
-
-```
-cd ~/.cache/dein/repos/github.com/neoclide/coc.nvim
-git clean -xfd
-yarn install --frozen-lockfile
-```
-
-[Official installation page](https://github.com/neoclide/coc.nvim/wiki/Install-coc.nvim)
-[CoC Extensions](https://github.com/neoclide/coc.nvim/wiki/Using-coc-extensions)
-
-## ALE Linting
-
-## Markdown Preview
-
-I had to cd into `dein/repos/github.com/iamcco/markdown-preview.nvim/`
-
-and run 'npx yarn install'
-
-## TODO
-
-- make better use of ftplugin
-- Document node nonsense in order to install coc
-- configure coc settings better
-- need formatter for other languages
-- set up ale
-- Java support for Lombock, figured it out on work machine
-- Need support for image in current ranger implementation
-- https://github.com/kevinhwang91/rnvimr (Note Ueberzug doesn't work on mac which sucks, also neither does this plugin)
-- Check out more coc extensions
-- https://github.com/voldikss/coc-todolist
-- VimWiki
-- coc explorer and coc floating terminal are pretty cool
-- look into save vim sessions
-- create keymap file and move combinations from general
-- ultisnips for autogenerate front matter with data and stuff
-- setup blog with vimwiki
-- vimwiki hijacks my TAB complete in md files so I'm disabling [link to issue](https://github.com/vimwiki/vimwiki/issues/353)
-- vimwiki also hijacks conceal level
-
-## Notes
-
-install ripgrep" for gutentags to ignore .gitignore
-If you get an error like this: `gutentags: ctags job failed, returned:` remove the tags directory in `~/.cache`
diff --git a/general/settings.vim b/general/settings.vim
new file mode 100644
index 00000000..90d464ef
--- /dev/null
+++ b/general/settings.vim
@@ -0,0 +1,43 @@
+" set leader key
+let g:mapleader = "\<Space>"
+
+syntax enable " Enables syntax highlighing
+set hidden " Required to keep multiple buffers open multiple buffers
+set nowrap " Display long lines as just one line
+set encoding=utf-8 " The encoding displayed
+set pumheight=10 " Makes popup menu smaller
+set fileencoding=utf-8 " The encoding written to file
+set ruler " Show the cursor position all the time
+set cmdheight=2 " More space for displaying messages
+set iskeyword+=- " treat dash separated words as a word text object"
+set mouse=a " Enable your mouse
+set splitbelow " Horizontal splits will automatically be below
+set splitright " Vertical splits will automatically be to the right
+set t_Co=256 " Support 256 colors
+set conceallevel=0 " So that I can see `` in markdown files
+set tabstop=2 " Insert 2 spaces for a tab
+set shiftwidth=2 " Change the number of space characters inserted for indentation
+set smarttab " Makes tabbing smarter will realize you have 2 vs 4
+set expandtab " Converts tabs to spaces
+set smartindent " Makes indenting smart
+set autoindent " Good auto indent
+set laststatus=0 " Always display the status line
+set number " Line numbers
+set cursorline " Enable highlighting of the current line
+set background=dark " tell vim what the background color looks like
+set showtabline=2 " Always show tabs
+set noshowmode " We don't need to see things like -- INSERT -- anymore
+set nobackup " This is recommended by coc
+set nowritebackup " This is recommended by coc
+set updatetime=300 " Faster completion
+set timeoutlen=100 " By default timeoutlen is 1000 ms
+set formatoptions-=cro " Stop newline continution of comments
+set clipboard=unnamedplus " Copy paste between vim and everything else
+"set autochdir " Your working directory will always be the same as your working directory
+
+au! BufWritePost $MYVIMRC source % " auto source when writing to init.vm alternatively you can run :source $MYVIMRC
+autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
+
+
+" You can't stop me
+cmap w!! w !sudo tee %
diff --git a/init.vim b/init.vim
index 3c338a03..70fb3def 100644
--- a/init.vim
+++ b/init.vim
@@ -1,2 +1,4 @@
source $HOME/.config/nvim/vim-plug/plugins.vim
-
+source $HOME/.config/nvim/general/settings.vim
+source $HOME/.config/nvim/keys/mappings.vim
+source $HOME/.config/nvim/themes/onedark.vim
diff --git a/keys/mappings.vim b/keys/mappings.vim
new file mode 100644
index 00000000..577df5cf
--- /dev/null
+++ b/keys/mappings.vim
@@ -0,0 +1,41 @@
+" Better nav for omnicomplete
+inoremap <expr> <c-j> ("\<C-n>")
+inoremap <expr> <c-k> ("\<C-p>")
+
+" Use alt + hjkl to resize windows
+nnoremap <M-j> :resize -2<CR>
+nnoremap <M-k> :resize +2<CR>
+nnoremap <M-h> :vertical resize -2<CR>
+nnoremap <M-l> :vertical resize +2<CR>
+
+" I hate escape more than anything else
+inoremap jk <Esc>
+inoremap kj <Esc>
+
+" Easy CAPS
+inoremap <c-u> <ESC>viwUi
+nnoremap <c-u> viwU<Esc>
+
+" TAB in general mode will move to text buffer
+nnoremap <TAB> :bnext<CR>
+" SHIFT-TAB will go back
+nnoremap <S-TAB> :bprevious<CR>
+
+" Alternate way to save
+nnoremap <C-s> :w<CR>
+" Alternate way to quit
+nnoremap <C-Q> :wq!<CR>
+" Use control-c instead of escape
+nnoremap <C-c> <Esc>
+" <TAB>: completion.
+inoremap <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>"
+
+" Better tabbing
+vnoremap < <gv
+vnoremap > >gv
+
+" Better window 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
diff --git a/themes/onedark.vim b/themes/onedark.vim
new file mode 100644
index 00000000..99ad7bb5
--- /dev/null
+++ b/themes/onedark.vim
@@ -0,0 +1,23 @@
+" onedark.vim override: Don't set a background color when running in a terminal;
+if (has("autocmd") && !has("gui_running"))
+ augroup colorset
+ autocmd!
+ let s:white = { "gui": "#ABB2BF", "cterm": "145", "cterm16" : "7" }
+ autocmd ColorScheme * call onedark#set_highlight("Normal", { "fg": s:white }) " `bg` will not be styled since there is no `bg` setting
+ augroup END
+endif
+
+hi Comment cterm=italic
+let g:onedark_hide_endofbuffer=1
+let g:onedark_terminal_italics=1
+let g:onedark_termcolors=256
+
+syntax on
+colorscheme onedark
+
+
+" checks if your terminal has 24-bit color support
+if (has("termguicolors"))
+ set termguicolors
+ hi LineNr ctermbg=NONE guibg=NONE
+endif
diff --git a/vim-plug/plugins.vim b/vim-plug/plugins.vim
index fcab89ea..cb202617 100644
--- a/vim-plug/plugins.vim
+++ b/vim-plug/plugins.vim
@@ -1,3 +1,11 @@
+" auto-install vim-plug
+if empty(glob('~/.config/nvim/autoload/plug.vim'))
+ silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
+ \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
+ "autocmd VimEnter * PlugInstall
+ "autocmd VimEnter * PlugInstall | source $MYVIMRC
+endif
+
call plug#begin('~/.config/nvim/autoload/plugged')
" Better Syntax Support
@@ -6,5 +14,8 @@ call plug#begin('~/.config/nvim/autoload/plugged')
Plug 'scrooloose/NERDTree'
" Auto pairs for '(' '[' '{'
Plug 'jiangmiao/auto-pairs'
+ " Themes
+ Plug 'joshdick/onedark.vim'
+
call plug#end()