mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 17:17:22 +01:00
feat[client]: manage zellij using nix
This commit is contained in:
parent
ad4443056a
commit
6d930c3fa4
5 changed files with 2604 additions and 10 deletions
1310
SwarselSystems.org
1310
SwarselSystems.org
File diff suppressed because it is too large
Load diff
|
|
@ -4,11 +4,25 @@
|
||||||
config = lib.mkIf config.swarselmodules.kitty {
|
config = lib.mkIf config.swarselmodules.kitty {
|
||||||
programs.kitty = {
|
programs.kitty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
keybindings = { };
|
keybindings =
|
||||||
|
let
|
||||||
|
bindWithModifier = lib.mapAttrs' (key: lib.nameValuePair ("ctrl+shift" + key));
|
||||||
|
in
|
||||||
|
bindWithModifier {
|
||||||
|
"page_up" = "scroll_page_up";
|
||||||
|
"up" = "scroll_page_up";
|
||||||
|
"page_down" = "scroll_page_down";
|
||||||
|
"down" = "scroll_page_down";
|
||||||
|
"w" = "no_op";
|
||||||
|
};
|
||||||
settings = {
|
settings = {
|
||||||
scrollback_lines = 10000;
|
cursor_blink_interval = 0;
|
||||||
|
disable_ligatures = "cursor";
|
||||||
enable_audio_bell = false;
|
enable_audio_bell = false;
|
||||||
notify_on_cmd_finish = "always 20";
|
notify_on_cmd_finish = "always 20";
|
||||||
|
open_url_with = "xdg-open";
|
||||||
|
scrollback_lines = 100000;
|
||||||
|
scrollback_pager_history_size = 512;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
1233
modules/home/common/zellij-keybinds.nix
Normal file
1233
modules/home/common/zellij-keybinds.nix
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -5,6 +5,55 @@
|
||||||
programs.zellij = {
|
programs.zellij = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableZshIntegration = true;
|
enableZshIntegration = true;
|
||||||
|
settings = {
|
||||||
|
pane_frames = false;
|
||||||
|
simplified_ui = false;
|
||||||
|
default_shell = "zsh";
|
||||||
|
copy_on_select = true;
|
||||||
|
on_force_close = "detach";
|
||||||
|
show_startup_tips = false;
|
||||||
|
support_kitty_keyboard_protocol = true;
|
||||||
|
default_layout = "swarsel";
|
||||||
|
layout_dir = "${config.home.homeDirectory}/.config/zellij/layouts";
|
||||||
|
theme_dir = "${config.home.homeDirectory}/.config/zellij/themes";
|
||||||
|
scrollback_lines_to_serialize = config.programs.kitty.settings.scrollback_lines;
|
||||||
|
session_serialization = true;
|
||||||
|
|
||||||
|
copy_command =
|
||||||
|
if pkgs.stdenv.hostPlatform.isLinux then
|
||||||
|
"wl-copy"
|
||||||
|
else if pkgs.stdenv.hostPlatform.isDarwin then
|
||||||
|
"pbcopy"
|
||||||
|
else
|
||||||
|
"";
|
||||||
|
ui.pane_frames = {
|
||||||
|
rounded_corners = true;
|
||||||
|
hide_session_name = true;
|
||||||
|
};
|
||||||
|
plugins = {
|
||||||
|
tab-bar.path = "tab-bar";
|
||||||
|
status-bar.path = "status-bar";
|
||||||
|
strider.path = "strider";
|
||||||
|
compact-bar.path = "compact-bar";
|
||||||
|
};
|
||||||
|
# configuration = {
|
||||||
|
# _props.location = "zellij:configuration";
|
||||||
|
# };
|
||||||
|
# filepicker = {
|
||||||
|
# _props.location = "zellij:strider";
|
||||||
|
# cwd = "/";
|
||||||
|
# };
|
||||||
|
# plugin-manager = {
|
||||||
|
# _props.location = "zellij:plugin-manager";
|
||||||
|
# };
|
||||||
|
# session-manager = {
|
||||||
|
# _props.location = "zellij:session-manager";
|
||||||
|
# };
|
||||||
|
# welcome-screen = {
|
||||||
|
# _props.location = "zellij:session-manager";
|
||||||
|
# welcome_screen = true;
|
||||||
|
# };
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
|
@ -12,8 +61,8 @@
|
||||||
];
|
];
|
||||||
|
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"zellij/config.kdl".text = import "${self}/files/zellij/config.kdl.nix" { inherit config; };
|
# "zellij/config.kdl".text = import "${self}/files/zellij/config.kdl.nix" { inherit config; };
|
||||||
"zellij/layouts/default.kdl".text = import "${self}/files/zellij/layouts/default.kdl.nix" { inherit config pkgs; };
|
"zellij/layouts/swarsel.kdl".text = import "${self}/files/zellij/layouts/swarsel.kdl.nix" { inherit config pkgs; };
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue