如何在Linux子系统中设置字体?

如何在Linux子系统中设置字体?

我正在尝试使用适用于 Windows 的 Linux 子系统(对于不懂 Linux 的我来说,这有点冒险)。我已经安装了starship.rs并注意到我有许多渲染效果很差的符号。我读到我需要一个 powerline 字体,所以我尝试安装它们和 firacode(我的首选)。

然而我发现即使这样做了,渲染字符时仍然会遇到错误。

在此处输入图片描述

有人知道我可能遗漏了什么吗?最终,如果相关的话,我希望能够在 ConEmu 中将我的 git-bash 换成 bash(在 Linux 中)。

答案1

TLDR;您需要安装 Windows 主机并配置 Powerline 字体 bash gui 属性。

找到信息这里

您实际上需要在 Windows 中安装这些字体,并将控制台主机字体设置为其中之一。

接下来打开 bash,单击左上角的图标并选择“属性”。切换到“字体”选项卡,选择您刚刚安装的修补字体之一。它们都会显示“用于 Powerline”,因此只需选择其中一种即可。

答案2

我如何解决这个问题:

  1. 安装“Sauce Code Pro Nerd 字体”https://www.nerdfonts.com/font-downloads 解压 -> 打开“你喜欢的任何字体”.ttf 并安装。在目录“C:\Windows\Fonts”中检查已安装的字体。

2.1) 打开“Powershell”、“Ubuntu”(或其他 WSL 发行版),然后右键单击 -> 属性 -> 字体 -> 将字体更改为“Sauce Code Pro Nerd Font”。

2.2) 如果您使用 Windows 终端。打开它 -> “Ctrl+,” -> 找到属性“profiles{...} -> defaults{...} -> 向“defaults”添加属性“fontFace”:“SauceCodePro Nerd Font”以将字体应用于所有配置文件或从“列表”中选择一个配置文件并键入相同的内容以仅适用于给定的配置文件(例如,Powershell 的“Cascadia Code PL”,Ubuntu 的“SauseCode Pro Nerd Font”)。

  1. 选修的. 打开 VSCode -> Ctrl+, -> fontFamily: 输入“SauseCodePro Nerd Font”其他字体。

  2. 您可以使用其他字体来执行此操作,但它们需要支持电力线字形,例如“Mononoki”字体。

答案3

如果您想在 WSL 中设置字体,则需要在主机系统(即 Windows)中设置字体。

关键点是在主机系统中设置所有电力线字体;我注意到有些人试图安装.\install.ps1(PowerShell)这个脚本电力线仓库在 WSL 中,但其脚本必须在 Windows PowerShell 中运行。

您必须在 Windows 10 上更改执行策略。我尝试在此基础上进行设置文章,并且有效。

因此,您可以手动安装字体,而不会遇到所有问题。

别忘了在 settings.json 中为 WSL 应用字体

我还注意到,一些连字符效果很差,或者根本无法呈现。

更新信息: https://docs.microsoft.com/en-us/windows/terminal/tutorials/powerline-setup

相关内容