Frage

Für diejenigen, die DrScheme noch nicht verwendet haben: Das Fenster ist in zwei Teile geteilt:Ein Teil ist eine Datei, die Sie bearbeiten, und der andere Teil ist eine interaktive Shell.Wenn ich eine Datei ausführe, wird sie in eine interaktive Umgebung geladen, sodass ich von mir definierte Funktionen usw. aufrufen kann.Die interaktive Umgebung verfügt weiterhin über alle Funktionen eines Texteditors (Syntaxhervorhebung, automatische Vervollständigung usw.).

Gibt es also eine IDE für Ruby, die nicht nur das von mir erstellte Skript ausführt, sondern es stattdessen in irb lädt, mit allen Extras des Texteditors?

War es hilfreich?

Lösung

Genau diese Bitte (bis hin zur Tatsache, dass Dr. Scheme sie motiviert hat) hat mich schließlich dazu bewogen, Emacs zu lernen.

Folgendes habe ich getan, um es unter Windows Vista zu installieren:

  1. Laden Sie Emacs herunter von http://ftp.gnu.org/gnu/windows/emacs/emacs-22.3-bin-i386.zip

  2. Entpacken Sie es in das Verzeichnis Ihrer Wahl

  3. Erstellen Sie nach dem Entpacken eine beinhaltet Verzeichnis an eine beliebige Stelle kopieren und beides dorthin kopieren ruby-mode.el Und ruby-inf.el (Diese liegen der Ruby-Distribution im Verzeichnis „misc“ bei und können auch hier heruntergeladen werden Rubys Quelle

  4. Ändern Sie Ihre .emacs um ihm mitzuteilen, wo sich Ihre Includes befinden und wie sie verwendet werden sollen

; directory to put various el files into
(add-to-list 'load-path "C:/emacs-22.3/includes")
;(1)modify .emacs to use ruby-mode 
(autoload 'ruby-mode "ruby-mode"
  "Mode for editing ruby source files" t)
(setq auto-mode-alist
      (append '(("\\.rb$" . ruby-mode)) auto-mode-alist))
(setq interpreter-mode-alist (append '(("ruby" . ruby-mode))
                              interpreter-mode-alist))
;(2)set to load inf-ruby and set inf-ruby key definition in ruby-mode. 

(autoload 'run-ruby "inf-ruby"
  "Run an inferior Ruby process")
(autoload 'inf-ruby-keys "inf-ruby"
  "Set local key defs for inf-ruby in ruby-mode")
(add-hook 'ruby-mode-hook
      '(lambda ()
         (inf-ruby-keys)
))

(optional) Ich habe es auch installiert mode-compile.el aus http://perso.tls.cena.fr/boubaker/distrib/mode-compile.el und die entsprechenden Änderungen in .emacs vorgenommen

; Install mode-compile
(autoload 'mode-compile "mode-compile"
   "Compile current buffer based on the major mode" t)
(global-set-key "C-cc" 'mode-compile)
(autoload 'mode-compile-kill "mode-compile"
 "Kill compilation launched by `mode-compile'" t)
(global-set-key "C-ck" 'mode-compile-kill)

Mit diesen Änderungen identifiziert Emacs automatisch eine .rb-Datei als Ruby und führt eine Syntaxhervorhebung durch.Dann startet irb mit dem Akkord \C-c\C-s (Strg-c, loslassen und dann Strg-s) im Feld unter Ihrer Datei und Sie können alle von inf-ruby definierten Tasten verwenden:(\M ist der Metaschlüssel, der für Windows Alt bedeutet)

  "\C-c\C-b" 'ruby-send-block
  "\C-c\M-b" 'ruby-send-block-and-go
  "\C-c\C-x" 'ruby-send-definition
  "\C-c\M-x" 'ruby-send-definition-and-go
  "\C-c\C-r" 'ruby-send-region
  "\C-c\M-r" 'ruby-send-region-and-go
  "\C-c\C-z" 'switch-to-ruby
  "\C-c\C-l" 'ruby-load-file
  "\C-c\C-s" 'run-ruby

Wenn Sie den optionalen Schritt ausgeführt und mode-compile installiert haben, können Sie auch \C-cc verwenden, um die aktuelle Datei an Ruby statt an irb zu senden

Andere Tipps

Ich habe nicht mit DrScheme noch gearbeitet, aber Netbeans 6.5 enthält eine voll funktionsfähige IRB. Haben Sie es versuchen gegeben?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top