Commit 6944de80 authored by Tim van Deurzen's avatar Tim van Deurzen

Update doom and neovim configs.

parent e1fc3d3a
...@@ -52,3 +52,11 @@ ...@@ -52,3 +52,11 @@
;; ;;
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how ;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
;; they are implemented. ;; they are implemented.
(use-package! evil-colemak-basics
:after evil
:hook (after-init . global-evil-colemak-basics-mode)
:config
(setq evil-colemak-basics-rotate-t-f-j t))
(after! evil (global-evil-colemak-basics-mode t))
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
dired ; making dired pretty [functional] dired ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent electric ; smarter, keyword-based electric-indent
;;ibuffer ; interactive buffer management ;;ibuffer ; interactive buffer management
undo ; persistent, smarter undo for your inevitable mistakes (undo +tree) ; persistent, smarter undo for your inevitable mistakes
vc ; version-control and Emacs, sitting in a tree vc ; version-control and Emacs, sitting in a tree
:term :term
......
...@@ -9,6 +9,8 @@ ...@@ -9,6 +9,8 @@
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror: ;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
;(package! some-package) ;(package! some-package)
(package! evil-colemak-basics)
;; To install a package directly from a remote git repo, you must specify a ;; To install a package directly from a remote git repo, you must specify a
;; `:recipe'. You'll find documentation on what `:recipe' accepts here: ;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
;; https://github.com/raxod502/straight.el#the-recipe-format ;; https://github.com/raxod502/straight.el#the-recipe-format
......
...@@ -21,8 +21,10 @@ local keymap = { ...@@ -21,8 +21,10 @@ local keymap = {
l = { l = {
name = '+lsp', name = '+lsp',
a = {'<Cmd>Lspsaga code_action<CR>', 'code action'}, -- a = {'<Cmd>Lspsaga code_action<CR>', 'code action'},
r = {'<Cmd>Lspsaga rename<CR>', 'rename'}, a = {'<Cmd>lua vim.lsp.buf.code_action()<CR>', 'code action'},
--r = {'<Cmd>Lspsaga rename<CR>', 'rename'},
r = {'<Cmd>lua vim.lsp.buf.rename()<CR>', 'rename'},
s = {'<Cmd>Lspsaga lsp_finder<CR>', 'find'}, s = {'<Cmd>Lspsaga lsp_finder<CR>', 'find'},
p = {'<Cmd>Lspsaga preview_definition<CR>', 'preview definition'}, p = {'<Cmd>Lspsaga preview_definition<CR>', 'preview definition'},
f = {'<Cmd>lua vim.lsp.buf.formatting()<CR>', 'format'}, f = {'<Cmd>lua vim.lsp.buf.formatting()<CR>', 'format'},
......
...@@ -15,10 +15,108 @@ lsp_config.gopls.setup{ ...@@ -15,10 +15,108 @@ lsp_config.gopls.setup{
}, },
} }
lsp_config.rust_analyzer.setup{ -- lsp_config.rust_analyzer.setup{
capabilities = capabilities, -- capabilities = capabilities,
-- settings = {
-- ["rust-analyzer"] = {
-- assist = {
-- importGranularity = "module",
-- importPrefix = "by_self",
-- },
-- cargo = {
-- loadOutDirsFromCheck = true
-- },
-- procMacro = {
-- enable = true
-- },
-- }
-- }
-- }
local opts = {
tools = { -- rust-tools options
-- Automatically set inlay hints (type hints)
autoSetHints = true,
-- Whether to show hover actions inside the hover window
-- This overrides the default hover handler
hover_with_actions = true,
runnables = {
-- whether to use telescope for selection menu or not
use_telescope = true
-- rest of the opts are forwarded to telescope
},
debuggables = {
-- whether to use telescope for selection menu or not
use_telescope = true
-- rest of the opts are forwarded to telescope
},
-- These apply to the default RustSetInlayHints command
inlay_hints = {
-- Only show inlay hints for the current line
only_current_line = false,
-- Event which triggers a refersh of the inlay hints.
-- You can make this "CursorMoved" or "CursorMoved,CursorMovedI" but
-- not that this may cause higher CPU usage.
-- This option is only respected when only_current_line and
-- autoSetHints both are true.
only_current_line_autocmd = "CursorHold",
-- wheter to show parameter hints with the inlay hints or not
show_parameter_hints = true,
-- prefix for parameter hints
parameter_hints_prefix = "<- ",
-- prefix for all the other hints (type, chaining)
other_hints_prefix = "=> ",
-- whether to align to the length of the longest line in the file
max_len_align = false,
-- padding from the left if max_len_align is true
max_len_align_padding = 1,
-- whether to align to the extreme right or not
right_align = false,
-- padding from the right if right_align is true
right_align_padding = 7,
-- The color of the hints
highlight = "Comment",
},
hover_actions = {
-- the border that is used for the hover window
-- see vim.api.nvim_open_win()
border = {
{"╭", "FloatBorder"}, {"─", "FloatBorder"},
{"╮", "FloatBorder"}, {"│", "FloatBorder"},
{"╯", "FloatBorder"}, {"─", "FloatBorder"},
{"╰", "FloatBorder"}, {"│", "FloatBorder"}
},
-- whether the hover action window gets automatically focused
auto_focus = false
}
},
-- all the opts to send to nvim-lspconfig
-- these override the defaults set by rust-tools.nvim
-- see https://github.com/neovim/nvim-lspconfig/blob/master/CONFIG.md#rust_analyzer
server = {} -- rust-analyer options
} }
require('rust-tools').setup(opts)
lsp_config.angularls.setup{ lsp_config.angularls.setup{
capabilities = capabilities, capabilities = capabilities,
} }
......
...@@ -226,6 +226,15 @@ return require('packer').startup(function() ...@@ -226,6 +226,15 @@ return require('packer').startup(function()
end end
} }
use {
'simrat39/rust-tools.nvim',
requires = {
'nvim-lua/popup.nvim'
}
}
use { use {
'lewis6991/gitsigns.nvim', 'lewis6991/gitsigns.nvim',
requires = { requires = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment