# /$$$$$$ /$$
# /$$ / / / $$$
# /$$$$$$$ /$$$$$$$ /$$ $$$$$ /$$$$$$$$$ /$$$$$ /$$$$$$$ /
# /$$_____/ /$$____ $$ | $$$___ $$ |___ $$___/ |___ $$ /$$ $$
# | $$ | $$ | $$ | $$ | $$ | $$ | $$ $$$$$$$
# | $$ | $$ | $$ | $$ | $$ | $$ | $$ $$ /
# $$$$$$$ $$$$$$$ | $$ | $$ /$$$$$$$$$ /$$$$$$$$$ / $$$$$$$$
# _______/ _______/ |__/ |__/ |_________/ |_________/ | $$ $$
# $$$$$$$$
# _______/
您可以在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>以構建字體的更新版本然後,您可以根據上述說明運行構建。