#!/bin/sh set -e command -v trans > /dev/null || { echo "translate-shell not installed" ; exit 1 ; } command -v rofi > /dev/null && menu_exec='rofi -dmenu' || menu_exec='dmenu' choice="$( $menu_exec < "$text_file" ;; 'From Clipboard') xclip -out -selection clipboard > "$text_file" ;; 'Open Editor') text_file="$(mktemp /tmp/translate_prompt_text_XXXXXX)" "$TERMINAL" -e "$EDITOR" "$text_file" ;; *) printf '%s' "$choice" > "$text_file" ;; esac brief=-brief if [ "$(head -c1 "$text_file")" = '#' ] then brief='' sed -i '1 s/^#//' "$text_file" fi translation_file="$(mktemp /tmp/translate_prompt_translation_XXXXXX)" trans $brief -input "$text_file" -output "$translation_file" "$TERMINAL" -e less "$translation_file" # -view gives one line at a time? # "$TERMINAL" -e trans $brief -view -input "$text_file"