aboutsummaryrefslogtreecommitdiffstats
path: root/.config/herbstluftwm/calc.sh
diff options
context:
space:
mode:
Diffstat (limited to '.config/herbstluftwm/calc.sh')
-rwxr-xr-x.config/herbstluftwm/calc.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/.config/herbstluftwm/calc.sh b/.config/herbstluftwm/calc.sh
new file mode 100755
index 0000000..aa041a6
--- /dev/null
+++ b/.config/herbstluftwm/calc.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+acc=0
+in="first"
+prompt="calc:"
+pi="3.1415926535897932384626433832795028841971694"
+e="2.7182818284590452353602874713526624977572471"
+while [ "$in" != "" ]; do
+ val=0
+
+ in=$(echo "" | dmenu -q -h 18 -nb $1 -nf $2 -sb $3 -sf $4 -p "$prompt")
+
+ out=$(echo "pi=$pi; e=$e; $acc $in" | calc -p 2>&1 | tr -d "\n")
+
+ if [ "$out" = "Missing operator" ]; then
+ out=$(echo "pi=$pi; e=$e; $in" | calc -p 2>&1)
+ fi
+
+ # check for error output
+ if [ "${?#0}" != "" ]; then
+ out=$(echo "$out" | tr -d "\n")
+ prompt="calc: ($acc) err: $out"
+ else
+ acc=$out
+ prompt="calc: ($acc)"
+ fi
+done
+