The asciiArt script from 42 Astoundingly Useful Scripts and Automations for the Macintosh• is astoundingly useful, as the title of the book implies, and can be used for a wide variety of purposes. I originally made this image for Independence Day, overlaying the Declaration of Independence on a drawing of the Betsy Ross flag. The Betsy Ross flag’s simple design is perfect for sequential ASCII art. The circle is a simple geometric element that shows up when placed in text; the stars of the modern 50-star flag get muddled unless the text is made so small as to be unreadable.
- Download the Betsy Ross flag for use with the asciiArt script: Betsy Ross flag (PNG, 24.9 KB)
- Place it in a folder where you can run the asciiArt script.
- Open the Terminal.
- Type “cd”, a space, and then drag your work folder onto the Terminal. Press the RETURN key, and you’re ready to create ascii art from the Betsy Ross flag.
Because the flag is such a simple design, when recreating it using text for the greyscale it makes more sense to keep the number of characters small. Here’s the Betsy Ross flag with just the asterisk, equals, and exclamation:
- ~/bin/asciiArt "Betsy Ross Flag.png" --palette "*=! "
*********************************************=========================================================================== **********************==*********************=========================================================================== ***************====**====**====**************=========================================================================== ***************====**=!!=**====**************=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! **********======!!=**====**=!!======*********= **********==!======********======!==*********=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *********===!==****************==!===********=========================================================================== ********======******************======*******=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ********=!!==*********************=!!=*******= ********=====********************=====*******=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *********=!!=********************=!!=********=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *********=!!====***************===!!=********=========================================================================== *********========**=*********========********=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ************=!!!=*====**====*=!!!=***********= ************====*==!!=**=!!==*====***********= ******************=!==**==!=*****************=!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ======================================================================================================================== ==============================================!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ======================================================================================================================== !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ======================================================================================================================== ======================================================================================================================== !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ======================================================================================================================== ======================================================================================================================== ========================================================================================================================
You can imagine that even this would get pretty muddled with either (a) fifty stars, or (b) a larger palette to draw from.
More appropriately, though, the simple Betsy Ross flag can have its colors superimposed over other text. The command to create a flag based on the Declaration of Independence is a long command due to having to reproduce the entire preamble on the command line. This is even longer than the Peanuts quote from the book•. If I’m going to keep using longer and longer text with this script, I should probably add the ability to make the palette be a file. Probably before I put the entire Gettysburg Address over the Lincoln Memorial, I’ll need to do that.
Fortunately, it’s easy enough to copy and paste from the Declaration (in, say, Safari) into Terminal.
- ~/bin/asciiArt "Betsy Ross Flag.png" --palette "We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness. That to secure these rights, Governments are instituted among Men, deriving their just powers from the consent of the governed, That whenever any Form of Government becomes destructive of these ends, it is the Right of the People to alter or to abolish it, and to institute new Government, laying its foundation on such principles and organizing its powers in such form, as to them shall seem most likely to effect their Safety and Happiness. " --sequence .9 --quiet --save declaration.png --colors --blank " " --width 240
If you want a shorter text, more appropriate for Patriot Day, you could simply quote Todd Beemer:
- ~/bin/asciiArt "Betsy Ross Flag.png" --palette "Are you guys ready? Okay, let’s roll. " --sequence .9 --quiet --save roll.png --colors --blank " " --width 240
Without the courage of Beemer and the other men on Flight 93 who fought back, I doubt we’d be commemorating Patriot Day on September 11. I suspect the national mood following September 11, 2001, would have been very different. They were heroes, and what they did reverberated far beyond the hundreds or thousands of lives they saved.
We may not be asked to scramble up over a trench and across a muddy field in Flanders, but it’s all too possible we may be called upon to demonstrate great heroism close to home, as the firemen of New York and the passengers of Flight 93 were. They are the Dead. They lived, felt dawn, saw sunset glow, loved and were loved. They did not deserve their premature deaths. But they join the untold legions who helped the Union win the Civil War, the Americans and the British Empire win the Great War, and the Allies the Second World War. — Mark Steyn (The Face of the Tiger•)
It is very easy to say “never forget”, but it’s a lot harder to remember what we were once so dedicated to never repeating.
- 42 Astoundingly Useful Scripts and Automations for the Macintosh•: Jerry Stratton at Amazon.com (paperback)
- If you have a Macintosh and you want to get your retro on, take a look at 42 Astoundingly Useful Scripts and Automations for the Macintosh. These modern scripts will help you work faster and more reliably, and inspire your own custom scripts for your own workflow.
- Betsy Ross flag (PNG, 24.9 KB)
- A simple drawing of the Betsy Ross flag.
- The Face of the Tiger•: Mark Steyn
- Mark Steyn’s columns from just before September 11 to a year later. It’s an insightful look at how Americans responded to the September 11 attacks and how the world responded to Americans, written by a Canadian immigrant who maintains citizenship in two worlds, New Hampshire and Quebec.
More American flag
- The Star-Spangled Banner in MIDI
- What could be more appropriate for the fireworks of the Fourth of July than a song about bombs bursting in air, illuminating a great flag rippling defiantly to a hostile world?
- First Sergeant Reginald Daniels provides a counter-argument for the flag
- First Sergeant Reginald Daniels explains why the flag is important.
More ascii art
- Create your own ASCII art palettes with densitySort
- You can create your own ASCII art palettes from special (fixed pitch) fonts and specific collections of characters, using the densitySort script here.
- Random colors in your ASCII art
- One of the great things about writing your own scripts is that when you need new functionality, you can add it. I needed random colors in a single-character ASCII art image. It was easy to add to the asciiArt script. Here’s how.
- Hello World in Amber
- A hello world too retro even for me.
- Have a Merry Scripting Christmas with Persistence of Vision
- The ASCII Merry Christmas from Astounding Scripts was taken from a scene I created in Persistence of Vision. It’s a very simple scene that highlights many of the advantages of using POV to create images.
- A thousand points of color: give your photos a pointillist turn
- I had far too much fun with that kleenex mask in the book. Here’s a more serious look at creating pointellated images using the asciiArt script in 42 Astounding Scripts.
- Three more pages with the topic ascii art, and other related pages
More Fourth of July
- A Bicentennial Meal for the Sestercentennial
- Four community cookbooks celebrating the bicentennial. As we approach our sestercentennial in 2026, what makes a meal from 1976?
- Let mortal tongues awake
- Samuel Francis Smith’s America—more commonly known as “My Country, ’Tis of Thee”— is short, direct, and a wonderful hymn to God as the soul of liberty. It’s a perfect hymn for the Fourth of July. It’s also very easy to play using the piano script from 42 Astounding Scripts.
- The Star-Spangled Banner in MIDI
- What could be more appropriate for the fireworks of the Fourth of July than a song about bombs bursting in air, illuminating a great flag rippling defiantly to a hostile world?
For an amazing look at the year following September 11, 2001, I recommend Mark Steyn’s The Face of the Tiger•. As a Canadian immigrant, he has a unique view of both America’s and the world’s responses to the attack.