From 12fb9ecc242867b03626d1c52e5e84799ab330c8 Mon Sep 17 00:00:00 2001 From: zachir Date: Thu, 17 Apr 2025 22:59:36 -0500 Subject: Redo nvim to use init.lua --- nvim/lua/keymaps.lua | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 nvim/lua/keymaps.lua (limited to 'nvim/lua/keymaps.lua') diff --git a/nvim/lua/keymaps.lua b/nvim/lua/keymaps.lua new file mode 100644 index 0000000..26037c6 --- /dev/null +++ b/nvim/lua/keymaps.lua @@ -0,0 +1,97 @@ +-- define common options +local opts = { + noremap = true, -- non-recursive + silent = true, -- do not show message +} + +-- set leader key +vim.g.mapleader = "'" + +----------------- +-- Normal mode -- +----------------- + +-- Hint: set `:h vim.map.set()` +-- Better window navigation +vim.keymap.set('n', '', 'h', opts) +vim.keymap.set('n', '', 'j', opts) +vim.keymap.set('n', '', 'k', opts) +vim.keymap.set('n', '', 'l', opts) + +-- Resize with arrows +vim.keymap.set('n', '', ':resize -2', opts) +vim.keymap.set('n', '', ':resize +2', opts) +vim.keymap.set('n', '', ':vertical resize -2', opts) +vim.keymap.set('n', '', ':vertical resize +2', opts) +vim.keymap.set('n', 'wh :vertical resize', '-1') +vim.keymap.set('n', 'wj :resize', '-1') +vim.keymap.set('n', 'wk :resize', '+1') +vim.keymap.set('n', 'wl :vertical resize', '+1') + +-- NerdTREE +vim.keymap.set('n', 'tt', ':NERDTreeToggle') + +-- files +-- these may go away soon +vim.keymap.set('n', 'xx', ':q') +vim.keymap.set('n', 'x!', ':q!') + +-- Close with leader +vim.keymap.set('n', 'ww', ':w', opts) +vim.keymap.set('n', 'qq', ':q', opts) +vim.keymap.set('n', 'wq', ':wq', opts) +vim.keymap.set('n', 'q!', ':q!', opts) +vim.keymap.set('n', 'wq', ':wq') +vim.keymap.set('n', 'ee :e', '') + +-- Tabs with leader +vim.keymap.set('n', 'th', ':tabprevious', opts) +vim.keymap.set('n', 'tl', ':tabnext', opts) +vim.keymap.set('n', 'tk', ':tabnew', opts) +vim.keymap.set('n', 'tj', ':tabclose', opts) + +-- Write with sudo +vim.keymap.set('n', 'ZW', ':w !pkexec tee % >/dev/null', opts) + +-- clear search highlights +vim.keymap.set('n', '/', ':noh') + +-- toggles +vim.keymap.set('n', 'tn :set', 'number!') +vim.keymap.set('n', 'tr :set', 'relativenumber!') + +-- write as root +vim.keymap.set('n', 'ZW', ':w !pkexec tee % >/dev/null') + +-- config +vim.keymap.set('n', 'en', ':e ~/.config/nvim/init.lua') +vim.keymap.set('n', 'ec', ':source %') +vim.keymap.set('n', 'er', ':source ~/.config/nvim/init.lua') + +-- Goyo +vim.keymap.set('n', 'G', ':Goyo') + +-- fugitive +vim.keymap.set('n', 'gp :G', 'pull') +vim.keymap.set('n', 'gd :G diff', '%') + +----------------- +-- Visual mode -- +----------------- + +-- Hint: start visual mode with the same area as the previous area and the same mode +--vim.keymap.set('v', '<', '', '>gv', opts) + +-- windows +vim.keymap.set('v', '', 'h') +vim.keymap.set('v', '', 'j') +vim.keymap.set('v', '', 'k') +vim.keymap.set('v', '', 'l') + +-------------- +-- TERMINAL -- +-------------- + +-- escape for term windows +vim.keymap.set('t', '', '') -- cgit v1.2.3 From 6c75a83e941500619b5499b5d4763c8dab2c93b6 Mon Sep 17 00:00:00 2001 From: Zach Smith Date: Mon, 30 Jun 2025 09:49:02 -0500 Subject: Reorganize nvim config, remove redundant plugin calls --- nvim/lua/keymaps.lua | 2 +- nvim/lua/options.lua | 54 ++++++++++++++++++++++++++++++++++++++++++ nvim/lua/plugins.lua | 66 +--------------------------------------------------- 3 files changed, 56 insertions(+), 66 deletions(-) (limited to 'nvim/lua/keymaps.lua') diff --git a/nvim/lua/keymaps.lua b/nvim/lua/keymaps.lua index 26037c6..4f4a489 100644 --- a/nvim/lua/keymaps.lua +++ b/nvim/lua/keymaps.lua @@ -11,7 +11,7 @@ vim.g.mapleader = "'" -- Normal mode -- ----------------- --- Hint: set `:h vim.map.set()` +-- Hint: see `:h vim.map.set()` -- Better window navigation vim.keymap.set('n', '', 'h', opts) vim.keymap.set('n', '', 'j', opts) diff --git a/nvim/lua/options.lua b/nvim/lua/options.lua index 1d4826e..ae802be 100644 --- a/nvim/lua/options.lua +++ b/nvim/lua/options.lua @@ -8,6 +8,8 @@ vim.opt.tabstop = 2 -- number of visual spaces per TAB vim.opt.softtabstop = 2 -- number of spaces in tab when editing vim.opt.shiftwidth = 2 -- insert 2 spaces on a tab vim.opt.expandtab = true -- tabs are spaces +vim.opt.smartindent = true +vim.opt.smarttab = true -- UI config vim.opt.number = true -- show absolute number @@ -30,3 +32,55 @@ vim.opt.undolevels = 1000 -- Number of undo levels vim.opt.backspace = { "indent", "eol", "start" } -- Backspace behavior vim.opt.foldmethod = "marker" vim.opt.conceallevel = 2 + +-- Plugins +-- emmet +vim.g.user_emmet_leader_key = '' + +-- zig +vim.g.zig_fmt_autosave = 1 + +-- markdown +vim.g.vim_markdown_folding_disabled = 1 +vim.g.vim_markdown_folding_level = 3 +vim.g.vim_markdown_toc_autofit = 1 +vim.g.vim_markdown_emphasis_multiline = 0 +vim.g.tex_conceal = "" +vim.g.vim_markdown_math = 1 +vim.g.vim_markdown_conceal_code_blocks = 1 +vim.g.vim_markdown_fenced_languages = { 'c++=cpp', 'viml=vim', 'bash=sh', 'ini=dosini' } +vim.g.vim_markdown_follow_anchor = 1 +vim.g.vim_markdown_math = 1 +vim.g.vim_markdown_frontmatter = 1 +vim.g.vim_markdown_toml_frontmatter = 1 +vim.g.vim_markdown_strikethrough = 1 +vim.g.vim_markdown_no_extensions_in_markdown = 1 +vim.g.vim_markdown_autowrite = 1 +vim.g.vim_markdown_auto_insert_bullets = 0 +vim.g.vim_markdown_new_list_item_indent = 0 +vim.g.vim_markdown_edit_url_in = 'tab' + +-- NERDTree +vim.g.NERDTreeGitStatusUseNerdFonts = 1 +vim.g.NERDTreeGitStatusShowClean = 1 +vim.g.NERDTreeDirArrowExpandable = '>' +vim.g.NERDTreeDirArrowCollapsible = '<' +vim.g.NERDTreeMapToggleHidden = 'z' + +-- goyo +vim.g.goyo_width = '90%' +vim.g.goyo_height = '100%' + +-- limelight +vim.g.limelight_conceal_ctermfg = 'gray' +vim.g.limelight_conceal_guifg = 'gray' + +-- devicon +vim.g.airline_powerline_fonts = 1 +vim.g.webdevicons_enable_nerdtree = 1 + +-- vim-indent-guides +vim.g.indent_guides_enable_on_vim_startup = 0 + +-- vim-signify +vim.opt.updatetime = 100 diff --git a/nvim/lua/plugins.lua b/nvim/lua/plugins.lua index 8056494..f90b09c 100644 --- a/nvim/lua/plugins.lua +++ b/nvim/lua/plugins.lua @@ -5,7 +5,7 @@ if not (vim.uv or vim.loop).fs_stat(lazypath) then "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", - "--branch=stable", -- latest stable rtelease + "--branch=stable", -- latest stable release lazypath, }) end @@ -33,13 +33,9 @@ require("lazy").setup({ end, }, "tanvirtin/monokai.nvim", - 'preservim/nerdtree', - 'ziglang/zig.vim', "lervag/vimtex", 'tomasiser/vim-code-dark', 'flazz/vim-colorschemes', - 'tomasiser/vim-code-dark', - 'flazz/vim-colorschemes', 'ZachIndigo/vim-preglow', 'axvr/org.vim', 'ziglang/zig.vim', @@ -64,63 +60,3 @@ require("lazy").setup({ 'ryanoasis/vim-devicons', {'akinsho/toggleterm.nvim', version = "*", config = true}, }) - --------------------- --- Plugin Options -- --------------------- - --- emmet -vim.g.user_emmet_leader_key='' - --- zig config -vim.g.zig_fmt_autosave = 1 - --- latex live preview -vim.g.livepreview_previewer = 'zathura' -vim.g.livepreview_use_biber = 1 -vim.g.livepreview_cursorhold_recompile = 0 - --- vim-markdown -vim.g.vim_markdown_folding_disabled = 1 -vim.g.vim_markdown_folding_level = 3 -vim.g.vim_markdown_toc_autofit = 1 -vim.g.vim_markdown_emphasis_multiline = 0 -vim.g.tex_conceal = "" -vim.g.vim_markdown_math = 1 -vim.g.vim_markdown_conceal_code_blocks = 1 -vim.g.vim_markdown_fenced_languages = { 'c++=cpp', 'viml=vim', 'bash=sh', 'ini=dosini' } -vim.g.vim_markdown_follow_anchor = 1 -vim.g.vim_markdown_math = 1 -vim.g.vim_markdown_frontmatter = 1 -vim.g.vim_markdown_toml_frontmatter = 1 -vim.g.vim_markdown_strikethrough = 1 -vim.g.vim_markdown_no_extensions_in_markdown = 1 -vim.g.vim_markdown_autowrite = 1 -vim.g.vim_markdown_auto_insert_bullets = 0 -vim.g.vim_markdown_new_list_item_indent = 0 -vim.g.vim_markdown_edit_url_in = 'tab' - --- NERDTree config -vim.g.NERDTreeGitStatusUseNerdFonts = 1 -- use nerd fonts -vim.g.NERDTreeGitStatusShowClean = 1 -- default: 0 -vim.g.NERDTreeDirArrowExpandable = '>' -vim.g.NERDTreeDirArrowCollapsible = '<' -vim.g.NERDTreeMapToggleHidden = 'z' - --- Goyo config -vim.g.goyo_width = '90%' -vim.g.goyo_height = '100%' - --- limelight config -vim.g.limelight_conceal_ctermfg = 'gray' -vim.g.limelight_conceal_guifg = 'gray' - --- devicon config -vim.g.airline_powerline_fonts = 1 -vim.g.webdevicons_enable_nerdtree = 1 - --- vim-indent-guides config -vim.g.indent_guides_enable_on_vim_startup = 0 - --- vim-signify config -vim.opt.updatetime=100 -- cgit v1.2.3