3 Commits

Author SHA1 Message Date
Noah Masur
4755a27089 add zellij session toggle feature 2025-07-27 15:42:16 -04:00
Noah Masur
57303d61e9 add normal mode newline in helix 2025-07-27 12:56:15 -04:00
Noah Masur
b67c90dae0 add git blame inside helix 2025-07-27 10:19:52 -04:00
2 changed files with 41 additions and 7 deletions

View File

@@ -169,6 +169,9 @@ in
":set mouse true" ":set mouse true"
]; ];
# Open git blame in github
space.B = ":sh git blame -L %{cursor_line},%{cursor_line} %{buffer_name}";
# Open yazi # Open yazi
# https://github.com/sxyazi/yazi/pull/2461 # https://github.com/sxyazi/yazi/pull/2461
# Won't work until next Helix release # Won't work until next Helix release
@@ -196,13 +199,26 @@ in
"paste_before" "paste_before"
]; ];
A-S-ret = [
"open_above"
"normal_mode"
];
A-ret = [
"open_below"
"normal_mode"
];
}; };
keys.insert = { keys.insert = {
# Allows not continuing the comment # Allows not continuing the comment
"A-ret" = [ "A-ret" = [
"insert_newline" "insert_newline"
"delete_word_backward" "extend_to_line_bounds"
"delete_selection"
"insert_newline"
"move_line_up"
"insert_mode"
]; ];
}; };

View File

@@ -7,6 +7,15 @@
let let
cfg = config.nmasur.presets.programs.zellij; cfg = config.nmasur.presets.programs.zellij;
zellij-switch-to-last = pkgs.writeShellScriptBin "zellij-switch-to-last" ''
TARGET_SESSION=$(cat ~/.local/state/zellij-last-session)
if [ -z "$TARGET_SESSION" ]; then
return 1
fi
echo "$ZELLIJ_SESSION_NAME" > ~/.local/state/zellij-last-session
zellij pipe --plugin file:$(which zellij-switch.wasm) -- "--session $TARGET_SESSION"
'';
in in
{ {
@@ -31,6 +40,7 @@ in
if test "$TARGET_DIR" = $(pwd) if test "$TARGET_DIR" = $(pwd)
return 1 return 1
end end
echo "$ZELLIJ_SESSION_NAME" > ~/.local/state/zellij-last-session
zellij pipe --plugin file:$(which zellij-switch.wasm) -- "--cwd $TARGET_DIR --layout default --session $(basename $TARGET_DIR)" zellij pipe --plugin file:$(which zellij-switch.wasm) -- "--cwd $TARGET_DIR --layout default --session $(basename $TARGET_DIR)"
''; '';
}; };
@@ -69,13 +79,13 @@ in
programs.zellij = { programs.zellij = {
enable = true; enable = true;
enableBashIntegration = true;
enableFishIntegration = true;
enableZshIntegration = true;
# Not yet available in unstable # Auto start on shell init
# attachExistingSession = true; enableBashIntegration = false;
# exitShellOnExit = true; enableFishIntegration = false;
enableZshIntegration = false;
attachExistingSession = false;
exitShellOnExit = false;
settings = { settings = {
default_mode = "locked"; default_mode = "locked";
@@ -109,6 +119,14 @@ in
}; };
}; };
shared = { shared = {
"bind \"Alt Shift s\"" = {
Run = {
_args = [
(lib.getExe zellij-switch-to-last)
];
close_on_exit = true;
};
};
"bind \"Alt Shift p\"" = { "bind \"Alt Shift p\"" = {
Run = { Run = {
_args = [ _args = [