Helix, git, nvim

This commit is contained in:
hedy 2024-04-05 15:10:42 +08:00
parent accdb8ebdf
commit e20394f642
Signed by: hedy
GPG Key ID: B51B5A8D1B176372
9 changed files with 58 additions and 22 deletions

View File

@ -1,4 +1,4 @@
theme = "catppuccin_macchiato"
theme = "catppuccin_mocha"
[editor]
line-number = "relative"

View File

@ -95,9 +95,9 @@ map("n", "<leader>tp", "<cmd>tabprev<cr>", d "tabprev")
if vim.fn.has("macunix") == 1 then
-- WTF?? (I checked using C-v in insert mode)
-- TODO: Fix in tmux
map("", "<C-@>", "<cmd>split term://fish<cr><cmd>resize -7<cr>i")
map("", "<C-@>", "<cmd>botright split term://fish<cr><cmd>resize -7<cr>i")
else
map("", "<C-`>", "<cmd>split term://fish<cr><cmd>resize -7<cr>i",
map("", "<C-`>", "<cmd>botright split term://fish<cr><cmd>resize -7<cr>i",
d "Open terminal below" )
end
map("t", "<Esc>", "<C-\\><C-n>")
@ -134,6 +134,8 @@ au("FileType", {
-- Requires 'mini.surround' for 'sa' and Comment.nvim for 'gb'
map("s", '(', "<C-o>sa(gvll<C-g>", {remap = true})
map("s", ')', "<C-o>sa)gvll<C-g>", {remap = true})
map("s", '[', "<C-o>sa[gvll<C-g>", {remap = true})
map("s", ']', "<C-o>sa]gvll<C-g>", {remap = true})
map("s", '\'', "<C-o>sa'gvll<C-g>", {remap = true})
map("s", '"', '<C-o>sa"gvll<C-g>', {remap = true})
map("s", '`', "<C-o>sa`gvll<C-g>", {remap = true})
@ -153,3 +155,5 @@ map("s", '<C-/>', "<C-v>vgb", {remap = true})
-- Visual block
-- * I/A can be used in place of i/a
-- * >/< shift can be used!
vim.api.nvim_create_user_command('Date', [[exe "r!date '+\\%Y-\\%m-\\%d \\%T'" | normal! kJ]], {})

View File

@ -78,6 +78,7 @@ return {
opts = {
-- Doesn't seem to work
filter_kind = false,
backends = {"lsp"},
},
-- Optional dependencies
dependencies = {

View File

@ -151,4 +151,5 @@ end
return {
"b0o/incline.nvim",
config = config,
-- enabled = false,
}

View File

@ -79,7 +79,7 @@ lspconfig.pylsp.setup{
settings = {
pylsp = {
plugins = {
pylint = { enabled = true },
pylint = { enabled = false },
black = { enabled = true },
pylsp_mypy = {
enabled = true,
@ -138,12 +138,13 @@ lspconfig.lua_ls.setup {
},
},
}
lspconfig.tsserver.setup{}
end
return {
{ "neovim/nvim-lspconfig",
config = config,
ft = {"python", "go", "markdown", "lua", "vim", "bash"},
ft = {"python", "go", "markdown", "lua", "vim", "bash", "javascript", 'javascriptreact', 'sh'},
},
{ "ray-x/lsp_signature.nvim",
event = "VeryLazy",

View File

@ -8,6 +8,7 @@ return {
{
dir = "~/projects/outline.nvim",
enabled = vim.fn.has("nvim-0.7") == 1,
dependencies = { 'msr1k/outline-asciidoc-provider.nvim' },
lazy = false,
cmd = { "Outline", "OutlineOpen" },
keys = {
@ -15,16 +16,26 @@ return {
{ "<leader>t<leader>", "<cmd>Outline!<CR>", desc = "Toggle outline window without focus" },
{ "<leader>tf", "<cmd>OutlineFollow<CR>", desc = "Focus & follow outline window" },
},
config = function(_, opts)
require('outline').setup(opts)
vim.api.nvim_create_autocmd("FileType", {
pattern = "Outline",
callback = function()
vim.api.nvim_create_autocmd("WinLeave", {
buffer = 0,
command = "noh",
})
end
})
end,
opts = {
preview_window = {
live = false,
border = 'rounded',
open_hover_on_preview = false,
},
symbol_folding = {
-- Auto fold all but current hover
autofold_depth = 1,
auto_unfold = {
hovered = true,
only = 2,
},
},
@ -37,9 +48,9 @@ return {
},
keymaps = {
close = 'q',
unfold_all = {},
fold_all = {},
fold_toggle = {'<tab>', '<space>'},
-- unfold_all = {},
-- fold_all = {},
-- fold_toggle = {'<tab>', '<space>'},
},
outline_window = {
position = 'left',
@ -55,20 +66,23 @@ return {
},
providers = {
lsp = { blacklist_clients = {'marksman'} },
markdown = {filetypes = {'markdown', 'text'}},
priority = {'lsp', 'markdown', 'asciidoc', 'norg'},
},
symbols = {
filter = {
lua = { 'String', 'Package', 'Constant', exclude = true },
python = { 'Function', 'Method', 'Class' },
},
-- icon_fetcher = function(k)
-- local ft = vim.api.nvim_buf_get_option(require('outline').current.code.buf, "ft")
-- -- There can only be kind String in markdown so... let's not have the
-- -- eye candy here
-- if ft == 'markdown' and k == 'String' then
-- return ""
-- end
-- return false
-- end,
icon_fetcher = function(k)
local ft = vim.api.nvim_buf_get_option(require('outline').current.code.buf, "ft")
-- There can only be kind String in markdown so... let's not have the
-- eye candy here
if ft == 'markdown' and k == 'String' then
return ""
end
return false
end,
icon_source = "lspkind",
},
},

View File

@ -2,7 +2,7 @@ local function config()
local configs = require("nvim-treesitter.configs")
configs.setup({
ensure_installed = {
"cpp", "lua", "vim", "vimdoc", "html", "go", "bash", "regex", "markdown", "markdown_inline", "query", "toml", "vimdoc", "python", "diff",
"cpp", "lua", "vim", "vimdoc", "html", "go", "bash", "regex", "markdown", "markdown_inline", "query", "toml", "vimdoc", "python", "diff", "javascript"
},
sync_install = false,
highlight = { enable = true },

View File

@ -94,3 +94,18 @@ return {
"sam4llis/nvim-tundra", lazy = false, priority = 10000,
config = config,
}
-- return {
-- "craftzdog/solarized-osaka.nvim",
-- lazy = false,
-- priority = 1000,
-- config = function()
-- require('solarized-osaka').setup({
-- transparent = false,
-- styles = {
-- floats = "transparent",
-- }
-- })
-- vim.cmd("colorscheme solarized-osaka")
-- end
-- }

View File

@ -52,7 +52,7 @@
rebase = false
[commit]
gpgsign = true
gpgsign = true
# sendmail config in [include]