No description
Find a file
2026-02-02 16:55:21 -05:00
.github/workflows fix(test): hopefully they work 2026-02-01 23:41:59 -05:00
doc feat(doc): more updates 2026-02-02 16:51:48 -05:00
lua/fugitive-ts feat: update autocmds for git filetypes with fugiive:/// bufnames 2026-02-02 16:46:58 -05:00
plugin feat: update autocmds for git filetypes with fugiive:/// bufnames 2026-02-02 16:46:58 -05:00
scripts feat(scripts): ci script to run quickly 2026-02-02 16:03:50 -05:00
spec feat: update 2026-02-02 15:34:37 -05:00
.busted feat(test): testing infrastructure 2026-02-01 23:09:05 -05:00
.editorconfig feat: initial setup files 2026-02-01 16:30:24 -05:00
.gitignore feat: initial setup files 2026-02-01 16:30:24 -05:00
.luarc.json feat: initial setup files 2026-02-01 16:30:24 -05:00
.pre-commit-config.yaml fix: correct ci 2026-02-01 19:03:52 -05:00
.prettierignore feat: initial setup files 2026-02-01 16:30:24 -05:00
.prettierrc feat: initial setup files 2026-02-01 16:30:24 -05:00
fugitive-ts.nvim-scm-1.rockspec feat(test): testing infrastructure 2026-02-01 23:09:05 -05:00
LICENSE feat: initial setup files 2026-02-01 16:30:24 -05:00
README.md feat(doc): update to show more highlighting 2026-02-02 16:55:21 -05:00
selene.toml feat: initial setup files 2026-02-01 16:30:24 -05:00
stylua.toml feat: initial setup files 2026-02-01 16:30:24 -05:00
vim.toml cleanup 2026-02-02 14:06:58 -05:00

fugitive-ts.nvim

Treesitter syntax highlighting for vim-fugitive

Enhance the great vim-fugitive with syntax-aware code to easily work with diffs.

fugitive-ts.nvim preview

Features

  • Treesitter syntax highlighting in :Git diffs and commit views
  • :Gdiffsplit / :Gvdiffsplit syntax through diff backgrounds
  • Vim syntax fallback for languages without a treesitter parser
  • Hunk header context highlighting (@@ ... @@ function foo())
  • Configurable debouncing, max lines, and diff prefix concealment

Requirements

Installation

Using lazy.nvim:

{
  'barrettruth/fugitive-ts.nvim',
  dependencies = { 'tpope/vim-fugitive' },
  opts = {},
}

Documentation

:help fugitive-ts.nvim

Known Limitations

  • Syntax "flashing": fugitive-ts.nvim hooks into the FileType fugitive event triggered by vim-fugitive, at which point the fugitive buffer is preliminarily painted. The buffer is then re-painted after debounce_ms milliseconds, causing an unavoidable visual "flash" even when debounce_ms = 0. Feel free to reach out if you know how to fix this!

Acknowledgements