nvim: Switch from lualine to heirline
This commit is contained in:
parent
41fa76eb00
commit
e23936b1dc
7 changed files with 342 additions and 141 deletions
|
@ -1,62 +1,249 @@
|
||||||
(let [mod {}
|
(let [mod {:heirline {}}
|
||||||
web-devicons (require :nvim-web-devicons)]
|
api vim.api
|
||||||
(fn buffer-not-empty? []
|
heirline-utils (require :heirline.utils)
|
||||||
(not= (vim.fn.empty (vim.fn.expand "%:t")) 1))
|
heirline-conditions (require :heirline.conditions)
|
||||||
|
web-devicons (require :nvim-web-devicons)
|
||||||
|
dracula (require :dracula)
|
||||||
|
colors (dracula.colors)]
|
||||||
(fn buffer-variable-exists? [key]
|
(fn buffer-variable-exists? [key]
|
||||||
(and (buffer-not-empty?) (not= (. vim.b key) nil)))
|
(not= (. vim :b key) nil))
|
||||||
|
|
||||||
(fn maybe-insert-git-status [format value result]
|
(fn get-current-line []
|
||||||
(when (and (not= value nil) (> value 0))
|
(let [cl (api.nvim_win_get_cursor 0)]
|
||||||
(table.insert result (string.format format value))))
|
(. cl 1)))
|
||||||
|
|
||||||
(fn mod.line-column []
|
(fn get-total-lines []
|
||||||
(let [line (tostring (vim.fn.line "."))
|
(vim.api.nvim_buf_line_count 0))
|
||||||
column (tostring (vim.fn.col "."))]
|
|
||||||
(string.format "%3s:%-3s" line column)))
|
|
||||||
|
|
||||||
(fn mod.current-line-percent []
|
;; Utils
|
||||||
(let [current-line (vim.fn.line ".")
|
(set mod.heirline.default-hl
|
||||||
total-lines (vim.fn.line "$")]
|
(fn []
|
||||||
(if (= current-line 1) :Top
|
{:bg colors.black}))
|
||||||
(= current-line total-lines) :Bot
|
(set mod.heirline.space {:provider " "})
|
||||||
"%2p%%")))
|
(set mod.heirline.spacer {:provider " " :hl {:fg colors.bg :bg colors.bg}})
|
||||||
|
;; Mode
|
||||||
(fn mod.filetype []
|
(set mod.heirline.vi-mode
|
||||||
(let [name (vim.fn.expand "%:t")
|
{:init (fn [self]
|
||||||
extension (vim.fn.expand "%:e")
|
(let [mode (. (api.nvim_get_mode) :mode)]
|
||||||
ftype vim.bo.filetype]
|
(set self.mode mode)))
|
||||||
(if (> (ftype:len) 0) (let [icon (web-devicons.get_icon name extension
|
:static {:mode-names {:n :NORMAL
|
||||||
|
:no :O-PENDING
|
||||||
|
:nov :O-PENDING
|
||||||
|
:noV :O-PENDING
|
||||||
|
"no\022" :O-PENDING
|
||||||
|
:niI :NORMAL
|
||||||
|
:niR :NORMAL
|
||||||
|
:niV :NORMAL
|
||||||
|
:nt :NORMAL
|
||||||
|
:v :VISUAL
|
||||||
|
:vs :VISUAL
|
||||||
|
:V :V-LINE
|
||||||
|
:Vs :V-LINE
|
||||||
|
"\022" :V-BLOCK
|
||||||
|
"\022s" :V-BLOCK
|
||||||
|
:s :SELECT
|
||||||
|
:S :S-LINE
|
||||||
|
"\019" :S-BLOCK
|
||||||
|
:i :INSERT
|
||||||
|
:ic :INSERT
|
||||||
|
:ix :INSERT
|
||||||
|
:R :REPLACE
|
||||||
|
:Rc :REPLACE
|
||||||
|
:Rx :REPLACE
|
||||||
|
:Rv :V-REPLACE
|
||||||
|
:Rvc :V-REPLACE
|
||||||
|
:Rvx :V-REPLACE
|
||||||
|
:c :COMMAND
|
||||||
|
:cv :EX
|
||||||
|
:ce :EX
|
||||||
|
:r :REPLACE
|
||||||
|
:rm :MORE
|
||||||
|
:r? :CONFIRM
|
||||||
|
:! :SHELL
|
||||||
|
:t :TERMINAL}
|
||||||
|
:mode-hl {:n {:fg colors.black :bg colors.purple :bold true}
|
||||||
|
:i {:fg colors.black :bg colors.green :bold true}
|
||||||
|
:v {:fg colors.black :bg colors.pink :bold true}
|
||||||
|
:V {:fg colors.black :bg colors.pink :bold true}
|
||||||
|
"\022" {:fg colors.black :bg colors.pink :bold true}
|
||||||
|
:c {:fg colors.black :bg colors.yellow :bold true}
|
||||||
|
:s {:fg colors.black :bg colors.orange :bold true}
|
||||||
|
:S {:fg colors.black :bg colors.orange :bold true}
|
||||||
|
"\019" {:fg colors.black
|
||||||
|
:bg colors.orange
|
||||||
|
:bold true}
|
||||||
|
:R {:fg colors.black :bg colors.yellow :bold true}
|
||||||
|
:r {:fg colors.black :bg colors.yellow :bold true}
|
||||||
|
:! {:fg colors.black :bg colors.purple :bold true}
|
||||||
|
:t {:fg colors.black :bg colors.purple :bold true}}}
|
||||||
|
:provider (fn [self]
|
||||||
|
(.. " " (. self :mode-names self.mode) " "))
|
||||||
|
:hl (fn [self]
|
||||||
|
(let [short-mode (self.mode:sub 1 1)]
|
||||||
|
(. self :mode-hl short-mode)))})
|
||||||
|
;; Filetype
|
||||||
|
(set mod.heirline.filetype-block
|
||||||
|
{:init (fn [self]
|
||||||
|
(set self.filename (api.nvim_buf_get_name 0)))})
|
||||||
|
(set mod.heirline.file-icon
|
||||||
|
{:init (fn [self]
|
||||||
|
(let [filename self.filename
|
||||||
|
ext (vim.fn.fnamemodify filename ":e")
|
||||||
|
(icon color) (web-devicons.get_icon_color filename ext
|
||||||
{:default true})]
|
{:default true})]
|
||||||
(.. ftype " " icon))
|
(set self.icon icon)
|
||||||
"no ft")))
|
(set self.icon-color color)))
|
||||||
|
:provider (fn [self]
|
||||||
(fn mod.gitsigns-diff-source []
|
(when self.icon
|
||||||
(let [signs vim.b.gitsigns_status_dict]
|
(.. self.icon " ")))
|
||||||
(when signs
|
:hl (fn [self]
|
||||||
{:added signs.added :modified signs.changed :removed signs.removed})))
|
{:fg self.icon-color})})
|
||||||
|
(set mod.heirline.filetype
|
||||||
(fn mod.current-function []
|
{:provider (fn []
|
||||||
|
(let [ft vim.bo.filetype]
|
||||||
|
(if (> (ft:len) 0) ft "no ft")))
|
||||||
|
:hl {:fg colors.white}})
|
||||||
|
(set mod.heirline.filetype-block
|
||||||
|
(heirline-utils.insert mod.heirline.filetype-block
|
||||||
|
mod.heirline.file-icon mod.heirline.filetype))
|
||||||
|
;; git
|
||||||
|
(set mod.heirline.git {:condition heirline-conditions.is_git_repo
|
||||||
|
:init (fn [self]
|
||||||
|
(let [git-status vim.b.gitsigns_status_dict]
|
||||||
|
(set self.git-head git-status.head)
|
||||||
|
(set self.git-added (or git-status.added 0))
|
||||||
|
(set self.git-removed
|
||||||
|
(or git-status.removed 0))
|
||||||
|
(set self.git-changed
|
||||||
|
(or git-status.changed 0))
|
||||||
|
(set self.has-changes?
|
||||||
|
(or (> self.git-added 0)
|
||||||
|
(> self.git-removed 0)
|
||||||
|
(> self.git-changed 0)))))
|
||||||
|
1 {:provider (fn [self]
|
||||||
|
(.. " " self.git-head " "))
|
||||||
|
:hl {:fg colors.black :bg colors.orange :bold true}}
|
||||||
|
2 {:condition (fn [self]
|
||||||
|
self.has-changes?)
|
||||||
|
:provider " "}
|
||||||
|
3 {:provider (fn [self]
|
||||||
|
(let [spacer (if (or (> self.git-removed
|
||||||
|
0)
|
||||||
|
(> self.git-changed
|
||||||
|
0))
|
||||||
|
" " "")]
|
||||||
|
(when (> self.git-added 0)
|
||||||
|
(.. " " self.git-added spacer))))
|
||||||
|
:hl {:fg colors.bright_green}}
|
||||||
|
4 {:provider (fn [self]
|
||||||
|
(let [spacer (if (> self.git-changed 0)
|
||||||
|
" " "")]
|
||||||
|
(when (> self.git-removed 0)
|
||||||
|
(.. " " self.git-removed spacer))))
|
||||||
|
:hl {:fg colors.bright_red}}
|
||||||
|
5 {:provider (fn [self]
|
||||||
|
(when (> self.git-changed 0)
|
||||||
|
(.. " " self.git-changed)))
|
||||||
|
:hl {:fg colors.cyan}}})
|
||||||
|
;; Diagnostics
|
||||||
|
(set mod.heirline.diagnostics
|
||||||
|
{:condition heirline-conditions.has_diagnostics
|
||||||
|
:init (fn [self]
|
||||||
|
(let [d vim.diagnostic]
|
||||||
|
(set self.errors
|
||||||
|
(length (d.get 0 {:severity d.severity.ERROR})))
|
||||||
|
(set self.warnings
|
||||||
|
(length (d.get 0 {:severity d.severity.WARN})))
|
||||||
|
(set self.info (length (d.get 0 {:severity d.severity.INFO})))
|
||||||
|
(set self.hints
|
||||||
|
(length (d.get 0 {:severity d.severity.HINT})))))
|
||||||
|
1 {:provider (fn [self]
|
||||||
|
(let [spacer (if (or (> self.warnings 0) (> self.info 0)
|
||||||
|
(> self.hints 0))
|
||||||
|
" " "")]
|
||||||
|
(when (> self.errors 0)
|
||||||
|
(.. " " self.errors spacer))))
|
||||||
|
:hl {:fg colors.red}}
|
||||||
|
2 {:provider (fn [self]
|
||||||
|
(let [spacer (if (or (> self.info 0) (> self.hints 0))
|
||||||
|
" " "")]
|
||||||
|
(when (> self.warnings 0)
|
||||||
|
(.. " " self.warnings spacer))))
|
||||||
|
:hl {:fg colors.yellow}}
|
||||||
|
3 {:provider (fn [self]
|
||||||
|
(let [spacer (if (> self.hints 0) " " "")]
|
||||||
|
(when (> self.info 0)
|
||||||
|
(.. " " self.info spacer))))
|
||||||
|
:hl {:fg colors.cyan}}
|
||||||
|
4 {:provider (fn [self]
|
||||||
|
(when (> self.hints 0)
|
||||||
|
(.. " " self.hints)))
|
||||||
|
:hl {:fg colors.cyan}}})
|
||||||
|
;; Current Function
|
||||||
|
(set mod.heirline.current-function
|
||||||
|
{:condition heirline-conditions.lsp_attached
|
||||||
|
:provider (fn []
|
||||||
(let [ctx vim.b.nifoc_lsp_current_context]
|
(let [ctx vim.b.nifoc_lsp_current_context]
|
||||||
(if (and (not= ctx nil) (> (ctx:len) 0)) ctx "")))
|
(when (and (not= ctx nil) (> (ctx:len) 0))
|
||||||
|
ctx)))
|
||||||
|
:hl {:fg colors.white}})
|
||||||
|
;; Buffer Options
|
||||||
|
(set mod.heirline.buffer-options
|
||||||
|
{:init (fn [self]
|
||||||
|
(set self.has-options?
|
||||||
|
(or (buffer-variable-exists? :nifoc_lsp_enabled)
|
||||||
|
(buffer-variable-exists? :nifoc_treesitter_enabled)
|
||||||
|
vim.wo.spell)))
|
||||||
|
:hl {:fg colors.black :bg colors.orange}
|
||||||
|
1 {:condition (fn [self]
|
||||||
|
self.has-options?)
|
||||||
|
:provider " "}
|
||||||
|
2 {:provider (fn []
|
||||||
|
(when (buffer-variable-exists? :nifoc_lsp_enabled)
|
||||||
|
" "))}
|
||||||
|
3 {:provider (fn []
|
||||||
|
(when (or (buffer-variable-exists? :nifoc_lsp_formatter_enabled)
|
||||||
|
(not= (vim.opt_local.formatprg:get) ""))
|
||||||
|
" "))}
|
||||||
|
4 {:provider (fn []
|
||||||
|
(when (buffer-variable-exists? :nifoc_treesitter_enabled)
|
||||||
|
" "))}
|
||||||
|
5 {:provider (fn []
|
||||||
|
(when vim.wo.spell
|
||||||
|
"暈 "))}})
|
||||||
|
;; Position
|
||||||
|
(set mod.heirline.position {:init (fn [self]
|
||||||
|
(let [pos (api.nvim_win_get_cursor 0)]
|
||||||
|
(set self.position-line
|
||||||
|
(tostring (. pos 1)))
|
||||||
|
(set self.position-column
|
||||||
|
(tostring (. pos 2)))))
|
||||||
|
:provider (fn [self]
|
||||||
|
(string.format " %3s:%-3s "
|
||||||
|
self.position-line
|
||||||
|
self.position-column))
|
||||||
|
:hl {:fg colors.black
|
||||||
|
:bg colors.purple
|
||||||
|
:bold true}})
|
||||||
|
;; Scrollbar
|
||||||
|
(set mod.heirline.scrollbar
|
||||||
|
{:init (fn [self]
|
||||||
|
(set self.current-line (get-current-line))
|
||||||
|
(set self.total-lines (get-total-lines)))
|
||||||
|
:static {:scrollbar-icons ["🭶" "🭷" "🭸" "🭹" "🭺" "🭻"]}
|
||||||
|
:provider (fn [self]
|
||||||
|
(let [i (+ (math.floor (* (/ (- self.current-line 1)
|
||||||
|
self.total-lines)
|
||||||
|
(length self.scrollbar-icons)))
|
||||||
|
1)
|
||||||
|
new-scrollbar (. self :scrollbar-icons i)]
|
||||||
|
(string.rep new-scrollbar 2)))
|
||||||
|
:hl {:fg colors.purple}})
|
||||||
|
;; Custom Mode
|
||||||
|
|
||||||
(fn mod.spell-enabled? []
|
(fn mod.heirline.custom-mode [str]
|
||||||
(if (and (buffer-not-empty?) vim.wo.spell) "ﮒ" ""))
|
{:provider (.. " " str " ")
|
||||||
|
:hl {:fg colors.black :bg colors.green :bold true}})
|
||||||
(fn mod.fixer-enabled? []
|
|
||||||
(if (or (buffer-variable-exists? :nifoc_lsp_formatter_enabled)
|
|
||||||
(not= (vim.opt_local.formatprg:get) "")) "" ""))
|
|
||||||
|
|
||||||
(fn mod.treesitter-enabled? []
|
|
||||||
(if (buffer-variable-exists? :nifoc_treesitter_enabled) "" ""))
|
|
||||||
|
|
||||||
(fn mod.lsp-enabled? []
|
|
||||||
(if (buffer-variable-exists? :nifoc_lsp_enabled) "" ""))
|
|
||||||
|
|
||||||
(fn mod.extension-telescope []
|
|
||||||
{:filetypes [:TelescopePrompt]
|
|
||||||
:sections {:lualine_a [(fn []
|
|
||||||
:Telescope)]}})
|
|
||||||
|
|
||||||
mod)
|
mod)
|
||||||
|
|
||||||
|
|
33
config/nvim/plugins/heirline.fnl
Normal file
33
config/nvim/plugins/heirline.fnl
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
(let [heirline (require :heirline)
|
||||||
|
utils (require :heirline.utils)
|
||||||
|
conditions (require :heirline.conditions)
|
||||||
|
ns (. (require :nifoc.statusline) :heirline)]
|
||||||
|
(local default-statusline [;; Left
|
||||||
|
ns.spacer
|
||||||
|
ns.vi-mode
|
||||||
|
(utils.surround [" " ""] nil ns.git)
|
||||||
|
(utils.surround [" " ""] nil ns.diagnostics)
|
||||||
|
(utils.surround [" " ""] nil ns.current-function)
|
||||||
|
;; Right
|
||||||
|
{:provider "%="}
|
||||||
|
ns.filetype-block
|
||||||
|
ns.space
|
||||||
|
ns.buffer-options
|
||||||
|
ns.space
|
||||||
|
ns.scrollbar
|
||||||
|
ns.space
|
||||||
|
ns.position
|
||||||
|
ns.spacer])
|
||||||
|
(local telescope-statusline
|
||||||
|
{:condition (fn []
|
||||||
|
(conditions.buffer_matches {:filetype [:TelescopePrompt]}))
|
||||||
|
1 ns.spacer
|
||||||
|
2 (ns.custom-mode :Telescope)})
|
||||||
|
(local statuslines {:hl ns.default-hl
|
||||||
|
:init utils.pick_child_on_condition
|
||||||
|
1 telescope-statusline
|
||||||
|
2 default-statusline})
|
||||||
|
;; Load Statusline
|
||||||
|
(set vim.opt.laststatus 3)
|
||||||
|
(heirline.setup statuslines))
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
(let [lualine (require :lualine)
|
|
||||||
ns (require :nifoc.statusline)]
|
|
||||||
(lualine.setup {:options {:globalstatus true
|
|
||||||
:theme :dracula-nvim
|
|
||||||
:section_separators ""
|
|
||||||
:component_separators "|"
|
|
||||||
:icons_enabled true}
|
|
||||||
:sections {; Left
|
|
||||||
:lualine_a [:mode]
|
|
||||||
:lualine_b [{1 :diff
|
|
||||||
:source ns.gitsigns-diff-source
|
|
||||||
:symbols {:added " "
|
|
||||||
:modified " "
|
|
||||||
:removed " "}}
|
|
||||||
{1 :diagnostics
|
|
||||||
:sources [:nvim_diagnostic]
|
|
||||||
:symbols {:error " "
|
|
||||||
:warn " "
|
|
||||||
:info " "
|
|
||||||
:hint " "}}]
|
|
||||||
:lualine_c [ns.current-function]
|
|
||||||
; Right
|
|
||||||
:lualine_x [:filetype
|
|
||||||
ns.lsp-enabled?
|
|
||||||
ns.treesitter-enabled?
|
|
||||||
ns.fixer-enabled?
|
|
||||||
ns.spell-enabled?]
|
|
||||||
:lualine_y [ns.current-line-percent]
|
|
||||||
:lualine_z [ns.line-column]}
|
|
||||||
:extensions [:toggleterm (ns.extension-telescope)]}))
|
|
||||||
|
|
36
flake.lock
36
flake.lock
|
@ -73,11 +73,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1653153149,
|
"lastModified": 1653340164,
|
||||||
"narHash": "sha256-8B/tWWZziFq4DqnAm9uO7M4Z4PNfllYg5+teX1e5yDQ=",
|
"narHash": "sha256-t6BPApyasx6FOv2cEVyFBXvkEDrknyUe7bngMbNSBkA=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "94780dd888881bf35165dfdd334a57ef6b14ead8",
|
"rev": "e66f0ff69a6c0698b35034b842c4b68814440778",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -96,11 +96,11 @@
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "contrib",
|
"dir": "contrib",
|
||||||
"lastModified": 1653177131,
|
"lastModified": 1653434172,
|
||||||
"narHash": "sha256-YfPM6yjKWu4RPAtLefggWC0ZOGgbcPsk6VT5M3D41B0=",
|
"narHash": "sha256-hCm9+5ehYeWHzU/n3T7QKi5n+k1JuOZeETvKg/YDpic=",
|
||||||
"owner": "neovim",
|
"owner": "neovim",
|
||||||
"repo": "neovim",
|
"repo": "neovim",
|
||||||
"rev": "5193b17839c6524bb72ca35cbfc477c4ddd8ef13",
|
"rev": "af2899aee0b27e27d658c5f9053b83f439210cea",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -119,11 +119,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1653207336,
|
"lastModified": 1653466640,
|
||||||
"narHash": "sha256-5NCzF/G5zSmxStF4dFvsoGlI7Od8PX+64KneXDRilKA=",
|
"narHash": "sha256-fMWq/my9Yk4pIuI1VTgBcT1NSFzdnkUFQJ39pgIdxes=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "neovim-nightly-overlay",
|
"repo": "neovim-nightly-overlay",
|
||||||
"rev": "c24e0cc74d11eef383e36af039782f757613352f",
|
"rev": "bd94793744ee0adcad78c0bbf65a6fcaadf65300",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -139,11 +139,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1650397177,
|
"lastModified": 1653380067,
|
||||||
"narHash": "sha256-zS8PPLdFP3j73u6RXUIkYvGamU55UZAy7qT1JS5dpyg=",
|
"narHash": "sha256-FdHY/GYXVwk81lEwZA3pNObi6CEB/1BY417rpzuQZ3o=",
|
||||||
"owner": "nifoc",
|
"owner": "nifoc",
|
||||||
"repo": "nix-overlay",
|
"repo": "nix-overlay",
|
||||||
"rev": "2a6fab18b3365a33b23d0b620a0fb30bbbd64898",
|
"rev": "9c529749fc00729a987e9724cf157fbe76d34d78",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -154,11 +154,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1653117584,
|
"lastModified": 1653326962,
|
||||||
"narHash": "sha256-5uUrHeHBIaySBTrRExcCoW8fBBYVSDjDYDU5A6iOl+k=",
|
"narHash": "sha256-W8feCYqKTsMre4nAEpv5Kx1PVFC+hao/LwqtB2Wci/8=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f4dfed73ee886b115a99e5b85fdfbeb683290d83",
|
"rev": "41cc1d5d9584103be4108c1815c350e07c807036",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -186,11 +186,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1653180168,
|
"lastModified": 1653353214,
|
||||||
"narHash": "sha256-FRV/JM1N8B7MTaSrVCP5dNN+m5oxq1YwTu1/f5cOKic=",
|
"narHash": "sha256-pK7WaX3IkYuWPCB9DxdMLUWPwLPqWk+Fx330kXNxF1Q=",
|
||||||
"owner": "arqv",
|
"owner": "arqv",
|
||||||
"repo": "zig-overlay",
|
"repo": "zig-overlay",
|
||||||
"rev": "3bb47ae2991f3cb441d20a129f2936c460bf242a",
|
"rev": "2768194b80bfb51d7fd70c055ffe0b6c82ec4943",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -182,8 +182,8 @@ in
|
||||||
|
|
||||||
# UI
|
# UI
|
||||||
{
|
{
|
||||||
plugin = lualine-nvim;
|
plugin = heirline-nvim;
|
||||||
config = builtins.readFile ../../config/nvim/plugins/lualine.fnl;
|
config = builtins.readFile ../../config/nvim/plugins/heirline.fnl;
|
||||||
type = "fennel";
|
type = "fennel";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,23 +58,23 @@
|
||||||
};
|
};
|
||||||
substitute-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
substitute-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "substitute.nvim";
|
pname = "substitute.nvim";
|
||||||
version = "2022-04-06";
|
version = "2022-05-25";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "gbprod";
|
owner = "gbprod";
|
||||||
repo = "substitute.nvim";
|
repo = "substitute.nvim";
|
||||||
rev = "66379e99812ce5f46aa4810c05460c87b7b40aac";
|
rev = "2dda396e8cfa6463a5c6fdb98b52635d200e3775";
|
||||||
sha256 = "1j85rxj8cb7jxdaw3jwjgg46wsic28304b2bm2wrfj0idnmlrwki";
|
sha256 = "0hvjxpag3cyklnfgbxk423y5icrmi936hzapa851qirxpw9zxj18";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
leap-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
leap-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "leap.nvim";
|
pname = "leap.nvim";
|
||||||
version = "2022-05-21";
|
version = "2022-05-23";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "ggandor";
|
owner = "ggandor";
|
||||||
repo = "leap.nvim";
|
repo = "leap.nvim";
|
||||||
rev = "e45af6e06eacefd7d1aa1c8526aeeccea61fe874";
|
rev = "e518433923f4ab4ca9b328d97e209d3ef18a4df9";
|
||||||
sha256 = "0p2hlzxq80l642d8160jyhayl8w3hzzdr8fpzh92202rp2p117bw";
|
sha256 = "1zh86cp41z7zxl005wzl7lv2mw9wcv62vhd3h582djy48bypcrk2";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -91,12 +91,12 @@
|
||||||
};
|
};
|
||||||
nvim-treesitter = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
nvim-treesitter = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "nvim-treesitter";
|
pname = "nvim-treesitter";
|
||||||
version = "2022-05-22";
|
version = "2022-05-25";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "nvim-treesitter";
|
owner = "nvim-treesitter";
|
||||||
repo = "nvim-treesitter";
|
repo = "nvim-treesitter";
|
||||||
rev = "b8fd5df8ff706fc2967f79a269c356916aaca4ae";
|
rev = "3dea0bbf71438d2d5a79de0145b509dfb16525a5";
|
||||||
sha256 = "0wswfnp76v391y9bj1bv5m7kihh2as2mx44jvcca8vncffqp6q5f";
|
sha256 = "08chqv4a2d3f629v78dym0pq56pmdnp8j4xp4s93wnj4mpz3qmpz";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -124,12 +124,12 @@
|
||||||
};
|
};
|
||||||
telescope-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
telescope-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "telescope.nvim";
|
pname = "telescope.nvim";
|
||||||
version = "2022-05-20";
|
version = "2022-05-25";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "nvim-telescope";
|
owner = "nvim-telescope";
|
||||||
repo = "telescope.nvim";
|
repo = "telescope.nvim";
|
||||||
rev = "1a91238a6ad7a1f77fabdbee7225692a04b20d48";
|
rev = "328232e090004274f2c830fdaad9a2bda8ba2e60";
|
||||||
sha256 = "10kyimz5zggjwv9nmrkgkz2f3w9scsanjw9n3fjl51zjf80hj6wf";
|
sha256 = "1lnl87b3bp31340ilp12dwr4gimxj8vajjf6nhqabd0w54r7g243";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -197,23 +197,23 @@
|
||||||
};
|
};
|
||||||
LuaSnip = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
LuaSnip = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "LuaSnip";
|
pname = "LuaSnip";
|
||||||
version = "2022-05-21";
|
version = "2022-05-23";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "L3MON4D3";
|
owner = "L3MON4D3";
|
||||||
repo = "LuaSnip";
|
repo = "LuaSnip";
|
||||||
rev = "07cf1a1fa01c7ecb2091d0cd04af2a2e70676058";
|
rev = "08b06c3dace531cac7cf297ce407f0f43bfd192b";
|
||||||
sha256 = "158mj2sc9ga5dc5x5rn1j7r3m8jikq2vs0d4c48pgzqgvzm0iczf";
|
sha256 = "0wvpnanymr3p5aqqkwggjs30gsyxrn14j6fihqblaw1m2dbl4zli";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
nvim-cmp = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
nvim-cmp = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "nvim-cmp";
|
pname = "nvim-cmp";
|
||||||
version = "2022-05-18";
|
version = "2022-05-25";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "hrsh7th";
|
owner = "hrsh7th";
|
||||||
repo = "nvim-cmp";
|
repo = "nvim-cmp";
|
||||||
rev = "6e1e3865158f340d6cd3936937eb56947b5a90f9";
|
rev = "033a817ced907c8bcdcbe3355d7ea67446264f4b";
|
||||||
sha256 = "0gblj2agswxnd9p4avyqbsxzwd58c87516qa9pzx7bzssa1sfc0w";
|
sha256 = "0ywdjcic3ipc0igss3nmd9j2vdx3jh4wmfsx2895kasjb0x50fqg";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -338,17 +338,6 @@
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
nvim-treesitter-textobjects = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
|
||||||
pname = "nvim-treesitter-textobjects";
|
|
||||||
version = "2022-05-14";
|
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "nvim-treesitter";
|
|
||||||
repo = "nvim-treesitter-textobjects";
|
|
||||||
rev = "b00b344c0f5a0a458d6e66eb570cfb347ebf4c38";
|
|
||||||
sha256 = "190k6p07769ykz54fdy0y5zrqyhca8dnnfji5pd6ccws1ghgqqd2";
|
|
||||||
fetchSubmodules = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
vim-matchup = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
vim-matchup = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "vim-matchup";
|
pname = "vim-matchup";
|
||||||
version = "2022-05-06";
|
version = "2022-05-06";
|
||||||
|
@ -360,6 +349,28 @@
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
nvim-treesitter-textobjects = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
|
pname = "nvim-treesitter-textobjects";
|
||||||
|
version = "2022-05-23";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "nvim-treesitter";
|
||||||
|
repo = "nvim-treesitter-textobjects";
|
||||||
|
rev = "b1e850b77e57b2720c06d523d6fc4776ad6a5608";
|
||||||
|
sha256 = "070ldvra2xmg76nvx1xa5wx2pmfrfmjqbhxy2qpr6nyj0cbb5ndg";
|
||||||
|
fetchSubmodules = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
heirline-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
|
pname = "heirline.nvim";
|
||||||
|
version = "2022-05-25";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "rebelot";
|
||||||
|
repo = "heirline.nvim";
|
||||||
|
rev = "bb7eaec8f5f8e762b23da91109b54e1b3518c7b8";
|
||||||
|
sha256 = "0hly8zaqn7fvvak7dapr2rhx9z4y4rga8sh3v3w3divk9nnqf55v";
|
||||||
|
fetchSubmodules = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
lualine-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
lualine-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "lualine.nvim";
|
pname = "lualine.nvim";
|
||||||
version = "2022-05-22";
|
version = "2022-05-22";
|
||||||
|
@ -384,12 +395,12 @@
|
||||||
};
|
};
|
||||||
indent-blankline-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
indent-blankline-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "indent-blankline.nvim";
|
pname = "indent-blankline.nvim";
|
||||||
version = "2022-05-10";
|
version = "2022-05-24";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "lukas-reineke";
|
owner = "lukas-reineke";
|
||||||
repo = "indent-blankline.nvim";
|
repo = "indent-blankline.nvim";
|
||||||
rev = "8567ac8ccd19ee41a6ec55bf044884799fa3f56b";
|
rev = "6177a59552e35dfb69e1493fd68194e673dc3ee2";
|
||||||
sha256 = "0gbdgn8031i4wgl5w2halaxjir39710n5cs8997cf3fhjj8zk5ss";
|
sha256 = "1bsyzbcj9jmpx6sl6mf2f5k1a60lhgq7vmsrpqab2wc0vm4v8kap";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -428,12 +439,12 @@
|
||||||
};
|
};
|
||||||
gitsigns-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
gitsigns-nvim = pkgs.vimUtils.buildVimPluginFrom2Nix {
|
||||||
pname = "gitsigns.nvim";
|
pname = "gitsigns.nvim";
|
||||||
version = "2022-05-22";
|
version = "2022-05-24";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "lewis6991";
|
owner = "lewis6991";
|
||||||
repo = "gitsigns.nvim";
|
repo = "gitsigns.nvim";
|
||||||
rev = "ada01db9ddb31a124c52b8ea25191a0790da74e0";
|
rev = "44372ff5dca2ca4c0cff13bb9a0d382238756c68";
|
||||||
sha256 = "0j527indacyvdsjplim2wl2fm90qg8qvcvfd9xc0vs03g1a282cy";
|
sha256 = "0gzgsc6abpwdmx5mx6656rific4gbfkwnmkbii5w2x5bxp98lz6z";
|
||||||
fetchSubmodules = false;
|
fetchSubmodules = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -58,12 +58,13 @@
|
||||||
# Pairs
|
# Pairs
|
||||||
- src: windwp/nvim-autopairs
|
- src: windwp/nvim-autopairs
|
||||||
- src: windwp/nvim-ts-autotag
|
- src: windwp/nvim-ts-autotag
|
||||||
|
- src: andymass/vim-matchup
|
||||||
|
|
||||||
# Textobjects
|
# Textobjects
|
||||||
- src: nvim-treesitter/nvim-treesitter-textobjects
|
- src: nvim-treesitter/nvim-treesitter-textobjects
|
||||||
|
|
||||||
# UI
|
# UI
|
||||||
- src: andymass/vim-matchup
|
- src: rebelot/heirline.nvim
|
||||||
- src: nvim-lualine/lualine.nvim
|
- src: nvim-lualine/lualine.nvim
|
||||||
- src: akinsho/bufferline.nvim
|
- src: akinsho/bufferline.nvim
|
||||||
- src: lukas-reineke/indent-blankline.nvim
|
- src: lukas-reineke/indent-blankline.nvim
|
||||||
|
|
Loading…
Reference in a new issue