catppuccin / helix Goto Github PK
View Code? Open in Web Editor NEW➿ Soothing pastel theme for Helix!
License: MIT License
➿ Soothing pastel theme for Helix!
License: MIT License
The README currently suggests copying the contents of the theme file in order to make edits, but Helix now allows for themes to inherit other themes, so the better option to recommend to users would be to create a blank theme file in their config themes directory, and put an inherits = …
line at the top, then put whatever overrides they want to in that file.
There are multiple emoji that would fit here like: 🧬
or ✏️
The current bufferline design causes inconsistency in the appearance of the editor. Since the inactive bufferline background is a different color than the statusline background, this creates and additional visual element that may not be necessary.
Currently theme has three different background for bufferline:
mantle
for inactive buffersbase
for active buffersurface0
for backgroundAlso, in latte version it's difficult to read name of inactive buffer:
The fix is very simple, we just need change bg
to mantle
for ui.bufferline.background
.
Helix has recently added support for coloured cursors depending on mode (i.e. normal, insert, select):
So it's now possible for themes to set primary and non-primary cursor colours for each mode.
I've done some quick local theme overrides to Catppuccin Mocha in order to demo this functionality in the clip below:
This makes for a really nice editing experience and it would be great to have this functionality as part of this official Catppuccin theme for Helix. 🙂
In case it's helpful, below is the theme override configuration I used for the clip above.
From my NixOS config:
{
programs.helix.themes = {
custom = {
"inherits" = "catppuccin_mocha";
"ui.statusline.normal" = { fg = "base"; bg = "lavender"; };
"ui.statusline.insert" = { fg = "base"; bg = "green"; };
"ui.statusline.select" = { fg = "base"; bg = "yellow"; };
"ui.cursor.primary.normal" = { fg = "base"; bg = "lavender"; };
"ui.cursor.primary.insert" = { fg = "base"; bg = "green"; };
"ui.cursor.primary.select" = { fg = "base"; bg = "yellow"; };
# The non-primary cursor colours need to be a dimmed version of the above
"ui.cursor.normal" = { fg = "base"; bg = "#A6ADC8"; };
"ui.cursor.insert" = { fg = "base"; bg = "#AACCC6"; };
"ui.cursor.select" = { fg = "base"; bg = "#B6A98B"; };
};
};
}
Please note that the colours and combinations were quickly thrown together and are not perfect.
It should be possible to derive something nicer when blending existing palette colours like done here.
Currently the theme has
"diagnostic.error" = { fg = "red", underline = { color = "red", style = "curl" } }
"diagnostic.warning" = { fg = "yellow", underline = { color = "yellow", style = "curl" } }
"diagnostic.info" = { fg = "sky", underline = { color = "sky", style = "curl" } }
"diagnostic.hint" = { fg = "teal", underline = { color = "teal", style = "curl" } }
which sets foreground color of text which has diagnostics messages to the color of that message, for example:
I would argue that shouldn't be tha case, because it looks bad, that's not how it is in other Helix themes, and I don't think catppuccin does that for other editors (here is vscode for examle)
(Also I just noticed function color is different and I think vscode's is better)
The fix is very simple, just remove the fg = "..."
from the code above
There is a new key added for prompt suggestions under ui.text.inactive
. Upstream is suggesting comment is a good color to start with.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.