Skip to content

abreujp/arcanum-elixir.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

10 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

arcanum-elixir.nvim

A mystical purple colorscheme inspired by Elixir's magic for both light and dark mode coding

๐ŸŒ… Light Theme โ€ข ๐ŸŒ™ Dark Theme

Optimized for comfortable development in any lighting condition

Made with Lua

๐Ÿ“ธ Preview

๐ŸŒ… Light Theme

ArcanumElixir.nvim Light Theme

๐ŸŒ™ Dark Theme

ArcanumElixir.nvim Dark Theme

ArcanumElixir.nvim in action - mystical purple tones creating the perfect magical coding atmosphere in any lighting condition

๐Ÿ”ฎ About ArcanumElixir

arcanum-elixir.nvim is a mystical Neovim colorscheme available in both light and dark themes. Created for developers who value both functionality and magical aesthetic elegance, ArcanumElixir transforms the familiar earthtone palette into a refined purple experience inspired by Elixir's mystical powers.

๐ŸŒ… Light Theme: ArcanumElixir's light theme is designed for bright environments, achieving the intended mystical coding atmosphere inspired by ancient arcane manuscripts.

๐ŸŒ™ Dark Theme: The dark theme maintains the same purple harmony and mystical elegance, carefully adapted for low-light environments while preserving the arcane aesthetic.

๐ŸŽจ Design Philosophy

ArcanumElixir draws its inspiration from the mystical purple tones of Elixir, which uses enchanting, magical colors that reduce eye strain during extended coding sessions. This same principle applies to development - the purple palette creates a comfortable, mystical atmosphere perfect for long coding sessions, research, and thoughtful programming.

Why purple tones for both light and dark?

  • Reduced eye fatigue during extended coding sessions in any lighting condition
  • Mystical ambiance reminiscent of ancient arcane manuscripts and magical libraries
  • Professional appearance suitable for magical and alchemical environments
  • Enchanting, inviting atmosphere that encourages focused spellcasting
  • Adaptable - Light theme for bright environments, dark theme for low-light settings
  • Consistent aesthetic - Both themes maintain the same arcane character

โœจ Key Features

  • Dual theme support - Light and dark themes
  • Based on gruvbox.nvim - Inherits the robust architecture and reliability
  • Purple color palette - Mystical, arcane tones inspired by Elixir
  • Full treesitter support - Enhanced syntax highlighting
  • LSP semantic highlights - Modern language server integration
  • Customizable - Extensive configuration options
  • Mystical focus - Perfect for research, documentation, and magical coding
  • Light/Dark harmony - Both themes share the same arcane aesthetic principles

๐Ÿ”ง Requirements

  • Neovim 0.8.0+

๐Ÿ“ฆ Installation

Using lazy.nvim (recommended)

{
  "abreujp/arcanum-elixir.nvim",
  priority = 1000,
  config = function()
    require("arcanum_elixir").setup({
      -- your configuration here
    })
    
    -- For light theme
    vim.o.background = "light"
    vim.cmd("colorscheme arcanum_elixir")
    
    -- OR for dark theme
    -- vim.o.background = "dark"
    -- vim.cmd("colorscheme arcanum_elixir")
  end,
}

Using packer

use {
  "abreujp/arcanum-elixir.nvim",
  config = function()
    require("arcanum_elixir").setup()
    
    -- Choose your preferred theme
    vim.o.background = "light"
    vim.cmd("colorscheme arcanum_elixir")
    
    -- OR use: 
    -- vim.o.background = "dark"
    -- vim.cmd("colorscheme arcanum_elixir") for dark theme
  end
}

Using vim-plug

Plug 'abreujp/arcanum-elixir.nvim'

Then in your init.vim:

" For light theme
set background=light
colorscheme arcanum_elixir

" OR for dark theme
" set background=dark
" colorscheme arcanum_elixir

๐Ÿš€ Quick Start

Lua Configuration

require("arcanum_elixir").setup({
  contrast = "soft",  -- "hard", "soft" or "" (default)
  transparent_mode = false,
})

-- Choose your preferred theme
vim.o.background = "light"
vim.cmd("colorscheme arcanum_elixir")

-- OR for dark theme
-- vim.o.background = "dark"
-- vim.cmd("colorscheme arcanum_elixir")

Vim Configuration

" For light theme
set background=light
colorscheme arcanum_elixir

" OR for dark theme
" set background=dark
" colorscheme arcanum_elixir

โš™๏ธ Configuration

ArcanumElixir provides extensive customization options while maintaining sensible defaults:

require("arcanum_elixir").setup({
  terminal_colors = true,     -- Enable terminal colors
  undercurl = true,          -- Enable undercurls for diagnostics
  underline = true,          -- Enable underlines
  bold = true,               -- Enable bold text
  italic = {
    strings = true,          -- Italicize strings
    emphasis = true,         -- Italicize emphasized text
    comments = true,         -- Italicize comments
    operators = false,       -- Don't italicize operators
    folds = true,           -- Italicize fold text
  },
  strikethrough = true,      -- Enable strikethrough
  invert_selection = false,  -- Don't invert selections
  invert_signs = false,      -- Don't invert sign column
  invert_tabline = false,    -- Don't invert tabline
  inverse = true,            -- Invert background for search, diffs, etc.
  contrast = "",             -- Contrast level: "hard", "soft", or ""
  palette_overrides = {},    -- Override palette colors
  overrides = {},            -- Override highlight groups
  dim_inactive = false,      -- Don't dim inactive windows
  transparent_mode = false,  -- Disable transparent background
})

โš ๏ธ Important: Always call setup() before setting the colorscheme!

Palette Customization

Override specific colors while maintaining the sepia harmony:

require("arcanum_elixir").setup({
  palette_overrides = {
    bright_red = "#CC6666",    -- Custom error color
    gray = "#999999",          -- Custom comment color
  }
})

Highlight Group Overrides

Customize specific highlighting:

require("arcanum_elixir").setup({
  overrides = {
    -- UI elements
    SignColumn = { bg = "#F5F5DC" },
    
    -- Treesitter groups
    ["@comment.lua"] = { fg = "#8B7355", italic = true },
    ["@string"] = { fg = "#8B6F47" },
    
    -- LSP semantic tokens
    ["@lsp.type.method"] = { fg = "#A0623A", bold = true },
  }
})

๐ŸŽจ Acknowledgments

arcanum-elixir.nvim is built upon the excellent foundation of gruvbox.nvim by @ellisonleao. The robust architecture and thoughtful design of gruvbox made ArcanumElixir possible.

Color inspiration comes from the mystical purple tones of the Elixir programming language, which demonstrates how enchanting, magical colors can reduce eye strain and create a comfortable coding environment.

๐Ÿ“„ License

MIT License - see LICENSE for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors