Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
6bd5d710ec
11 changed files with 197 additions and 60 deletions
|
|
@ -20,3 +20,4 @@ fi
|
|||
|
||||
# Added by ~/.emacs.d/install.sh
|
||||
export PATH=$HOME/.cask/bin:$PATH
|
||||
. "$HOME/.cargo/env"
|
||||
|
|
|
|||
1
.bashrc
1
.bashrc
|
|
@ -161,3 +161,4 @@ fi
|
|||
if [ -f ~/local/google-cloud-sdk/completion.bash.inc ]; then
|
||||
. ~/local/google-cloud-sdk/completion.bash.inc
|
||||
fi
|
||||
. "$HOME/.cargo/env"
|
||||
|
|
|
|||
1
.config/fish/.gitignore
vendored
Normal file
1
.config/fish/.gitignore
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
work.fish
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
#set -g VIRTUALFISH_VERSION 2.5.5
|
||||
#set -g VIRTUALFISH_PYTHON_EXEC /usr/bin/python
|
||||
#source /usr/local/lib/python3.10/site-packages/virtualfish/virtual.fish
|
||||
set -g VIRTUALFISH_VERSION 2.5.5
|
||||
set -g VIRTUALFISH_PYTHON_EXEC /bin/python
|
||||
source /home/barak/.local/lib/python3.11/site-packages/virtualfish/virtual.fish
|
||||
emit virtualfish_did_setup_plugins
|
||||
|
|
@ -16,6 +16,10 @@ if test -e $HOME/.asdf/asdf.fish
|
|||
. ~/.asdf/asdf.fish
|
||||
end
|
||||
|
||||
if test -e $HOME/.config/fish/work.fish
|
||||
. ~/.config/fish/work.fish
|
||||
end
|
||||
|
||||
. ~/.config/fish/fish_aliases.fish
|
||||
|
||||
# The next line updates PATH for the Google Cloud SDK.
|
||||
|
|
|
|||
1
.config/fish/functions/fish_right_prompt.fish
Normal file
1
.config/fish/functions/fish_right_prompt.fish
Normal file
|
|
@ -0,0 +1 @@
|
|||
function fish_right_prompt; end
|
||||
|
|
@ -4,7 +4,7 @@ Name=Spotify
|
|||
GenericName=Online music streaming service
|
||||
Comment=Access all of your favorite music
|
||||
Icon=com.spotify.Client
|
||||
Exec=/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=spotify --file-forwarding com.spotify.Client --force-device-scale-factor=2 @@u %U @@
|
||||
Exec=/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=spotify --file-forwarding com.spotify.Client --force-device-scale-factor=1.5 @@u %U @@
|
||||
Terminal=false
|
||||
MimeType=x-scheme-handler/spotify;
|
||||
Categories=Audio;Music;AudioVideo;
|
||||
|
|
|
|||
|
|
@ -46,7 +46,6 @@ bind-key C-t new-window "ttyd -R -d -t fontSize=18 tmux attach -t `tmux display
|
|||
#set -g status-bg black
|
||||
set -g status-interval 1
|
||||
#set -g status-left '#[fg=green]#H#[default]'
|
||||
#set -g status-left-length 20
|
||||
#set -g status-right '#[fg=green]#(~/src/tpom/tpom) #[fg=cyan,bold]%Y-%m-%d %H:%M:%S#[default]'
|
||||
set -g status-justify centre # center align window list
|
||||
set -g status-style fg=white,bg=default
|
||||
|
|
@ -61,8 +60,10 @@ set-window-option -g window-status-current-style fg=cyan,bg=default,bright
|
|||
set-window-option -g window-style fg=#aaaaaa,bg=terminal
|
||||
set-window-option -g window-active-style fg=terminal,bg=terminal
|
||||
|
||||
set -g status-left '#[fg=green][ #H ][ '
|
||||
set -g status-left '#[fg=green][ #h ]['
|
||||
set -g status-left-length 40
|
||||
set -g status-right '#[fg=green]][ #{pane_width}x#{pane_height} #[bright]#[fg=blue]%Y-%m-%d #[fg=white]%I:%M #[dim]#[fg=green]]'
|
||||
set -g status-right-length 40
|
||||
|
||||
# Notifying if other windows has activities
|
||||
setw -g monitor-activity on
|
||||
|
|
|
|||
|
|
@ -99,6 +99,9 @@ augroup go
|
|||
autocmd FileType go set softtabstop=2
|
||||
autocmd FileType go set shiftwidth=2
|
||||
autocmd FileType go set noexpandtab
|
||||
autocmd FileType go imap <buffer> <silent> <Leader>ife <C-o>:GoIfErr<cr>
|
||||
autocmd FileType go nmap <buffer> <silent> <Leader>ife :GoIfErr<cr>
|
||||
autocmd FileType go nnoremap <silent> <Leader>im <cmd>lua require('telescope').extensions.goimpl.goimpl{theme = "ivy", layout_config = {height = 10}}<cr>
|
||||
"autocmd FileType go nmap <Leader>gd <Plug>(go-doc)
|
||||
"autocmd FileType go nmap gd <Plug>(go-def)
|
||||
augroup END
|
||||
|
|
@ -121,6 +124,7 @@ autocmd FileType proto let b:auto_trim_whitespace=1
|
|||
autocmd FileType hy let b:auto_trim_whitespace=1
|
||||
autocmd FileType idris let b:auto_trim_whitespace=1
|
||||
autocmd FileType java let b:auto_trim_whitespace=1
|
||||
autocmd FileType lua let b:auto_trim_whitespace=1
|
||||
|
||||
augroup templates
|
||||
autocmd BufNewFile *.vue 0r ~/.vim/skeletons/vue.skel
|
||||
|
|
|
|||
196
.vim/nvim.lua
196
.vim/nvim.lua
|
|
@ -7,6 +7,13 @@ local nvim_lsp = require 'lspconfig'
|
|||
local on_attach = function(client)
|
||||
end
|
||||
|
||||
-- Set my preferred diagnostic options
|
||||
local diagnostic_options = {
|
||||
virtual_text = false,
|
||||
signs = true,
|
||||
update_in_insert = false,
|
||||
}
|
||||
|
||||
local rust_capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||
rust_capabilities.textDocument.completion.completionItem.snippetSupport = true
|
||||
rust_capabilities.textDocument.completion.completionItem.resolveSupport = {
|
||||
|
|
@ -17,6 +24,16 @@ rust_capabilities.textDocument.completion.completionItem.resolveSupport = {
|
|||
}
|
||||
}
|
||||
|
||||
local default_capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||
default_capabilities.textDocument.completion.completionItem.snippetSupport = true
|
||||
default_capabilities.textDocument.completion.completionItem.resolveSupport = {
|
||||
properties = {
|
||||
'documentation',
|
||||
'detail',
|
||||
'additionalTextEdits',
|
||||
}
|
||||
}
|
||||
|
||||
-- Enable rust_analyzer
|
||||
nvim_lsp.rust_analyzer.setup({
|
||||
on_attach = function(client, bufnr)
|
||||
|
|
@ -54,7 +71,80 @@ nvim_lsp.gopls.setup({
|
|||
},
|
||||
},
|
||||
})
|
||||
nvim_lsp.pyright.setup({ on_attach = on_attach })
|
||||
|
||||
local function filter(arr, func)
|
||||
-- Filter in place
|
||||
-- https://stackoverflow.com/questions/49709998/how-to-filter-a-lua-array-inplace
|
||||
local new_index = 1
|
||||
local size_orig = #arr
|
||||
for old_index, v in ipairs(arr) do
|
||||
if func(v, old_index) then
|
||||
arr[new_index] = v
|
||||
new_index = new_index + 1
|
||||
end
|
||||
end
|
||||
for i = new_index, size_orig do arr[i] = nil end
|
||||
end
|
||||
|
||||
local function pyright_accessed_filter(diagnostic)
|
||||
-- Allow kwargs to be unused, sometimes you want many functions to take the
|
||||
-- same arguments but you don't use all the arguments in all the functions,
|
||||
-- so kwargs is used to suck up all the extras
|
||||
if diagnostic.message == '"kwargs" is not accessed' then
|
||||
return false
|
||||
end
|
||||
-- Allow variables starting with an underscore
|
||||
if string.match(diagnostic.message, '"_.+" is not accessed') then
|
||||
return false
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
local function pyright_custom_diagnostic(a, params, client_id, c, config)
|
||||
filter(params.diagnostics, pyright_accessed_filter)
|
||||
vim.lsp.diagnostic.on_publish_diagnostics(a, params, client_id, c, config)
|
||||
end
|
||||
|
||||
nvim_lsp.pyright.setup({ on_attach = function(client, bufnr)
|
||||
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(pyright_custom_diagnostic, diagnostic_options)
|
||||
end })
|
||||
--nvim_lsp.pyright.setup({ on_attach = on_attach })
|
||||
--nvim_lsp.pylsp.setup({
|
||||
--on_attach = on_attach,
|
||||
--settings = {
|
||||
--pylsp = {
|
||||
--plugins = {
|
||||
---- formatter options
|
||||
----black = { enabled = true },
|
||||
--autopep8 = { enabled = false },
|
||||
--yapf = { enabled = false },
|
||||
---- linter options
|
||||
--pylint = { enabled = false, executable = "pylint" },
|
||||
--pyflakes = { enabled = false },
|
||||
--pycodestyle = { enabled = false },
|
||||
---- type checker
|
||||
--pylsp_mypy = { enabled = true },
|
||||
---- auto-completion options
|
||||
--jedi_completion = { enabled = false },
|
||||
---- import sorting
|
||||
----pyls_isort = { enabled = true },
|
||||
----flake8 = {
|
||||
----maxLineLength = 100,
|
||||
----},
|
||||
--pycodestyle = {
|
||||
--maxLineLength = 100,
|
||||
--},
|
||||
----rope_autoimport = {
|
||||
----enabled = true
|
||||
----},
|
||||
----rope_completion = {
|
||||
----enabled = true
|
||||
----},
|
||||
--}
|
||||
--}
|
||||
--}
|
||||
--})
|
||||
|
||||
--nvim_lsp.clangd.setup({ on_attach = on_attach })
|
||||
nvim_lsp.tsserver.setup {
|
||||
|
|
@ -100,7 +190,12 @@ require 'lspconfig'.lua_ls.setup {
|
|||
},
|
||||
}
|
||||
|
||||
require('go').setup()
|
||||
|
||||
require('go').setup({
|
||||
iferr_vertical_shift = 2
|
||||
})
|
||||
|
||||
require('telescope').load_extension('goimpl')
|
||||
|
||||
function org_imports(wait_ms)
|
||||
local params = vim.lsp.util.make_range_params()
|
||||
|
|
@ -120,34 +215,42 @@ function org_imports(wait_ms)
|
|||
end
|
||||
end
|
||||
|
||||
nvim_lsp.efm.setup {
|
||||
init_options = { documentFormatting = true },
|
||||
-- register linters
|
||||
local luaformat = require("efmls-configs.formatters.lua_format")
|
||||
local rustfmt = require('efmls-configs.formatters.rustfmt')
|
||||
local black = require('efmls-configs.formatters.black')
|
||||
local mypy = require('efmls-configs.linters.mypy')
|
||||
local eslint = require('efmls-configs.linters.eslint')
|
||||
local isort = require('efmls-configs.formatters.isort')
|
||||
local languages = {
|
||||
typescript = { eslint },
|
||||
lua = { luaformat },
|
||||
python = { black, mypy, isort },
|
||||
rust = { rustfmt },
|
||||
}
|
||||
|
||||
local efmls_config = {
|
||||
filetypes = vim.tbl_keys(languages),
|
||||
settings = {
|
||||
rootMarkers = { ".git/", "package.json" },
|
||||
languages = {
|
||||
lua = {
|
||||
{ formatCommand = "lua-format -i", formatStdin = true }
|
||||
rootMarkers = { '.git/' },
|
||||
languages = languages,
|
||||
},
|
||||
python = {
|
||||
{ formatCommand = 'black --quiet -', formatStdin = true }
|
||||
init_options = {
|
||||
documentFormatting = true,
|
||||
documentRangeFormatting = true,
|
||||
},
|
||||
rust = {
|
||||
{ formatCommand = 'rustfmt', formatStdin = true }
|
||||
},
|
||||
typescript = {
|
||||
{ formatCommand = 'pnpm exec eslint --fix' }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
require('lspconfig').efm.setup(vim.tbl_extend('force', efmls_config, {
|
||||
-- Pass your custom lsp config below like on_attach and capabilities
|
||||
on_attach = on_attach,
|
||||
capabilities = default_capabilities,
|
||||
}))
|
||||
|
||||
-- Enable diagnostics
|
||||
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
|
||||
vim.lsp.diagnostic.on_publish_diagnostics, {
|
||||
virtual_text = false,
|
||||
signs = true,
|
||||
update_in_insert = false,
|
||||
}
|
||||
vim.lsp.diagnostic.on_publish_diagnostics,
|
||||
diagnostic_options
|
||||
)
|
||||
|
||||
-- Compe setup
|
||||
|
|
@ -181,7 +284,7 @@ require 'compe'.setup {
|
|||
|
||||
--require'lsp_signature'.on_attach(signature_cfg)
|
||||
|
||||
saga_cfg = {
|
||||
local saga_cfg = {
|
||||
code_action_prompt = {
|
||||
enable = false,
|
||||
sign = false,
|
||||
|
|
@ -215,6 +318,7 @@ _G.tab_complete = function()
|
|||
return vim.fn['compe#complete']()
|
||||
end
|
||||
end
|
||||
|
||||
_G.s_tab_complete = function()
|
||||
if vim.fn.pumvisible() == 1 then
|
||||
return t "<C-p>"
|
||||
|
|
@ -319,8 +423,16 @@ require('telescope').setup {
|
|||
["ff"] = require('telescope.actions').send_to_qflist,
|
||||
},
|
||||
},
|
||||
path_display = { "smart", "shorten" },
|
||||
dynamic_preview_title = true,
|
||||
},
|
||||
pickers = {
|
||||
goimpl = {
|
||||
theme = "ivy",
|
||||
layout_config = {
|
||||
height = 10,
|
||||
},
|
||||
},
|
||||
lsp_code_actions = {
|
||||
theme = "ivy",
|
||||
layout_config = {
|
||||
|
|
@ -367,31 +479,13 @@ require('telescope').setup {
|
|||
layout_config = {
|
||||
height = 15,
|
||||
},
|
||||
ignore_current_buffer = true,
|
||||
initial_mode = "normal",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
local dropdown = require 'telescope.themes'.get_dropdown({
|
||||
--previewer = false,
|
||||
--prompt_title = "",
|
||||
--results_height = 16,
|
||||
--width = 0.6,
|
||||
--borderchars = {
|
||||
--{"─", "│", "─", "│", "╭", "╮", "╯", "╰"},
|
||||
--prompt = {"─", "│", " ", "│", "╭", "╮", "│", "│"},
|
||||
--results = {"─", "│", "─", "│", "├", "┤", "╯", "╰"},
|
||||
--preview = {"─", "│", "─", "│", "╭", "╮", "╯", "╰"}
|
||||
--},
|
||||
--winblend = 10
|
||||
})
|
||||
|
||||
local telescope_ivy = require 'telescope.themes'.get_ivy({
|
||||
|
||||
})
|
||||
|
||||
|
||||
--
|
||||
-- Treesitter
|
||||
--
|
||||
|
|
@ -477,6 +571,18 @@ require "neogen".setup {}
|
|||
require('leap').set_default_keymaps()
|
||||
require("flit").setup {}
|
||||
|
||||
require('snippy').setup({
|
||||
mappings = {
|
||||
is = {
|
||||
[',,'] = 'expand_or_advance',
|
||||
[',.'] = 'previous',
|
||||
},
|
||||
nx = {
|
||||
['<leader>x'] = 'cut_text',
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
---
|
||||
--- My own "where" clause generator for Rust
|
||||
|
|
@ -486,7 +592,7 @@ function string.insert(str1, str2, pos)
|
|||
end
|
||||
|
||||
function string.split(s, delimiter)
|
||||
result = {};
|
||||
local result = {};
|
||||
for match in (s .. delimiter):gmatch("(.-)" .. delimiter) do
|
||||
table.insert(result, match);
|
||||
end
|
||||
|
|
@ -559,3 +665,5 @@ function neogen_dwim()
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
require("murdock")
|
||||
|
|
|
|||
28
.vimrc
28
.vimrc
|
|
@ -83,6 +83,17 @@ if exists('veonim')
|
|||
set guifont=Droid\ Sans\ Mono\ Dotted:h20
|
||||
" set linespace=10
|
||||
endif
|
||||
|
||||
if exists('g:neovide')
|
||||
let g:neovide_floating_blur_amount_x = 2.0
|
||||
let g:neovide_floating_blur_amount_y = 2.0
|
||||
let g:neovide_transparency = 0.95
|
||||
let g:neovide_scroll_animation_length = 0.1
|
||||
let g:neovide_cursor_animation_length = 0.05
|
||||
let g:neovide_cursor_trail_size = 0.5
|
||||
endif
|
||||
|
||||
|
||||
" * Polyglot
|
||||
|
||||
let g:tex_flavor = 'latex'
|
||||
|
|
@ -139,7 +150,10 @@ Plug 'vim-airline/vim-airline-themes'
|
|||
Plug 'airblade/vim-rooter'
|
||||
"Plug 'bling/vim-bufferline'
|
||||
Plug 'majutsushi/tagbar'
|
||||
Plug 'SirVer/ultisnips'
|
||||
"Plug 'SirVer/ultisnips'
|
||||
Plug 'dcampos/nvim-snippy'
|
||||
Plug 'rafamadriz/friendly-snippets'
|
||||
|
||||
Plug 'honza/vim-snippets'
|
||||
"Plug 'fatih/vim-go'
|
||||
Plug 'tpope/vim-abolish'
|
||||
|
|
@ -217,7 +231,9 @@ Plug 'ray-x/go.nvim'
|
|||
|
||||
Plug 'RishabhRD/popfix'
|
||||
Plug 'RishabhRD/nvim-lsputils'
|
||||
Plug 'stevanmilic/nvim-lspimport'
|
||||
Plug 'folke/trouble.nvim'
|
||||
Plug 'creativenull/efmls-configs-nvim', { 'tag': 'v1.*' }
|
||||
|
||||
" Plugins that do specific things
|
||||
"Plug 'Shougo/vimproc.vim'
|
||||
|
|
@ -251,6 +267,7 @@ Plug 'danymat/neogen'
|
|||
" Unclear
|
||||
"Plug 'ncm2/float-preview.nvim'
|
||||
Plug 'lambdalisue/gina.vim'
|
||||
Plug 'edolphin-ydf/goimpl.nvim'
|
||||
|
||||
call plug#end()
|
||||
|
||||
|
|
@ -289,6 +306,8 @@ nnoremap <silent> <leader>xx <cmd>TroubleToggle<cr>
|
|||
nnoremap <silent> <leader>xq <cmd>lua vim.diagnostic.setqflist()<CR>
|
||||
"nnoremap <silent> <leader>nc <cmd>lua neogen_dwim()<CR>
|
||||
nnoremap <silent> <leader>nc <cmd>lua require('neogen').generate({ type = 'any' })<CR>
|
||||
nnoremap <silent> gm <cmd>lua require('lspimport').import()<CR>
|
||||
|
||||
|
||||
" Set updatetime for CursorHold
|
||||
" 300ms of no cursor movement to trigger CursorHold
|
||||
|
|
@ -1026,7 +1045,8 @@ nnoremap <Leader>hh :A<CR>
|
|||
" CommandT is useful, but if I'm juggling lots of buffers, limit it to another
|
||||
" one I have open (instead of standard <Leader>t).
|
||||
"nnoremap <silent> <Leader>o :<C-u>Buffers<CR>
|
||||
nnoremap <silent> <Leader>o <cmd>lua require('telescope.builtin').buffers{}<cr>
|
||||
nnoremap <silent> <Leader>o <cmd>lua require('telescope.builtin').buffers{initial_mode = "insert"}<cr>
|
||||
nnoremap <silent> <C-j> <cmd>lua require('telescope.builtin').buffers{prompt_prefix = " "}<cr>
|
||||
"nnoremap <Leader>j <C-^>
|
||||
"nnoremap <Leader>p :PTW
|
||||
nnoremap <Leader>p :LustyJugglePrevious<CR>
|
||||
|
|
@ -1043,9 +1063,6 @@ endif
|
|||
" ** SEE ALSO **
|
||||
" filetype.vim
|
||||
|
||||
command Comments lexpr system($HOME . '/src/gogh/src/github.com/barakmich/gogh/gogh')
|
||||
|
||||
|
||||
"call remote#host#RegisterPlugin('python3', '/home/barak/.vim/bundle/deoplete.nvim/rplugin/python3/deoplete', [
|
||||
"\ {'sync': v:true, 'name': '_deoplete', 'type': 'function', 'opts': {}},
|
||||
"\ ])
|
||||
|
|
@ -1088,4 +1105,3 @@ let s:gptool_temp = expand($HOME . '/src/gptool/bindings.vim')
|
|||
if filereadable(s:gptool_temp)
|
||||
exec ':so ' . s:gptool_temp
|
||||
endif
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue