Your Linux Calculator

HOME Articles Downloads Bash Shell Command Line Python and Data Science Books You Should Read NOW!

Recently, I was doing some math on my PC, tapping away on the virtual keypad of my calculator app. The thought dawned on me how silly it was to have in hand a device of immense computing power, yet pretend to use a pocket calc of limited capability. Why do a silly thing like that?

This website earns advertising fees by linking to commercial offers. If you make a qualifying purchase through a link on this website, we may earn a comission at no cost to you.

It is an easy and simple matter to do math on the command line. Why not release power of Python and C to do any sort of quick math I may need from a calculator? Read below to see how I set up two calculators: one for the command line and another to run in Rofi. If you already have Catbird Linux 4.2 or later, you already have both.

Rofi-calc

Rofi-calc is a plugin which provides calculator functions in a Rofi popup. On Arch Linux, OpenBSD, and OpenSUSE, it may be easily installed from the standard repositories. I was not as lucky with Ubuntu 20.04, where it is necessary to download, compile, and install the plugin. It is not difficult; I already had git and the build-essential tools.

If you don't have them, install the necessary packages:

apt update; apt install -y git build-essential autotools rofi-dev qalc libtool

Then clone the git repository, build, and install Rofi:

git clone --depth=1 https://github.com/svenstaro/rofi-calc
cd rofi-calc
autoreconf -i
mkdir build
cd build/
../configure
make
make install

When installed, the following code should be set up as a keybind or in a small script. I use a simple little script named "roficalc" with this line:

rofi -show calc -modi calc -no-show-match -no-sort

Rofi should pop up and present a calculator. On Catbird Linux, the calculator will look like this...

Doing some math in Rofi-calc
Doing some math in Rofi-calc

My Python REPL Calculator

Setting up a command line calculator with Python is even easier than setting up Rofi-calc. In fact, it is so useful that I may replace the graphical calculator in Rofi with the Python REPL.

Wait... What is a REPL? "REPL" is an acronym for "Read - Evaluate - Print - Loop." It is a way to interact through the terminal with the code interpreter. You enter a line of something, such as 4 * x**2 + 8 * y = 8 and get a calculated reply from the computer. There are plenty of different sorts of REPLS, to work with different languages. Here, we will use Python.

For more broad calculating power, some modules need to be imported. It is a simple matter to set up the Bash shell with some code in .bashrc (in the home directory) to load math and statistics. Here is some code:

# Python REPL calculator
alias calc='python3 -ic "from math import *; from statistics import *"'

After entering the above code into .bashrc, reload the config by entering the following on the command line:

. .bashrc

Try some math. Let's find the mean of a series of numbers and then try some simple operations. "$" in the prompt means the session is as the normal user. Use Python syntax for variables, exponents, and so forth. To exit the REPL, use Ctrl - D.

$ calc
>>> mean([20, 30, 40, 50, 60])
40
>>> x=3
>>> 4 * x**2 + 15
51

(grin) It works...

There are other Python modules available; some are not so useful for a simple calculator. My suggestion is to use a script for more complicated work. For all of the quick number crunching one would use a handheld calculator (or app) for, the REPL calculator does fine.




©2020 - 2022 Catbirdlinux.com, All Rights Reserved.
Contact Us, Privacy Policy and Affiliate Disclosure, XML Sitemap.