diff --git a/init.lua b/init.lua index ebe5c707..6ffa9909 100644 --- a/init.lua +++ b/init.lua @@ -1,3 +1,4 @@ +<<<<<<< HEAD -- Set as the leader key -- See `:help mapleader` -- NOTE: Must happen before plugins are loaded (otherwise wrong leader will be used) @@ -124,6 +125,9 @@ vim.keymap.set('n', '', '', { desc = 'Move focus to the upper win -- [[ Basic Autocommands ]] -- See `:help lua-guide-autocommands` +======= +require 'core.globals' +>>>>>>> b6fc317 (housekeeping) -- Highlight when yanking (copying) text -- Try it with `yap` in normal mode @@ -161,49 +165,7 @@ vim.opt.rtp:prepend(lazypath) -- NOTE: Here is where you install your plugins. require('lazy').setup({ - -- NOTE: Plugins can be added with a link (or for a github repo: 'owner/repo' link). - 'tpope/vim-sleuth', -- Detect tabstop and shiftwidth automatically - - -- 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. - -- - - -- Here is a more advanced example where we pass configuration - -- options to `gitsigns.nvim`. This is equivalent to the following Lua: - -- require('gitsigns').setup({ ... }) - -- - -- See `:help gitsigns` to understand what the configuration keys do - { -- Adds git related signs to the gutter, as well as utilities for managing changes - 'lewis6991/gitsigns.nvim', - opts = { - signs = { - add = { text = '+' }, - change = { text = '~' }, - delete = { text = '_' }, - topdelete = { text = 'โ€พ' }, - changedelete = { text = '~' }, - }, - }, - }, - - -- NOTE: Plugins can also be configured to run Lua code when they are loaded. - -- - -- This is often very useful to both group configuration, as well as handle - -- lazy loading plugins that don't need to be loaded immediately at startup. - -- - -- For example, in the following configuration, we use: - -- event = 'VimEnter' - -- - -- which loads which-key before all the UI elements are loaded. Events can be - -- normal autocommands events (`:help autocmd-events`). - -- - -- Then, because we use the `opts` key (recommended), the configuration runs - -- after the plugin has been loaded as `require(MODULE).setup(opts)`. - - { -- Useful plugin to show you pending keybinds. + { 'folke/which-key.nvim', event = 'VimEnter', -- Sets the loading event to 'VimEnter' opts = { @@ -256,14 +218,6 @@ require('lazy').setup({ }, }, }, - - -- NOTE: Plugins can specify dependencies. - -- - -- The dependencies are proper plugin specifications as well - anything - -- you do for a plugin at the top level, you can do for a dependency. - -- - -- Use the `dependencies` key to specify the dependencies of a particular plugin - { -- Fuzzy Finder (files, lsp, etc) 'nvim-telescope/telescope.nvim', event = 'VimEnter', @@ -332,43 +286,8 @@ require('lazy').setup({ pcall(require('telescope').load_extension, 'ui-select') -- See `:help telescope.builtin` - local builtin = require 'telescope.builtin' - vim.keymap.set('n', 'sh', builtin.help_tags, { desc = '[S]earch [H]elp' }) - vim.keymap.set('n', 'sk', builtin.keymaps, { desc = '[S]earch [K]eymaps' }) - vim.keymap.set('n', 'sf', builtin.find_files, { desc = '[S]earch [F]iles' }) - vim.keymap.set('n', 'ss', builtin.builtin, { desc = '[S]earch [S]elect Telescope' }) - vim.keymap.set('n', 'sw', builtin.grep_string, { desc = '[S]earch current [W]ord' }) - vim.keymap.set('n', 'sg', builtin.live_grep, { desc = '[S]earch by [G]rep' }) - vim.keymap.set('n', 'sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' }) - vim.keymap.set('n', 'sr', builtin.resume, { desc = '[S]earch [R]esume' }) - vim.keymap.set('n', 's.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' }) - vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' }) - - -- Slightly advanced example of overriding default behavior and theme - vim.keymap.set('n', '/', function() - -- You can pass additional configuration to Telescope to change the theme, layout, etc. - builtin.current_buffer_fuzzy_find(require('telescope.themes').get_dropdown { - winblend = 10, - previewer = false, - }) - end, { desc = '[/] Fuzzily search in current buffer' }) - - -- It's also possible to pass additional configuration options. - -- See `:help telescope.builtin.live_grep()` for information about particular keys - vim.keymap.set('n', 's/', function() - builtin.live_grep { - grep_open_files = true, - prompt_title = 'Live Grep in Open Files', - } - end, { desc = '[S]earch [/] in Open Files' }) - - -- Shortcut for searching your Neovim configuration files - vim.keymap.set('n', 'sn', function() - builtin.find_files { cwd = vim.fn.stdpath 'config' } - end, { desc = '[S]earch [N]eovim files' }) end, }, - { 'epwalsh/obsidian.nvim', version = '*', -- recommended, use latest release instead of latest commit @@ -386,13 +305,37 @@ require('lazy').setup({ -- Required. 'nvim-lua/plenary.nvim', +<<<<<<< HEAD + { + 'epwalsh/obsidian.nvim', + version = '*', -- recommended, use latest release instead of latest commit + lazy = true, + ft = 'markdown', + -- Replace the above line with this if you only want to load obsidian.nvim for markdown files in your vault: + -- event = { + -- -- If you want to use the home shortcut '~' here you need to call 'vim.fn.expand'. + -- -- E.g. "BufReadPre " .. vim.fn.expand "~" .. "/my-vault/*.md" + -- -- refer to `:h file-pattern` for more examples + -- "BufReadPre path/to/my-vault/*.md", + -- "BufNewFile path/to/my-vault/*.md", + -- }, + dependencies = { + -- Required. + 'nvim-lua/plenary.nvim', + +======= +>>>>>>> b6fc317 (housekeeping) -- see below for full list of optional dependencies ๐Ÿ‘‡ }, opts = { workspaces = { { name = 'personal', +<<<<<<< HEAD path = 'E:/Stories', +======= + path = 'C:/Users/Squirrel/Documents/Worldbuilding', +>>>>>>> b6fc317 (housekeeping) }, }, -- A list of workspace names, paths, and configuration overrides. @@ -436,6 +379,7 @@ require('lazy').setup({ -- Optional, configure key mappings. These are the defaults. If you don't want to set any keymappings this -- way then set 'mappings = {}'. +<<<<<<< HEAD mappings = { -- Overrides the 'gf' mapping to work on markdown/wiki links within your vault. ['gd'] = { @@ -459,6 +403,8 @@ require('lazy').setup({ opts = { buffer = true, expr = true }, }, }, +======= +>>>>>>> b6fc317 (housekeeping) -- Where to put new notes. Valid options are -- * "current_dir" - put new notes in same directory as the current buffer. @@ -711,7 +657,10 @@ require('lazy').setup({ }, -- see below for full list of options ๐Ÿ‘‡ }, +<<<<<<< HEAD +======= +>>>>>>> b6fc317 (housekeeping) -- LSP Plugins { -- `lazydev` configures Lua LSP for your Neovim config, runtime and plugins @@ -949,7 +898,6 @@ require('lazy').setup({ } end, }, - { -- Autoformat 'stevearc/conform.nvim', event = { 'BufWritePre' }, @@ -992,7 +940,6 @@ require('lazy').setup({ }, }, }, - { -- Autocompletion 'hrsh7th/nvim-cmp', event = 'InsertEnter', @@ -1047,54 +994,6 @@ require('lazy').setup({ -- chosen, you will need to read `:help ins-completion` -- -- No, but seriously. Please read `:help ins-completion`, it is really good! - mapping = cmp.mapping.preset.insert { - -- Select the [n]ext item - [''] = cmp.mapping.select_next_item(), - -- Select the [p]revious item - [''] = cmp.mapping.select_prev_item(), - - -- Scroll the documentation window [b]ack / [f]orward - [''] = cmp.mapping.scroll_docs(-4), - [''] = cmp.mapping.scroll_docs(4), - - -- Accept ([y]es) the completion. - -- This will auto-import if your LSP supports it. - -- This will expand snippets if the LSP sent a snippet. - [''] = cmp.mapping.confirm { select = true }, - - -- If you prefer more traditional completion keymaps, - -- you can uncomment the following lines - --[''] = cmp.mapping.confirm { select = true }, - --[''] = cmp.mapping.select_next_item(), - --[''] = cmp.mapping.select_prev_item(), - - -- Manually trigger a completion from nvim-cmp. - -- Generally you don't need this, because nvim-cmp will display - -- completions whenever it has completion options available. - [''] = cmp.mapping.complete {}, - - -- Think of as moving to the right of your snippet expansion. - -- So if you have a snippet that's like: - -- function $name($args) - -- $body - -- end - -- - -- will move you to the right of each of the expansion locations. - -- is similar, except moving you backwards. - [''] = cmp.mapping(function() - if luasnip.expand_or_locally_jumpable() then - luasnip.expand_or_jump() - end - end, { 'i', 's' }), - [''] = cmp.mapping(function() - if luasnip.locally_jumpable(-1) then - luasnip.jump(-1) - end - end, { 'i', 's' }), - - -- For more advanced Luasnip keymaps (e.g. selecting choice nodes, expansion) see: - -- https://github.com/L3MON4D3/LuaSnip?tab=readme-ov-file#keymaps - }, sources = { { name = 'lazydev', @@ -1215,7 +1114,7 @@ require('lazy').setup({ -- 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. - -- { import = 'custom.plugins' }, + { import = 'core.plugins' }, { 'mfussenegger/nvim-dap', recommended = true, @@ -1235,7 +1134,6 @@ require('lazy').setup({ keys = { { "dB", function() require("dap").set_breakpoint(vim.fn.input('Breakpoint condition: ')) end, desc = "Breakpoint Condition" }, { "", function() require("dap").toggle_breakpoint() end, desc = "Toggle Breakpoint" }, - { "", function() require("dap").clear_breakpoints() end, desc = "Clear All Breakpoints" }, { "", function() require("dap").continue() end, desc = "Run/Continue" }, { "da", function() require("dap").continue({ before = get_args }) end, desc = "Run with Args" }, { "dC", function() require("dap").run_to_cursor() end, desc = "Run to Cursor" }, @@ -1246,7 +1144,6 @@ require('lazy').setup({ { "dl", function() require("dap").run_last() end, desc = "Run Last" }, { "", function() require("dap").step_out() end, desc = "Step Out" }, { "", function() require("dap").step_over() end, desc = "Step Over" }, - { "dP", function() require("dap").pause() end, desc = "Pause" }, { "dr", function() require("dap").repl.toggle() end, desc = "Toggle REPL" }, { "ds", function() require("dap").session() end, desc = "Session" }, { "", function() require("dap").terminate() end, desc = "Terminate" }, @@ -1315,6 +1212,7 @@ require('lazy').setup({ } end, }, +<<<<<<< HEAD { 'stevearc/oil.nvim', ---@module 'oil' @@ -1343,6 +1241,8 @@ require('lazy').setup({ vim.keymap.set('n', 'o', 'Oil', { desc = 'Open parent directory' }), -- dependencies = { "nvim-tree/nvim-web-devicons" }, -- use if prefer nvim-web-devicons }, -- +======= +>>>>>>> b6fc317 (housekeeping) -- For additional information with loading, sourcing and examples see `:help lazy.nvim-๐Ÿ”Œ-plugin-spec` -- Or use telescope! -- In normal mode type `sh` then write `lazy.nvim-plugin` @@ -1369,11 +1269,6 @@ require('lazy').setup({ }, }) require('nvim-treesitter.install').compilers = { 'clang' } -local builtin = require 'telescope.builtin' -vim.keymap.set('n', 'ff', builtin.find_files, { desc = 'Telescope find files' }) -vim.keymap.set('n', 'fg', builtin.live_grep, { desc = 'Telescope live grep' }) -vim.keymap.set('n', 'fb', builtin.buffers, { desc = 'Telescope buffers' }) -vim.keymap.set('n', 'fh', builtin.help_tags, { desc = 'Telescope help tags' }) require('telescope').setup { defaults = { file_ignore_patterns = { @@ -1387,8 +1282,17 @@ require('telescope').setup { }, } vim.fn.sign_define('DapBreakpoint', { text = '๐Ÿ›‘', texthl = '', linehl = '', numhl = '' }) +<<<<<<< HEAD vim.keymap.set('n', 'rn', vim.lsp.buf.rename, {}) -- The line beneath this is called `modeline`. See `:help modeline` -- vim: ts=2 sts=2 sw=2 et require 'oil' +======= +-- vim.keymap.set('n', 'rn', vim.lsp.buf.rename, {}) + +-- The line beneath this is called `modeline`. See `:help modeline` +-- vim: ts=2 sts=2 sw=2 et +require 'core.options' +require 'core.keymaps' +>>>>>>> b6fc317 (housekeeping) diff --git a/lua/core/globals.lua b/lua/core/globals.lua new file mode 100644 index 00000000..98572b80 --- /dev/null +++ b/lua/core/globals.lua @@ -0,0 +1,15 @@ +vim.g.mapleader = ' ' +vim.g.maplocalleader = ' ' + +if vim.fn.exists 'g:os' == 0 then + local is_windows = vim.fn.has 'win64' == 1 or vim.fn.has 'win32' == 1 or vim.fn.has 'win16' == 1 + if is_windows then + vim.g.os = 'Windows' + else + local uname_output = vim.fn.system 'uname' + vim.g.os = string.gsub(uname_output, '\n', '') + end +end + +-- Set to true if you have a Nerd Font installed and selected in the terminal +vim.g.have_nerd_font = true diff --git a/lua/core/keymaps.lua b/lua/core/keymaps.lua new file mode 100644 index 00000000..7575a4dc --- /dev/null +++ b/lua/core/keymaps.lua @@ -0,0 +1,172 @@ +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +-- BASIC KEYBINDS +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +vim.keymap.set('n', '', 'nohlsearch') +vim.keymap.set('n', 'q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' }) +-- NOTE: This won't work in all terminal emulators/tmux/etc. Try your own mapping +-- or just use to exit terminal mode +vim.keymap.set('t', '', '', { desc = 'Exit terminal mode' }) +vim.keymap.set('n', '', '', { desc = 'Move focus to the left window' }) +vim.keymap.set('n', '', '', { desc = 'Move focus to the right window' }) +vim.keymap.set('n', '', '', { desc = 'Move focus to the lower window' }) +vim.keymap.set('n', '', '', { desc = 'Move focus to the upper window' }) + +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +-- OIL-KEYMAPS +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +require('oil').setup { + keymaps = { + ['g?'] = { 'actions.show_help', mode = 'n' }, + [''] = 'actions.select', + [''] = { 'actions.select', opts = { vertical = true } }, + -- [''] = { 'actions.select', opts = { horizontal = true } }, + [''] = { 'actions.select', opts = { tab = true } }, + [''] = 'actions.preview', + [''] = { 'actions.close', mode = 'n' }, + -- [''] = 'actions.refresh', + ['-'] = { 'actions.parent', mode = 'n' }, + ['_'] = { 'actions.open_cwd', mode = 'n' }, + ['`'] = { 'actions.cd', mode = 'n' }, + ['~'] = { 'actions.cd', opts = { scope = 'tab' }, mode = 'n' }, + ['gs'] = { 'actions.change_sort', mode = 'n' }, + ['gx'] = 'actions.open_external', + ['g.'] = { 'actions.toggle_hidden', mode = 'n' }, + ['g\\'] = { 'actions.toggle_trash', mode = 'n' }, + }, + vim.keymap.set('n', 'o', 'Oil', { desc = 'Open parent directory' }), + -- Set to false to disable all of the above keymaps + use_default_keymaps = true, +} + +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +-- TELESCOPE-KEYMAPS +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +local builtin = require 'telescope.builtin' +vim.keymap.set('n', 'sh', builtin.help_tags, { desc = '[S]earch [H]elp' }) +vim.keymap.set('n', 'sk', builtin.keymaps, { desc = '[S]earch [K]eymaps' }) +vim.keymap.set('n', 'sf', builtin.find_files, { desc = '[S]earch [F]iles' }) +vim.keymap.set('n', 'ss', builtin.builtin, { desc = '[S]earch [S]elect Telescope' }) +vim.keymap.set('n', 'sw', builtin.grep_string, { desc = '[S]earch current [W]ord' }) +vim.keymap.set('n', 'sg', builtin.live_grep, { desc = '[S]earch by [G]rep' }) +vim.keymap.set('n', 'sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' }) +vim.keymap.set('n', 'sr', builtin.resume, { desc = '[S]earch [R]esume' }) +vim.keymap.set('n', 's.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' }) +vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' }) +vim.keymap.set('n', 'ff', builtin.find_files, { desc = 'Telescope find files' }) +vim.keymap.set('n', 'fg', builtin.live_grep, { desc = 'Telescope live grep' }) +vim.keymap.set('n', 'fb', builtin.buffers, { desc = 'Telescope buffers' }) +vim.keymap.set('n', 'fh', builtin.help_tags, { desc = 'Telescope help tags' }) +-- Slightly advanced example of overriding default behavior and theme +vim.keymap.set('n', '/', function() + -- You can pass additional configuration to Telescope to change the theme, layout, etc. + builtin.current_buffer_fuzzy_find(require('telescope.themes').get_dropdown { + winblend = 10, + previewer = false, + }) +end, { desc = '[/] Fuzzily search in current buffer' }) + +-- It's also possible to pass additional configuration options. +-- See `:help telescope.builtin.live_grep()` for information about particular keys +vim.keymap.set('n', 's/', function() + builtin.live_grep { + grep_open_files = true, + prompt_title = 'Live Grep in Open Files', + } +end, { desc = '[S]earch [/] in Open Files' }) + +-- Shortcut for searching your Neovim configuration files +vim.keymap.set('n', 'sn', function() + builtin.find_files { cwd = vim.fn.stdpath 'config' } +end, { desc = '[S]earch [N]eovim files' }) + +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +-- OBSIDIAN-KEYMAPS +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +vim.keymap.set('n', 'gf', function() + if require('obsidian').util.cursor_on_markdown_link() then + return 'ObsidianFollowLink' + else + return 'gf' + end +end, { noremap = false, expr = true }) + +vim.keymap.set('n', 'gd', function() + require('obsidian').util.gf_passthrough() +end, { noremap = false, expr = true, buffer = true }) + +vim.keymap.set('n', 'ch', function() + return require('obsidian').util.toggle_checkbox() +end, { buffer = true }) + +vim.keymap.set('n', 'cr', function() + return require('obsidian').util.smart_action() +end, { buffer = true, expr = true }) + +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +-- CMP-KEYMAPS +-- ################ ################ ################ ################ +-- ################ ################ ################ ################ +local cmp = require 'cmp' +local luasnip = require 'luasnip' +luasnip.config.setup {} + +cmp.setup { + -- For an understanding of why these mappings were + -- chosen, you will need to read `:help ins-completion` + -- + -- No, but seriously. Please read `:help ins-completion`, it is really good! + mapping = cmp.mapping.preset.insert { + -- Select the [n]ext item + [''] = cmp.mapping.select_next_item(), + -- Select the [p]revious item + [''] = cmp.mapping.select_prev_item(), + + -- Scroll the documentation window [b]ack / [f]orward + [''] = cmp.mapping.scroll_docs(-4), + [''] = cmp.mapping.scroll_docs(4), + + -- Accept ([y]es) the completion. + -- This will auto-import if your LSP supports it. + -- This will expand snippets if the LSP sent a snippet. + [''] = cmp.mapping.confirm { select = true }, + + -- If you prefer more traditional completion keymaps, + -- you can uncomment the following lines + --[''] = cmp.mapping.confirm { select = true }, + --[''] = cmp.mapping.select_next_item(), + --[''] = cmp.mapping.select_prev_item(), + + -- Manually trigger a completion from nvim-cmp. + -- Generally you don't need this, because nvim-cmp will display + -- completions whenever it has completion options available. + [''] = cmp.mapping.complete {}, + + -- Think of as moving to the right of your snippet expansion. + -- So if you have a snippet that's like: + -- function $name($args) + -- $body + -- end + -- + -- will move you to the right of each of the expansion locations. + -- is similar, except moving you backwards. + [''] = cmp.mapping(function() + if luasnip.expand_or_locally_jumpable() then + luasnip.expand_or_jump() + end + end, { 'i', 's' }), + [''] = cmp.mapping(function() + if luasnip.locally_jumpable(-1) then + luasnip.jump(-1) + end + end, { 'i', 's' }), + }, +} diff --git a/lua/core/options.lua b/lua/core/options.lua new file mode 100644 index 00000000..337f1f9e --- /dev/null +++ b/lua/core/options.lua @@ -0,0 +1,68 @@ +-- [[ Setting options ]] +-- See `:help vim.opt` +-- NOTE: You can change these options as you wish! +-- For more options, you can see `:help option-list` + +-- Make line numbers default +vim.opt.number = true +vim.opt.relativenumber = true +-- You can also add relative line numbers, to help with jumping. +-- Experiment for yourself to see if you like it! +-- vim.opt.relativenumber = true + +-- Enable mouse mode, can be useful for resizing splits for example! +vim.opt.mouse = 'a' + +-- Don't show the mode, since it's already in the status line +vim.opt.showmode = false + +-- Sync clipboard between OS and Neovim. +-- Schedule the setting after `UiEnter` because it can increase startup-time. +-- Remove this option if you want your OS clipboard to remain independent. +-- See `:help 'clipboard'` +vim.schedule(function() + vim.opt.clipboard = 'unnamedplus' +end) + +-- Enable break indent +vim.opt.breakindent = true + +-- Save undo history +vim.opt.undofile = true + +-- Case-insensitive searching UNLESS \C or one or more capital letters in the search term +vim.opt.ignorecase = true +vim.opt.smartcase = true + +-- Keep signcolumn on by default +vim.opt.signcolumn = 'yes' + +-- Decrease update time +vim.opt.updatetime = 250 + +-- Decrease mapped sequence wait time +-- Displays which-key popup sooner +vim.opt.timeoutlen = 300 + +-- Configure how new splits should be opened +vim.opt.splitright = true +vim.opt.splitbelow = true + +-- Sets how neovim will display certain whitespace characters in the editor. +-- See `:help 'list'` +-- and `:help 'listchars'` +vim.opt.list = true +vim.opt.listchars = { tab = 'ยป ', trail = 'ยท', nbsp = 'โฃ' } + +vim.opt.tabstop = 4 -- A TAB character looks like 4 spaces +vim.opt.expandtab = true -- Pressing the TAB key will insert spaces instead of a TAB character +vim.opt.softtabstop = 4 -- Number of spaces inserted instead of a TAB character +vim.opt.shiftwidth = 4 -- Number of spaces inserted when indenting +-- Preview substitutions live, as you type! +vim.opt.inccommand = 'split' + +-- Show which line your cursor is on +vim.opt.cursorline = true + +-- Minimal number of screen lines to keep above and below the cursor. +vim.opt.scrolloff = 10 diff --git a/lua/core/plugins.lua b/lua/core/plugins.lua new file mode 100644 index 00000000..39f54e7e --- /dev/null +++ b/lua/core/plugins.lua @@ -0,0 +1,7 @@ +return { + 'stevearc/oil.nvim', + -- Optional dependencies + dependencies = { { 'echasnovski/mini.icons', opts = {} } }, + 'tpope/vim-sleuth', -- Detect tabstop and shiftwidth automatically + { 'lewis6991/gitsigns.nvim', opts = 'plugin-options.gitsigns' }, +} -- diff --git a/lua/plugin-options/gitsigns.lua b/lua/plugin-options/gitsigns.lua new file mode 100644 index 00000000..37b858e6 --- /dev/null +++ b/lua/plugin-options/gitsigns.lua @@ -0,0 +1,9 @@ +return { + signs = { + add = { text = '+' }, + change = { text = '~' }, + delete = { text = '_' }, + topdelete = { text = 'โ€พ' }, + changedelete = { text = '~' }, + }, +}