mirror of
https://github.com/helix-editor/helix.git
synced 2024-11-22 17:36:19 +04:00
Compare commits
14 Commits
5caee06337
...
df7ee9378d
Author | SHA1 | Date | |
---|---|---|---|
|
df7ee9378d | ||
|
f305c7299d | ||
|
9e0d2d0a19 | ||
|
b8313da5a8 | ||
|
32ff0fce4a | ||
|
9e171e7d1d | ||
|
b92e8abfb3 | ||
|
8807dbfc40 | ||
|
15b478d433 | ||
|
467fad51b1 | ||
|
b855cd0cda | ||
|
a430e17796 | ||
|
d7c56fb689 | ||
|
7d5498a918 |
@ -145,8 +145,9 @@ ### Configure the desktop shortcut
|
|||||||
provided `.desktop` and icon files to their correct folders:
|
provided `.desktop` and icon files to their correct folders:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
cp contrib/Helix.desktop ~/.local/share/applications
|
cp contrib/Helix.desktop -- "$HOME/.local/share/applications"
|
||||||
cp contrib/helix.png ~/.icons # or ~/.local/share/icons
|
cp contrib/helix.png -- "$HOME/.icons" # or "$HOME/.local/share/icons"
|
||||||
|
#xdg-icon-resource install --novendor --size 256 contrib/helix.png
|
||||||
```
|
```
|
||||||
It is recommended to convert the links in the `.desktop` file to absolute paths to avoid potential problems:
|
It is recommended to convert the links in the `.desktop` file to absolute paths to avoid potential problems:
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ ### `[editor]` Section
|
|||||||
|--|--|---------|
|
|--|--|---------|
|
||||||
| `scrolloff` | Number of lines of padding around the edge of the screen when scrolling | `5` |
|
| `scrolloff` | Number of lines of padding around the edge of the screen when scrolling | `5` |
|
||||||
| `mouse` | Enable mouse mode | `true` |
|
| `mouse` | Enable mouse mode | `true` |
|
||||||
|
| `default-yank-register` | Default register used for yank/paste | `"` |
|
||||||
| `middle-click-paste` | Middle click paste support | `true` |
|
| `middle-click-paste` | Middle click paste support | `true` |
|
||||||
| `scroll-lines` | Number of lines to scroll per scroll wheel step | `3` |
|
| `scroll-lines` | Number of lines to scroll per scroll wheel step | `3` |
|
||||||
| `shell` | Shell to use when running external commands | Unix: `["sh", "-c"]`<br/>Windows: `["cmd", "/C"]` |
|
| `shell` | Shell to use when running external commands | Unix: `["sh", "-c"]`<br/>Windows: `["cmd", "/C"]` |
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
| ada | ✓ | ✓ | | `ada_language_server` |
|
| ada | ✓ | ✓ | | `ada_language_server` |
|
||||||
| adl | ✓ | ✓ | ✓ | |
|
| adl | ✓ | ✓ | ✓ | |
|
||||||
| agda | ✓ | | | |
|
| agda | ✓ | | | |
|
||||||
|
| amber | ✓ | | | |
|
||||||
| astro | ✓ | | | |
|
| astro | ✓ | | | |
|
||||||
| awk | ✓ | ✓ | | `awk-language-server` |
|
| awk | ✓ | ✓ | | `awk-language-server` |
|
||||||
| bash | ✓ | ✓ | ✓ | `bash-language-server` |
|
| bash | ✓ | ✓ | ✓ | `bash-language-server` |
|
||||||
@ -91,7 +92,7 @@
|
|||||||
| hosts | ✓ | | | |
|
| hosts | ✓ | | | |
|
||||||
| html | ✓ | | | `vscode-html-language-server`, `superhtml` |
|
| html | ✓ | | | `vscode-html-language-server`, `superhtml` |
|
||||||
| hurl | ✓ | ✓ | ✓ | |
|
| hurl | ✓ | ✓ | ✓ | |
|
||||||
| hyprlang | ✓ | | ✓ | |
|
| hyprlang | ✓ | | ✓ | `hyprls` |
|
||||||
| idris | | | | `idris2-lsp` |
|
| idris | | | | `idris2-lsp` |
|
||||||
| iex | ✓ | | | |
|
| iex | ✓ | | | |
|
||||||
| ini | ✓ | | | |
|
| ini | ✓ | | | |
|
||||||
@ -169,6 +170,7 @@
|
|||||||
| purescript | ✓ | ✓ | | `purescript-language-server` |
|
| purescript | ✓ | ✓ | | `purescript-language-server` |
|
||||||
| python | ✓ | ✓ | ✓ | `ruff`, `jedi-language-server`, `pylsp` |
|
| python | ✓ | ✓ | ✓ | `ruff`, `jedi-language-server`, `pylsp` |
|
||||||
| qml | ✓ | | ✓ | `qmlls` |
|
| qml | ✓ | | ✓ | `qmlls` |
|
||||||
|
| quint | ✓ | | | `quint-language-server` |
|
||||||
| r | ✓ | | | `R` |
|
| r | ✓ | | | `R` |
|
||||||
| racket | ✓ | | ✓ | `racket` |
|
| racket | ✓ | | ✓ | `racket` |
|
||||||
| regex | ✓ | | | |
|
| regex | ✓ | | | |
|
||||||
|
@ -2735,7 +2735,9 @@ fn delete_selection_impl(cx: &mut Context, op: Operation, yank: YankAction) {
|
|||||||
// yank the selection
|
// yank the selection
|
||||||
let text = doc.text().slice(..);
|
let text = doc.text().slice(..);
|
||||||
let values: Vec<String> = selection.fragments(text).map(Cow::into_owned).collect();
|
let values: Vec<String> = selection.fragments(text).map(Cow::into_owned).collect();
|
||||||
let reg_name = cx.register.unwrap_or('"');
|
let reg_name = cx
|
||||||
|
.register
|
||||||
|
.unwrap_or_else(|| cx.editor.config.load().default_yank_register);
|
||||||
if let Err(err) = cx.editor.registers.write(reg_name, values) {
|
if let Err(err) = cx.editor.registers.write(reg_name, values) {
|
||||||
cx.editor.set_error(err.to_string());
|
cx.editor.set_error(err.to_string());
|
||||||
return;
|
return;
|
||||||
@ -4221,7 +4223,11 @@ fn commit_undo_checkpoint(cx: &mut Context) {
|
|||||||
// Yank / Paste
|
// Yank / Paste
|
||||||
|
|
||||||
fn yank(cx: &mut Context) {
|
fn yank(cx: &mut Context) {
|
||||||
yank_impl(cx.editor, cx.register.unwrap_or('"'));
|
yank_impl(
|
||||||
|
cx.editor,
|
||||||
|
cx.register
|
||||||
|
.unwrap_or(cx.editor.config().default_yank_register),
|
||||||
|
);
|
||||||
exit_select_mode(cx);
|
exit_select_mode(cx);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4282,7 +4288,12 @@ fn yank_joined_impl(editor: &mut Editor, separator: &str, register: char) {
|
|||||||
|
|
||||||
fn yank_joined(cx: &mut Context) {
|
fn yank_joined(cx: &mut Context) {
|
||||||
let separator = doc!(cx.editor).line_ending.as_str();
|
let separator = doc!(cx.editor).line_ending.as_str();
|
||||||
yank_joined_impl(cx.editor, separator, cx.register.unwrap_or('"'));
|
yank_joined_impl(
|
||||||
|
cx.editor,
|
||||||
|
separator,
|
||||||
|
cx.register
|
||||||
|
.unwrap_or(cx.editor.config().default_yank_register),
|
||||||
|
);
|
||||||
exit_select_mode(cx);
|
exit_select_mode(cx);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4442,7 +4453,12 @@ fn paste_primary_clipboard_before(cx: &mut Context) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn replace_with_yanked(cx: &mut Context) {
|
fn replace_with_yanked(cx: &mut Context) {
|
||||||
replace_with_yanked_impl(cx.editor, cx.register.unwrap_or('"'), cx.count());
|
replace_with_yanked_impl(
|
||||||
|
cx.editor,
|
||||||
|
cx.register
|
||||||
|
.unwrap_or(cx.editor.config().default_yank_register),
|
||||||
|
cx.count(),
|
||||||
|
);
|
||||||
exit_select_mode(cx);
|
exit_select_mode(cx);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4505,7 +4521,8 @@ fn paste(editor: &mut Editor, register: char, pos: Paste, count: usize) {
|
|||||||
fn paste_after(cx: &mut Context) {
|
fn paste_after(cx: &mut Context) {
|
||||||
paste(
|
paste(
|
||||||
cx.editor,
|
cx.editor,
|
||||||
cx.register.unwrap_or('"'),
|
cx.register
|
||||||
|
.unwrap_or(cx.editor.config().default_yank_register),
|
||||||
Paste::After,
|
Paste::After,
|
||||||
cx.count(),
|
cx.count(),
|
||||||
);
|
);
|
||||||
@ -4515,7 +4532,8 @@ fn paste_after(cx: &mut Context) {
|
|||||||
fn paste_before(cx: &mut Context) {
|
fn paste_before(cx: &mut Context) {
|
||||||
paste(
|
paste(
|
||||||
cx.editor,
|
cx.editor,
|
||||||
cx.register.unwrap_or('"'),
|
cx.register
|
||||||
|
.unwrap_or(cx.editor.config().default_yank_register),
|
||||||
Paste::Before,
|
Paste::Before,
|
||||||
cx.count(),
|
cx.count(),
|
||||||
);
|
);
|
||||||
@ -5369,7 +5387,8 @@ fn insert_register(cx: &mut Context) {
|
|||||||
cx.register = Some(ch);
|
cx.register = Some(ch);
|
||||||
paste(
|
paste(
|
||||||
cx.editor,
|
cx.editor,
|
||||||
cx.register.unwrap_or('"'),
|
cx.register
|
||||||
|
.unwrap_or(cx.editor.config().default_yank_register),
|
||||||
Paste::Cursor,
|
Paste::Cursor,
|
||||||
cx.count(),
|
cx.count(),
|
||||||
);
|
);
|
||||||
|
@ -190,9 +190,9 @@ fn builtin_name<'a>(
|
|||||||
// These names should match the config option names from Serde
|
// These names should match the config option names from Serde
|
||||||
Self::Pasteboard => builtin_name("pasteboard", &PASTEBOARD),
|
Self::Pasteboard => builtin_name("pasteboard", &PASTEBOARD),
|
||||||
Self::Wayland => builtin_name("wayland", &WL_CLIPBOARD),
|
Self::Wayland => builtin_name("wayland", &WL_CLIPBOARD),
|
||||||
Self::XClip => builtin_name("x-clip", &WL_CLIPBOARD),
|
Self::XClip => builtin_name("x-clip", &XCLIP),
|
||||||
Self::XSel => builtin_name("x-sel", &WL_CLIPBOARD),
|
Self::XSel => builtin_name("x-sel", &XSEL),
|
||||||
Self::Win32Yank => builtin_name("win-32-yank", &WL_CLIPBOARD),
|
Self::Win32Yank => builtin_name("win-32-yank", &WIN32),
|
||||||
Self::Tmux => builtin_name("tmux", &TMUX),
|
Self::Tmux => builtin_name("tmux", &TMUX),
|
||||||
Self::Termux => builtin_name("termux", &TERMUX),
|
Self::Termux => builtin_name("termux", &TERMUX),
|
||||||
#[cfg(windows)]
|
#[cfg(windows)]
|
||||||
@ -359,44 +359,44 @@ macro_rules! command_provider {
|
|||||||
|
|
||||||
command_provider! {
|
command_provider! {
|
||||||
TMUX,
|
TMUX,
|
||||||
yank => "tmux", "load-buffer", "-w", "-";
|
yank => "tmux", "save-buffer", "-";
|
||||||
paste => "tmux", "save-buffer", "-";
|
paste => "tmux", "load-buffer", "-w", "-";
|
||||||
}
|
}
|
||||||
command_provider! {
|
command_provider! {
|
||||||
PASTEBOARD,
|
PASTEBOARD,
|
||||||
yank => "pbcopy";
|
yank => "pbpaste";
|
||||||
paste => "pbpaste";
|
paste => "pbcopy";
|
||||||
}
|
}
|
||||||
command_provider! {
|
command_provider! {
|
||||||
WL_CLIPBOARD,
|
WL_CLIPBOARD,
|
||||||
yank => "wl-copy", "--type", "text/plain";
|
yank => "wl-paste", "--no-newline";
|
||||||
paste => "wl-paste", "--no-newline";
|
paste => "wl-copy", "--type", "text/plain";
|
||||||
yank_primary => "wl-copy", "-p", "--type", "text/plain";
|
yank_primary => "wl-paste", "-p", "--no-newline";
|
||||||
paste_primary => "wl-paste", "-p", "--no-newline";
|
paste_primary => "wl-copy", "-p", "--type", "text/plain";
|
||||||
}
|
}
|
||||||
command_provider! {
|
command_provider! {
|
||||||
XCLIP,
|
XCLIP,
|
||||||
yank => "xclip", "-i", "-selection", "clipboard";
|
yank => "xclip", "-o", "-selection", "clipboard";
|
||||||
paste => "xclip", "-o", "-selection", "clipboard";
|
paste => "xclip", "-i", "-selection", "clipboard";
|
||||||
yank_primary => "xclip", "-i";
|
yank_primary => "xclip", "-o";
|
||||||
paste_primary => "xclip", "-o";
|
paste_primary => "xclip", "-i";
|
||||||
}
|
}
|
||||||
command_provider! {
|
command_provider! {
|
||||||
XSEL,
|
XSEL,
|
||||||
yank => "xsel", "-i", "-b";
|
yank => "xsel", "-o", "-b";
|
||||||
paste => "xsel", "-o", "-b";
|
paste => "xsel", "-i", "-b";
|
||||||
yank_primary => "xsel", "-i";
|
yank_primary => "xsel", "-o";
|
||||||
paste_primary => "xsel", "-o";
|
paste_primary => "xsel", "-i";
|
||||||
}
|
}
|
||||||
command_provider! {
|
command_provider! {
|
||||||
WIN32,
|
WIN32,
|
||||||
yank => "win32yank.exe", "-i", "--crlf";
|
yank => "win32yank.exe", "-o", "--lf";
|
||||||
paste => "win32yank.exe", "-o", "--lf";
|
paste => "win32yank.exe", "-i", "--crlf";
|
||||||
}
|
}
|
||||||
command_provider! {
|
command_provider! {
|
||||||
TERMUX,
|
TERMUX,
|
||||||
yank => "termux-clipboard-set";
|
yank => "termux-clipboard-get";
|
||||||
paste => "termux-clipboard-get";
|
paste => "termux-clipboard-set";
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(feature = "term")]
|
#[cfg(feature = "term")]
|
||||||
|
@ -270,6 +270,8 @@ pub struct Config {
|
|||||||
pub auto_completion: bool,
|
pub auto_completion: bool,
|
||||||
/// Automatic formatting on save. Defaults to true.
|
/// Automatic formatting on save. Defaults to true.
|
||||||
pub auto_format: bool,
|
pub auto_format: bool,
|
||||||
|
/// Default register used for yank/paste. Defaults to '"'
|
||||||
|
pub default_yank_register: char,
|
||||||
/// Automatic save on focus lost and/or after delay.
|
/// Automatic save on focus lost and/or after delay.
|
||||||
/// Time delay in milliseconds since last edit after which auto save timer triggers.
|
/// Time delay in milliseconds since last edit after which auto save timer triggers.
|
||||||
/// Time delay defaults to false with 3000ms delay. Focus lost defaults to false.
|
/// Time delay defaults to false with 3000ms delay. Focus lost defaults to false.
|
||||||
@ -951,6 +953,7 @@ fn default() -> Self {
|
|||||||
auto_pairs: AutoPairConfig::default(),
|
auto_pairs: AutoPairConfig::default(),
|
||||||
auto_completion: true,
|
auto_completion: true,
|
||||||
auto_format: true,
|
auto_format: true,
|
||||||
|
default_yank_register: '"',
|
||||||
auto_save: AutoSave::default(),
|
auto_save: AutoSave::default(),
|
||||||
idle_timeout: Duration::from_millis(250),
|
idle_timeout: Duration::from_millis(250),
|
||||||
completion_timeout: Duration::from_millis(250),
|
completion_timeout: Duration::from_millis(250),
|
||||||
|
@ -44,6 +44,7 @@ gleam = { command = "gleam", args = ["lsp"] }
|
|||||||
glsl_analyzer = { command = "glsl_analyzer" }
|
glsl_analyzer = { command = "glsl_analyzer" }
|
||||||
graphql-language-service = { command = "graphql-lsp", args = ["server", "-m", "stream"] }
|
graphql-language-service = { command = "graphql-lsp", args = ["server", "-m", "stream"] }
|
||||||
haskell-language-server = { command = "haskell-language-server-wrapper", args = ["--lsp"] }
|
haskell-language-server = { command = "haskell-language-server-wrapper", args = ["--lsp"] }
|
||||||
|
hyprls = { command = "hyprls" }
|
||||||
idris2-lsp = { command = "idris2-lsp" }
|
idris2-lsp = { command = "idris2-lsp" }
|
||||||
intelephense = { command = "intelephense", args = ["--stdio"] }
|
intelephense = { command = "intelephense", args = ["--stdio"] }
|
||||||
jdtls = { command = "jdtls" }
|
jdtls = { command = "jdtls" }
|
||||||
@ -83,6 +84,7 @@ pyright = { command = "pyright-langserver", args = ["--stdio"], config = {} }
|
|||||||
basedpyright = { command = "basedpyright-langserver", args = ["--stdio"], config = {} }
|
basedpyright = { command = "basedpyright-langserver", args = ["--stdio"], config = {} }
|
||||||
pylyzer = { command = "pylyzer", args = ["--server"] }
|
pylyzer = { command = "pylyzer", args = ["--server"] }
|
||||||
qmlls = { command = "qmlls" }
|
qmlls = { command = "qmlls" }
|
||||||
|
quint-language-server = { command = "quint-language-server", args = ["--stdio"] }
|
||||||
r = { command = "R", args = ["--no-echo", "-e", "languageserver::run()"] }
|
r = { command = "R", args = ["--no-echo", "-e", "languageserver::run()"] }
|
||||||
racket = { command = "racket", args = ["-l", "racket-langserver"] }
|
racket = { command = "racket", args = ["-l", "racket-langserver"] }
|
||||||
regols = { command = "regols" }
|
regols = { command = "regols" }
|
||||||
@ -3577,6 +3579,7 @@ roots = ["hyprland.conf"]
|
|||||||
file-types = [ { glob = "hyprland.conf" }, { glob = "hyprpaper.conf" }, { glob = "hypridle.conf" }, { glob = "hyprlock.conf" } ]
|
file-types = [ { glob = "hyprland.conf" }, { glob = "hyprpaper.conf" }, { glob = "hypridle.conf" }, { glob = "hyprlock.conf" } ]
|
||||||
comment-token = "#"
|
comment-token = "#"
|
||||||
grammar = "hyprlang"
|
grammar = "hyprlang"
|
||||||
|
language-servers = ["hyprls"]
|
||||||
|
|
||||||
[[grammar]]
|
[[grammar]]
|
||||||
name = "hyprlang"
|
name = "hyprlang"
|
||||||
@ -3866,11 +3869,15 @@ source = { git = "https://github.com/Decurity/tree-sitter-circom", rev = "021505
|
|||||||
name = "snakemake"
|
name = "snakemake"
|
||||||
scope = "source.snakemake"
|
scope = "source.snakemake"
|
||||||
roots = ["Snakefile", "config.yaml", "environment.yaml", "workflow/"]
|
roots = ["Snakefile", "config.yaml", "environment.yaml", "workflow/"]
|
||||||
file-types = ["smk", "Snakefile"]
|
file-types = ["smk", { glob = "Snakefile" } ]
|
||||||
comment-tokens = ["#", "##"]
|
comment-tokens = ["#", "##"]
|
||||||
indent = { tab-width = 2, unit = " " }
|
indent = { tab-width = 2, unit = " " }
|
||||||
language-servers = ["pylsp" ]
|
language-servers = ["pylsp" ]
|
||||||
|
|
||||||
|
[language.formatter]
|
||||||
|
command = "snakefmt"
|
||||||
|
args = ["-"]
|
||||||
|
|
||||||
[[grammar]]
|
[[grammar]]
|
||||||
name = "snakemake"
|
name = "snakemake"
|
||||||
source = { git = "https://github.com/osthomas/tree-sitter-snakemake", rev = "e909815acdbe37e69440261ebb1091ed52e1dec6" }
|
source = { git = "https://github.com/osthomas/tree-sitter-snakemake", rev = "e909815acdbe37e69440261ebb1091ed52e1dec6" }
|
||||||
@ -3887,6 +3894,19 @@ indent = { tab-width = 4, unit = " " }
|
|||||||
name = "cylc"
|
name = "cylc"
|
||||||
source = { git = "https://github.com/elliotfontaine/tree-sitter-cylc", rev = "30dd40d9bf23912e4aefa93eeb4c7090bda3d0f6" }
|
source = { git = "https://github.com/elliotfontaine/tree-sitter-cylc", rev = "30dd40d9bf23912e4aefa93eeb4c7090bda3d0f6" }
|
||||||
|
|
||||||
|
[[language]]
|
||||||
|
name = "quint"
|
||||||
|
scope = "source.quint"
|
||||||
|
file-types = ["qnt"]
|
||||||
|
language-servers = ["quint-language-server"]
|
||||||
|
comment-token = "//"
|
||||||
|
block-comment-tokens = { start = "/*", end = "*/" }
|
||||||
|
indent = { tab-width = 2, unit = " " }
|
||||||
|
|
||||||
|
[[grammar]]
|
||||||
|
name = "quint"
|
||||||
|
source = { git = "https://github.com/gruhn/tree-sitter-quint", rev = "eebbd01edfeff6404778c92efe5554e42e506a18" }
|
||||||
|
|
||||||
[[language]]
|
[[language]]
|
||||||
name = "spade"
|
name = "spade"
|
||||||
scope = "source.spade"
|
scope = "source.spade"
|
||||||
@ -3911,3 +3931,14 @@ indent = { tab-width = 4, unit = " " }
|
|||||||
[[grammar]]
|
[[grammar]]
|
||||||
name = "spade"
|
name = "spade"
|
||||||
source = { git = "https://gitlab.com/spade-lang/tree-sitter-spade/", rev = "4d5b141017c61fe7e168e0a5c5721ee62b0d9572" }
|
source = { git = "https://gitlab.com/spade-lang/tree-sitter-spade/", rev = "4d5b141017c61fe7e168e0a5c5721ee62b0d9572" }
|
||||||
|
|
||||||
|
[[language]]
|
||||||
|
name = "amber"
|
||||||
|
scope = "source.ab"
|
||||||
|
file-types = ["ab"]
|
||||||
|
comment-token = "//"
|
||||||
|
indent = { tab-width = 4, unit = " " }
|
||||||
|
|
||||||
|
[[grammar]]
|
||||||
|
name = "amber"
|
||||||
|
source = { git = "https://github.com/amber-lang/tree-sitter-amber", rev = "c6df3ec2ec243ed76550c525e7ac3d9a10c6c814" }
|
||||||
|
60
runtime/queries/amber/highlights.scm
Normal file
60
runtime/queries/amber/highlights.scm
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
(comment) @comment
|
||||||
|
|
||||||
|
[
|
||||||
|
"if"
|
||||||
|
"loop"
|
||||||
|
"for"
|
||||||
|
"return"
|
||||||
|
"fun"
|
||||||
|
"else"
|
||||||
|
"then"
|
||||||
|
"break"
|
||||||
|
"continue"
|
||||||
|
"and"
|
||||||
|
"or"
|
||||||
|
"not"
|
||||||
|
"let"
|
||||||
|
"pub"
|
||||||
|
"main"
|
||||||
|
"echo"
|
||||||
|
"exit"
|
||||||
|
"fun"
|
||||||
|
"import"
|
||||||
|
"from"
|
||||||
|
"as"
|
||||||
|
"in"
|
||||||
|
"fail"
|
||||||
|
"failed"
|
||||||
|
"silent"
|
||||||
|
"nameof"
|
||||||
|
"is"
|
||||||
|
"unsafe"
|
||||||
|
"trust"
|
||||||
|
] @keyword
|
||||||
|
|
||||||
|
; Literals
|
||||||
|
(boolean) @constant.builtin.boolean
|
||||||
|
(number) @constant.numeric
|
||||||
|
(null) @constant.numeric
|
||||||
|
(string) @string
|
||||||
|
(status) @keyword
|
||||||
|
(command) @string
|
||||||
|
(handler) @keyword
|
||||||
|
(block) @punctuation.delimiter
|
||||||
|
(variable_init) @keyword
|
||||||
|
(variable_assignment) @punctuation.delimiter
|
||||||
|
(variable) @variable
|
||||||
|
(escape_sequence) @constant.character.escape
|
||||||
|
(type_name_symbol) @type
|
||||||
|
(interpolation) @punctuation.delimiter
|
||||||
|
(reference) @keyword
|
||||||
|
(preprocessor_directive) @comment
|
||||||
|
(shebang) @comment
|
||||||
|
(function_definition
|
||||||
|
name: (variable) @function.method)
|
||||||
|
(function_call
|
||||||
|
name: (variable) @function.method)
|
||||||
|
(import_statement
|
||||||
|
"pub" @keyword
|
||||||
|
"import" @keyword
|
||||||
|
"from" @keyword)
|
94
runtime/queries/quint/highlights.scm
Normal file
94
runtime/queries/quint/highlights.scm
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
[
|
||||||
|
"module"
|
||||||
|
"type"
|
||||||
|
"assume"
|
||||||
|
"const"
|
||||||
|
"var"
|
||||||
|
"val"
|
||||||
|
"nondet"
|
||||||
|
"def"
|
||||||
|
"pure"
|
||||||
|
"action"
|
||||||
|
"temporal"
|
||||||
|
"run"
|
||||||
|
] @keyword
|
||||||
|
|
||||||
|
(match_expr "match" @keyword.control.conditional)
|
||||||
|
|
||||||
|
(if_else_condition
|
||||||
|
"if" @keyword.control.conditional
|
||||||
|
"else" @keyword.control.conditional)
|
||||||
|
|
||||||
|
(import "import" @keyword.control.import)
|
||||||
|
(import "as" @keyword.control.import)
|
||||||
|
(import "from" @keyword.control.import)
|
||||||
|
(export "export" @keyword.control.import)
|
||||||
|
(export "as" @keyword.control.import)
|
||||||
|
|
||||||
|
[
|
||||||
|
"true"
|
||||||
|
"false"
|
||||||
|
"Int"
|
||||||
|
"Nat"
|
||||||
|
"Bool"
|
||||||
|
] @constant.builtin
|
||||||
|
|
||||||
|
[
|
||||||
|
";"
|
||||||
|
"."
|
||||||
|
","
|
||||||
|
] @punctuation.delimiter
|
||||||
|
|
||||||
|
[
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
"*"
|
||||||
|
"/"
|
||||||
|
"%"
|
||||||
|
"<"
|
||||||
|
"<="
|
||||||
|
"="
|
||||||
|
"=="
|
||||||
|
"!="
|
||||||
|
"=>"
|
||||||
|
">"
|
||||||
|
">="
|
||||||
|
"^"
|
||||||
|
"->"
|
||||||
|
] @operator
|
||||||
|
|
||||||
|
(infix_and "and" @operator)
|
||||||
|
(infix_or "or" @operator)
|
||||||
|
(infix_iff "iff" @operator)
|
||||||
|
(infix_implies "implies" @operator)
|
||||||
|
|
||||||
|
(braced_and "and" @keyword)
|
||||||
|
(braced_or "or" @keyword)
|
||||||
|
(braced_all "all" @keyword)
|
||||||
|
(braced_any "any" @keyword)
|
||||||
|
|
||||||
|
[
|
||||||
|
"("
|
||||||
|
")"
|
||||||
|
"["
|
||||||
|
"]"
|
||||||
|
"{"
|
||||||
|
"}"
|
||||||
|
] @punctuation.bracket
|
||||||
|
|
||||||
|
(polymorphic_type
|
||||||
|
(type) @type.parameter)
|
||||||
|
|
||||||
|
(variant_constructor) @type.enum.variant
|
||||||
|
|
||||||
|
(type) @type
|
||||||
|
(int_literal) @constant.numeric.integer
|
||||||
|
(comment) @comment
|
||||||
|
(string) @string
|
||||||
|
|
||||||
|
(operator_application
|
||||||
|
operator: (qualified_identifier) @function)
|
||||||
|
|
||||||
|
(operator_definition
|
||||||
|
name: (qualified_identifier) @function
|
||||||
|
arguments: (typed_argument_list))
|
@ -12,6 +12,8 @@
|
|||||||
(unicode_string_literal)
|
(unicode_string_literal)
|
||||||
(yul_string_literal)
|
(yul_string_literal)
|
||||||
] @string
|
] @string
|
||||||
|
(hex_string_literal "hex" @string.special.symbol)
|
||||||
|
(unicode_string_literal "unicode" @string.special.symbol)
|
||||||
[
|
[
|
||||||
(number_literal)
|
(number_literal)
|
||||||
(yul_decimal_number)
|
(yul_decimal_number)
|
||||||
@ -20,6 +22,7 @@
|
|||||||
[
|
[
|
||||||
(true)
|
(true)
|
||||||
(false)
|
(false)
|
||||||
|
(yul_boolean)
|
||||||
] @constant.builtin.boolean
|
] @constant.builtin.boolean
|
||||||
|
|
||||||
(comment) @comment
|
(comment) @comment
|
||||||
|
@ -1,13 +1,15 @@
|
|||||||
|
# Author : portalsurfer <https://github.com/PORTALSURFER>
|
||||||
|
|
||||||
inherits = "hex_steel"
|
inherits = "hex_steel"
|
||||||
|
|
||||||
[palette]
|
[palette]
|
||||||
t1 = "#0e0e0d"
|
t1 = "#0e0e0d"
|
||||||
t2 = "#121311"
|
t2 = "#181a17"
|
||||||
t3 = "#2b3444"
|
t3 = "#2b3444"
|
||||||
t4 = "#61586f"
|
t4 = "#61586f"
|
||||||
t5 = "#686e73"
|
t5 = "#686e73"
|
||||||
t6 = "#878480"
|
t6 = "#878480"
|
||||||
t7 = "#897dca"
|
t7 = "#8e80de"
|
||||||
t8 = "#7b89a3"
|
t8 = "#7b89a3"
|
||||||
t9 = "#bcb6ba"
|
t9 = "#bcb6ba"
|
||||||
t10 = "#9db2b8"
|
t10 = "#9db2b8"
|
||||||
@ -20,12 +22,20 @@ highlight_three = "#29bbff"
|
|||||||
black = "#000000"
|
black = "#000000"
|
||||||
|
|
||||||
selection = "#290019"
|
selection = "#290019"
|
||||||
|
selection_fg = "#958e9a"
|
||||||
|
|
||||||
comment = "#9aacfe"
|
comment = "#404768"
|
||||||
comment_doc = "#0affa9"
|
comment_doc = "#0affa9"
|
||||||
|
|
||||||
error = "#ff0900"
|
error = "#ff0900"
|
||||||
warning = "#ffbf00"
|
warning = "#ffbf00"
|
||||||
display = "#57ff89"
|
display = "#57ff89"
|
||||||
info = "#dad7d5"
|
info = "#dad7d5"
|
||||||
#
|
|
||||||
|
hints = "#44273f"
|
||||||
|
ruler = "#1c1f1b"
|
||||||
|
|
||||||
|
diff_minus = "#ff4000"
|
||||||
|
diff_delta = "#0078bd"
|
||||||
|
diff_plus = "#c9d400"
|
||||||
|
diff_delta_moved = "#0048bd"
|
41
runtime/themes/hex_poison.toml
Normal file
41
runtime/themes/hex_poison.toml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
# Author : portalsurfer <https://github.com/PORTALSURFER>
|
||||||
|
|
||||||
|
inherits = "hex_steel"
|
||||||
|
|
||||||
|
[palette]
|
||||||
|
t1 = "#121211"
|
||||||
|
t2 = "#1e1f1b"
|
||||||
|
t3 = "#4c513a"
|
||||||
|
t4 = "#5a6052"
|
||||||
|
t5 = "#6f6d6f"
|
||||||
|
t8 = "#7e808a"
|
||||||
|
t7 = "#b1b354"
|
||||||
|
t10 = "#6fa197"
|
||||||
|
t9 = "#3f4a4e"
|
||||||
|
t6 = "#98acaa"
|
||||||
|
t11 = "#6fd7a8"
|
||||||
|
|
||||||
|
highlight = "#ff2e5f"
|
||||||
|
highlight_two = "#0affa9"
|
||||||
|
highlight_three = "#d7ff52"
|
||||||
|
|
||||||
|
black = "#000000"
|
||||||
|
|
||||||
|
selection = "#290019"
|
||||||
|
selection_fg = "#c8e732"
|
||||||
|
|
||||||
|
comment = "#396884"
|
||||||
|
comment_doc = "#234048"
|
||||||
|
|
||||||
|
error = "#c73500"
|
||||||
|
warning = "#dcbb00"
|
||||||
|
display = "#57ff89"
|
||||||
|
info = "#dad7d5"
|
||||||
|
|
||||||
|
hints = "#313d3c"
|
||||||
|
ruler = "#21221e"
|
||||||
|
|
||||||
|
diff_minus = "#ff4000"
|
||||||
|
diff_delta = "#16a7c7"
|
||||||
|
diff_plus = "#c9d400"
|
||||||
|
diff_delta_moved = "#0048bd"
|
@ -1,14 +1,16 @@
|
|||||||
|
# Author : portalsurfer <https://github.com/PORTALSURFER>
|
||||||
|
|
||||||
"comment" = { fg = "comment" }
|
"comment" = { fg = "comment" }
|
||||||
"comment.block.documentation" = { bg = "comment_doc", modifiers = ["italic"] }
|
"comment.block.documentation" = { bg = "comment_doc", modifiers = ["italic"] }
|
||||||
|
|
||||||
"constant" = { fg = "t11" }
|
"constant" = { fg = "t11" }
|
||||||
"function" = { fg = "t10" }
|
"function" = { fg = "t10" }
|
||||||
"function.method" = { fg = "t10" }
|
"function.method" = { fg = "t7" }
|
||||||
"function.macro" = { fg = "t7" }
|
"function.macro" = { fg = "t7" }
|
||||||
"keyword.storage.modifier" = { fg = "t7" }
|
"keyword.storage.modifier" = { fg = "t7" }
|
||||||
"keyword.control.import" = { fg = "t8" }
|
"keyword.control.import" = { fg = "t8" }
|
||||||
"keyword.control" = { fg = "t8" }
|
"keyword.control" = { fg = "t8" }
|
||||||
"keyword.function" = { fg = "t7" }
|
"keyword.function" = { fg = "t11" }
|
||||||
"keyword" = { fg = "t6" }
|
"keyword" = { fg = "t6" }
|
||||||
"operator" = { fg = "t8" }
|
"operator" = { fg = "t8" }
|
||||||
"punctuation" = { fg = "t9" }
|
"punctuation" = { fg = "t9" }
|
||||||
@ -18,6 +20,8 @@
|
|||||||
"type" = { fg = "t8", modifiers = ["bold"] }
|
"type" = { fg = "t8", modifiers = ["bold"] }
|
||||||
"namespace" = { fg = "t6", modifiers = ["bold"] }
|
"namespace" = { fg = "t6", modifiers = ["bold"] }
|
||||||
"variable" = { fg = "t4" }
|
"variable" = { fg = "t4" }
|
||||||
|
"variable.parameter" = { fg = "t6" }
|
||||||
|
"variable.other.member" = { fg = "t3" }
|
||||||
"label" = { fg = "t4" }
|
"label" = { fg = "t4" }
|
||||||
|
|
||||||
"diff.plus" = { fg = "diff_plus" }
|
"diff.plus" = { fg = "diff_plus" }
|
||||||
@ -25,10 +29,12 @@
|
|||||||
"diff.delta.moved" = { fg = "diff_delta_moved" }
|
"diff.delta.moved" = { fg = "diff_delta_moved" }
|
||||||
"diff.minus" = { fg = "diff_minus" }
|
"diff.minus" = { fg = "diff_minus" }
|
||||||
|
|
||||||
"ui.cursor.insert" = { fg = "t2", bg = "highlight" }
|
"ui.cursor.primary.insert" = { fg = "t2", bg = "highlight" }
|
||||||
"ui.cursor.select" = { fg = "t2", bg = "highlight_two" }
|
"ui.cursor.primary.select" = { fg = "t2", bg = "highlight_two" }
|
||||||
"ui.cursor" = { fg = "t1", bg = "highlight_three" }
|
"ui.cursor.primary" = { fg = "t1", bg = "highlight_three" }
|
||||||
"ui.cursor.match" = { fg = "highlight", bg = "selection", modifiers = ["bold"] }
|
"ui.cursor.match" = { fg = "highlight", bg = "t1", modifiers = ["bold"] }
|
||||||
|
"ui.cursorline.primary" = { bg = "ruler" }
|
||||||
|
"ui.cursorline.secondary" = { bg = "ruler" }
|
||||||
|
|
||||||
"ui.linenr" = { fg = "t3", bg = "t2" }
|
"ui.linenr" = { fg = "t3", bg = "t2" }
|
||||||
"ui.linenr.selected" = { fg = "highlight_three", bg = "t2" }
|
"ui.linenr.selected" = { fg = "highlight_three", bg = "t2" }
|
||||||
@ -42,10 +48,7 @@
|
|||||||
"ui.popup" = { fg = "t4", bg = "t1" }
|
"ui.popup" = { fg = "t4", bg = "t1" }
|
||||||
"ui.window" = { fg = "t4" }
|
"ui.window" = { fg = "t4" }
|
||||||
|
|
||||||
"ui.selection.primary" = { bg = "selection" }
|
"ui.selection" = { fg = "selection_fg", bg = "selection" }
|
||||||
"ui.selection" = { bg = "selection" }
|
|
||||||
|
|
||||||
"ui.cursorline.primary" = { bg = "t1" }
|
|
||||||
|
|
||||||
"ui.statusline" = { fg = "t4", bg = "t1" }
|
"ui.statusline" = { fg = "t4", bg = "t1" }
|
||||||
"ui.statusline.inactive" = { fg = "t4", bg = "t1" }
|
"ui.statusline.inactive" = { fg = "t4", bg = "t1" }
|
||||||
@ -55,17 +58,20 @@
|
|||||||
|
|
||||||
"ui.text" = { fg = "t4" }
|
"ui.text" = { fg = "t4" }
|
||||||
"ui.text.focus" = { fg = "highlight_three", modifiers = ["bold"] }
|
"ui.text.focus" = { fg = "highlight_three", modifiers = ["bold"] }
|
||||||
#
|
|
||||||
"ui.virtual.ruler" = { bg = "t1" }
|
"ui.virtual.ruler" = { bg = "ruler" }
|
||||||
"ui.virtual.indent-guide" = { fg = "t3" }
|
"ui.virtual.indent-guide" = { fg = "t3" }
|
||||||
"ui.virtual.whitespace" = { fg = "t3" }
|
"ui.virtual.whitespace" = { fg = "t3" }
|
||||||
|
"ui.virtual.jump-label" = { fg = "t11", modifiers = ["bold"] }
|
||||||
|
"ui.virtual.inlay-hint" = { fg = "hints", modifiers = ["bold"] }
|
||||||
|
|
||||||
|
"ui.bufferline" = { fg = "t3", bg = "t1" }
|
||||||
|
"ui.bufferline.active" = { fg = "t7", bg = "t2" }
|
||||||
|
|
||||||
"diagnostic.error" = { underline = { color = "error", style = "curl" } }
|
"diagnostic.error" = { underline = { color = "error", style = "curl" } }
|
||||||
"diagnostic.warning" = { underline = { color = "warning", style = "curl" } }
|
"diagnostic.warning" = { underline = { color = "warning", style = "curl" } }
|
||||||
"diagnostic.info" = { underline = { color = "info", style = "curl" } }
|
"diagnostic.info" = { underline = { color = "info", style = "curl" } }
|
||||||
"diagnostic.hint" = { underline = { color = "display", style = "curl" } }
|
"diagnostic.hint" = { underline = { color = "display", style = "curl" } }
|
||||||
"diagnostic.unnecessary" = { modifiers = ["dim"] }
|
|
||||||
"diagnostic.deprecated" = { modifiers = ["crossed_out"] }
|
|
||||||
|
|
||||||
"error" = { fg = "error", modifiers = ["bold"] }
|
"error" = { fg = "error", modifiers = ["bold"] }
|
||||||
"warning" = { fg = "warning", modifiers = ["bold"] }
|
"warning" = { fg = "warning", modifiers = ["bold"] }
|
||||||
@ -73,14 +79,14 @@
|
|||||||
"hint" = { fg = "display", modifiers = ["bold"] }
|
"hint" = { fg = "display", modifiers = ["bold"] }
|
||||||
"special" = { fg = "t7", modifiers = ["bold"] }
|
"special" = { fg = "t7", modifiers = ["bold"] }
|
||||||
|
|
||||||
"markup.heading" = { fg = "t4" }
|
"markup.heading" = { fg = "t7" }
|
||||||
"markup.list" = { fg = "t4" }
|
"markup.list" = { fg = "t7" }
|
||||||
"markup.bold" = { fg = "t4" }
|
"markup.bold" = { fg = "t4" }
|
||||||
"markup.italic" = { fg = "t4" }
|
"markup.italic" = { fg = "t4" }
|
||||||
"markup.strikethrough" = { fg = "t4", modifiers = ["crossed_out"] }
|
"markup.strikethrough" = { fg = "t4", modifiers = ["crossed_out"] }
|
||||||
"markup.link.url" = { fg = "t4", modifiers = ["underlined"] }
|
"markup.link.url" = { fg = "t11", modifiers = ["underlined"] }
|
||||||
"markup.link.text" = { fg = "t4" }
|
"markup.link.text" = { fg = "t11" }
|
||||||
"markup.quote" = { fg = "t4" }
|
"markup.quote" = { fg = "t5" }
|
||||||
"markup.raw" = { fg = "t4" }
|
"markup.raw" = { fg = "t4" }
|
||||||
|
|
||||||
[palette]
|
[palette]
|
||||||
@ -93,25 +99,28 @@ t6 = "#6e8789"
|
|||||||
t7 = "#d85c60"
|
t7 = "#d85c60"
|
||||||
t8 = "#9bc1bb"
|
t8 = "#9bc1bb"
|
||||||
t9 = "#b5c5c5"
|
t9 = "#b5c5c5"
|
||||||
t10 = "#c0d0ce"
|
t10 = "#c3c3bd"
|
||||||
t11 = "#f78c5e"
|
t11 = "#f78c5e"
|
||||||
|
|
||||||
highlight = "#3f36f2"
|
highlight = "#f23672"
|
||||||
highlight_two = "#f69c3c"
|
highlight_two = "#f69c3c"
|
||||||
highlight_three = "#d4d987"
|
highlight_three = "#d4d987"
|
||||||
|
|
||||||
selection = "#032d4a"
|
selection = "#4a9aa6"
|
||||||
|
selection_fg = "#080a0b"
|
||||||
|
|
||||||
black = "#000000"
|
black = "#000000"
|
||||||
comment = "#d4d987"
|
comment = "#654642"
|
||||||
comment_doc = "#234048"
|
comment_doc = "#234048"
|
||||||
|
hints = "#31353c"
|
||||||
|
ruler = "#222320"
|
||||||
|
|
||||||
error = "#ff0900"
|
error = "#ff4000"
|
||||||
warning = "#ffbf00"
|
warning = "#ffbf00"
|
||||||
display = "#42baff"
|
display = "#42baff"
|
||||||
info = "#dad7d5"
|
info = "#dad7d5"
|
||||||
|
|
||||||
diff_minus = "#ff0900"
|
diff_minus = "#ff4000"
|
||||||
diff_delta = "#0078bd"
|
diff_delta = "#0078bd"
|
||||||
diff_plus = "#87a800"
|
diff_plus = "#c9d400"
|
||||||
diff_delta_moved = "#0048bd"
|
diff_delta_moved = "#0048bd"
|
||||||
|
@ -1,3 +1,5 @@
|
|||||||
|
# Author : portalsurfer <https://github.com/PORTALSURFER>
|
||||||
|
|
||||||
inherits = "hex_steel"
|
inherits = "hex_steel"
|
||||||
|
|
||||||
[palette]
|
[palette]
|
||||||
@ -19,12 +21,21 @@ highlight_three = "#f8ed8b"
|
|||||||
|
|
||||||
black = "#000000"
|
black = "#000000"
|
||||||
|
|
||||||
selection = "#382e1e"
|
selection = "#b10656"
|
||||||
|
selection_fg = "#101719"
|
||||||
|
|
||||||
comment = "#61bdd1"
|
comment = "#417e8c"
|
||||||
comment_doc = "#234048"
|
comment_doc = "#234048"
|
||||||
|
|
||||||
error = "#ff0900"
|
error = "#ff0900"
|
||||||
warning = "#ffbf00"
|
warning = "#ffbf00"
|
||||||
display = "#57ff89"
|
display = "#57ff89"
|
||||||
info = "#dad7d5"
|
info = "#dad7d5"
|
||||||
|
|
||||||
|
hints = "#39515c"
|
||||||
|
ruler = "#1e3039"
|
||||||
|
|
||||||
|
diff_minus = "#ff4000"
|
||||||
|
diff_delta = "#0078bd"
|
||||||
|
diff_plus = "#c9d400"
|
||||||
|
diff_delta_moved = "#0048bd"
|
159
runtime/themes/sunset.toml
Normal file
159
runtime/themes/sunset.toml
Normal file
@ -0,0 +1,159 @@
|
|||||||
|
# Sunset
|
||||||
|
# Author : Egor Afanasin <afanasin.egor@gmail.com>
|
||||||
|
# Repo: https://github.com/pithecantrope/sunset
|
||||||
|
|
||||||
|
# Syntax highlighting
|
||||||
|
# ----------------------------------------------------------------
|
||||||
|
attribute = "rose"
|
||||||
|
|
||||||
|
type = "rose"
|
||||||
|
"type.builtin" = { fg = "rose", modifiers = ["italic"] }
|
||||||
|
|
||||||
|
constructor = "wood"
|
||||||
|
|
||||||
|
constant = "fire"
|
||||||
|
"constant.builtin" = { fg = "fire", modifiers = ["italic"] }
|
||||||
|
"constant.character" = "wood"
|
||||||
|
"constant.character.escape" = "pink"
|
||||||
|
"constant.numeric" = "wood"
|
||||||
|
|
||||||
|
string = "grass"
|
||||||
|
"string.regexp" = "pink"
|
||||||
|
"string.special" = "rose"
|
||||||
|
"string.special.symbol" = "fire"
|
||||||
|
|
||||||
|
comment = { fg = "cmnt", modifiers = ["italic"] }
|
||||||
|
"comment.block.documentation" = "grass"
|
||||||
|
|
||||||
|
variable = "text"
|
||||||
|
"variable.builtin" = { fg = "sky", modifiers = ["italic"] }
|
||||||
|
# TODO: variable.parameter
|
||||||
|
"variable.other.member" = "mud"
|
||||||
|
|
||||||
|
label = "sky"
|
||||||
|
|
||||||
|
punctuation = "cmnt"
|
||||||
|
"punctuation.special" = "wine"
|
||||||
|
|
||||||
|
keyword = "sun"
|
||||||
|
"keyword.control.return" = { fg = "sun", modifiers = ["italic"] }
|
||||||
|
"keyword.control.exception" = { fg = "sun", modifiers = ["italic"] }
|
||||||
|
"keyword.directive" = "sky"
|
||||||
|
|
||||||
|
operator = "wine"
|
||||||
|
|
||||||
|
function = "peach"
|
||||||
|
"function.builtin" = { fg = "peach", modifiers = ["italic"] }
|
||||||
|
"function.macro" = "pink"
|
||||||
|
|
||||||
|
tag = "peach"
|
||||||
|
|
||||||
|
namespace = { fg = "pink", modifiers = ["italic"] }
|
||||||
|
|
||||||
|
special = "sky"
|
||||||
|
|
||||||
|
# Editor interface
|
||||||
|
# ----------------------------------------------------------------
|
||||||
|
"markup.heading.marker" = "sun"
|
||||||
|
"markup.heading.1" = "attn"
|
||||||
|
"markup.heading.2" = "fire"
|
||||||
|
"markup.heading.3" = "rose"
|
||||||
|
"markup.heading.4" = "peach"
|
||||||
|
"markup.heading.5" = "wine"
|
||||||
|
"markup.heading.6" = "grass"
|
||||||
|
|
||||||
|
"markup.list" = "wood"
|
||||||
|
|
||||||
|
"markup.bold" = { modifiers = ["bold"] }
|
||||||
|
"markup.italic" = { modifiers = ["italic"] }
|
||||||
|
"markup.strikethrough" = { modifiers = ["crossed_out"] }
|
||||||
|
|
||||||
|
"markup.link.url" = { fg = "sky", underline.style = "line" }
|
||||||
|
"markup.link.label" = { fg = "sky", modifiers = ["italic"] }
|
||||||
|
"markup.link.text" = "mud"
|
||||||
|
|
||||||
|
"markup.quote" = "grass"
|
||||||
|
|
||||||
|
"markup.raw" = "pink"
|
||||||
|
|
||||||
|
"diff.plus" = "grass"
|
||||||
|
"diff.minus" = "attn"
|
||||||
|
"diff.delta" = "sky"
|
||||||
|
|
||||||
|
# User interface
|
||||||
|
# ----------------------------------------------------------------
|
||||||
|
"ui.background" = { fg = "text", bg = "base" }
|
||||||
|
|
||||||
|
"ui.cursor" = { modifiers = ["reversed"] }
|
||||||
|
"ui.cursor.match" = { fg = "attn", modifiers = ["bold"] }
|
||||||
|
|
||||||
|
# TODO: ui.debug
|
||||||
|
|
||||||
|
"ui.linenr" = "block"
|
||||||
|
"ui.linenr.selected" = "cmnt"
|
||||||
|
|
||||||
|
"ui.statusline" = { bg = "block" }
|
||||||
|
"ui.statusline.inactive" = { fg = "cmnt" }
|
||||||
|
"ui.statusline.normal" = { fg = "block", bg = "sun", modifiers = ["bold"] }
|
||||||
|
"ui.statusline.insert" = { fg = "block", bg = "grass", modifiers = ["bold"] }
|
||||||
|
"ui.statusline.select" = { fg = "block", bg = "wine", modifiers = ["bold"] }
|
||||||
|
|
||||||
|
"ui.bufferline" = { fg = "cmnt", bg = "block" }
|
||||||
|
"ui.bufferline.active" = "sun"
|
||||||
|
|
||||||
|
"ui.popup" = { fg = "text", bg = "base" }
|
||||||
|
"ui.popup.info" = { fg = "text", bg = "block" }
|
||||||
|
|
||||||
|
"ui.window" = { fg = "block", modifiers = ["bold"] }
|
||||||
|
|
||||||
|
"ui.help" = { fg = "text", bg = "block" }
|
||||||
|
|
||||||
|
"ui.text" = { fg = "text", bg = "base" }
|
||||||
|
"ui.text.focus" = "sun"
|
||||||
|
"ui.text.inactive" = { fg = "cmnt", modifiers = ["italic"] }
|
||||||
|
"ui.text.info" = { bg = "block" }
|
||||||
|
|
||||||
|
"ui.virtual" = { fg = "block" }
|
||||||
|
"ui.virtual.ruler" = { bg = "block" }
|
||||||
|
"ui.virtual.indent-guide" = "sel"
|
||||||
|
"ui.virtual.jump-label" = { fg = "attn", modifiers = ["bold"] }
|
||||||
|
|
||||||
|
"ui.menu" = { fg = "text", bg = "base" }
|
||||||
|
"ui.menu.selected" = { bg = "sel" }
|
||||||
|
"ui.menu.scroll" = "sel"
|
||||||
|
|
||||||
|
"ui.selection" = { bg = "sel" }
|
||||||
|
|
||||||
|
"ui.highlight" = { bg = "sel" }
|
||||||
|
|
||||||
|
error = "attn"
|
||||||
|
warning = "fire"
|
||||||
|
info = "pink"
|
||||||
|
hint = "sky"
|
||||||
|
|
||||||
|
diagnostic = { underline.style = "line" }
|
||||||
|
|
||||||
|
[palette]
|
||||||
|
# Reddish
|
||||||
|
fire = "#EE7711"
|
||||||
|
rose = "#EE7777"
|
||||||
|
peach = "#EEBB77"
|
||||||
|
pink = "#EEAAAA"
|
||||||
|
wood = "#997755"
|
||||||
|
|
||||||
|
# Greenish
|
||||||
|
grass = "#66CC33"
|
||||||
|
mud = "#BBCC77"
|
||||||
|
sun = "#EEEE11"
|
||||||
|
|
||||||
|
# Bluish
|
||||||
|
sky = "#77AAAA"
|
||||||
|
wine = "#775599"
|
||||||
|
|
||||||
|
# Ui
|
||||||
|
base = "#111111"
|
||||||
|
block = "#222222"
|
||||||
|
sel = "#333333"
|
||||||
|
cmnt = "#777777"
|
||||||
|
text = "#EEEEEE"
|
||||||
|
attn = "#EE1111"
|
Loading…
Reference in New Issue
Block a user