This commit is contained in:
2026-08-04 16:16:32 +09:00
parent 247db71f2d
commit 2a3f7ee6ff
2 changed files with 31 additions and 0 deletions
+29
View File
@@ -1,8 +1,24 @@
{ lib, pkgs, ... }:
let
keybindings = import ./keybindings.nix;
naniTranslatePrimary = pkgs.writeShellApplication {
name = "nani-translate-primary";
runtimeInputs = with pkgs; [
jq
wl-clipboard
xdg-utils
];
text = ''
selected_text="$(wl-paste --primary --no-newline)" || exit 0
[ -n "$selected_text" ] || exit 0
encoded_text="$(printf '%s' "$selected_text" | jq -sRr @uri)"
exec xdg-open "naniapp://translate?source=$encoded_text"
'';
};
in
{
home.packages = [ naniTranslatePrimary ];
programs.niri.settings = {
binds = keybindings // {
@@ -96,6 +112,19 @@ in
];
hotkey-overlay.title = "Clipboard History";
};
"Mod+J" = {
repeat = false;
action.spawn = [ "nani-translate-primary" ];
hotkey-overlay.title = "Translate Primary Selection";
};
"Mod+Ctrl+J" = {
repeat = false;
action.spawn = [
(lib.getExe' pkgs.xdg-utils "xdg-open")
"naniapp://translate"
];
hotkey-overlay.title = "Open Nani Translate";
};
"Mod+Space" = {
action.spawn = [
"ghostty"