Update
This commit is contained in:
@@ -1,13 +1,14 @@
|
||||
{ config, pkgs, ... }: {
|
||||
{ config, ... }: {
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
# Reset existing mappings
|
||||
keybindings = {
|
||||
# Reset existing mappings
|
||||
"ctrl+alt+tab" = "next_tab";
|
||||
"ctrl+alt+shift+tab" = "previous_tab";
|
||||
# Send Ctrl Tab and Ctrl + Shift + Tab for Tmux navigation
|
||||
"ctrl+tab" = "send_text all \\x1b[27;5;9~";
|
||||
"ctrl+shift+tab" = "send_text all \\x1b[27;6;9~";
|
||||
"alt+tab" = "send_text all \\x1b[27;3;9~";
|
||||
};
|
||||
settings = {
|
||||
scrollback_lines = 10000;
|
||||
@@ -18,7 +19,7 @@
|
||||
confirm_os_window_close = "0";
|
||||
remember_window_size = "no";
|
||||
disable_ligatures = "never";
|
||||
shell = "${pkgs.tmux}/bin/tmux";
|
||||
# shell = "${pkgs.tmux}/bin/tmux";
|
||||
url_style = "curly";
|
||||
cursor_shape = "Underline";
|
||||
cursor_underline_thickness = config.var.theme.border-size;
|
||||
|
||||
@@ -12,53 +12,20 @@
|
||||
bind-key j select-pane -D
|
||||
bind-key k select-pane -U
|
||||
bind-key l select-pane -R
|
||||
|
||||
set -gq allow-passthrough on
|
||||
bind-key x kill-pane # skip "kill-pane 1? (y/n)" prompt
|
||||
set -g detach-on-destroy off # don't exit from tmux when closing a session
|
||||
|
||||
bind-key -n C-Tab select-window -n
|
||||
bind-key -n C-Tab next-window
|
||||
bind-key -n C-S-Tab previous-window
|
||||
|
||||
bind-key "t" run-shell "sesh connect \"$(
|
||||
sesh list -t | fzf-tmux -p 65%,70% \
|
||||
--no-sort --ansi --border-label ' sesh ' --prompt '⚡ ' \
|
||||
--header ' ^a all ^t tmux ^g configs ^x zoxide ^d tmux kill ^f find' \
|
||||
--bind 'tab:down,btab:up' \
|
||||
--bind 'ctrl-a:change-prompt(⚡ )+reload(sesh list)' \
|
||||
--bind 'ctrl-t:change-prompt(🪟 )+reload(sesh list -t)' \
|
||||
--bind 'ctrl-g:change-prompt(⚙️ )+reload(sesh list -c)' \
|
||||
--bind 'ctrl-x:change-prompt(📁 )+reload(sesh list -z)' \
|
||||
--bind 'ctrl-f:change-prompt(🔎 )+reload(fd -H -d 2 -t d -E .Trash . ~)' \
|
||||
--bind 'ctrl-d:execute(tmux kill-session -t {})+change-prompt(⚡ )+reload(sesh list)'
|
||||
)\""
|
||||
bind-key -n M-Tab new-window
|
||||
'';
|
||||
|
||||
plugins = with pkgs; [
|
||||
tmuxPlugins.vim-tmux-navigator
|
||||
{
|
||||
plugin = tmuxPlugins.catppuccin;
|
||||
extraConfig = ''
|
||||
set-option -g status-position top
|
||||
set -g @catppuccin_window_left_separator ""
|
||||
set -g @catppuccin_window_right_separator " "
|
||||
set -g @catppuccin_window_middle_separator " █"
|
||||
set -g @catppuccin_window_number_position "right"
|
||||
|
||||
set -g @catppuccin_window_default_fill "number"
|
||||
set -g @catppuccin_window_default_text "#W"
|
||||
|
||||
set -g @catppuccin_window_current_fill "number"
|
||||
set -g @catppuccin_window_current_text "#W"
|
||||
|
||||
set -g @catppuccin_status_modules_right ""
|
||||
set -g @catppuccin_status_left_separator " "
|
||||
set -g @catppuccin_status_right_separator ""
|
||||
set -g @catppuccin_status_fill "icon"
|
||||
set -g @catppuccin_status_connect_separator "no"
|
||||
|
||||
set -g @catppuccin_directory_text "#{pane_current_path}"
|
||||
set -g @catppuccin_status_background "default"
|
||||
set-option -g default-terminal "screen-256color"
|
||||
'';
|
||||
}
|
||||
tmuxPlugins.resurrect
|
||||
tmuxPlugins.nord
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -21,12 +21,23 @@
|
||||
"echo; ${pkgs.pfetch}/bin/pfetch"
|
||||
else
|
||||
""}
|
||||
|
||||
function sesh-sessions() {
|
||||
session=$(sesh list -t -c | fzf --height 70% --reverse)
|
||||
[[ -z "$session" ]] && return
|
||||
sesh connect $session
|
||||
}
|
||||
|
||||
zle -N sesh-sessions
|
||||
bindkey -M emacs '\es' sesh-sessions
|
||||
bindkey -M vicmd '\es' sesh-sessions
|
||||
bindkey -M viins '\es' sesh-sessions
|
||||
'';
|
||||
|
||||
history = {
|
||||
ignoreDups = true;
|
||||
save = 1000000;
|
||||
size = 1000000;
|
||||
save = 10000;
|
||||
size = 10000;
|
||||
};
|
||||
|
||||
profileExtra = lib.optionalString (config.home.sessionPath != [ ]) ''
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
./brightness
|
||||
./caffeine
|
||||
./hyprpanel
|
||||
./hyprfocus
|
||||
./night-shift
|
||||
./screenshot
|
||||
./nerdfont_fzf
|
||||
|
||||
19
home/scripts/hyprfocus/default.nix
Normal file
19
home/scripts/hyprfocus/default.nix
Normal file
@@ -0,0 +1,19 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
hyprfocus = pkgs.writeShellScriptBin "hyprfocus" ''
|
||||
hyprctl keyword "general:gaps_in" 0
|
||||
hyprctl keyword "general:gaps_out" 0
|
||||
# TODO: Fix this:
|
||||
hyprpanel-toggle
|
||||
hyprctl keyword "general:border_size" 1
|
||||
hyprctl keyword "decoration:rounding" 0
|
||||
hyprctl keyword "decoration:drop_shadow" false
|
||||
hyprctl keyword "decoration:inactive_opacity" 0.98
|
||||
hyprctl keyword "decoration:active_opacity" 1
|
||||
'';
|
||||
|
||||
hyprfocus-kill = pkgs.writeShellScriptBin "hyprfocus-kill" ''
|
||||
hyprctl reload
|
||||
hyprpanel-reload
|
||||
'';
|
||||
in { home.packages = [ hyprfocus hyprfocus-kill ]; }
|
||||
@@ -6,8 +6,13 @@ let
|
||||
hyprpanel -t bar-2
|
||||
hyprpanel -t bar-3
|
||||
'';
|
||||
|
||||
hyprpanel-reload = pkgs.writeShellScriptBin "hyprpanel-reload" ''
|
||||
[ $(pgrep "ags") ] && pkill ags
|
||||
hyprctl dispatch exec hyprpanel
|
||||
'';
|
||||
in { home.packages = [ hyprpanel-toggle hyprpanel-reload ]; }
|
||||
|
||||
hyprpanel-kill = pkgs.writeShellScriptBin "hyprpanel-kill" ''
|
||||
[ $(pgrep "ags") ] && pkill ags
|
||||
'';
|
||||
in { home.packages = [ hyprpanel-toggle hyprpanel-reload hyprpanel-kill ]; }
|
||||
|
||||
Reference in New Issue
Block a user