Giter Site home page Giter Site logo

github-nvim-theme's Introduction

github-nvim-theme

Neovim Tests

Notices

Warning

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.

shoutout-sponsors

Subscribe to this discussion or :h github-theme-changelog to receive updates on breaking changes and deprecations.

  • 2023-12-02: Reimplemented the *_default colorschemes, previously deprecated in the changelog-23042023
  • 2023-05-14: This theme was major refactored with changes to Neovim support and codebase, heavily inspired by nightfox.nvim. Credit goes to EdenEast. For older Neovim versions, use the 0.0.x branch.
  • 2022-08-03: Terminal and other themes have been moved to github-theme-contrib git repository and related code have been removed from this repository.

Supported Colorschemes & Comparisons

github-nvim-theme github-vscode-theme Github Web UI Primer
github_dark Github Dark - -
github_light Github Light - -
github_dark_dimmed Github Dark Dimmed Dark dimmed dark_dimmed
github_dark_default Github Dark Default Dark default dark
github_light_default Github Light Default Light default light
github_dark_high_contrast Github Dark High Contrast Dark high contrast dark_high_contrast
github_light_high_contrast Github Light High Contrast Light high contrast light_high_contrast
github_dark_colorblind Github Dark Colorblind (Beta) Dark Protanopia & Deuteranopia dark_colorblind
github_light_colorblind Github Light Colorblind (Beta) Light Protanopia & Deuteranopia light_colorblind
github_dark_tritanopia - Dark Tritanopia dark_tritanopia
github_light_tritanopia - Light Tritanopia light_tritanopia

Features

  • Supports the latest Neovim>=0.5 features like Treesitter and LSP
  • Resembles GitHub's VSCode themes and follows primer design guidelines
  • Has Github's colorblind themes
  • Support for multiple plugins and status lines
    • And many others should 'just work'!
  • Minimal inactive Vim's Default statusline
  • Vim terminal colors
  • Darker background for sidebar-like windows
  • Highly configurable with template overriding
  • Most elegant lualine theme
  • Compile user's configuration for fast startup times
  • Export Color library utility
  • Interactive live config re-loading

Requirements

  • Neovim >= 0.8.0 (for older version use 0.0.x branch)
  • True color support
  • Undercurl terminal support (optional)

Note

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.

Installation

Install the theme with your preferred package manager:

Install with vim-plug:

Plug 'projekt0n/github-nvim-theme'

Or with dein:

call dein#add('projekt0n/github-nvim-theme')

Or with minpac:

call minpac#add('projekt0n/github-nvim-theme')

Or with Packer.nvim:

Add this in your init.lua or plugins.lua

-- Install without configuration
use ({ 'projekt0n/github-nvim-theme' })

-- Or with configuration
use({
  'projekt0n/github-nvim-theme',
  config = function()
    require('github-theme').setup({
      -- ...
    })

    vim.cmd('colorscheme github_dark')
  end
})

Or with lazy.nvim:

Add this in your init.lua or plugins.lua

-- Install without configuration
{ 'projekt0n/github-nvim-theme' }

-- Or with configuration
{
  'projekt0n/github-nvim-theme',
  lazy = false, -- make sure we load this during startup if it is your main colorscheme
  priority = 1000, -- make sure to load this before all the other start plugins
  config = function()
    require('github-theme').setup({
      -- ...
    })

    vim.cmd('colorscheme github_dark')
  end,
}

Usage

Simply set the colorscheme with the builtin command :colorscheme

colorscheme github_dark
vim.cmd('colorscheme github_dark')

Screenshots

Github Dark

vim.cmd('colorscheme github_dark')

github_dark

Github Dark Default

vim.cmd('colorscheme github_dark_default')

github_dark_default

Github Dark Dimmed

vim.cmd('colorscheme github_dark_dimmed')

github_dark_dimmed

Github Dark High Contrast

vim.cmd('colorscheme github_dark_high_contrast')

github_dark_high_contrast

Github Dark Colorblind (Beta)

vim.cmd('colorscheme github_dark_colorblind')

github_dark_colorblind

Github Dark Tritanopia (Beta)

vim.cmd('colorscheme github_dark_tritanopia')

github_dark_tritanopia

Github Light

vim.cmd('colorscheme github_light')

github_light

Github Light Default

vim.cmd('colorscheme github_light_default')

github_light_default

Github Light High Contrast

vim.cmd('colorscheme github_light_high_contrast')

github_light_high_contrast

Github Light Colorblind (Beta)

vim.cmd('colorscheme github_light_colorblind')

github_light_colorblind

Github Light Tritanopia (Beta)

vim.cmd('colorscheme github_light_tritanopia')

github_light_tritanopia

Configuration

There is no need to call setup if you don't want to change the default options and settings.

-- Default options
require('github-theme').setup({
  options = {
    -- Compiled file's destination location
    compile_path = vim.fn.stdpath('cache') .. '/github-theme',
    compile_file_suffix = '_compiled', -- Compiled file suffix
    hide_end_of_buffer = true, -- Hide the '~' character at the end of the buffer for a cleaner look
    hide_nc_statusline = true, -- Override the underline style for non-active statuslines
    transparent = false,       -- Disable setting bg (make neovim's background transparent)
    terminal_colors = true,    -- Set terminal colors (vim.g.terminal_color_*) used in `:terminal`
    dim_inactive = false,      -- Non focused panes set to alternative background
    module_default = true,     -- Default enable value for modules
    styles = {                 -- Style to be applied to different syntax groups
      comments = 'NONE',       -- Value is any valid attr-list value `:help attr-list`
      functions = 'NONE',
      keywords = 'NONE',
      variables = 'NONE',
      conditionals = 'NONE',
      constants = 'NONE',
      numbers = 'NONE',
      operators = 'NONE',
      strings = 'NONE',
      types = 'NONE',
    },
    inverse = {                -- Inverse highlight for different types
      match_paren = false,
      visual = false,
      search = false,
    },
    darken = {                 -- Darken floating windows and sidebar-like windows
      floats = true,
      sidebars = {
        enable = true,
        list = {},             -- Apply dark background to specific windows
      },
    },
    modules = {                -- List of various plugins and additional options
      -- ...
    },
  },
  palettes = {},
  specs = {},
  groups = {},
})

-- setup must be called before loading
vim.cmd('colorscheme github_dark')

If 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:

require('github-theme').setup({
  options = {
    styles = {
      comments = 'italic',
      keywords = 'bold',
      types = 'italic,bold',
    }
  }
})

To see a detailed explanation of Github Theme's config settings consult either the builtin help :help github-nvim-theme or Usage.

Modules

Github Theme's modules store configuration information for various plugins and other neovim modules. To enable a module either set the module to true or if the module has additional configuration information set enable to true.

By default modules will be enabled. To change this behaviour change options.module_default to false.

To see a list of modules check, see Usage or :help for more information.

Customize palettes and groups

You can change the color palette and the highlight group of github-theme. Here is a brief example:

-- Palettes are the base color defines of a colorscheme.
-- You can override these palettes for each colorscheme defined by github-theme.
local palettes = {
  -- Everything defined under `all` will be applied to each style.
  all = {
    -- Each palette defines these colors:
    --   black, gray, blue, green, magenta, pink, red, white, yellow, cyan
    --
    -- These colors have 2 shades: base, and bright

    -- Passing a string sets the base
    red = '#ff0000',
  },
  github_dark = {
    -- Defining multiple shades is done by passing a table
    red = {
      base = '#8e1519',
      bright = '#ee0000',
    },
  },
  github_dark_dimmed = {
    -- A palette also defines the following:
    --   bg0, bg1, bg2, bg3, bg4, fg0, fg1, fg2, fg3, sel0, sel1, comment
    --
    -- These are the different foreground and background shades used by the theme.
    -- The base bg and fg is 1, 0 is normally the dark alternative. The others are
    -- incrementally lighter versions.
    bg1 = '#444c56',

    -- sel is different types of selection colors.
    sel0 = '#adbac7', -- Popup bg, visual selection bg
    sel1 = '#22272e', -- Popup sel bg, search bg

    -- comment is the definition of the comment color.
    comment = '#636e7b',
  },
}

-- Spec's (specifications) are a mapping of palettes to logical groups that will be
-- used by the groups. Some examples of the groups that specs map would be:
--   - syntax groups (functions, types, keywords, ...)
--   - diagnostic groups (error, warning, info, hints)
--   - git groups (add, removed, changed)
--
-- You can override these just like palettes
local specs = {
  -- As with palettes, the values defined under `all` will be applied to every style.
  all = {
    syntax = {
      -- Specs allow you to define a value using either a color or template. If the string does
      -- start with `#` the string will be used as the path of the palette table. Defining just
      -- a color uses the base version of that color.
      keyword = 'magenta',

      -- Adding either `.bright` will change the value
      conditional = 'magenta.bright',
      number = 'orange',
    },
    git = {
      -- A color define can also be used
      changed = '#ffa261',
    },
  },
  github_dark = {
    syntax = {
      -- As with palettes, a specific style's value will be used over the `all`'s value.
      operator = 'orange',
    },
  },
}

-- Groups are the highlight group definitions. The keys of this table are the name of the highlight
-- groups that will be overridden. The value is a table with the following keys:
--   - fg, bg, style, sp, link,
--
-- Just like `spec` groups support templates. This time the template is based on a spec object.
local groups = {
  -- As with specs and palettes, the values defined under `all` will be applied to every style.
  all = {
    -- If `link` is defined it will be applied over any other values defined
    Whitespace = { link = 'Comment' },

    -- Specs are used for the template. Specs have their palette's as a field that can be accessed
    IncSearch = { bg = 'palette.cyan' },
  },
  github_dark = {
    -- As with specs and palettes, a specific style's value will be used over the `all`'s value.
    PmenuSel = { bg = '#73daca', fg = 'bg0' },
  },
}

require('github-theme').setup({ palettes = palettes, specs = specs, groups = groups })

-- setup must be called before loading
vim.cmd('colorscheme github_dark')

To 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...).

