;; Add git signs to source files. (local keys [{1 :mq 2 "Gitsigns diffthis HEAD" :mode :n :desc "Gitsigns diff"} {1 :gR 2 "lua require 'gitsigns'.reset_buffer()" :mode :n :desc "Reset Buffer"} {1 :gd 2 "Gitsigns diffthis HEAD" :mode :n :desc :Diff} {1 :gj 2 "lua require 'gitsigns'.next_hunk()" :mode :n :desc "Next Hunk"} {1 :gk 2 "lua require 'gitsigns'.prev_hunk()" :mode :n :desc "Prev Hunk"} {1 :gl 2 "lua require 'gitsigns'.blame_line()" :mode :n :desc :Blame} {1 :gp 2 "lua require 'gitsigns'.preview_hunk()" :mode :n :desc "Preview Hunk"} {1 :gr 2 "lua require 'gitsigns'.reset_hunk()" :mode :n :desc "Reset Hunk"} {1 :gs 2 "lua require 'gitsigns'.stage_hunk()" :mode :n :desc "Stage Hunk"} {1 :gu 2 "lua require 'gitsigns'.undo_stage_hunk()" :mode :n :desc "Undo Stage Hunk"} {1 :gn 2 ":Gitsigns select_hunk" :mode [:o :x] :desc "GitSigns Select Hunk"}]) (local icons (require :plugins.icons)) (local signs {:add {:text (. icons :git-add)} :change {:text (. icons :git-add)} :delete {:text (. icons :git-delete)} :topdelete {:text (. icons :git-top-delete)} :changedelete {:text (. icons :git-change-delete)} :untracked {:text (. icons :git-untracked)}}) (local opts {: signs :signcolumn true :numhl false :linehl false :word_diff false :watch_gitdir {:follow_files true} :attach_to_untracked true :current_line_blame false :current_line_blame_opts {:virt_text true :virt_text_pos :eol :delay 1000 :ignore_whitespace false} :current_line_blame_formatter ", - " :sign_priority 6 :update_debounce 100 :status_formatter nil :max_file_length 40000 :preview_config {:border :single :style :minimal :relative :cursor :row 0 :col 1} :yadm {:enable false}}) {1 :lewis6991/gitsigns.nvim :event [:BufReadPre :BufNewFile] : opts : keys}