Compare commits

...

2 commits

Author SHA1 Message Date
941dd4aaea
📖 Change AUR instructions to fit multiple packages
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Generalized AUR package installation instructions slightly to take note
of the fact that there are multiple AUR packages available for bemoji.

Thanks to @thayne for packaging up the semver release version of bemoji
for the AUR!
2023-04-11 23:20:03 +02:00
56ae0f1bab
🐛 Pass through stdin to custom typing tool (#19)
Previously, stdin contents were consumed and then not passed through to
the typing tool. With this commit, they are correctly passed to any
custom tool's stdin.

Fixes #19.
2023-04-11 23:00:19 +02:00
4 changed files with 15 additions and 4 deletions

View file

@ -27,6 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed
- Always download from newest emoji list url
- Pass selection to custom typing tools through stdin
<!-- ### Security -->

View file

@ -43,10 +43,10 @@ ln -s bemoji/bemoji /usr/local/bin/bemoji
### Arch Linux
On Arch Linux, bemoji has been packaged for the [AUR](https://aur.archlinux.org/packages/bemoji-git) so it can be installed manually from here or easily with your preferred AUR helper, e.g.:
On Arch Linux, bemoji has been packaged for the [AUR](https://aur.archlinux.org/packages?K=bemoji) so it can be installed manually from here or easily with your preferred AUR helper, e.g.:
```bash
paru -S bemoji-git
paru -S bemoji
```
## 💿 Usage
@ -222,6 +222,8 @@ BEMOJI_CLIP_CMD="path/to/your/clipboard/tool"
BEMOJI_TYPE_CMD="path/to/your/xdotool"
```
The candidate list (in the case of picker tool) or the picked selection are passed to the tools through stdin.
This is pretty experimental and you'll have to see how well it works for you.
The setting can not be changed through the commandline alone.

7
bemoji
View file

@ -165,11 +165,14 @@ _clipper() {
# Set default typing uti
_typer() {
totype=$(cat -)
if [ -n "$BEMOJI_TYPE_CMD" ]; then
# shellcheck disable=SC2068
${BEMOJI_TYPE_CMD[@]}
elif [ -n "$WAYLAND_DISPLAY" ] && command -v wtype >/dev/null 2>&1; then
return
fi
totype=$(cat -)
if [ -n "$WAYLAND_DISPLAY" ] && command -v wtype >/dev/null 2>&1; then
wtype -s 30 "$totype"
elif [ -n "$DISPLAY" ] && command -v xdotool >/dev/null 2>&1; then
xdotool type --delay 30 "$totype"

View file

@ -54,6 +54,11 @@ setup() {
typing result"
}
@test "Passes selection to custom typer tool through stdin" {
BEMOJI_TYPE_CMD="cat -" run bemoji -t 3>&-
assert_output "❤️"
}
@test "Runs custom default command" {
BEMOJI_DEFAULT_CMD="echo my custom command" run bemoji 3>&-
assert_output "my custom command"