Add java lsp and neogit
This commit is contained in:
		
							parent
							
								
									c6dbd5bb6f
								
							
						
					
					
						commit
						3fd39057dd
					
				| 
						 | 
					@ -0,0 +1,72 @@
 | 
				
			||||||
 | 
					local home = os.getenv 'HOME'
 | 
				
			||||||
 | 
					local share = '/AppData/Local/nvim-data'
 | 
				
			||||||
 | 
					local workspace_path = home .. share .. '/jdtls-workspace/'
 | 
				
			||||||
 | 
					local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ':p:h:t')
 | 
				
			||||||
 | 
					local workspace_dir = workspace_path .. project_name
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local status, jdtls = pcall(require, 'jdtls')
 | 
				
			||||||
 | 
					if not status then
 | 
				
			||||||
 | 
					  return
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					local extendedClientCapabilities = jdtls.extendedClientCapabilities
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local config = {
 | 
				
			||||||
 | 
					  cmd = {
 | 
				
			||||||
 | 
					    'java',
 | 
				
			||||||
 | 
					    '-Declipse.application=org.eclipse.jdt.ls.core.id1',
 | 
				
			||||||
 | 
					    '-Dosgi.bundles.defaultStartLevel=4',
 | 
				
			||||||
 | 
					    '-Declipse.product=org.eclipse.jdt.ls.core.product',
 | 
				
			||||||
 | 
					    '-Dlog.protocol=true',
 | 
				
			||||||
 | 
					    '-Dlog.level=ALL',
 | 
				
			||||||
 | 
					    '-Xmx1g',
 | 
				
			||||||
 | 
					    '--add-modules=ALL-SYSTEM',
 | 
				
			||||||
 | 
					    '--add-opens',
 | 
				
			||||||
 | 
					    'java.base/java.util=ALL-UNNAMED',
 | 
				
			||||||
 | 
					    '--add-opens',
 | 
				
			||||||
 | 
					    'java.base/java.lang=ALL-UNNAMED',
 | 
				
			||||||
 | 
					    '-javaagent:' .. home .. share .. '/mason/packages/jdtls/lombok.jar',
 | 
				
			||||||
 | 
					    '-jar',
 | 
				
			||||||
 | 
					    vim.fn.glob(home .. share .. '/mason/packages/jdtls/plugins/org.eclipse.equinox.launcher_*.jar'),
 | 
				
			||||||
 | 
					    '-configuration',
 | 
				
			||||||
 | 
					    home .. share .. '/mason/packages/jdtls/config_win',
 | 
				
			||||||
 | 
					    '-data',
 | 
				
			||||||
 | 
					    workspace_dir,
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  root_dir = require('jdtls.setup').find_root { '.git', 'mvnw', 'gradlew', 'pom.xml', 'build.gradle' },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  settings = {
 | 
				
			||||||
 | 
					    java = {
 | 
				
			||||||
 | 
					      signatureHelp = { enabled = true },
 | 
				
			||||||
 | 
					      extendedClientCapabilities = extendedClientCapabilities,
 | 
				
			||||||
 | 
					      maven = {
 | 
				
			||||||
 | 
					        downloadSources = true,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      referencesCodeLens = {
 | 
				
			||||||
 | 
					        enabled = true,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      references = {
 | 
				
			||||||
 | 
					        includeDecompiledSources = true,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      inlayHints = {
 | 
				
			||||||
 | 
					        parameterNames = {
 | 
				
			||||||
 | 
					          enabled = 'all', -- literals, all, none
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      format = {
 | 
				
			||||||
 | 
					        enabled = false,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  init_options = {
 | 
				
			||||||
 | 
					    bundles = {},
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					require('jdtls').start_or_attach(config)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					vim.keymap.set('n', '<leader>co', "<Cmd>lua require'jdtls'.organize_imports()<CR>", { desc = 'Organize Imports' })
 | 
				
			||||||
 | 
					vim.keymap.set('n', '<leader>crv', "<Cmd>lua require('jdtls').extract_variable()<CR>", { desc = 'Extract Variable' })
 | 
				
			||||||
 | 
					vim.keymap.set('v', '<leader>crv', "<Esc><Cmd>lua require('jdtls').extract_variable(true)<CR>", { desc = 'Extract Variable' })
 | 
				
			||||||
 | 
					vim.keymap.set('n', '<leader>crc', "<Cmd>lua require('jdtls').extract_constant()<CR>", { desc = 'Extract Constant' })
 | 
				
			||||||
 | 
					vim.keymap.set('v', '<leader>crc', "<Esc><Cmd>lua require('jdtls').extract_constant(true)<CR>", { desc = 'Extract Constant' })
 | 
				
			||||||
 | 
					vim.keymap.set('v', '<leader>crm', "<Esc><Cmd>lua require('jdtls').extract_method(true)<CR>", { desc = 'Extract Method' })
 | 
				
			||||||
							
								
								
									
										6
									
								
								init.lua
								
								
								
								
							
							
						
						
									
										6
									
								
								init.lua
								
								
								
								
							| 
						 | 
					@ -414,6 +414,8 @@ require('lazy').setup({
 | 
				
			||||||
    end,
 | 
					    end,
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  { 'mfussenegger/nvim-jdtls' },
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  { -- LSP Configuration & Plugins
 | 
					  { -- LSP Configuration & Plugins
 | 
				
			||||||
    'neovim/nvim-lspconfig',
 | 
					    'neovim/nvim-lspconfig',
 | 
				
			||||||
    dependencies = {
 | 
					    dependencies = {
 | 
				
			||||||
| 
						 | 
					@ -841,7 +843,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', 'vim', 'vimdoc' },
 | 
					      ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'vim', 'vimdoc', 'java' },
 | 
				
			||||||
      -- Autoinstall languages that are not installed
 | 
					      -- Autoinstall languages that are not installed
 | 
				
			||||||
      auto_install = true,
 | 
					      auto_install = true,
 | 
				
			||||||
      highlight = {
 | 
					      highlight = {
 | 
				
			||||||
| 
						 | 
					@ -891,7 +893,7 @@ require('lazy').setup({
 | 
				
			||||||
  --
 | 
					  --
 | 
				
			||||||
  --  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.
 | 
				
			||||||
  --    For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
 | 
					  --    For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
 | 
				
			||||||
  { import = 'dacekonn.plugins'},
 | 
					  { import = 'dacekonn.plugins' },
 | 
				
			||||||
}, {
 | 
					}, {
 | 
				
			||||||
  ui = {
 | 
					  ui = {
 | 
				
			||||||
    -- If you are using a Nerd Font: set icons to an empty table which will use the
 | 
					    -- If you are using a Nerd Font: set icons to an empty table which will use the
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,313 @@
 | 
				
			||||||
 | 
					return {
 | 
				
			||||||
 | 
					  'NeogitOrg/neogit',
 | 
				
			||||||
 | 
					  dependencies = {
 | 
				
			||||||
 | 
					    'nvim-lua/plenary.nvim', -- required
 | 
				
			||||||
 | 
					    'sindrets/diffview.nvim', -- optional - Diff integration
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    -- Only one of these is needed, not both.
 | 
				
			||||||
 | 
					    'nvim-telescope/telescope.nvim', -- optional
 | 
				
			||||||
 | 
					    'ibhagwan/fzf-lua', -- optional
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  config = function()
 | 
				
			||||||
 | 
					    local neogit = require 'neogit'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    neogit.setup {
 | 
				
			||||||
 | 
					      -- Hides the hints at the top of the status buffer
 | 
				
			||||||
 | 
					      disable_hint = false,
 | 
				
			||||||
 | 
					      -- Disables changing the buffer highlights based on where the cursor is.
 | 
				
			||||||
 | 
					      disable_context_highlighting = false,
 | 
				
			||||||
 | 
					      -- Disables signs for sections/items/hunks
 | 
				
			||||||
 | 
					      disable_signs = false,
 | 
				
			||||||
 | 
					      -- Changes what mode the Commit Editor starts in. `true` will leave nvim in normal mode, `false` will change nvim to
 | 
				
			||||||
 | 
					      -- insert mode, and `"auto"` will change nvim to insert mode IF the commit message is empty, otherwise leaving it in
 | 
				
			||||||
 | 
					      -- normal mode.
 | 
				
			||||||
 | 
					      disable_insert_on_commit = 'auto',
 | 
				
			||||||
 | 
					      -- When enabled, will watch the `.git/` directory for changes and refresh the status buffer in response to filesystem
 | 
				
			||||||
 | 
					      -- events.
 | 
				
			||||||
 | 
					      filewatcher = {
 | 
				
			||||||
 | 
					        interval = 1000,
 | 
				
			||||||
 | 
					        enabled = true,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      -- "ascii"   is the graph the git CLI generates
 | 
				
			||||||
 | 
					      -- "unicode" is the graph like https://github.com/rbong/vim-flog
 | 
				
			||||||
 | 
					      graph_style = 'ascii',
 | 
				
			||||||
 | 
					      -- Used to generate URL's for branch popup action "pull request".
 | 
				
			||||||
 | 
					      git_services = {
 | 
				
			||||||
 | 
					        ['github.com'] = 'https://github.com/${owner}/${repository}/compare/${branch_name}?expand=1',
 | 
				
			||||||
 | 
					        ['bitbucket.org'] = 'https://bitbucket.org/${owner}/${repository}/pull-requests/new?source=${branch_name}&t=1',
 | 
				
			||||||
 | 
					        ['gitlab.com'] = 'https://gitlab.com/${owner}/${repository}/merge_requests/new?merge_request[source_branch]=${branch_name}',
 | 
				
			||||||
 | 
					        ['azure.com'] = 'https://dev.azure.com/${owner}/_git/${repository}/pullrequestcreate?sourceRef=${branch_name}&targetRef=${target}',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      -- Allows a different telescope sorter. Defaults to 'fuzzy_with_index_bias'. The example below will use the native fzf
 | 
				
			||||||
 | 
					      -- sorter instead. By default, this function returns `nil`.
 | 
				
			||||||
 | 
					      telescope_sorter = function()
 | 
				
			||||||
 | 
					        return require('telescope').extensions.fzf.native_fzf_sorter()
 | 
				
			||||||
 | 
					      end,
 | 
				
			||||||
 | 
					      -- Persist the values of switches/options within and across sessions
 | 
				
			||||||
 | 
					      remember_settings = true,
 | 
				
			||||||
 | 
					      -- Scope persisted settings on a per-project basis
 | 
				
			||||||
 | 
					      use_per_project_settings = true,
 | 
				
			||||||
 | 
					      -- Table of settings to never persist. Uses format "Filetype--cli-value"
 | 
				
			||||||
 | 
					      ignored_settings = {
 | 
				
			||||||
 | 
					        'NeogitPushPopup--force-with-lease',
 | 
				
			||||||
 | 
					        'NeogitPushPopup--force',
 | 
				
			||||||
 | 
					        'NeogitPullPopup--rebase',
 | 
				
			||||||
 | 
					        'NeogitCommitPopup--allow-empty',
 | 
				
			||||||
 | 
					        'NeogitRevertPopup--no-edit',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      -- Configure highlight group features
 | 
				
			||||||
 | 
					      highlight = {
 | 
				
			||||||
 | 
					        italic = true,
 | 
				
			||||||
 | 
					        bold = true,
 | 
				
			||||||
 | 
					        underline = true,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      -- Set to false if you want to be responsible for creating _ALL_ keymappings
 | 
				
			||||||
 | 
					      use_default_keymaps = true,
 | 
				
			||||||
 | 
					      -- Neogit refreshes its internal state after specific events, which can be expensive depending on the repository size.
 | 
				
			||||||
 | 
					      -- Disabling `auto_refresh` will make it so you have to manually refresh the status after you open it.
 | 
				
			||||||
 | 
					      auto_refresh = true,
 | 
				
			||||||
 | 
					      -- Value used for `--sort` option for `git branch` command
 | 
				
			||||||
 | 
					      -- By default, branches will be sorted by commit date descending
 | 
				
			||||||
 | 
					      -- Flag description: https://git-scm.com/docs/git-branch#Documentation/git-branch.txt---sortltkeygt
 | 
				
			||||||
 | 
					      -- Sorting keys: https://git-scm.com/docs/git-for-each-ref#_options
 | 
				
			||||||
 | 
					      sort_branches = '-committerdate',
 | 
				
			||||||
 | 
					      -- Change the default way of opening neogit
 | 
				
			||||||
 | 
					      kind = 'tab',
 | 
				
			||||||
 | 
					      -- Disable line numbers and relative line numbers
 | 
				
			||||||
 | 
					      disable_line_numbers = true,
 | 
				
			||||||
 | 
					      -- The time after which an output console is shown for slow running commands
 | 
				
			||||||
 | 
					      console_timeout = 2000,
 | 
				
			||||||
 | 
					      -- Automatically show console if a command takes more than console_timeout milliseconds
 | 
				
			||||||
 | 
					      auto_show_console = true,
 | 
				
			||||||
 | 
					      -- Automatically close the console if the process exits with a 0 (success) status
 | 
				
			||||||
 | 
					      auto_close_console = true,
 | 
				
			||||||
 | 
					      status = {
 | 
				
			||||||
 | 
					        show_head_commit_hash = true,
 | 
				
			||||||
 | 
					        recent_commit_count = 10,
 | 
				
			||||||
 | 
					        HEAD_padding = 10,
 | 
				
			||||||
 | 
					        HEAD_folded = false,
 | 
				
			||||||
 | 
					        mode_padding = 3,
 | 
				
			||||||
 | 
					        mode_text = {
 | 
				
			||||||
 | 
					          M = 'modified',
 | 
				
			||||||
 | 
					          N = 'new file',
 | 
				
			||||||
 | 
					          A = 'added',
 | 
				
			||||||
 | 
					          D = 'deleted',
 | 
				
			||||||
 | 
					          C = 'copied',
 | 
				
			||||||
 | 
					          U = 'updated',
 | 
				
			||||||
 | 
					          R = 'renamed',
 | 
				
			||||||
 | 
					          DD = 'unmerged',
 | 
				
			||||||
 | 
					          AU = 'unmerged',
 | 
				
			||||||
 | 
					          UD = 'unmerged',
 | 
				
			||||||
 | 
					          UA = 'unmerged',
 | 
				
			||||||
 | 
					          DU = 'unmerged',
 | 
				
			||||||
 | 
					          AA = 'unmerged',
 | 
				
			||||||
 | 
					          UU = 'unmerged',
 | 
				
			||||||
 | 
					          ['?'] = '',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      commit_editor = {
 | 
				
			||||||
 | 
					        kind = 'tab',
 | 
				
			||||||
 | 
					        show_staged_diff = true,
 | 
				
			||||||
 | 
					        -- Accepted values:
 | 
				
			||||||
 | 
					        -- "split" to show the staged diff below the commit editor
 | 
				
			||||||
 | 
					        -- "vsplit" to show it to the right
 | 
				
			||||||
 | 
					        -- "split_above" Like :top split
 | 
				
			||||||
 | 
					        -- "vsplit_left" like :vsplit, but open to the left
 | 
				
			||||||
 | 
					        -- "auto" "vsplit" if window would have 80 cols, otherwise "split"
 | 
				
			||||||
 | 
					        staged_diff_split_kind = 'split',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      commit_select_view = {
 | 
				
			||||||
 | 
					        kind = 'tab',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      commit_view = {
 | 
				
			||||||
 | 
					        kind = 'vsplit',
 | 
				
			||||||
 | 
					        verify_commit = vim.fn.executable 'gpg' == 1, -- Can be set to true or false, otherwise we try to find the binary
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      log_view = {
 | 
				
			||||||
 | 
					        kind = 'tab',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      rebase_editor = {
 | 
				
			||||||
 | 
					        kind = 'auto',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      reflog_view = {
 | 
				
			||||||
 | 
					        kind = 'tab',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      merge_editor = {
 | 
				
			||||||
 | 
					        kind = 'auto',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      tag_editor = {
 | 
				
			||||||
 | 
					        kind = 'auto',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      preview_buffer = {
 | 
				
			||||||
 | 
					        kind = 'split',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      popup = {
 | 
				
			||||||
 | 
					        kind = 'split',
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      signs = {
 | 
				
			||||||
 | 
					        -- { CLOSED, OPENED }
 | 
				
			||||||
 | 
					        hunk = { '', '' },
 | 
				
			||||||
 | 
					        item = { '>', 'v' },
 | 
				
			||||||
 | 
					        section = { '>', 'v' },
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      -- Each Integration is auto-detected through plugin presence, however, it can be disabled by setting to `false`
 | 
				
			||||||
 | 
					      integrations = {
 | 
				
			||||||
 | 
					        -- If enabled, use telescope for menu selection rather than vim.ui.select.
 | 
				
			||||||
 | 
					        -- Allows multi-select and some things that vim.ui.select doesn't.
 | 
				
			||||||
 | 
					        telescope = nil,
 | 
				
			||||||
 | 
					        -- Neogit only provides inline diffs. If you want a more traditional way to look at diffs, you can use `diffview`.
 | 
				
			||||||
 | 
					        -- The diffview integration enables the diff popup.
 | 
				
			||||||
 | 
					        --
 | 
				
			||||||
 | 
					        -- Requires you to have `sindrets/diffview.nvim` installed.
 | 
				
			||||||
 | 
					        diffview = nil,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        -- If enabled, uses fzf-lua for menu selection. If the telescope integration
 | 
				
			||||||
 | 
					        -- is also selected then telescope is used instead
 | 
				
			||||||
 | 
					        -- Requires you to have `ibhagwan/fzf-lua` installed.
 | 
				
			||||||
 | 
					        fzf_lua = nil,
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      sections = {
 | 
				
			||||||
 | 
					        -- Reverting/Cherry Picking
 | 
				
			||||||
 | 
					        sequencer = {
 | 
				
			||||||
 | 
					          folded = false,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        untracked = {
 | 
				
			||||||
 | 
					          folded = false,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        unstaged = {
 | 
				
			||||||
 | 
					          folded = false,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        staged = {
 | 
				
			||||||
 | 
					          folded = false,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        stashes = {
 | 
				
			||||||
 | 
					          folded = true,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        unpulled_upstream = {
 | 
				
			||||||
 | 
					          folded = true,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        unmerged_upstream = {
 | 
				
			||||||
 | 
					          folded = false,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        unpulled_pushRemote = {
 | 
				
			||||||
 | 
					          folded = true,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        unmerged_pushRemote = {
 | 
				
			||||||
 | 
					          folded = false,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        recent = {
 | 
				
			||||||
 | 
					          folded = true,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        rebase = {
 | 
				
			||||||
 | 
					          folded = true,
 | 
				
			||||||
 | 
					          hidden = false,
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      mappings = {
 | 
				
			||||||
 | 
					        commit_editor = {
 | 
				
			||||||
 | 
					          ['q'] = 'Close',
 | 
				
			||||||
 | 
					          ['<c-c><c-c>'] = 'Submit',
 | 
				
			||||||
 | 
					          ['<c-c><c-k>'] = 'Abort',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        commit_editor_I = {
 | 
				
			||||||
 | 
					          ['<c-c><c-c>'] = 'Submit',
 | 
				
			||||||
 | 
					          ['<c-c><c-k>'] = 'Abort',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        rebase_editor = {
 | 
				
			||||||
 | 
					          ['p'] = 'Pick',
 | 
				
			||||||
 | 
					          ['r'] = 'Reword',
 | 
				
			||||||
 | 
					          ['e'] = 'Edit',
 | 
				
			||||||
 | 
					          ['s'] = 'Squash',
 | 
				
			||||||
 | 
					          ['f'] = 'Fixup',
 | 
				
			||||||
 | 
					          ['x'] = 'Execute',
 | 
				
			||||||
 | 
					          ['d'] = 'Drop',
 | 
				
			||||||
 | 
					          ['b'] = 'Break',
 | 
				
			||||||
 | 
					          ['q'] = 'Close',
 | 
				
			||||||
 | 
					          ['<cr>'] = 'OpenCommit',
 | 
				
			||||||
 | 
					          ['gk'] = 'MoveUp',
 | 
				
			||||||
 | 
					          ['gj'] = 'MoveDown',
 | 
				
			||||||
 | 
					          ['<c-c><c-c>'] = 'Submit',
 | 
				
			||||||
 | 
					          ['<c-c><c-k>'] = 'Abort',
 | 
				
			||||||
 | 
					          ['[c'] = 'OpenOrScrollUp',
 | 
				
			||||||
 | 
					          [']c'] = 'OpenOrScrollDown',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        rebase_editor_I = {
 | 
				
			||||||
 | 
					          ['<c-c><c-c>'] = 'Submit',
 | 
				
			||||||
 | 
					          ['<c-c><c-k>'] = 'Abort',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        finder = {
 | 
				
			||||||
 | 
					          ['<cr>'] = 'Select',
 | 
				
			||||||
 | 
					          ['<c-c>'] = 'Close',
 | 
				
			||||||
 | 
					          ['<esc>'] = 'Close',
 | 
				
			||||||
 | 
					          ['<c-n>'] = 'Next',
 | 
				
			||||||
 | 
					          ['<c-p>'] = 'Previous',
 | 
				
			||||||
 | 
					          ['<down>'] = 'Next',
 | 
				
			||||||
 | 
					          ['<up>'] = 'Previous',
 | 
				
			||||||
 | 
					          ['<tab>'] = 'MultiselectToggleNext',
 | 
				
			||||||
 | 
					          ['<s-tab>'] = 'MultiselectTogglePrevious',
 | 
				
			||||||
 | 
					          ['<c-j>'] = 'NOP',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        -- Setting any of these to `false` will disable the mapping.
 | 
				
			||||||
 | 
					        popup = {
 | 
				
			||||||
 | 
					          ['?'] = 'HelpPopup',
 | 
				
			||||||
 | 
					          ['A'] = 'CherryPickPopup',
 | 
				
			||||||
 | 
					          ['D'] = 'DiffPopup',
 | 
				
			||||||
 | 
					          ['M'] = 'RemotePopup',
 | 
				
			||||||
 | 
					          ['P'] = 'PushPopup',
 | 
				
			||||||
 | 
					          ['X'] = 'ResetPopup',
 | 
				
			||||||
 | 
					          ['Z'] = 'StashPopup',
 | 
				
			||||||
 | 
					          ['b'] = 'BranchPopup',
 | 
				
			||||||
 | 
					          ['B'] = 'BisectPopup',
 | 
				
			||||||
 | 
					          ['c'] = 'CommitPopup',
 | 
				
			||||||
 | 
					          ['f'] = 'FetchPopup',
 | 
				
			||||||
 | 
					          ['l'] = 'LogPopup',
 | 
				
			||||||
 | 
					          ['m'] = 'MergePopup',
 | 
				
			||||||
 | 
					          ['p'] = 'PullPopup',
 | 
				
			||||||
 | 
					          ['r'] = 'RebasePopup',
 | 
				
			||||||
 | 
					          ['v'] = 'RevertPopup',
 | 
				
			||||||
 | 
					          ['w'] = 'WorktreePopup',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        status = {
 | 
				
			||||||
 | 
					          ['k'] = 'MoveUp',
 | 
				
			||||||
 | 
					          ['j'] = 'MoveDown',
 | 
				
			||||||
 | 
					          ['q'] = 'Close',
 | 
				
			||||||
 | 
					          ['o'] = 'OpenTree',
 | 
				
			||||||
 | 
					          ['I'] = 'InitRepo',
 | 
				
			||||||
 | 
					          ['1'] = 'Depth1',
 | 
				
			||||||
 | 
					          ['2'] = 'Depth2',
 | 
				
			||||||
 | 
					          ['3'] = 'Depth3',
 | 
				
			||||||
 | 
					          ['4'] = 'Depth4',
 | 
				
			||||||
 | 
					          ['<tab>'] = 'Toggle',
 | 
				
			||||||
 | 
					          ['x'] = 'Discard',
 | 
				
			||||||
 | 
					          ['s'] = 'Stage',
 | 
				
			||||||
 | 
					          ['S'] = 'StageUnstaged',
 | 
				
			||||||
 | 
					          ['<c-s>'] = 'StageAll',
 | 
				
			||||||
 | 
					          ['K'] = 'Untrack',
 | 
				
			||||||
 | 
					          ['u'] = 'Unstage',
 | 
				
			||||||
 | 
					          ['U'] = 'UnstageStaged',
 | 
				
			||||||
 | 
					          ['$'] = 'CommandHistory',
 | 
				
			||||||
 | 
					          ['Y'] = 'YankSelected',
 | 
				
			||||||
 | 
					          ['<c-r>'] = 'RefreshBuffer',
 | 
				
			||||||
 | 
					          ['<enter>'] = 'GoToFile',
 | 
				
			||||||
 | 
					          ['<c-v>'] = 'VSplitOpen',
 | 
				
			||||||
 | 
					          ['<c-x>'] = 'SplitOpen',
 | 
				
			||||||
 | 
					          ['<c-t>'] = 'TabOpen',
 | 
				
			||||||
 | 
					          ['{'] = 'GoToPreviousHunkHeader',
 | 
				
			||||||
 | 
					          ['}'] = 'GoToNextHunkHeader',
 | 
				
			||||||
 | 
					          ['[c'] = 'OpenOrScrollUp',
 | 
				
			||||||
 | 
					          [']c'] = 'OpenOrScrollDown',
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  end,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
		Reference in New Issue