Ruby im Konsolenfenster

Du bist hier: Hinterkattentuffel - Ruby - Konsolenfenster erzeugen
Prev: Erste Schritte

Ein Weg, um ein Konsolenfenser auf einem Verzeichnis zu öffnen, ist das Kontextmenü. Dies muss jedoch zunächst entsprechend verändert werden. Man trägt einfach den für die Eingabeaufforderung zuständigen Kommandointerpreter cmd.exe beim Dateityp Directory ein. Dafür muss man allerdings den Registratureditor bemühen (Anleitung). Nach gleichem Vorbild kann man die interaktive Ruby-Shell irb ebenfalls ins Kontextmenü eintragen.

Wo wir gerade so schön dabei sind, in der Registratur herumzupfuschen: Die Eingabeaufforderung hat eine aktivierbare Tab-Expansion. Diese Tipps habe ich auf den Microsoftseiten gefunden, indem ich nach cmd und registry gesucht habe.

Bei korrekter Installation erkennt Windows Skripte mit der Endung rb als Rubyskript und öffnet sie mit dem Programm ruby.exe. Einzeiler kann man mit der Option -e auch direkt ausführen:

CMD>ruby -e "print 'Hello world!'"
Hello world!

Ab jetzt werde ich durch ein CMD> andeuten, dass eine Eingabe auf einer Kommandozeile erfolgt. Die zweite Zeile ist keine Eingabe mehr, sondern stellt das Ergebnis auf meinem Rechner dar.

Bei Detailfragen in Newsgroups sollte man immer angeben, mit welcher Interpreterversion man arbeitet:

CMD>ruby -v
ruby 1.8.2 (2004-12-25) [i386-mswin32]

Weitere Optionen liefert ruby -h, z. B. können wir unser Playlist-Programm im Debug-Modus laufen lassen:

CMD>ruby -d C:\bin\playlist.rb

Da der Debug-Modus detailiertere Fehlermeldungen erzeugt, lasse ich meine eigenen Skripte immer so laufen. Wer schonmal mit einem Debugger gearbeitet hat, sollte auch den Ruby-Debugger einmal ausprobieren:

CMD>ruby -r debug C:\bin\playlist.rb
Debug.rb
Emacs support available.

c:/ruby/lib/ruby/site_ruby/1.8/ubygems.rb:4:require 'rubygems'
(rdb:1) h
Debugger help v.-0.002b
Commands
  b[reak] [file|class:]<line|method>
  b[reak] [class.]<line|method>
                             set breakpoint to some position
  wat[ch] <expression>       set watchpoint to some expression
  usw.
(rdb:1) c
Wie oben zu sehen, führen wir im Debugger kurze Kommandos aus, z. B. das Kommando h für Hilfe oder c für Weitermachen (Continue). Wie wir sehen werden, gibt es ein ähnliches Programm, welches Ruby-Kommandos versteht.
Next: Dir in irb ausprobieren