¿Cómo encuentro y configuro mi variable de entorno $ EDITOR?


28

Cuando estoy usando ipython o ipython3, puedo usar el comando% edit para abrir un editor para escribir mis scripts de python. Mi problema es que el editor predeterminado es vim y realmente no entiendo cómo usar ese editor. Lo que me gustaría hacer es cambiar el editor a nano o gedit. Creo que para quedarme con el terminal, preferiría cambiarlo al nano editor.

Cuando escribo "¿editar?" comando en el terminal ipython dice:

% edit ejecuta el enlace del editor de IPython. La versión predeterminada de este enlace está configurada para llamar al editor especificado por su variable de entorno $ EDITOR. Si no se encuentra, se establecerá por defecto en vi en Linux / Unix y en el bloc de notas en Windows. Vea el final de esta cadena de documentación para saber cómo cambiar el enlace del editor.

Luego, cuando veo el final de esa cadena de documentación, veo esto:

Cambiar el enlace del editor predeterminado:

Si desea escribir su propio enlace de editor, puede ponerlo en un archivo de configuración que cargue en el momento del inicio. El enlace predeterminado se define en el módulo IPython.core.hooks, y puede usarlo como un ejemplo inicial para modificaciones adicionales. Ese archivo también tiene instrucciones generales sobre cómo establecer un nuevo gancho para usar una vez que lo haya definido.

Lamento ser un novato, pero me pierdo aquí. No estoy seguro de cómo llegar al módulo IPython.core.hooks, o simplemente establecer una variable de entorno $ EDITOR en nano.

¿Alguna sugerencia?

Respuestas:


38

Puede configurar la $EDITORvariable con este comando:

export EDITOR="/usr/bin/nano"

Esto definirá la variable EDITORpara la sesión actual y la pasará al entorno de todos sus procesos secundarios. Para configurarlo permanentemente, debe definirlo en uno de los archivos de configuración del sistema. El nivel más alto en el que puede hacer esto es configurarlo /etc/environment. Esto lo define globalmente:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
EDITOR="/usr/bin/nano"

Verifique que la variable esté definida:

$ echo $EDITOR
/usr/bin/nano

Nota del editor: a menudo es preferible colocar variables de entorno en el suyo ~/.profile, lo cual es mucho más fácil de solucionar si algo sale mal.


Agregué la línea 'EDITOR = "/ usr / bin / nano"' a mi archivo / etc / environment, pero no parece funcionar. ¿Necesito reiniciar?
Willoczy

Ahora reinicie su sistema y se aplicará la configuración.
Danatela

¡comience una nueva sesión y ya está!
Luis Siquot

3
No necesita reiniciar para que los cambios surtan efecto, solo ejecute source /etc/environmentdespués de editar el archivo.
cremefraiche

@cremefraiche Me temo que es incorrecto. No es un archivo de script, por lo que no puede "fuente". Sería correcto para otros archivos de configuración comunes como .profile. Lo mejor que puede hacer es cerrar sesión y volver a iniciar sesión. Esa es la única vez que se lee ese archivo. Lea esta breve sección: help.ubuntu.com/community/…
Haggra

18

Añadir línea

export EDITOR=nano

a su ~/.profiley ~/.bashrccomo en la siguiente imagen. No , no ponga comillasnano

ingrese la descripción de la imagen aquí

y luego correr

source ~/.profile 
source ~/.bashrc

en el aviso después de modificar .profiley .bashrcpara que la modificación surta efecto.

ingrese la descripción de la imagen aquí

Ahora el %editen ipythonse abrirá nano.

~/.bashrc será llamado para interactive + non-loginshell

mientras ~/.profileque será llamado parainteractive + login shell

En su caso, es suficiente agregarlo en ~/.bashrclugar de ~/.profile.


1
.bashrcdebe ser utilizado sólo para la configuración de Bash-específicos (por ejemplo, opciones de concha, alias, etc.), mientras que .profiledeben ser utilizados para establecer las variables de entorno como EDITOR(que es utilizada por programas como sudoedit, git, etc.). Ver unix.stackexchange.com/a/3085/22812 y unix.stackexchange.com/a/42765/22812
Anthony G - justicia para Monica
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.