2024-10-11 23:27:07 +03:00
|
|
|
{ pkgs, ... }:
|
2024-11-02 08:06:48 +03:00
|
|
|
let
|
|
|
|
mkKeymap = desc: on: run: { inherit desc on run; };
|
|
|
|
in
|
2024-10-11 23:27:07 +03:00
|
|
|
{
|
2024-11-02 08:06:48 +03:00
|
|
|
# REF: https://github.com/sxyazi/yazi/blob/main/yazi-config/preset/keymap.toml
|
2024-10-11 23:27:07 +03:00
|
|
|
file = (pkgs.formats.toml { }).generate "YaziKeymapConfig" {
|
|
|
|
manager = {
|
|
|
|
prepend_keymap = [
|
2024-11-02 20:42:13 +03:00
|
|
|
# TODO: Swap description & keys for better sorting?
|
2024-11-02 08:06:48 +03:00
|
|
|
(mkKeymap "Delete" "d" "remove --permanently")
|
|
|
|
(mkKeymap "Delete no questions asked" "D" "remove --permanently --force")
|
|
|
|
(mkKeymap "Spawn shell here" "<Enter>" ''shell "SHELL_NAME=yazi $SHELL" --block --confirm'')
|
|
|
|
(mkKeymap "Open interactively" "o" "open --interactive")
|
|
|
|
(mkKeymap "Open default" "O" "open")
|
2024-11-02 20:22:13 +03:00
|
|
|
(mkKeymap "Rename completely" "R" "rename --empty all")
|
2024-11-02 20:34:39 +03:00
|
|
|
(mkKeymap "Close tab" "c" "close")
|
2024-11-02 20:42:13 +03:00
|
|
|
(mkKeymap "Prev tab" "q" "tab_switch -1 --relative")
|
|
|
|
(mkKeymap "Next tab" "e" "tab_switch 1 --relative")
|
|
|
|
(mkKeymap "Move to prev tab" "Q" "tab_swap -1 --relative")
|
|
|
|
(mkKeymap "Move to next tab" "E" "tab_swap 1 --relative")
|
|
|
|
(mkKeymap "Exit yazi" "z" "quit")
|
|
|
|
(mkKeymap "Exit yazi w/o cwd" "Z" "quit --no-cwd-file")
|
2024-11-02 20:46:12 +03:00
|
|
|
(mkKeymap "New tab" "<Tab>" "tab_create --current")
|
2024-11-02 08:06:48 +03:00
|
|
|
# I wanna die thanks to nixfmt.
|
|
|
|
(mkKeymap "Go to storage" [
|
|
|
|
"g"
|
|
|
|
"s"
|
|
|
|
] "cd /storage")
|
|
|
|
(mkKeymap "Go to tmp" [
|
|
|
|
"g"
|
|
|
|
"t"
|
|
|
|
] "cd ~/tmp")
|
|
|
|
(mkKeymap "Go to system tmp" [
|
|
|
|
"g"
|
|
|
|
"T"
|
|
|
|
] "cd /tmp")
|
|
|
|
(mkKeymap "Go to projects" [
|
|
|
|
"g"
|
|
|
|
"p"
|
|
|
|
] "cd ~/project")
|
|
|
|
# Yazi devs are... special.
|
|
|
|
(mkKeymap "Go to downloads" [
|
|
|
|
"g"
|
|
|
|
"d"
|
|
|
|
] "cd $XDG_DOWNLOAD_DIR")
|
|
|
|
(mkKeymap "Go to configs" [
|
|
|
|
"g"
|
|
|
|
"c"
|
|
|
|
] "cd $XDG_CONFIG_HOME")
|
2024-10-11 23:27:07 +03:00
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
2024-06-22 23:34:03 +03:00
|
|
|
}
|