2 个不稳定版本
0.2.0 | 2023年4月17日 |
---|---|
0.1.0 | 2023年4月14日 |
#332 在 多媒体
每月 24 次下载
73KB
1.5K SLoC
FontPM:字体包管理器
FontPM 是一个类似于包管理器的命令行工具,允许您快速安装字体,类似于许多包管理器允许您安装软件包的方式。
注意
FontPM 的功能集相当基础。如果您想看到添加的功能,请在 GitHub 上提交一个问题。
目前,它仅支持从 Google Fonts 下载 非可变字体。如果您发现任何其他来源,您认为 FontPM 应该支持,请在仓库中提交一个问题!
安装
步骤 1:安装 FontPM
Cargo(推荐方式)
通过运行 cargo install fontpm
可以通过 cargo 安装 FontPM。这是推荐的方法。
从源代码构建和安装(稍微复杂一点的方式)
您也可以通过从源代码构建来安装 FontPM。目前没有稳定的分支,所以您需要确定要构建的提交。关于开发分支的稳定性不提供任何保证。
第一步是使用 Git 克隆仓库:git clone https://github.com/tecc/fontpm.git
。完成后,您可以通过运行 cargo install --path <path-to-fontpm>/cli
(其中 <path-to-fontpm>
是 FontPM 被关闭的目录)来安装 FontPM。
构建和从源代码安装的完整脚本看起来像这样
git clone https://github.com/tecc/fontpm.git
cd fontpm
cargo install --path ./cli
步骤 2:刷新字体索引
在使用 FontPM 之前,您需要做的第一件事是刷新本地字体索引。您可以使用以下命令来完成此操作:fontpm refresh
。
用法
刷新本地字体索引
FontPM 会下载每个来源的可用字体索引,但它不会自动为您执行此操作。要刷新
fontpm refresh
安装字体
到您的计算机上
警告
全局安装字体可能不适用于所有平台。它应该适用于任何符合 XDG 基础目录规范的 Linux 系统,但除此之外,尚未经过测试。
要将字体安装到您的计算机上,只需运行以下命令
fontpm install <font-id...>
将以下代码中的 <font-id>
替换为您想要安装的字体。这通常是 kebab-case
格式,因此如果您想安装 Noto Sans,则应编写 noto-sans
。
要安装多个字体,只需以空格分隔字体 ID 列表。
到目录(例如,用于项目)
将字体安装到特定目录的方式与全局安装类似。只需运行以下命令,用您想要使用的字体替换以下代码中的 <font-id>
,以及您想要安装字体的目录替换 <directory>
fontpm install -d <directory> <font-id...>
此外,您可以使用 -f
(或 --format
)标志指定您想要 FontPM 如何组织文件。目前它只支持两种模式 - flat
和 flat-directory
。
fontpm install -d <directory> -f <format> <font-id...>
如果您使用 flat
,文件将看起来像这样
<directory>
|_ font1-italic.ttf
|_ font1-regular.ttf
|_ font2-italic.ttf
|_ font2-regular.ttf
flat-directory
根据字体 ID 将它们分开到目录中,这意味着它看起来像这样
<directory>
|_ font1
| |_ italic.ttf
| |_ regular.ttf
|_ font2
| |_ italic.ttf
| |_ regular.ttf
清除 FontPM 数据
警告
此命令具有删除 所有 FontPM 文件的不可逆能力。请确保您知道自己在做什么。
在某些情况下,您可能决定要删除 FontPM 创建的文件(可能是为了在您的设备上节省存储空间)。可以使用 purge
命令来完成此操作
fontpm purge <target>
参数 target
指定您要删除的内容。目前它允许三个值:cache
(针对 FontPM 使用的缓存文件),fonts
(或 installed-fonts
,针对所有已安装的字体),以及 all
(针对前两个目标)。
配置
位置
FontPM 的配置(config.toml
)位于特定平台的目录中
- 在 Linux 上,它将在
$XDG_CONFIG_HOME/fontpm
中,通常(如果未设置$XDG_CONFIG_HOME
,则为默认值)是$HOME/.config/fontpm
(例如:/home/alice/.config/fontpm
)。 - 在 Windows 上,它将在漫游 AppData 目录中(例如:
C:\Users\Alice\AppData\Roaming
)。 - 在Mac上,它将是
$HOME/Library/Application Support
(示例:/Users/Alice/Library/Application Support
)。
说明
[fontpm] # The main section of the configuration
# enabled_sources: array<string>
# A list of source IDs.
# All the sources included in this array, FontPM will use at runtime.
enabled_sources = ["google-fonts"]
# cache_dir: path
# Path to the directory where FontPM should cache files.
# This directory will contain the local index files and all downloaded font files.
# If this is not provided, it will create a default at runtime.
cache_dir = "~/.cache/fontpm"
# font_install_dir: path
# Path to the directory where installed fonts should reside.
# If this is not provided, it will create a default at runtime.
font_install_dir = "~/.local/share/fonts/fontpm"
许可证
FontPM遵循Apache 2.0许可证。您可以在这里找到文本。
Copyright (c) 2023 tecc
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://apache.ac.cn/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
依赖关系
~8–23MB
~353K SLoC