diff --git a/DEBUGGING.md b/DEBUGGING.md index 6eb1edb..98d3529 100644 --- a/DEBUGGING.md +++ b/DEBUGGING.md @@ -1,4 +1,4 @@ -# Debugging Darcula Solid Highlighting +# Debugging Darcula Highlighting If certain elements aren't highlighting correctly, use these debugging techniques: @@ -24,7 +24,7 @@ The `this` keyword should appear in **orange** (#CC7832), not purple like member - Theme not reloaded after updates **Solutions:** -1. Reload the theme: `:colorscheme darcula-solid` +1. Reload the theme: `:colorscheme darcula` 2. Restart LSP: `:LspRestart` (if using nvim-lspconfig) or `:lua vim.lsp.stop_client(vim.lsp.get_clients())` 3. Ensure tree-sitter parsers are installed: `:TSInstall typescript javascript tsx jsx` 4. Check if LSP semantic tokens are enabled (most LSPs enable this by default) @@ -40,7 +40,7 @@ Custom Angular components (like ``, ``) should appear **Solutions:** 1. Install HTML parser: `:TSInstall html` -2. Reload theme: `:colorscheme darcula-solid` +2. Reload theme: `:colorscheme darcula` 3. Check file type: `:set filetype?` (should be `html` or `htmlangular`) 4. If using Angular templates, ensure your LSP is configured for Angular @@ -76,7 +76,7 @@ LSP semantic tokens provide rich semantic highlighting. To check if they're work ## 6. Force Reload Everything If nothing else works: -1. Reload theme: `:colorscheme darcula-solid` +1. Reload theme: `:colorscheme darcula` 2. Reload tree-sitter: `:write | edit` 3. Restart LSP: `:LspRestart` 4. Or just restart Neovim diff --git a/README.md b/README.md index 73081b3..0f8e47a 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -![Darcula-solid.nvim](https://raw.githubusercontent.com/briones-gabriel/darcula-solid.nvim/main/resources/darcula-solid-logo.png) -# Darcula-solid.nvim +![Darcula.nvim](https://raw.githubusercontent.com/briones-gabriel/darcula-solid.nvim/main/resources/darcula-solid-logo.png) +# Darcula.nvim A high-fidelity Neovim color scheme that perfectly matches the official JetBrains Darcula theme. Built with [Lush](https://github.com/rktjmp/lush.nvim) for easy customization and comprehensive plugin support. ## ✨ Features @@ -37,7 +37,7 @@ A high-fidelity Neovim color scheme that perfectly matches the official JetBrain dependencies = { "rktjmp/lush.nvim" }, priority = 1000, -- Load before other plugins config = function() - vim.cmd("colorscheme darcula-solid") + vim.cmd("colorscheme darcula") end, } ``` @@ -62,14 +62,14 @@ Plug 'briones-gabriel/darcula-solid.nvim' ```lua -- init.lua vim.opt.termguicolors = true -vim.cmd("colorscheme darcula-solid") +vim.cmd("colorscheme darcula") ``` Or in Vimscript: ```vim " init.vim set termguicolors -colorscheme darcula-solid +colorscheme darcula ``` ### LSP Semantic Highlighting @@ -99,23 +99,23 @@ The theme uses the official JetBrains Darcula colors: Because the theme is built with [Lush](https://github.com/rktjmp/lush.nvim), you can easily customize it to your preferences: 1. Create a `colors` directory: `~/.config/nvim/colors` -2. Create a custom theme file: `~/.config/nvim/colors/darcula-solid-custom.lua` +2. Create a custom theme file: `~/.config/nvim/colors/darcula-custom.lua` 3. Extend the base theme: ```lua vim.opt.background = 'dark' -vim.g.colors_name = 'darcula-solid-custom' +vim.g.colors_name = 'darcula-custom' local lush = require('lush') -local darcula_solid = require('lush_theme.darcula-solid') -local spec = lush.extends({darcula_solid}).with(function() +local darcula = require('lush_theme.darcula') +local spec = lush.extends({darcula}).with(function() -- Your modifications go here local yellow = lush.hsl(37, 100, 71) return { -- Override specific highlight groups Type { fg = yellow }, - Function { fg = darcula_solid.Normal.fg }, + Function { fg = darcula.Normal.fg }, -- Add more customizations... } end) @@ -125,7 +125,7 @@ lush(spec) 4. Apply your custom theme: ```lua -vim.cmd("colorscheme darcula-solid-custom") +vim.cmd("colorscheme darcula-custom") ``` ## 🌟 Highlights @@ -149,7 +149,7 @@ Following JetBrains conventions: If certain elements aren't highlighting correctly (e.g., `this` keyword appears purple instead of orange, or Angular components appear white), see [DEBUGGING.md](DEBUGGING.md) for detailed troubleshooting steps. **Quick fixes:** -1. Reload the theme: `:colorscheme darcula-solid` +1. Reload the theme: `:colorscheme darcula` 2. Check what highlight is applied: `:Inspect` (cursor on element) 3. Ensure tree-sitter parsers are installed: `:TSInstall typescript javascript html` 4. Restart LSP: `:LspRestart` diff --git a/colors/darcula-solid.vim b/colors/darcula-solid.vim deleted file mode 100644 index 96e3d53..0000000 --- a/colors/darcula-solid.vim +++ /dev/null @@ -1,6 +0,0 @@ -set background=dark -let g:colors_name="darcula-solid" - -lua package.loaded['lush_theme.darcula-solid'] = nil - -lua require('lush')(require('lush_theme.darcula-solid')) diff --git a/colors/darcula.vim b/colors/darcula.vim new file mode 100644 index 0000000..416be1e --- /dev/null +++ b/colors/darcula.vim @@ -0,0 +1,6 @@ +set background=dark +let g:colors_name="darcula" + +lua package.loaded['lush_theme.darcula'] = nil + +lua require('lush')(require('lush_theme.darcula')) diff --git a/lua/lush_theme/darcula-solid.lua b/lua/lush_theme/darcula.lua similarity index 99% rename from lua/lush_theme/darcula-solid.lua rename to lua/lush_theme/darcula.lua index 3055797..9c918eb 100644 --- a/lua/lush_theme/darcula-solid.lua +++ b/lua/lush_theme/darcula.lua @@ -1,4 +1,4 @@ --- darcula-solid.nvim +-- darcula.nvim -- A high-fidelity port of the JetBrains Darcula theme for Neovim -- Author: brianpooe -- License: MIT @@ -440,7 +440,7 @@ return lush(function() ["@lsp.type.macro"] = { fg = p.annotation }, ["@lsp.type.decorator"] = { fg = p.annotation }, -- 'this' keyword handling (multiple semantic token types) - -- NOTE: For changes to take effect, reload with :colorscheme darcula-solid + -- NOTE: For changes to take effect, reload with :colorscheme darcula -- or restart Neovim and ensure LSP is reloaded ["@lsp.type.selfKeyword"] = { fg = p.keyword, gui = "italic" }, -- 'this' in TypeScript/JavaScript ["@lsp.type.selfParameter"] = { fg = p.keyword, gui = "italic" }, -- 'this' as parameter