To get more information check out Usage or the help file :help github-nvim-theme for more detailed information.

Custom template values

GitHub Theme's palettes and specs can be extended with your own values. This is useful for users that want to distinguish a spec value being used for multiple group definitions. This is best understood with an example.

bg0 is used as the dark alternative background color. This is used in multiple areas (non-current file, status line, normal float, etc...). If you would like to have the inactive color different then the float / statusline color you can define your own value in the specs table.

require('github-theme').setup({
  palettes = {
    -- Custom duskfox with black background
    github_dark = {
      bg1 = '#000000', -- Black background
      bg0 = '#1d1d2b', -- Alt backgrounds (floats, statusline, ...)
      bg3 = '#121820', -- 55% darkened from stock
      sel0 = '#131b24', -- 55% darkened from stock
    },
  },
  specs = {
    all = {
      inactive = 'bg0', -- Default value for other styles
    },
    github_dark_dimmed = {
      inactive = '#090909', -- Slightly lighter then black background
    },
  },
  groups = {
    all = {
      NormalNC = { fg = 'fg1', bg = 'inactive' }, -- Non-current windows
    },
  },
})

Api

Github Theme exposes some Api's and utility classes that let you fetch data from Github Theme.

Palettes

You can get the palettes used by each colorscheme:

-- Returns a table with each colorscheme and the palette associated with it
local palettes = require('github-theme.palette').load()

-- Returns the palette of the specified colorscheme
local palette = require('github-theme.palette').load('github_dark_dimmed')

print(vim.inspect(palette.red))
-- {
--   base = '#f47067',
--   bright = '#ff938a'
-- }

See Usage for more information on palettes.

