addet: colorscheme, git signs and merge tool helper
This commit is contained in:
parent
214141ac85
commit
91efc5bfcd
6 changed files with 231 additions and 70 deletions
|
@ -28,5 +28,5 @@ git clone --depth=1 https://git.k4li.de/dotfiles/nvim.git $HOME/.config/nvim/
|
|||
Colorscheme-plugins are defined in [colorschemes.lua](lua/pika/plugins/colorschemes.lua)
|
||||
|
||||
> [!TIP]
|
||||
> default theme is [nordic](https://github.com/AlexvZyl/nordic.nvim) </br>
|
||||
> default theme is `monet` </br>
|
||||
> you can change the theme in the colorscheme function in the [init.lua](./init.lua)
|
||||
|
|
2
init.lua
2
init.lua
|
@ -6,7 +6,7 @@ require("pika.lazy")
|
|||
-- │ themes are under ./lua/pika/plugins/colorschemes.lua │
|
||||
-- ╰──────────────────────────────────────────────────────╯
|
||||
|
||||
vim.cmd.colorscheme("monet")
|
||||
vim.cmd.colorscheme("oldschool")
|
||||
|
||||
-- Keybind for saving clipboard screenshot and inserting a Markdown link
|
||||
vim.api.nvim_set_keymap("n", "<leader>ps", ":lua SaveScreenshotAndInsertLink()<CR>", { noremap = true, silent = true })
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
return {
|
||||
{ "folke/tokyonight.nvim" },
|
||||
{ "fynnfluegge/monet.nvim", name = "monet" },
|
||||
{ "L-Colombo/oldschool.nvim", config = "true" },
|
||||
-- { "catppuccin/nvim", name = "catppuccin" },
|
||||
-- { "EdenEast/nightfox.nvim" },
|
||||
-- { "DanWlker/primeppuccin", name = "primeppuccin" },
|
||||
|
|
|
@ -1,16 +1,20 @@
|
|||
return {
|
||||
-- ─< neotree - fallback >────────────────────────────────────────────────────────────────────────
|
||||
-- {
|
||||
-- "nvim-neo-tree/neo-tree.nvim",
|
||||
-- branch = "v3.x",
|
||||
-- dependencies = {
|
||||
-- "nvim-lua/plenary.nvim",
|
||||
-- "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
|
||||
-- "MunifTanjim/nui.nvim",
|
||||
-- -- "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information
|
||||
-- },
|
||||
-- vim.keymap.set("n", "<leader>e", "<CMD>:Neotree toggle<CR>"),
|
||||
-- },
|
||||
{
|
||||
"nvim-neo-tree/neo-tree.nvim",
|
||||
branch = "v3.x",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
|
||||
"MunifTanjim/nui.nvim",
|
||||
-- "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information
|
||||
},
|
||||
vim.keymap.set("n", "<leader>e", "<CMD>:Neotree toggle<CR>"),
|
||||
vim.keymap.set("n", "<leader>Ee", "<CMD>:Neotree left<CR>"),
|
||||
vim.keymap.set("n", "<leader>Ef", "<CMD>:Neotree float<CR>"),
|
||||
vim.keymap.set("n", "<leader>Eg", "<CMD>:Neotree git_status float<CR>"),
|
||||
vim.keymap.set("n", "<leader>Eb", "<CMD>:Neotree buffers position=top<CR>"),
|
||||
},
|
||||
|
||||
---@type LazySpec
|
||||
{
|
||||
|
@ -40,7 +44,7 @@ return {
|
|||
---@type YaziConfig
|
||||
opts = {
|
||||
-- if you want to open yazi instead of netrw, see below for more info
|
||||
open_for_directories = false,
|
||||
open_for_directories = true,
|
||||
keymaps = {
|
||||
show_help = "<f1>",
|
||||
},
|
||||
|
|
212
lua/pika/plugins/git.lua
Normal file
212
lua/pika/plugins/git.lua
Normal file
|
@ -0,0 +1,212 @@
|
|||
return {
|
||||
{
|
||||
"tanvirtin/vgit.nvim",
|
||||
dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons" },
|
||||
-- Lazy loading on 'VimEnter' event is necessary.
|
||||
event = "VimEnter",
|
||||
config = function()
|
||||
require("vgit").setup(
|
||||
-- keymaps = {
|
||||
-- ["n <C-k>"] = {
|
||||
-- function()
|
||||
-- require("vgit").hunk_up()
|
||||
-- end,
|
||||
-- desc = "VGit Hunk Up",
|
||||
-- },
|
||||
-- ["n <C-j>"] = {
|
||||
-- function()
|
||||
-- require("vgit").hunk_down()
|
||||
-- end,
|
||||
-- desc = "VGit Hunk Down",
|
||||
-- },
|
||||
-- ["n <leader>gs"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_hunk_stage()
|
||||
-- end,
|
||||
-- desc = "VGit Stage Hunk",
|
||||
-- },
|
||||
-- ["n <leader>gr"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_hunk_reset()
|
||||
-- end,
|
||||
-- desc = "VGit Reset Hunk",
|
||||
-- },
|
||||
-- ["n <leader>gp"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_hunk_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Preview Hunk",
|
||||
-- },
|
||||
-- ["n <leader>gb"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_blame_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Blame Preview",
|
||||
-- },
|
||||
-- ["n <leader>gf"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_diff_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Diff Preview",
|
||||
-- },
|
||||
-- ["n <leader>gh"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_history_preview()
|
||||
-- end,
|
||||
-- desc = "VGit History Preview",
|
||||
-- },
|
||||
-- ["n <leader>gu"] = {
|
||||
-- function()
|
||||
-- require("vgit").buffer_reset()
|
||||
-- end,
|
||||
-- desc = "VGit Reset Buffer",
|
||||
-- },
|
||||
-- ["n <leader>gcm"] = {
|
||||
-- function()
|
||||
-- require("vgit").project_commit_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Commit Preview",
|
||||
-- },
|
||||
-- ["n <leader>gcc"] = {
|
||||
-- function()
|
||||
-- require("vgit").project_commits_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Commits Preview",
|
||||
-- },
|
||||
-- ["n <leader>gcl"] = {
|
||||
-- function()
|
||||
-- require("vgit").project_logs_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Logs Preview",
|
||||
-- },
|
||||
-- ["n <leader>gd"] = {
|
||||
-- function()
|
||||
-- require("vgit").project_diff_preview()
|
||||
-- end,
|
||||
-- desc = "VGit Project Diff",
|
||||
-- },
|
||||
-- ["n <leader>gx"] = {
|
||||
-- function()
|
||||
-- require("vgit").toggle_diff_preference()
|
||||
-- end,
|
||||
-- desc = "VGit Toggle Diff Preference",
|
||||
-- },
|
||||
-- },
|
||||
)
|
||||
end,
|
||||
|
||||
vim.keymap.set("n", "<C-k>", function()
|
||||
require("vgit").hunk_up()
|
||||
end, { desc = "VGit Hunk Up" }),
|
||||
|
||||
vim.keymap.set("n", "<C-j>", function()
|
||||
require("vgit").hunk_down()
|
||||
end, { desc = "VGit Hunk Down" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gs", function()
|
||||
require("vgit").buffer_hunk_stage()
|
||||
end, { desc = "VGit Stage Hunk" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gr", function()
|
||||
require("vgit").buffer_hunk_reset()
|
||||
end, { desc = "VGit Reset Hunk" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gp", function()
|
||||
require("vgit").buffer_hunk_preview()
|
||||
end, { desc = "VGit Preview Hunk" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gb", function()
|
||||
require("vgit").buffer_blame_preview()
|
||||
end, { desc = "VGit Blame Preview" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gf", function()
|
||||
require("vgit").buffer_diff_preview()
|
||||
end, { desc = "VGit Diff Preview" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gh", function()
|
||||
require("vgit").buffer_history_preview()
|
||||
end, { desc = "VGit History Preview" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gu", function()
|
||||
require("vgit").buffer_reset()
|
||||
end, { desc = "VGit Reset Buffer" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gcm", function()
|
||||
require("vgit").project_commit_preview()
|
||||
end, { desc = "VGit Commit Preview" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gcc", function()
|
||||
require("vgit").project_commits_preview()
|
||||
end, { desc = "VGit Commits Preview" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gcl", function()
|
||||
require("vgit").project_logs_preview()
|
||||
end, { desc = "VGit Logs Preview" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gd", function()
|
||||
require("vgit").project_diff_preview()
|
||||
end, { desc = "VGit Project Diff" }),
|
||||
|
||||
vim.keymap.set("n", "<leader>gx", function()
|
||||
require("vgit").toggle_diff_preference()
|
||||
end, { desc = "VGit Toggle Diff Preference" }),
|
||||
},
|
||||
|
||||
{
|
||||
"lewis6991/gitsigns.nvim",
|
||||
opts = {
|
||||
signs = {
|
||||
add = { text = "┃" },
|
||||
change = { text = "┃" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "┆" },
|
||||
},
|
||||
signs_staged = {
|
||||
add = { text = "┃" },
|
||||
change = { text = "┃" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "┆" },
|
||||
},
|
||||
signs_staged_enable = true,
|
||||
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
||||
numhl = true, -- Toggle with `:Gitsigns toggle_numhl`
|
||||
linehl = true, -- Toggle with `:Gitsigns toggle_linehl`
|
||||
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
||||
watch_gitdir = {
|
||||
follow_files = true,
|
||||
},
|
||||
auto_attach = true,
|
||||
attach_to_untracked = false,
|
||||
current_line_blame = true, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
||||
current_line_blame_opts = {
|
||||
virt_text = true,
|
||||
virt_text_pos = "eol", -- 'eol' | 'overlay' | 'right_align'
|
||||
delay = 300,
|
||||
ignore_whitespace = true,
|
||||
virt_text_priority = 100,
|
||||
},
|
||||
current_line_blame_formatter = "<author>, <author_time:%R> - <summary>",
|
||||
sign_priority = 6,
|
||||
update_debounce = 100,
|
||||
status_formatter = nil, -- Use default
|
||||
max_file_length = 40000, -- Disable if file is longer than this (in lines)
|
||||
preview_config = {
|
||||
-- Options passed to nvim_open_win
|
||||
border = "single",
|
||||
style = "minimal",
|
||||
relative = "cursor",
|
||||
row = 0,
|
||||
col = 1,
|
||||
},
|
||||
|
||||
vim.keymap.set("n", "<leader>gr", "<cmd>Gitsigns refresh<CR>", { desc = "Gitsigns Refresh" }),
|
||||
vim.keymap.set("n", "<leader>gs", "<cmd>Gitsigns toggle_signs<CR>", { desc = "Gitsigns ToggleSigns" }),
|
||||
vim.keymap.set("n", "<leader>gl", "<cmd>Gitsigns toggle_linehl<CR>", { desc = "Gitsigns ToggleLine" }),
|
||||
vim.keymap.set("n", "<leader>gw", "<cmd>Gitsigns toggle_word_diff<CR>", { desc = "Gitsigns ToggleWord" }),
|
||||
},
|
||||
},
|
||||
}
|
|
@ -1,56 +0,0 @@
|
|||
return {
|
||||
"lewis6991/gitsigns.nvim",
|
||||
opts = {
|
||||
signs = {
|
||||
add = { text = "┃" },
|
||||
change = { text = "┃" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "┆" },
|
||||
},
|
||||
signs_staged = {
|
||||
add = { text = "┃" },
|
||||
change = { text = "┃" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "┆" },
|
||||
},
|
||||
signs_staged_enable = true,
|
||||
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
||||
numhl = true, -- Toggle with `:Gitsigns toggle_numhl`
|
||||
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
|
||||
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
||||
watch_gitdir = {
|
||||
follow_files = true,
|
||||
},
|
||||
auto_attach = true,
|
||||
attach_to_untracked = false,
|
||||
current_line_blame = true, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
||||
current_line_blame_opts = {
|
||||
virt_text = true,
|
||||
virt_text_pos = "eol", -- 'eol' | 'overlay' | 'right_align'
|
||||
delay = 1000,
|
||||
ignore_whitespace = true,
|
||||
virt_text_priority = 100,
|
||||
},
|
||||
current_line_blame_formatter = "<author>, <author_time:%R> - <summary>",
|
||||
sign_priority = 6,
|
||||
update_debounce = 100,
|
||||
status_formatter = nil, -- Use default
|
||||
max_file_length = 40000, -- Disable if file is longer than this (in lines)
|
||||
preview_config = {
|
||||
-- Options passed to nvim_open_win
|
||||
border = "single",
|
||||
style = "minimal",
|
||||
relative = "cursor",
|
||||
row = 0,
|
||||
col = 1,
|
||||
},
|
||||
vim.keymap.set("n", "<leader>gs", "<cmd>Gitsigns toggle_signs<CR>"),
|
||||
vim.keymap.set("n", "<leader>gr", "<cmd>Gitsigns refresh<CR>"),
|
||||
vim.keymap.set("n", "<leader>gl", "<cmd>Gitsigns toggle_linehl<CR>"),
|
||||
vim.keymap.set("n", "<leader>gw", "<cmd>Gitsigns toggle_word_diff<CR>"),
|
||||
},
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue