2011-07-01 1 views
10

EDIT: J'ai trouvé une solution pour cela, vous pouvez le lire dans ma réponse ci-dessous. J'utilise Textmate sur Snow Leopard, et j'ai installé ruby ​​1.9. Le problème est que pour une raison quelconque Textmate utilise Ruby 1.8.2Comment changer la version de Ruby que Textmate utilise?

Mais quand j'utilise IRB, ou que j'exécute des scripts ruby ​​pour le shell, la bonne version de Ruby (1.9) est utilisée.

Comment puis-je configurer Textmate pour qu'il utilise 1.9.2? J'ai cherché sur Google et apparemment vous devez utiliser la variable T_RUBY et textmate, et définir une variable d'environnement dans OSX, mais jusqu'à présent aucune des méthodes que j'ai trouvé ne fonctionne pour moi.

Quelqu'un pourrait donner une solution étape par étape à ce problème?

Mise à jour: Je l'ai déjà essayé d'ajouter le chemin binaire rubis à TM_RUBY dans TextMate, et je reçois cette erreur:

> Can't find 
> “/Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby 
> /Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby 
> /Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby 
> ” on PATH. Theme: The current PATH is: 
> /usr/bin /bin /usr/sbin /sbin Please 
> add the directory containing 
> “/Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby 
> /Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby 
> /Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby 
> ” to PATH in TextMate's Shell 
> Variables preferences. 
+0

Il peut aider à exécuter ** ligne (^ R) ** dans un nouveau document TextMate: '-a taper ruby ​​&& echo "TM_RUBY = TM_RUBY $" && echo "PATH = $ PATH"' – sam

Répondre

0

En utilisant le chemin que qui ruby ​​ m'a donné didnt travail. Après un peu de googling, j'ai trouvé une solution qui fonctionnait, en utilisant le chemin auto-ruby de rvm comme variable TM_RUBY. Le chemin est: /Users/0al0/.rvm/bin/rvm-auto-ruby Ceci s'applique uniquement si vous utilisez RVM, bien sûr.

7

Sous Préférences/avancées/variables shell, ajoutez une nouvelle variable appelée TM_RUBY. Et entrez dans le chemin absolu de votre binaire ruby.

Vous pouvez obtenir ce dernier en ouvrant un terminal et en tapant:

which ruby 
+0

Cela n'a pas fonctionné ... Je reçois l'erreur suivante (voir le commentaire suivant) –

+0

Impossible de trouver "/Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby/ Users/myname /. rvm/rubies/ruby-1.9.2-p180/bin/ruby ​​/Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby "sur PATH. Thème: Le chemin de courant est: /usr/bin /bin /usr/sbin /sbin S'il vous plaît ajouter le répertoire contenant « /Users/myname/.rvm/rubies/ruby-1.9.2- p180/bin/ruby ​​ /Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby /Users/myname/.rvm/rubies/ruby-1.9.2-p180/bin/ruby "À PATH dans les préférences Shell de TextMate. –

+1

@ 0al0 Ceci est illisible comme commentaire. Veuillez modifier votre question d'origine avec des détails sur ce que vous avez essayé, sur les étapes à effectuer pour effectuer le test et sur les erreurs que vous rencontrez. – Phrogz

31

Si vous utilisez RVM, vous pouvez peut-être essayer de taper:

> which rvm-auto-ruby 
/Users/eddie/.rvm/bin/rvm-auto-ruby 

et définir ce chemin comme une variable shell nommé "TM_RUBY" dans votre Perferences de TextMate comme ma capture d'écran

http://dl.dropbox.com/u/6931090/downloads/textmate-preferences.png

Espérons que cela aide :)

+0

Merci Eddie. J'utilise RVM, et je vais essayer quand je rentre à la maison –

+0

vous êtes les bienvenus :) –

+0

A travaillé comme charme –

2

Si vous utilisez which ruby et TextMate dit exec: rbenv: not found, vous devez taper à la place: rbenv which ruby. Utilisez ce chemin dans TM_RUBY.

+0

Si vous voulez toujours utiliser la version actuelle de rbenv, je pense que vous devriez définir 'TM_RUBY' ='/usr/local/var/rbenv/shims/ruby'. – sam

+0

Ou peut-être vous pouvez simplement ajouter '/ usr/local/var/rbenv/shims' à' PATH' de TextMate. – sam

4

La solution est en fait très facile, aucune procédure d'installation spéciale n'est nécessaire. Comme mentionné sur le TextMate blog tout ce que vous devez faire est de dire à votre compagnon de texte votre variable de chemin. TextMate ne charge pas cette information par défaut. Dans Préférences, accédez à l'onglet Variables et ajoutez une variable PATH (si elle n'existe pas déjà) avec la valeur $PATH:/usr/local/bin. Cela indique à TextMate de copier le PATH du système. Le système ruby ​​est dans /usr/bin/ruby qui est inclus dans PATH par défaut OSX. Si vous installez une version personnalisée de ruby ​​puis ajoutez également ce chemin, par exemple ici, j'ai ajouté /usr/local/bin (ne pas oublier les deux points).

Updating the PATH variable in TextMate2 preference pane

Questions connexes