6

gitbook 用のプラグインの作成を学びたいです (それを使用したいので、カスタム プラグインが必要になるため)。

ただし、この問題に関するドキュメントは少しまばらであり、既存のプラグインからコードを読み取ることは、この質問ではあまり役に立ちません。

公開する前にプラグインをテストするにはどうすればよいですか。ドキュメントは、プラグインがどのように見えるべきかについていくつかのヒントを提供し、それからそれを公開するように指示します.

もちろん、まだそうしたくはありません。公開する前に、ローカルで開発およびテストしたいと考えています。しかし、どうすればそれができるのかわかりません。

インストール済みのプラグインを内部にコピーし/usr/lib/node_modules/gitbook-cli/node_modules/て新しいプラグインを作成しようとしましたが、本でプラグインを使用しようとすると、プラグインをインストールするようにというエラー メッセージが表示されますnpm

最初に npm で公開せずにプラグインを (テスト用または一般的に) 使用する方法はありますか?

4

3 に答える 3

5

プラグイン ディレクトリをディレクトリにシンボリック リンクすることで、NPM への最初の公開をスキップできますnode_modules。ディレクトリ構造を想定します。

projects/
  my-book/
    node_modules/
    other_files...
  awesome-plugin/
    plugin_files...

その後、あなたはすることができます

cd projects/my-book/node_modules
ln -s ../../awesome-plugin

プラグインを登録するには、プラグインを追加する必要がある場合がありますがbook.json、最初はプラグインなしで試してください。また、*NIX 環境を想定しています。Windows のコマンドを調べる必要があるかもしれませんが、概念は同じです。


上記の回答とは別に、NPM の名前空間付きパッケージを使用して、プラグインをプライベート名前空間 (例: ) に公開できます@uli_1973/awesome-plugin。次に、重要な準備ができたら、プラグインの名前空間のない名前を要求できます ( awesome-plugin)。

于 2015-09-16T22:38:58.267 に答える
3

gitbook プラグインは単なる NPM モジュールです。gitbook プラグインの開発では、npm モジュールをローカルで開発する方法を使用できます。

Npm は、この状況を処理するためのlinkコマンドを提供します。

まず、gitbook プラグイン フォルダーで、以下のコマンドを実行して、グローバルにインストールされたプラグインへのシンボリック リンクを作成します。

npm link

次に、gitbook フォルダーで以下のコマンドを実行して、gitbook のフォルダーglobal gitbook-plugin-nameの下にあるシンボリック リンクをリンクします。node_modules

npm link gitbook-plugin-name

でプラグインを構成しますbook.json。これで、公開せずに gitbook でプラグインをテストできます。

于 2016-05-30T06:03:36.757 に答える
1

これは決定的な答えではありません (したがって、「受け入れる」ことはしません) が、状況によっては受け入れられる可能性のある回避策を見つけました。

可能なことは次のとおりです。

  • (暫定) プラグインを作成する
  • NPM に公開する
  • 本にプラグインを追加するbook.json
  • gitbook install本のディレクトリで実行

これにより、本のnode_moduleディレクトリ内にプラグインがダウンロードされ、インストールされます。そこで JavaScript ファイルを変更すると、その後の gitbook ビルドに反映されます。したがって、ローカルでプラグインの開発を続けることができます。

見なければならないのは、準備ができたら、変更されたプラグインを公開できる方法 (場合) です。

また、npm で公開されているプラ​​グインが完全に表現できないことは、(多かれ少なかれ深刻な) 欠点と見なされる場合があります。

于 2015-06-18T07:40:24.600 に答える