Integrations - lukelex/railscasts.nvim GitHub Wiki
Integrations
Railscasts uses semantic highlight links so integrations inherit the same visual hierarchy as Neovim's core UI.
Terminal buffers and external terminals
Loading Railscasts assigns Neovim's terminal_color_0 through
terminal_color_15 values. Embedded :terminal buffers therefore use the same
ANSI language as the Kitty, WezTerm, Alacritty, Ghostty, Windows Terminal, and
iTerm2 profiles.
See Palette for the shared ANSI mapping.
Kitty
Download extras/kitty.conf
as a separate include file to avoid duplicate settings during updates. For the
default Linux/macOS configuration directory:
curl -fLo ~/.config/kitty/railscasts.conf \
https://raw.githubusercontent.com/lukelex/railscasts.nvim/main/extras/kitty.conf
Include it from ~/.config/kitty/kitty.conf (adjust paths if you use a custom
configuration directory):
include railscasts.conf
WezTerm
Copy extras/wezterm.lua
into your configuration directory and assign it to config.colors:
config.colors = dofile(os.getenv("HOME") .. "/.config/wezterm/railscasts.lua")
Adjust the path to match your configuration directory.
Alacritty
Copy extras/alacritty.toml
into your configuration directory, then import it from alacritty.toml:
[general]
import = ["~/.config/alacritty/railscasts.toml"]
If your configuration already has a [general] section, add the import there.
Ghostty
Copy extras/ghostty.conf
to your configuration directory as railscasts.conf, then include it from
config:
config-file = railscasts.conf
Windows Terminal
Add extras/windows-terminal.json
to the schemes array in settings.json, then select Railscasts as the color
scheme in a profile.
iTerm2
Import extras/iterm2.itermcolors
using Settings → Profiles → Colors → Color Presets → Import, then select the
Railscasts preset for the profile.
Lualine
require("lualine").setup({
options = { theme = "railscasts" },
})
The active mode segment follows the Railscasts mode language: green normal, orange insert, cyan visual, yellow replace, and red command.
Indentation
No configuration is needed for legacy IndentBlankLine groups or ibl v3 groups.
Kmonad
Railscasts natively detects .kbd files and provides Kmonad syntax groups. No
additional syntax plugin or Railscasts-specific configuration is needed.
See Language Support for its semantic roles.
UI plugins
No Railscasts-specific plugin configuration is needed. Supported groups include:
- Snacks, mini.nvim, Trouble, nvim-notify, bufferline, and nvim-dap-ui
- Diffview, vim-fugitive, dressing.nvim, nvim-navic, dropbar, and treesitter-context
- rainbow-delimiters, aerial.nvim, outline.nvim, neogit, neotest, and fzf-lua
- nvim-cmp, Blink, GitSigns, Neo-tree, Oil, WhichKey, Lazy, Noice, and render-markdown
Plugin UI should be loaded before applying the colorscheme so Railscasts can set the final semantic links. Supported plugins also inherit high-contrast, transparent, and dimmed-inactive behavior.
FzfLua live-search prompts and the current-buffer marker use Function; alternate-buffer markers use Comment. This replaces FzfLua's unrelated terminal defaults while keeping the current buffer easier to spot.