ASCII-Banner
Das Tool erlaubt die Erzeugung von ASCII-Bannern. Ein übergebener Text wird in ein Textbanner umgesetzt.
Beispiel: Aus Hallo Welt wird:
XX XX XXX XXX XX XX XXX X XX XX XX XX XX XX XX XX XX XX XXXXX XX XX XXXX XX XX XXXXX XX XXXXX XXXXXX X XX XX XX XX XX X XX XX X XX XX XX XX XXXXXX XX XX XX XX XXXXXXX XXXXXXX XX XX XX XX X XX XX XX XX XX XXX XXX XX XX XX XX XX XX XXXXX X XXXX XXXX XXXX XX XX XXXXX XXXX XXX
Das Progrämmchen liegt als Ruby-Gem und als ausführbares Windowsprogramm vor. (Siehe Download)
Aufruf und Parameterübersicht
Das Programm wird in einer Konsole (DOS-Box, Shell…) gerufen.
Im folgenden kommen Beispielsaufrufe mit einer kurzen Erläuterung. Statt banner.exe kann natürlich auch das im gem verpackte Skript banner.rb verwendet werden.
Ausgabebuchstaben
banner.exe Test
TTTTTT t T TT T tt TT eeeee sssssss ttttt TT ee e ss tt TT eeeeeee sssssss tt TT ee ss tt tt TTTT eeeee sssssss ttt
banner.exe -cX
Mit -c kann der Buchstabe definiert werden, in dem der Text erzeugt wird. Im Beispiel ist dies ein X.
Ohne den Parameter wird für jeden Buchstaben der Buchstabe selbst verwendet.
XXXXXX X X XX X XX XX XXXXX XXXXXXX XXXXX XX XX X XX XX XX XXXXXXX XXXXXXX XX XX XX XX XX XX XXXX XXXXX XXXXXXX XXX
Zeilenumbrüche
banner.exe Zeile1 Zeile2
Durch Leerzeichen getrennte Worte kommen auf neue Zeilen.
ZZZZZZZ ii lll 1 Z ZZ ll 111 ZZ eeeee iii ll eeeee 11 ZZ ee e ii ll ee e 11 ZZ eeeeeee ii ll eeeeeee 11 ZZ Z ee ii ll ee 11 ZZZZZZZ eeeee iiii llll eeeee 1111 ZZZZZZZ ii lll 2222 Z ZZ ll 22 22 ZZ eeeee iii ll eeeee 22 ZZ ee e ii ll ee e 22 ZZ eeeeeee ii ll eeeeeee 22 ZZ Z ee ii ll ee 22 2 ZZZZZZZ eeeee iiii llll eeeee 2222222
banner.exe -n/ Zeile1/Zeile2
Der Parameter -n definiert ein Zeichen, dass eine neue Zeile bewirkt. Im Beipsiel wurde / verwendet.
ZZZZZZZ ii lll 1 Z ZZ ll 111 ZZ eeeee iii ll eeeee 11 ZZ ee e ii ll ee e 11 ZZ eeeeeee ii ll eeeeeee 11 ZZ Z ee ii ll ee 11 ZZZZZZZ eeeee iiii llll eeeee 1111 ZZZZZZZ ii lll 2222 Z ZZ ll 22 22 ZZ eeeee iii ll eeeee 22 ZZ ee e ii ll ee e 22 ZZ eeeeeee ii ll eeeeeee 22 ZZ Z ee ii ll ee 22 2 ZZZZZZZ eeeee iiii llll eeeee 2222222
banner.exe -n/ Zeile1 Zeile2
Soll kein Zeilenumbruch an Leerstellen erfolgen, so kann man einfach ein im Ausgabetext nicht verwendetes Zeichen als Zeilentrenner verwenden.
Der Umbruch findet dann nach etwa 72 Zeichen statt.
ZZZZZZZ ii lll 1 ZZZZZZZ ii Z ZZ ll 111 Z ZZ ZZ eeeee iii ll eeeee 11 ZZ eeeee iii ZZ ee e ii ll ee e 11 ZZ ee e ii ZZ eeeeeee ii ll eeeeeee 11 ZZ eeeeeee ii ZZ Z ee ii ll ee 11 ZZ Z ee ii ZZZZZZZ eeeee iiii llll eeeee 1111 ZZZZZZZ eeeee iiii lll 2222 ll 22 22 ll eeeee 22 ll ee e 22 ll eeeeeee 22 ll ee 22 2 llll eeeee 2222222
banner.exe -n/ -w120 Zeile1 Zeile2
Soll kein automatischer Zeilenumbruch nach 72 Zeichen stattfinden, so kann man es mit dem Parameter -w erweitern.
ZZZZZZZ ii lll 1 ZZZZZZZ ii lll 2222 Z ZZ ll 111 Z ZZ ll 22 22 ZZ eeeee iii ll eeeee 11 ZZ eeeee iii ll eeeee 22 ZZ ee e ii ll ee e 11 ZZ ee e ii ll ee e 22 ZZ eeeeeee ii ll eeeeeee 11 ZZ eeeeeee ii ll eeeeeee 22 ZZ Z ee ii ll ee 11 ZZ Z ee ii ll ee 22 2 ZZZZZZZ eeeee iiii llll eeeee 1111 ZZZZZZZ eeeee iiii llll eeeee 2222222
Hilfe
banner.exe -h
Mit -h wird ein Hilfetext ausgegeben
Usage: banner.rb [options] Text Build ASCII-art like text banners -c, --char CHAR Character for banner -n, --newline CHAR Character for newline, Default space -w, --width WIDTH Define line width -s, --space Don't suppress spaces after newline
Weitere Ideen
Banner könnte noch erweitert werden. Im folgenden einige Ideen und deren Realisierungswahrscheinlichkeit.
Generell gilt, das das Banner jetzt schon etwas mehr macht als ich ursprünglich wollte. Von meiner Seite besteht kein weiterer Entwicklungsbedarf. Sollte es Bedarf geben könnte es allerdings ein kleiner Motivationsschub für mich sein und ich mache mich evtl. an eine Umsetzung.
Verschiedene Fonts
Ausgabe in verschiedenen im System vorhandenen Fonts.
⇒ Keine Realisierung geplant
Proportional/Nichtproportional
Aktuell sind die meisten Zeichen in der Ausgabe 9 Zeichen breit. Einige werden schmaller ausgegeben (hauptsächlich Sonderzeichen wie !,.()[]….
Man könnte die Buchstaben jeweils einzeln anpassen und z.B. das i auch schmaller setzen.
⇒ Parameter -p vorgesehen, Implementation eher nein.
Sonderzeichen
Welches fehlt und wird benötigt?
Unicode
Nicht geplant, aber evtl. wird das mal eine kleine Spielwiese für mich wenn ich mich ernsthaft mit Unicode beschäftige.
Aber die komplette Unicode-Tabelle wird garantiert nicht umgesetzt ;-)
⇒ Aktuell keine Realisierung geplant
Rahmen
Man könnte die Texte in Rahmen setzen.
⇒ Aktuell keine Realisierung geplant