VSCode に乗り換える

更新日時:

Emacs から VSCode に乗り換えようかなと思っている。

Emacs の何が不満か

ほとんど不満がないが、次の 4 点に集約される。

  • frymake がやや重くなっている (25.3.1 にしたら特に)
  • yatex + reftex はもう少し控え目に支援してほしい
  • 最新の入力支援は Atom か VSCode で開発されている印象がある
  • 入力支援はもっと強力であってほしい

私はコードを打つのがとにかく遅い。支援は多ければ多いほどいい。一方で自分と流儀の違う支援は断りたい。細かい調整を Lisp でやるのは大変だった。親切なみなさんから提供される支援がどんどん Atom と VSCode 上のものになりつつ今、ここで Emacs から乗り換えておいたほうがいいと思うようになった。

Atom か VSCode のどちらかということになる。 GitHub 社も Microsoft 社も好きだから迷うところである。プロコン勢の間では VSCode の方が若干優勢である印象がある(Code Thanks Festival 2018 でアンケートとっている人の結果をざっと見た限りにおいて)。あと自分の友達のエンジニアさんも VSCode いいよーと言っているので、ここは VSCode にしてみよう。

乗り換える

まず Homebrew Cask を使ってインストール。

brew tap caskroom/cask
brew cask update
brew cask install visual-studio-code

文字サイズ変更など

Command + , で設定画面がでる。あとは指示に従うだけ。 折り返しは "editor.wordWrap": "on" とする。その他適当にやる。

C++

MS 製の C++ 拡張を入れたところ、自動で静的チェッカーがオンになった。これがあれば最低レベルの状態は達成できている。勝手に整形するようにする。

早速これにハマる。よく仕組みがわかっていないが next week になおると書いてある。

snippets はもう自分で作ることにした。自分好みのものは自分で作るのが一番だ。

Ruby

Ruby と Rails の拡張機能を入れてそれで終わった。他に何も必要ないと思った。超簡単だった。

LaTeX

LaTeX Workshop をインストールして、デフォルト設定通りにするだけ。もしかしたら日本語対応するのに処理系を変えないといけないかも。 root となるファイル名を教える必要がなく、セーブするだけで勝手にコンパイラが走る。 SyncTeX 対応。右に常にコンパイル結果を見ながら編集。インデントは完全自動。信じられないくらい便利である。これで 1.2 倍くらいのスピードで論文が書けるようになった。

latexindent するところで、

Can't locate YAML/Tiny.pm in @INC (you may need to install the YAML::Tiny module)

と言われたところは結局よくわからなかったので、

sudo cpan YAML/Tiny.pm

のような処理をちまちまやっていった。

スペルチェッカは Code Spell Checker を使うことにした。控えめながら確実な支援をしてくれる。

日本人は lualatex もっと使えと言われるが、実際は submit するときに platex を要求してくることが多いので処理系は platex にしておいた。

markdown

Markdown Preview Enhanced でプレビューすることにした。元々は atom の拡張機能らしい。本当は GitHub Pages に対応したものを使うべきだろうが、いざとなれば自分で bundle exec jekyll serve すればいいから、プレビュー・出力機能として高機能なものを選ぶことにした。

また、入力支援は Markdown Helper がしっくりきた。有名なやつでも blockquote の挿入機能がなかったりしたのでこれになった。そういう意味では Emacs の標準機能の markdown 入力支援ははよくできていたんだなと。

おまけ:python3

最近新しいことをやりたいと思うようになってきた。とても良いことだと思う。 python3 をインストールして機械学習の勉強をしてみようと思うようになってきた。数学科の学生は有利だと思う。

処理系インストール

brew install python3
> Warning: python3 3.6.4_2 is already installed, it's just not linked.
> You can use `brew link python3` to link this version.
brew link python3
> Linking /usr/local/Cellar/python3/3.6.4_2... Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks

どうやらこれが原因のようだ。

If you installed using the install script before Homebrew/install#59 was merged, it is possible it was never created. It also is possible that a system/software update removed the /usr/local/Frameworks dir or changed its permissions, it is hard to tell.

sudo mkdir /usr/local/Frameworks
sudo chown $(whoami):admin /usr/local/Frameworks
brew link python3
python3 -V
> Python 3.6.4

このエラーに当たった人は pip3 が入らないので、 uninstall してから install した方が簡単でよろしい。

VSCode 設定

あとは MS 製の拡張機能を VSCode に入れて pip3 で pylint を入れて有効化すれば終わり。

"python.linting.enabled": true,
"python.linting.lintOnSave": true,

私は、ど素人だから、これで不便ではないと思うけど、良い拡張機能や入力支援があったら採用していこうと思う。

コメントする