Eu quero definir um $VIMFILES variável no meu vimrc arquivo para determinar de uma maneira não específica da plataforma o caminho do arquivo do meu vimfiles diretório (a la Como obtenho o diretório home do Vim? ). Isso deve ser trivial (na verdade, acho que deveria ser uma variável interna), mas não consigo descobrir uma maneira robusta de fazer isso. O método usando um plugin requer que você coloque qualquer código que realmente usa esta variável no seu after diretório, que (na minha opinião) faz o plugin quase inútil. O método usando if has determinar o sistema operacional e definir manualmente a variável parece absurdamente frágil e tedioso.
Então, eu gostaria apenas de fazer a suposição de que o primeiro componente do valor padrão do runtimepath opção é a vimfiles diretório que eu quero.
No entanto, não tenho ideia de como extrair o primeiro componente de rtp. Isso, novamente, parece que deveria ser trivial, mas &rtp[0] expande para o primeiro personagem do runtimepath, porque aparentemente &rtp é na verdade uma string, embora seja claramente semanticamente uma lista (!!?).
Então ... como eu obtenho o primeiro componente do caminho do runtim? Existe uma maneira melhor de fazer isso?
$VIMFILES variável tanto para configurar rtp e path para Vundle e para definir undodir para persistente desfazer. Sem essa variável, eu precisaria da lógica de localização do diretório do vimfile em ambas as partes da minha configuração do Vim.