Specs

You can get the spec used by each colorscheme:

-- Returns a table with each colorscheme and the spec associated with it
local specs = require('github-theme.spec').load()

-- Returns the spec of the specified colorscheme
local spec = require('github-theme.spec').load('github_light')

print(vim.inspect(spec.git))
-- {
--   add = '#1a7f37',
--   changed = '#9a6700',
--   conflict = '#bc4c00',
--   ignored = '#6e7781',
--   removed = '#d1242f'
-- }

See Usage for more information on specs.

Color lib

Github Theme uses a color library internally to manipulate colors. You can use this library as well.

local palette = require('github-theme.palette').load('github_dark')
local Color = require('github-theme.lib.color')

local bg = Color.from_hex(palette.canvas.default)
local red = Color.from_hex('#ff0000')

-- Blend the bg with red. The blend factor is from 0 to 1
-- with 0 being full bg and 1 being full red
local red_bg = bg:blend(red, 0.2)

print(red_bg:to_css())
-- '#592b31'

-- Brighten bg by adding 10 to the value of the color as a hsv
local alt_bg = bg:brighten(10)
print(vim.inspect(alt_bg:to_hsv()))
-- {
--   hue = 212.30769230769,
--   saturation = 21.311475409836,
--   value = 33.921568627451
-- }

There are a lot of useful functions to manipulate and work with colors in different color spaces.

See Usage for more information on Color.

Compile

Github Theme is a highly customizable and configurable colorscheme. This does however come at the cost of complexity and execution time.

Github Theme pre-computes the result of your configuration and saves the lua bytecode in a cache to be used on next load. This significantly speeds up Github theme's execution time. Changes to your configuration will be re-computed and cached automatically.

By default Github theme writes the compiled results into the system's cache directory. On unix this is $XDG_CACHE_HOME/nvim/github-theme and on windows this is %localappdata%\\Temp\\nvim\\github-theme.

Github Theme provides functions to work with the github-theme compiler.

:GithubThemeCompile " Manually call github-theme compiler to create/update compiled files
require('github-theme').compile() -- lua api version

Interactive

Github Theme makes it easy to make changes to its config and see the results. For this Github Theme exposes the command:

GithubThemeInteractive

This 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.

Supported Plugins

Status lines

Lualine

Lualine checks the value of vim.g.colors_name (set when using :colorscheme command) to determine the theme to load. Set your colorscheme before calling setup.

vim.cmd('colorscheme github_dark')
require('lualine').setup({ ... })

Airline

Set your airline colorscheme with :AirlineThemes vim command.

Syntax highlight groups

This section will help you determine what highlight group is being applied to a piece of syntax. These methods show which highlight group(s) is in use at the current screen position of the cursor (under the cursor).

Tip

On Neovim v0.9.0 and later, you can use the builtin command :Inspect, or the Lua function vim.show_pos().

Treesitter highlighting

If treesitter is the highlighting method for the language in question you can use the command: :TSHighlightCapturesUnderCursor. This command comes from the treesitter playground plugin. Make sure you have this installed as well as nvim-treesitter.

Making undercurls work properly in Tmux

To have undercurls show up and in color, add the following to your Tmux config file:

# Undercurl
set -g default-terminal '${TERM}'
set -as terminal-overrides ',*:Smulx=\E[4::%p1%dm'  # undercurl support
set -as terminal-overrides ',*:Setulc=\E[58::2::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m'  # underscore colours - needs tmux-3.0

Contributing

See CONTRIBUTING.md

Copying

This project is released under the terms of the MIT license. See LICENCE for more information or see opensource.org

github-nvim-theme's People

Contributors

aap01 avatar abenz1267 avatar adrian5 avatar bhushan avatar cmoog avatar dadyarri avatar echasnovski avatar fitrh avatar ful1e5 avatar jantari avatar luisdavim avatar luisiacc avatar metalelf0 avatar modprog avatar mutecipher avatar notseanray avatar nullchilly avatar rstacruz avatar shikhar-saxena avatar tisnku avatar tmillr avatar xiyaowong avatar yamatsum avatar zarifpour avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

github-nvim-theme's Issues

Cannot find color shcme 'github_dark'

I installed this theme with Vim Plug. It appears to be installed...

ls ~/.local/share/nvim/plugged/github-nvim-theme/
CHANGELOG.md  colors  extras  LICENSE  lua  Makefile  queries  README.md

This is my config to turn it on:

" Example config in VimScript
let g:github_function_style = "italic"
let g:github_sidebars = ["qf", "vista_kind", "terminal", "packer"]

" Change the "hint" color to the "orange" color, and make the "error" color bright red
let g:github_colors = [hint = "orange", error = "#ff0000"]

" Load the colorscheme
colorscheme github_dark

Yet, when I run wim, the following error appears.

Error detected while processing /home/miki/.config/nvim/theme:
line    6:
E121: Undefined variable: hint
line    9:
E185: Cannot find color scheme 'github_dark'

Why is my colorscheme not looking like the screenshots?

Hey, I just installed this colorscheme, which looks really good but It don't looks the same when I installed it. Here is my config.

    use {
        'projekt0n/github-nvim-theme',
        config = function()
            require("github-theme").setup({
              themeStyle = "dark",
            })
        end
    }
vim.o.termguicolors = true
vim.o.background = 'dark'

colorschemenotlookingok

Light theme not working

Steps to reproduce

  1. Install this plugin
  2. Paste the following in init.lua
require('github-theme').setup({
  theme_style = 'light_default',
})

Expect result

Neovim colorised with Github Light theme.

Actual result

Neovim colorised with Github Dark theme.

Git Bisect result

I found the culprit commit, 41f844a.

Setup Instructions

The setup instructions is so complicated, can't you make a clear precise instructions to follow

feature request: high contrast theme

Hi,

perfect, I love it (tmux-kitty-neovim user)!

There is just one request or idea I'd like to raise: I'm using "dark" theme with transparency. It would be very usefull for me to have a "high contrast" theme for work on daytime as I guess that colors might be too dimmed under "sunny" conditions.

TabLineSel is barely readable

The readability can be improved tremendously if you assign c.pmenu.select instead of c.fg ...

diff --git a/lua/github-theme/theme.lua b/lua/github-theme/theme.lua
index f3f12c2..74c0a9f 100644
--- a/lua/github-theme/theme.lua
+++ b/lua/github-theme/theme.lua
@@ -68,7 +68,7 @@ function M.setup(config)
     StatusLineNC = {fg = c.fg, bg = c.bg}, -- status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window.
     TabLine = {bg = c.bg, fg = c.fg}, -- tab pages line, not active tab page label
     TabLineFill = {bg = c.bg2}, -- tab pages line, where there are no labels
-    TabLineSel = {fg = c.fg, bg = c.blue}, -- tab pages line, active tab page label
+    TabLineSel = {fg = c.pmenu.select, bg = c.blue}, -- tab pages line, active tab page label
     Title = {fg = c.syntax.variable, style = "bold"}, -- titles for output from ":set all", ":autocmd" etc.
     Visual = {bg = c.bg_visual_selection}, -- Visual mode selection
     VisualNOS = {bg = c.bg_visual_selection}, -- Visual mode selection when vim is "Not Owning the Selection".

line number color has changed recently, only for transparent background

Hi,

I see the color of line numbers has changed from gray to white, especially in transparent background.

It seems okay in non-transparent configuration.

Here are my screenshots and their mimimal init.lua file contents:

init_lua

It was gray back in v0.0.2 like this:

init_lua_v002

Is this intentional, or is there anything I missed?

LSPReference background

The LspReferenceRead/Write backround for the dark theme is

hi LspReferenceRead                                                                                                                                                               
LspReferenceRead xxx guibg=#e1e4e8 

