Melhor configuração da variável de ambiente EDITOR para usar o Sublime Text 2 como editor do sistema?

1

Eu quero usar o Sublime Text 2 para editar as mensagens de commit do Git. Agora eu tenho o seguinte no meu arquivo bash rc:

export EDITOR="sublime -nw"

Isso funciona bem se o Sublime já estiver em execução. Mas se não for, o Sublime é iniciado com as janelas 2 em vez de 1: uma para minha mensagem de commit do Git, e outra com o projeto no qual eu estava trabalhando mais recentemente. E antes que o Git pare de esperar que eu termine de editar, eu tenho que fechar ambos dessas janelas.

Existe uma maneira melhor de definir EDITOR , que funciona em torno desse problema?

    
por Alex D 29.03.2014 / 20:40

1 resposta

0

Depois de postar essa pergunta no StackOverflow cerca de um ano atrás (e ser informado de que a pergunta pertencia ao Superusuário), eu criei uma configuração que funciona muito bem:

  • ~ / .bin / start_sublime:

    #!/bin/bash
    # this script ensures that Sublime Text is running
    
    if [ ! "$(pidof sublime_text)" ] ; then
      # start up an instance of Sublime
      "/home/alex/Downloads/programs/Sublime Text 2/sublime_text" &
      sleep 1 # avoid race condition
    fi
    
  • ~ / .bin / sub_new_block

Isso abre uma nova janela e espera que você feche aquela janela apenas , e não qualquer outra janela do Sublime que você tenha aberto. Isso faz com que funcione corretamente para editar patches ou enviar mensagens no git, etc:

    #!/bin/bash
   /home/alex/.bin/start_sublime
   "/home/alex/Downloads/programs/Sublime Text 2/sublime_text" -nw $FILE
  • ~ / .bin / sub_existing_noblock:

Isso usa uma janela existente, se houver, e o shell não espera que você feche a janela:

    #!/bin/bash
    "/home/alex/Downloads/programs/Sublime Text 2/sublime_text" $FILE &
  • ~ / .bin / sub_new_noblock:

Isso sempre abre uma nova janela e, novamente, o shell não espera que você feche a janela:

    #!/bin/bash
    "/home/alex/Downloads/programs/Sublime Text 2/sublime_text" -n $FILE &

Para edição geral, sub_new_noblock parece ser a variante mais útil, então eu alias como sub . Para git, eu uso a seguinte configuração: git config --global core.editor sub_new_block . Para outros programas que iniciam um editor, eu os configuro para usar qualquer script que seja mais apropriado.

    
por 29.03.2014 / 20:51