Previous: , Up: Emacsのトラブルへの対処   [Contents][Index]


51.9 長い行

非常に長い行(“非常に長い行”とは通常だと少なくとも数千の文字をもつ行のこと)が存在する際には、さまざまな理由(再表示のコードおよびEmacsが処理する可能性のある複雑な範囲に由良する理由や、通常とは異なる状況下におけるスケーラビリティを有しないモードや機能に由良する理由)によりEmacsのパフォーマンスが低下する恐れがあります。

非常に長い行をもつファイルをvisitする際に特に問題となるのが、Emacsが長時間“固まる(hang”かもしれないということです。これはso-longライブラリーを有効にすることで対処できます。このライブラリーはファイルをvisitする際に、そのファイルが異常に長い行を含んでいることを検知して、そのような状況下で速度低下をもたらしがちな機能を無効化する手順を実行します。M-x global-so-long-mode RETとタイプするか、あるいはinitファイル(Emacs初期化ファイルを参照)でglobal-so-long-modeをオンにしたり、global-so-long-modeオプションをカスタマイズすることによって、このライブラリーを有効にすることができます。変数so-long-actionをカスタマイズすることで、このモードの処理を調節することができます。

so-longライブラリーは、長い行をもつバッファーで移動や編集を行う際のパフォーマンスも大幅に改善することができます。長い行に深く分け入るとともに、依然としてパフォーマンスは劣化しがちではあるものの、このライブラリーを用いることによるパフォーマンスは有意に改善されます

このライブラリーにたいするドキュメントの閲覧、およびライブラリーを有効化して構成する方法についての詳細を得るには、M-x so-long-commentaryとタイプしてください。