{"id":13411727,"url":"https://github.com/projekt0n/github-nvim-theme","last_synced_at":"2025-05-14T05:00:38.291Z","repository":{"id":37373406,"uuid":"378818147","full_name":"projekt0n/github-nvim-theme","owner":"projekt0n","description":"GitHub's Neovim themes ","archived":false,"fork":false,"pushed_at":"2024-12-31T10:32:01.000Z","size":914,"stargazers_count":2264,"open_issues_count":24,"forks_count":108,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-05-12T03:09:53.326Z","etag":null,"topics":["colorscheme","github","lua","neovim"],"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/projekt0n.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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},"funding":{"github":["ful1e5","tmillr"]}},"created_at":"2021-06-21T05:37:41.000Z","updated_at":"2025-05-11T06:04:30.000Z","dependencies_parsed_at":"2023-12-07T05:25:02.695Z","dependency_job_id":"df79bee1-0546-4404-8390-403c8c7d159b","html_url":"https://github.com/projekt0n/github-nvim-theme","commit_stats":{"total_commits":446,"total_committers":27,"mean_commits":16.51851851851852,"dds":0.2511210762331838,"last_synced_commit":"6b461635230ccb5d0037f378fbe05a27c4ccf7cd"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projekt0n%2Fgithub-nvim-theme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projekt0n%2Fgithub-nvim-theme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projekt0n%2Fgithub-nvim-theme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/projekt0n%2Fgithub-nvim-theme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/projekt0n","download_url":"https://codeload.github.com/projekt0n/github-nvim-theme/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076330,"owners_count":22010597,"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","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":["colorscheme","github","lua","neovim"],"created_at":"2024-07-30T20:01:16.247Z","updated_at":"2025-05-14T05:00:38.223Z","avatar_url":"https://github.com/projekt0n.png","language":"Lua","readme":"![github-nvim-theme](https://github.com/projekt0n/github-nvim-theme/assets/24286590/d687ee93-43e0-46a5-a69f-a5a9d260c704)\n\n[![Neovim](https://github.com/projekt0n/github-nvim-theme/actions/workflows/neovim.yml/badge.svg)](https://github.com/projekt0n/github-nvim-theme/actions/workflows/neovim.yml)\n[![Tests](https://github.com/projekt0n/github-nvim-theme/actions/workflows/test.yml/badge.svg)](https://github.com/projekt0n/github-nvim-theme/actions/workflows/test.yml)\n\n## Notices\n\n\u003e [!WARNING]\n\u003e If you customize or configure colors, or if you upgrade the colorscheme and notice that it's not affecting the appearance, please run the `:GithubThemeCompile` command to compile the colorscheme. We are actively addressing this issue and appreciate your patience.\n\n\u003c!-- If you're interested, you can learn more about 'sponsor-spotlight' on\n https://dev.to/ful1e5/lets-give-recognition-to-those-supporting-our-work-on-github-sponsors-b00 --\u003e\n\n![shoutout-sponsors](https://sponsor-spotlight.vercel.app/sponsor?login=ful1e5)\n\nSubscribe to this [discussion](https://github.com/projekt0n/github-nvim-theme/discussions/198)\nor `:h github-theme-changelog` to receive updates on breaking changes and deprecations.\n\n-   **2023-12-02**: Reimplemented the `*_default` colorschemes, previously deprecated in the\n    [changelog-23042023](https://github.com/projekt0n/github-nvim-theme/discussions/198#discussioncomment-5700014)\n-   **2023-05-14**: This theme was major refactored with changes to Neovim support and\n    codebase, heavily inspired by [nightfox.nvim](https://github.com/EdenEast/nightfox.nvim).\n    Credit goes to [EdenEast](https://github.com/EdenEast). For older Neovim versions, use the\n    [0.0.x](https://github.com/projekt0n/github-nvim-theme/tree/0.0.x) branch.\n-   **2022-08-03**: Terminal and other themes have been moved to\n    **[github-theme-contrib](https://github.com/projekt0n/github-theme-contrib)**\n    git repository and related code have been removed from this repository.\n\n## Supported Colorschemes \u0026 Comparisons\n\n| github-nvim-theme          | github-vscode-theme            | Github Web UI                   | Primer              |\n| :------------------------- | :----------------------------- | :------------------------------ | :------------------ |\n| github_dark                | Github Dark                    | -                               | -                   |\n| github_light               | Github Light                   | -                               | -                   |\n| github_dark_dimmed         | Github Dark Dimmed             | Dark dimmed                     | dark_dimmed         |\n| github_dark_default        | Github Dark Default            | Dark default                    | dark                |\n| github_light_default       | Github Light Default           | Light default                   | light               |\n| github_dark_high_contrast  | Github Dark High Contrast      | Dark high contrast              | dark_high_contrast  |\n| github_light_high_contrast | Github Light High Contrast     | Light high contrast             | light_high_contrast |\n| github_dark_colorblind     | Github Dark Colorblind (Beta)  | Dark Protanopia \u0026 Deuteranopia  | dark_colorblind     |\n| github_light_colorblind    | Github Light Colorblind (Beta) | Light Protanopia \u0026 Deuteranopia | light_colorblind    |\n| github_dark_tritanopia     | -                              | Dark Tritanopia                 | dark_tritanopia     |\n| github_light_tritanopia    | -                              | Light Tritanopia                | light_tritanopia    |\n\n## Features\n\n-   Supports the latest Neovim\u003e=0.5 features like Treesitter and LSP\n-   Resembles GitHub's VSCode themes and follows [primer design guidelines](https://primer.style/primitives/storybook)\n-   Has Github's colorblind themes\n-   Support for multiple [plugins](#supported-plugins) and [status lines](#status-lines)\n    -   And many others should 'just work'!\n-   Minimal inactive Vim's Default statusline\n-   Vim terminal colors\n-   Darker background for sidebar-like windows\n-   Highly configurable with template overriding\n-   Most elegant lualine theme\n-   [Compile](#compile) user's configuration for fast startup times\n-   Export [Color](#color-lib) library utility\n-   [Interactive](#interactive) live config re-loading\n\n## Requirements\n\n-   Neovim \u003e= 0.8.0 (for older version use [0.0.x](https://github.com/projekt0n/github-nvim-theme/tree/0.0.x) branch)\n-   True color support\n-   Undercurl terminal support (optional)\n\n\u003e [!NOTE]\n\u003e On macOS, the default terminal (i.e. `Terminal.app`) does not support ***true color*** 24-bit RGB colors. Use either `Iterm2` or [another] terminal which supports ***true color***.\n\n## Installation\n\nInstall the theme with your preferred package manager:\n\nInstall with [vim-plug](https://github.com/junegunn/vim-plug):\n\n```vim\nPlug 'projekt0n/github-nvim-theme'\n```\n\nOr with [dein](https://github.com/Shougo/dein.vim):\n\n```vim\ncall dein#add('projekt0n/github-nvim-theme')\n```\n\nOr with [minpac](https://github.com/k-takata/minpac):\n\n```vim\ncall minpac#add('projekt0n/github-nvim-theme')\n```\n\nOr with [Packer.nvim](https://github.com/wbthomason/packer.nvim):\n\nAdd this in your `init.lua` or `plugins.lua`\n\n```lua\n-- Install without configuration\nuse ({ 'projekt0n/github-nvim-theme' })\n\n-- Or with configuration\nuse({\n  'projekt0n/github-nvim-theme',\n  config = function()\n    require('github-theme').setup({\n      -- ...\n    })\n\n    vim.cmd('colorscheme github_dark')\n  end\n})\n```\n\nOr with [lazy.nvim](https://github.com/folke/lazy.nvim):\n\nAdd this in your `init.lua` or `plugins.lua`\n\n```lua\n-- Install without configuration\n{ 'projekt0n/github-nvim-theme', name = 'github-theme' }\n\n-- Or with configuration\n{\n  'projekt0n/github-nvim-theme',\n  name = 'github-theme',\n  lazy = false, -- make sure we load this during startup if it is your main colorscheme\n  priority = 1000, -- make sure to load this before all the other start plugins\n  config = function()\n    require('github-theme').setup({\n      -- ...\n    })\n\n    vim.cmd('colorscheme github_dark')\n  end,\n}\n```\n\n## Usage\n\nSimply set the colorscheme with the builtin command `:colorscheme`\n\n```vim\ncolorscheme github_dark\n```\n\n```lua\nvim.cmd('colorscheme github_dark')\n```\n\n## Screenshots\n\n-   Font:\n    [Iosevka Nerd Font Mono](https://github.com/ryanoasis/nerd-fonts/tree/master/patched-fonts/Iosevka)\n-   Terminal:\n    [kitty](https://sw.kovidgoyal.net/kitty)\n-   Icon:\n    [nvim-web-devicons](https://github.com/kyazdani42/nvim-web-devicons)\n-   StatusLine: Default\n    ([.vimrc](https://github.com/ful1e5/dotfiles/blob/main/nvim/.config/nvim/lua/ful1e5/statusline.lua))\n-   dotfiles:\n    [ful1e5/dotfiles/nvim](https://github.com/ful1e5/dotfiles/tree/main/nvim/.config/nvim)\n\n### Github Dark\n\n```lua\nvim.cmd('colorscheme github_dark')\n```\n\n![github_dark](https://github.com/projekt0n/github-nvim-theme/assets/24286590/0e6525ef-8444-4097-855c-c2a9257a6a2f)\n\n### Github Dark Default\n\n```lua\nvim.cmd('colorscheme github_dark_default')\n```\n\n![github_dark_default](https://github.com/projekt0n/github-nvim-theme/assets/24286590/6df16271-20bc-4fd4-90df-a7477b95f3f8)\n\n### Github Dark Dimmed\n\n```lua\nvim.cmd('colorscheme github_dark_dimmed')\n```\n\n![github_dark_dimmed](https://github.com/projekt0n/github-nvim-theme/assets/24286590/1b4ac935-ddc8-4bfe-8c01-bccb8bc954f6)\n\n### Github Dark High Contrast\n\n```lua\nvim.cmd('colorscheme github_dark_high_contrast')\n```\n\n![github_dark_high_contrast](https://github.com/projekt0n/github-nvim-theme/assets/24286590/6df16271-20bc-4fd4-90df-a7477b95f3f8)\n\n### Github Dark Colorblind (Beta)\n\n```lua\nvim.cmd('colorscheme github_dark_colorblind')\n```\n\n![github_dark_colorblind](https://github.com/projekt0n/github-nvim-theme/assets/24286590/8f69c24b-13d6-4816-90a2-97578f4fd079)\n\n### Github Dark Tritanopia (Beta)\n\n```lua\nvim.cmd('colorscheme github_dark_tritanopia')\n```\n\n![github_dark_tritanopia](https://github.com/projekt0n/github-nvim-theme/assets/24286590/fb9a566c-b111-46eb-97b2-4b076e89f767)\n\n### Github Light\n\n```lua\nvim.cmd('colorscheme github_light')\n```\n\n![github_light](https://github.com/projekt0n/github-nvim-theme/assets/24286590/11c6606a-28e4-4126-b687-c84a403bbc57)\n\n### Github Light Default\n\n```lua\nvim.cmd('colorscheme github_light_default')\n```\n\n![github_light_default](https://github.com/projekt0n/github-nvim-theme/assets/24286590/1a7483e1-b008-42e0-8fab-eeb75e89a3a7)\n\n### Github Light High Contrast\n\n```lua\nvim.cmd('colorscheme github_light_high_contrast')\n```\n\n![github_light_high_contrast](https://github.com/projekt0n/github-nvim-theme/assets/24286590/1a7483e1-b008-42e0-8fab-eeb75e89a3a7)\n\n### Github Light Colorblind (Beta)\n\n```lua\nvim.cmd('colorscheme github_light_colorblind')\n```\n\n![github_light_colorblind](https://github.com/projekt0n/github-nvim-theme/assets/24286590/e634671c-9344-4a9f-b20d-420bc2f17f93)\n\n### Github Light Tritanopia (Beta)\n\n```lua\nvim.cmd('colorscheme github_light_tritanopia')\n```\n\n![github_light_tritanopia](https://github.com/projekt0n/github-nvim-theme/assets/24286590/fce194a3-fa1f-4a9d-a20b-56171aeb38e9)\n\n## Configuration\n\nThere is no need to call `setup` if you don't want to change the default options and settings.\n\n```lua\n-- Default options\nrequire('github-theme').setup({\n  options = {\n    -- Compiled file's destination location\n    compile_path = vim.fn.stdpath('cache') .. '/github-theme',\n    compile_file_suffix = '_compiled', -- Compiled file suffix\n    hide_end_of_buffer = true, -- Hide the '~' character at the end of the buffer for a cleaner look\n    hide_nc_statusline = true, -- Override the underline style for non-active statuslines\n    transparent = false,       -- Disable setting bg (make neovim's background transparent)\n    terminal_colors = true,    -- Set terminal colors (vim.g.terminal_color_*) used in `:terminal`\n    dim_inactive = false,      -- Non focused panes set to alternative background\n    module_default = true,     -- Default enable value for modules\n    styles = {                 -- Style to be applied to different syntax groups\n      comments = 'NONE',       -- Value is any valid attr-list value `:help attr-list`\n      functions = 'NONE',\n      keywords = 'NONE',\n      variables = 'NONE',\n      conditionals = 'NONE',\n      constants = 'NONE',\n      numbers = 'NONE',\n      operators = 'NONE',\n      strings = 'NONE',\n      types = 'NONE',\n    },\n    inverse = {                -- Inverse highlight for different types\n      match_paren = false,\n      visual = false,\n      search = false,\n    },\n    darken = {                 -- Darken floating windows and sidebar-like windows\n      floats = true,\n      sidebars = {\n        enable = true,\n        list = {},             -- Apply dark background to specific windows\n      },\n    },\n    modules = {                -- List of various plugins and additional options\n      -- ...\n    },\n  },\n  palettes = {},\n  specs = {},\n  groups = {},\n})\n\n-- setup must be called before loading\nvim.cmd('colorscheme github_dark')\n```\n\nIf you would like to change any of the default options above, simply specify the options that you'd like to change. Unspecified options will use their default value. For example, if you only wanted to change the styles of certain syntax items:\n\n```lua\nrequire('github-theme').setup({\n  options = {\n    styles = {\n      comments = 'italic',\n      keywords = 'bold',\n      types = 'italic,bold',\n    }\n  }\n})\n```\n\nTo see a detailed explanation of Github Theme's config settings consult either the builtin help `:help github-nvim-theme` or\n[Usage](./Usage.md).\n\n### Modules\n\nGithub Theme's modules store configuration information for various plugins and other neovim modules. To enable a module\neither set the module to `true` or if the module has additional configuration information set `enable` to `true`.\n\nBy default modules will be enabled. To change this behaviour change `options.module_default` to `false`.\n\nTo see a list of modules check, see [Usage](./Usage.md#module) or `:help` for more information.\n\n### Customize palettes and groups\n\nYou can change the color `palette` and the highlight `group` of github-theme. Here is a brief example:\n\n```lua\n-- Palettes are the base color defines of a colorscheme.\n-- You can override these palettes for each colorscheme defined by github-theme.\nlocal palettes = {\n  -- Everything defined under `all` will be applied to each style.\n  all = {\n    -- Each palette defines these colors:\n    --   black, gray, blue, green, magenta, pink, red, white, yellow, cyan\n    --\n    -- These colors have 2 shades: base, and bright\n\n    -- Passing a string sets the base\n    red = '#ff0000',\n  },\n  github_dark = {\n    -- Defining multiple shades is done by passing a table\n    red = {\n      base = '#8e1519',\n      bright = '#ee0000',\n    },\n  },\n  github_dark_dimmed = {\n    -- A palette also defines the following:\n    --   bg0, bg1, bg2, bg3, bg4, fg0, fg1, fg2, fg3, sel0, sel1, comment\n    --\n    -- These are the different foreground and background shades used by the theme.\n    -- The base bg and fg is 1, 0 is normally the dark alternative. The others are\n    -- incrementally lighter versions.\n    bg1 = '#444c56',\n\n    -- sel is different types of selection colors.\n    sel0 = '#adbac7', -- Popup bg, visual selection bg\n    sel1 = '#22272e', -- Popup sel bg, search bg\n\n    -- comment is the definition of the comment color.\n    comment = '#636e7b',\n  },\n}\n\n-- Spec's (specifications) are a mapping of palettes to logical groups that will be\n-- used by the groups. Some examples of the groups that specs map would be:\n--   - syntax groups (functions, types, keywords, ...)\n--   - diagnostic groups (error, warning, info, hints)\n--   - git groups (add, removed, changed)\n--\n-- You can override these just like palettes\nlocal specs = {\n  -- As with palettes, the values defined under `all` will be applied to every style.\n  all = {\n    syntax = {\n      -- Specs allow you to define a value using either a color or template. If the string does\n      -- start with `#` the string will be used as the path of the palette table. Defining just\n      -- a color uses the base version of that color.\n      keyword = 'magenta',\n\n      -- Adding either `.bright` will change the value\n      conditional = 'magenta.bright',\n      number = 'orange',\n    },\n    git = {\n      -- A color define can also be used\n      changed = '#ffa261',\n    },\n  },\n  github_dark = {\n    syntax = {\n      -- As with palettes, a specific style's value will be used over the `all`'s value.\n      operator = 'orange',\n    },\n  },\n}\n\n-- Groups are the highlight group definitions. The keys of this table are the name of the highlight\n-- groups that will be overridden. The value is a table with the following keys:\n--   - fg, bg, style, sp, link,\n--\n-- Just like `spec` groups support templates. This time the template is based on a spec object.\nlocal groups = {\n  -- As with specs and palettes, the values defined under `all` will be applied to every style.\n  all = {\n    -- If `link` is defined it will be applied over any other values defined\n    Whitespace = { link = 'Comment' },\n\n    -- Specs are used for the template. Specs have their palette's as a field that can be accessed\n    IncSearch = { bg = 'palette.cyan' },\n  },\n  github_dark = {\n    -- As with specs and palettes, a specific style's value will be used over the `all`'s value.\n    PmenuSel = { bg = '#73daca', fg = 'bg0' },\n  },\n}\n\nrequire('github-theme').setup({ palettes = palettes, specs = specs, groups = groups })\n\n-- setup must be called before loading\nvim.cmd('colorscheme github_dark')\n```\n\nTo find the list of syntax highlight groups defined for vim use the help `:help group-name` and `:help nvim-treesitter-highlights` for treesitter. If you would also like to see how Github Theme defines these highlight groups you can see [syntax.lua] for vim's syntax and [treesitter.lua] for treesitter. These files list out all all highlight groups and have a comment describing them. Another file to note is [editor.lua] which is the highlight groups responsible for how vim looks (background, cursorline, tabline, etc...).\n\nTo get more information check out [Usage](./Usage.md#configuration) or the help file `:help github-nvim-theme` for more detailed information.\n\n[editor.lua]: https://github.com/projekt0n/github-nvim-theme/blob/main/lua/github-theme/group/editor.lua\n[syntax.lua]: https://github.com/projekt0n/github-nvim-theme/blob/main/lua/github-theme/group/syntax.lua\n[treesitter.lua]: https://github.com/projekt0n/github-nvim-theme/blob/main/lua/github-theme/group/modules/treesitter.lua\n\n### Custom template values\n\nGitHub Theme's `palettes` and `specs` can be extended with your own values. This is useful for users that want to\ndistinguish a spec value being used for multiple group definitions. This is best understood with an example.\n\n`bg0` is used as the dark alternative background color. This is used in multiple areas (non-current file, status line,\nnormal float, etc...). If you would like to have the inactive color different then the float / statusline color you can\ndefine your own value in the `specs` table.\n\n```lua\nrequire('github-theme').setup({\n  palettes = {\n    -- Custom duskfox with black background\n    github_dark = {\n      bg1 = '#000000', -- Black background\n      bg0 = '#1d1d2b', -- Alt backgrounds (floats, statusline, ...)\n      bg3 = '#121820', -- 55% darkened from stock\n      sel0 = '#131b24', -- 55% darkened from stock\n    },\n  },\n  specs = {\n    all = {\n      inactive = 'bg0', -- Default value for other styles\n    },\n    github_dark_dimmed = {\n      inactive = '#090909', -- Slightly lighter then black background\n    },\n  },\n  groups = {\n    all = {\n      NormalNC = { fg = 'fg1', bg = 'inactive' }, -- Non-current windows\n    },\n  },\n})\n```\n\n## Api\n\nGithub Theme exposes some Api's and utility classes that let you fetch data from Github Theme.\n\n### Palettes\n\nYou can get the palettes used by each colorscheme:\n\n```lua\n-- Returns a table with each colorscheme and the palette associated with it\nlocal palettes = require('github-theme.palette').load()\n\n-- Returns the palette of the specified colorscheme\nlocal palette = require('github-theme.palette').load('github_dark_dimmed')\n\nprint(vim.inspect(palette.red))\n-- {\n--   base = '#f47067',\n--   bright = '#ff938a'\n-- }\n```\n\nSee [Usage](./Usage.md#palette) for more information on palettes.\n\n### Specs\n\nYou can get the spec used by each colorscheme:\n\n```lua\n-- Returns a table with each colorscheme and the spec associated with it\nlocal specs = require('github-theme.spec').load()\n\n-- Returns the spec of the specified colorscheme\nlocal spec = require('github-theme.spec').load('github_light')\n\nprint(vim.inspect(spec.git))\n-- {\n--   add = '#1a7f37',\n--   changed = '#9a6700',\n--   conflict = '#bc4c00',\n--   ignored = '#6e7781',\n--   removed = '#d1242f'\n-- }\n```\n\nSee [Usage](./Usage.md#spec) for more information on specs.\n\n### Color lib\n\nGithub Theme uses a color library internally to manipulate colors. You can use this library as well.\n\n```lua\nlocal palette = require('github-theme.palette').load('github_dark')\nlocal Color = require('github-theme.lib.color')\n\nlocal bg = Color.from_hex(palette.canvas.default)\nlocal red = Color.from_hex('#ff0000')\n\n-- Blend the bg with red. The blend factor is from 0 to 1\n-- with 0 being full bg and 1 being full red\nlocal red_bg = bg:blend(red, 0.2)\n\nprint(red_bg:to_css())\n-- '#592b31'\n\n-- Brighten bg by adding 10 to the value of the color as a hsv\nlocal alt_bg = bg:brighten(10)\nprint(vim.inspect(alt_bg:to_hsv()))\n-- {\n--   hue = 212.30769230769,\n--   saturation = 21.311475409836,\n--   value = 33.921568627451\n-- }\n```\n\nThere are a lot of useful functions to manipulate and work with colors in different color spaces.\n\nSee [Usage](./Usage.md#color) for more information on `Color`.\n\n## Compile\n\nGithub Theme is a highly customizable and configurable colorscheme. This does however come at the cost of complexity and execution time.\n\nGithub Theme pre-computes the result of your configuration and saves the lua bytecode in a cache to be used on next load.\nThis significantly speeds up Github theme's execution time. Changes to your configuration will be re-computed and cached automatically.\n\nBy default Github theme writes the compiled results into the system's `cache` directory. On unix this is\n`$XDG_CACHE_HOME/nvim/github-theme` and on windows this is `%localappdata%\\\\Temp\\\\nvim\\\\github-theme`.\n\nGithub Theme provides functions to work with the github-theme compiler.\n\n```vim\n:GithubThemeCompile \" Manually call github-theme compiler to create/update compiled files\n```\n\n```lua\nrequire('github-theme').compile() -- lua api version\n```\n\n## Interactive\n\nGithub Theme makes it easy to make changes to its config and see the results. For this Github Theme exposes the command:\n\n```\nGithubThemeInteractive\n```\n\nThis command will attach an autocmd to the current buffer that executes on `BufferWritePost`. The autocmd will clear Github Theme's internal state and re-source it's config from the newly saved file. It will then reset the colorscheme.\n\n## Supported Plugins\n\n-   [Builtin lsp diagnostics](https://neovim.io/doc/user/lsp.html)\n-   [ale](https://github.com/dense-analysis/ale)\n-   [circles.nvim](https://github.com/projekt0n/circles.nvim)\n-   [coc.nvim](https://github.com/neoclide/coc.nvim)\n-   [dap-ui](https://github.com/rcarriga/nvim-dap-ui)\n-   [dashboard-nvim](https://github.com/glepnir/dashboard-nvim)\n-   [diffchar.vim](https://github.com/rickhowe/diffchar.vim)\n-   [diffview.nvim](https://github.com/sindrets/diffview.nvim)\n-   [fidget.nvim](https://github.com/j-hui/fidget.nvim)\n-   [fsread.nvim](https://github.com/nullchilly/fsread.nvim)\n-   [fzf-lua](https://github.com/ibhagwan/fzf-lua)\n-   [gitsigns.nvim](https://github.com/lewis6991/gitsigns.nvim)\n-   [indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim)\n-   [lsp-trouble.nvim](https://github.com/folke/lsp-trouble.nvim)\n-   [lspsaga.nvim](https://github.com/glepnir/lspsaga.nvim)\n-   [lualine.nvim](https://github.com/nvim-lualine/lualine.nvim)\n-   [mini.nvim](https://github.com/echasnovski/mini.nvim)\n-   [neo-tree.nvim](https://github.com/nvim-neo-tree/neo-tree.nvim)\n-   [neogit](https://github.com/TimUntersberger/neogit)\n-   [nvim-bufferline.lua](https://github.com/akinsho/nvim-bufferline.lua)\n-   [nvim-cmp](https://github.com/hrsh7th/nvim-cmp)\n-   [nvim-compe](https://github.com/hrsh7th/nvim-compe)\n-   [nvim-notify](https://github.com/rcarriga/nvim-notify)\n-   [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua)\n-   [nvim-treesitter-context](https://github.com/nvim-treesitter/nvim-treesitter-context)\n-   [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter)\n-   [nvim-web-devicons](https://github.com/kyazdani42/nvim-web-devicons)\n-   [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim)\n-   [vim-airline](https://github.com/vim-airline/vim-airline)\n-   [vim-gitgutter](https://github.com/airblade/vim-gitgutter)\n-   [which-key.nvim](https://github.com/folke/which-key.nvim)\n\n## Status lines\n\n### Lualine\n\nLualine checks the value of `vim.g.colors_name` (set when using `:colorscheme` command) to determine the theme to load.\nSet your colorscheme before calling setup.\n\n```lua\nvim.cmd('colorscheme github_dark')\nrequire('lualine').setup({ ... })\n```\n\n### Airline\n\nSet your airline colorscheme with `:AirlineThemes` vim command.\n\n## Syntax highlight groups\n\nThis section will help you determine what highlight group is being applied to a piece of syntax. These methods\nshow which highlight group(s) is in use at the current screen position of the cursor (under the cursor).\n\n\u003e [!TIP]\n\u003e On Neovim v0.9.0 and later, you can use the builtin command `:Inspect`, or the Lua function `vim.show_pos()`.\n\n#### Treesitter highlighting\n\nIf treesitter is the highlighting method for the language in question you can use the command:\n`:TSHighlightCapturesUnderCursor`. This command comes from the treesitter [playground] plugin. Make\nsure you have this installed as well as [nvim-treesitter].\n\n[playground]: https://github.com/nvim-treesitter/playground#show-treesitter-and-syntax-highlight-groups-under-the-cursor\n[nvim-treesitter]: https://github.com/nvim-treesitter/nvim-treesitter\n\n## Making `undercurls` work properly in **Tmux**\n\nTo have undercurls show up and in color, add the following to your **Tmux** config file:\n\n```bash\n# Undercurl\nset -g default-terminal '${TERM}'\nset -as terminal-overrides ',*:Smulx=\\E[4::%p1%dm'  # undercurl support\nset -as terminal-overrides ',*:Setulc=\\E[58::2::%p1%{65536}%/%d::%p1%{256}%/%{255}%\u0026%d::%p1%{255}%\u0026%d%;m'  # underscore colours - needs tmux-3.0\n```\n\n## Contributing\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md)\n\n## Copying\n\nThis project is released under the terms of the MIT license.\nSee [LICENCE](./LICENSE) for more information or see\n[opensource.org](https://opensource.org/licenses/MIT)\n","funding_links":["https://github.com/sponsors/ful1e5","https://github.com/sponsors/tmillr"],"categories":["Colorscheme","Colorschemes","Lua"],"sub_categories":["Tree-sitter Supported Colorscheme","Samples","Assembly"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprojekt0n%2Fgithub-nvim-theme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprojekt0n%2Fgithub-nvim-theme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprojekt0n%2Fgithub-nvim-theme/lists"}