Done
This commit is contained in:
parent
d350db2449
commit
7851cfe3a0
22
init.lua
22
init.lua
|
@ -102,7 +102,7 @@ vim.g.have_nerd_font = false
|
||||||
vim.opt.number = true
|
vim.opt.number = true
|
||||||
-- You can also add relative line numbers, to help with jumping.
|
-- You can also add relative line numbers, to help with jumping.
|
||||||
-- Experiment for yourself to see if you like it!
|
-- Experiment for yourself to see if you like it!
|
||||||
-- vim.opt.relativenumber = true
|
vim.opt.relativenumber = true
|
||||||
|
|
||||||
-- Enable mouse mode, can be useful for resizing splits for example!
|
-- Enable mouse mode, can be useful for resizing splits for example!
|
||||||
vim.opt.mouse = 'a'
|
vim.opt.mouse = 'a'
|
||||||
|
@ -166,7 +166,9 @@ vim.opt.confirm = true
|
||||||
|
|
||||||
-- Clear highlights on search when pressing <Esc> in normal mode
|
-- Clear highlights on search when pressing <Esc> in normal mode
|
||||||
-- See `:help hlsearch`
|
-- See `:help hlsearch`
|
||||||
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
|
-- vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
|
||||||
|
-- Replaced with a better approach that doesn't override Escape's normal function
|
||||||
|
vim.keymap.set('n', '<leader>/', '<cmd>nohlsearch<CR>', { desc = 'Clear search highlights' })
|
||||||
|
|
||||||
-- Diagnostic keymaps
|
-- Diagnostic keymaps
|
||||||
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
|
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
|
||||||
|
@ -177,7 +179,7 @@ vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagn
|
||||||
--
|
--
|
||||||
-- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping
|
-- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping
|
||||||
-- or just use <C-\><C-n> to exit terminal mode
|
-- or just use <C-\><C-n> to exit terminal mode
|
||||||
vim.keymap.set('t', '<Esc><Esc>', '<C-\\><C-n>', { desc = 'Exit terminal mode' })
|
vim.keymap.set('t', '<Esc>', '<C-\\><C-n>', { desc = 'Exit terminal mode' })
|
||||||
|
|
||||||
-- TIP: Disable arrow keys in normal mode
|
-- TIP: Disable arrow keys in normal mode
|
||||||
-- vim.keymap.set('n', '<left>', '<cmd>echo "Use h to move!!"<CR>')
|
-- vim.keymap.set('n', '<left>', '<cmd>echo "Use h to move!!"<CR>')
|
||||||
|
@ -965,18 +967,18 @@ require('lazy').setup({
|
||||||
-- Here are some example plugins that I've included in the Kickstart repository.
|
-- Here are some example plugins that I've included in the Kickstart repository.
|
||||||
-- Uncomment any of the lines below to enable them (you will need to restart nvim).
|
-- Uncomment any of the lines below to enable them (you will need to restart nvim).
|
||||||
--
|
--
|
||||||
-- require 'kickstart.plugins.debug',
|
require 'kickstart.plugins.debug',
|
||||||
-- require 'kickstart.plugins.indent_line',
|
require 'kickstart.plugins.indent_line',
|
||||||
-- require 'kickstart.plugins.lint',
|
require 'kickstart.plugins.lint',
|
||||||
-- require 'kickstart.plugins.autopairs',
|
require 'kickstart.plugins.autopairs',
|
||||||
-- require 'kickstart.plugins.neo-tree',
|
require 'kickstart.plugins.neo-tree',
|
||||||
-- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
|
require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
|
||||||
|
|
||||||
-- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
|
-- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
|
||||||
-- This is the easiest way to modularize your config.
|
-- This is the easiest way to modularize your config.
|
||||||
--
|
--
|
||||||
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
||||||
-- { import = 'custom.plugins' },
|
{ import = 'custom.plugins' },
|
||||||
--
|
--
|
||||||
-- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
|
-- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
|
||||||
-- Or use telescope!
|
-- Or use telescope!
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Subproject commit d350db2449da40df003c40d440f909d74e2d4e70
|
|
@ -0,0 +1,32 @@
|
||||||
|
-- GitHub Copilot configuration
|
||||||
|
-- https://github.com/github/copilot.vim
|
||||||
|
|
||||||
|
return {
|
||||||
|
"github/copilot.vim",
|
||||||
|
event = "InsertEnter",
|
||||||
|
config = function()
|
||||||
|
-- Disable default mappings
|
||||||
|
vim.g.copilot_no_maps = true
|
||||||
|
|
||||||
|
-- Key mappings
|
||||||
|
vim.keymap.set('i', '<C-j>', 'copilot#Accept("<CR>")', {
|
||||||
|
expr = true,
|
||||||
|
replace_keycodes = false,
|
||||||
|
silent = true,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Additional keymaps for Copilot
|
||||||
|
vim.keymap.set('i', '<C-l>', '<Plug>(copilot-accept-word)', { silent = true })
|
||||||
|
vim.keymap.set('i', '<C-]>', '<Plug>(copilot-next)', { silent = true })
|
||||||
|
-- Changed from <C-[> to <M-[> (Alt+[) to avoid conflicting with Escape
|
||||||
|
vim.keymap.set('i', '<M-[>', '<Plug>(copilot-previous)', { silent = true })
|
||||||
|
vim.keymap.set('i', '<C-\\>', '<Plug>(copilot-dismiss)', { silent = true })
|
||||||
|
|
||||||
|
-- Additional settings
|
||||||
|
vim.g.copilot_filetypes = {
|
||||||
|
["*"] = true,
|
||||||
|
["markdown"] = true,
|
||||||
|
["help"] = false,
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
}
|
|
@ -2,4 +2,6 @@
|
||||||
-- I promise not to create any merge conflicts in this directory :)
|
-- I promise not to create any merge conflicts in this directory :)
|
||||||
--
|
--
|
||||||
-- See the kickstart.nvim README for more information
|
-- See the kickstart.nvim README for more information
|
||||||
return {}
|
return {
|
||||||
|
-- Load all plugin files in the custom/plugins directory
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
-- Tab management keymaps
|
||||||
|
-- These provide VS Code-like tab navigation and management
|
||||||
|
|
||||||
|
-- Create a new empty tab
|
||||||
|
vim.keymap.set('n', '<leader>tn', ':tabnew<CR>', { desc = 'New tab' })
|
||||||
|
|
||||||
|
-- Create a new tab and open Telescope file finder
|
||||||
|
vim.keymap.set('n', '<leader>to', ':tabnew<CR>:Telescope find_files<CR>', { desc = 'New tab with file' })
|
||||||
|
|
||||||
|
-- Close the current tab
|
||||||
|
vim.keymap.set('n', '<leader>tc', ':tabclose<CR>', { desc = 'Close tab' })
|
||||||
|
|
||||||
|
-- Navigate to next tab (similar to VS Code)
|
||||||
|
vim.keymap.set('n', '<C-PgDn>', 'gt', { desc = 'Next tab' })
|
||||||
|
|
||||||
|
-- Navigate to previous tab (similar to VS Code)
|
||||||
|
vim.keymap.set('n', '<C-PgUp>', 'gT', { desc = 'Previous tab' })
|
||||||
|
|
||||||
|
-- Add this keymap group to Which-key if you're using it
|
||||||
|
-- (the plugin will automatically pick this up on next restart)
|
||||||
|
return {}
|
|
@ -0,0 +1,58 @@
|
||||||
|
-- toggleterm.lua
|
||||||
|
-- A plugin that helps manage multiple terminal windows in Neovim
|
||||||
|
-- Github: https://github.com/akinsho/toggleterm.nvim
|
||||||
|
|
||||||
|
return {
|
||||||
|
-- The repository on GitHub
|
||||||
|
'akinsho/toggleterm.nvim',
|
||||||
|
|
||||||
|
-- Use the latest stable version
|
||||||
|
version = "*",
|
||||||
|
|
||||||
|
-- Configuration options for the plugin
|
||||||
|
opts = {
|
||||||
|
-- Ctrl+\ will toggle the terminal visibility
|
||||||
|
open_mapping = [[<c-\>]],
|
||||||
|
|
||||||
|
-- Terminal appears as a floating window by default
|
||||||
|
direction = 'float',
|
||||||
|
|
||||||
|
-- How the floating window should look
|
||||||
|
float_opts = {
|
||||||
|
-- Curved borders for a nicer appearance
|
||||||
|
border = 'curved',
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Slightly dim the terminal background
|
||||||
|
shade_terminals = true,
|
||||||
|
|
||||||
|
-- How much to dim the terminal (0-100)
|
||||||
|
shading_factor = 2,
|
||||||
|
|
||||||
|
-- Function to determine size based on terminal direction
|
||||||
|
size = function(term)
|
||||||
|
if term.direction == "horizontal" then
|
||||||
|
-- 15 lines height for horizontal terminals
|
||||||
|
return 15
|
||||||
|
elseif term.direction == "vertical" then
|
||||||
|
-- 40% of window width for vertical terminals
|
||||||
|
return vim.o.columns * 0.4
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Extra key mappings for different terminal layouts
|
||||||
|
keys = {
|
||||||
|
-- Leader+th opens a horizontal terminal at the bottom
|
||||||
|
{ "<leader>th", "<cmd>ToggleTerm direction=horizontal<cr>", desc = "Terminal Horizontal" },
|
||||||
|
|
||||||
|
-- Leader+tv opens a vertical terminal at the side
|
||||||
|
{ "<leader>tv", "<cmd>ToggleTerm direction=vertical<cr>", desc = "Terminal Vertical" },
|
||||||
|
|
||||||
|
-- Leader+tf opens a floating terminal (alternative to Ctrl+\)
|
||||||
|
{ "<leader>tf", "<cmd>ToggleTerm direction=float<cr>", desc = "Terminal Float" },
|
||||||
|
|
||||||
|
-- Leader+tt opens a new terminal tab
|
||||||
|
{ "<leader>tt", "<cmd>ToggleTerm direction=tab<cr>", desc = "Terminal Tab" },
|
||||||
|
},
|
||||||
|
}
|
|
@ -6,7 +6,8 @@ return {
|
||||||
config = function()
|
config = function()
|
||||||
local lint = require 'lint'
|
local lint = require 'lint'
|
||||||
lint.linters_by_ft = {
|
lint.linters_by_ft = {
|
||||||
markdown = { 'markdownlint' },
|
-- Commenting out markdownlint to prevent errors
|
||||||
|
-- markdown = { 'markdownlint' },
|
||||||
}
|
}
|
||||||
|
|
||||||
-- To allow other plugins to add linters to require('lint').linters_by_ft,
|
-- To allow other plugins to add linters to require('lint').linters_by_ft,
|
||||||
|
|
Loading…
Reference in New Issue