2012-03-03 14 views
5

He estado tratando de encontrar esta información en línea pero no recibo la respuesta.Vim para python y secuencias de comandos R (en pantalla o no)

He usado RStudio y Geany para editar archivos antes. Ahora estoy tratando de usar ViM para editar python y R archivos (Sé que hay RPy, pero nada que ver con mi problema).

me gustaría saber cómo puedo tener 3 terminales (también podría ser tampones vim, o ventanas de la pantalla) con un funcionamiento ViM y los demás corriendo R y Python. Cuando ejecuto un script de Python, el terminal (ventana o buffer) con python muestra el resultado. Lo mismo cuando ejecuto scripts R

Agradecería una visión sobre esto ya que esto es algo que me impide usar ViM regularmente. También consideraría una solución con el multiplexor de terminal terminator o el terminal guake. Cualquier información sobre el envío de código para secuencias de comandos de una instancia a otra es bienvenida.

Respuesta

5

¿Está buscando una manera de tener un REPL dentro de Vim? Si es así, Vim no fue realmente diseñado con eso en mente, aunque hay algunos complementos que lo intentan. Conque es un ejemplo.

Algunas cosas que utilizo para tener un código/iteración más rápida de funcionamiento/prueba con Python:

  • función de IPython %edit, que comienza a editar un script con $EDITOR y se ejecutará la secuencia de comandos después de salir.
  • vim-ipython que puede enviar/ejecutar/recibir código a través de un intérprete de IPython.
  • tmux que le permite tener varios proyectiles uno al lado del otro, pero con poca interacción entre ellos.
+0

¡Gracias !, Conque es interesante y la 'edición' de IPython suena aún mejor. ¡Incluso me entero de lo que REPL significaba! ¡Salud! – fioghual

2

sus necesidades de información en línea pueden no haber sido explicado con suficiente detalle, ya que me parece que encontrar una gran cantidad de información sobre el uso de Vim como un IDE para ambos R y Python:

R:

http://www.r-bloggers.com/r-with-vim/

http://www.vim.org/scripts/script.php?script_id=2628

http://www.vim.org/scripts/script.php?script_id=1048

Python:

http://wiki.python.org/moin/Vim

http://blog.dispatched.ch/2009/05/24/vim-as-python-ide/

http://dancingpenguinsoflight.com/2009/02/python-and-vim-make-your-own-ide/

+0

Agradezco su respuesta y la información. Había visto esas páginas y todas muestran soluciones para mi problema. Pero no muestran cómo dirigir la salida a una ventana/buffer/terminal existente en particular, sino que crearán la suya propia. – fioghual

+0

diría que este post acerca mucho a una [LMGTFY] (http://meta.stackexchange.com/questions/15650/ban-lmgtfy-let-me-google-that-for-you-links). OP se esforzó por decir que habían buscado en línea para que pudiera suponer que había sido buscado en Google. – LondonRob

+0

No estoy de acuerdo con que mostrara falta de respeto por el póster de la manera desaprobada por los que respondieron a ese Meta-publicación. Si no está de acuerdo y cree que esta publicación debe someterse al escrutinio público, puede vincular mi respuesta en una Meta-publicación. (Admito que probablemente no entendí la solicitud). –

2

Vim-slime es una solución de propósito general a esto estoy muy contento, enviará bloques de código a cualquier panel de tmux, lo que significa que funciona para cualquier idioma.

https://github.com/jpalardy/vim-slime

0

Tenga una mirada en vim-ipython, un plug-in para Vim.

es necesario descargar la fuente (vinculado anteriormente), y ejecutar el comando de Vim :source path/to/file/ipy.vim.

Comience por ejecutar una nueva sesión de IPython (por ejemplo, usando IPython qtconsole o IPython notebook) y luego escriba :IPython en Vim. Tu Vim ahora está conectado a la instancia de IPython que acabas de abrir.

Puede presionar F5 para ejecutar toda la secuencia de comandos Python en su Vim, o Ctrl +s para ejecutar la línea actual. Ctrl +s también se ejecutará lo que esté seleccionado si estás en visual (es decir, 'select') de modo.

Cuestiones relacionadas