Como anexar vários arquivos no `modo de mensagem`?

10

Para anexar um arquivo no modo de mensagem (por exemplo, ao postar no Gnus), é necessário C-c C-a. Qual é a maneira recomendada para anexar vários arquivos?

Repetir C-c C-apode se tornar cansativo depois de um tempo, porque faz três perguntas todas as vezes.

YoungFrog
fonte
Existem duas abordagens comuns: (1) obtenha uma lista de arquivos e faça um loop na lista - por exemplo, mapcar- e anexe uma vez por elemento; ou (2) crie um loop que solicite automaticamente sim / não para anexar outro e não quebre o loop. Prefiro a abordagem da lista de arquivos e uso um gerenciador de arquivos real para o Emacs (para selecionar simultaneamente arquivos marcados em vários diretórios a serem anexados); no entanto, isso requer elispmodificações avançadas . A maioria das pessoas furar a dired-modee dired-get-marked-filese há uma maneira de operar em múltiplas abertas dired-modebuffers.
lawlist
@lawlist Obrigado. Eu gostaria de uma abordagem de lista de arquivos de fato. Obviamente, eu não quero escrever um loop lisp toda vez, então meu objetivo é ter um comando. Ainda não tenho certeza de como deve ser a interface. Vou pensar um pouco mais e escrever código se não houver soluções prontas.
YoungFrog

Respostas:

19

Abra o diretório diredcom C-x 4 de digite M-x turn-on-gnus-dired-mode. Em seguida, marque os arquivos necessários com m(ou o que seja) e digite C-c RET C-a. Os arquivos agora podem ser anexados a um buffer de mensagens já aberto ou atribuídos a um novo.

Dieter.Wilhelm
fonte
Eu gostaria que houvesse uma configuração semelhante como este para mu4e
Andre
-1

Anexar um arquivo no Emacs é basicamente apenas inserir um pedaço de string contendo caminhos de arquivo, você pode usar o yasnippet para criar pedaços para você.

Aqui estão os passos:

  • no shell, use find / ls para criar a lista de arquivos a anexar

  • use a ferramenta cli clip (putclip no cygwin, pbpaste no Mac, xsel / xclip no linux) para transferir a lista de arquivos para o yasnippet

Chen Bin
fonte
Um pedaço de exemplo seria útil
Dieter.Wilhelm