Como defino o vim como editor externo no FarManager e passo nomes de caminho completos?

7

Estou tentando configurar o VIM como meu editor externo no gerenciador de arquivos distante . Eu quero ser capaz de selecionar vários itens em uma pasta, alguns sendo diretórios e ter seus caminhos completos passados para a linha de comando do vim.

Atualização: Para esclarecer exatamente o que quero fazer. Eu quero ser capaz de selecionar vários arquivos em um painel assim:

eovimabriuassim:

"C:\Program Files\Vim\vim73\vim.exe"  c:\src\TalkMaterials "c:\src\abba 1.txt" "c:\src\abba 3.txt"

Isso abriria todos os arquivos em diferentes buffers.

    
por Justin Dearing 04.11.2010 / 11:09

2 respostas

2

Eu encontrei a solução que faz exatamente o que você está pedindo. Mas isso requer o plug-in FarNet e seu módulo PowerShellFar:

link

Eles também precisam do .NET 2.0+ e do Windows PowerShell 2.0 instalado. Este já é o caso no Windows 7, mas versões anteriores do Windows não são tão sortudas. Além disso, o PowerShell 2.0 é somente para o Windows XP SP 3 e superior (nem mesmo para o SP 2).

Se você ainda não está com medo, então aqui está o truque. No comando do editor externo, chamamos o PowerShellFar por meio de seu prefixo da linha de comando ">:"

>: & vim @(Get-FarPath -Selected) #

É isso. Funciona, eu tentei (não com o vim, no entanto, eu não tenho um). É rápido, não inicia o PowerShell todas as vezes; o núcleo é carregado uma vez quando Far começa.

Nota: O último '#' no comando é uma pequena convenção do PowerShellFar: para não adicionar aos comandos do histórico de comandos persistentes com '#' no final. Este comando é para abrir o editor externo, ele é escrito uma vez e não queremos que ele polua o histórico de outros comandos digitados manualmente.

P.S. Eu sou o autor de ambos FarNet e PowerShellFar, apenas no caso. Eles são open source, maduros e robustos. Eu os recomendaria em qualquer caso, desde que você use o Far Manager e o Windows recente tenha todos os pré-requisitos para essas ferramentas.

    
por 06.11.2010 / 18:01
2

O mais próximo que eu posso chegar é vim! & isso cria a seguinte linha de comando

"C:\Program Files\Vim\vim73\vim.exe"  TalkMaterials "abba 1.txt" "abba 3.txt"

Isso parece funcionar muito bem, mas eu gostaria que caminhos completos fossem passados para o vim de qualquer maneira. Antes de aceitar minha própria resposta, gostaria de ver se existe uma maneira de passar todos os caminhos completos para o vim.

    
por 06.11.2010 / 13:38