math.fish: support floating-point maths

Closes #1643.

Thanks to Mickaël RAYBAUD-ROIG (https://github.com/m-r-r) for the idea
of printf.
This commit is contained in:
David Adam 2014-09-27 18:36:33 +08:00
parent a0e5cdd178
commit 7cad0069e8

View file

@ -7,8 +7,13 @@ function math --description "Perform math calculations in bc"
return 0 return 0
end end
set -l out (echo $argv|env BC_LINE_LENGTH=0 bc) # Override the locale so that the output can be used as input
test -z "$out"; and return 1 set -l LC_NUMERIC C
# GNU bc extension
set -l BC_LINE_LENGTH 0
set -l out (printf '%g' (echo $argv| bc -l))
test -z "$out"; and return 1
echo $out echo $out
switch $out switch $out
case 0 case 0