A powerful, scriptable, modular calculator aimed at scientific, engineering or computing work.
All features can be added, removed, and customised, and new features can be written in python.
For syntax and other topics, see the modularcalculator wiki.
- Linux
- One of:
- Flatpak
- or:
- Python 3.9+
- Qt 6.3+
- PyQt6
- libyaml
There is a flatpak available on Flathub.
Clone this repository, then run:
sudo ./install
If you download the source tarball, you'll also need to download the modularcalculator tarball and install it prior to running the above command.
sudo ./uninstall
"Modular Calculator" should be available in your desktop environment application menu.
Alternatively, run in a terminal:
- Flatpak:
flatpak run io.github.jordanl2.ModularCalculator
- Manual installation:
modularcalculator
Statements to be executed are entered in the left-hand pane, labelled "Input".
Multiple statements can be entered. Enter / Return inserts a new line.
For syntax and other topics, see the modularcalculator wiki.
The Insert menu helps with quickly inserting constants, dates, operators, functions, units and user-defined functions. These menus help discover what constants etc are available.
To execute the statements, press Ctrl+Enter, or click the Execute button on the menu bar.
The right-hand pane labelled "Output" will be cleared, and the results of all the statements in the input pane will be displayed in order.
The application stores all configuration options inside its config file: config.yml
.
The config files can be found in any of the below locations.
$XDG_CONFIG_HOME/ModularCalculator
(or$HOME/.config/ModularCalculator
)- Each directory in
$XDG_CONFIG_DIRS
, followed by/ModularCalculator
/etc/ModularCalculator
/app/share/ModularCalculator
(this is where the flatpak's config files are installed to, inside the flatpak)/usr/share/ModularCalculator
(this is where the manual installation installs the default files to)../config/ModularCalculator
(relative tomain.py
)
All found config files are merged together, with the top locations being highest precedence.
Themes are stored inside the config directory, inside themes/*.yml
.
These files contain themes to change the colours of the input and output contents.
An example can be found at config/ModularCalculator/themes/default.yml
Note: background
and background_alt
are optional and will default to your Qt theme's Base and Alternate Base colours.