Git Product home page Git Product logo

everforest-nvim's Introduction

Everforest.nvim

A Lua port of the everforest colour scheme. For screenshots, please see the everforest repo.

Features

  • 100% Lua, supports Treesitter & LSP
  • Vim terminal colours
  • Lualine theme

Installation

Using lazy.nvim:

require("lazy").setup({
  "neanias/everforest-nvim",
  version = false,
  lazy = false,
  priority = 1000, -- make sure to load this before all the other start plugins
  -- Optional; default configuration will be used if setup isn't called.
  config = function()
    require("everforest").setup({
      -- Your config here
    })
  end,
})

Using packer.nvim:

use({
  "neanias/everforest-nvim",
  -- Optional; default configuration will be used if setup isn't called.
  config = function()
    require("everforest").setup()
  end,
})

Using vim-plug:

Plug 'neanias/everforest-nvim', { 'branch': 'main' }

Usage

" In VimL

" This has both light & dark modes to match your background setting.
colorscheme everforest
-- In Lua
vim.cmd([[colorscheme everforest]])

-- Alternatively
require("everforest").load()

To enable the everforest theme for LuaLine, you can specify it as such:

require("lualine").setup({
  options = {
    -- ... other configuration
    theme = "everforest", -- Can also be "auto" to detect automatically.
  }
})

LspSaga information

Please note that LspSaga uses Diagnostic{Warning,Error,Info,Hint} highlight groups to define its borders for diagnostic pop-ups, especially in diagnostic_jump_{next,prev}. As discussed in the Sonokai repo, this is not a good idea and there is no plan to change core highlights for one plugin.

To prevent the problem of squiggly lines in LspSaga diagnostic windows, please set the diagnostic.border_follow configuration option to false.

Configuration

Configuration options aren't as comprehensive as the original everforest theme yet.

This colour scheme has a light and a dark mode which are configured using the vim background setting: :set background=light or vim.o.background=dark as appropriate.

This is the default config:

require("everforest").setup({
  -- Controls the "hardness" of the background. Options are "soft", "medium" or "hard".
  -- Default is "medium".
  background = "medium",
  -- How much of the background should be transparent. Options are 0, 1 or 2.
  -- Default is 0.
  --
  -- 2 will have more UI components be transparent (e.g. status line
  -- background).
  transparent_background_level = 0,
  -- Whether italics should be used for keywords, builtin types and more.
  italics = false,
  -- Disable italic fonts for comments. Comments are in italics by default, set
  -- this to `true` to make them _not_ italic!
  disable_italic_comments = false,
})

Plugin support

See the wiki for the full list of plugins that have highlights.

Still TODO

  • Colour scheme configuration
    • background
    • transparent_background
    • dim_inactive_windows
    • disable_italic_comments
    • enable_italic
    • cursor
    • sign_column_background
    • spell_foreground
    • ui_contrast
    • show_eob
    • current_word
    • diagnostic_text_highlight
    • diagnostic_line_highlight
    • diagnostic_virtual_text
    • disable_terminal_colours
    • colours_override
  • Transparent backgrounds
  • Different colour scheme "weights"

Inspiration

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.