MiKTeXでローカルのtexmfツリーを作成する

MiKTeXでローカルのtexmfツリーを作成する

TEXMFLOCALTeX Live では管理者用とTEXMFHOMEユーザー用に事前定義されていますが、MiKTeX ではデフォルトではローカルtexmfツリーはインストールされていません。ただし、これは便利です。cf.ローカル texmf ツリーの目的そこで私の質問は:

texmfMiKTeX でローカルツリーを作成するにはどうすればいいですか?

答え1

実際には、ローカルTeXMFフォルダを複数作成できます。MiKTeXのオンラインドキュメントにすでに説明があります。ローカル追加機能の統合執筆時点では最近のMiKTeX 2.9(ただし、含まれている画像は古いバージョン、MiKTeX 2.5のものであり、若干異なります。http://docs.miktex.org/2.5/manual/localadditions.htmlそこの名称は「ユーザー管理TEXMFディレクトリ」です(この回答の最後にある追加メモも参照してください)

とにかく、別の説明を次に示します。

  • コンピュータのどこかにフォルダを作成します。重要な例外。 それしてはならないMiKTeX インストールのサブフォルダである必要があります (古いバージョンの MiKTeX ではこのように動作していましたが、セキュリティ上の理由で変更されました)。パスにスペースを入れることは、誤動作の危険があるため、できるだけ避けてください。MiKTeX ポータブルで使用する場合、フォルダは、もちろん MiKTeX インストールと同じドライブ上になければなりません。相対パスとして保存されます。ここでは を使用しますc:\localtexmf

    このフォルダはTDSに準拠している必要があります(TeX ファイルのディレクトリ構造); そうでない場合、MiKTeX は文句を言います。必要なものは、このディレクトリに何をインストールしたいかによって異なりますが、少なくともサブツリーがtex\latexあれば十分です。(それ自体はTDS準拠)MiKTEX ツリーですが、バイナリはサブフォルダーに直接配置できますc:\localtexmf\bin

  • 次に、GUI を使用します。

    1. スタートメニューで MiKTeX エントリに移動し、設定を開きます。管理者として操作している場合は、もちろん「設定 (管理者)」です。「MiKTeX オプション」ウィンドウが開きます。

    2. 「ルート」タブに移動します。「追加」をクリックして、 を選択しますc:\localtexmf\。ローカルディレクトリが複数ある場合は、「上へ」および「下へ」ボタンを使用して検索順序を選択できます。

    3. さて、最も重要な部分です。「一般」タブに移動し、「FNDBを更新」をクリックします。(FNDB = ファイル名データベース)場合によっては、特に新しいフォントがインストールされている場合は、「フォーマットの更新」ボタンも押す必要があります。

    この手順を忘れると、これまでの手順はすべて無駄になってしまいます。

  • それ以外の場合は、コマンドラインを使用します (管理者として常にスイッチを追加します--admin)。

    を実行しinitexmf --register-root=c:\localtexmf、その後にinitexmf --update-fndb(短縮形: initexmf -u) を実行します。

    (各ステップでスイッチを追加して--verbose、何が起こるかについての詳細情報を取得できます。)

    述べる:互換性の理由から、古いスイッチもあります--user-roots=<local-texmf-dir>。これは、ユーザーのルートディレクトリを登録するものでinitexmf --help、管理者モードでも動作すると思いますが、http://docs.miktex.org/manual/initexmf.htmlもう言及されていないので、推測するしかありません。

  • バイナリ用のサブフォルダが作成された場合はbin、環境変数に登録する必要があります。%PATH% 前にMiKTeX独自のインストールのバイナリサブツリー、例えば以下を参照Windows XP で環境変数を管理する方法またはサードパーティのツール環境男またはラピッドEE. その後、有効にするにはシステムを再起動する必要があります。解決できない問題: 管理者によって設定されたシステム全体の環境変数は、常にユーザー固有の環境変数より先に読み取られます。そのため、一般ユーザーは、独自の環境変数を含むバッチ ファイルのみを記述して使用できます%PATH%

ユーザーが作成したすべてのローカル texmf ツリーは、MiKTeX ルートから一時的に削除することで無効にできます (最後の追加メモを参照)。

参照MiKTeX (Windows) にパッケージを手動でインストールするにはどうすればいいですか?

完全を期すために、MiKTeX からローカル TeXMF ツリーを削除する方法をc:\localtexmf\例とともに説明します。

  • GUI:
    設定(「MiKTeX オプション」ダイアログ)の「ルート」タブに再度移動し、ディレクトリを選択してc:\localtexmf\、ウィンドウの下部にある「削除」をクリックします。その後、FNDB を再度更新し、場合によってはフォーマット ファイルも更新する必要があります。

  • コマンドライン (ここでも: 管理者としてスイッチ を追加--admin):
    を実行しinitexmf --unregister-root=c:\localtexmf、続いて を実行しますinitexmf --update-fndb。フォントをアンインストールした場合は、さらに を実行しますinitexmf --mkmaps--verboseスイッチ も追加できます。

  • サブフォルダーが不要になった場合はbin、環境変数を%PATH%クリーンアップする必要があります。

  • その後、フォルダー ツリーをc:\localtexmf\安全に削除できます。

追加メモ

まずヒント: コマンド プロンプトで、たとえばecho %Variable%と入力できます。これにより、システム上で変数がどの値に拡張されるかを確認できます。%Variable%%Userprofile%

まさにそのフレーズ「MiKTeX では、デフォルトではローカル texmf ツリーはインストールされません」  質問の は正しくありません。MiKTeX は、%UserProfile%管理者モードでも の下にいくつかのツリーを追加します%AllUsersProfile%(以下では、MiKTeX の名称が最初になります)。

  • 「ユーザー設定」:%AppData%\MiKTeX\<version>\
  • 「UserData」: %LocalAppData%\MiKTeX\<version>\(Windows Vista 以降) または%UserProfile%\<Local Settings>\<Application Data>\MiKTeX\<version>\(Windows XP までは、文字列<Local Settings>と は<Application Data>言語に依存します)
  • 管理者モードでのみ使用“CommonConfig” および “CommonData”: %AllUsersProfile%\MiKTeX\<version>\(Windows Vista 以降) または%AllUsersProfile%\<Application Data>\MiKTeX\<version>\(Windows XP までは、文字列<Application Data>は言語に依存します)

実際のパスは、「MiKTeX オプション」ウィンドウの「ルート」タブの GUI で確認するか、 を実行してコマンドライン インターフェイスで確認できますinitexmf --report

これらすべてのローカル ツリーの欠点: インストール時にのみ変更可能です。cf.MiKTeX で自動インストールされるパッケージの場所を変更する、これらを無効にすることはできません (MiKTeX ルートから一時的に削除することによって)。

詳細は以下を参照MiKTeX の管理者モードとユーザーモードの違い

答え2

これはMikTeXの新しいバージョンでの指示です。引用部分は変更されていません。もう一つの答え

  • コンピュータのどこかにフォルダを作成します。重要な例外。 それしてはならないMiKTeX インストールのサブフォルダである必要があります (古いバージョンの MiKTeX ではこのように動作していましたが、セキュリティ上の理由で変更されました)。パスにスペースを入れることは、誤動作の危険があるため、できるだけ避けてください。MiKTeX ポータブルで使用する場合、フォルダは、もちろん MiKTeX インストールと同じドライブ上になければなりません。相対パスとして保存されます。ここでは を使用しますc:\localtexmf

.sty ファイルを保存するのに最適なディレクトリはどれですか? フォルダを配置する場所に関する提案が含まれています。

このフォルダはTDSに準拠している必要があります(TeX ファイルのディレクトリ構造); そうでない場合、MiKTeX は文句を言います。必要なものは、このディレクトリに何をインストールしたいかによって異なりますが、少なくともサブツリーがtex\latexあれば十分です。(それ自体はTDS準拠)MiKTEX ツリーですが、バイナリはサブフォルダーに直接配置できますc:\localtexmf\bin

  • 次に、GUI を使用します。
  1. 「スタート」→「MiKTeX」→「MiKTeX コンソール」に移動します。
  2. 「設定」(左ペイン)→「ディレクトリ」タブ→「+」ボタン→パスを選択します。
  3. 「タスク」(メニュー項目)→「ファイル名データベースを更新」。
  • それ以外の場合は、コマンドラインを使用します (管理者として常にスイッチを追加します--admin)。

    を実行しinitexmf --register-root=c:\localtexmf、その後にinitexmf --update-fndb(短縮形: initexmf -u) を実行します。

initexmf --register-root=<path><path>絶対パスでなければならないことに注意してください。つまり、c:\または で始まる必要があります。

(各ステップでスイッチを追加して--verbose、何が起こるかについての詳細情報を取得できます。)

関連情報