資料はどこにありますか?

資料はどこにありますか?
  1. Emacs lispのソースコード.elcファイル?

    例えばcal-mayan.elc

  2. ディレクトリ内のファイル/bin

    たとえばcat、、、、splitecho

答え1

これは、使用しているディストリビューションによって多少異なります。 Debianスタイルのシステムでは、次のことができます。

$ dpkg -S `which cat`
coreutils: /bin/cat
$ apt-get source coreutils

最後のコマンドは、catコマンドを含むバイナリパッケージを構築するために使用されるソースアーカイブとすべてのパッチを取得します。

または、ただグーグルしてください。または、Googleコード検索を試してください。

答え2

しかし、Emacsの場合、Ubuntuの下にemacs23-elという特別なパッケージがあります。このパッケージにはEmacs用のすべてのelファイルが含まれており、elcファイルとともにインストールされます。これの利点は、Emacsで直接関数と変数定義を見ることができることです。 string-insert-矩形関数がどのように定義されているかを見たいとしましょう。 Ch f string-insert - 四角形をクリックすると、ドキュメントを含むヘルプバッファが表示され、そのエントリがret.elで定義されていることがわかります。 ret.elをクリックすると、Emacsは自動的に関数定義を表示します。

答え3

RPMベースのディストリビューションの場合は、「rpm -qi <somepackage>」、または元のパッケージがわからない場合は「rpm -qi <somefile>」を要求できます。ソースRPMが何であるか、ソースのホームページが何であるかを知らせます。 Fedora(およびyumを使用する他のディストリビューション)では、yumdownloaderを使用してソースパッケージを入手できます。たとえば、「yumdownloader --source <パッケージ>」を使用すると、ソースパッケージを入手できます。その後、rpm(1)コマンドを使用してソースコードを解凍できます(ソースRPMパッケージには、アップストリームソースコード、さまざまなパッチ、構成ファイル、および結果の構築とインストールをガイドする仕様ファイルが含まれています)。

ローカル修正を介してパッケージをインストールする必要がある場合(おそらく次のアップストリームバージョンを確認するため)、便利です。

関連情報