56 lines
1.6 KiB
Nix
56 lines
1.6 KiB
Nix
{pkgs, ...}: {
|
|
# TODO: create a script that initializes vicinae if `vicinae server` is off.
|
|
services.vicinae = {
|
|
enable = true;
|
|
systemd = {
|
|
enable = true;
|
|
autoStart = true;
|
|
environment = {
|
|
USE_LAYER_SHELL = 1;
|
|
};
|
|
};
|
|
|
|
settings = {
|
|
# Escape closes window (vim-like :q behavior)
|
|
escape_key_behavior = "close_window";
|
|
pop_to_root_on_close = true;
|
|
close_on_unfocus = true;
|
|
|
|
keybinds = {
|
|
# UI shortcuts
|
|
"open-search-filter" = "control+/"; # vim search
|
|
"open-settings" = "control+,";
|
|
"toggle-action-panel" = "control+B";
|
|
|
|
# Vim-like action keybinds
|
|
"action.move-up" = "control+shift+K";
|
|
"action.move-down" = "control+shift+J";
|
|
"action.copy" = "control+Y"; # yank
|
|
"action.copy-name" = "control+shift+Y";
|
|
"action.remove" = "control+D"; # delete
|
|
"action.dangerous-remove" = "control+shift+D";
|
|
"action.edit" = "control+E";
|
|
"action.open" = "control+O";
|
|
"action.refresh" = "control+R";
|
|
"action.pin" = "control+P";
|
|
"action.new" = "control+N";
|
|
"action.save" = "control+S";
|
|
};
|
|
};
|
|
};
|
|
|
|
# Ensure vicinae themes directory exists for matugen output
|
|
home.file.".local/share/vicinae/themes/.keep".text = "";
|
|
|
|
wayland.windowManager.hyprland.settings = {
|
|
exec-once = [
|
|
"vicinae server"
|
|
];
|
|
|
|
bindd = [
|
|
"SUPER, SPACE, Open Vicinae, exec, vicinae toggle"
|
|
"SUPER, period, Open Emoji Picker, exec, vicinae deeplink vicinae://extensions/vicinae/vicinae/search-emojis"
|
|
];
|
|
};
|
|
}
|