# /$$$$$$ /$$
# /$$ / / / $$$
# /$$$$$$$ /$$$$$$$ /$$ $$$$$ /$$$$$$$$$ /$$$$$ /$$$$$$$ /
# /$$_____/ /$$____ $$ | $$$___ $$ |___ $$___/ |___ $$ /$$ $$
# | $$ | $$ | $$ | $$ | $$ | $$ | $$ $$$$$$$
# | $$ | $$ | $$ | $$ | $$ | $$ | $$ $$ /
# $$$$$$$ $$$$$$$ | $$ | $$ /$$$$$$$$$ /$$$$$$$$$ / $$$$$$$$
# _______/ _______/ |__/ |__/ |_________/ |_________/ | $$ $$
# $$$$$$$$
# _______/
您可以在https://github.com/arrowtype/recursive/releases/latest上获取用于桌面,Web和代码的预制递归字体。如果您只是在寻找代码的预制字体,则它们也位于fonts夹中的此存储库中。但是,如果您想自定义自己的代码递归版本,则可以在此存储库中运行脚本!
如果您在此自定义工作流程中发现问题,请在此回购问题中报告它们。
如果您本身会发现字体中的问题,请在递归项目问题中报告它们。
使用此工具的基本方法是:
config.yaml中配置字体选项calt这会实例化定期,斜体,粗体和大胆的斜体样式的自定义字体,然后您可以在首选的编辑器中使用。一个支持斜体的VS代码主题是递归主题。
这是一个逐步的视频教程,如果您不习惯这样的Python项目工作:
您也可以按照以下说明进行操作。我试图使它们变得很细。我的建议是尝试下面的说明,如果您卡住了,请观看视频。如果您真的卡住了,请提出问题)!这可能不是你的错。
在终端中,使用cd进入您想要此项目的文件夹。然后,克隆回购并进入它:
git clone https://github.com/arrowtype/recursive-code-config.git
cd recursive-code-config
然后,设置VENV并安装要求:
python3 -m venv venv # make a virtual environment called "venv"
source venv/bin/activate # activate the virtual environment
pip install -r requirements.txt # install dependencies 在我的测试中,设置VENV和安装要求在Windows中略有不同。在终端中导航到该项目,然后使用以下命令:
py -m venv venv # make a virtual environment called "venv"
venv S cripts a ctivate # activate the virtual environment
pip install -r requirements.txt # install dependencies config.yaml中自定义字体设置该文件使用yaml。希望这是相当自我解释的。如果没有,请提出问题,希望有人会提供帮助!
首先,指定所需的姓氏(例如Rec Mono Custom )。
然后,为常规,斜体,粗体和粗体字体指定所需的轴值。
然后,默认情况下指定是否要在上面进行代码连接。标记为True , False 。
最后,您可以在所需的字体功能选项中复制:
# These options only have an affect at CRSV<=0.5 (Roman/normal styles)
- ss01 # Single-story a
- ss02 # Single-story g
- ss03 # Simplified f
- ss04 # Simplified i ### NOT CURRENTLY WORKING, see issue #4
- ss05 # Simplified l
- ss06 # Simplified r
# These options affect both Roman & Cursive styles
- ss07 # Simplified italic diagonals (kwxyz) ### NOT CURRENTLY WORKING, see issue #4
- ss08 # No-serif L and Z
- ss09 # Simplified 6 and 9
- ss10 # Dotted 0
- ss11 # Simplified 1
- ss12 # Simplified @ 
如果要关闭所有功能,则可以在yaml中指定一个空数组:
Features : [] 通过在项目中运行主要的Python脚本来构建字体:
source venv/bin/activate # activate the virtual environment if you haven’t already
python3 scripts/instantiate-code-fonts.py它将构建并输出字体到像RecMono-Custom这样的文件夹(这受您在config.yaml中给出的自定义名称的影响)。
该项目将“代码连接”保存到字体的calt功能上,该功能是代码编辑器最常使用的功能来控制代码连接。
在许多应用程序中, calt功能默认情况下将打开。在其他情况下,例如VS代码,您将需要具体打开它。
在vs代码中,您可以通过将fontLigatures添加到settings.json中并将其设置为true来打开calt :
"editor.fontLigatures" : true 如果您希望使用预制配置构建字体(或引用这些),则只需将其路径添加为参数(替换下面的premade-configs/duotone.yaml ):
python3 scripts/instantiate-code-fonts.py premade-configs/duotone.yaml如果您想创建多个自定义版本,此参数也可能会有所帮助。要实验,只需使用新文件名复制config.yaml ,更改Family Name选项,然后运行指向该新配置文件的脚本。
愉快的编码!
递归获得定期更新,此存储库也需要获取这些更新。
当前,引入这些更新的过程非常简单:
Recursive_VF_1.0xx.ttf )复制到font-data文件夹中,然后删除旧一个venv并运行scripts/build-all.sh <FONTPATH>以构建字体的更新版本然后,您可以根据上述说明运行构建。