C-h f dired
diz a resposta. Apenas passe para dired
, como DIRNAME
argumento, 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-lisp
qualquer plataforma, se quiser (mas ls-lisp
tem menos ls
opçõ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 dired
um 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-g
para 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 ls
opções de listagem. Portanto, um prefixo zero arg solicita as opções e os arquivos / diretórios a serem listados: primeiro as ls
opções e depois os arquivos / diretórios.)