added some more configurations
This commit is contained in:
parent
41d6f87f64
commit
9ea714a879
48
init.lua
48
init.lua
|
@ -5,8 +5,9 @@ vim.g.maplocalleader = ' '
|
||||||
vim.g.have_nerd_font = true
|
vim.g.have_nerd_font = true
|
||||||
|
|
||||||
vim.opt.undodir = os.getenv 'HOME' .. '/.vim/undodir'
|
vim.opt.undodir = os.getenv 'HOME' .. '/.vim/undodir'
|
||||||
|
vim.opt.encoding = 'utf-8'
|
||||||
|
|
||||||
vim.opt.wrap = false
|
vim.opt.wrap = true
|
||||||
-- [[ Setting options ]]
|
-- [[ Setting options ]]
|
||||||
-- See `:help vim.opt`
|
-- See `:help vim.opt`
|
||||||
-- NOTE: You can change these options as you wish!
|
-- NOTE: You can change these options as you wish!
|
||||||
|
@ -30,6 +31,18 @@ vim.opt.showmode = false
|
||||||
-- See `:help 'clipboard'`
|
-- See `:help 'clipboard'`
|
||||||
vim.schedule(function()
|
vim.schedule(function()
|
||||||
vim.opt.clipboard = 'unnamedplus'
|
vim.opt.clipboard = 'unnamedplus'
|
||||||
|
vim.g.clipboard = {
|
||||||
|
name = 'wl-clipboard',
|
||||||
|
copy = {
|
||||||
|
['+'] = 'wl-copy',
|
||||||
|
['*'] = 'wl-copy',
|
||||||
|
},
|
||||||
|
paste = {
|
||||||
|
['+'] = 'wl-paste --no-newline',
|
||||||
|
['*'] = 'wl-paste --no-newline',
|
||||||
|
},
|
||||||
|
cache_enabled = 0,
|
||||||
|
}
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Enable break indent
|
-- Enable break indent
|
||||||
|
@ -59,20 +72,20 @@ vim.opt.splitbelow = true
|
||||||
-- Sets how neovim will display certain whitespace characters in the editor.
|
-- Sets how neovim will display certain whitespace characters in the editor.
|
||||||
-- See `:help 'list'`
|
-- See `:help 'list'`
|
||||||
-- and `:help 'listchars'`
|
-- and `:help 'listchars'`
|
||||||
vim.opt.list = true
|
-- vim.opt.list = true
|
||||||
vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' }
|
-- vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' }
|
||||||
|
|
||||||
-- Preview substitutions live, as you type!
|
-- Preview substitutions live, as you type!
|
||||||
vim.opt.inccommand = 'split'
|
vim.opt.inccommand = 'split'
|
||||||
|
|
||||||
-- Show which line your cursor is on
|
-- Show which line your cursor is on
|
||||||
vim.opt.cursorline = true
|
vim.opt.cursorline = false
|
||||||
|
|
||||||
-- Minimal number of screen lines to keep above and below the cursor.
|
-- Minimal number of screen lines to keep above and below the cursor.
|
||||||
vim.opt.scrolloff = 10
|
vim.opt.scrolloff = 10
|
||||||
vim.opt.termguicolors = true
|
vim.opt.termguicolors = true
|
||||||
|
|
||||||
vim.opt.tabstop = 4
|
vim.opt.tabstop = 1
|
||||||
|
|
||||||
--
|
--
|
||||||
-- [[ Basic Keymaps ]]
|
-- [[ Basic Keymaps ]]
|
||||||
|
@ -82,8 +95,12 @@ vim.opt.tabstop = 4
|
||||||
-- See `:help hlsearch`
|
-- See `:help hlsearch`
|
||||||
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
|
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
|
||||||
|
|
||||||
|
-- Open Vertical Terminal in Neovim
|
||||||
|
vim.keymap.set('n', '<leader>vt', '<cmd>vnew<CR><cmd>terminal<CR>a', { desc = 'Open neovim Terminal' })
|
||||||
|
|
||||||
-- 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' })
|
||||||
|
vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float, { desc = 'Open diagnostic of current line' })
|
||||||
|
|
||||||
-- Netrw keymaps
|
-- Netrw keymaps
|
||||||
|
|
||||||
|
@ -499,7 +516,8 @@ require('lazy').setup({
|
||||||
-- https://github.com/pmizio/typescript-tools.nvim
|
-- https://github.com/pmizio/typescript-tools.nvim
|
||||||
--
|
--
|
||||||
-- But for many setups, the LSP (`tsserver`) will work just fine
|
-- But for many setups, the LSP (`tsserver`) will work just fine
|
||||||
tsserver = {},
|
tailwindcss = {},
|
||||||
|
ts_ls = {},
|
||||||
cssls = {
|
cssls = {
|
||||||
settings = {
|
settings = {
|
||||||
css = {
|
css = {
|
||||||
|
@ -547,6 +565,7 @@ require('lazy').setup({
|
||||||
require('mason-lspconfig').setup {
|
require('mason-lspconfig').setup {
|
||||||
handlers = {
|
handlers = {
|
||||||
function(server_name)
|
function(server_name)
|
||||||
|
server_name = server_name == 'tsserver' and 'ts_ls' or server_name
|
||||||
local server = servers[server_name] or {}
|
local server = servers[server_name] or {}
|
||||||
-- This handles overriding only values explicitly passed
|
-- This handles overriding only values explicitly passed
|
||||||
-- by the server configuration above. Useful when disabling
|
-- by the server configuration above. Useful when disabling
|
||||||
|
@ -591,8 +610,10 @@ require('lazy').setup({
|
||||||
-- python = { "isort", "black" },
|
-- python = { "isort", "black" },
|
||||||
--
|
--
|
||||||
-- You can use 'stop_after_first' to run the first available formatter from the list
|
-- You can use 'stop_after_first' to run the first available formatter from the list
|
||||||
javascript = { "prettierd", "prettier", stop_after_first = true },
|
typescript = { 'prettierd', 'prettier', stop_after_first = true },
|
||||||
cpp = { { 'clang-format' } },
|
json = { 'prettierd' },
|
||||||
|
javascript = { 'prettierd', 'prettier', stop_after_first = true },
|
||||||
|
cpp = { 'clang-format' },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -721,6 +742,11 @@ require('lazy').setup({
|
||||||
'catppuccin/nvim',
|
'catppuccin/nvim',
|
||||||
priority = 1000, -- Make sure to load this before all the other start plugins.
|
priority = 1000, -- Make sure to load this before all the other start plugins.
|
||||||
name = 'catppuccin',
|
name = 'catppuccin',
|
||||||
|
config = function(self, opts)
|
||||||
|
require('catppuccin').setup {
|
||||||
|
transparent_background = true,
|
||||||
|
}
|
||||||
|
end,
|
||||||
init = function()
|
init = function()
|
||||||
-- Load the colorscheme here.
|
-- Load the colorscheme here.
|
||||||
-- Like many other themes, this one has different styles, and you could load
|
-- Like many other themes, this one has different styles, and you could load
|
||||||
|
@ -776,7 +802,7 @@ require('lazy').setup({
|
||||||
'nvim-treesitter/nvim-treesitter',
|
'nvim-treesitter/nvim-treesitter',
|
||||||
build = ':TSUpdate',
|
build = ':TSUpdate',
|
||||||
opts = {
|
opts = {
|
||||||
ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc' },
|
ensure_installed = { 'bash', 'typescript', 'tsx', 'c', 'cpp', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc' },
|
||||||
-- Autoinstall languages that are not installed
|
-- Autoinstall languages that are not installed
|
||||||
auto_install = true,
|
auto_install = true,
|
||||||
highlight = {
|
highlight = {
|
||||||
|
@ -788,6 +814,10 @@ require('lazy').setup({
|
||||||
},
|
},
|
||||||
indent = { enable = true, disable = { 'ruby' } },
|
indent = { enable = true, disable = { 'ruby' } },
|
||||||
},
|
},
|
||||||
|
context_commentstring = {
|
||||||
|
enable = true,
|
||||||
|
enable_autocmd = false,
|
||||||
|
},
|
||||||
config = function(_, opts)
|
config = function(_, opts)
|
||||||
-- [[ Configure Treesitter ]] See `:help nvim-treesitter`
|
-- [[ Configure Treesitter ]] See `:help nvim-treesitter`
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
return {
|
||||||
|
-- 'olimorris/codecompanion.nvim',
|
||||||
|
-- dependencies = {
|
||||||
|
-- 'nvim-lua/plenary.nvim',
|
||||||
|
-- 'nvim-treesitter/nvim-treesitter',
|
||||||
|
-- 'hrsh7th/nvim-cmp', -- Optional: For using slash commands and variables in the chat buffer
|
||||||
|
-- 'nvim-telescope/telescope.nvim', -- Optional: For using slash commands
|
||||||
|
-- { 'stevearc/dressing.nvim', opts = {} }, -- Optional: Improves the default Neovim UI
|
||||||
|
-- },
|
||||||
|
-- config = true,
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
return {
|
||||||
|
'mistricky/codesnap.nvim',
|
||||||
|
build = 'make build_generator',
|
||||||
|
keys = {
|
||||||
|
{ '<leader>cc', '<cmd>CodeSnap<cr>', mode = 'x', desc = 'Save selected code snapshot into clipboard' },
|
||||||
|
{ '<leader>cs', '<cmd>CodeSnapSave<cr>', mode = 'x', desc = 'Save selected code snapshot in ~/Screenshots' },
|
||||||
|
},
|
||||||
|
opts = {
|
||||||
|
save_path = '~/Pictures/Screenshots/',
|
||||||
|
-- has_breadcrumbs = true,
|
||||||
|
bg_theme = 'bamboo',
|
||||||
|
},
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
return {
|
||||||
|
'numToStr/Comment.nvim',
|
||||||
|
dependencies = { 'JoosepAlviste/nvim-ts-context-commentstring' },
|
||||||
|
config = function()
|
||||||
|
require('Comment').setup {
|
||||||
|
pre_hook = require('ts_context_commentstring.integrations.comment_nvim').create_pre_hook(),
|
||||||
|
-- Ensure commentstring is set properly for TSX and JSX files
|
||||||
|
vim.api.nvim_create_autocmd('FileType', {
|
||||||
|
pattern = { 'javascriptreact', 'typescriptreact' },
|
||||||
|
callback = function()
|
||||||
|
-- Use JSX-style comments in TSX/JSX files
|
||||||
|
vim.bo.commentstring = '{/* %s */}'
|
||||||
|
end,
|
||||||
|
}),
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
}
|
|
@ -0,0 +1,2 @@
|
||||||
|
-- return { 'github/copilot.vim' }
|
||||||
|
return {}
|
|
@ -1,5 +0,0 @@
|
||||||
-- You can add your own plugins here or in other files in this directory!
|
|
||||||
-- I promise not to create any merge conflicts in this directory :)
|
|
||||||
--
|
|
||||||
-- See the kickstart.nvim README for more information
|
|
||||||
return {}
|
|
|
@ -3,7 +3,7 @@ return {
|
||||||
dependencies = {
|
dependencies = {
|
||||||
'preservim/vimux',
|
'preservim/vimux',
|
||||||
},
|
},
|
||||||
vim.keymap.set('n', '<leader>t', ':TestNearest<CR>'),
|
vim.keymap.set('n', '<leader>tt', ':TestNearest<CR>', { desc = 'Test Nearest' }),
|
||||||
vim.keymap.set('n', '<leader>T', ':TestFile<CR>'),
|
vim.keymap.set('n', '<leader>T', ':TestFile<CR>'),
|
||||||
vim.keymap.set('n', '<leader>m', ':TestSuite<CR>'),
|
vim.keymap.set('n', '<leader>m', ':TestSuite<CR>'),
|
||||||
vim.keymap.set('n', '<leader>l', ':TestLast<CR>'),
|
vim.keymap.set('n', '<leader>l', ':TestLast<CR>'),
|
||||||
|
|
|
@ -1,6 +1,3 @@
|
||||||
-- autopairs
|
|
||||||
-- https://github.com/windwp/nvim-autopairs
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'windwp/nvim-autopairs',
|
'windwp/nvim-autopairs',
|
||||||
event = 'InsertEnter',
|
event = 'InsertEnter',
|
||||||
|
|
|
@ -5,9 +5,9 @@ return {
|
||||||
event = { 'BufReadPre', 'BufNewFile' },
|
event = { 'BufReadPre', 'BufNewFile' },
|
||||||
config = function()
|
config = function()
|
||||||
local lint = require 'lint'
|
local lint = require 'lint'
|
||||||
lint.linters_by_ft = {
|
-- lint.linters_by_ft = {
|
||||||
markdown = { 'markdownlint' },
|
-- 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,
|
||||||
-- instead set linters_by_ft like this:
|
-- instead set linters_by_ft like this:
|
||||||
|
|
Loading…
Reference in New Issue