トップ画像
Typstを始めよう、いますぐに【Typstシリーズ その1】

執筆者: ごま

最終更新: 2024/11/17

はじめに

おひさしぶりです、ごまです。この記事では近年注目を集めている「Typst」という組版システムについて説明し、あわよくば画面の前のあなたにも導入していただきます。というか導入もコンパイルも爆速なので導入して下さい

Typstって?

Typstは2023年に発表された、新しい組版システムです。組版システムというのはレポートや論文を書くときなどに使う、文字や図などをキレイに配置するためのツールです。理系大学生、特に情報工学系の皆さんにとってはLaTeXなどが有名かと思いますが、TypstはLaTeXなどの組版システムに馴染み深く、なおかつ不満を持っているユーザーにおすすめです。

Typstはマークアップ言語であり、.typという拡張子のファイルに文字や数式、コードなどを記述し、コンパイルすることでPDFファイルを生成します。後述しますが、このコンパイルが本当に速いため全くストレスを感じません。いやマジで。(ちなみにコンパイルが速い要因として、TypstがRustで書かれていることが挙げられますが、なぜRustで書かれていると速いのかは不勉強なのでわかりません。Rustはまた勉強するので許して下さい。)

実際に触れてみよう

Typstを使用してなにか文書を作成したいと思ったら、いまのところ2つの方法があります。 一つは公式サイト上のエディタ(Typst app)を用いて文書を作成する方法です。このエディタには

  • リアルタイムプレビュー
  • シンタックスハイライト
  • オートコンプリート

等の機能が用意されており、初めてTypstを触る人にも使いやすいと思います。 このエディタを利用するには、無料の会員登録を行う必要があります。

もう一つは、Typstをローカル環境にインストールし、自分のPC上でTypstを使う方法です。これによって、VSCodeなどの普段慣れ親しんだエディタを使ってTypstを使うことができます。また、VSCode用に拡張機能が提供されているため、快適にTypstを使うことができます。私の個人的なおすすめはこっちです。

Typst appを使ってみる

それでは本格的にTypstを使ってみましょう。まずは公式サイトのエディタを利用する方法です。

公式サイトにアクセスすると、以下のような画面が表示されると思います。

画面中央のSign up for free and try it nowあるいは右上のSign inボタンをクリックしてください。すると次のような画面が表示されるはずです。

英語ですが、特に説明は不要だと思います。 Nameに名前(おそらくハンドルネームでよい)、Emailにメールアドレス、Passwordにパスワードを入力してください。 Select where you heard about Typstでは、Typstをどこで知ったかを選択してください。この記事を読んで初めて知ったという方はFellow studentとかを適当に選べばよいと思います。 TelemetryはTypstの利用状況を匿名で収集するかどうかを選択する項目です。Disabled(無効)で全く問題ないと思います。

あとはチェックボックスにチェックを入れて、Sign upボタンをクリックしてください。

さて、ここからはTypst app上で本格的に作業を行っていくことになります。無事ログインができたら次のような画面(ダッシュボード)が表示されるはずです。

文書作成の方法はいくつかあるようですが、ひとまずEmpty documentをクリックして新しい文書を作成してみましょう。

適当に名前を入力して進むと、次のようなエディター画面とプレビュー画面が表示されました。

それでは、適当になにか書いてみましょう。例えば以下のような内容を書いてみます。

あのイーハトーヴォのすきとおった風、夏でも底に冷たさをもつ青いそら、うつくしい森で飾られたモリーオ市、郊外のぎらぎらひかる草の波。

するとプレビュー画面がリアルタイムに更新され、以下のような表示になるはずです。

どうも表示がおかしいですね。これはTypstの言語設定が行われていないこと、日本語フォントが設定されていないことが原因です。これらの設定を行うことで、日本語の表示が正しく行われるようになります。そのためには、冒頭に次のような設定を追加してください。

#set text(lang: "ja",font: "Harano Aji Mincho")

これで文章全体の言語とフォントの設定を行えます。フォントは日本語フォントなら何でも良いですが、ここではHarano Aji Minchoを指定しています。雰囲気が出るので私のおすすめもこれです。適切な設定を行った後のプレビュー画面は以下のようになります。