I would say it is very hard to read the character with #e1e4e8 as background. Is this on purpose? or #e1e4e8 is supposed to be light colorscheme?

Folds are too bright in dark

Using it like this:

lua require('github-theme').setup({ transparent = true })

and folds look like this:
image

with transparent = false

image

Error "E492: Not an editor command" in config file

Hey, I'm trying to use the dimmed theme on nvim 0.4.4, but when I am ready to use it (init.vim setup) my config file throws the error said in the title:
image
This is my config file, copied from the readme
image
Any help would be greatly appreciated

Lua error when using configuration options

On init.vim after installing the plugin:

lua << EOF
require('github-theme').setup({
  themeStyle = "dimmed",
})
EOF

returns an error

E5108: Error executing lua ...im/plugged/github-nvim-theme/lua/github-theme/config.lua:33: attempt to
concatenate global 'vim' (a table value)

Using a minimal neovim config also returns a similar error.


For the context, this works fine

lua << EOF
require('github-theme').setup({})
EOF

doesn't look like syntax theme is applying?

Hi, great theme. Looks amazing.

However it doesn't look like it's applying the theme to the syntax. I'm using vim-polyglot but I've tried removing/disabling that and there is no change.

image

my theme is configured as follows:

local g = vim.g
local api = vim.api

vim.opt.termguicolors = true
vim.opt.syntax = 'on'

require('github-theme').setup({
  themeStyle = 'dark',
  sidebars = {'packer', 'NvimTree', 'term', 'terminal'},
})

vim.cmd([[
  filetype plugin on
  colorscheme github
  highlight TrailingWhitespace ctermbg=red guibg=red
  match TrailingWhitespace /\s\+$/
]])

Default statusline color

Hi,

thanks for the colorscheme, looks great.

Would you consider changing the default statusline background to something that has a bit less contrast, or providing an option to change it?

This is how it looks now:
statusline_default

I have custom statusline without any plugins, and currently my workaround is this:

vim.cmd[[augroup vimrc_colorscheme]]
  vim.cmd[[autocmd ColorScheme * lua kris.colorscheme.setup_github()]]
vim.cmd[[augroup END]]

function _G.kris.colorscheme.setup_github()
  local colors = require('github-theme.colors').setup()
  vim.cmd(string.format('hi StatusLine guibg=%s', colors.white))
end

require("github-theme").setup({
  themeStyle = 'light',
})

And now it looks like this:
statusline_updated

Also, i'm not able to override dark color this way, for which I'll open up a separate issue.

colors.lua: `bg` and `bg2` are swapped?

I've installed the light variant of this theme in both kitty and nvim:
image

However, I would expect both kitty and nvim to have the same background:
image

To achieve the desired result I had to swap bg and bg2 in colors.lua. Is this a mistake?

Packer cannot find the theme

Using Packer to install the theme gives the following error:

Invalid configuration /home/karsteski/.config/lvim/config.lua
Vim(luafile):E5113: Error while calling lua chunk: /home/karsteski/.config/lvim/config.lua:118: module 'github-theme' not found
:
^Ino field package.preload['github-theme']No cache entry

Not sure what's happening there :/

Error on startup: cannot find color scheme 'github'

Nvim shows this error on startup when this theme is set as the default. Works fine after the error is suppressed.

Error detected while processing C:\tools\neovim\Neovim\share\nvim\runtime\syntax\synload.vim: line 19: E185: Cannot find color scheme 'github'

Seems like the global theme name set in L203 util.lua needs to be the correct name of the theme variant? Managed to fix it by concatenating the theme_style string from the theme object.

Startup Intro message is not shown

Expected

The colorscheme does not erase the neovim intro message on startup

Actual

The startup mesage appears for a split second and is then vanished

Screen.Recording.2021-10-26.at.10.43.12.AM.mov

Platform
MacOS Big Sur - Alacritty Terminal - Neovim nightly

Transparent + LuaLine looks strange

With the following config the delimiters look strange (wrong color/ wrong background)

