【※ 当記事は2020年1月15日時点の情報です】
ペイヴメント(@pavement1234)です。
viviエディタについて知りたい。
viviエディタのメリット、デメリットは何か?。
プログラミングするときのエディタって何を使われてますか?Atom、VS Code、さくらエディタ、Eclipse、どれも高機能で便利ですね。
でも私はシンプルなvivi(Free)というエディタを、かれこれ20年ぐらい使ってます(当時はVer0.8とかVer0.9とかだった)。
プログラマーになったとき たまたま先輩から教えてもらったのがviviでして、それ以降使い続けているわけです(ひよこが初めて見たものを親だと思う習性と似てるかもしれません)。とはいえ、若気の至りで高機能エディタがカッコよく感じ、色々インストールして試してみたこともあるのですが、気づいたらviviを立ち上げてる自分が居ました もはや私はvivi無しでは開発できないのかもしれません…。
どんなエディタ?
津田伸秀(つだのぶひで、N.Tsuda)氏により開発された、Windows用のviクローンエディタです。詳細はWikipediaに書いてあるので、詳しく知りたい方はご参照ください。
viviのホームページはここです。昔ながらのホームページという佇まいです。
vivi(Free)はここからダウンロードします。2012年6月4日で更新が止まっています。
viをご存じない方がいらっしゃるかもしれませんのでカンタンにご説明しますが、UNIX標準のテキストエディタ(Windows のメモ帳みたいなもの)です。
約20年前はSUN、HP、IBMなどの商用UNIXワークステーションでプログラム開発するのが一般的でして、TeraTermからTelnetログインするのが普通。下手すると端末(Terminal)と呼ばれるHDDすらついてない入出力装置をあてがわれるケースもありました。当時の上司は「viが入ってないUNIXはないんだ vi覚えとけば無敵だぞ」というのが口癖でした。たしかにviのみインストールされてる環境が多かったのも事実。新人の私にviを覚えないという選択肢はありませんでした。最初こそつかいにくいviですが、ある時期を超えると独特のコマンド入力に身体が慣れてしまい、マウスとかカーソルキーとかを使うのが逆に面倒になります。こうしてvi使いができあがるわけですね。
さて、viviを立ち上げてファイルを開くとこんな感じ。Netscape NavigatorとかInternet Explorerの起動アイコンがシブいです。
デフォルトはviモードが無効になってますが、メニューから「その他(O)→共通プロパティ(K)」を開き「vi」タブの「viモード有効」をONにすることでviモードで動作させることが出来ます。

viコマンドの詳細を紹介してるサイトを見つけました。詳しく知りたい方はこちらをご参照ください。
≫参考:viコマンド(vimコマンド)リファレンス(Qiita)
私が好きな機能3つ
機能1 viコマンド
私はvi信者なので、viがないと落ち着きません。「その他(O)→ヘルプ(H)」を開くとviモードリファレンスを見れるので、viを試しに使ってみてください。
機能2 文字変換
私は4タブが好きですが、UNIX環境におけるviのデフォルトは8タブだったりします。タブの設定はUNIXのログインユーザに紐づくので、レイアウトが崩れるのを防止するためにインデントは半角スペースにすることというルールを課すのもアリだと思います。こういうケースでviviの文字変換を使うことでタブを半角スペースに一括変換できて便利です。
たとえば以下、赤枠のようにタブでインデントしてるソースコードがあります。これを半角スペースに変換しようと思います。
「Ctrl+A」で全選択し、メニューから「編集(E)→文字変換(X)→タブ→半角スペース(S)」を実行します。
無事、タブが半角スペースに変換されました。
機能3 罫線モード
罫線素辺(けいせんそへん)ってご存じでしょうか。罫線のパーツを文字コードに登録したもので、文字しか使えない環境で、図や表を作りたいときに使います。ちょっと古臭いような感じもするのですが、私は結構好きで、罫線素辺をつかってメモリマップを書いたりしてます。詳しくはWikipediaをご参照ください。
まず「罫線モード」アイコンをクリックします。
罫線モードに入ったらCtrlキーを押しながら矢印キーを押すと以下のように罫線を引けます(逆にShiftを押しながら矢印キーを押すと罫線を消せます)。
viviを使うメリットとデメリット
メリット3つ
1.とにかく軽い
サクッと起動します。ためしにフットプリント(メモリ使用量)を見てみたところ5.8MBでした。かなり軽いと思います(ちなみにメモ帳は2.6MBでした)。
2.viコマンドが使える
しつこいですね。私はvi信者なのです。
3.ファイラとして優秀
左の「アウトライン」ペインにファイルをドロップすると、ツリー構造でファイル・フォルダを閲覧できます。
さらに、メニューから「その他(O)→タイプ別プロパティ(P)→アウトライン」を開き「C/C++関数・メソッド定義(M)」と「C++クラス・構造体定義」をONにします。
左の「アウトライン」ペインからtest.cを右クリックして「アウトライン解析」を実行すると、以下のように構造体や関数をオブジェクトとして見れます。これが本当に便利です。
デメリット3つ
1.機能が少ない
Visual StudioとかEclipseみたいな高機能エディタは「オートコンプリート」とか「デバッガと連携」なんてことができますがvivi(Free)ではそういうの出来ません(外部コマンドとか色々駆使すればできるかもだが、普通やらない気がする)。
ちなみに私はviviの有償ライセンス(個人は4000円)を持ってるので、どのバージョンも使うことが可能なのですが、ちょっと重たい感じがして、最近はvivi(Free)をメインで使ってます。
2.Windows以外でvivi(Free)が使えない
最近はLinux(Ubuntu)で開発するケースが増えているためvivi(Free)が恋しくなることがあります。もちろんQt(キュート)で実装されたvivi(Ver.5)があり、Mac、Linuxで動作可能なのは知っているのですが、私はvivi(Free)のファンなのです。
3.vivi(Free)は開発を終了している
vivi(Free)はバージョン1なのですが、上の方で軽く触れたとおり2012年6月4日で更新が終わっています。バックポート的にvivi(Free)に機能が追加されたらいいなと思うことがたまにあります(機能追加すると重くなっちゃうからダメかも?)。
まとめ
プログラマーの皆様はそれぞれ、最初に使った思い出深いエディタがあるかと思います。私にとってそれがvivi(Free)でした。
プログラミング環境がどんどん高機能化、複雑化していく中で、軽量なvivi(Free)の快適さ、シンプルさは貴重です。もし色々なエディタを使ってみたがしっくりくるのが無かった、なんて方は一度お試しあれ。
ITスキルを身につけると条件の良い転職が可能になる
ITスキルを身につけると条件の良い転職が可能になります。当ブログがそのキッカケになったら幸いです。