文化祭をはさんでとても忙しかったですが、ようやく落ち着きそうです。
OS自作入門の5日目がなかなか突破できないので、別の記事を挿みます(笑)
今回は、Vimでアセンブラのソースにシンタックスハイライトをつけよう!という内容です。
VimはデフォルトではGASのソース(.sファイル)はこんな感じになります。
<Before>
悪くはないんですが、なんだかほとんどが一色で統一されていて、
ハイライトの意義がほとんどないというか…。
<After>
命令、数値、ラベル、定数などがちゃんと色分けされました。
これだと見やすくて作業効率も上がりそうです。
それでは、シンタックスハイライトのつけかたを説明していきます。
そもそも、Vimはファイルタイプによって別々の自動的にハイライトが適用されます。
ファイルタイプは拡張子や、ファイル先頭の#!/xxxなどで判別されます。
今回は、GASのソースにハイライトをつけたいので、拡張子が.sのファイルを
一つのファイルタイプとしていきます。
まずはファイルタイププラグインをonにします。
Vimの設定ファイル(~/.vimrc)に下の一行を加えます。
~/.vimrc
filetype plugin on
続いて、ファイルタイプを登録します。
~/.vim/filetype.vimというvimスクリプトでファイルタイプを定義します。
たぶん初期状態では存在しないので、自分で作ります。
~/.vim/filetype.vim
augroup filetypedetect
au BufRead,BufNewFile *.s setfiletype gas
augroup END
これで"gas"というファイルタイプが作成されました。拡張子が.sならファイルタイプはgasです。
それに対応するハイライトファイル(というかまあ設定ファイル)を用意します。
場所は
~/.vim/ftplugin/[ファイルタイプ].vimです。
今回は、vim.orgに用意されているものを利用します。
こちら。
これをダウンロードして、~/.vim/ftplugin/gas.vimにおいてください。
以上の手順を踏むと、はじめのようにソースがハイライトされると思います。
もし色が変わらない場合は、filetype.vimで余計な空白が挿入されていたり、
ファイル名が間違っていたりしていると思いますので、ご確認ください。
ちなみに、自作OSの進捗状況。
なんか文字表示もできるようになってやったーとか見えるんですが、
やはりグローバル変数がなぜか使えないままです。
変数や関数のアドレスが表示できるのですごくありがたいのですが、
それでもわからず…
%dsの値が違うところを指しているのでは?と思っていろいろやったんですが、
どうやら%ds=1<<3で間違いはないようで。
この辺りの説明が自作本では少ないというか、少々誤魔化している感があります。
とりあえず、どうにかここで原因を究明したいと思います。
PR
COMMENT