2011-08-12 6 views

Répondre

15

De Vim, vous pouvez exécuter le tampon courant avec: :!ruby %

Il pourrait être utile ou non en fonction de votre cas d'utilisation.

De même, vous invoquez une commande shell en utilisant :!command

+0

J'ai essayé "Hello world", mais:! Ruby% l'a fait - cmd.exe/c ruby ​​test.rb et appuyez sur n'importe quelle touche pour fermer la fenêtre ... rien de plus – Sergey

+0

Vous devez probablement enregistrer votre tampon avant de l'exécuter. Alors essayez ': w' –

+0

merci, ça marche – Sergey

0

Pas vraiment. Vim utilise ruby, si elle est liée au moment de la construction, en tant que extension langue pour la consommation interne. Vous pouvez diriger le tampon vers un interpréteur externe ruby ​​comme le souligne Xavier T.

0

En complément à la solution de @Xavier Je recommande le liant de la manière suivante dans votre .vimrc:

" run ruby code using leader-r only when inside a .rb file 
au BufRead, *.rb nmap <leader>r :!ruby %<cr> 
0

Oui, il est possible. Par exemple permet de dire que je veux écrire dans un mot de document bonjour 100000 Maintenant, je ne le ferai pas manuellement, mais je vais utiliser le script ruby ​​et l'exécuter dans vim. dans le terminal créer un nouveau fichier en tapant vim script.rb Entrez ce code:

10000.times do 
     puts "hello" 
end 

Avant de quitter Appuyez sur Echap puis tapez ceci:

:w ! ruby > testfile.txt 

appuyez sur Entrée Qu'est-ce que cela va faire est que il exécutera le script dans le vim et ajoutera la chaîne retournée dans le fichier texte nommé testfile. Assurez-vous que vous avez le fichier dans le même répertoire ou vous pouvez spécifier le répertoire avec le nom.

0

C'est une vieille question, mais je voulais modifier la réponse par @xavier

Mettez dans votre .vimrc et vous serez en mesure d'exécuter le script Ruby en cours sans avoir de confirmer frapper ENTRER chaque fois:

Questions connexes