Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/killitar/obscure.nvim
A dark Neovim theme written in Lua, with support for LSP, Tree-sitter and lots of plugins.
https://github.com/killitar/obscure.nvim
colorscheme neovim neovim-colorscheme neovim-lua neovim-lua-plugin neovim-plugin neovim-theme neovim-theme-dark vim vim-colorscheme
Last synced: 28 days ago
JSON representation
A dark Neovim theme written in Lua, with support for LSP, Tree-sitter and lots of plugins.
- Host: GitHub
- URL: https://github.com/killitar/obscure.nvim
- Owner: killitar
- License: apache-2.0
- Created: 2024-07-21T11:56:28.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-09-24T21:06:42.000Z (about 1 month ago)
- Last Synced: 2024-09-28T15:21:25.152Z (about 1 month ago)
- Topics: colorscheme, neovim, neovim-colorscheme, neovim-lua, neovim-lua-plugin, neovim-plugin, neovim-theme, neovim-theme-dark, vim, vim-colorscheme
- Language: Lua
- Homepage:
- Size: 876 KB
- Stars: 31
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-neovim - killitar/obscure.nvim - A pastel dark colorscheme inspired by the palette Mellow. Support Tree-sitter, LSP _(including semantic tokens)_ and lots of plugins. (Colorscheme / Tree-sitter Supported Colorscheme)
README
# Obscure
A dark [Neovim](https://github.com/neovim/neovim) theme written in [Lua](https://www.lua.org), inspired by the pastel palette [mellow.nvim](https://github.com/mellow-theme/mellow.nvim) that I used for a long time.
## ๐ Gallery
### Lua
![Screenshot of obscure theme Lua](https://raw.githubusercontent.com/killitar/obscure.nvim/main/.github/images/lua.png)
### TypeScript
![Screenshot of obscure theme TypeScript](https://raw.githubusercontent.com/killitar/obscure.nvim/main/.github/images/ts.png)
### Astro
![Screenshot of obscure theme Astro](https://raw.githubusercontent.com/killitar/obscure.nvim/main/.github/images/astro.png)
### Markdown
![Screenshot of obscure theme Markdown](https://raw.githubusercontent.com/killitar/obscure.nvim/main/.github/images/markdown.png)
## โจ Features
- Supports the latest [Neovim](https://github.com/neovim/neovim) [0.9.0](https://github.com/neovim/neovim/releases/tag/v0.9.0) features.
- Terminal colors
- Supports all major plugins## ๐ฆ Requirements
- [Neovim](https://github.com/neovim/neovim) >= [0.9.0](https://github.com/neovim/neovim/releases/tag/v0.9.0)
## โก๏ธ Installation
Install the theme using your preferred package manager, e.g. [lazy](https://github.com/folke/lazy.nvim):
```lua
{
"killitar/obscure.nvim",
lazy = false,
priority = 1000,
opts = {}
}
```## ๐ Usage
### Vim Script
```vim
colorscheme obscure
```### Lua
```lua
vim.cmd[[colorscheme obscure]]
```## โ๏ธ Configuration
> [!IMPORTANT]
> Set the configuration **BEFORE** loading the color scheme with `colorscheme obscure`.Default Options
```lua
{
transparent = false,
terminal_colors = true,
dim_inactive = true,
styles = {
keywords = { italic = true },
identifiers = {},
functions = {},
variables = {},
booleans = {},
comments = { italic = true },
},--- You can override specific highlights to use other groups or a hex color
--- function will be called with a Highlights and ColorScheme table
on_highlights = function(highlights, colors) end,plugins = {
-- enable all plugins when not using lazy.nvim
-- set to false to manually enable/disable plugins
all = package.loaded.lazy == nil,
-- uses your plugin manager to automatically enable needed plugins
-- currently only lazy.nvim is supported
auto = true,
-- add any plugins here that you want to enable
-- for all possible plugins, see:
-- * https://github.com/killitar/obscure.nvim/tree/main/lua/obscure/groups
-- flash = true,
},
}```
## ๐ช Overriding Colors & Highlight Groups
To configure a setting, you should pass that setting with the changed value following the structure of the default configuration.
```lua
require("obscure").setup({
styles = {
booleans = { italic = true, bold = true },
},
on_highlights = function(hl,c)
hl.Comment = { fg = "#ffffff" }
-- Or
hl.Comment = { fg = c.orange }
end
})
```## ๐งต Extra
You can easily use the color palette for other plugins inside your [Neovim](https://github.com/neovim/neovim) configuration:
```lua
local colors = require("obscure.palettes").get_palette("obscure") -- pass in any of the config options as explained aboveplugin.bg = colors.yellow
```## ๐ Acknowledgements
- [Tokyo Night](https://github.com/folke/tokyonight.nvim)
- [Mellow](https://github.com/mellow-theme/mellow.nvim)