como lidar com arquivos ZIP em DIRED?

13

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:

  1. zcompactar 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);
  2. Zdesarquivar 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?

drobnbobn
fonte
@ Drew, Zem Dired substitui (não foi adicionado outro) arquivo pelo seu *.gzarquivo (não *.zip).
drobnbobn
Sim. Aparentemente (agora) não é isso que você deseja. Mas você não especificou o que deseja. Como eu disse, a questão não é muito clara. Suponho que, para alguém familiarizado dired-atoolou 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.
Tirou
@ Drew, reescrevo minha pergunta. Está claro agora?
drobnbobn
1
Esse recurso será lançado na próxima versão do emacs (25.1) [Relevant commit ]. Se desejar, você pode tentar o terceiro pré-teste (25.0.92) a partir daqui . Copiando @ abo-abo .
precisa
@ Drew, desculpe, a culpa é minha! Certamente eu quero dizer "dentro de Dired".
precisa saber é

Respostas:

13

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 NEWSarquivo ( C-h C-n).

+++
*** The command `dired-do-compress' bound to `Z' now can compress
directories and decompress zip files.

+++
*** New command `dired-do-compress-to' bound to `c' can be used to
compress many marked files into a single named archive.  The
compression command is determined from the new
`dired-compress-files-alist' variable.

dired-do-compress | Z

Confira a dired-compress-file-suffixesvariável para obter uma lista dos formatos de arquivo compactados suportados. O programa correto será usado para descompactar um arquivo (ou arquivos) ao usar a Zligaçã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-alistvariável para obter uma lista de formatos de arquivos suportados que pode ser comprimido para utilizar a cligação ( dired-do-compress-to).

No emacs 25.1, ele suporta a compactação usando tar+ ( gzip/ bzip2/ xz) ou zip.

Kaushal Modi
fonte
Como obter o Emacs 25.1? Ou a versão 25.0.92 é a mais recente por enquanto?
drobnbobn
1
@drobnbobn Emacs 25.1 ainda não saiu, 25.0.92 é a versão beta mais recente.
Gilles 'SO- stop being evil