Emacsで開いているファイルをPhpStorm/IntelliJ IDEAでひらく
5428 ワード
とっさにEmacsでファイルを開いてしまう癖があり、
PhpStorm/IntelliJ でファイルをまた探すのが面倒なので作りました。逆はこれ。
中身をみていただくとわかりますがopen
コマンドの-a
オプションをつけてアプリケーションを指定してるだけ。
init.el
(defun my/get-curernt-path ()
(if (equal major-mode 'dired-mode)
default-directory
(buffer-file-name)))
;; 現在のファイルをPhpstormで開く
(defun open-phpstorm ()
(interactive)
(let ((fPath (my/get-curernt-path)))
(when fPath
(shell-command-to-string (concat "open -a /Applications/PhpStorm.app " fPath)))))
;; 現在のファイルをIntelliJ IDEAで開く
(defun open-idea ()
(interactive)
(let ((fPath (my/get-curernt-path)))
(when fPath
(shell-command-to-string (concat "open -a /Applications/IntelliJ\\ IDEA.app " fPath)))))
;; (global-set-key (kbd "C-c 5") 'open-phpstorm)
(global-set-key (kbd "C-c 5") 'open-idea)
おまけ
上記のelispを応用すればクリップボードにファイルのパスを保存したりFinderを開くことができる。
init.el
(defun my/copy-current-path ()
(interactive)
(let ((fPath (my/get-curernt-path)))
(when fPath
(message "stored path: %s" fPath)
(kill-new (file-truename fPath)))))
;; 現在のbuffferのディレクトリをfinderで開く
(defun open-finder ()
(interactive)
(let ((fPath (file-name-directory (my/get-curernt-path))))
(when fPath
(shell-command-to-string (concat "open " fPath)))))
(global-set-key (kbd "C-c 1") 'my/copy-current-path)
(global-set-key (kbd "C-c 4") 'open-finder)
Author And Source
この問題について(Emacsで開いているファイルをPhpStorm/IntelliJ IDEAでひらく), 我々は、より多くの情報をここで見つけました https://qiita.com/shuntakeuch1/items/f049b546b32b4cfee55b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .