diff --git a/README.md b/README.md new file mode 100644 index 0000000..015c7d3 --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +# My Dotfiles + +--- + +Configuration files for windows applications + +- Nvim diff --git a/nvim/README.md b/nvim/README.md new file mode 100644 index 0000000..fc4327b --- /dev/null +++ b/nvim/README.md @@ -0,0 +1,12 @@ +# My Dotfiles ![](https://img.shields.io/badge/config%20for-nvim-blue?style=for-the-badge) + +--- + +My setup for various applications. + +## nvim ๐Ÿš€ + +- with language support for cpp and python +- for coc + - `:CocCommand clangd.install ` (make sure clangd path is added to `:CocConfig`) + - `:CocInstall coc-clangd coc-css coc-emmet coc-eslint coc-html coc-java coc-jedi coc-json coc-lua coc-pairs coc-prettier coc-pyright coc-snippets coc-tsserver coc-vimlsp ` diff --git a/nvim/coc-settings.json b/nvim/coc-settings.json new file mode 100644 index 0000000..9255d36 --- /dev/null +++ b/nvim/coc-settings.json @@ -0,0 +1,34 @@ +{ + "coc.preferences.formatOnSaveFiletypes": [ + "css", + "markdown", + "javascript", + "graphql", + "html", + "yaml", + "json", + "python" + ], + + // python config + "python.linting.enabled": true, + "python.linting.pylintEnabled": true, + + "diagnostic.checkCurrentLine": true, + //"diagnostic.enableMessage": "jump", + "jedi.hover.enable": true, + "hover.target": "float", + "clangd.path": "C:\\Users\\Prashanth T P\\AppData\\Local\\coc\\extensions\\coc-clangd-data\\install\\12.0.1\\clangd_12.0.1\\bin\\clangd.exe", + //html + "html.autoClosingTags": true, + "html.filetypes": ["html", "javascript", "handlebars", "htmldjango", "blade"], + "html.enable": true, + "snippets.extends": { + + "cpp": ["c"], + "javascript":["html"], + "javascriptreact": ["javascript"], + "typescript": ["javascript"] + } + +} diff --git a/nvim/general/general.vim b/nvim/general/general.vim index a9ca9c5..d634802 100644 --- a/nvim/general/general.vim +++ b/nvim/general/general.vim @@ -1,18 +1,29 @@ "General Settings +set mouse=a " CLIPBOARD ----- {{{ "vim clipboard and system clipboard same now set clipboard^=unnamed +set autochdir " }}} -" MODES ----- {{{ -"use jk in insert mode to switch to normal mode -imap jk -" }}} " EDITOR ----- {{{ syntax on +" filetype on +" filetype plugin on +" filetype indent on +set ignorecase +set smartcase +" use 4 spaces for tabs +set tabstop=4 +set softtabstop=4 +set shiftwidth=4 set number relativenumber +" Show white spaces https://gist.github.com/jdavid82/d40f40e6f124aad6223eba0ff0c7ad65#file-vimrc-L37-L39 +"set listchars=tab:>ยท,trail:~,extends:>,precedes:<,space:ยท +"set list " }}} +" " SEARCHING ----- {{{ set nohlsearch @@ -30,8 +41,8 @@ set foldmethod=marker " remember foldings augroup remember_folds autocmd! - autocmd BufWinLeave * mkview - autocmd BufWinEnter * silent! loadview + autocmd BufWinLeave *.* mkview + autocmd BufWinEnter *.* silent! loadview augroup END " }}} @@ -58,3 +69,31 @@ set wildignore+=**/android/* set wildignore+=**/ios/* set wildignore+=**/.git/* " }}} + +" coc needs it----- {{{ +" Set internal encoding of vim, not needed on neovim, since coc.nvim using some +" unicode characters in the file autoload/float.vim +set encoding=utf-8 + +" TextEdit might fail if hidden is not set. +set hidden + +" Some servers have issues with backup files, see #649. +set nobackup +set nowritebackup + +" Give more space for displaying messages. +set cmdheight=2 + +" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable +" delays and poor user experience. +set updatetime=300 +set ttimeoutlen=0 +" Don't pass messages to |ins-completion-menu|. +set shortmess+=c +" }}} +" " show tabline +" set showtabline=2 +" if has('gui_running') + " set guioptions-=e +" endif diff --git a/nvim/general/keybindings.vim b/nvim/general/keybindings.vim index e69de29..b4d68f6 100644 --- a/nvim/general/keybindings.vim +++ b/nvim/general/keybindings.vim @@ -0,0 +1,49 @@ +" MODES ----- {{{ +"use jk in insert mode to switch to normal mode +inoremap jk +" }}} + +" yanking ----- {{{ +"to match the behaviour of 'C' and 'D' +nnoremap Y y$ +"highlight the yanked area for an extened period +augroup highlight_yank + autocmd! + au TextYankPost * silent! lua vim.highlight.on_yank{higroup="IncSearch", timeout=300} +augroup END +" }}} + +" searching : the primeagen : top 5 keybindings ----- {{{ +"put the cursor at screen center while going to next search result +nnoremap n nzz +nnoremap N Nzz + +" }}} +" +" breakpoints ----- {{{ +"puts the next line at the end of current line : mz = create a mark called z , do J, `z = goto mark z +nnoremap J mzJ`z +"undo breakpoints +inoremap . .u +inoremap , ,u +inoremap ! !u +inoremap ? ?u +" }}} +" +" moving lines with ALT key ----- {{{ +"https://vim.fandom.com/wiki/Moving_lines_up_or_down +nnoremap :m .+1== +nnoremap :m .-2== +inoremap :m .+1==gi +inoremap :m .-2==gi +vnoremap :m '>+1gv=gv +vnoremap :m '<-2gv=gv +" }}} + +"htmlhttps://stackoverflow.com/questions/130734/how-can-one-close-html-tags-in-vim-quickly +"inoremap > >Fo">O + +" better indentation ----- {{{ +vnoremap > >gv +vnoremap < sv :source $LOCALAPPDATA/nvim/init.vim nmap so :e $LOCALAPPDATA/nvim/init.vim +" nmap so :vsplit :e $LOCALAPPDATA/nvim/init.vim +nnoremap n :bnext +nnoremap p :bprev +nnoremap b :buffers +nnoremap w w +nnoremap h h +nnoremap l l +nnoremap j j +nnoremap k k + "nmap ws : diff --git a/nvim/init.vim b/nvim/init.vim index 05e2607..51b9beb 100644 --- a/nvim/init.vim +++ b/nvim/init.vim @@ -1,5 +1,16 @@ +let mapleader = "\" + +source $LOCALAPPDATA/nvim/plugs/plugins.vim +source $LOCALAPPDATA/nvim/plugs/coc.vim +source $LOCALAPPDATA/nvim/plugs/markdown.vim source $LOCALAPPDATA/nvim/general/general.vim source $LOCALAPPDATA/nvim/general/leader.vim source $LOCALAPPDATA/nvim/general/keybindings.vim -source $LOCALAPPDATA/nvim/plugs/plugins.vim source $LOCALAPPDATA/nvim/languages/languages.vim +"set path+=* +hi Normal ctermbg=none guibg=none +"wrap backspace +set backspace=indent,eol,start +hi Comment gui=italic cterm=italic +hi htmlArg gui=italic cterm=italic + diff --git a/nvim/languages/languages.vim b/nvim/languages/languages.vim index f2885f9..ef08c77 100644 --- a/nvim/languages/languages.vim +++ b/nvim/languages/languages.vim @@ -1 +1,18 @@ +" python ----- {{{ let g:python3_host_prog = "$PYTHON_HOME/Python/python.exe" +" }}} +" cpp ----- {{{ +"autocmd vimEnter *.cpp map :w :!clear ; g++ --std=c++17 %; if [ -f a.out ]; then time ./a.out; rm a.out; fi +"map :!g++ % -o %:r && \./%:r +" +augroup languages + autocmd! + autocmd filetype cpp nnoremap :w !g++ -std=c++11 -O2 -Wall % -o %:r && %:r.exe + autocmd filetype javascript,javascript_react UltiSnipsAddFiletypes javascript.javascript_react.html +" autocmd FileType javascript_react UltiSnipsAddFiletypes html +" autocmd FileType javascript,javascriptreact,typescript,typescriptreact + " \ UltiSnipsAddFiletypes javascript.javascriptreact.typescript.typescriptreact +augroup END +" +" }}} + diff --git a/nvim/plugs/coc.vim b/nvim/plugs/coc.vim new file mode 100644 index 0000000..c04ab60 --- /dev/null +++ b/nvim/plugs/coc.vim @@ -0,0 +1,107 @@ +" coc ----- {{{ +" Always show the signcolumn, otherwise it would shift the text each time +" diagnostics appear/become resolved. +if has("nvim-0.5.0") || has("patch-8.1.1564") + " Recently vim can merge signcolumn and number column into one + "set signcolumn=number + set signcolumn=yes +else + set signcolumn=yes +endif + +" Use tab for trigger completion with characters ahead and navigate. +" NOTE: Use command ':verbose imap ' to make sure tab is not mapped by +" other plugin before putting this into your config. +inoremap + \ pumvisible() ? "\" : + \ check_back_space() ? "\" : + \ coc#refresh() +inoremap pumvisible() ? "\" : "\" + +function! s:check_back_space() abort + let col = col('.') - 1 + return !col || getline('.')[col - 1] =~# '\s' +endfunction + +" Use to trigger completion. +if has('nvim') + inoremap coc#refresh() +else + inoremap coc#refresh() +endif + +" Make auto-select the first completion item and notify coc.nvim to +" format on enter, could be remapped by other vim plugin +inoremap pumvisible() ? coc#_select_confirm() + \: "\u\\=coc#on_enter()\" + +"let g:coc_snippet_next = '' "tab to go to first suggestion + + +" GoTo code navigation. +nmap gd (coc-definition) +nmap gy (coc-type-definition) +nmap gi (coc-implementation) +nmap gr (coc-references) + +" Use K to show documentation in preview window. +nnoremap K :call show_documentation() + +function! s:show_documentation() + if (index(['vim','help'], &filetype) >= 0) + execute 'h '.expand('') + elseif (coc#rpc#ready()) + call CocActionAsync('doHover') + else + execute '!' . &keywordprg . " " . expand('') + endif +endfunction + +" Highlight the symbol and its references when holding the cursor. +autocmd CursorHold * silent call CocActionAsync('highlight') + +" Symbol renaming. +nmap rn (coc-rename) + +" Formatting selected code. +xmap f (coc-format-selected) +nmap f (coc-format-selected) + +augroup mygroup + autocmd! + " Setup formatexpr specified filetype(s). + autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected') + " Update signature help on jump placeholder. + autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') +augroup end + +" Applying codeAction to the selected region. +" Example: `aap` for current paragraph +xmap a (coc-codeaction-selected) +nmap a (coc-codeaction-selected) + +" Remap keys for applying codeAction to the current buffer. +nmap ac (coc-codeaction) +" Apply AutoFix to problem on the current line. +nmap qf (coc-fix-current) + +" Use CTRL-S for selections ranges. +" Requires 'textDocument/selectionRange' support of language server. +nmap (coc-range-select) +xmap (coc-range-select) + +" Add `:Format` command to format current buffer. +command! -nargs=0 Format :call CocAction('format') + +" Add `:Fold` command to fold current buffer. +command! -nargs=? Fold :call CocAction('fold', ) + +" Add `:OR` command for organize imports of the current buffer. +command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport') + +" Add (Neo)Vim's native statusline support. +" NOTE: Please see `:h coc-status` for integrations with external plugins that +" provide custom statusline: lightline.vim, vim-airline. +set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')} + +"nnoremap q :call CocAction('diagnosticInfo') diff --git a/nvim/plugs/markdown.vim b/nvim/plugs/markdown.vim new file mode 100644 index 0000000..e9610fa --- /dev/null +++ b/nvim/plugs/markdown.vim @@ -0,0 +1,91 @@ +" set to 1, nvim will open the preview window after entering the markdown buffer +" default: 0 +let g:mkdp_auto_start = 0 + +" set to 1, the nvim will auto close current preview window when change +" from markdown buffer to another buffer +" default: 1 +let g:mkdp_auto_close = 1 + +" set to 1, the vim will refresh markdown when save the buffer or +" leave from insert mode, default 0 is auto refresh markdown as you edit or +" move the cursor +" default: 0 +let g:mkdp_refresh_slow = 0 + +" set to 1, the MarkdownPreview command can be use for all files, +" by default it can be use in markdown file +" default: 0 +let g:mkdp_command_for_global = 0 + +" set to 1, preview server available to others in your network +" by default, the server listens on localhost (127.0.0.1) +" default: 0 +let g:mkdp_open_to_the_world = 0 + +" use custom IP to open preview page +" useful when you work in remote vim and preview on local browser +" more detail see: https://github.com/iamcco/markdown-preview.nvim/pull/9 +" default empty +let g:mkdp_open_ip = '' + +" specify browser to open preview page +" default: '' +let g:mkdp_browser = '' + +" set to 1, echo preview page url in command line when open preview page +" default is 0 +let g:mkdp_echo_preview_url = 0 + +" a custom vim function name to open preview page +" this function will receive url as param +" default is empty +let g:mkdp_browserfunc = '' + +" options for markdown render +" mkit: markdown-it options for render +" katex: katex options for math +" uml: markdown-it-plantuml options +" maid: mermaid options +" disable_sync_scroll: if disable sync scroll, default 0 +" sync_scroll_type: 'middle', 'top' or 'relative', default value is 'middle' +" middle: mean the cursor position alway show at the middle of the preview page +" top: mean the vim top viewport alway show at the top of the preview page +" relative: mean the cursor position alway show at the relative positon of the preview page +" hide_yaml_meta: if hide yaml metadata, default is 1 +" sequence_diagrams: js-sequence-diagrams options +" content_editable: if enable content editable for preview page, default: v:false +" disable_filename: if disable filename header for preview page, default: 0 +let g:mkdp_preview_options = { + \ 'mkit': {}, + \ 'katex': {}, + \ 'uml': {}, + \ 'maid': {}, + \ 'disable_sync_scroll': 0, + \ 'sync_scroll_type': 'middle', + \ 'hide_yaml_meta': 1, + \ 'sequence_diagrams': {}, + \ 'flowchart_diagrams': {}, + \ 'content_editable': v:false, + \ 'disable_filename': 0 + \ } + +" use a custom markdown style must be absolute path +" like '/Users/username/markdown.css' or expand('~/markdown.css') +let g:mkdp_markdown_css = '' + +" use a custom highlight style must absolute path +" like '/Users/username/highlight.css' or expand('~/highlight.css') +let g:mkdp_highlight_css = '' + +" use a custom port to start server or random for empty +let g:mkdp_port = '' + +" preview page title +" ${name} will be replace with the file name +let g:mkdp_page_title = 'ใ€Œ${name}ใ€' + +" recognized filetypes +" these filetypes will have MarkdownPreview... commands +let g:mkdp_filetypes = ['markdown'] + diff --git a/nvim/plugs/plugins.vim b/nvim/plugs/plugins.vim index 3a5001f..b2436c8 100644 --- a/nvim/plugs/plugins.vim +++ b/nvim/plugs/plugins.vim @@ -1,10 +1,10 @@ -call plug#begin("$VIM/nvim/plugged") - +" plugins ----- {{{ +call plug#begin("$VIM/nvim/plugged") Plug 'morhetz/gruvbox' Plug 'preservim/nerdtree' Plug 'tiagofumo/vim-nerdtree-syntax-highlight' -Plug 'Xuyuanp/nerdtree-git-plugin' +Plug 'tpope/vim-fugitive' Plug 'ryanoasis/vim-devicons' " Track the engine. @@ -12,11 +12,11 @@ Plug 'SirVer/ultisnips' " Snippets are separated from the engine. Add this if you want them: Plug 'honza/vim-snippets' -Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } -Plug 'junegunn/fzf.vim' +"Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } +"Plug 'junegunn/fzf.vim' Plug 'neoclide/coc.nvim', {'branch': 'release'} -Plug 'w0rp/ale' +"Plug 'w0rp/ale' Plug 'sheerun/vim-polyglot' Plug 'itchyny/lightline.vim' @@ -25,16 +25,27 @@ Plug 'preservim/nerdcommenter' Plug 'tpope/vim-surround' -Plug 'mhinz/vim-startify' +"Plug 'mhinz/vim-startify' + +"Plug 'jlanzarotta/bufexplorer' +" If you have nodejs and yarn +"Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app && yarn install' } +" +" If you don't have nodejs and yarn +" use pre build, add 'vim-plug' to the filetype list so vim-plug can update this plugin +" see: https://github.com/iamcco/markdown-preview.nvim/issues/50 +Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vim-plug']} call plug#end() +" }}} " UltiSnips ----- {{{ " Trigger configuration. Do not use if you use https://github.com/Valloric/YouCompleteMe. -let g:UltiSnipsExpandTrigger="" -let g:UltiSnipsJumpForwardTrigger="" -let g:UltiSnipsJumpBackwardTrigger="" +"let g:UltiSnipsExpandTrigger="" +let g:UltiSnipsExpandTrigger = '' "to aviod overlapping with coc mapping +"let g:UltiSnipsJumpForwardTrigger="" +"let g:UltiSnipsJumpBackwardTrigger="" " }}} " gruvbox ----- {{{ @@ -43,20 +54,22 @@ if (has("termguicolors")) endif set background=dark colorscheme gruvbox - +au Colorscheme gruvbox :hi Keyword gui=italic cterm=italic " }}} " NERDTree ----- {{{ let g:NERDTreeShowHidden = 1 let g:NERDTreeMinimalUI = 1 " hide helper -let g:NERDTreeIgnore = ['^node_modules$'] " ignore node_modules to increase load speed +let g:NERDTreeIgnore = ['^node_modules$','\.git$', '\.idea$', '\.vscode$', '\.history$'] " ignore node_modules to increase load speed let g:NERDTreeStatusline = '' " set to empty to use lightline " " Toggle -noremap :NERDTreeToggle +"noremap :NERDTreeToggle +nnoremap t :NERDTreeToggle +nnoremap y :NERDTreeFind :vertical resize 35 " " Close window if NERDTree is the last one autocmd BufEnter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif " " Map to open current file in NERDTree and set size -nnoremap pv :NERDTreeFind :vertical resize 45 +"nnoremap pv :NERDTreeFind :vertical resize 45 " NERDTree Syntax Highlight " " Enables folder icon highlighting using exact match @@ -100,7 +113,7 @@ let g:WebDevIconsDefaultFolderSymbolColor = s:beige let g:WebDevIconsDefaultFileSymbolColor = s:blue " NERDTree Git Plugin -let g:NERDTreeIndicatorMapCustom = { +let g:NERDTreeGitStatusIndicatorMapCustom = { \ "Modified" : "โœน", \ "Staged" : "โœš", \ "Untracked" : "โœญ", @@ -114,26 +127,20 @@ let g:NERDTreeIndicatorMapCustom = { \ } " }}} -" fzf ----- {{{ -" put search prompt at the top -let $FZF_DEFAULT_OPTS ='--reverse' -nnoremap :Files -let g:fzf_action = { - \ 'ctrl-t': 'tab split', - \ 'ctrl-s': 'split', - \ 'ctrl-v': 'vsplit' - \} +" SUPPRESS WARNINGS ----- {{{ +"autocmd VimEnter * unlet g:NERDTreeUpdateOnCursorHold +"autocmd VimEnter * unlet g:NERDTreeIndicatorMapCustom " }}} -" lightline ----- {{{ -" Lightline -let g:lightline = { - \ 'colorscheme': 'powerlineish', - \ 'active': { - \ 'left': [['mode', 'paste' ], ['readonly', 'filename', 'modified']], - \ 'right': [['lineinfo'], ['percent'], ['fileformat', 'fileencoding']] - \ } - \ } +" fzf ----- {{{ +" put search prompt at the top +" let $FZF_DEFAULT_OPTS ='--reverse' +" nnoremap :Files +" let g:fzf_action = { + " \ 'ctrl-t': 'tab split', + " \ 'ctrl-s': 'split', + " \ 'ctrl-v': 'vsplit' + " \} " }}} " Nerd Commenter ----- {{{ @@ -155,105 +162,45 @@ nmap NERDCommenterToggle " ALE ----- {{{ " ALE (Asynchronous Lint Engine) -let g:ale_fixers = { - \ 'javascript': ['eslint'] - \ } -let g:ale_sign_error = 'โŒ' -let g:ale_sign_warning = 'โš ๏ธ' -let g:ale_fix_on_save = 1 +" let g:ale_fixers = { + " \ 'javascript': ['eslint'] + " \ } +" let g:ale_sign_error = 'โŒ' +" let g:ale_sign_warning = 'โš ๏ธ' +" let g:ale_fix_on_save = 1 " }}} -" COC ----- {{{ -" COC extension -let g:coc_user_config = {} -let g:coc_global_extensions = [ - \ 'coc-emmet', - \ 'coc-css', - \ 'coc-html', - \ 'coc-json', - \ 'coc-prettier', - \ 'coc-tsserver', - \ 'coc-snippets', - \ 'coc-eslint'] -" " To go back to previous state use Ctrl+O -nmap gd (coc-definition) -nmap gy (coc-type-definition) -nmap gi (coc-implementation) -nmap gr (coc-references) - -inoremap - \ pumvisible() ? "\" : - \ check_back_space() ? "\" : - \ coc#refresh() -inoremap pumvisible() ? "\" : "\" - -function! s:check_back_space() abort - let col = col('.') - 1 - return !col || getline('.')[col - 1] =~# '\s' -endfunction - -" " Always show the signcolumn, otherwise it would shift the text each time -" " diagnostics appear/become resolved. -if has("patch-8.1.1564") - " " Recently vim can merge signcolumn and number column into one - set signcolumn=number -else - set signcolumn=yes -endif - -" " Use to trigger completion. -inoremap coc#refresh() - -" " Use to confirm completion, `u` means break undo chain at current -" " position. Coc only does snippet and additional edit on confirm. -" " could be remapped by other vim plugin, try `:verbose imap `. -if exists('*complete_info') - inoremap complete_info()["selected"] != "-1" ? "\" : "\u\" -else - inoremap pumvisible() ? "\" : "\u\" -endif - -" " Highlight the symbol and its references when holding the cursor. -autocmd CursorHold * silent call CocActionAsync('highlight') - -" " Symbol renaming. -nmap rn (coc-rename) - -" " Formatting selected code. -xmap f (coc-format-selected) -nmap f (coc-format-selected - -augroup mygroup - autocmd! - " " Setup formatexpr specified filetype(s). - autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected') - " " Update signature help on jump placeholder. - autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') -augroup end - -" " Applying codeAction to the selected region. -" " Example: `aap` for current paragraph -xmap a (coc-codeaction-selected) -nmap a (coc-codeaction-selected) - -" " Remap keys for applying codeAction to the current buffer. -nmap ac (coc-codeaction) -" " Apply AutoFix to problem on the current line. -nmap qf (coc-fix-current) - -" " Add `:Format` command to format current buffer. -command! -nargs=0 Format :call CocAction('format') - -" " Add `:Fold` command to fold current buffer. -command! -nargs=? Fold :call CocAction('fold', ) - -" " Add `:OR` command for organize imports of the current buffer. -command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport') - -" " Add (Neo)Vim's native statusline support. -" " NOTE: Please see `:h coc-status` for integrations with external plugins that -" " provide custom statusline: lightline.vim, vim-airline. -set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')} - +" lightline ----- {{{ +" Lightline +"let g:lightline = { + ""\ 'colorscheme': 'powerlineish', + ""\ 'active': { + ""\ 'left': [['mode', 'paste' ], ['readonly', 'filename', 'modified']], + ""\ 'right': [['lineinfo'], ['percent'], ['fileformat', 'fileencoding']] + \ } + \ } +let g:lightline = { + \ 'colorscheme': 'powerlineish', + \ 'active': { + \ 'left': [ [ 'mode', 'paste' ],['readonly', 'filename', 'modified']], + \ 'right' : [['cocstatus', 'currentfunction'],['lineinfo'], ['percent'],['filetype','fileformat','fileencoding']] + \ }, + \ 'component_function': { + \ 'cocstatus': 'coc#status', + \ 'currentfunction': 'CocCurrentFunction' + \ }, + \ } +" }}} +" +" vim-startify ----- {{{ +"let g:startify_custom_header += [ + ""\'โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•—โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•— ', + ""\'โ•šโ•โ•โ–ˆโ–ˆโ•”โ•โ•โ•โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—โ–ˆโ–ˆโ•”โ•โ•โ–ˆโ–ˆโ•—', + ""\' โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ•”โ•', + "" \' โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•”โ•โ•โ•โ• โ–ˆโ–ˆโ•”โ•โ•โ•โ• ', + """"\' โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘ โ–ˆโ–ˆโ•‘ ', + ""\' โ•šโ•โ• โ•šโ•โ• โ•šโ•โ• ', + ""\] + ""\ startify#pad(split(system('figlet -w 100 TPP'), \n)) " }}} diff --git a/nvim/ultisnips/python.snippets b/nvim/ultisnips/python.snippets new file mode 100644 index 0000000..a6f8219 --- /dev/null +++ b/nvim/ultisnips/python.snippets @@ -0,0 +1,11 @@ +snippet "fndoc" "Python Function Docstring" b +""" ${1:function description} + + Args: + ${2:param}: param description + + Returns: + ${3:return type} +""" + +endsnippet