blob: d95e2969a619fd9d342c2b97fc97ee7f9b786570 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
#!/usr/bin/env bash
set -euo pipefail
state_dir=${XDG_STATE_HOME:-$HOME/.local/state}/parley
dropin_dir=${XDG_CONFIG_HOME:-$HOME/.config}/systemd/user/parley.service.d
mkdir -p "$state_dir" "$dropin_dir"
previous=$(ibus engine 2>/dev/null || true)
if [[ -z "$previous" ]]; then
previous=xkb:us::eng
fi
if [[ "$previous" != "parley" ]]; then
printf '%s\n' "$previous" > "$state_dir/previous-ibus-engine"
fi
systemctl --user start parley-ibus.service
for _ in {1..20}; do
busctl --user --quiet list 2>/dev/null | grep -q '^org.parley.IBus1 ' && break
sleep 0.1
done
ibus engine parley >/dev/null 2>&1 || [[ $(ibus engine) == parley ]]
cat > "$dropin_dir/ibus-test.conf" <<'EOF'
[Service]
Environment=PARLEY_AUTO_INSERT=1
Environment=PARLEY_INSERTION_MODE=ibus
EOF
systemctl --user daemon-reload
systemctl --user restart parley.service
echo "Parley IBus test mode enabled (previous engine: $previous)"
|