Como descubro qual é o meu editor de texto de terminal padrão? [duplicado]

11

Enquanto lia o material introdutório do git, li uma peça que trouxe essa questão para a mente.

Como uso o Terminal para descobrir qual é o meu editor de texto padrão?

Há algum comando geral que eu possa usar para descobrir isso?

    
por jargonjunkie 13.12.2015 / 08:55

3 respostas

12

O editor padrão é definido pelas variáveis de ambiente EDITOR ou VISUAL .

O editor padrão é vi se nenhum deles foi definido. Adicionar

export EDITOR="/bin/nano" 

ao seu arquivo ~/.bashrc para definir, por exemplo, nano como seu editor padrão.

Para ver se a variável de ambiente está definida, você pode usar

printenv | grep EDITOR

ou

set | grep EDITOR

Pode-se desreferenciar o valor da variável de ambiente nomeada prefixando-a com um "$"

$ echo $EDITOR

ou

$ echo $VISUAL
    
por Doug Smythies 13.12.2015 / 09:07
13

No Ubuntu, existe um comando genérico editor que é definido pelo sistema de alternativas do Debian.

Se você fizer isso:

editor foobar.txt

o arquivo será aberto usando o editor original, por exemplo vim , nano , que é priorizado como editor atualmente.

Você pode verificar os detalhes com:

update-alternatives --display editor

Para definir um novo editor como editor :

sudo update-alternatives --config editor

Observe também que bash verifica algumas variáveis de ambiente para tarefas relacionadas a ele, para ser exato bash checks VISUAL , EDITOR um após o outro. Se não definido, bash será padronizado como emacs .

Alguns processos gerados a partir de bash verificam também essas variáveis de ambiente.

    
por heemayl 13.12.2015 / 09:05
3

Na verdade, há git var -l , que permite listar as variáveis, incluindo a variável GIT_EDITOR . Aqui está o meu (a informação privada é indefinida, é claro):

$ git var -l
user.name=*****
user.email=****
GIT_COMMITTER_IDENT=****
GIT_AUTHOR_IDENT=****
GIT_EDITOR=editor
GIT_PAGER=pager

Como heemayl já apontou, o comando editor é o definido por /etc/alternatives/editor . No meu caso, isso é nano (que eu suponho ser padrão para o Ubuntu, porque não me lembro conscientemente de fazer um esforço para mudar meu editor padrão).

Mas em outros sistemas além do Ubuntu (ou devo dizer que não possuem sistema de alternativas do Debian), não há editor . Vamos, no entanto, ler o man git :

  

GIT_EDITOR

     

Esta variável de ambiente substitui $ EDITOR e $ VISUAL. É usado   por vários comandos do Git quando, no modo interativo, um editor é   ser lançado. Veja também git-var (1) e a opção core.editor em git-   config (1).

E se olharmos através de git-var nos diz

  

A ordem de preferência é a variável de ambiente $ GIT_EDITOR e, em seguida,   configuração do core.editor, depois $ VISUAL, depois $ EDITOR, e depois   padrão escolhido em tempo de compilação, que geralmente é vi.

Assim, é uma mera perioliaridade do Ubuntu que ele tenha o sistema de alternativas do Debian. Em outros sistemas que não possuem sistemas alternativos do Debian, o padrão seria vi

    
por Sergiy Kolodyazhnyy 14.12.2015 / 10:34