モナスペース型システムは、いくつかの現代的なトリックを備えた等幅型スーパーファミリーです。 5 つの可変軸書体で構成されます。それぞれに異なる声がありますが、それらはすべて相互にメトリクス互換性があるため、より表現力豊かなタイポグラフィー パレットを組み合わせることができます。
グリッド上の文字は、コードの見方です。それらの文字をもっと良くしてみませんか?
GitHub Next からの探索。 Monaspace の全文については、monaspace.githubnext.com をご覧ください。
?最新リリースをダウンロードしますか?
Monaspace は、可変軸フォントおよび静的ビルドとして利用できます。両方を並べてインストールできます。彼らの姓は異なります。例えば:
Monaspace _____
: 静的ファミリーMonaspace _____ Var
またはVF
: 変数ファミリーバリアブル フォントには、ファミリー (Neon、Argon など) ごとに 1 つのファイルがあります。モダンで便利!
静的フォントには、カットごと、ファミリーごとに 1 つのファイルがあります。可変軸には、重さの場合はlight
またはbold
、イタリックの場合はitalic
、幅の場合はsemiwide
またはwide
、軸ごとにストップの名前が付いています。これらすべてのプロパティの組み合わせが爆発的に増加するため、静的フォントを完全にインストールするには数百のフォント ファイルが必要になります。ただし、可変フォントがまだサポートされていない状況では、静的ビルドにより各軸の範囲全体にわたってさまざまな停止が提供されます。
Monaspace は、等幅フォントの「テクスチャ ヒーリング」技術を先駆けて開発しました。
テクスチャ修復は、エディタでcalt
フォント機能の設定がオンになっている場合に有効になります。この設定の場所はアプリケーションによって異なり、すべてのアプリケーションがこの設定をサポートしているわけではありません。具体的なガイダンスについては、以下の「編集者」セクションを参照してください。
Monaspace の Web サイトでその仕組みの詳細を読み、ドキュメントでどのように実装されているかを学ぶことができます。
警告
Monaspace v1.1 および v1.101 では、合字の処理が大幅に変更されました。アップグレードする場合は、エディタの設定を変更する方法についてリリース ノートを参照してください。
liga
フォント機能を使用すると、 ///
や||
などの繰り返し文字の間隔をカスタマイズできます。 。 ////
のような長いシーケンス内でのアクティブ化を避けるように設計されています。
コード化合字には 8 つのグループがあり、文体のセットに分かれています。個々のセットを選択的に有効または無効にできる場合があります。
ss01
: !=
や===
などの等号グリフに関連する合字。ss02
: 大/小または等しい合字 ( <=
、 >=
)。ss03
: ->
や~>
などの矢印に関連する合字。ss04
:
や/>
などのマークアップに関連する合字。ss05
: F# プログラミング言語に関連する合字 ( |>
など)。ss06
: #
、 +
、および&
の繰り返し使用に関連する合字。ss07
: ::
や=:=
などのコロンに関連する合字。ss08
: ..=
や.-
などの他のグリフとピリオドの組み合わせに関連する合字。ss09
: <=>
、 >>
、 =<<
など、大/小および等号の組み合わせに関連する合字。Monaspace Web サイトでは、すべての合字のインタラクティブな表示を見ることができます。
特定の文字には、オプションで有効にできるバリアントがあります。
cv30
: Monaspace 1.0 に同梱されている古いアスタリスクを有効にします。これは、スペースの上部近くに垂直に配置されていました。cv60
: ≤
を交換するのではなく、 =>
と一致する方法で<=
ペアを強制的にレンダリングします。cv61
: []
のオプションの閉じた四角合字を有効にします。これは、多くのエディタで配列を作成するときに気が散る可能性があります。これは、閉じ括弧が自動的に挿入され、開き括弧を入力するとすぐに閉じ四角合字が生成されるためです。 オペレーティング システムのフォント キャッシュは 30 年前に遡る不可解な混乱であり、Monaspace で修正できるものではありません。一般的に言えば、次のことを行う必要があります。
通常、オペレーティング システムの基盤となる機構が新しいフォントを確実に認識できるようにするには、再起動が唯一の方法です。
フォントをfonts/otf
またはfonts/variable
ディレクトリから Font Book に手動でドラッグできます。
~/Library/Fonts
からすべての Monaspace フォントを自動削除し、最新バージョンをコピーするスクリプトもあります。次のようにリポジトリのルートから呼び出します。
$ bash util/install_macos.sh
代わりに homebrew を使用することもできます。
brew tap homebrew/cask-fonts
brew install font-monaspace
フォントをfonts/otf
またはfonts/variable
ディレクトリからC:WindowsFonts
に手動でドラッグできます。または、必要なフォントを右クリックし、「インストール」をクリックします。
フォントをfonts/otf
およびfonts/variable
ディレクトリから~/.local/share/fonts
に手動でドラッグできます。
~/.local/share/fonts
からすべての Monaspace フォントを自動削除し、最新バージョンをコピーするスクリプトもあります。次のようにリポジトリのルートから呼び出します。
$ bash util/install_linux.sh
.woff
または.woff2
接尾辞が付いたすべてのファイルは、Web での使用を目的としています。これらはオペレーティング システムと一緒にインストールするのではなく、Web 開発プロジェクトに追加します。
デスクトップ フォントと同様に、可変バージョンと静的バージョンが利用可能です。
警告
Monaspace v1.1 では合字の処理が大幅に変更されました。 Monaspace v1.0 からアップグレードする場合、エディターの設定を変更する方法については、リリース ノート (v1.100、v1.101) を参照してください。
フォント ファミリーを設定します。
"editor.fontFamily" : " 'Monaspace Neon', monospace " ,
注記
可変フォントは VS Code ではまだ十分にサポートされておらず、複数のフォントを混合することはまだ可能ではありません。それについては VS Code チームと話し合っているところですので、楽しみにしていてください。
さまざまな機能 (テクスチャ修復、合字、文字バリアント) を有効にするには、 editor.fontLigatures
設定を使用する必要があります。設定は、有効にするフォント機能のカンマ区切りのリストです。
注記
この設定は、グラフィカル設定エディターからは利用できません。手動で作成する必要があります。
calt
: テクスチャ修復を有効にしますliga
: ///
のような特定の繰り返し文字パターンの動的スペースを有効にします。ss01
、 ss02
など: 特定のスタイル セットを有効にしますcv30
、 cv60
など: 特定の文字バリアントを有効にしますこれらをすべてまとめると、文字バリアント以外のすべてを有効にする設定文字列は次のようになります。
"editor.fontLigatures" : " 'calt', 'liga', 'ss01', 'ss02', 'ss03', 'ss04', 'ss05', 'ss06', 'ss07', 'ss08', 'ss09' " ,
正式な貢献ガイドはまだありません。書体に貢献することに興味がある場合は、必要な代替グリフを生成する方法が説明されているテクスチャ ヒーリング ガイドを読む必要があります。
この便利なユーティリティは、ビルドされたフォントの名前を変更し、それぞれのディレクトリに移動します。 Deno をインストールする必要があり、次のように起動します。
$ ./util/renamer.ts --src= " ~/path/to/the/built/fonts "
シル・オフル。 「ライセンス」を参照してください。
このリポジトリに問題を登録してください。 Monaspace はサポートされている製品ではありません。 GitHub サポートは GitHub Next の探索をサポートしていないため、GitHub サポートに質問しないでください。
Monaspace は、すべての開発者向けにすべてのコードを改善するために作成されました。 GitHub Next は 2022 年にこの取り組みを開始しましたが、幸運なことに、Lettermatic のソフトウェアを改善するという情熱を共有する活字ファウンドリを見つけることができました。その結果、新しい開発者エクスペリエンスへの扉を開く形式と機能の融合が実現しました。これは、Lettermatic チームの専門知識とスキル、そしてタイポグラフィの方法を理解するために GitHub Next と協力して取り組んだ時間なしには不可能でした。コードでは機能するはずです。