イナズマの日記

こんにちは。

Atom用のスニペットをVim用に変換するやつ

こんちゃーす、イナズマです。 この記事はAtomユーザー以外には無益です。Vimに移行する気が一ミリでもあるような(もしくはAtomVimを併用している)Atomユーザーを対象に書いてます。

はじめに

ちょっと前までAtomだけ使ってたんですが、最近はVimをよく使うようになりました。f:id:inazuma110:20180909074607p:plain 競技プログラミングにおいてスニペットは必須だと思っているので、Vimに乗り換えるにあたってスニペットの移行をしようと思いました。Vimスニペットには(安定の)Shougoさんのプラグインを使います。 github.com

んで、いざ移行しようと思ったもののAtomスニペットは.cson1というよくわからない形式で書かれていました。Vimスニペットも.snipというよくわからない形式で書く必要がありました。 つまり単純なコピペでは移行できません。しかもスニペット本文(っていえばいいのか?)も微妙に書き方が違うので結構書き直す部分がありそうです。う〜ん困った。

作った

ということで、AtomスニペットVimスニペットとして扱えるようにするnpmパッケージを作ってみました。 www.npmjs.com

最初はPythonで書こうと思ったのですが、csonっていう形式がよくわからなかったのでjsonに変換してくれるパッケージがあるNodeで書きました。 www.npmjs.com 使いにくい部分ありますが、最低限は動いてくれるかなと思います。

終わりに

文字がかなり読みにくいので文字色とか変えていこうかと思います。他にももう少し機能を追加する予定です。 すでにいくつか確認していますが、バグとかあったらIssueにおねがいします。

Issues · Inazuma110/snippets-resycler · GitHub


  1. あんまり調べてないので詳しくはわからないが、jsonにコメントとかがかけるらしい。あとcoffeescriptってのに関係があるとか。