mcedit é executado de forma diferente quando está vinculado

1

Instalei o mcedit e no terminal tentei configurá-lo para que eu possa digitar edit em vez de mcedit (porque achei mais fácil digitar).

Um link simbólico funciona, uma cópia também funciona. Mas: mcedit invocado com edit sempre mostrará uma tela inicial para escolher o arquivo, embora eu tenha entrado nele como normal, como edit test.cpp .

Como posso corrigir isso?

Tipo imprime isso

$ type -a mcedit

mcedit é /usr/bin/mcedit

$ type -a edit

edit é /usr/bin/edit

    
por Jaba 10.12.2015 / 10:12

2 respostas

0

Não há programa mcedit separado. O Midnight Commander é um executável de múltiplas funções que verifica em qual nome ele é invocado e se comporta de acordo.

  • vi ou qualquer coisa que comece com mce o exibe como o editor do Midnight Commander
  • view qualquer coisa que inicie mcv exibe como o visualizador de arquivos do Midnight Commander
  • diff ou qualquer coisa que inicie mcd o exibe como o visualizador de diferenças do Midnight Commander
  • Qualquer outra coisa, mas com a opção -e / --edit , aparece como o editor do Midnight Commander
  • Qualquer outra coisa, mas com a opção -v / --view , o exibe como o visualizador de arquivos do Midnight Commander
  • Qualquer outra coisa aparece como o Midnight Commander

Além de um link chamado vi , você tem algumas outras opções, incluindo funções / aliases do shell que expandem para mc --edit , scripts de shell do wrapper e usando mce ou mced como o nome do comando.

O Ubuntu costumava ter isso, na caixa, para você. O Debian Linux por cerca de uma década tinha um script shell mcedit-debian (ao qual edit / editor poderia se vincular) que não fez nada além de gerar mcedit $@ . Isso foi feito para que o sistema de "alternativas" pudesse invocar o editor Midnight Commander sob o nome do comando editor .

Ironicamente, edit e editor foram explicitamente rejeitados como maneiras de colocar o Midnight Commander no modo editor, por seus desenvolvedores. Em 2010, mcedit-debian foi substituído por um patch específico do Debian ao processamento de argumentos do Midnight Commander para reconhecer editor para o modo editor, assim como reconhece o genérico vi , mas este patch foi rejeitado pelo próprio Midnight Commander. / p>

Leitura adicional

por JdeBP 11.12.2015 / 14:10
0

Não consigo trabalhar com ln ou cp, talvez o mcedit cheque o argv [0]. Eu resolvi isso com um script bash que "mcedit $ *".

    
por Jaba 10.12.2015 / 12:01