Theme Helix with the current Omarchy theme (#5530)
Helix had no theme integration. Installing it from the menu just ran omarchy-pkg-add and left the editor on whatever default theme it shipped with, regardless of the active Omarchy palette. This adds `default/themed/helix.toml.tpl` so the template renderer produces a helix.toml on every theme switch, and `omarchy-install-helix` that wires Helix up: - install the package - symlink `~/.config/helix/themes/omarchy.toml` at the rendered theme - seed a config.toml selecting that theme when the user has none The install menu routes Helix through this script. omarchy-restart-helix joins omarchy-theme-set and signals Helix with SIGUSR1 so theme changes are live [[1]], the same way as other packages. Arch-based distros package the binary as 'helix' rather than upstream 'hx', so the new scripts target 'helix' and the installer ends with a hint about aliasing 'hx'. [1]: https://docs.helix-editor.com/configuration.html Ref: https://github.com/basecamp/omarchy/discussions/4986
This commit is contained in:
Executable
+25
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Install Helix and configure it to use the current Omarchy theme.
|
||||
|
||||
echo "Installing Helix..."
|
||||
omarchy-pkg-add helix
|
||||
|
||||
mkdir -p ~/.config/helix/themes
|
||||
|
||||
# Symlink the rendered Omarchy theme so Helix tracks the active theme
|
||||
ln -sf ~/.config/omarchy/current/theme/helix.toml ~/.config/helix/themes/omarchy.toml
|
||||
|
||||
# Only seed a config.toml if the user does not already have one
|
||||
if [[ ! -f ~/.config/helix/config.toml ]]; then
|
||||
cat >~/.config/helix/config.toml <<'EOF'
|
||||
theme = "omarchy"
|
||||
EOF
|
||||
fi
|
||||
|
||||
# Ensure the symlink target exists for users whose current theme predates this template
|
||||
if [[ ! -e ~/.config/omarchy/current/theme/helix.toml ]]; then
|
||||
omarchy-theme-refresh
|
||||
fi
|
||||
|
||||
echo -e "\nArch-based distros ship Helix as 'helix' rather than the upstream 'hx'. Alias 'hx' to 'helix' in your shell configuration if you prefer the shorter command."
|
||||
Reference in New Issue
Block a user