From 53ceae213779d1fe054a2394d686bd81ebd33c00 Mon Sep 17 00:00:00 2001 From: Natsu Kagami Date: Wed, 21 Sep 2022 08:12:23 +0200 Subject: [PATCH] Add a default case for ibus-next-engine --- home/modules/programs/my-sway/ibus.nix | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/home/modules/programs/my-sway/ibus.nix b/home/modules/programs/my-sway/ibus.nix index c23ab10..8e89474 100644 --- a/home/modules/programs/my-sway/ibus.nix +++ b/home/modules/programs/my-sway/ibus.nix @@ -17,16 +17,18 @@ let else nextRec (tail l); in nextRec input-methods; + changeTo = m: '' + ${pkgs.libnotify}/bin/notify-send \ + -a ibus \ + -u low \ + -t 3000 \ + "${m}" \ + "Input engine changed" + ${pkgs.ibus}/bin/ibus engine ${m} + ''; inputCase = m: '' - if test $current = "${m}" - ${pkgs.libnotify}/bin/notify-send \ - -a ibus \ - -u low \ - -t 3000 \ - "${next m}" \ - "Input engine changed" - ${pkgs.ibus}/bin/ibus engine ${next m} - end + case "${m}" + ${changeTo (next m)} ''; in pkgs.writeScriptBin "ibus-next-engine" '' @@ -34,7 +36,11 @@ let set current (${pkgs.ibus}/bin/ibus engine) - ${strings.concatMapStrings inputCase input-methods} + switch $current + ${strings.concatMapStrings inputCase input-methods} + case '*' + ${changeTo (head input-methods)} + end '' );