1494 lines
34 KiB
Nix
1494 lines
34 KiB
Nix
{
|
|
# don't ask....
|
|
programs.yazi =
|
|
{
|
|
enable = true;
|
|
settings = {
|
|
log = {
|
|
enabled = false;
|
|
};
|
|
opener = {
|
|
|
|
folder = [
|
|
{
|
|
run = "open - R \"$@\"";
|
|
orphan = true;
|
|
display_name = "Reveal in Finder";
|
|
}
|
|
{
|
|
run = "$EDITOR \"$@\"";
|
|
orphan = true;
|
|
}
|
|
];
|
|
archive = [
|
|
{
|
|
run = "unar \"$1\"";
|
|
display_name = "Extract here";
|
|
}
|
|
];
|
|
text = [
|
|
{
|
|
run = "$EDITOR \"$@\"";
|
|
orphan = true;
|
|
}
|
|
];
|
|
image = [
|
|
{
|
|
run = "imv \"$@\"";
|
|
orphan = true;
|
|
display_name = "Open";
|
|
}
|
|
{
|
|
run = "exiftool \"$1\"; echo \"Press enter to exit\"; read";
|
|
block = true;
|
|
display_name = "Show EXIF";
|
|
}
|
|
];
|
|
pdf = [{
|
|
run = "zathura \"$@\"";
|
|
orphan = true;
|
|
display_name = "Open";
|
|
}];
|
|
video = [
|
|
{
|
|
run = "mpv \"$@\"";
|
|
orphan = true;
|
|
}
|
|
{
|
|
run = "mediainfo \"$1\"; echo \"Press enter to exit\"; read";
|
|
block = true;
|
|
display_name = "Show media info";
|
|
}
|
|
];
|
|
audio = [
|
|
{
|
|
run = "xdg-open \"$@\"";
|
|
orphan = true;
|
|
}
|
|
{ run = "mediainfo \"$1\"; echo \"Press enter to exit\"; read"; block = true; display_name = "Show media info"; }
|
|
];
|
|
fallback = [
|
|
{
|
|
run = "xdg-open \"$@\"";
|
|
orphan = true;
|
|
display_name = "Open";
|
|
}
|
|
{
|
|
run = "xdg-open - R \"$@\"";
|
|
orphan = true;
|
|
display_name = "Reveal in Finder";
|
|
}
|
|
];
|
|
};
|
|
plugin = {
|
|
prepend_previewers = [
|
|
{
|
|
name = "*.md";
|
|
run = "glow";
|
|
}
|
|
{ mime = "text/csv"; run = "miller"; }
|
|
];
|
|
};
|
|
};
|
|
keymap =
|
|
{
|
|
manager.keymap = [
|
|
{
|
|
on = [
|
|
"<Esc>"
|
|
];
|
|
run = "escape";
|
|
desc = "Exit visual mode clear selected or cancel search";
|
|
}
|
|
{
|
|
on = [
|
|
"q"
|
|
];
|
|
run = "quit";
|
|
desc = "Exit the process";
|
|
}
|
|
{
|
|
on = [
|
|
"Q"
|
|
];
|
|
run = "quit --no-cwd-file";
|
|
desc = "Exit the process without writing cwd-file";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-q>"
|
|
];
|
|
run = "close";
|
|
desc = "Close the current tab or quit if it is last tab";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-z>"
|
|
];
|
|
run = "suspend";
|
|
desc = "Suspend the process";
|
|
}
|
|
|
|
# Navigation
|
|
{
|
|
on = [
|
|
"l"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"k"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"L"
|
|
];
|
|
run = "arrow -5";
|
|
desc = "Move cursor up 5 lines";
|
|
}
|
|
{
|
|
on = [
|
|
"K"
|
|
];
|
|
run = "arrow 5";
|
|
desc = "Move cursor down 5 lines";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<C-u>"
|
|
];
|
|
run = "arrow -50%";
|
|
desc = "Move cursor up half page";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-d>"
|
|
];
|
|
run = "arrow 50%";
|
|
desc = "Move cursor down half page";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-b>"
|
|
];
|
|
run = "arrow -100%";
|
|
desc = "Move cursor up one page";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-f>"
|
|
];
|
|
run = "arrow 100%";
|
|
desc = "Move cursor down one page";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"j"
|
|
];
|
|
run = "leave";
|
|
desc = "Go back to the parent directory";
|
|
}
|
|
{
|
|
on = [
|
|
";"
|
|
];
|
|
run = "enter";
|
|
desc = "Enter the child directory";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"J"
|
|
];
|
|
run = "back";
|
|
desc = "Go back to the previous directory";
|
|
}
|
|
{
|
|
on = [
|
|
"P"
|
|
];
|
|
run = "forward";
|
|
desc = "Go forward to the next directory";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<C-k>"
|
|
];
|
|
run = "peek -5";
|
|
desc = "Peek up 5 units in the preview";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-j>"
|
|
];
|
|
run = "peek 5";
|
|
desc = "Peek down 5 units in the preview";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<Up>"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"<Down>"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
{
|
|
on = [
|
|
"<Left>"
|
|
];
|
|
run = "leave";
|
|
desc = "Go back to the parent directory";
|
|
}
|
|
{
|
|
on = [
|
|
"<Right>"
|
|
];
|
|
run = "enter";
|
|
desc = "Enter the child directory";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"g"
|
|
"g"
|
|
];
|
|
run = "arrow -99999999";
|
|
desc = "Move cursor to the top";
|
|
}
|
|
{
|
|
on = [
|
|
"G"
|
|
];
|
|
run = "arrow 99999999";
|
|
desc = "Move cursor to the bottom";
|
|
}
|
|
|
|
# Selection
|
|
{
|
|
on = [
|
|
"v"
|
|
];
|
|
run = "visual_mode";
|
|
desc = "Enter visual mode (selection mode)";
|
|
}
|
|
{
|
|
on = [
|
|
"V"
|
|
];
|
|
run = "visual_mode --unset";
|
|
desc = "Enter visual mode (unset mode)";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-a>"
|
|
];
|
|
run = "select_all --state=true";
|
|
desc = "Select all files";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-r>"
|
|
];
|
|
run = "select_all --state=none";
|
|
desc = "Inverse selection of all files";
|
|
}
|
|
|
|
# Operation
|
|
{
|
|
on = [
|
|
"o"
|
|
];
|
|
run = "open";
|
|
desc = "Open the selected files";
|
|
}
|
|
{
|
|
on = [
|
|
"O"
|
|
];
|
|
run = "open --interactive";
|
|
desc = "Open the selected files interactively";
|
|
}
|
|
{
|
|
on = [
|
|
"<Enter>"
|
|
];
|
|
run = "open";
|
|
desc = "Open the selected files";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-Enter>"
|
|
];
|
|
run = "open --interactive";
|
|
desc = "Open the selected files interactively";
|
|
} # It's cool if you're using a terminal that supports CSI u
|
|
{
|
|
on = [
|
|
"y"
|
|
];
|
|
run = "yank";
|
|
desc = "Copy the selected files";
|
|
}
|
|
{
|
|
on = [
|
|
"x"
|
|
];
|
|
run = "yank --cut";
|
|
desc = "Cut the selected files";
|
|
}
|
|
{
|
|
on = [
|
|
"p"
|
|
];
|
|
run = "paste";
|
|
desc = "Paste the files";
|
|
}
|
|
{
|
|
on = [
|
|
"P"
|
|
];
|
|
run = "paste --force";
|
|
desc = "Paste the files (overwrite if the destination exists)";
|
|
}
|
|
{
|
|
on = [
|
|
"-"
|
|
];
|
|
run = "link";
|
|
desc = "Symlink the absolute path of files";
|
|
}
|
|
{
|
|
on = [
|
|
"_"
|
|
];
|
|
run = "link --relative";
|
|
desc = "Symlink the relative path of files";
|
|
}
|
|
{
|
|
on = [
|
|
"d"
|
|
];
|
|
run = "remove";
|
|
desc = "Move the files to the trash";
|
|
}
|
|
{
|
|
on = [
|
|
"D"
|
|
];
|
|
run = "remove --permanently";
|
|
desc = "Permanently delete the files";
|
|
}
|
|
{
|
|
on = [
|
|
"a"
|
|
];
|
|
run = "create";
|
|
desc = "Create a file or directory (ends with / for directories)";
|
|
}
|
|
{
|
|
on = [
|
|
"r"
|
|
];
|
|
run = "rename";
|
|
desc = "Rename a file or directory";
|
|
}
|
|
{
|
|
on = [
|
|
";"
|
|
];
|
|
run = "shell";
|
|
desc = "Run a shell command";
|
|
}
|
|
{
|
|
on = [
|
|
":"
|
|
];
|
|
run = "shell --block";
|
|
desc = "Run a shell command (block the UI until the command finishes)";
|
|
}
|
|
{
|
|
on = [
|
|
"."
|
|
];
|
|
run = "hidden toggle";
|
|
desc = "Toggle the visibility of hidden files";
|
|
}
|
|
{
|
|
on = [
|
|
"<Space>"
|
|
"f"
|
|
"g>"
|
|
];
|
|
run = "search fd";
|
|
desc = "Search files by name using fd";
|
|
}
|
|
{
|
|
on = [
|
|
"<Space>"
|
|
"f"
|
|
"G>"
|
|
];
|
|
run = "search rg";
|
|
desc = "Search files by content using ripgrep";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-s>"
|
|
];
|
|
run = "search none";
|
|
desc = "Cancel the ongoing search";
|
|
}
|
|
{
|
|
on = [
|
|
"z"
|
|
];
|
|
run = "jump zoxide";
|
|
desc = "Jump to a directory using zoxide";
|
|
}
|
|
{
|
|
on = [
|
|
"Z"
|
|
];
|
|
run = "jump fzf";
|
|
desc = "Jump to a directory or reveal a file using fzf";
|
|
}
|
|
|
|
# Copy
|
|
{
|
|
on = [
|
|
"c"
|
|
"c"
|
|
];
|
|
run = "copy path";
|
|
desc = "Copy the absolute path";
|
|
}
|
|
{
|
|
on = [
|
|
"c"
|
|
"d"
|
|
];
|
|
run = "copy dirname";
|
|
desc = "Copy the path of the parent directory";
|
|
}
|
|
{
|
|
on = [
|
|
"c"
|
|
"f"
|
|
];
|
|
run = "copy filename";
|
|
desc = "Copy the name of the file";
|
|
}
|
|
{
|
|
on = [
|
|
"c"
|
|
"n"
|
|
];
|
|
run = "copy name_without_ext";
|
|
desc = "Copy the name of the file without the extension";
|
|
}
|
|
|
|
# Find
|
|
{
|
|
on = [
|
|
"/"
|
|
];
|
|
run = "find --smart";
|
|
}
|
|
{
|
|
on = [
|
|
"?"
|
|
];
|
|
run = "find --previous --smart";
|
|
}
|
|
{
|
|
on = [
|
|
"n"
|
|
];
|
|
run = "find_arrow";
|
|
}
|
|
{
|
|
on = [
|
|
"N"
|
|
];
|
|
run = "find_arrow --previous";
|
|
}
|
|
|
|
# Sorting
|
|
{
|
|
on = [
|
|
","
|
|
"a"
|
|
];
|
|
run = "sort alphabetical --dir_first";
|
|
desc = "Sort alphabetically";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"A"
|
|
];
|
|
run = "sort alphabetical --reverse --dir_first";
|
|
desc = "Sort alphabetically (reverse)";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"c"
|
|
];
|
|
run = "sort created --dir_first";
|
|
desc = "Sort by creation time";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"C"
|
|
];
|
|
run = "sort created --reverse --dir_first";
|
|
desc = "Sort by creation time (reverse)";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"m"
|
|
];
|
|
run = "sort modified --dir_first";
|
|
desc = "Sort by modified time";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"M"
|
|
];
|
|
run = "sort modified --reverse --dir_first";
|
|
desc = "Sort by modified time (reverse)";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"n"
|
|
];
|
|
run = "sort natural --dir_first";
|
|
desc = "Sort naturally";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"N"
|
|
];
|
|
run = "sort natural --reverse --dir_first";
|
|
desc = "Sort naturally (reverse)";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"s"
|
|
];
|
|
run = "sort size --dir_first";
|
|
desc = "Sort by size";
|
|
}
|
|
{
|
|
on = [
|
|
","
|
|
"S"
|
|
];
|
|
run = "sort size --reverse --dir_first";
|
|
desc = "Sort by size (reverse)";
|
|
}
|
|
|
|
# Tabs
|
|
{
|
|
on = [
|
|
"t"
|
|
];
|
|
run = "tab_create --current";
|
|
desc = "Create a new tab using the current path";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"1"
|
|
];
|
|
run = "tab_switch 0";
|
|
desc = "Switch to the first tab";
|
|
}
|
|
{
|
|
on = [
|
|
"2"
|
|
];
|
|
run = "tab_switch 1";
|
|
desc = "Switch to the second tab";
|
|
}
|
|
{
|
|
on = [
|
|
"3"
|
|
];
|
|
run = "tab_switch 2";
|
|
desc = "Switch to the third tab";
|
|
}
|
|
{
|
|
on = [
|
|
"4"
|
|
];
|
|
run = "tab_switch 3";
|
|
desc = "Switch to the fourth tab";
|
|
}
|
|
{
|
|
on = [
|
|
"5"
|
|
];
|
|
run = "tab_switch 4";
|
|
desc = "Switch to the fifth tab";
|
|
}
|
|
{
|
|
on = [
|
|
"6"
|
|
];
|
|
run = "tab_switch 5";
|
|
desc = "Switch to the sixth tab";
|
|
}
|
|
{
|
|
on = [
|
|
"7"
|
|
];
|
|
run = "tab_switch 6";
|
|
desc = "Switch to the seventh tab";
|
|
}
|
|
{
|
|
on = [
|
|
"8"
|
|
];
|
|
run = "tab_switch 7";
|
|
desc = "Switch to the eighth tab";
|
|
}
|
|
{
|
|
on = [
|
|
"9"
|
|
];
|
|
run = "tab_switch 8";
|
|
desc = "Switch to the ninth tab";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"["
|
|
];
|
|
run = "tab_switch -1 --relative";
|
|
desc = "Switch to the previous tab";
|
|
}
|
|
{
|
|
on = [
|
|
"]"
|
|
];
|
|
run = "tab_switch 1 --relative";
|
|
desc = "Switch to the next tab";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"{"
|
|
];
|
|
run = "tab_swap -1";
|
|
desc = "Swap the current tab with the previous tab";
|
|
}
|
|
{
|
|
on = [
|
|
"}"
|
|
];
|
|
run = "tab_swap 1";
|
|
desc = "Swap the current tab with the next tab";
|
|
}
|
|
|
|
# Tasks
|
|
{
|
|
on = [
|
|
"w"
|
|
];
|
|
run = "tasks_show";
|
|
desc = "Show the tasks manager";
|
|
}
|
|
|
|
# Goto
|
|
{
|
|
on = [
|
|
"g"
|
|
"h"
|
|
];
|
|
run = "cd ~";
|
|
desc = "Go to the home directory";
|
|
}
|
|
{
|
|
on = [
|
|
"g"
|
|
"c"
|
|
];
|
|
run = "cd ~/.config";
|
|
desc = "Go to the config directory";
|
|
}
|
|
{
|
|
on = [
|
|
"g"
|
|
"d"
|
|
];
|
|
run = "cd ~/Downloads";
|
|
desc = "Go to the downloads directory";
|
|
}
|
|
{
|
|
on = [
|
|
"g"
|
|
"t"
|
|
];
|
|
run = "cd /tmp";
|
|
desc = "Go to the temporary directory";
|
|
}
|
|
{
|
|
on = [
|
|
"g"
|
|
"<Space>"
|
|
];
|
|
run = "cd --interactive";
|
|
desc = "Go to a directory interactively";
|
|
}
|
|
|
|
# Help
|
|
{
|
|
on = [
|
|
"~"
|
|
];
|
|
run = "help";
|
|
desc = "Open help";
|
|
}
|
|
];
|
|
|
|
tasks.keymap = [
|
|
{
|
|
on = [
|
|
"<Esc>"
|
|
];
|
|
run = "close";
|
|
desc = "Hide the task manager";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-q>"
|
|
];
|
|
run = "close";
|
|
desc = "Hide the task manager";
|
|
}
|
|
{
|
|
on = [
|
|
"w"
|
|
];
|
|
run = "close";
|
|
desc = "Hide the task manager";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"k"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"j"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<Up>"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"<Down>"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<Enter>"
|
|
];
|
|
run = "inspect";
|
|
desc = "Inspect the task";
|
|
}
|
|
{
|
|
on = [
|
|
"x"
|
|
];
|
|
run = "cancel";
|
|
desc = "Cancel the task";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"~"
|
|
];
|
|
run = "help";
|
|
desc = "Open help";
|
|
}
|
|
];
|
|
|
|
|
|
select.keymap = [
|
|
{
|
|
on = [
|
|
"<C-q>"
|
|
];
|
|
run = "close";
|
|
desc = "Cancel selection";
|
|
}
|
|
{
|
|
on = [
|
|
"<Esc>"
|
|
];
|
|
run = "close";
|
|
desc = "Cancel selection";
|
|
}
|
|
{
|
|
on = [
|
|
"<Enter>"
|
|
];
|
|
run = "close --submit";
|
|
desc = "Submit the selection";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"k"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"j"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"K"
|
|
];
|
|
run = "arrow -5";
|
|
desc = "Move cursor up 5 lines";
|
|
}
|
|
{
|
|
on = [
|
|
"J"
|
|
];
|
|
run = "arrow 5";
|
|
desc = "Move cursor down 5 lines";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<Up>"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"<Down>"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"~"
|
|
];
|
|
run = "help";
|
|
desc = "Open help";
|
|
}
|
|
];
|
|
|
|
|
|
input.keymap = [
|
|
{
|
|
on = [
|
|
"<C-q>"
|
|
];
|
|
run = "close";
|
|
desc = "Cancel input";
|
|
}
|
|
{
|
|
on = [
|
|
"<Enter>"
|
|
];
|
|
run = "close --submit";
|
|
desc = "Submit the input";
|
|
}
|
|
{
|
|
on = [
|
|
"<Esc>"
|
|
];
|
|
run = "escape";
|
|
desc = "Go back the normal mode or cancel input";
|
|
}
|
|
|
|
# Mode
|
|
{
|
|
on = [
|
|
"i"
|
|
];
|
|
run = "insert";
|
|
desc = "Enter insert mode";
|
|
}
|
|
{
|
|
on = [
|
|
"a"
|
|
];
|
|
run = "insert --append";
|
|
desc = "Enter append mode";
|
|
}
|
|
{
|
|
on = [
|
|
"v"
|
|
];
|
|
run = "visual";
|
|
desc = "Enter visual mode";
|
|
}
|
|
{
|
|
on = [
|
|
"V"
|
|
];
|
|
run = [
|
|
"move -999"
|
|
"visual"
|
|
"move 999"
|
|
];
|
|
desc = "Enter visual mode and select all";
|
|
}
|
|
|
|
# Navigation
|
|
{
|
|
on = [
|
|
"h"
|
|
];
|
|
run = "move -1";
|
|
desc = "Move cursor left";
|
|
}
|
|
{
|
|
on = [
|
|
"l"
|
|
];
|
|
run = "move 1";
|
|
desc = "Move cursor right";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"0"
|
|
];
|
|
run = "move -999";
|
|
desc = "Move to the BOL";
|
|
}
|
|
{
|
|
on = [
|
|
"$"
|
|
];
|
|
run = "move 999";
|
|
desc = "Move to the EOL";
|
|
}
|
|
{
|
|
on = [
|
|
"I"
|
|
];
|
|
run = [
|
|
"move -999"
|
|
"insert"
|
|
];
|
|
desc = "Move to the BOL and enter insert mode";
|
|
}
|
|
{
|
|
on = [
|
|
"A"
|
|
];
|
|
run = [
|
|
"move 999"
|
|
"insert --append"
|
|
];
|
|
desc = "Move to the EOL and enter append mode";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<Left>"
|
|
];
|
|
run = "move -1";
|
|
desc = "Move cursor left";
|
|
}
|
|
{
|
|
on = [
|
|
"<Right>"
|
|
];
|
|
run = "move 1";
|
|
desc = "Move cursor right";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"b"
|
|
];
|
|
run = "backward";
|
|
desc = "Move to the beginning of the previous word";
|
|
}
|
|
{
|
|
on = [
|
|
"w"
|
|
];
|
|
run = "forward";
|
|
desc = "Move to the beginning of the next word";
|
|
}
|
|
{
|
|
on = [
|
|
"e"
|
|
];
|
|
run = "forward --end-of-word";
|
|
desc = "Move to the end of the next word";
|
|
}
|
|
|
|
# Deletion
|
|
{
|
|
on = [
|
|
"d"
|
|
];
|
|
run = "delete --cut";
|
|
desc = "Cut the selected characters";
|
|
}
|
|
{
|
|
on = [
|
|
"D"
|
|
];
|
|
run = [
|
|
"delete --cut"
|
|
"move 999"
|
|
];
|
|
desc = "Cut until the EOL";
|
|
}
|
|
{
|
|
on = [
|
|
"c"
|
|
];
|
|
run = "delete --cut --insert";
|
|
desc = "Cut the selected characters and enter insert mode";
|
|
}
|
|
{
|
|
on = [
|
|
"C"
|
|
];
|
|
run = [
|
|
"delete --cut --insert"
|
|
"move 999"
|
|
];
|
|
desc = "Cut until the EOL and enter insert mode";
|
|
}
|
|
{
|
|
on = [
|
|
"x"
|
|
];
|
|
run = [
|
|
"delete --cut"
|
|
"move 1 --in-operating"
|
|
];
|
|
desc = "Cut the current character";
|
|
}
|
|
|
|
# Yank/Paste
|
|
{
|
|
on = [
|
|
"y"
|
|
];
|
|
run = "yank";
|
|
desc = "Copy the selected characters";
|
|
}
|
|
{
|
|
on = [
|
|
"p"
|
|
];
|
|
run = "paste";
|
|
desc = "Paste the copied characters after the cursor";
|
|
}
|
|
{
|
|
on = [
|
|
"P"
|
|
];
|
|
run = "paste --before";
|
|
desc = "Paste the copied characters before the cursor";
|
|
}
|
|
|
|
# Undo/Redo
|
|
{
|
|
on = [
|
|
"u"
|
|
];
|
|
run = "undo";
|
|
desc = "Undo the last operation";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-r>"
|
|
];
|
|
run = "redo";
|
|
desc = "Redo the last operation";
|
|
}
|
|
|
|
# Help
|
|
{
|
|
on = [
|
|
"~"
|
|
];
|
|
run = "help";
|
|
desc = "Open help";
|
|
}
|
|
];
|
|
|
|
help.keymap = [
|
|
{
|
|
on = [
|
|
"<Esc>"
|
|
];
|
|
run = "escape";
|
|
desc = "Clear the filter or hide the help";
|
|
}
|
|
{
|
|
on = [
|
|
"q"
|
|
];
|
|
run = "close";
|
|
desc = "Exit the process";
|
|
}
|
|
{
|
|
on = [
|
|
"<C-q>"
|
|
];
|
|
run = "close";
|
|
desc = "Hide the help";
|
|
}
|
|
|
|
# Navigation
|
|
{
|
|
on = [
|
|
"k"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"j"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"K"
|
|
];
|
|
run = "arrow -5";
|
|
desc = "Move cursor up 5 lines";
|
|
}
|
|
{
|
|
on = [
|
|
"J"
|
|
];
|
|
run = "arrow 5";
|
|
desc = "Move cursor down 5 lines";
|
|
}
|
|
|
|
{
|
|
on = [
|
|
"<Up>"
|
|
];
|
|
run = "arrow -1";
|
|
desc = "Move cursor up";
|
|
}
|
|
{
|
|
on = [
|
|
"<Down>"
|
|
];
|
|
run = "arrow 1";
|
|
desc = "Move cursor down";
|
|
}
|
|
|
|
# Filtering
|
|
{
|
|
on = [
|
|
"/"
|
|
];
|
|
run = "filter";
|
|
desc = "Apply a filter for the help items";
|
|
}
|
|
];
|
|
};
|
|
theme = {
|
|
manager = {
|
|
cwd = {
|
|
fg = "#94e2d5";
|
|
};
|
|
|
|
# Hovered
|
|
hovered = {
|
|
reversed = true;
|
|
};
|
|
preview_hovered = { underline = true; };
|
|
|
|
# Find
|
|
find_keyword = {
|
|
fg = "#f9e2af";
|
|
bold = true;
|
|
italic = true;
|
|
underline = true;
|
|
};
|
|
find_position = {
|
|
fg = "#f5c2e7";
|
|
bg = "reset";
|
|
bold = true;
|
|
italic = true;
|
|
};
|
|
|
|
# Marker
|
|
marker_copied = {
|
|
fg = "#a6e3a1";
|
|
bg = "#a6e3a1";
|
|
};
|
|
marker_cut = {
|
|
fg = "#f38ba8";
|
|
bg = "#f38ba8";
|
|
};
|
|
marker_marked = {
|
|
fg = "#f9e2af";
|
|
bg = "#f9e2af";
|
|
};
|
|
marker_selected = {
|
|
fg = "#779EF0";
|
|
bg = "#89b4fa";
|
|
};
|
|
|
|
# Tab
|
|
tab_active = {
|
|
fg = "#1e1e2e";
|
|
bg = "#cdd6f4";
|
|
};
|
|
tab_inactive = {
|
|
fg = "#cdd6f4";
|
|
bg = "#45475a";
|
|
};
|
|
tab_width = 1;
|
|
|
|
# Count
|
|
count_copied = {
|
|
fg = "#1e1e2e";
|
|
bg = "#a6e3a1";
|
|
};
|
|
count_cut = {
|
|
fg = "#1e1e2e";
|
|
bg = "#f38ba8";
|
|
};
|
|
count_selected = {
|
|
fg = "#1e1e2e";
|
|
bg = "#89b4fa";
|
|
};
|
|
|
|
# Border
|
|
border_symbol = "│";
|
|
border_style = { fg = "#7f849c"; };
|
|
|
|
};
|
|
status = {
|
|
separator_open = "";
|
|
separator_close = "";
|
|
separator_style = {
|
|
fg = "#45475a";
|
|
bg = "#45475a";
|
|
};
|
|
|
|
# Mode
|
|
mode_normal = {
|
|
fg = "#1e1e2e";
|
|
bg = "#89b4fa";
|
|
bold = true;
|
|
};
|
|
mode_select = {
|
|
fg = "#1e1e2e";
|
|
bg = "#a6e3a1";
|
|
bold = true;
|
|
};
|
|
mode_unset = {
|
|
fg = "#1e1e2e";
|
|
bg = "#f2cdcd";
|
|
bold = true;
|
|
};
|
|
|
|
# Progress
|
|
progress_label = {
|
|
fg = "#ffffff";
|
|
bold = true;
|
|
};
|
|
progress_normal = {
|
|
fg = "#89b4fa";
|
|
bg = "#45475a";
|
|
};
|
|
progress_error = {
|
|
fg = "#f38ba8";
|
|
bg = "#45475a";
|
|
};
|
|
|
|
# Permissions
|
|
permissions_t = { fg = "#89b4fa"; };
|
|
permissions_r = { fg = "#f9e2af"; };
|
|
permissions_w = { fg = "#f38ba8"; };
|
|
permissions_x = { fg = "#a6e3a1"; };
|
|
permissions_s = { fg = "#7f849c"; };
|
|
};
|
|
|
|
input = {
|
|
border = {
|
|
fg = "#89b4fa";
|
|
};
|
|
title = { };
|
|
value = { };
|
|
selected = { reversed = true; };
|
|
};
|
|
select = {
|
|
border = {
|
|
fg = "#89b4fa";
|
|
};
|
|
active = { fg = "#f5c2e7"; };
|
|
inactive = { };
|
|
};
|
|
tasks = {
|
|
border = {
|
|
fg = "#89b4fa";
|
|
};
|
|
title = { };
|
|
hovered = {
|
|
underline = true;
|
|
};
|
|
};
|
|
which = {
|
|
mask = {
|
|
bg = "#313244";
|
|
};
|
|
cand = { fg = "#94e2d5"; };
|
|
rest = { fg = "#9399b2"; };
|
|
desc = { fg = "#f5c2e7"; };
|
|
separator = " ";
|
|
separator_style = { fg = "#585b70"; };
|
|
};
|
|
help = {
|
|
on = {
|
|
fg = "#f5c2e7";
|
|
};
|
|
exec = { fg = "#94e2d5"; };
|
|
desc = { fg = "#9399b2"; };
|
|
hovered = {
|
|
bg = "#585b70";
|
|
bold = true;
|
|
};
|
|
footer = {
|
|
fg = "#45475a";
|
|
bg = "#cdd6f4";
|
|
};
|
|
};
|
|
filetype = {
|
|
rules = [
|
|
# Images
|
|
{
|
|
mime = "image/*";
|
|
fg = "#94e2d5";
|
|
}
|
|
|
|
# Videos
|
|
{
|
|
mime = "video/*";
|
|
fg = "#f9e2af";
|
|
}
|
|
{
|
|
mime = "audio/*";
|
|
fg = "#f9e2af";
|
|
}
|
|
|
|
# Archives
|
|
{
|
|
mime = "application/zip";
|
|
fg = "#f5c2e7";
|
|
}
|
|
{
|
|
mime = "application/gzip";
|
|
fg = "#f5c2e7";
|
|
}
|
|
{
|
|
mime = "application/x-tar";
|
|
fg = "#f5c2e7";
|
|
}
|
|
{
|
|
mime = "application/x-bzip";
|
|
fg = "#f5c2e7";
|
|
}
|
|
{
|
|
mime = "application/x-bzip2";
|
|
fg = "#f5c2e7";
|
|
}
|
|
{
|
|
mime = "application/x-7z-compressed";
|
|
fg = "#f5c2e7";
|
|
}
|
|
{
|
|
mime = "application/x-rar";
|
|
fg = "#f5c2e7";
|
|
}
|
|
|
|
# Fallback
|
|
{
|
|
name = "*";
|
|
fg = "#cdd6f4";
|
|
}
|
|
{
|
|
name = "*/";
|
|
fg = "#89b4fa";
|
|
}
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|