inclui todos os arquivos vim em uma pasta

3

Para o meu .bashrc , tenho muitos arquivos de fragmentos pequenos em .config/bash , como 10-prompt.sh e assim por diante. No meu .bashrc real, só tenho o seguinte:

configdir="$HOME/.config/bash"

for file in "$configdir"/*.sh
do
        source "$file"
done

Eu gostaria de fazer o mesmo para o meu .vimrc , mas não estou tão confiante na VimL que eu poderia escrever isso.

Como o snippet para .vimrc se parece com isso inclui todos os snippets em uma determinada subpasta? Idealmente, gostaria de criar uma pasta .vim/rc/ na qual eu possa colocar meus snippets.

    
por Martin Ueding 18.06.2012 / 11:02

2 respostas

2

EDITAR

Esta é a versão mais curta do @ queueoverflow:

for rcfile in split(globpath("~/.vim/rc", "*.vim"), '\n') 
    execute('source '.rcfile)
endfor

ENDEDIT

EDITAR

(removeu minha resposta estúpida)

A função abaixo parece funcionar.

function! SourceMyScripts()
  let file_list = split(globpath("~/.vim/rc", "*.vim"), '\n')

  for file in file_list
    execute( 'source '.file )
  endfor
endfunction

Adicione ao seu ~/.vimrc assim:

call SourceMyScripts()

ENDEDIT

    
por 18.06.2012 / 11:47
0

Uma maneira muito fácil de fazer isso é " :runtime rc/*.vim ". Naturalmente, isso iteraria sobre cada subdiretório "rc" que pode existir em cada um dos diretórios em 'runtimepath' , mas duvido que isso seja um problema.

Veja:

:help :runtime
:help 'runtimepath'
    
por 18.06.2012 / 19:52

Tags