From dfef67f0370b7bf10d4b0a092acaff4aecae24e6 Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Mon, 16 Nov 2020 15:06:19 -0800 Subject: [PATCH] More update --- .config/nvim/init.vim | 74 +++++++++++++++++++++++++++++++------------ .gitconfig | 4 +++ .tmux.conf | 3 +- .zsh/aliases | 17 ++++++++++ .zshrc | 11 ++++--- Brewfile | 18 +++++++++-- 6 files changed, 99 insertions(+), 28 deletions(-) diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index d48b816..6e42db1 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -9,7 +9,7 @@ Plug 'neomake/neomake' " General completion. Needs plugins to extend Plug 'ncm2/ncm2' -Plug 'roxma/nvim-yarp' " for ncm2 +Plug 'roxma/nvim-yarp' " for ncm2 -- seems to cause network timeouts sometimes " NOTE: you need to install completion sources to get completions. Check " our wiki page for a list of sources: https://github.com/ncm2/ncm2/wiki Plug 'ncm2/ncm2-bufword' @@ -17,7 +17,10 @@ Plug 'ncm2/ncm2-tmux' Plug 'ncm2/ncm2-path' " Language-aware fancy things. Needs lang server config. Used, but what for? -Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' } +Plug 'autozimu/LanguageClient-neovim', { + \ 'branch': 'next', + \ 'do': 'bash install.sh', + \ } " Fancy tab completion; did I ever use it? I think it needs other plugins "Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } @@ -35,7 +38,8 @@ Plug 'Shougo/echodoc.vim' Plug 'simnalamburt/vim-mundo' " Netrw is nice, but so is this -Plug 'scrooloose/nerdtree' +" Edit: this slows nvim's start-up time way down +"Plug 'scrooloose/nerdtree' " Motions... need to actually document them otherwise I forget Plug 'easymotion/vim-easymotion' @@ -45,7 +49,7 @@ Plug 'easymotion/vim-easymotion' Plug 'junegunn/vim-easy-align' " Opening files/buffers. Mapped below. -Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } +Plug 'junegunn/fzf', { 'do': { -> fzf#install() } } " Also adds :Commits and :BCommits Plug 'junegunn/fzf.vim' @@ -77,8 +81,10 @@ Plug 'jceb/vim-orgmode' Plug 'bfontaine/Brewfile.vim' Plug 'mdempsky/gocode', { 'rtp': 'nvim', 'do': '~/.config/nvim/plugged/gocode/nvim/symlink.sh' } Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' } +"Plug 'govim/govim' " For vim-orgmode Plug 'tpope/vim-speeddating' +Plug 'zpieslak/vim-autofix' call plug#end() " Because. @@ -109,6 +115,9 @@ noremap c :ChangeDir "noremap w :bdelete noremap :Helptags +" To close the current buffer without closing the current window +noremap q :bpspbnbd + " From vim-rhubarb noremap gh :Gbrowse @@ -194,25 +203,26 @@ let g:go_highlight_format_strings = 1 let g:go_highlight_variable_declarations = 1 let g:go_highlight_variable_assignments = 1 -"nnoremap :NERDTreeToggle -function! ToggleNerdTreeFind() - if(exists("b:NERDTree") && b:NERDTree.IsOpen()) - exec(':NERDTreeClose') - else - exec(':NERDTreeFind') - endif -endfunction -nnoremap :call ToggleNerdTreeFind() +" Disable nerdtree because it's way slow and I don't use it. fzf4evr +" "nnoremap :NERDTreeToggle +" function! ToggleNerdTreeFind() +" if(exists("b:NERDTree") && b:NERDTree.IsOpen()) +" exec(':NERDTreeClose') +" else +" exec(':NERDTreeFind') +" endif +" endfunction +" nnoremap :call ToggleNerdTreeFind() " nerdtree alternative. I didn't finish this. https://shapeshed.com/vim-netrw/ -let g:netrw_banner = 0 -let g:netrw_liststyle = 3 -let g:netrw_browse_split = 1 -let g:netrw_winsize = 15 -augroup ProjectDrawer - autocmd! - "autocmd VimEnter * :Vexplore -augroup END +"let g:netrw_banner = 0 +"let g:netrw_liststyle = 3 +"let g:netrw_browse_split = 1 +"let g:netrw_winsize = 15 +"augroup ProjectDrawer +" autocmd! +" "autocmd VimEnter * :Vexplore +"augroup END noremap tn :color tender noremap ip :color inkpot @@ -380,3 +390,25 @@ nnoremap :noh " Show tabs and trailing whitespace visually {{{2 set list listchars=tab:»·,trail:·,extends:…,nbsp:‗ + +" Languageserver settings from the solargraph readme +" Tell the language client to use the default IP and port +" that Solargraph runs on +let g:LanguageClient_serverCommands = { + \ 'go': ['gopls'], + \ 'ruby': ['~/.rbenv/shims/solargraph', 'stdio'], + \ } + +" note that if you are using Plug mapping you should not use `noremap` mappings. +nmap (lcn-menu) + +" Don't send a stop signal to the server when exiting vim. +" This is optional, but I don't like having to restart Solargraph +" every time I restart vim. +"let g:LanguageClient_autoStop = 0 + +" Configure ruby omni-completion to use the language client: +autocmd FileType ruby setlocal omnifunc=LanguageClient#complete + +" Run gofmt on save +autocmd BufWritePre *.go :call LanguageClient#textDocument_formatting_sync() diff --git a/.gitconfig b/.gitconfig index 346ff02..366f33e 100644 --- a/.gitconfig +++ b/.gitconfig @@ -33,3 +33,7 @@ cookiefile = ~/.gitcookies [url "git@github.com:"] insteadOf = https://github.com/ +[pull] + ff = only +[init] + defaultBranch = main diff --git a/.tmux.conf b/.tmux.conf index f530388..f316261 100644 --- a/.tmux.conf +++ b/.tmux.conf @@ -1,8 +1,8 @@ ### List of plugins set -g @plugin "tmux-plugins/tpm" set -g @plugin "tmux-plugins/tmux-sensible" -set -g @plugin "tmux-plugins/tmux-prefix-highlight" #yuno work? set -g @plugin "arcticicestudio/nord-tmux" +set -g @plugin "tmux-plugins/tmux-prefix-highlight" ### screen-like keybindings unbind C-b @@ -119,6 +119,7 @@ setenv -g SSH_AUTH_SOCK "$HOME/.gnupg/$.gpg-agent.ssh" ### Status bar +set -g @prefix_highlight_show_copy_mode 'on' #set-option -g allow-rename off #set -g status-right "#[fg=magenta] @#H #[fg=cyan]%Y-%m-%d #[fg=yellow]%a #[fg=green]%H:%M #[fg=blue]#(uptime|awk '{split(substr($0, index($0, "load")), a, ":"); print a[2]}')#[default]" #set -g status off diff --git a/.zsh/aliases b/.zsh/aliases index 199e433..ce7f126 100644 --- a/.zsh/aliases +++ b/.zsh/aliases @@ -32,6 +32,7 @@ alias mutt="TERM=xterm-256color mutt" alias x="exit" alias v="vagrant" alias w="cd ~/Documents/work/git" +alias ssh-gpg="ssh -R ~/.gnupg/S.gpg-agent.extra:~/.gnupg/S-gpg-agent.extra -o 'StreamLocalBindUnlink=yes'" alias gpg-add="/usr/libexec/gpg-preset-passphrase" alias rsync="rsync -azPHe ssh" #-a equals -rlptgoD alias mang="cd ~/zips/mangband ; DISPLAY=\"\" ./mangclient" @@ -178,6 +179,22 @@ alias -s avi="mplayer" alias -s mkv="mplayer" alias -s mpg="mplayer" +# stolen from eric0 +# if rust stuff is found, use it +RBIN=$HOME/.cargo/bin +if [[ -d $RBIN ]]; then + [[ -f $RBIN/bat ]] && for f in less more cat ; do + alias $f=bat; + done + [[ -f $RBIN/dua ]] && alias du=dua + [[ -f $RBIN/rg ]] && alias grep=rg + [[ -f $RBIN/exa ]] && alias ls=exa + [[ -f $RBIN/fd ]] && alias find=fd +else + if whence bat > /dev/null ; then + alias cat=bat + fi +fi # Vim if whence nvim > /dev/null ; then diff --git a/.zshrc b/.zshrc index 4ae44fa..9abb05a 100644 --- a/.zshrc +++ b/.zshrc @@ -19,7 +19,7 @@ bindkey -e zstyle ':completion:*' completer _complete zstyle ':completion:*' matcher-list '' 'm:{[:lower:][:upper:]}={[:upper:][:lower:]}' '+l:|=* r:|=*' -autoload -Uz compinit colors vcs_info select-word-style && colors +autoload -Uz compinit colors vcs_info select-word-style promptinit && colors && promptinit compinit -u zstyle :compinstall filename '~/.zshenv' @@ -54,7 +54,7 @@ export GO111MODULE=on export PATH=/usr/sbin:/usr/bin:/sbin:/bin export MANPATH=~/local/share/man:/usr/man:/usr/share/man:/usr/local/share/man #paths=(/cat/bin) -prepaths=($GOPATH/bin $GOROOT/bin ~/.emacs.d/bin /usr/local/bin /usr/local/sbin /usr/local/opt/node@8/bin ~/local/bin ~/local/sbin) +prepaths=(/opt/puppetlabs/pdk/bin $GOPATH/bin $GOROOT/bin ~/.emacs.d/bin /usr/local/bin /usr/local/sbin /usr/local/opt/node@8/bin ~/local/bin ~/local/sbin) #for dir in $paths ; do # if [ -d $dir ] ; then # export PATH=$PATH:$dir @@ -288,7 +288,10 @@ if [[ "$PROFILE_STARTUP" == true ]]; then fi # The next line updates PATH for the Google Cloud SDK. -if [ -f '/Users/hunner/Downloads/google-cloud-sdk/path.zsh.inc' ]; then . '/Users/hunner/Downloads/google-cloud-sdk/path.zsh.inc'; fi +if [ -f '/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc' ]; then . '/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc'; fi # The next line enables shell command completion for gcloud. -if [ -f '/Users/hunner/Downloads/google-cloud-sdk/completion.zsh.inc' ]; then . '/Users/hunner/Downloads/google-cloud-sdk/completion.zsh.inc'; fi +if [ -f '/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/completion.zsh.inc' ]; then . '/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/completion.zsh.inc'; fi + +#test -e "${HOME}/.iterm2_shell_integration.zsh" && source "${HOME}/.iterm2_shell_integration.zsh" + diff --git a/Brewfile b/Brewfile index 9da5c29..3275648 100644 --- a/Brewfile +++ b/Brewfile @@ -15,6 +15,8 @@ brew "ncdu" # Find big files brew "neovim" # Edit stuff. Then `curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim` brew "ripgrep" # Faster grep/ack/ag brew "socat" # Better netcat +cask "iterm2" # Terminal emulator +cask "serial" # Serial terminal emulator brew "tmux" # Terminal thingy brew "reattach-to-user-namespace" # For tmux brew "unrar" # Rar happens @@ -34,12 +36,17 @@ brew "maven" # java package management #cask "visual-studio-code" # frontend dev brew "pyenv" # rbenv for py brew "pyenv-virtualenv" # rbenv for pyenv? +cask "google-cloud-sdk" #gcloud suite +brew "bat" # better cat +brew "emacs-mac" # doom-emacs +cask "talon" # voice control # Mac fun cask "aerial" # Screensaver cask "alfred" # Launcher -tap "koekeishiya/formulae" ; brew "chunkwm" # Window manager -brew "skhd" # Keyboard shortcuts +#tap "koekeishiya/formulae" ; brew "chunkwm" # Window manager +#brew "skhd" # Keyboard shortcuts +cask "amethyst" # combination window manager and keyboard shortcus cask "cathode" # Silly terminal cask "ubersicht" # UI bar tap "homebrew/cask-fonts" # For fonts @@ -50,6 +57,8 @@ cask "font-liberation-mono-for-powerline" # For neovim cask "angband" # Morgoth cask "brogue" # Less goth cask "steam" # Meta game +cask "itch" # meta indy game +brew "cataclysm" # zombie game # Life fun cask "1password" # Family accounts @@ -65,6 +74,11 @@ cask "onedrive" # File sync cask "little-snitch" # Personal egress filtering cask "vlc" # Music videos brew "youtube-dl" # Music videos +brew "ffmpeg" # better music videos +brew "handbrake" # dvds? +brew "libdvdcss" # dvds!? +cask "makemkv" # mkvs? +# gem install video_transcoding # mkvs!? cask "zerotier-one" # Personal network - reboot and approve kernel extension # Browsers