A ferramenta para este trabalho é FUSE (FUSE significa Filesystem in USErspace). O FUSE permite que um sistema de arquivos seja implementado por um programa do usuário. Se você executar vim file
e file
estiver em um sistema de arquivos FUSE, o programa que fornece o sistema de arquivos gerará o conteúdo do arquivo quando o Vim ler a partir dele e armazenará (ou não armazenará!) O conteúdo quando o Vim salvar o arquivo. / p>
O FUSE é mais elaborado do que o que você está pedindo. O programa que fornece o sistema de arquivos não apenas gerencia o conteúdo do arquivo, mas também estrutura de diretório, permissões, etc. Ele também precisa gerenciar leituras e gravações de um trecho de cada arquivo, a menos que você torne os arquivos não-pesquisáveis (o que restringirá os programas). que pode trabalhar neles).
Não estou ciente de nenhum projeto que se baseie no FUSE para fornecer apenas uma interface para manipular o conteúdo do arquivo e, ao mesmo tempo, fornecer uma estrutura de diretório clássica. Existem exemplos de sistemas de arquivos dos quais você pode copiar o código.