C-h f dired
говорить вам відповідь. Просто переведіть dired
в якості DIRNAME
аргументу список, який має в своєму автомобілі ім'я в'язаного буфера, яке ви хочете (будь-яку рядок), а також cdr - список імен файлів, які ви хочете вказати в буфері. Як правило, ви хочете використовувати абсолютні імена файлів. Наприклад:
(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
Залежно від вашої платформи, імена будь-яких неіснуючих файлів та каталогів, які ви вводите, можуть бути проігноровані (не вказані в списку) або можуть призвести до помилки. Перше відбувається, якщо ви використовуєте ls-lisp.el
(наприклад, MS Windows). Ви можете змусити використовувати ls-lisp
будь-яку платформу, якщо вам подобається (але ls-lisp
має менше ls
можливостей), зробивши це:
(setq ls-lisp-use-insert-directory-program nil)
(require 'ls-lisp)
Якщо ви використовуєте бібліотеку Dired + ( dired+.el
), ви можете інтерактивно вибирати файли та каталоги для списку: просто наведіть непозитивнийdired
аргумент префікса (тобто <= 0). Потім вам кілька разів буде запропоновано вказати каталоги та імена файлів, які ви хочете перелічити. Ви можете використовувати підстановку під назвою файлів (тобто *
для глобулювання), щоб включити відповідні файли та каталоги. Використовувати C-g
для завершення введення.
Іншими словами, замість того, щоб перелічити одну директорію, буфер Dired може перелічити будь-яку кількість каталогів та імен файлів, які можуть навіть належати до різних дерев каталогів.
(Негативний аргумент префікса (тобто> = 0) пропонує вам ls
перемикачі лістингу. Отже, нульовий аргумент з префіксом пропонує вам як перемикачі, так і файли / dirs у списку: спочатку ls
перемикачі, а потім файли / dirs.)