C-h f direddiz a resposta. Apenas passe para dired, como DIRNAMEargumento, uma lista que tenha como carro o nome do buffer direcionado que você deseja (qualquer string) e como cdr a lista de nomes de arquivos que você deseja listar no buffer. Geralmente, você deseja usar nomes de arquivos absolutos. Por exemplo:
(dired (list "My Dired Buffer Name*" ; The Dired buffer name
"/usr/foo/file1.el" ; First file
"/usr/bar/toto/some-file.c" ; Second file
"/whatever/directory/" ; Third is a directory
"/a/file/somewhere.zzz")) ; Fourth
Dependendo da sua plataforma, os nomes de arquivos e diretórios inexistentes inseridos podem ser ignorados (não listados) ou podem gerar um erro. O primeiro acontece se você usar ls-lisp.el(por exemplo, MS Windows). Você pode forçar o uso de ls-lispqualquer plataforma, se quiser (mas ls-lisptem menos lsopções), fazendo o seguinte:
(setq ls-lisp-use-insert-directory-program nil)
(require 'ls-lisp)
Se você usar a biblioteca Dired + ( dired+.el), poderá escolher interativamente arquivos e diretórios para listar: basta fornecer diredum argumento de prefixo não positivo (ou seja, <= 0). Em seguida, você será solicitado repetidamente os diretórios e nomes de arquivos que deseja listar. Você pode usar curingas com nome de arquivo (ou seja, *para globbing), para incluir os arquivos e diretórios correspondentes. Use C-gpara finalizar a entrada.
Em outras palavras, em vez de listar um único diretório, o buffer Dired pode listar qualquer número de diretórios e nomes de arquivos, que podem até pertencer a diferentes árvores de diretórios.
(Um prefixo não negativo arg (ou seja,> = 0) solicita as lsopções de listagem. Portanto, um prefixo zero arg solicita as opções e os arquivos / diretórios a serem listados: primeiro as lsopções e depois os arquivos / diretórios.)