2 Commits

Author SHA1 Message Date
  Josh Fabean adb03b2739 more updates 3 years ago
  Josh Fabean a7d40bcb43 updated nvim 3 years ago
5 changed files with 243 additions and 158 deletions
Split View
  1. +1
    -0
      .config/fish/config.fish
  2. +4
    -0
      .config/nvim/.netrwhist
  3. +224
    -148
      .config/nvim/init.vim
  4. +2
    -0
      .config/swappy/config
  5. +12
    -10
      .config/sway/articuno-sway

+ 1
- 0
.config/fish/config.fish View File

@ -46,6 +46,7 @@ export LIBVA_DRIVER_NAME=vdpau
export EDITOR=nvim
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk
export LC_ALL="en_US.UTF-8"
export N_PREFIX=/home/joshfabean/.n
function fish_prompt
powerline-rs --shell bare $status


+ 4
- 0
.config/nvim/.netrwhist View File

@ -0,0 +1,4 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhistcnt =2
let g:netrw_dirhist_2='/home/joshfabean/Code/service-cli/7.4'
let g:netrw_dirhist_1='/home/joshfabean/.config/i3blocks'

+ 224
- 148
.config/nvim/init.vim View File

@ -1,157 +1,233 @@
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
endif
"------------------------------------------------
" Plugins START
call plug#begin()
" Plugins
Plug 'miyakogi/seiya.vim'
Plug 'ctrlpvim/ctrlp.vim'
Plug 'FelikZ/ctrlp-py-matcher'
Plug 'jeetsukumaran/vim-filebeagle'
Plug 'bling/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'scrooloose/nerdtree'
Plug 'christoomey/vim-tmux-navigator'
Plug 'editorconfig/editorconfig-vim'
Plug 'mhinz/vim-grepper'
Plug 'tomtom/tcomment_vim'
Plug 'ap/vim-css-color'
Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' }
Plug 'neomake/neomake'
Plug 'ludovicchabant/vim-gutentags'
" Colorschemes
Plug 'whatyouhide/vim-gotham'
Plug 'flazz/vim-colorschemes'
"HTML & CSS
Plug 'hail2u/vim-css3-syntax'
Plug 'othree/html5.vim'
Plug 'Valloric/MatchTagAlways'
Plug 'digitaltoad/vim-jade'
"Javascript
"PHP
Plug 'StanAngeloff/php.vim', {'for': 'php'}
Plug 'lumiliet/vim-twig'
Plug 'roxma/LanguageServer-php-neovim', {'do': 'composer install && composer run-script parse-stubs', 'for': 'php'}
Plug 'SirVer/ultisnips' | Plug 'phux/vim-snippets'
"Git plugin
Plug 'tpope/vim-fugitive'
" Lua
Plug 'xolox/vim-misc'
Plug 'xolox/vim-lua-ftplugin'
"Vue
Plug 'posva/vim-vue'
Plug 'sbdchd/neoformat'
Plug 'wakatime/vim-wakatime'
" Donnie says this is important
function! DoRemote(arg)
UpdateRemotePlugins
endfunction
Plug 'airblade/vim-gitgutter'
Plug 'cespare/vim-toml'
Plug 'editorconfig/editorconfig-vim'
Plug 'itchyny/lightline.vim'
Plug 'junegunn/vim-easy-align'
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
Plug 'junegunn/fzf.vim'
Plug 'mengelbrecht/lightline-bufferline'
Plug 'lifepillar/vim-gruvbox8'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'tpope/vim-commentary'
call plug#end()
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#neomake#enabled = 0
syntax on
colorscheme gotham
set tabstop=2
set expandtab
set shiftwidth=2
set smartcase
set hlsearch
set number
set autoindent
set incsearch
set clipboard+=unnamedplus
" Plugins END
"------------------------------------------------
"------------------------------------------------
" Settings START
let mapleader = "\<Space>"
filetype plugin on
set completeopt=menuone
set mouse=a
set nobackup
set nocompatible
set noswapfile
set t_Co=256
set hidden
set relativenumber
set list listchars=tab:»·,trail,nbsp
set nowritebackup
set number
set signcolumn=yes
set title
set wrap
setlocal wrap
" Settings END
"------------------------------------------------
"------------------------------------------------
" persist START
set undofile " Maintain undo history between sessions
set undodir=~/.vim/undodir
" Persist cursor
autocmd BufReadPost *
\ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
\ | exe "normal! g`\""
\ | endif
" persist END
"------------------------------------------------
"------------------------------------------------
" Theme START
syntax on
set termguicolors
set tags=.tags,./tags,tags;
let g:airline_theme="gotham"
"Option + Left and Right switch buffers
"execute "set <M-Right>=\e\eC"
"execute "set <M-Left>=\e\eD"
nnoremap <silent> <C-Right> :bnext<CR>
nnoremap <silent> <C-Left> :bprevious<CR>
nnoremap <silent> <C-Del> :bd<CR>
"Syntastic default settings
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
" let g:deoplete#sources#padawan#add_parentheses = 1
" needed for echodoc to work if add_parentheses is 1
" let g:deoplete#sources = get(g:,'deoplete#sources',{})
" let g:deoplete#sources.php = ['padawan', 'ultisnips', 'tags', 'buffer', 'LanguageClient']
function! GutentagsFilter(path) abort
if fnamemodify(a:path, ':e') == 'java'
return 0
elseif fnamemodify(a:path, ':e') == ''
return 0
elseif fnamemodify(a:path, ':e') == 'xml'
return 0
elseif fnamemodify(a:path, ':e') == 'gradle'
return 0
else
return 1
endif
colorscheme gruvbox8
set background=dark
set cursorline
set hidden
set cmdheight=1
set laststatus=2
let g:gruvbox_transp_bg = 1
let g:gruvbox_italicize_strings = 0
set list
set listchars=tab:»·,trail
" let buffers be clickable
let g:lightline#bufferline#clickable=1
let g:lightline#bufferline#shorten_path=1
let g:lightline#bufferline#min_buffer_count=1
let g:lightline = {
\ 'colorscheme': 'jellybeans',
\ 'active': {
\ 'left': [ [], [], [ 'relativepath' ] ],
\ 'right': [ [], [], [ 'lineinfo', 'percent' ] ]
\ },
\ 'inactive': {
\ 'left': [ [], [], [ 'relativepath' ] ],
\ 'right': [ [], [], [ 'lineinfo', 'percent' ] ]
\ },
\ 'subseparator': {
\ 'left': '', 'right': ''
\ },
\ 'tabline': {
\ 'left': [ ['buffers'] ],
\ 'right': [ [] ]
\ },
\ 'tabline_separator': {
\ 'left': "", 'right': ""
\ },
\ 'tabline_subseparator': {
\ 'left': "", 'right': ""
\ },
\ 'component_expand': {
\ 'buffers': 'lightline#bufferline#buffers'
\ },
\ 'component_raw': {
\ 'buffers': 1
\ },
\ 'component_type': {
\ 'buffers': 'tabsel'
\ }
\}
" Theme END
"------------------------------------------------
"------------------------------------------------
" Remaps START
" Align GitHub-flavored Markdown tables
au FileType markdown vmap <Leader><Bslash> :EasyAlign*<Bar><Enter>
" Toggle between buffers
nmap <Leader>bn :bn<CR>
nmap <Leader>bp :bp<CR>
nnoremap <C-p> :Rg<Cr>
nnoremap <C-e> :Files<Cr>
nmap <Leader>bl :Buffers<CR>
nmap <Leader>g :GFiles<CR>
nmap <Leader>e :Files<CR>
nmap <Leader>p :Rg<CR>
nmap <Leader>g? :GFiles?<CR>
nmap <Leader>h :History<CR>
" Remaps END
"------------------------------------------------
"------------------------------------------------
" Coc START
" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
" delays and poor user experience.
set updatetime=300
" Don't pass messages to |ins-completion-menu|.
set shortmess+=c
" Use tab for trigger completion with characters ahead and navigate.
" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by
" other plugin before putting this into your config.
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
let g:gutentags_enabled_user_func = 'GutentagsFilter'
let g:gutentags_ctags_tagfile = '.tags'
let g:gutentags_ctags_executable_php = 'ctags --langmap=php:.engine.inc.module.theme.install.php --php-kinds=cdfi --fields=+l'
" only start lsp when opening php files
au filetype php LanguageClientStart
" use LSP completion on ctrl-x ctrl-o as fallback for padawan in legacy projects
au filetype php set omnifunc=LanguageClient#complete
" no need for diagnostics, we're going to use neomake for that
let g:LanguageClient_diagnosticsEnable = 0
let g:LanguageClient_signColumnAlwaysOn = 0
" I only use these 3 mappings
nnoremap <silent> gd :call LanguageClient_textDocument_definition()<CR>
nnoremap <silent> gr :call LanguageClient_textDocument_references()<CR>
nnoremap K :call LanguageClient_textDocument_hover()<cr>
" cycle through menu items with tab/shift+tab
inoremap <expr> <TAB> pumvisible() ? "\<c-n>" : "\<TAB>"
inoremap <expr> <s-tab> pumvisible() ? "\<c-p>" : "\<TAB>"
autocmd BufWritePost * Neomake
let g:neomake_error_sign = {'text': '✖', 'texthl': 'NeomakeErrorSign'}
let g:neomake_warning_sign = {'text': '∆', 'texthl': 'NeomakeWarningSign'}
let g:neomake_message_sign = {'text': '➤', 'texthl': 'NeomakeMessageSign'}
let g:neomake_info_sign = {'text': 'ℹ', 'texthl': 'NeomakeInfoSign'}
let g:UltiSnipsExpandTrigger="<c-j>"
let g:UltiSnipsJumpForwardTrigger="<c-j>"
let g:UltiSnipsJumpBackwardTrigger="<c-b>"
" Use <c-space> to trigger completion.
if has('nvim')
inoremap <silent><expr> <c-space> coc#refresh()
else
inoremap <silent><expr> <c-@> coc#refresh()
endif
" PHP7
let g:ultisnips_php_scalar_types = 1
" Use <cr> to confirm completion, `<C-g>u` means break undo chain at current
" position. Coc only does snippet and additional edit on confirm.
" <cr> could be remapped by other vim plugin, try `:verbose imap <CR>`.
if exists('*complete_info')
inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>"
else
inoremap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>"
endif
let g:seiya_auto_enable=1
" Use `[g` and `]g` to navigate diagnostics
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list.
nmap <silent> [g <Plug>(coc-diagnostic-prev)
nmap <silent> ]g <Plug>(coc-diagnostic-next)
" GoTo code navigation.
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 K to show documentation in preview window.
nnoremap <silent> K :call <SID>show_documentation()<CR>
function! s:show_documentation()
if (index(['vim','help'], &filetype) >= 0)
execute 'h '.expand('<cword>')
else
call CocActionAsync('doHover')
endif
endfunction
let g:seiya_target_groups = has('nvim') ? ['guibg'] : ['ctermbg']
" Highlight the symbol and its references when holding the cursor.
autocmd CursorHold * silent call CocActionAsync('highlight')
" Symbol renaming.
nmap <leader>rn <Plug>(coc-rename)
" Formatting selected code.
xmap <leader>f <Plug>(coc-format-selected)
nmap <leader>f <Plug>(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
" Remap keys for applying codeAction to the current buffer.
nmap <leader>ga <Plug>(coc-codeaction)
" Apply AutoFix to problem on the current line.
nmap <leader>qf <Plug>(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', <f-args>)
" Add `:OR` command for organize imports of the current buffer.
command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport')
" Mappings for CoCList
" Show all diagnostics.
nnoremap <silent><nowait> <space>a :<C-u>CocList diagnostics<cr>
" Show commands.
nnoremap <silent><nowait> <space>c :<C-u>CocList commands<cr>
" Find symbol of current document.
nnoremap <silent><nowait> <space>o :<C-u>CocList outline<cr>
" Search workspace symbols.
nnoremap <silent><nowait> <space>s :<C-u>CocList -I symbols<cr>
" Do default action for next item.
nnoremap <silent><nowait> <space>j :<C-u>CocNext<CR>
" Do default action for previous item.
nnoremap <silent><nowait> <space>k :<C-u>CocPrev<CR>

+ 2
- 0
.config/swappy/config View File

@ -4,3 +4,5 @@ show_panel=false
line_size=5
text_size=20
text_font=sans-serif
date_format=%Y-%m-%d_%H-%M-%S-%N
file_output_name=Swappshot-$date_format.png

+ 12
- 10
.config/sway/articuno-sway View File

@ -147,19 +147,21 @@ for_window [class="Plexamp"] floating enable
for_window [class="blueman-manager"] floating enable
for_window [class="^Bluetooth Devices"] floating enable
# https://github.com/ValveSoftware/steam-for-linux/issues/1040
for_window [class="^Steam$" title="^Friends$"] floating enable
for_window [class="^Steam$" title="Steam - News"] floating enable
for_window [class="^Steam$" title=".* - Chat"] floating enable
for_window [class="^Steam$" title="^Settings$"] floating enable
for_window [class="^Steam$" title=".* - event started"] floating enable
for_window [class="^Steam$" title=".* CD key"] floating enable
#for_window [class="^Steam$" title="^Friends$"] floating enable
#for_window [class="^Steam$" title="Steam - News"] floating enable
#for_window [class="^Steam$" title=".* - Chat"] floating enable
#for_window [class="^Steam$" title="^Settings$"] floating enable
#for_window [class="^Steam$" title=".* - event started"] floating enable
#for_window [class="^Steam$" title=".* CD key"] floating enable
for_window [class="^Steam$" title="^Steam - Self Updater$"] floating enable
for_window [class="^Steam$" title="^Screenshot Uploader$"] floating enable
for_window [class="^Steam$" title="^Steam Guard - Computer Authorization Required$"] floating enable
for_window [title="^Steam Keyboard$"] floating enable
for_window [title="Qalculate!"] floating enable
for_window [title="Steam"] floating enable
#for_window [title="Steam"] floating enable
for_window [title="Origin"] floating enable
#for_window [title="Zoom"] floating enable
#for_window [title="Zoom Cloud Meetings"] floating enable
###########################
## Assign Workspaces
@ -252,8 +254,8 @@ client.urgent #dc322f #b71c1c #fdf6e3 #dc322f #dc322f
## Displays
############################
#HOME
output HDMI-A-1 pos 440 0 res 2560x1080
output DP-1 pos 0 1080 res 3440x1440
output HDMI-A-1 pos 0 0 res 3440x1440
output DP-1 pos 0 1440 res 3440x1440
# background images
#output * bg ~/Pictures/Wallpapers/calvin-hobbes-stars.jpg fill
output * bg ~/Pictures/Wallpapers/scenic-view-of-forest-during-night-time-1252869.jpg fill
@ -269,7 +271,7 @@ exec --no-startup-id pcmanfm -d
#exec --no-startup-id nightshift -l 39.0315533:-94.4954291 -d
#exec --no-startup-id setxkbmap -model apple_laptop -layout us -variant dvp
exec --no-startup-id mako
exec autotiling
#############################
## Media Keys


Loading…
Cancel
Save