{"id":21364784,"url":"https://github.com/abccsss/nvim-gitstatus","last_synced_at":"2025-08-15T22:19:01.862Z","repository":{"id":263316004,"uuid":"889910440","full_name":"abccsss/nvim-gitstatus","owner":"abccsss","description":"A simple Neovim plugin providing a lualine component for displaying git status in the status line.","archived":false,"fork":false,"pushed_at":"2025-03-01T19:10:30.000Z","size":16,"stargazers_count":7,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T02:45:23.411Z","etag":null,"topics":["lua","lualine","lualine-components","neovim","neovim-plugin","nvim","nvim-plugin"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/abccsss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-17T14:57:04.000Z","updated_at":"2025-03-29T20:12:17.000Z","dependencies_parsed_at":"2025-03-01T20:21:46.209Z","dependency_job_id":"760c26c9-3586-4962-83a5-e13f83540147","html_url":"https://github.com/abccsss/nvim-gitstatus","commit_stats":null,"previous_names":["abccsss/nvim-gitstatus"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/abccsss/nvim-gitstatus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abccsss%2Fnvim-gitstatus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abccsss%2Fnvim-gitstatus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abccsss%2Fnvim-gitstatus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abccsss%2Fnvim-gitstatus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abccsss","download_url":"https://codeload.github.com/abccsss/nvim-gitstatus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abccsss%2Fnvim-gitstatus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270637746,"owners_count":24620427,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-15T02:00:12.559Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lua","lualine","lualine-components","neovim","neovim-plugin","nvim","nvim-plugin"],"created_at":"2024-11-22T07:07:34.749Z","updated_at":"2025-08-15T22:19:01.838Z","avatar_url":"https://github.com/abccsss.png","language":"Lua","readme":"# nvim-gitstatus\n\nA simple [Neovim](https://neovim.io/) plugin providing a\n[lualine](https://github.com/nvim-lualine/lualine.nvim)\ncomponent to display `git status` results in the status line.\n\n![screenshot](https://github.com/user-attachments/assets/e375c61a-bfe7-454f-99c8-a67a8d033777)\n\n\u003e [!CAUTION]\n\u003e This plugin is still in early development. It has not been tested extensively\n\u003e and may not work as expected. Use at your own risk.\n\n## Prerequisites\n\n- [Neovim](https://neovim.io/) ≥ 0.10.0.\n- [Git](https://git-scm.com/).\n- [lualine](https://github.com/nvim-lualine/lualine.nvim)\n  for status line integration.\n\n## Installation\n\nUsing [lazy.nvim](https://lazy.folke.io/):\n\n```lua\n{\n  \"abccsss/nvim-gitstatus\",\n  event = \"VeryLazy\",\n  config = true,\n}\n```\n\n## Setup\n\nAdd the component `gitstatus` to your lualine configuration. For example:\n\n```lua\nrequire(\"lualine\").setup({\n  sections = {\n    lualine_a = { \"mode\" },\n    lualine_b = {\n      {\n        \"gitstatus\",\n        sections = {\n          { \"branch\", format = \" {}\" },\n          { \"is_dirty\", format = \"*\" },\n        },\n        sep = \"\",\n      },\n    },\n    lualine_c = {\n      {\n        \"gitstatus\",\n        sections = {\n          { \"ahead\", format = \"{}↑\" },\n          { \"behind\", format = \"{}↓\" },\n          { \"conflicted\", format = \"{}!\" },\n          { \"staged\", format = \"{}=\" },\n          { \"untracked\", format = \"{}+\" },\n          { \"modified\", format = \"{}*\" },\n          { \"renamed\", format = \"{}~\" },\n          { \"deleted\", format = \"{}-\" },\n        },\n        sep = \" \",\n      },\n      -- other parts here\n    },\n    -- other sections here\n  },\n  -- other options here\n})\n```\n\nEach item in the `sections` table is either a string or a table with the\nfollowing fields:\n\n- `[1]: string | function` - Either one of the following:\n\n  - `string` - The variable name to display, which must be one of the\n    following:\n\n    - `branch` - The current branch name.\n    - `upstream_branch` - The remote branch name.\n    - `is_dirty` - A boolean value indicating whether the working directory is\n      dirty. Useful for e.g. showing a `*` next to the branch name.\n    - `up_to_date` - A boolean value indicating whether the local branch is up to\n      date with the remote branch.\n    - `up_to_date_and_clean` - Equal to `up_to_date and not is_dirty`. Useful for\n      showing a symbol when nothing else is displayed.\n    - `ahead` - The number of commits ahead of the remote branch.\n    - `behind` - The number of commits behind the remote branch.\n    - `conflicted` - The number of conflicted items.\n    - `deleted` - The number of deleted items.\n    - `modified` - The number of modified items.\n    - `renamed` - The number of renamed items.\n    - `staged` - The number of staged items, including additions, deletions,\n      modifications, and renames.\n    - `staged_added` - The number of staged additions.\n    - `staged_deleted` - The number of staged deletions.\n    - `staged_modified` - The number of staged modifications.\n    - `staged_renamed` - The number of staged renames.\n    - `stashed` - The number of stashed items.\n    - `untracked` - The number of new items.\n\n  - `function` - A function which takes an argument `status`, which is a table\n    containing the above values, and returns a `string` to display.\n\n- `format: string` (optional) - The format string to use when `[1]` is a string.\n  The variable value is inserted at `{}`. If not provided, the variable value is displayed as is.\n\n- `hl: string` (optional) - The highlight group to use, which is one of the\n  following:\n\n  - A hex code of the form `#rrggbb`.\n  - The name of a highlight group, such as `Normal`, or `MiniIconsYellow`,\n    etc., if you use [mini.icons](https://github.com/echasnovski/mini.icons).\n    Only the foreground colour of the highlight group is used.\n\n  The second option is preferred, as it adapts to different colour schemes.\n\nIf `[1]` is a string and the value of a variable is `0` or `false` or an empty string,\nthe entire section is omitted.\n\nThe `sep` field is either a string or a table with the following fields:\n\n- `[1]: string` - the separator between sections.\n- `hl: string` (optional) - the highlight group for the separator. See above\n  for the syntax.\n\n## Options\n\nThe plugin comes with the following default options:\n\n```lua\n{\n  --- Interval to automatically run `git fetch`, in milliseconds.\n  --- Set to `false` to disable auto fetch.\n  auto_fetch_interval = 30000,\n\n  --- Timeout in milliseconds for `git status` to complete before it is killed.\n  git_status_timeout = 1000,\n\n  --- Whether to show debug messages.\n  debug = false,\n}\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabccsss%2Fnvim-gitstatus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabccsss%2Fnvim-gitstatus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabccsss%2Fnvim-gitstatus/lists"}