gvim no windows, precisa preservar ou corrigir o path path (por exemplo, c: \ windows vs. C: \ Windows)

2

Eu uso o gvim em um ambiente Windows e tenho o ClearCase para controle de origem.

Meu problema é que os caminhos do Windows não diferenciam maiúsculas de minúsculas, no entanto, o ClearCase impõe a distinção entre maiúsculas e minúsculas. Portanto, ao editar um arquivo no gvim, o caminho não é necessariamente encaixado corretamente (por exemplo, c: \ WiNdOwS \ Something.txt vs. C: \ Windows \ Something.txt), portanto, quando tento verificar o arquivo fora do arquivo de trabalho atual arquivo no gvim através da linha de comando, ClearCase barfs e reclama que não pode encontrar o arquivo.

C:\WiNdOwS\Something.txt --> C:\Windows\Something.txt
   ^^^^^^^                      ^^^^^^^

Existe alguma maneira de:

  1. crie o caminho do caminho de correção automática do vim ou
  2. faça clearcase não se importe com o revestimento

Agora eu tenho que ter certeza de que o caso do caminho está correto ou abrir o Windows Explorer sempre que eu quiser fazer qualquer coisa em um arquivo relacionado ao controle de origem ... o que é totalmente ruim.

    
por ash 14.06.2013 / 18:01

1 resposta

0

Você pode tentar usar expand('%:p') . Isso deve fornecer o nome do arquivo atual expandido para o caminho completo.

Pelo que eu vi, ele também retorna uma string com o caso correto em MS windows, mas eu não tentei isso sozinho.

Se a expansão não funcionar, você provavelmente precisará acessar a API do win32 para obter o caso correto do caminho, algo como GetFullPathName () . Eu não tenho certeza se é possível usá-lo diretamente do vim (sem hackar o código-fonte do vim), mas se você incluir isso em um programa pequeno, você poderia certamente chamar isso do vim. Se o seu vim é compilado com suporte a Python, você poderia usar o módulo ctypes do Python para chamar as funções do win32.

    
por 25.08.2013 / 20:46