diff --git a/.config/Thunar/uca.xml b/.config/Thunar/uca.xml new file mode 100644 index 0000000..abd2b0c --- /dev/null +++ b/.config/Thunar/uca.xml @@ -0,0 +1,31 @@ + + + + utilities-terminal + Open kitty here + + 1761600000000001 + kitty --directory %f + Open a kitty terminal in this folder + + * + + + + + edit-copy + Copy path + + 1761600000000002 + sh -c 'printf %s "%f" | wl-copy' + Copy the full path to the clipboard + + * + + + + + + + + diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 3456535..62c30d3 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -99,6 +99,9 @@ color7 #a9b1d6 color15 #c0caf5 # ---------- Shortcuts ---------- +# Plain Ctrl+C / Ctrl+V: Ctrl+C copies when text is selected, otherwise it is the usual interrupt (SIGINT) +map ctrl+c copy_or_interrupt +map ctrl+v paste_from_clipboard map ctrl+shift+t new_tab_with_cwd map ctrl+shift+enter launch --location=vsplit --cwd=current map ctrl+alt+enter launch --location=hsplit --cwd=current diff --git a/.config/sway/config.d/30-workflow.conf b/.config/sway/config.d/30-workflow.conf index 11335e7..cda71e3 100644 --- a/.config/sway/config.d/30-workflow.conf +++ b/.config/sway/config.d/30-workflow.conf @@ -29,6 +29,7 @@ for_window [app_id="firefox"] inhibit_idle fullscreen for_window [app_id="mpv"] floating enable, dim_inactive 0 # Rice helpers +bindsym --to-code $mod+o exec thunar bindsym --to-code $mod+F1 exec ~/.config/sway/cheatsheet.sh # Performance mode: toggle blur + shadows bindsym --to-code $mod+Shift+b blur toggle; shadows toggle diff --git a/.config/xfce4/helpers.rc b/.config/xfce4/helpers.rc new file mode 100644 index 0000000..5226528 --- /dev/null +++ b/.config/xfce4/helpers.rc @@ -0,0 +1 @@ +TerminalEmulator=kitty diff --git a/README.md b/README.md index c2d85d6..c4fd91c 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,8 @@ | `.config/sway/{lock,idle,cheatsheet}.sh` | блокировка (DMS, запасной swaylock), swayidle, шпаргалка по хоткеям | | `.config/sway/outputs-setup.sh`, `doctor.sh` | настройка мониторов под новое железо; проверка здоровья системы | | `.config/dms/settings.json` | настройки DMS: виджеты бара (раскладка, VPN, температура, приватность), шрифты, панель управления | -| `.config/kitty/kitty.conf` | JetBrains Mono, палитра Tokyo Night, прозрачность, вкладки и сплиты | +| `.config/kitty/kitty.conf` | JetBrains Mono, палитра Tokyo Night, прозрачность, вкладки и сплиты; `Ctrl+C` копирует выделенное (без выделения прерывает), `Ctrl+V` вставляет | +| `.config/Thunar/uca.xml`, `.config/xfce4/helpers.rc` | файловый менеджер: «Open kitty here», «Copy path» в контекстном меню, терминал kitty | | `.config/swappy/config` | редактор скриншотов (стрелки, текст, размытие) | | `.config/swaylock/` | запасная блокировка, если DMS не запущен | | `home/.tmux.conf`, `home/.zshrc`, `home/.oh-my-zsh/custom/sysadmin.zsh` | tmux, zsh, алиасы сисадмина; fzf / zoxide / eza подключаются сами | @@ -49,6 +50,7 @@ | `Super+N` | панель управления DMS (Wi-Fi, Bluetooth, VPN, звук, яркость) | | `Super+Shift+N` | центр уведомлений | | `Super+Shift+V` | история буфера обмена | +| `Super+O` | файловый менеджер (Thunar) | | `Super+Shift+Q` | закрыть окно | | `Super+Shift+C` | перезагрузить конфиг | | `Super+Shift+E` / `Super+Shift+P` | меню выключения DMS | diff --git a/install.sh b/install.sh index 4b8b5b8..e4a6fc4 100755 --- a/install.sh +++ b/install.sh @@ -50,6 +50,7 @@ CORE_PKGS=( sway-systemd # session target + env for portals kitty swaylock swayidle grim swappy jq wl-clipboard brightnessctl libnotify pavucontrol network-manager-applet wireplumber pipewire-pulseaudio + Thunar thunar-archive-plugin thunar-volman tumbler ffmpegthumbnailer file-roller # file manager (Super+O) xdg-desktop-portal xdg-desktop-portal-wlr xdg-desktop-portal-gtk jetbrains-mono-fonts fontawesome-6-free-fonts adw-gtk3-theme ) @@ -128,7 +129,7 @@ backup_and_copy_configs() { say "Backing up existing configs to $BACKUP" run mkdir -p "$BACKUP" local d - for d in sway swaylock kitty dms swappy waybar rofi dunst swaync; do # last four: legacy, only backed up + for d in sway swaylock kitty dms swappy Thunar xfce4 waybar rofi dunst swaync; do # last four: legacy, only backed up if [ -e "$CFG/$d" ]; then run cp -a "$CFG/$d" "$BACKUP/"; fi done @@ -179,6 +180,13 @@ apply_gtk_theme() { run gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' || true } +# Thunar as the default folder handler (Nautilus stays installed for GNOME sessions) +apply_file_manager() { + [ -e /usr/share/applications/thunar.desktop ] || return 0 + have xdg-mime || return 0 + run xdg-mime default thunar.desktop inode/directory || true +} + setup_outputs() { if [ -e "$CFG/sway/config.d/05-outputs.conf" ]; then say "Monitor layout already configured (05-outputs.conf)"; return 0; fi if [ -n "${SWAYSOCK:-}" ] && [ "$DRY" = 0 ]; then @@ -223,7 +231,7 @@ if [ "$PACKAGES" = 1 ]; then fi backup_and_copy_configs -if [ "$PACKAGES" = 1 ]; then apply_gtk_theme; fi +if [ "$PACKAGES" = 1 ]; then apply_gtk_theme; apply_file_manager; fi if [ "$SHELLSETUP" = 1 ]; then install_shell_extras; fi setup_outputs verify