2024-02-27 13:38:33 +00:00
|
|
|
-- [[ Configure and install plugins ]]
|
|
|
|
--
|
|
|
|
-- To check the current status of your plugins, run
|
|
|
|
-- :Lazy
|
|
|
|
--
|
|
|
|
-- You can press `?` in this menu for help. Use `:q` to close the window
|
2023-10-22 09:50:38 +00:00
|
|
|
--
|
2024-03-18 17:50:47 +00:00
|
|
|
-- To update plugins you can run
|
2024-02-27 13:38:33 +00:00
|
|
|
-- :Lazy update
|
|
|
|
--
|
|
|
|
-- NOTE: Here is where you install your plugins.
|
2024-03-06 18:44:10 +00:00
|
|
|
require('lazy').setup({
|
2024-02-28 14:14:37 +00:00
|
|
|
-- [[ Plugin Specs list ]]
|
|
|
|
|
2023-10-22 09:50:38 +00:00
|
|
|
-- NOTE: First, some plugins that don't require any configuration
|
2024-01-22 09:58:10 +00:00
|
|
|
-- Discord RPC
|
|
|
|
'andweeb/presence.nvim',
|
|
|
|
|
|
|
|
-- Practice games
|
|
|
|
'ThePrimeagen/vim-be-good',
|
2023-10-22 09:50:38 +00:00
|
|
|
|
2024-03-03 11:43:36 +00:00
|
|
|
-- Processing-Java
|
|
|
|
'sophacles/vim-processing',
|
|
|
|
|
2024-03-20 09:48:29 +00:00
|
|
|
-- Git graph viewer
|
|
|
|
{
|
|
|
|
'rbong/vim-flog',
|
|
|
|
lazy = true,
|
|
|
|
cmd = { 'Flog', 'Flogsplit', 'Floggit' },
|
|
|
|
dependencies = {
|
|
|
|
'tpope/vim-fugitive',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
2024-03-19 12:36:17 +00:00
|
|
|
-- Markdown preview plugin
|
|
|
|
{
|
|
|
|
'iamcco/markdown-preview.nvim',
|
|
|
|
cmd = { 'MarkdownPreviewToggle', 'MarkdownPreview', 'MarkdownPreviewStop' },
|
|
|
|
build = 'cd app; npm install',
|
|
|
|
init = function()
|
|
|
|
vim.g.mkdp_filetypes = { 'markdown' }
|
|
|
|
end,
|
|
|
|
ft = { 'markdown' },
|
|
|
|
},
|
|
|
|
|
2024-03-07 11:50:51 +00:00
|
|
|
-- Smooth scroll plugin and keymaps
|
|
|
|
{
|
|
|
|
'karb94/neoscroll.nvim',
|
|
|
|
config = function()
|
|
|
|
require('neoscroll').setup {
|
|
|
|
hide_cursor = false,
|
|
|
|
easing_function = nil,
|
|
|
|
respect_scrolloff = true,
|
|
|
|
}
|
|
|
|
|
|
|
|
require('neoscroll.config').set_mappings {
|
|
|
|
-- Scroll normally
|
|
|
|
['<C-u>'] = { 'scroll', { '-vim.wo.scroll', 'true', '50' } },
|
|
|
|
['<C-d>'] = { 'scroll', { 'vim.wo.scroll', 'true', '50' } },
|
|
|
|
-- Scroll entire page height
|
|
|
|
['<C-b>'] = { 'scroll', { '-vim.api.nvim_win_get_height(0)', 'true', '80' } },
|
|
|
|
['<C-f>'] = { 'scroll', { 'vim.api.nvim_win_get_height(0)', 'true', '80' } },
|
|
|
|
-- Scroll 10% at a time
|
|
|
|
['<C-y>'] = { 'scroll', { '-0.10', 'false', '25' } },
|
|
|
|
['<C-e>'] = { 'scroll', { '0.10', 'false', '25' } },
|
|
|
|
-- Jump to top, bottom and center
|
|
|
|
['zt'] = { 'zt', { '40' } },
|
|
|
|
['zz'] = { 'zz', { '50' } },
|
|
|
|
['zb'] = { 'zb', { '40' } },
|
|
|
|
}
|
|
|
|
end,
|
|
|
|
},
|
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
-- NOTE: Plugins can be added with a link (or for a github repo: 'owner/repo' link).
|
|
|
|
'tpope/vim-sleuth', -- Detect tabstop and shiftwidth automatically
|
2023-10-22 09:50:38 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
-- NOTE: Plugins can also be added by using a table,
|
|
|
|
-- with the first argument being the link and the following
|
|
|
|
-- keys can be used to configure plugin behavior/loading/etc.
|
|
|
|
--
|
|
|
|
-- Use `opts = {}` to force a plugin to be loaded.
|
|
|
|
--
|
|
|
|
-- This is equivalent to:
|
|
|
|
-- require('Comment').setup({})
|
2023-12-04 18:24:25 +00:00
|
|
|
|
2023-10-22 09:50:38 +00:00
|
|
|
-- "gc" to comment visual regions/lines
|
|
|
|
{ 'numToStr/Comment.nvim', opts = {} },
|
2023-12-04 18:24:25 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
-- modular approach: using `require 'path/name'` will
|
|
|
|
-- include a plugin definition from file lua/path/name.lua
|
2023-10-22 09:50:38 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/gitsigns',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/which-key',
|
2023-10-22 09:50:38 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/telescope',
|
2023-10-22 09:50:38 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/lspconfig',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/conform',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/cmp',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/tokyonight',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/todo-comments',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/mini',
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-02-26 19:46:46 +00:00
|
|
|
require 'kickstart/plugins/treesitter',
|
2023-10-22 09:50:38 +00:00
|
|
|
|
2024-02-27 13:38:33 +00:00
|
|
|
-- The following two comments only work if you have downloaded the kickstart repo, not just copy pasted the
|
|
|
|
-- init.lua. If you want these files, they are in the repository, so you can just download them and
|
2024-03-18 17:50:47 +00:00
|
|
|
-- place them in the correct locations.
|
2024-02-27 13:38:33 +00:00
|
|
|
|
2024-03-18 17:50:47 +00:00
|
|
|
-- NOTE: Next step on your Neovim journey: Add/Configure additional plugins for Kickstart
|
2024-02-27 13:38:33 +00:00
|
|
|
--
|
2024-03-18 17:50:47 +00:00
|
|
|
-- Here are some example plugins that I've included in the Kickstart repository.
|
2024-02-27 13:38:33 +00:00
|
|
|
-- Uncomment any of the lines below to enable them (you will need to restart nvim).
|
2024-03-01 08:36:17 +00:00
|
|
|
|
2024-02-15 10:17:24 +00:00
|
|
|
require 'kickstart.plugins.debug',
|
2024-03-01 08:15:22 +00:00
|
|
|
require 'kickstart.plugins.indent_line',
|
2024-03-27 10:18:17 +00:00
|
|
|
require 'kickstart.plugins.lint',
|
2023-10-22 09:50:38 +00:00
|
|
|
|
|
|
|
-- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
|
2024-02-27 13:38:33 +00:00
|
|
|
-- This is the easiest way to modularize your config.
|
2023-10-22 09:50:38 +00:00
|
|
|
--
|
2024-02-27 13:38:33 +00:00
|
|
|
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
2024-03-01 22:11:08 +00:00
|
|
|
-- For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
|
2024-02-28 07:43:13 +00:00
|
|
|
{ import = 'custom.plugins' },
|
2024-03-06 18:44:10 +00:00
|
|
|
}, {
|
|
|
|
ui = {
|
2024-03-18 17:50:47 +00:00
|
|
|
-- If you are using a Nerd Font: set icons to an empty table which will use the
|
|
|
|
-- default lazy.nvim defined Nerd Font icons, otherwise define a unicode icons table
|
2024-03-06 18:44:10 +00:00
|
|
|
icons = vim.g.have_nerd_font and {} or {
|
|
|
|
cmd = '⌘',
|
|
|
|
config = '🛠',
|
|
|
|
event = '📅',
|
|
|
|
ft = '📂',
|
|
|
|
init = '⚙',
|
|
|
|
keys = '🗝',
|
|
|
|
plugin = '🔌',
|
|
|
|
runtime = '💻',
|
|
|
|
require = '🌙',
|
|
|
|
source = '📄',
|
|
|
|
start = '🚀',
|
|
|
|
task = '📌',
|
|
|
|
lazy = '💤 ',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
})
|
2023-10-22 09:50:38 +00:00
|
|
|
|
|
|
|
-- vim: ts=2 sts=2 sw=2 et
|