Reactを最近勉強し始めたのでVSCodeも使ってみるかと思っている。そうはいってもEmacsを使いたいときもあるので、
の両方をやりたい。ということでやってみた。
Emacsで現在開いているファイルをVSCodeで開く
実装はこれ -> https://github.com/shibayu36/emacs/commit/9699a693d45b8d3b355b15b57c6e6b3f827d6483
単純にcodeコマンドを使って現在のファイル名、行数、カラム数を渡してあげると良い。
;;; 現在のファイルをvscodeで開く (defun open-by-vscode () (interactive) (shell-command (format "code -r -g %s:%d:%d" (buffer-file-name) (line-number-at-pos) (current-column)))) (define-key global-map (kbd "C-c C-v") 'open-by-vscode)
これでC-c C-vを押せば、一瞬でEmacsの現在カーソル位置をVSCodeで開ける。
VSCodeで今開いているファイルをEmacsで開く
こちらはOpen in Editorというプラグインを使うと簡単にできる。emacsclientコマンドに現在のファイル名、行数、カラム数を渡してあげると良い。
プラグインをインストールし、settings.jsonに以下のように記述を追加した。
"alt-editor.binary": "emacsclient", "alt-editor.args": "-n +{line}:{column} {filename}"
さらにkeybindings.jsonには以下のように記述。
{ "key": "ctrl+c ctrl+e", "command": "alt-editor.openFile", "when": "editorTextFocus" }
これでVSCode上でC-c C-eを押せば、一瞬でVSCodeの現在カーソル位置をEmacsで開ける。