- Notifications
You must be signed in to change notification settings - Fork3
Lotus 1-2-3 compatible spreadsheet for terminals with physics unit engine
License
freakout42/macrocalc
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
mc - MacroCALC is a Lotus 1-2-3 compatible character based spreadsheet thatsupports 100000 rows, 700 columns, 40 functions, display formats, file linking,macro programming, pipes and user definable functions. It runs on everyterminal or emulation that has a correct terminfo-entry. The user-interface isvery convenient and well-known by 1-2-3 users. Function- and arrow-keys andextended video attributes are supported.
MacroCALC is the only spreadsheet that manages units: 1 mile + 1 km = 1.62 miles;1 km / 1 hour * 30 sec = 8.33 m. This can be seen as a physical engine.It also has support of complex numbers with complex arithmetic and functions.So sqrt(-1) = i and E ^ (I * PI) + 1 = 0.
Build from source und install for one user only without sudo
Building mc needs an ANSI-C compiler with curses-lib, lex and yacc. Clone and./configure
followed bymake
. All programs are build into./dist/arx
andcan run without sudo-installation directly from the build-directory. To startthe spreadsheet simply:dist/arx/bin/321
- for a user-install you are done.Install systemwide
After build (1.)sudo make install
installs in/opt/arx/
. Nothing outside/opt/arx/
will be touched in any way by the installation. Removing mc is simplydone by a recursiverm -r /opt/arx
. For convenience/opt/arx/bin
should beadded to the PATH in a system appropriate manner.321
ormc
will then work.Binary with precompiled tarball
Download the released assetmc-<releasetag>-<platform>-<hardware>.tar.gz
foryour platform (lu-Linux l6-Linux64 fb-FreeBSD md-MacOS) and untar to/opt/arx
.Add/opt/arx/bin
to $PATH and you are done to use the system by321
ormc
.RPM package install
Downloadmacrocalc-<releasetag>.i386.rpm
andsudo rpm --nodigest --nofiledigest -i macrocalc-<releasetag>.i386.rpm
sudo ldconfig
After a relogin macrocalc will start by321
ormc
.
You need i686 glibc installed on 64bit machines:sudo yum install glibc.i686
Docker image
docker pull ghcr.io/freakout42/macrocalc:latest
export COLUMNS="$(tput cols)"
export LINES="$(tput lines)"
docker run -e COLUMNS -e LINES -e TERM -ti ghcr.io/freakout42/macrocalc:latest
Windows .exe Download
https://github.com/freakout42/macrocalc/releases/download/v10.53/mc-10.53-w3-i386.exe.zip
and unzip mc.exe and mc2wks.exe. Start it with any console with fullpathname or double-click it with the explorer.
The sourcecode of MacroCALC is from 1979 - there is no unicode (UTF-8) support.For international characters configure your terminal for an 8-bit codebase:
If you are using PuTTY you must set for the session:
Window->Translation->Remote character set = ISO-8859-15
With the MacOS Terminal application:
Settings->General->Profiles->International-> Text Encoding = Western (ISO Latin 9)X Set locale environment variables on startup
Start a local xterm with:
LC_ALL=en_US.iso885915 LANG=en_US.iso885915-US xterm
Navigate through the sheet with the arrow-keys. The dot (.) marks thebeginning and end of a range, which can be copied or manipulated with themenu by the slash (/). The apostrophe (') starts a text-cell, any otherkey a number or formula. Open "mc" and type (|v|
is the down-arrow-key):
. ' h e l l o |v|
you have marked A1 as range starting point and set A1 to text "hello".Lets enter some numbers and a formula:
1 |v| 2 |v| . a 2 + a 3 $ |v|
you have now A2=1 A3=2 A4=3 and A1..A4 as range. Now navigate to B1 and:
/ c |v| 3 |v| 4 |v|
you have copied the range A1..A4 to B1..B4 and set B2=3 B3=4 and B4=5.Why is B4=5 and not 3 or 7? Because you typed $ after a3 this makes ita relative cell reference [+0;-1] and refers to B3 in the copied formula.
REMEMBER TO START MacroCALC WITH THE-u
OPTION TO USE UNITS
To enter a value with an unit add the unit at the end enclosed incurly brackets. For example to enter 1 meter and 1 km and add both:
1 { m } |v| 1 { k m } |v| a 1 + a 2 |v|
you will see1001 m
as the result.
Simplified BSD LicenseCopyright (c) 2024, Axel K. ReinholdAll rights reserved.
About
Lotus 1-2-3 compatible spreadsheet for terminals with physics unit engine
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors4
Uh oh!
There was an error while loading.Please reload this page.