適切な設定を行ったことにより、日本語の表示が正しく行われるようになりました。次はローカル環境にTypstをインストールし、自分のPC上でTypstを使う方法について説明します。

Typstをローカル環境にインストールする

それではTypstをローカル環境にインストールし、自分のPC上でTypstを使う方法について説明します。とはいっても、Typstのインストールは非常に簡単です。以下のコマンドを実行すると、数分もかからないうちにインストールが完了します。(私はWindowsユーザーなので、これ以降はWindowsを前提として説明します。MacやLinuxの場合は適宜読み替えてください。)

Mac OS:

brew install typst

Windows:

winget install --id Typst.Typst

これでTypstがインストールされました。インストールされているかを確認するためには、コマンドプロンプトやPowerShellを開いて以下のコマンドを実行してください。

typst -V

もしインストールされていれば、Typstのバージョンが表示されるはずです。

それでは、Typstを使ってみましょう。まずは適当なディレクトリで拡張子が.typのファイルを作成してください。今回は、sample.typというファイルを作成し、以下の内容を記述してください。

#set text(lang: "ja",font: "Harano Aji Mincho")

あのイーハトーヴォのすきとおった風、夏でも底に冷たさをもつ青いそら、うつくしい森で飾られたモリーオ市、郊外のぎらぎらひかる草の波。

これでコンパイル前のファイルを用意できました。次に、コマンドプロンプトやPowerShellを開いて、以下のコマンドを実行してください。

typst compile sample.typ

すると、コンパイルが行われ、sample.pdfというファイルが生成されるはずです。実際にやってみるとわかりますが、コンパイルがとても高速です。これは、TypstをLaTeXと比較した際に特に優れている点の一つです。

VSCodeのTypst向け拡張機能を使ってみる

追記(2024/11/17)

ここで紹介した拡張機能であるTypst LSPはDeprecatedとなりました。代わりに「tinymist」を使用することが推奨されています。

先程はコンパイルをコマンドラインから行いましたが、VSCodeのTypst向け拡張機能を導入することで、もっと快適にTypstを使うことができます。

まずはVSCodeを開いて、左側の拡張機能メニューを開き、検索バーにTypstと入力すると、Typst LSPという拡張機能が表示されるはずです。これをインストールしてください。

この拡張機能は、VSCodeでTypstファイルを編集する際にシンタックスハイライトやコード補完を行ってくれるだけではなく、自動コンパイルもやってくれます。コンパイルのタイミングは設定で変更できますが、デフォルトではファイルを保存した際にコンパイルが行われます。

先程のTypst LSPを導入するだけでもかなり快適になりますが、次に作業中のプレビューを行ってくれる拡張機能を導入しましょう。先ほどと同様に、拡張機能メニューからTypstと検索し、Typst Previewという拡張機能をインストールしてください。

インストールできたら、先程作成したsample.typを開いて、Ctrl+K を入力した後にVを入力すると、プレビュー画面が表示されるはずです。

他にも、Typst向けの拡張機能はいくつか提供されています。必要に応じてインストールしてみてください。

まとめ

今回はTypstの魅力と使い方について軽くお伝えしました。もし機会があれば、本格的に文章を書くときに知っておきたいことや数式の書き方などについてもお伝えしたいと思っております。

そんなの待ちきれないぜという方はぜひ公式ドキュメント(英語)にアクセスし、チュートリアルを進めてみたり、リファレンスを読んでみたりして、Typstの構文や機能について学んでみてください。それから、現在進行系で翻訳作業中ですが、有志のコミュニティによる非公式日本語ドキュメントも参考にしてみてください。

また、QiitaやZennなどでTypstに関する記事を書いている方もいらっしゃるので、そちらも参考にすると良いと思います。僕もちょっと書いてみたことがあるので、もしよろしければTypstでコードを埋め込むには【codelstパッケージ】をご覧ください。

それでは、Typstライフを楽しんでください!

参考文献

取得に失敗しました

2022年度 入部

GitHub