Если я изучаю свою файловую систему в режиме Dired и сталкиваюсь, например, с видеофайлом, было бы неплохо иметь возможность воспроизвести этот видеофайл. Как я могу сделать это в Emacs?
Я могу использовать Emacs для открытия видеофайла, но результат не очень полезен - я просто отображаю закодированный файл в виде текста. Есть ли способ, которым Emacs может воспроизводить видеофайлы, или, возможно, связать его с командой, в которой другая программа, например, vlc, воспроизводит файл?
Ответы:
На Linux я делаю это все время. В
dired
режиме наведите курсор на файл, который хотите просмотреть.Введите
!
, а затем программу, которую вы хотите использовать.Я использую
mplayer
, поэтому я печатаю:И это все. С тем же успехом вы можете использовать vlc или все, что работает на вашей платформе:
Что действительно хорошо, используя dired, так это то, что я получаю окно с выводом mplayer (которого я не получаю, если с помощью редактора файлов, такого как
nautilus
илиthunar
, я щелкаю правой кнопкой мыши и запрашиваю просмотр файла с помощью mplayer).Во всяком случае, не нужно никаких макросов или расширений. Просто ...
!
источник
&
чтобы сделать это асинхронно, например:&vlc
- вы получите свой emacs обратно без необходимости закрывать команду оболочки&vlc
, похоже, не работает, ноvlc&
работает.&
вместо из!
. поэтому, когда курсор находится на файле, который вы хотите, просто нажмите,&
и это запустит его асинхронно в отличие от!
.Dired + помогает в этом, но даже ванильный Dired предлагает основы того, что вам нужно.
Этот ответ расскажет вам, как, подробно. В нем объясняется, как использовать любую внешнюю программу для доступа к любому файлу, хотя вопрос, на который она отвечает, касается только использования внешнего средства просмотра PDF для просмотра файлов PDF.
Ответ также зависит в некоторой степени от того, какую платформу вы используете. В частности, если вы используете MS Windows, вы можете воспользоваться преимуществами ассоциаций файлов Windows и т. Д.
источник
Я описал мою настройку VLC в этом посте . Что действительно круто в этом, так это то, что дочерний процесс
nohup
закрывается, так что вы можете безопасно перезапустить или закрыть Emacs без автоматического закрытия VLC.Вот код:
Другая вещь, которую делает код, заключается в том, что он позволяет пометить несколько файлов m, а затем поставить их в очередь в список воспроизведения VLC.
источник
Следующий фрагмент будет работать в операционной системе OSX только для одного файла, в котором находится курсор в данный момент - код не предусматривает проверку расширения файла и / или определение правильного приложения, соответствующего расширению файла:
Если оригинальный постер хочет иметь дело с открытием нескольких отмеченных файлов, то используйте
dired-get-marked-files
иmapcar
вниз по списку.источник