commit 09f62ddc948116243b604bc8366628195f6ed415
parent 37a2fd801c1468fcf6f86d7dd852c97713a858df
Author: Andrew <andrewlaack1@gmail.com>
Date: Wed, 27 Nov 2024 21:05:41 -0600
Did some stuff
Diffstat:
4 files changed, 192 insertions(+), 4 deletions(-)
diff --git a/LuaSnip/tex.lua b/LuaSnip/tex.lua
@@ -0,0 +1,119 @@
+local ls = require("luasnip")
+local s = ls.snippet
+local sn = ls.snippet_node
+local t = ls.text_node
+local i = ls.insert_node
+local f = ls.function_node
+local d = ls.dynamic_node
+local fmt = require("luasnip.extras.fmt").fmt
+local fmta = require("luasnip.extras.fmt").fmta
+local rep = require("luasnip.extras").rep
+
+return {
+ require("luasnip").snippet(
+ {
+ trig=";beginHW",
+ dscr="Autotriggered snippet to replace ;beginHW with a default document setup.",
+ snippetType="autosnippet",
+ regTrig=false,
+ priority=100,
+ },
+ {
+ t({
+"\\documentclass[12pt, letterpaper]{article}",
+"\\usepackage{enumitem}",
+"\\usepackage{graphicx}",
+"\\author{Andrew Laack}",
+"\\title{TITLE}",
+"\\begin{document}",
+"\\maketitle{}",
+"\\section{FIRST SECTION}",
+"\\end{document}",
+ }
+ ),
+ }
+ ),
+
+ require("luasnip").snippet(
+ {
+ trig=";alphaList",
+ dscr="Autotriggered snippet to replace ;alphaList with a alphabetical list",
+ snippetType="autosnippet",
+ regTrig=false,
+ priority=100,
+ },
+ {
+ t({
+ "\\begin{enumerate}[label=\\alph*)]",
+ " \\item",
+ " \\item",
+ " \\item",
+ "\\end{enumerate}",
+ }
+ ),
+ }
+ ),
+ require("luasnip").snippet(
+ {
+ trig=";numList",
+ dscr="Autotriggered snippet to replace ;numList with number list",
+ snippetType="autosnippet",
+ regTrig=false,
+ priority=100,
+ },
+ {
+ t({
+ "\\begin{enumerate}",
+ " \\item",
+ " \\item",
+ " \\item",
+ "\\end{enumerate}",
+ }
+ ),
+ }
+ ),
+
+
+
+require("luasnip").snippet(
+ {
+ trig=";question",
+ dscr="Autotriggered snippet to expand ;question to a question in tex with bold unindented question and three bullets.",
+ snippetType="autosnippet",
+ regTrig=false,
+ priority=100,
+ },
+ {
+ t({
+ "\\noindent\\textbf{}",
+ "\\begin{itemize}",
+ " \\item",
+ " \\item",
+ " \\item",
+ "\\end{itemize}",
+ }
+ ),
+ }
+ ),
+
+
+ require("luasnip").snippet(
+ {
+ trig=";bulletList",
+ dscr="Autotriggered snippet to expand ;bullets to a bulleted list.",
+ snippetType="autosnippet",
+ regTrig=false,
+ priority=100,
+ },
+ {
+ t({
+ "\\begin{itemize}",
+ " \\item",
+ " \\item",
+ " \\item",
+ "\\end{itemize}"
+ }
+ ),
+ }
+ ),
+}
diff --git a/lua/core/keymaps.lua b/lua/core/keymaps.lua
@@ -32,6 +32,9 @@ vim.api.nvim_set_keymap(
)
vim.cmd("autocmd TermOpen * startinsert")
+-- Exit out of terminal mode
+vim.api.nvim_set_keymap("t", "<C-r>", "<C-\\><C-n>", { noremap = true, silent = true })
+
-- Open netrw
@@ -42,13 +45,13 @@ vim.keymap.set('n', '<Leader>s', function()
vim.o.spell = not vim.o.spell
end, { desc = 'Toggle spell checking' })
--- Exit out of terminal mode
--- vim.api.nvim_set_keymap("t", "<C-r>", "<C-\\><C-n>", { noremap = true, silent = true })
-- Splitting setttings
vim.o.splitbelow = true
vim.o.splitright = true
vim.o.relativenumber = true
+vim.o.ignorecase = true
+vim.o.smartcase = true
vim.o.statuscolumn = "%s %l %r"
-- config
@@ -62,3 +65,42 @@ vim.keymap.set("n", "<leader>b<Left>", ":bp<CR>", { noremap = true, silent = tru
-- Ctrl+Backspace to delete the previous word (same as browser... sorry, not sorry)
vim.keymap.set('i', '<C-h>', '<C-w>', { noremap = true, silent = true })
+-- Define how to use snippets
+vim.cmd[[
+imap <silent><expr> <C-y> luasnip#expand_or_jumpable() ? '<Plug>luasnip-expand-or-jump' : '<Tab>'
+smap <silent><expr> <C-n> luasnip#jumpable(1) ? '<Plug>luasnip-jump-next' : '<Tab>'
+
+imap <silent><expr> <C-p> luasnip#jumpable(-1) ? '<Plug>luasnip-jump-prev' : '<S-Tab>'
+smap <silent><expr> <C-p> luasnip#jumpable(-1) ? '<Plug>luasnip-jump-prev' : '<S-Tab>'
+]]
+
+-- pounce config
+vim.keymap.set("n", "s", ":Pounce <CR>", { noremap = true, silent = true }) -- b + Left Arrow for previous buffer
+
+-- Fix highlight colors
+
+
+-- Set custom highlight groups
+
+-- Set custom highlight groups for Pounce with Catppuccin colors
+local highlights = {
+ PounceGap = { bold = true, fg = "#cdd6f4", bg = "#45475a" }, -- this is the space intra line selections
+ PounceAcceptBest = { bold = true, fg = "#000000", bg = "#89dceb" }, -- standard selection cap letter
+ PounceAccept = { bold = true, fg = "#000000", bg = "#7287fd" }, -- standard selection cap letter
+ PounceMatch = { bold = true, fg = "#cdd6f4", bg = "#585b70" }, -- matching text
+}
+
+for group, opts in pairs(highlights) do
+ vim.api.nvim_set_hl(0, group, opts)
+end
+
+
+-- Map C-Right to w
+vim.api.nvim_set_keymap('n', '<C-Right>', 'w', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('v', '<C-Right>', 'w', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('i', '<C-Right>', '<C-o>w', { noremap = true, silent = true })
+
+-- Map C-Left to b
+vim.api.nvim_set_keymap('n', '<C-Left>', 'b', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('v', '<C-Left>', 'b', { noremap = true, silent = true })
+vim.api.nvim_set_keymap('i', '<C-Left>', '<C-o>b', { noremap = true, silent = true })
diff --git a/lua/core/plugins.lua b/lua/core/plugins.lua
@@ -15,6 +15,21 @@ local packer_bootstrap = ensure_packer()
return require("packer").startup(function(use)
use("wbthomason/packer.nvim")
+
+ use('L3MON4D3/LuaSnip')
+ require("luasnip.loaders.from_lua").load({paths = "~/.config/nvim/LuaSnip/"})
+
+
+-- Somewhere in your Neovim startup, e.g. init.lua
+require("luasnip").config.set_config({ -- Setting LuaSnip config
+
+ -- Enable autotriggered snippets
+ enable_autosnippets = true,
+
+ -- Use Tab (or some other key if you prefer) to trigger visual selection
+ store_selection_keys = "<C-m>",
+})
+
-- tex compile features
use("lervag/vimtex")
@@ -85,6 +100,13 @@ return require("packer").startup(function(use)
},
})
+ use('rlane/pounce.nvim')
+ require'pounce'.setup{
+ accept_keys = "TNSERIOADHFUYWPMVXZCGBJKLQ",
+ accept_best_key = "<enter>",
+ multi_window = true,
+ debug = false,
+ }
use({
"kylechui/nvim-surround",
tag = "*", -- Use for stability; omit to use `main` branch for the latest features
@@ -97,7 +119,6 @@ return require("packer").startup(function(use)
require("packer").sync()
end
-
-- nvim-cmp configuration for C-p and C-n
local cmp = require('cmp')
cmp.setup({
@@ -113,9 +134,10 @@ cmp.setup({
['<C-Space>'] = cmp.mapping.complete(), -- Trigger completion menu
},
sources = cmp.config.sources({
- { name = 'nvim_lsp' },
{ name = 'luasnip' },
+ { name = 'nvim_lsp' },
}),
+
})
end)
diff --git a/plugin/packer_compiled.lua b/plugin/packer_compiled.lua
@@ -162,6 +162,11 @@ _G.packer_plugins = {
path = "/home/andrew/.local/share/nvim/site/pack/packer/start/plenary.nvim",
url = "https://github.com/nvim-lua/plenary.nvim"
},
+ ["pounce.nvim"] = {
+ loaded = true,
+ path = "/home/andrew/.local/share/nvim/site/pack/packer/start/pounce.nvim",
+ url = "https://github.com/rlane/pounce.nvim"
+ },
["telescope.nvim"] = {
loaded = true,
path = "/home/andrew/.local/share/nvim/site/pack/packer/start/telescope.nvim",