Emacs에서 Finder를 여는 방법
그런 때용 Tips입니다.
shell-command를 사용합시다.
Emacs에는 shell-command
라는 편리한 함수가 있습니다.
이것은 인수에 문자열을 취하고 shell에서 실행하는 함수입니다.
M-x shell-command RET "open ."
이제 shell에서 open .
를 입력하면 동일한 결과를 얻을 수 있습니다.
직접 함수를 정의합시다.
일종의 M-x shell-command
등을하는 것은 번거롭기 때문에 이것을 하나의 사용자 정의 함수로합시다.
;; current directory open
(defun finder-current-dir-open()
(interactive)
(shell-command "open ."))
;; directory open
(defun finder-open(dirname)
(interactive "DDirectoryName:")
(shell-command (concat "open " dirname)))
;; set the keybind
(global-set-key (kbd "M-f") 'finder-current-dir-open)
이제 M-f
를 입력하면 현재 디렉토리가 Finder에서 열립니다.
보충 1 : interactive란?
(defun finder-current-dir-open()
(interactive) <---- これ!!
(shell-command "open ."))
여기에 쓰여진 interactive
의 의미에 대해 조금 보충합니다.
정의한 함수 중(이번이라면 finder-current-dir-open
)에 interactive
라고 기술하는 것에 의해, M-x
(그러므로, 만약 상기의 함수에 interactive
가 기술되어 있지 않으면, M-x
해도 함수를 호출할 수 없습니다)
보충 2 : interactive "D"란?
(defun finder-open(dirname)
(interactive "DDirectoryName:") <---- これ!
(shell-command (concat "open " dirname)))
여기서는 interactive "D"
가 아니라 DDirectoryName:
가 되어 있습니다만, 최초의 문자 "D"이후는 Minibuffer에 표시되는 문자이므로 무시해 문제 없습니다.
그런데, 여기서 말하는 "D"란, Directory의 D군요.
그리고 "D"가 기술되면 Emacs는 디렉토리 목록을 Minibuffer에 표시합니다.
그런 다음 열려는 디렉토리를 입력하여 Finder에서 열 수 있습니다.
그 외에도 interactive "P"
라든지 interactive "n"
라든지 있습니다.
자세한 내용은 여기을 참조하십시오!
참고
Emacs에서 마이너 모드를 정의하거나 M-x로 움직이는 대화식 함수를 정의해보십시오.
Emacs Interactive Codes
Reference
이 문제에 관하여(Emacs에서 Finder를 여는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/blue0513/items/8031893295cd609b935e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
M-x shell-command RET "open ."
일종의
M-x shell-command
등을하는 것은 번거롭기 때문에 이것을 하나의 사용자 정의 함수로합시다.;; current directory open
(defun finder-current-dir-open()
(interactive)
(shell-command "open ."))
;; directory open
(defun finder-open(dirname)
(interactive "DDirectoryName:")
(shell-command (concat "open " dirname)))
;; set the keybind
(global-set-key (kbd "M-f") 'finder-current-dir-open)
이제
M-f
를 입력하면 현재 디렉토리가 Finder에서 열립니다.보충 1 : interactive란?
(defun finder-current-dir-open()
(interactive) <---- これ!!
(shell-command "open ."))
여기에 쓰여진 interactive
의 의미에 대해 조금 보충합니다.
정의한 함수 중(이번이라면 finder-current-dir-open
)에 interactive
라고 기술하는 것에 의해, M-x
(그러므로, 만약 상기의 함수에 interactive
가 기술되어 있지 않으면, M-x
해도 함수를 호출할 수 없습니다)
보충 2 : interactive "D"란?
(defun finder-open(dirname)
(interactive "DDirectoryName:") <---- これ!
(shell-command (concat "open " dirname)))
여기서는 interactive "D"
가 아니라 DDirectoryName:
가 되어 있습니다만, 최초의 문자 "D"이후는 Minibuffer에 표시되는 문자이므로 무시해 문제 없습니다.
그런데, 여기서 말하는 "D"란, Directory의 D군요.
그리고 "D"가 기술되면 Emacs는 디렉토리 목록을 Minibuffer에 표시합니다.
그런 다음 열려는 디렉토리를 입력하여 Finder에서 열 수 있습니다.
그 외에도 interactive "P"
라든지 interactive "n"
라든지 있습니다.
자세한 내용은 여기을 참조하십시오!
참고
Emacs에서 마이너 모드를 정의하거나 M-x로 움직이는 대화식 함수를 정의해보십시오.
Emacs Interactive Codes
Reference
이 문제에 관하여(Emacs에서 Finder를 여는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/blue0513/items/8031893295cd609b935e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
(defun finder-current-dir-open()
(interactive) <---- これ!!
(shell-command "open ."))
(defun finder-open(dirname)
(interactive "DDirectoryName:") <---- これ!
(shell-command (concat "open " dirname)))
여기서는
interactive "D"
가 아니라 DDirectoryName:
가 되어 있습니다만, 최초의 문자 "D"이후는 Minibuffer에 표시되는 문자이므로 무시해 문제 없습니다.그런데, 여기서 말하는 "D"란, Directory의 D군요.
그리고 "D"가 기술되면 Emacs는 디렉토리 목록을 Minibuffer에 표시합니다.
그런 다음 열려는 디렉토리를 입력하여 Finder에서 열 수 있습니다.
그 외에도
interactive "P"
라든지 interactive "n"
라든지 있습니다.자세한 내용은 여기을 참조하십시오!
참고
Emacs에서 마이너 모드를 정의하거나 M-x로 움직이는 대화식 함수를 정의해보십시오.
Emacs Interactive Codes
Reference
이 문제에 관하여(Emacs에서 Finder를 여는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/blue0513/items/8031893295cd609b935e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Emacs에서 Finder를 여는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/blue0513/items/8031893295cd609b935e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)