ヘルプセンター
LaTeX と Typst のプロジェクトの作成、コンパイル、共同作業のための実用的なガイド。
サイトに「JointTex で開く」を追加する
チュートリアルや講義、ドキュメントの読者が、LaTeX や Typst の例をワンクリックで自分の JointTex プロジェクトとして開けるようにします。
ボタンを追加する
ボタンは、例のコードを JointTex に送る普通の HTML フォームです。フィールド名は Overleaf の「Open in Overleaf」と同じなので、Overleaf 向けに書かれたページはフォームの送信先を変えるだけで使えます。
手順
- 例の横に、method が post、action が https://jointtex.com/open のフォームを置きます。
- コードは snip という名前のフィールドに入れます。ページで encodeURIComponent によりエンコードした場合は encoded_snip に入れます。
- 送信ボタンを追加します。サイト側にスクリプト、キー、アカウントは必要ありません。
<form action="https://jointtex.com/open" method="post" target="_blank">
<textarea name="snip" hidden>
\documentclass{article}
\begin{document}
Hello, JointTex!
\end{document}
</textarea>
<button type="submit">Open in JointTex</button>
</form>複数のファイルを送る
参考文献や章ごとのファイルがある例は、各ファイルを順に別々のフィールドとして送ります。
手順
- ファイルごとに snip[](または encoded_snip[])を繰り返し、同じ順序で snip_name[] にファイル名を指定します。名前のない最初のファイルは main.tex になります。
- .tex ファイルが複数ある場合は、コンパイルするファイルを main_document で指定します。指定がなければ、唯一の .tex ファイルか、\documentclass を含むファイルが使われます。
- ファイル名には chapters/intro.tex のようにフォルダーを含められます。
<form action="https://jointtex.com/open" method="post" target="_blank">
<input type="hidden" name="encoded_snip[]" value="...main.tex, encoded with encodeURIComponent...">
<input type="hidden" name="snip_name[]" value="main.tex">
<input type="hidden" name="encoded_snip[]" value="...refs.bib, encoded...">
<input type="hidden" name="snip_name[]" value="refs.bib">
<input type="hidden" name="main_document" value="main.tex">
<input type="hidden" name="engine" value="xelatex">
<button type="submit">Open in JointTex</button>
</form>エンジンを選ぶ
フォームやコードで指定がない限り、JointTex は pdfLaTeX でコンパイルします。
手順
- engine に pdflatex、xelatex、lualatex、latex のいずれかを指定します。Overleaf の latex_dvipdf は latex として扱います。
- engine フィールドがなければ、メインファイルの先頭近くにある % !TEX program = xelatex のような行で決まります。
- どちらもなければ、中国語・日本語・韓国語を含むメインファイルは XeLaTeX で、それ以外は pdfLaTeX でコンパイルします。
- 表だけのように \documentclass のない単一ファイルは、コンパイルできるよう最小限の文書に入れられます。
Typst のコードを送る
同じフォームで Typst の例を Typst プロジェクトとして開けます。Overleaf にはないフィールドで、この部分は JointTex 独自のものです。
手順
- engine を typst にします。名前のないファイルは main.typ、snippet-2.typ… となります。
- engine フィールドがなく .tex ファイルも送られていなければ、.typ で終わるファイルがメインファイルになります。main_document で指定することもできます。
- Typst のコードは別の文書に入れられません。Typst のテキストはそのままコンパイルできます。
<form action="https://jointtex.com/open" method="post" target="_blank">
<textarea name="snip" hidden>
= Hello, JointTex!
Typst sets this paragraph.
</textarea>
<input type="hidden" name="engine" value="typst">
<button type="submit">Open in JointTex</button>
</form>読者に見えるもの
コードがひとりでにプロジェクトになることはありません。読者がまず内容を確認します。
手順
- フォームを送ると、ファイル、メインファイル、エンジン、送信元サイトのアドレスを表示する JointTex のページに移ります。
- サインイン済みの読者はプロジェクト名を付けて「プロジェクトを作成」を選びます。初めての読者はアカウントを作成するかサインインして、同じページに戻ります。
- プロジェクトは読者自身の非公開プロジェクトです。もう一度作成を選んでも、再読み込みや戻る操作をしても、2 つ目のコピーではなく同じプロジェクトが開きます。
- コードは JointTex のサーバーではなく、読者のブラウザーに 7 日間保存されます。読者がプロジェクトを作成するまで、サーバーには何も保存されません。プライベートウィンドウや、サイトのデータを保存しないブラウザーでは、そのタブを開いている間だけ保持されます。
制限
送信は論文全体ではなく、学習用の例を想定しています。
手順
- ファイルは最大 20 個、1 つあたり 256 KB、合計 512 KB まで(UTF-8 で数えます)。
- テキストのみです。添付ファイルや、URL からの取得を求める snip_uri・zip_uri は受け付けません。
- JointTex が開けない内容が送られた場合、読者には理由を説明するページが表示されます。
