Quero trabalhar mais fácil com arquivos no modo direcional do Emacs. E acho que minhas necessidades não são apenas minhas.
O que eu quero? Duas coisas em Dired:
z
compactar arquivo ou diretório no cursor (ou todos os arquivos / diretórios marcados, se houver marcas); o nome do novo arquivo deve ser alterável (mas se um arquivo / diretório selecionado que o nome for o mesmo);Z
desarquivar qualquer tipo de arquivo (zip ou gz ou tar) no cursor; por padrão, o conteúdo deve ser colocado em um novo diretório com o mesmo nome.
Como alguém pode conseguir isso?
Z
em Dired substitui (não foi adicionado outro) arquivo pelo seu*.gz
arquivo (não*.zip
).dired-atool
ou que dedique algum tempo para seguir o link e estudar o que faz, a pergunta será mais clara, mas você deve esclarecer a pergunta em si, IMHO.Respostas:
emacs 25.x
O lançamento do emacs 25.1 terá suporte embutido para lidar com diferentes tipos de arquivos de dentro do dired. Abaixo está o trecho relevante do
NEWS
arquivo (C-h C-n
).dired-do-compress
|Z
Confira a
dired-compress-file-suffixes
variável para obter uma lista dos formatos de arquivo compactados suportados. O programa correto será usado para descompactar um arquivo (ou arquivos) ao usar aZ
ligação (dired-do-compress
).Embora o acima exposto descompacte uma ampla variedade de formatos, ele sempre comprime
gzip
.dired-do-compress-to
|c
Confira a
dired-compress-files-alist
variável para obter uma lista de formatos de arquivos suportados que pode ser comprimido para utilizar ac
ligação (dired-do-compress-to
).No emacs 25.1, ele suporta a compactação usando
tar
+ (gzip
/bzip2
/xz
) ouzip
.fonte