Depuis:
special A B C <input goes here>
3 Réponses :
solution assez étrange consiste à créer un fichier avec variables et p>
Cela ne permet pas facilement de passer des paramètres dans un clone shell basé sur une irb interactif.
Je pense que vous avez mal compris la question. Il s'agit de remplir la constante ARGV peuplée avec des paramètres passés sur la ligne de commande.
En regardant la source du la source du module IRB: p> bas à Il est codé en dur de prendre cette option comme nom de script (@conf [: Script] = Opt). Heureusement, c'est rubis. La première idée que j'avais utilisée utilisait un script différent pour lancer IRB qui modifie d'abord le module. P> ~ / bin / personnalisé-irb: p> IRB code> exécutable:
parse_opts code>, notre méthode de problème: p>
personnalisé-irb foo bar baz code> et argv sera
['foo', "bar", "baz"] p> p>.
+1 laid, mais obtient le travail. C'est la Susan Boyle de scripts.
Nice Hack @scragz. Il peut donner un sens à autoriser irb - a b c code> comme moyen de contourner la condition de fichier, mais votre réponse couvre bien la question.
Oui, permettant à IRB - A B C adresserait à la préoccupation des affiches originales et élimine le code dupliqué. Quiconque se soucie d'interroger le mainteneur IRB actuel pour un patch rapide?
Vous pouvez créer un fichier qui modifie ARGV puis utiliser '-r' pour l'inclure.
$ echo 'ARGV = ["testing", "1","2","3"]' > ~/blah.rb && irb -r ./blah test.rb /home/me/blah.rb:1: warning: already initialized constant ARGV test.rb(main):001:0> require 'pp' => true test.rb(main):002:0* pp ARGV ["testing", "1", "2", "3"] => ["testing", "1", "2", "3"] test.rb(main):003:0>
C'est une série de code et d'exemples gravement formatés. Essayez d'essayer de rééditer et de formater à l'aide des exemples fournis dans Aide d'édition . Normalement, j'aiderais à la nettoyer pour vous, mais il y a trop, et je ne connais pas votre intention.
Pourquoi voulez-vous passer des arguments si vous pouviez les mettre en IRB? Les arguments sont-ils utilisés par le spécialBibrary?
Je veux alias "spécial == irb -rspeciallibrary" afin que je puisse faire quelque chose comme "spécial a b c" comme illustré ci-dessus.
J'ai nettoyé l'exemple de code à l'aide de l'aide d'édition ... Merci pour le pointeur.
Pensez-y comme essayant de paramétrer une coque interactive construite à partir d'IRB avec une fonctionnalité supplémentaire fournie par un module requis i> (à l'aide de -R)