先日 LaTeX のタイプセット中によくわからないエラーがあってタイプセットできなかったことがあったので, メモとして残しておきます.
ある日, bib ファイルの中身をいじってから tex ファイルでタイプセットした時のこと,
You're missing an entry type
と怒られました...
bib ファイルいじっちゃったからなあ...と, bib ファイルでエラーが起こってそうな箇所を見にいったのですが,
どうも変なところはなさそうでした.
実際, うまく動いていた時の bib ファイルからエラーの該当箇所と対応するところをコピーして, 今のファイルのエラー箇所に貼り付けてみるとうまく動きました.
でも見た目は全く一緒なので, どこがおかしいかわかりませんでした.
その時そのエラーを一緒に見てもらった人が言うには
もしかしたら変な制御文字が入っちゃったんじゃない?
と.
制御文字とは普通は見えない, いわゆる不可視文字というやつのようです.
Mac だとターミナルから vi コマンドを用いてファイルを開くと不可視文字も見られると聞き
vi を使って bib ファイルを見てみることになりました.
するとエラーの該当箇所に ^P の文字.
これがいわゆる制御文字というものだそうです.
ちなみに制御文字は
ctrl + Q
の後に
ctrl + (何か)
を打つと制御文字が入力できるらしいです (詳しくはhttps://blog.fenrir-inc.com/jp/2016/11/input-control-characters.html).
わたしは caps lock に ctrl キーを割り当てていたので
shit + 2 を打って @ を入力したかった時に
ctrl + Q を打ってしまっていたのかもしれません...(ひどいタイプミス...)
もしタイプセットでエラーが出たときは制御文字の可能性も考えてみるといいかもしれません.