From 3c477cbfc663379530af0b39958589559461b9d1 Mon Sep 17 00:00:00 2001 From: Dave Gallant Date: Sat, 6 Feb 2021 01:32:21 -0500 Subject: [PATCH] Package up vim-prettier plugin --- home/default.nix | 15 +++- home/init.vim | 220 +++++++++++++++++++++++----------------------- main/packages.nix | 1 + 3 files changed, 125 insertions(+), 111 deletions(-) diff --git a/home/default.nix b/home/default.nix index ea8db23..7b982b6 100644 --- a/home/default.nix +++ b/home/default.nix @@ -1,6 +1,16 @@ { pkgs, ... }: -{ +let + vim-prettier = pkgs.vimUtils.buildVimPlugin { + name = "vim-prettier"; + src = pkgs.fetchFromGitHub { + owner = "prettier"; + repo = "vim-prettier"; + rev = "0.2.7"; + sha256 = "sha256-FDeyGH5OPAYV7zePCfDujsj+nGd5AFnqySPStJYEY2E="; + }; + }; +in { home = { sessionVariables = { EDITOR = "vim"; }; }; @@ -152,7 +162,6 @@ window.padding.y = 10; scrolling.history = 100000; live_config_reload = true; - selection.save_to_clipboard = true; mouse.hide_when_typing = true; font = { @@ -291,7 +300,6 @@ vimAlias = true; extraConfig = builtins.readFile ./init.vim; - plugins = with pkgs.vimPlugins; [ coc-go coc-json @@ -314,6 +322,7 @@ vim-markdown vim-nix vim-pandoc + vim-prettier vim-pandoc-syntax vim-repeat vim-sneak diff --git a/home/init.vim b/home/init.vim index e0504c0..6d17d04 100644 --- a/home/init.vim +++ b/home/init.vim @@ -1,24 +1,24 @@ - set autoread - set cursorline - set encoding=utf-8 - set expandtab - set foldlevel=99 - set foldmethod=indent - set hlsearch - set ignorecase - set incsearch - set mouse=a - set nocompatible - set noswapfile - set number relativenumber - set pastetoggle= - set shiftwidth=2 - set showcmd - set showmode - set smartcase - set t_Co=256 - set tabstop=2 - set wildmenu +set autoread +set cursorline +set encoding=utf-8 +set expandtab +set foldlevel=99 +set foldmethod=indent +set hlsearch +set ignorecase +set incsearch +set mouse=a +set nocompatible +set noswapfile +set number relativenumber +set pastetoggle= +set shiftwidth=2 +set showcmd +set showmode +set smartcase +set t_Co=256 +set tabstop=2 +set wildmenu " Custom statusline function! GitBranch() @@ -44,108 +44,112 @@ set statusline+=\[%{&fileformat}\] set statusline+=\ %p%% set statusline+=\ %l:%c - " Remember line number - au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif +" Remember line number +au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif - " Search down into subfolders - " Provides tab-completion for all file-related tasks - set path+=** +" Search down into subfolders +" Provides tab-completion for all file-related tasks +set path+=** - filetype plugin indent on +filetype plugin indent on - " Enable folding with the spacebar - nnoremap za +" Enable folding with the spacebar +nnoremap za - " Replace visually selected - vnoremap "hy:%s/h//g +" Replace visually selected +vnoremap "hy:%s/h//g - " Custom Commands - command JsonFormat execute "::%!jq '.'" +" Custom Commands +command JsonFormat execute "::%!jq '.'" - " Shortcuts - map r :Rg - map f :Files - map g :GFiles - map n :NERDTreeToggle - map :tabn - map :tabp - map :tabnew +" Shortcuts +map r :Rg +map f :Files +map g :GFiles +map n :NERDTreeToggle +map :tabn +map :tabp +map :tabnew - " Copypasta - noremap y "+y - noremap p "+p +" Copypasta +noremap y "+y +noremap p "+p - " Indent YAML - au FileType yaml setlocal ts=2 sts=2 sw=2 expandtab +" Indent YAML +au FileType yaml setlocal ts=2 sts=2 sw=2 expandtab - " Python indentation - au BufNewFile,BufRead *.py set tabstop=4 softtabstop=4 shiftwidth=4 textwidth=79 expandtab autoindent fileformat=unix - let python_highlight_all=1 - syntax on - colorscheme gruvbox +" Python indentation +au BufNewFile,BufRead *.py set tabstop=4 softtabstop=4 shiftwidth=4 textwidth=79 expandtab autoindent fileformat=unix +let python_highlight_all=1 +syntax on +colorscheme gruvbox - " Highlight whitespace - highlight ExtraWhitespace ctermbg=red guibg=red - match ExtraWhitespace /\s\+$/ +" Highlight whitespace +highlight ExtraWhitespace ctermbg=red guibg=red +match ExtraWhitespace /\s\+$/ - " Groovy syntax - au BufNewFile,BufRead *.groovy set tabstop=2 shiftwidth=2 expandtab - au BufNewFile,BufRead Jenkinsfile setf groovy - au BufNewFile,BufRead Jenkinsfile set tabstop=2 shiftwidth=2 expandtab +" Groovy syntax +au BufNewFile,BufRead *.groovy set tabstop=2 shiftwidth=2 expandtab +au BufNewFile,BufRead Jenkinsfile setf groovy +au BufNewFile,BufRead Jenkinsfile set tabstop=2 shiftwidth=2 expandtab - " vim-go - let g:go_auto_sameids = 0 - let g:go_fmt_command = "goimports" - let g:go_fmt_experimental = 1 - let g:go_highlight_array_whitespace_error = 1 - let g:go_highlight_build_constraints = 1 - let g:go_highlight_chan_whitespace_error = 1 - let g:go_highlight_extra_types = 1 - let g:go_highlight_fields = 1 - let g:go_highlight_format_strings = 1 - let g:go_highlight_function_calls = 1 - let g:go_highlight_function_parameters = 1 - let g:go_highlight_functions = 1 - let g:go_highlight_generate_tags = 1 - let g:go_highlight_operators = 1 - let g:go_highlight_space_tab_error = 1 - let g:go_highlight_string_spellcheck = 1 - let g:go_highlight_trailing_whitespace_error = 0 - let g:go_highlight_types = 1 - let g:go_highlight_variable_assignments = 1 - let g:go_highlight_variable_declarations = 1 - let g:go_rename_command = 'gopls' - let g:go_metalinter_autosave=1 - let g:go_metalinter_autosave_enabled=['golint', 'govet'] +" vim-go +let g:go_auto_sameids = 0 +let g:go_fmt_command = "goimports" +let g:go_fmt_experimental = 1 +let g:go_highlight_array_whitespace_error = 1 +let g:go_highlight_build_constraints = 1 +let g:go_highlight_chan_whitespace_error = 1 +let g:go_highlight_extra_types = 1 +let g:go_highlight_fields = 1 +let g:go_highlight_format_strings = 1 +let g:go_highlight_function_calls = 1 +let g:go_highlight_function_parameters = 1 +let g:go_highlight_functions = 1 +let g:go_highlight_generate_tags = 1 +let g:go_highlight_operators = 1 +let g:go_highlight_space_tab_error = 1 +let g:go_highlight_string_spellcheck = 1 +let g:go_highlight_trailing_whitespace_error = 0 +let g:go_highlight_types = 1 +let g:go_highlight_variable_assignments = 1 +let g:go_highlight_variable_declarations = 1 +let g:go_rename_command = 'gopls' +let g:go_metalinter_autosave=1 +let g:go_metalinter_autosave_enabled=['golint', 'govet'] - " vim-terraform - let g:terraform_align=1 - let g:terraform_fmt_on_save=1 - let g:terraform_fold_sections=1 +" vim-terraform +let g:terraform_align=1 +let g:terraform_fmt_on_save=1 +let g:terraform_fold_sections=1 - " rust.vim - let g:rustfmt_autosave = 1 +" rust.vim +let g:rustfmt_autosave = 1 - " syntastic - set statusline+=%#warningmsg# - set statusline+=%{SyntasticStatuslineFlag()} - set statusline+=%* - let g:syntastic_always_populate_loc_list = 1 - let g:syntastic_auto_loc_list = 1 - let g:syntastic_check_on_open = 1 - let g:syntastic_check_on_wq = 0 +" syntastic +set statusline+=%#warningmsg# +set statusline+=%{SyntasticStatuslineFlag()} +set statusline+=%* +let g:syntastic_always_populate_loc_list = 1 +let g:syntastic_auto_loc_list = 1 +let g:syntastic_check_on_open = 1 +let g:syntastic_check_on_wq = 0 - " fzf.vim - let g:fzf_preview_window = 'up:50%' - let g:fzf_layout = { 'window': 'enew' } +" fzf.vim +let g:fzf_preview_window = 'up:50%' +let g:fzf_layout = { 'window': 'enew' } - " vim-markdown - let g:vim_markdown_override_foldtext=0 - let g:vim_markdown_no_default_key_mappings=1 - let g:vim_markdown_emphasis_multiline=0 - let g:vim_markdown_conceal=0 - let g:vim_markdown_frontmatter=1 - let g:vim_markdown_new_list_item_indent=0 +" vim-markdown +let g:vim_markdown_override_foldtext=0 +let g:vim_markdown_no_default_key_mappings=1 +let g:vim_markdown_emphasis_multiline=0 +let g:vim_markdown_conceal=0 +let g:vim_markdown_frontmatter=1 +let g:vim_markdown_new_list_item_indent=0 + +" vim-javacomplete2 +autocmd FileType java setlocal omnifunc=javacomplete#Complete + +" vim-prettier +let g:prettier#autoformat = 1 - " vim-javacomplete2 - autocmd FileType java setlocal omnifunc=javacomplete#Complete diff --git a/main/packages.nix b/main/packages.nix index 5a9ce91..2d437c1 100644 --- a/main/packages.nix +++ b/main/packages.nix @@ -56,6 +56,7 @@ # node nodejs-14_x + nodePackages.prettier nodePackages.yarn # social media