require('lualine').setup {
  options = {
    theme = 'github',
    }
  }

require("github-theme").setup({
  transparent = true
})

image

cursorline and cursorcolumn not displayed

Using :set cursorline or :set cursorcolumn in combination with this project results in the cursorline or cursorcolumn not being displayed in the light color schemes. Thanks.

inactive statusline same color as background

image

Not sure which change it was that was merged late last night/this morning, but inactive statusline's have the same color as the background, making it very hard to tell what's going on.

Quickfix highlight unreadable

require('github-theme').setup({
  theme_style = 'dark_default',
});

Using this min config, the active element in quickfix is hard to read.

image

`bg_search` & `fg_search` colors can't override

After the latest updates my colors override options is not working anymore. It was working correctly yesterday.

require('github-theme').setup({
    theme_style = 'dimmed',
    colors = {
        bg_search = '#dae84d',
        fg_search = '#000000',
    }
})

Stopped working after doing a :PackerSync. Also noticed some other options were no longer being respected.

How it looks after :PackerSync:

image

Support colors for buffers and tabs component in lualine

In @shadmansaleh's fork of lualine.nvim: https://github.com/shadmansaleh/lualine.nvim

There is support for buffer and tab line (https://github.com/shadmansaleh/lualine.nvim/pull/42). However with this theme both active and inactive buffers and tabs have the same background color. It ends up looking like this:

There's no separators between the active buffers and inactive buffers (i.e. between buffers.lua and tabs.lua).

This is what users would expect it to look like:

Here's what is looks like in another theme:

Illuminate highlights seem off

Hi, I'm trying out your theme, and illuminate highlights look a bit off to me.

Here's how I see them:

Schermata 2021-07-09 alle 14 49 45

Also, trying to set different highlights with the code above right at the end of my init.lua does nothing. Am I doing anything wrong?

Thanks for the theme, it's really great!

How to change the search highlight color

Hello good day,

Previously I'm using base16-vim colortheme, and using the search highlight color of #dae84d.

How I can change the search highlight color to #dae84d?

Thanks

Assigning `bg_sidebar` to `bg_folded` doesn't make the folds{,column} transparent with transparency enabled

I'm assigning different colors to folds as you suggested in issue #26 and it works so well :)

There is one thing though which I don't understand:
Using

colors = {fg_folded = colors.fg, bg_folded = colors.bg_sidebar}

should give me a transparent fold{,column} background if transparent is set to true if I understand the configuration in colors.lua correctly? It is not the case in my configuration ...
Here is the content of nvim_theme.lua

vim.o.background = 'dark'

if vim.o.background == 'dark' then
  local themeStyle = 'dimmed'
  local colors = require('github-theme.colors').setup({themeStyle = themeStyle})
  require('github-theme').setup({
    colors = {fg_folded = colors.fg, bg_folded = colors.bg_sidebar},
    sidebars = {'netrw', 'packer', 'qf', 'terminal'},
    themeStyle = themeStyle,
    transparent = true,
  })
else
  local themeStyle = 'light'
  local colors = require('github-theme.colors').setup({themeStyle = themeStyle})
  require('github-theme').setup({
    colors = {fg_folded = colors.fg, bg_folded = colors.bg_sidebar},
    sidebars = {'netrw', 'packer', 'qf', 'terminal'},
    themeStyle = themeStyle,
    transparent = true,
  })
end

I'm sure I'm doing something wrong but I couldn't find the solution yet ...

[ Question | Suggestion ] Custom Colors

  • This is how I want my syntax highlight to look. (VSCode)
    Screenshot:2021-07-22_000

  • This is how it looks. (Nvim)
    Screenshot:2021-07-22

  • This is how it looks on Github.com
    Screenshot:2021-07-22_001

Can you guide me how I can get desired results. I am interested in knowing what colors I need to change to get this and I'm aware that you're using tree-sitter, so if you could help me understand how I can leverage that I could potentially submit a PR addressing these issues.

Error: Config themeStyle does not exist

Hi

When I try to run Neovim with this Github-Theme in macOS (iTerm2), I get the following Error:

Error detected while processing /Users/fabian/.config/nvim/init.lua:
E5113: Error while calling lua chunk: ...cker/start/github-nvim-theme/lua/github-theme/config.lua:47: projekt0n/github-nvim-theme: Config themeStyle does not exist

No Problems with the same config on Linux. Does anyone know, why this happens?

best regards
Fabian

GitHub dark is not dark like the vscode theme

It could be me but I feel like the vscode theme is darker than this ? The dimmed vscode theme is identical to this one so ๐Ÿ‘๐Ÿพ. Can we get darker "dark" colours ?

Minor problems & Plugin Support [WIP]

Problems

  • folds are too bright in dark mode (almost white)
  • in Neogit the grey background is a bit too bright
  • the window separators are hard to see
  • nvim-bufferline with slant separator_style: the slant gets drawn in "white" though I think it should be "grey" as the remaining space in the bufferline.
  • Reddit post

Plugin Support

TODO:

  • Init
  • Dynamic theme for lualine
  • Ask for using github-vscode-theme branding logo (primer/github-vscode-theme#186)
  • Support highlight for almost every language.
  • Previews & Customization docs inside README.md
  • Better color grouping inside colors.lua
  • Follow Primer color system
  • Change NvimTreeIcon & DevIcons colors
  • Add Github Light Classic & Github Dark Classic styles
  • Update Screenshots

Airline theme

Hi!

Love the theme! I'm a vim-airline user, and I was hoping for a nice airline theme to go with this one.
I've tried onedark, since that was an inspiration for this one, but the colours aren't quite right.

Also, may I suggest that the colour for normal mode be blue? That seems to be the dominant colour from what I've seen of the theme.

Not sure if I need to raise an issue in the vim-airline-themes repo, or if here will do.

Thanks!

Cannot change dark version colors via ColorScheme autocmd

Hi,

I'm not able to change the colorscheme colors via ColorScheme autocmd when themeStyle is dark. For some strange reason light version works. I have this:

vim.cmd[[augroup vimrc_colorscheme]]
  vim.cmd[[autocmd ColorScheme * lua kris.colorscheme.setup_github()]]
vim.cmd[[augroup END]]

function _G.kris.colorscheme.setup_github()
  local colors = require('github-theme.colors').setup()
  vim.cmd(string.format('hi StatusLine guibg=%s', colors.white))
end

require("github-theme").setup({
  themeStyle = 'light',
})

But when I change themeStyle to dark, autocmd is never triggered:

require("github-theme").setup({
  themeStyle = 'dark',
})

Related issue for statusline: #11

Lualine colors look off

Hi,

Firstly, great theme - thanks for putting it together!

I'm struggling to get Lualine & the theme to play nicely though, for some reason. The status bar color just won't apply, even with a completely stripped back config:

Screenshot 2021-10-05 at 13 42 08

This is on NVIM v0.6.0-dev+1876-gb60e6448e, kitty 0.23.1

Lualine light theme doesn't work anymore

The lualine bar currently looks like this using light mode:
image
My config:

        -- Status line
	use {
		'hoob3rt/lualine.nvim',
		config = function()
			require'lualine'.setup{options={theme = 'github'}}
		end
	}
        -- Theme
	use {
		'projekt0n/github-nvim-theme',
		config = function()
			require('github-theme').setup({
				themeStyle = "light",
			})
		end
	}

[question] How to automatically switch themes?

For kitty, I have this in my config:

allow_remote_control yes
include ./theme.conf

and I use a custom script (https://github.com/MaxVerevkin/day-night) that automatically "symlinks" theme.conf to an appropriate theme based on the time of day. To apply the theme to all terminals "on the fly", this script also runs kitty @ set-colors --all --configured ~/.config/kitty/theme.conf.

My question is - can I do something similar with neovim? Perhaps this is a wrong place to ask, but anyway.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.