Simplify statusline, support tabs, add more languages
This commit is contained in:
parent
c28dd3e9a9
commit
bb94a399de
11 changed files with 166 additions and 109 deletions
|
|
@ -30,6 +30,17 @@ require("lazy").setup({
|
|||
event = "VeryLazy",
|
||||
},
|
||||
|
||||
-- Markdown preview
|
||||
{
|
||||
"iamcco/markdown-preview.nvim",
|
||||
cmd = { 'MarkdownPreviewToggle', 'MarkdownPreview', 'MarkdownPreviewStop' },
|
||||
ft = { 'markdown' },
|
||||
build = function()
|
||||
vim.cmd [[Lazy load markdown-preview.nvim]]
|
||||
vim.fn['mkdp#util#install']()
|
||||
end,
|
||||
},
|
||||
|
||||
-- Dashboard buffer
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
|
|
@ -37,6 +48,25 @@ require("lazy").setup({
|
|||
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||
},
|
||||
|
||||
-- Compile mode
|
||||
{
|
||||
"ej-shafran/compile-mode.nvim",
|
||||
-- tag = "v5.*",
|
||||
-- you can just use the latest version:
|
||||
branch = "latest",
|
||||
-- or the most up-to-date updates:
|
||||
-- branch = "nightly",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
{ "m00qek/baleia.nvim", tag = "v1.3.0" },
|
||||
},
|
||||
config = function()
|
||||
vim.g.compile_mode = {
|
||||
baleia_setup = true,
|
||||
}
|
||||
end
|
||||
};
|
||||
|
||||
-- Zen mode
|
||||
"folke/zen-mode.nvim",
|
||||
|
||||
|
|
@ -75,10 +105,10 @@ require("lazy").setup({
|
|||
|
||||
-- See function signatures when typing them
|
||||
{
|
||||
"ray-x/lsp_signature.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {},
|
||||
config = function(_, opts) require'lsp_signature'.setup(opts) end
|
||||
-- "ray-x/lsp_signature.nvim",
|
||||
-- event = "VeryLazy",
|
||||
-- opts = {},
|
||||
-- config = function(_, opts) require'lsp_signature'.setup(opts) end
|
||||
},
|
||||
|
||||
-- Left-side file tree dispaly
|
||||
|
|
@ -89,8 +119,15 @@ require("lazy").setup({
|
|||
},
|
||||
},
|
||||
|
||||
-- Shows current mode on bottom of screen
|
||||
"itchyny/lightline.vim",
|
||||
{
|
||||
'nvim-lualine/lualine.nvim',
|
||||
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||
},
|
||||
|
||||
{
|
||||
'jedrzejboczar/possession.nvim',
|
||||
requires = { 'nvim-lua/plenary.nvim' },
|
||||
},
|
||||
|
||||
-- LSP
|
||||
{'VonHeikemen/lsp-zero.nvim', branch = 'v4.x'},
|
||||
|
|
|
|||
|
|
@ -10,13 +10,23 @@ vim.keymap.set("n", "J", "mzJ`z")
|
|||
vim.keymap.set("n", "n", "nzzzv")
|
||||
vim.keymap.set("n", "N", "Nzzzv")
|
||||
|
||||
-- step through visual lines by default
|
||||
vim.keymap.set("n", "j", "gj")
|
||||
vim.keymap.set("n", "gj", "j")
|
||||
vim.keymap.set("n", "k", "gk")
|
||||
vim.keymap.set("n", "gk", "k")
|
||||
vim.keymap.set("v", "j", "gj")
|
||||
vim.keymap.set("v", "gj", "j")
|
||||
vim.keymap.set("v", "k", "gk")
|
||||
vim.keymap.set("v", "gk", "k")
|
||||
|
||||
-- easier escape back to normal mode
|
||||
vim.keymap.set("i", "<C-c>", "<Esc>")
|
||||
|
||||
vim.keymap.set("n", "Q", "<nop>")
|
||||
|
||||
-- universal find and replace
|
||||
vim.keymap.set("n", "<leader>s", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]])
|
||||
vim.keymap.set("n", "<leader>r", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]])
|
||||
|
||||
-- moving highlighted text
|
||||
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
|
||||
|
|
@ -87,3 +97,34 @@ vim.keymap.set("n", "<leader>hF",
|
|||
{ noremap = true, silent = false, desc = "Describe face" }
|
||||
)
|
||||
|
||||
local str = string.format
|
||||
|
||||
for i = 1, 9 do
|
||||
vim.keymap.set("n", str("<A-%s>", i), str("%sgt", i), { desc = str("Goto tab %s", i) })
|
||||
vim.keymap.set("t", str("<A-%s>", i), str("<C-\\><C-n>%sgt", i), { desc = str("Goto tab %s", i) })
|
||||
end
|
||||
|
||||
vim.keymap.set("n", "<A-n>", "<CMD>tabnew<CR>", { desc = "Create a new tab" })
|
||||
vim.keymap.set("n", "<A-CR>", "<CMD>tabnew<CR><CMD>term<CR>i", { desc = "Create a new tab with a terminal" })
|
||||
vim.keymap.set("n", "<A-q>", "<CMD>tabclose<CR>", { desc = "Close current tab" })
|
||||
vim.keymap.set("n", "<A-0>", "<CMD>tablast<CR>", { desc = "Goto last tab" })
|
||||
vim.keymap.set("n", "<A-]>", "<CMD>tabnext<CR>", { desc = "Goto next tab" })
|
||||
vim.keymap.set("n", "<A-[>", "<CMD>tabprevious<CR>", { desc = "Goto prev tab" })
|
||||
vim.keymap.set("n", "<A-->", "<CMD>tabm-<CR>", { desc = "Move tab to the left" })
|
||||
vim.keymap.set("n", "<A-=>", "<CMD>tabm+<CR>", { desc = "Move tab to the right" })
|
||||
vim.keymap.set("n", "<A-'>", "<CMD>tab split<CR>", { desc = "Clone window in new tab" })
|
||||
|
||||
vim.keymap.set("n", "<C-w><CR>", "<CMD>term<CR>i", { desc = "Terminal" })
|
||||
|
||||
vim.api.nvim_create_autocmd("TabEnter", {
|
||||
callback = function()
|
||||
local bufnr = vim.api.nvim_get_current_buf()
|
||||
local buftype = vim.api.nvim_buf_get_option(bufnr, "buftype")
|
||||
|
||||
if buftype == "terminal" then
|
||||
-- Enter Terminal-Job mode
|
||||
vim.api.nvim_feedkeys("i", "n", false)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,13 @@ autocmd("bufenter", {
|
|||
end,
|
||||
})
|
||||
|
||||
-- You can then map it to a key or create a command:
|
||||
vim.api.nvim_create_user_command('GoFmt', function()
|
||||
local filename = vim.fn.expand('%')
|
||||
vim.fn.system('gofmt -e -w ' .. filename)
|
||||
vim.cmd('edit!')
|
||||
end, {})
|
||||
|
||||
vim.filetype.add({
|
||||
extension = {
|
||||
typ = 'typst'
|
||||
|
|
@ -39,6 +46,8 @@ vim.opt.signcolumn = "auto"
|
|||
|
||||
vim.o.shell = "zsh"
|
||||
|
||||
vim.o.title = true
|
||||
|
||||
-- Do not map q to :q in man mode
|
||||
vim.g.no_man_maps = true;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue