Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gbprod/tree-sitter-gitcommit
A tree-sitter grammar for gitcommit messages
https://github.com/gbprod/tree-sitter-gitcommit
git gitcommit grammar tree-sitter tree-sitter-parser
Last synced: 11 days ago
JSON representation
A tree-sitter grammar for gitcommit messages
- Host: GitHub
- URL: https://github.com/gbprod/tree-sitter-gitcommit
- Owner: gbprod
- License: wtfpl
- Created: 2022-11-10T18:36:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-04T09:21:55.000Z (23 days ago)
- Last Synced: 2024-06-04T13:18:03.871Z (23 days ago)
- Topics: git, gitcommit, grammar, tree-sitter, tree-sitter-parser
- Language: C
- Homepage:
- Size: 3.13 MB
- Stars: 53
- Watchers: 3
- Forks: 7
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Code of conduct: CODE_OF_CONDUCT.md
Lists
- awesome-stars - gbprod/tree-sitter-gitcommit - A tree-sitter grammar for gitcommit messages (JavaScript)
- awesome-stars - gbprod/tree-sitter-gitcommit - A tree-sitter grammar for gitcommit messages (C)
README
# tree-sitter-gitcommit
[![Build/test](https://github.com/gbprod/tree-sitter-gitcommit/actions/workflows/ci.yml/badge.svg)](https://github.com/gbprod/tree-sitter-gitcommit/actions/workflows/ci.yml)
`gitcommit` grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter).
## Features
- Support for [Conventional Commits](https://www.conventionalcommits.org) specifications.
- Support for different locales / languages. See [Supported locales](#supported-locales) for a full list.## Supported locales
We aim to support all the [locales supported by git](https://github.com/git/git/tree/master/po).
The currently supported locales are listed below:- `en`: English
- `bg`: Bulgarian
- `ca`: Catalan
- `de`: German
- `el`: Greek
- `es`: Spanish
- `fr`: French
- `id`: Indonesian (Bahasa)
- `it`: Italian
- `ko`: Korean
- `pl`: Polish
- `pt_PT`: Portugal Portugese
- `ru`: Russian
- `sv`: Swedish
- `tr`: Turkish
- `vi`: Vietnamese
- `zh_CN`: Chinese (Simplified)
- `zh_TW`: Taiwanese Mandarin## Note about injected languages
This parser _only_ parses git commit subject, message and generated comments, it doesn't handle diff and git rebase information that could be included.
To handle that, you must have `diff` and `git_rebase` tree-sitter grammars installed and add injection queries.If you're using Neovim and [`nvim-treesitter`](https://github.com/nvim-treesitter/nvim-treesitter), you just have to be sure that `diff` and `git_rebase` are installed (using `TSInstall diff git_rebase` for example).
## Credits
- [https://github.com/the-mikedavis/tree-sitter-git-commit](https://github.com/the-mikedavis/tree-sitter-git-commit) Good parser but [only works in English](https://github.com/the-mikedavis/tree-sitter-git-commit/issues/4).