@@@@@@@@@@ @@@@@@ @@@ @@@ @@@@@@ @@@ @@@ @@@@@@
@@@@@@@@@@@ @@@@@@@@ @@@ @@@ @@@@@@@ @@@ @@@ @@@@@@@@
@@! @@! @@! @@! @@@ @@! !@@ !@@ @@! @@@ @@! @@@
!@! !@! !@! !@! @!@ !@! @!! !@! !@! @!@ !@! @!@
@!! !!@ @!@ @!@ !@! @!@@!@! !!@@!! @!@!@!@! @!@!@!@!
!@! ! !@! !@! !!! !!@!!! !!@!!! !!!@!!!! !!!@!!!!
!!: !!: !!: !!! !!: :!! !:! !!: !!! !!: !!!
:!: :!: :!: !:! :!: !:! !:! :!: !:! :!: !:!
::: :: ::::: :: :: ::: :::: :: :: ::: :: :::
: : : : : : ::: :: : : : : : : : :
Neovim theme for the ascended, written in lua. Code courtesy of OneDark
Made and optimized for VimKnight
Can customize colors and code styles
Install via your favourite package manager
-- Using Lazy
{
"oredaze/moksha.nvim",
priority = 1000, -- make sure to load this before all the other start plugins
config = function()
require('moksha').setup {}
-- Enable theme
require('moksha').load()
end
}
" Using Vim-Plug
Plug 'oredaze/moksha.nvim'
-- Using Packer
use 'oredaze/moksha.nvim'
-- Lua
require('moksha').load()
" Vim
colorscheme moksha
-- Lua
require('moksha').setup {
term_colors = true, -- Change terminal color as per the selected theme style
-- Change code style ---
-- Options are italic, bold, underline, none
-- You can configure multiple style with comma separated, For e.g., keywords = 'italic,bold'
code_style = {
comments = 'italic',
bool = 'italic',
chars = 'bold',
keywords = 'none',
exception = 'bold',
functions = 'italic',
macros = 'bold,italic',
strings = 'italic',
types = 'italic',
tags = 'bold',
variables = 'none'
},
-- Custom Highlights --
colors = {}, -- Override default colors
highlights = {}, -- Override highlight groups
}
Example custom colors and Highlights config
require('moksha').setup {
colors = {
bright_orange = "#ff8800", -- define a new color
green = '#00ffaa', -- redefine an existing color
},
highlights = {
["@lsp.type.keyword"] = { fg = "$green" },
["@lsp.type.property"] = {fg = '$bright_orange', bg = '#00ff00', fmt = 'bold'},
["@lsp.type.function"] = {fg = '#0000ff', sp = '$cyan', fmt = 'underline,italic'},
["@lsp.type.method"] = { link = "@function" },
-- To add language specific config
["@lsp.type.variable.go"] = { fg = "none" },
}
}
Note that TreeSitter keywords have been changed after neovim version 0.8 and onwards. Lowercase words should be used separated with '.'