A noble spirit embiggens the smallest man — Springfield Town Motto (S7E16)
why does this exist?
This is a tool that I made for teaching in a NYC public high school, continually confronted by a few constraints and needs that I have:
Must work on all smartboards: I work in four different classrooms over the course of my week with four different main display devices that all have different settings. What looks good on one screen is slightly different on another because of slight differences that Google Slides does not compensate for.
RFC 1345 Mnemonic compatibility: I work with students speaking languages like Russian and Arabic and it would be nice to be able to type short things in these languages using a series of character mnemonics that my preferred text editor Vim uses. I may want to use it to correctly put an accent on a person's name. I don't intend to memorize another keyboard layout. I do carry around a USB/bluetooth keyboard so I can plug it into these devices to type on the board without Wi-Fi tethering a whole monitor through AppleTV which is slow/unstable in my building.
Sigmas and square roots: As a Physics teacher, I may suddenly need Greek characters or mathematical symbols. My usual solution on Linux and OSX devices is, again text expansion with RFC 1345 character mnemonics, but these need to be preconfigured on smartboards as text expansions, one by one. I'm trying to avoid capital greek delta google searches.
Fit text to screen: I frequently need to make a block of text of unpredictable length the biggest possible size on the screen, frequently coming from my translator at tinyurl.com/garbage-translate. I don't want to fumble at the board with a font size menu or trying to select all of the needed text. Sometimes I just want to write Do your labs without any more fanfare than that.
Slides without login: Most of my use of Google Slides or similar tools is to merely make some words larger next to maybe a picture, I'm not a power user of the features of Slides. Logging in to edit or even view a folder of them is cumbersome and your password is shown on the screen briefly on some devices which is a bad idea. Again, multiple computers. If we switch email domains to the central one, I would have to use 2FA on every login.
Adjustable on-the-go: It would be nice to be able to make my large text even larger temporarily for visual issues in my students. This isn't possible on Slides without rearranging things. Slides are designed to look like big pictures and don't scroll. I may be using this to display html code or other types of code at times. People don't like reading monospace font all of the time, so the font must be changeable as well.
Chock full of obnoxious features: You have to understand where I am coming from as a high school computer science teacher. I may want to, on a whim, change the color or other presentation settings of the screen to demonstrate that I do have control over all of these things as a web developer who added controls for changing it in front of a classroom and not behind a computer terminal. I am also coding this website as a playground of sorts. Its under-the-hood programming that changes CSS on the fly with JavaScript creates an authentic need for the tougher parts of a web design course and is intended to provoke the students to try to investigate how it works.
So, gradually I made that happen. There are two places where I got JavaScript help from one of my students, in the parsing of query string parameters, and in the function that implements replacing RFC 1345 mnemonics in the text. I'll ask him if I have his permission to mention his name beyond the initials mentioned on the main page: V.V.
The color scheme is Ethan Schoonover's Solarized. →████████←
→████████←. You can read more about his very thoughtfully-designed light/dark color scheme here. I have followed his design principles in assigning the colors and programming the way the light mode and dark mode toggle. Toggle here: .
feature list
Type text into the top to make it big. All characters should be displayed including newlines and tabs.
Control the size and styling of the text using the controls below the display:
Scale controls the size of the text. The plus and minus buttons will double or halve the size of the text if you press them twice. Be careful to not trigger a zoom with a double click on a tablet.
Fit will fit all of the text to the screen. You don't want this if this makes the text too small to read, so use an explicit scale value for that.
Color changes the color of the text from the Solarized default to any of the other 15 colors in the set. These can be overridden by other settings below.
Font changes the font but it should be noted:
a Serif/Sans-serif/monospace font all use the device fallback for that font-family.
Fira Code has ligatures that don't change the length of the rendered code but may be confusing if you aren't expecting them.
The final five fonts have good glyphs for Latin characters but are also specialized for displaying things in Arabic.
Align allows Left Center and Right aligning.
Light Mode will enable light background and dark text.
Decode RFC 1345 will replace any present character mnemonics with their Unicode equivalents in the input box
Write to URL will save all parameters and text in the input box to the URL. This is useful for sharing or adding these links to a publicly accessible Google Doc.
The long text box below all of these is the secret parameters box. These secret parameters are stored in the URL if you click the Write to URL button. These parameters are explained further if you click the ❓ emoji under the secret parameters.
There are some helpful links at the bottom of the screen in small font:
🆒: the page you are on now.
❓: secret parameter documentation, explains how to use all of the secret features that don't have visible controls.
🗑: my translator. For embiggened results, enable pretty mode by checking the p checkbox on each line you translate. It will make a link that puts the text directly into the embiggener (demo).
╕: box characters for monospace box drawings, for your copying and pasting convenience.
ض: a reference for the RFC 1345 digraphs I implemented and a brief demonstration of their use. I may add the variable length mnemonics at a later time.
examples
To demonstrate the capabilities of this tool, I'd like to just leave some examples that I have used myself: