Math Inclusive Live Editor
Try it out here!
A lot! The current iteration of MILE, "MASCII-JS", adds several new features including...
- ASCIIMath as the language of choice.
- Revision history at one hour (or longer) periods.
- Bracket closing and bracket wrapping (for highlighted text).
- Better looking UI.
- Autosaving (at five minute intervals).
- Improved text suggestion replacement.
- Sorted projects (currently only by most recent but selectable options coming soon!).
MILE now uses ASCIIMath as the language of choice. Its list of commands and syntax can be found here.
Suggestions are completed when the Tab
key is pressed or the suggestion is clicked on.
Name | ASCIIMath Equivalent |
---|---|
abs | abs{} |
alpha | alpha |
bar | bar{#{var}} |
because | :' |
beta | beta |
cancel | cancel{#{expression}} |
ceil | ceil{#{expression}} |
chi | chi |
complexnumberset | CC |
delta | delta |
Delta | Delta |
dot | dot{#{var}} |
doubledot | ddot{#{var}} |
emptyset | O/ |
epsilon | epsilon |
equals | = |
eta | eta |
floor | floor{#{expression}} |
fraction | frac{#{numerator}}{#{denominator}} |
gamma | gamma |
Gamma | Gamma |
greaterthan | > |
greaterorequals | >= |
hat | hat{#{expression}} |
infinity | oo |
intboth | int_{#{lowerBound}}^{#{upperBound}} |
integernumberset | ZZ |
intover | int^{#{upperBound}} |
intunder | int_{#{lowerBound}} |
iota | iota |
kappa | kappa |
lambda | lambda |
Lambda | Lambda |
lessthan | < |
lessorequals | <= |
limunder | lim_{#{limit}} |
mu | mu |
naturalnumberset | NN |
notequal | != |
nu | nu |
omega | omega |
Omega | Omega |
overbrace | obrace{#{expression}} |
overset | overset{#{sym}}{#{expression}} |
partial | del |
phi | phi |
Phi | Phi |
pi | pi |
Pi | Pi |
power | ^{exponent} |
prodboth | prod_{#{lowerBound}}^{#{upperBound}} |
prodover | prod^{#{upperBound}} |
produnder | prod_{#{lowerBound}} |
psi | psi |
Psi | Psi |
rationalnumberset | |
realnumberset | RR |
rho | rho |
sigma | sigma |
Sigma | Sigma |
strikethrough | cancel{#{expression}} |
sumboth | sum_{#{lowerBound}}^{#{upperBound}} |
sumover | sum^{#{upperBound}} |
sumunder | sum_{#{lowerBound}} |
tau | tau |
text | text(#{text}) |
therefore | :. |
theta | theta |
Theta | Theta |
tilde | tilde{#{var}} |
times | × |
towards | -> |
underbrace | ubrace{#{expression}} |
underline | ul{#{expression}} |
underset | underset{#{sym}}{#{expression}} |
upsilon | upsilon |
vec | vec{#{var}} |
xi | xi |
Xi | Xi |
zeta | zeta |
"Old MILE" will still exist as it's own branch on this repository. If you need, or want, a deployment of "Old MILE", please send an email to Jah-On-Inquiry [at] pm [dot] me or open an issue.
Extension | MILE Iteration/Code-Name | Current Compatible | Deployment Link |
---|---|---|---|
.majs |
MASCII-JS (current) |
Yes | Main |
.mil |
Old MILE |
No |
Please kindly report any bugs or provide format/operation/function suggestions!
Another great way would be by adding/improving the suggestions in the CSV file
Before doing steps in any section, except Modifying the CSV file
, be sure to...
- Ensure Node.js and a package manager such as
npm
are installed - Clone this repo (new to GitHub? Learn here!)
The CSV file represents each suggestion on its own line. Each suggestion contains the word, the ASCIIMath equivalent, and the completion offset. The completion offset sets how far back to move the cursor when a a suggestion is inserted. This file should not contain any spaces, tabs, etc. If you don't have a GitHub account but want to submit additions or modification, please email me the changed CSV file along with the purpose of each change.
This script is used to generate important structures such as markdown tables for documentation or JS maps that MILE uses in the code. The script must be ran from the root of the cloned project. Run it with node utils/nextTextGen.js <command>
where command is the target structure.
The currently supported commands are...
Word form | Short form | Standard form | Description |
---|---|---|---|
help |
-h |
--help |
Prints the list of commands |
map |
-m |
--map |
Prints out MILE JS Map |
table |
-t |
--table |
Prints out markdown table of suggestions |
npm install
to install the packages oncenpm run dev
to run it in development modenpm run build
to get a all-in-one, portable HTML file
MILE aims at making math more accessible as a whole but currently focuses on making the typing experience as efficient as possible. Little to no testing has been done to ensure proper behavior with screen readers, Braille, and other modalities. That being said, I try to ensure that all visual elements (buttons, images, etc.) have text alternatives or descriptors.
I have Cerebral Palsy which makes writing math, especially for prolonged periods of time, challenging. I wanted a tool that allows for faster typing to compensate for my slower typing, easier to memorize, allows for editing multiple problems within one app/windows, formats the problems neatly, exports easily to PDF (via the print subsystem) or prints directly, and is universally accessible across devices/operating systems.
All work is saved locally and there is an offline portable version of MILE currently. However, the offline file cannot read projects from the github.io site and vise versa.
MILE now saves your projects inside of your browser! However, these files are not backed up so it is your responsibility to export individual projects to back them up or share among people/devices.