이맥스 : 비디오 파일을 열고 재생하는 방법


9

Dired 모드에서 파일 시스템을 탐색하고 예를 들어 비디오 파일을 발견하면 해당 비디오 파일을 재생할 수있는 것이 좋습니다. Emacs에서 어떻게해야합니까?

Emacs를 사용하여 비디오 파일을 열 수는 있지만 결과는 그다지 유용하지 않습니다. 인코딩 된 파일을 텍스트로 표시하면됩니다. Emacs가 비디오 파일을 재생할 수있는 방법이 있습니까, 아니면 vlc와 같은 다른 프로그램이 파일을 재생하는 명령에 링크 할 수 있습니까?


2
아마도이 답변 이 도움 이 될 수 있습니다
Nsukami _

답변:


6

리눅스에서 나는 항상 이것을한다. 에있는 동안 dired모드, 당신이보고 싶은 파일에 커서를 가지고있다.

을 입력 !하고 사용하려는 프로그램을 입력하십시오 .

나는을 사용 mplayer하므로 다음을 입력하십시오.

!mplayer

그리고 그게 다야. vlc를 사용하거나 플랫폼에서 작동하는 모든 것을 사용할 수 있습니다.

!vlc

뭐, 정말 좋은 dired 사용하는 것은, 내가 (예 : 파일 편집기, 내가하면하지 않는 MPlayer는 출력이 창을 얻을 수 있다는 것입니다 nautilus또는 thunar, 내가 마우스 오른쪽 버튼을 클릭하고 MPlayer와 함께 응시 할 파일을 요청).

어쨌든 매크로 또는 확장이 필요하지 않습니다. 그냥 ...!


사용 &, asyncly 그것을 할 예 : &vlc- 당신은 쉘 명령을 종료하지 않고도 이맥스를 다시 얻을 것이다
DARSHAN Chaudhary

@DarshanChaudhary &vlc는 작동 vlc&하지 않지만 작동합니다.
otyn

@otyn 나는 Darshan & 대신 을 사용 하는 것을 의미한다고 생각 !합니다. 커서가 원하는 파일에 있으면 히트를 &하면 비동기 적으로 달리 실행됩니다 !.
kotakotakota

2

Dired + 는이를 지원하지만 바닐라 Dired조차도 필요한 기본 사항을 제공합니다.

이 답변 은 자세한 방법을 알려줍니다. 응답하는 질문은 외부 PDF 뷰어를 사용하여 PDF 파일을 보는 것에 관한 것임에도 불구하고 외부 프로그램을 사용하여 파일에 액세스하는 방법을 설명합니다.

대답은 또한 어느 플랫폼을 사용 하느냐에 달려 있습니다. 특히 MS Windows를 사용하는 경우 Windows 파일 연결 등을 활용할 수 있습니다.


2

이 게시물 에서 VLC 설정에 대해 설명 했습니다 . 정말 멋진 점은 자식 프로세스가 nohup에서 제거되어 VLC를 자동으로 닫지 않고도 안전하게 Emacs를 다시 시작하거나 닫을 수 있다는 것입니다.

코드는 다음과 같습니다.

(require 'dired-aux)
(defvar dired-filelist-cmd
  '(("vlc" "-L")))
(defun dired-start-process (cmd &optional file-list)
  (interactive
   (let ((files (dired-get-marked-files
                 t current-prefix-arg)))
     (list
      (dired-read-shell-command "& on %s: "
                                current-prefix-arg files)
      files)))
  (let (list-switch)
    (start-process
     cmd nil shell-file-name
     shell-command-switch
     (format
      "nohup 1>/dev/null 2>/dev/null %s \"%s\""
      (if (and (> (length file-list) 1)
               (setq list-switch
                     (cadr (assoc cmd dired-filelist-cmd))))
          (format "%s %s" cmd list-switch)
        cmd)
      (mapconcat #'expand-file-name file-list "\" \"")))))

(define-key dired-mode-map "r" 'dired-start-process)

코드가 수행하는 다른 작업은로 여러 파일을 표시 m한 다음 모든 파일을 VLC 재생 목록에 대기시킬 수 있다는 것입니다.


0

다음 스 니펫은 커서가 현재있는 파일 하나에 대해서만 OSX 운영 체제에서 작동합니다. 코드는 파일 확장자를 검사하거나 파일 확장자와 일치하는 올바른 응용 프로그램을 추측 할 수 없습니다.

(start-process
  "my-process-name" ;; process name
  nil ;; buffer output name, if an output buffer is so desired.
  "open" ;; argument 1
  "-a" ;; argument 2
  "/Applications/VLC.app/Contents/MacOS/VLC" ;; argument 3
  (dired-get-file-for-visit)) ;; argument 4

원본 포스터가 여러 개의 표시된 파일을 여는 것을 처리 하려면 목록 을 사용 dired-get-marked-files하고 mapcar아래로 내립니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.