summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Kiryukhin <a.kiryukhin@mail.ru>2021-08-31 03:26:52 +0300
committerAlexander Kiryukhin <a.kiryukhin@mail.ru>2021-08-31 03:26:52 +0300
commit0e248d1e44d9f41f90a3bbab1bec84bd7dafd5ff (patch)
tree5e97312fe0fae14c9675fca93574d0f5bc357bb1
Initial
-rw-r--r--git/config139
-rw-r--r--git/ignore29
-rwxr-xr-xinstall.sh7
-rw-r--r--nvim/coc-settings.json9
-rw-r--r--nvim/init.vim105
5 files changed, 289 insertions, 0 deletions
diff --git a/git/config b/git/config
new file mode 100644
index 0000000..ffab2d5
--- /dev/null
+++ b/git/config
@@ -0,0 +1,139 @@
+[user]
+ name = Alexander Kiryukhin
+ email = a.kiryukhin@mail.ru
+ signingkey = 1F234ED9217CA16DE1ACBA686DF7A2910D0699E9
+
+[alias]
+ co = checkout
+ ci = commit
+ st = status
+ br = branch
+ hist = log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short
+ type = cat-file -t
+ dump = cat-file -p
+
+[http]
+ sslVerify = false
+
+[commit]
+ gpgsign = true
+ verbose = true
+
+[branch]
+ autosetuprebase = always
+
+[help]
+ autocorrect = 1
+
+[filter "media"]
+ clean = git-media-clean %f
+ smudge = git-media-smudge %f
+
+[remote "origin"]
+ fetch = +refs/pull/*/head:refs/remotes/origin/pull/*
+
+[receive]
+ fsckObjects = true
+
+[filter "lfs"]
+ clean = git-lfs clean -- %f
+ smudge = git-lfs smudge -- %f
+ process = git-lfs filter-process
+ required = true
+
+[rebase]
+ autoStash = true
+
+[pull]
+ rebase = true
+ recurseSubmodules = on-demand
+
+[fetch]
+ prune = true
+ pruneTags = true
+ output = full
+
+[core]
+ preloadindex = true
+ excludesfile = ~/.gitignore
+ trustctime = false
+ commitGraph = true
+
+[color]
+ ui = auto
+
+[color "diff"]
+ meta = yellow bold
+ commit = green bold
+ frag = magenta bold
+ old = red bold
+ new = green bold
+ whitespace = red reverse
+
+[color "diff-highlight"]
+ oldNormal = red bold
+ oldHighlight = red bold 52
+ newNormal = green bold
+ newHighlight = green bold 22
+
+[color "branch"]
+ current = yellow reverse
+ local = yellow
+ remote = green
+
+[color "status"]
+ added = yellow
+ changed = green
+ untracked = cyan
+
+[diff]
+ indentHeuristic = true
+ algorithm = histogram
+ tool = vimdiff
+
+[log]
+ date = local
+
+[rerere]
+ enabled = true
+
+[pager]
+ color = true
+
+[status]
+ color = true
+ submodulesummary = true
+
+[sendemail]
+ smtpserver = smtp.mail.ru
+ smtpuser = a.kiryukhin@mail.ru
+ smtpserverport = 25
+ smtpencryption = tls
+
+[init]
+ defaultBranch = master
+
+[pager]
+ diff = delta
+ log = delta
+ reflog = delta
+ show = delta
+
+[interactive]
+ diffFilter = delta --color-only --features=interactive
+
+[delta]
+ features = decorations
+
+[delta "interactive"]
+ keep-plus-minus-markers = false
+
+[delta "decorations"]
+ commit-decoration-style = blue ol
+ commit-style = raw
+ file-style = omit
+ hunk-header-decoration-style = blue box
+ hunk-header-file-style = red
+ hunk-header-line-number-style = "#067a00"
+ hunk-header-style = file line-number syntax
+
diff --git a/git/ignore b/git/ignore
new file mode 100644
index 0000000..b055bbe
--- /dev/null
+++ b/git/ignore
@@ -0,0 +1,29 @@
+# Packages
+*.7z
+*.dmg
+*.gz
+*.iso
+*.jar
+*.rar
+*.tar
+*.zip
+
+# Logs and databases
+*.log
+*.sqlite
+
+# OS generated files
+.DS_Store
+.DS_Store?
+._*
+.Spotlight-V100
+.Trashes
+Icon?
+ehthumbs.db
+Thumbs.db
+
+# VS Code
+.vscode
+
+# Ides
+.Idea
diff --git a/install.sh b/install.sh
new file mode 100755
index 0000000..b37e886
--- /dev/null
+++ b/install.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+
+ln -s $(pwd)/nvim ${HOME}/.config/nvim
+ln -s $(pwd)/git/config ${HOME}/.gitconfig
+ln -s $(pwd)/git/ignore ${HOME}/.gitignore
+ln -s $(pwd)/zsh/zsh ${HOME}/.oh-my-zsh
+ln -s $(pwd)/zsh/zshrc ${HOME}/.zshrc
diff --git a/nvim/coc-settings.json b/nvim/coc-settings.json
new file mode 100644
index 0000000..cbac8e1
--- /dev/null
+++ b/nvim/coc-settings.json
@@ -0,0 +1,9 @@
+{
+ "languageserver": {
+ "golang": {
+ "command": "gopls",
+ "rootPatterns": ["go.mod", ".vim/", ".git/", ".hg/"],
+ "filetypes": ["go"]
+ }
+ }
+}
diff --git a/nvim/init.vim b/nvim/init.vim
new file mode 100644
index 0000000..a590715
--- /dev/null
+++ b/nvim/init.vim
@@ -0,0 +1,105 @@
+call plug#begin('~/.vim/plugged')
+
+Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
+Plug 'junegunn/fzf.vim'
+Plug 'scrooloose/nerdtree'
+Plug 'fatih/vim-go'
+Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}
+
+call plug#end()
+
+set noeb vb t_vb=
+let mapleader = ','
+let g:go_def_mode='gopls'
+let g:go_info_mode='gopls'
+set colorcolumn=160
+
+
+
+set number relativenumber
+set nu rnu
+set tabstop=4
+set shiftwidth=0
+set softtabstop=-1
+set expandtab
+set autoindent
+set cursorline
+syntax enable
+nnoremap <silent> <cr> :noh<CR><CR>
+
+" autocmd vimenter * NERDTree
+
+" -------------------------------------------------------------------------------------------------
+" coc.nvim default settings
+" -------------------------------------------------------------------------------------------------
+
+" if hidden is not set, TextEdit might fail.
+set hidden
+" Better display for messages
+set cmdheight=2
+" Smaller updatetime for CursorHold & CursorHoldI
+set updatetime=300
+" don't give |ins-completion-menu| messages.
+set shortmess+=c
+" always show signcolumns
+set signcolumn=yes
+
+" Use tab for trigger completion with characters ahead and navigate.
+" Use command ':verbose imap <tab>' to make sure tab is not mapped by other plugin.
+inoremap <silent><expr> <TAB>
+ \ pumvisible() ? "\<C-n>" :
+ \ <SID>check_back_space() ? "\<TAB>" :
+ \ coc#refresh()
+inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
+
+function! s:check_back_space() abort
+ let col = col('.') - 1
+ return !col || getline('.')[col - 1] =~# '\s'
+endfunction
+
+" Use <c-space> to trigger completion.
+inoremap <silent><expr> <c-space> coc#refresh()
+
+" Use `[c` and `]c` to navigate diagnostics
+nmap <silent> [c <Plug>(coc-diagnostic-prev)
+nmap <silent> ]c <Plug>(coc-diagnostic-next)
+
+" Remap keys for gotos
+nmap <silent> gd <Plug>(coc-definition)
+nmap <silent> gy <Plug>(coc-type-definition)
+nmap <silent> gi <Plug>(coc-implementation)
+nmap <silent> gr <Plug>(coc-references)
+
+" Use U to show documentation in preview window
+nnoremap <silent> U :call <SID>show_documentation()<CR>
+
+" Remap for rename current word
+nmap <leader>rn <Plug>(coc-rename)
+
+" Remap for format selected region
+vmap <leader>f <Plug>(coc-format-selected)
+nmap <leader>f <Plug>(coc-format-selected)
+" Show all diagnostics
+nnoremap <silent> <space>u :<C-u>CocList diagnostics<cr>
+" Manage extensions
+nnoremap <silent> <space>e :<C-u>CocList extensions<cr>
+" Show commands
+nnoremap <silent> <space>c :<C-u>CocList commands<cr>
+" Find symbol of current document
+nnoremap <silent> <space>o :<C-u>CocList outline<cr>
+" Search workspace symbols
+nnoremap <silent> <space>s :<C-u>CocList -I symbols<cr>
+" Do default action for next item.
+nnoremap <silent> <space>j :<C-u>CocNext<CR>
+" Do default action for previous item.
+nnoremap <silent> <space>k :<C-u>CocPrev<CR>
+" Resume latest coc list
+nnoremap <silent> <space>p :<C-u>CocListResume<CR>
+
+" disable vim-go :GoDef short cut (gd)
+" this is handled by LanguageClient [LC]
+let g:go_def_mapping_enabled = 0
+
+
+
+