Math-converter has been tested on Windows 10 version 21H2, but should be compatible with most modern versions of Windows. Three non-standard DLL-files are required (libgcc_s_seh-1.dll
, libstdc++-6.dll
and libwinpthread-1.dll
,), but these are distributed alongside the program.
Math-converter has been tested on Ubuntu 22.04 LTS, but should be compatible with most modern Linux distributions. The Linux-version of math-converter relies on the X Window System or X11 for hotkey, "clipboard" and keystroke functionality, and therefore only works with X11-based applications. Additionally, the commands to show the help text and the user guide rely on xdg-open
to open URLs.
There is only one hotkey in math-converter: CTRL + SHIFT + V
. This will attempt to convert plain text from the user's clipboard from the selected input math format to the selected output math format and then type it into the active window or place it in the user's clipboard.
List of supported math formats for input:
- Mathcad
When copying from Mathcad, be sure to copy from within a math field i.e. with the gray highlighting. Copying the entire or even several math fields with the blue highlighting is not compatible with math-converter.
List of supported math formats for output:
- Mathcad
- LaTeX
- MathML (presentation)
- UnicodeMath
While not all math syntax is supported, a variety of commonly-used features are implemented. Mathcad is the starting point for the program, and the feature set reflects this.
- Addition, subtraction, multiplication and division
- Root and power
- Equality (evaluation, comparison and definition)
- Inequality (not equal, less than, greater than, less than or equal, greater than or equal)
- Parentheses
- Trigonometric functions (sin, cos, tan, cot, arcsin, arccos, arctan, arccot, sinh, cosh, tanh, coth, sec, csc)
- Factorial
- Absolute value
- Derivative and integral
- Matrix
- Vector product
- Sum and product
- Logical NOT, AND and OR
- Variable, unit and function formatting
- Text subscript
- Degree symbol
- Percentage
- Range and step range
- Element of
- Complex numbers
The supported input character set can be extended with additional, user-made .json
files under /resources/character-sets/
, which are loaded at program launch. Characters not in the character sets will be discarded. Additionally, configuration can be achieved at runtime via the terminal window the program runs in. Settings are saved to /config/settings.conf
. The currently supported configuration commands include:
- Show help
- Show current settings
- Open user guide
- Open download page
- Set update checking behavior
- Set decimal separator
- Set output mode
- Set input format
- Set output format
All configuration commands are case-insensitive. Should the user enter a non-ASCII character in a command, it may cause an "unknown character" error. The error message may specify that "the character was not found in any of the supplied character sets". The character sets referred to in the error message have nothing do with with the character sets in /resources/character-sets/
. Indeed, the error message should be of no concern, since none of the commands use characters from outside the ASCII set.
This command displays help about the configuration commands.
Command aliases: h help ?
Available arguments: none
Example: h
This command displays the current settings for decimal separator, output mode, input format and output format.
Command aliases: s show settings
Available arguments: none
Example: s
This command opens the user guide on math-converter's Github.
Command aliases: g guide userguide
Available arguments: none
Example: g
This command opens the release page for the latest release on math-converter's Github for ease of access to the latest version. The program will automatically check for new releases on launch.
Command aliases: download
Available arguments: none
Example: download
This command controls whether or not math-converter checks for new releases upon launch.
Command aliases: check
Available arguments: enabled true disabled false
Example: check false
This command sets the decimal separator to either a period or a comma. The default is a period.
Command aliases: d dec ds sep
Available arguments: period . comma ,
Example: d ,
This command sets the output mode. When using the Keystrokes
mode, the output is sent to the focused window via simulated keystrokes. Alternatively, the output can be placed in the clipboard by using the Clipboard
mode, after which it can be pasted with the usual CTRL + V
shortcut. Some programs provide autocompletion of user input, which may prevent the Keystrokes
mode from functioning correctly. The Clipboard
mode is intended to circumvent this.
Command aliases: m mode
Available arguments: keystrokes keys clipboard clip
Example: m clip
This command sets the input format. This is the format of the source math that the user copies to the clipboard. If the clipboard contents do not correspond to the input format setting, math-converter will not function correctly.
Command aliases: i in input
Available arguments: mathcad
Example: i mathcad
This command sets the output format. This is the math format to convert to for use at the destination.
Command aliases: o out output
Available arguments: mathcad latex mathml unicodemath unicode
Example: o latex
For inquiries regarding math-converter, contact the author via email on [email protected] or by message on Discord to Thomas#5904
.