O TextMate cria arquivos temporários e não os exclui!

6

Estou usando o TextMate e cada vez que edito um arquivo, uma cópia como o arquivo ._ é criada.

Isso está deixando meu louco louco e da última vez, ele criou um problema sério em algum aplicativo que estou usando, que acredita que o arquivo era um novo componente e, como não pôde carregá-lo (porque NÃO era um novo componente), ele travou.

Como posso me livrar desses arquivos temporários?

OscarRyz
fonte

Respostas:

13

._file os arquivos não são realmente arquivos temporários, mas um arquivo que contém os dados da bifurcação de recursos para o Mac OS X. O Mac OS X criará isso para os arquivos que estão sendo armazenados em um sistema não HFS para preservar os metadados.

No entanto, você pode executar o seguinte comando para desativar a criação pelo TextMate de uma bifurcação de recursos:

defaults write com.macromates.textmate OakDocumentDisableFSMetaData 1

Se você possui a versão mais recente (compilação 1589 - 23 de novembro de 2009), também permite inserir uma matriz de sistemas de arquivos, se ainda desejar os metadados em outras unidades (diga sim ao seu interno e não a qualquer rede ou rede). unidade não HFS):

defaults write com.macromates.textmate OakDocumentCustomFSMetaData '( afpfs, nfs, msdos, hfs )'
Chealion
fonte
Então, é um recurso OSX? OOhh .. Agora você menciona isso só acontece quando estou usando uma unidade montada Parallels (portanto, não HFS). Sobre os padrões: qual é o valor padrão? (Apenas no caso eu preciso colocá-lo de volta)
OscarRyz
1
O valor padrão é 0, mas não se preocupe ... NUNCA perderá esse recurso.
mmc
Ótima pergunta, ótima resposta. :-)
robsoft 8/08/09
2
Os metadados contêm a posição do cursor do TextMate, que, dependendo do arquivo, pode ser bastante útil.
Daniel Beck
1

Esses arquivos ._, ou pontos com sublinhado, são criados pelo Mac OSX como uma maneira alternativa de armazenar os Atributos Estendidos em um sistema de arquivos que não os suporta nativamente.

Embora técnica e historicamente algo completamente diferente, as versões recentes do Mac OSX tratam os Resource Forks mais ou menos como se fossem Atributos Estendidos , pelo menos da perspectiva do usuário. Consulte esta pergunta stackexchange para obter mais informações (técnicas) sobre Atributos de arquivo (estendido), forcados e recursos, etc.

Você pode aprender sobre a presença de atributos estendidos em arquivos usando ls -lna linha de comando. Arquivos com atributos estendidos têm um @anexo ao nome. Doing ls -l@também listará os nomes desses atributos. E, finalmente, doing xattr -l <filename>imprime os nomes dos atributos e os dados do arquivo especificado (estilo do editor hexadecimal). Veja abaixo exemplos.

$ > ls -la ~/Library/Fonts
total 225448
drwx------+ 536 arri  staff    18224 Jun 17 04:57 .
drwx------@ 101 arri  staff     3434 Aug 18 16:33 ..
-rwxr-xr-x@   1 arri  staff       45 Aug 12  2010 04b-03.suit
-rwxr-xr-x    1 arri  staff    19492 Mar 25  2003 04b03.ttf
-rw-r--r--@   1 arri  staff    54544 Apr 24  2012 27344.ttf
...

$ > ls -la@ ~/Library/Fonts
total 225448
drwx------+ 536 arri  staff    18224 Jun 17 04:57 .
drwx------@ 101 arri  staff     3434 Aug 18 16:33 ..
    com.apple.FinderInfo         32 
-rwxr-xr-x@   1 arri  staff       45 Aug 12  2010 04b-03.suit
    com.apple.FinderInfo         32 
    com.apple.ResourceFork    20314 
-rwxr-xr-x    1 arri  staff    19492 Mar 25  2003 04b03.ttf
-rw-r--r--@   1 arri  staff    54544 Apr 24  2012 27344.ttf
    com.apple.metadata:kMDItemDownloadedDate         53 
    com.apple.metadata:kMDItemWhereFroms        166 

$ > xattr -l ~/Library/Fonts/04b-03.suit 
com.apple.FinderInfo:
00000000  46 46 49 4C 44 4D 4F 56 01 00 00 00 00 00 00 00  |FFILDMOV........|
00000010  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................|
00000020
com.apple.ResourceFork:
00000000  00 00 01 00 00 00 4E F2 00 00 4D F2 00 00 00 68  |......N...M....h|
00000010  C9 0B 1A C9 23 08 03 1A C9 0B 1A C9 23 02 1A C9  |....#.......#...|
...

Observe que, próximo ao HFS Plus, muitos outros sistemas de arquivos também oferecem suporte a atributos estendidos, mas eles nem sempre são bons com o Mac OSX pronto para uso.

Um exemplo seria, por exemplo, um sistema de arquivos Windows (NTFS) remoto montado em SMB. Tanto o sistema de arquivos NTFS quanto o SMB-'protocol '(e a implementação para Mac) suportam Atributos Estendidos, mas nesse contexto são chamados de Fluxos Nomeados . Esse recurso geralmente é desativado por padrão, mas pode ser ativado facilmente como descrito aqui .

arri
fonte
0

O TextMate usa a bifurcação de recursos para armazenar itens como posição de edição e estado de dobra de código. Essas são todas as coisas que você pode viver sem, embora certamente sejam boas de ter.

Morven
fonte