Detectar terminal neovim de bash en bashrc

13

¿Neovim establece alguna variable de entorno que me permita detectar desde bash que el terminal es neovim? Quiero cambiar el comportamiento de mi .bashrcsi neovim es el terminal.

Praxeolítico
fuente

Respuestas:

15

Comparé la salida de ejecutar enven un terminal estándar con la salida cuando se ejecuta dentro de Neovim, y parece que estas variables son nuevas:

VIMRUNTIME=/usr/local/Cellar/neovim/HEAD/share/nvim/runtime
VIM=/usr/local/Cellar/neovim/HEAD/share/nvim
NVIM_LISTEN_ADDRESS=/var/folders/_8/sy7jjpw55mbgn2prml0fbsgc0000gn/T/nvimaLHjPR/0

(La vimtengo también tiene $VIMy $VIMRUNTIMEpor lo que su mera presencia no indica Neovim vs Vim ...)

alxndr
fuente
10

Aparte del ejemplo de alxndr, puede configurar uno usted mismo con:

:let $IN_NEOVIM = "yes"
:terminal
$ env | grep NEOVIM
IN_NEOVIM=yes

Esto es especialmente útil como una forma simple de pasar información al shell; por ejemplo:

:let $NEOVIM_FILETYPE = &filetype
:terminal
$ env | grep NEOVIM
NEOVIM_FILETYPE=python    
Martin Tournoij
fuente