diff --git a/config/bspwm/bspwmrc b/config/bspwm/bspwmrc index 79a2ae7..b4d26a7 100755 --- a/config/bspwm/bspwmrc +++ b/config/bspwm/bspwmrc @@ -41,7 +41,6 @@ C focused_border_color "#61AFEF" C urgent_border_color "#5c6370" #== BSPWM Rules -R kitty desktop='^1' focus=on follow=on R Google-chrome desktop='^2' focus=on follow=on R Code desktop='^3' focus=on follow=on state=fullscreen R jetbrains-webstorm desktop='^3' focus=on follow=on diff --git a/config/bspwm/sxhkd b/config/bspwm/sxhkd index 8ad5d5c..2ed4198 100644 --- a/config/bspwm/sxhkd +++ b/config/bspwm/sxhkd @@ -22,6 +22,9 @@ super + Escape super + q bspc node -c +alt + f4 + bspc node -c + super + control + r bspc wm -r && pkill sxhkd && sxhkd -c ~/.config/bspwm/sxhkd diff --git a/config/lvim/config.lua b/config/lvim/config.lua index 81ea233..cbc2beb 100644 --- a/config/lvim/config.lua +++ b/config/lvim/config.lua @@ -1,5 +1,5 @@ lvim.format_on_save = false -lvim.lint_on_save = false +lvim.lint_on_save = true lvim.colorscheme = "onedarker" -- Default fatures @@ -14,15 +14,18 @@ lvim.builtin.gitsigns.opts.current_line_blame_opts = { delay = 200 } -- TreeSitter lvim.builtin.treesitter.ensure_installed = { "javascript", "typescript", "jsdoc", "lua", "go" } lvim.builtin.treesitter.indent.disable = { "clojure", "java", "python" } -require("user.treesitter") -- Telescope lvim.builtin.telescope.defaults.layout_config.prompt_position = "top" -lvim.builtin.telescope.defaults.file_ignore_patterns = { ".git", "node_modules", "env" } +lvim.builtin.telescope.defaults.file_ignore_patterns = { ".git", "node_modules", "env", ".bin" } + +-- NvimTree +lvim.builtin.nvimtree.ignore = { ".git", "node_modules", ".bin", "env" } -- Mappings lvim.keys.normal_mode[""] = "BufferClose" lvim.keys.normal_mode[""] = "w" +lvim.keys.visual_mode["jk"] = "" lvim.builtin.which_key.mappings.l.a = { "Telescope lsp_code_actions", "Code Actions" } lvim.builtin.which_key.mappings.l.d = { "TroubleToggle", "Diagnostics" } lvim.builtin.which_key.mappings.l.R = { "TroubleToggle lsp_references", "References" } @@ -43,16 +46,30 @@ end -- Pluginos lvim.plugins = { - { "tpope/vim-surround", keys = { "c", "y", "d" } }, - { "andymass/vim-matchup", keys = { "%" } }, + { "tpope/vim-surround", keys = { "c", "y", "d" }, event = "BufRead" }, { "tzachar/cmp-tabnine", run = "./install.sh", event = "InsertEnter" }, { "folke/trouble.nvim", cmd = { "TroubleToggle" } }, { "folke/todo-comments.nvim", event = "BufRead" }, - { "theHamsta/nvim-dap-virtual-text", config = "require[[user.dap-virtual-text]].setup()" }, - { "vim-test/vim-test", cmd = { "TestNearest", "TestFile", "TestSuite", "TestLast", "TestVisit" } }, + { "editorconfig/editorconfig-vim" }, + { "theHamsta/nvim-dap-virtual-text", config = "vim.g.dap_virtual_text = true" }, + { + "Smirnov-O/ts-unit.nvim", + keys = { "vip", "cip", "yip", "dip" }, + config = function() + require("ts-unit").setup({ keymaps = true }) + end, + }, + { + "Olical/conjure", + ft = { "clojure", "fennel", "scheme" }, + requires = { { "PaterJason/cmp-conjure", after = "conjure" } }, + config = function() + require("user.conjure").setup() + end, + }, { "rcarriga/vim-ultest", - requires = { "vim-test/vim-test" }, + requires = { { "vim-test/vim-test", after = "vim-ultest" } }, cmd = { "Ultest", "UltestStop", "UltestClear", "UltestNearest", "UltestOutput" }, run = ":UpdateRemotePlugins", }, diff --git a/config/lvim/ftplugin/lua.lua b/config/lvim/ftplugin/lua.lua index 9f74577..a980ca4 100644 --- a/config/lvim/ftplugin/lua.lua +++ b/config/lvim/ftplugin/lua.lua @@ -1,4 +1,3 @@ -lvim.format_on_save = true lvim.lang.lua.formatters = { { exe = "stylua" }, } diff --git a/config/lvim/lua/user/conjure.lua b/config/lvim/lua/user/conjure.lua new file mode 100644 index 0000000..41ed49f --- /dev/null +++ b/config/lvim/lua/user/conjure.lua @@ -0,0 +1,48 @@ +local M = {} + +M.setup = function() + vim.g.maplocalleader = "," + vim.g["conjure#mapping#doc_word"] = "K" + + -- Clojure + vim.g["conjure#client#clojure#nrepl#eval#auto_require"] = false + vim.g["conjure#client#clojure#nrepl#connection#auto_repl#enabled"] = false + + -- Scheme + vim.g["conjure#client#scheme#stdio#command"] = "chicken-csi -quiet -:c" + vim.g["conjure#client#scheme#stdio#prompt_pattern"] = "\n-#;%d-> " + + lvim.builtin.cmp.sources = { + { name = "nvim_lsp", max_item_count = 7 }, + { name = "cmp_tabnine", max_item_count = 3 }, + { name = "buffer", max_item_count = 3 }, + { name = "path", max_item_count = 5 }, + { name = "luasnip", max_item_count = 3 }, + { name = "nvim_lua" }, + { name = "conjure" }, + } + + lvim.builtin.cmp.formatting = { + format = function(entry, vim_item) + local cmp_kind = require("user.lsp_kind").cmp_kind + vim_item.kind = cmp_kind(vim_item.kind) + vim_item.menu = ({ + buffer = "(Buffer)", + nvim_lsp = "(LSP)", + luasnip = "(Snip)", + spell = "(Spell)", + path = "(Path)", + conjure = "(Conjure)", + cmp_tabnine = "(Tabnine)", + })[entry.source.name] + vim_item.dup = ({ + buffer = 1, + path = 1, + nvim_lsp = 0, + })[entry.source.name] or 0 + return vim_item + end, + } +end + +return M diff --git a/vscode/settings.json b/vscode/settings.json index 5e0f632..ea9a793 100644 --- a/vscode/settings.json +++ b/vscode/settings.json @@ -1,7 +1,7 @@ { "workbench.iconTheme": "material-icon-theme", "workbench.colorTheme": "GitHub Dark Default", - "workbench.sideBar.location": "right", + "workbench.sideBar.location": "left", "workbench.editor.untitled.hint": "hidden", "workbench.startupEditor": "none", "workbench.panel.defaultLocation": "bottom", @@ -62,5 +62,6 @@ }, "[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" - } -} + }, + "go.toolsManagement.autoUpdate": true +} \ No newline at end of file diff --git a/zshrc b/zshrc index a22adec..ad99fe6 100644 --- a/zshrc +++ b/zshrc @@ -12,15 +12,23 @@ export FZF_DEFAULT_COMMAND="fd -t f -t l -E node_modules -E env -E __pycache__ - ## Oh my zsh plugins=(git dotenv npm yarn extract) ZSH_THEME="simple" +DISABLE_AUTO_TITLE="true" source "$HOME/.oh-my-zsh/oh-my-zsh.sh" ## FNM eval $(fnm env) +## Zoxide +eval "$(zoxide init zsh)" + ## Functions dotnet() { $HOME/dotnet/dotnet "$@" } +asdf() { + . /opt/asdf-vm/asdf.sh + asdf $@ +} ## Aliases alias cls="clear" cp="cp -r" mkdir="mkdir -p" open="open_command" lg="lazygit"