ファイルを開かずにファイルのビューを提供するメジャーモードを作成する方法


9

netCDFファイルを検査するためのメジャーモードを記述したいと思います。これらは、サイズが数GBのバイナリファイルです。だから私はそれらをemacsで開けたくありません。

私が考えている相互作用は次のとおりです。

  1. ユーザーがemacsの他のファイルと同様にnetCDFファイルを開きます。
  2. コマンドラインプログラム(ncdump -h)がファイルに対して実行され、出力はemacsによって解釈されます。

問題は、emacsが実際にファイルを開くのを止める方法がないように見えることです。


3
興味深い問題。実行が遅すぎるため、これをメジャーモードから実行することはできません-*-my-mode-*-。ファイルの内容に基づいてメジャーモードを選択できるため(たとえば)、Emacsは最初にファイルを開く必要があります。以前の段階でfind-find-noselect、おそらくディレクトリの例外が発生している場所にフックする必要があります。
Gilles「SO-邪悪なことをやめよ」

4
プロセスを実行して特定のバッファーに出力を送信する関数が必要ですか(ファイル名はユーザーが選択できる引数です)?メジャーモードは通常、特定のバッファーでの操作を意味するため、他にどのような方法でメジャーモードが必要になりますか(たとえば、メジャーモードの目的は何ですか、それは何をしますか?)。以下は、Emacsで開始できるさまざまなプロセスを説明するマニュアルへのリンクです。gnu.org
software /

2
スタートは使用することですprocess-fileか、call-process使用して、そのようなAファイル上ncdump -hなど
ドリュー

2
elpaのvlfパッケージを知っていますか?このパッケージは、バイナリファイルではなくテキストファイルを使用して実現しようとしていることを正確に実行しているようです。私はあなたがそのパッケージからあなたが望むことをする方法を学ぶことができると思います。64ビットemacsを使用している場合、emacsの整数制限もこのパッケージには関係ありません。を介してパッケージをインストールできますM-x package-install
トビアス

1
@Tobiasの提案をもう一度見ることをお勧めします。vlfの機能が必要なためではなく、vlfに必要な機能と同じ機能が必要なため、どのように機能するかを検討する価値があります。
Stefan

回答:



1

私はと呼ばれるパッケージを使用しますvorbiscomment。これは、ヘッダーコメントのURLでは検出できず、* ELPAまたはEmacsWikiにも表示されません。機能しないURLは次のとおりです。

http://users-phys.au.dk/harder/

とにかく、それはあなたが望むものに概念的に似て聞こえる(バイナリ)OGG Vorbisオーディオファイルのタグメタデータを編集することを可能にします。これは、実際にはコマンドラインツールの単純なラッパーです。

私はそれを次の要点にコピーしました:

https://gist.github.com/PhilHudson/4fc8f38a5dc2b39f256feddb0014041c

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.