feat: full Nerd Font glyph coverage and custom font-family option for the web terminal
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 52/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- css, typescript
调研方向
Start with site/src/theme/fonts/coder-terminal-symbols.css and site/src/theme/constants.ts, then read the per-user terminal font picker from #17257. Determine whether the change will extend the bundled symbol fallback, add a custom font-family setting, or both. Done means the embedded terminal renders the requested Nerd Font glyphs and supports the selected custom family when implemented.
由索引模型根据 Issue 内容生成。
描述
Summary
A customer's developers want to use JetBrains Mono Nerd Font in the embedded web terminal, primarily for Neovim/LazyVim and other icon-heavy TUI tools (eza, lazygit, etc.). This is not achievable through Coder configuration today.
Current state
#15024 was closed by #17257, which added a per-user terminal font picker (Geist Mono, Fira Code, JetBrains Mono, Source Code Pro, IBM Plex Mono). Separately, site/src/theme/fonts/coder-terminal-symbols.css bundles "Coder Terminal Symbols", a subset of Symbols Nerd Font Mono v3.4.0 that is appended to every terminal font stack in site/src/theme/constants.ts.
However, that fallback only covers the Powerline range (U+E0A0, U+E0B0-E0BF). Powerline prompts render correctly, but the rest of the Nerd Font private-use ranges (devicons, Font Awesome, Material, Codicons, Octicons, etc.) do not, so Neovim/LazyVim, eza, lazygit and similar tools show missing glyphs. Recent comments on #15024 (April/June 2026) report the same problem.
There is also no way to specify a custom or locally installed font family; the setting is a closed enum (codersdk.TerminalFontName).
Requests
Either or both of the following would resolve the customer's use case:
-
Extend the bundled symbol fallback to the full Nerd Font glyph set (or at minimum the commonly used ranges:
U+E000-F8FF,U+F0000-FFFFF). SinceCoder Terminal Symbolsis already in every font stack, this fixes icon rendering for all five listed fonts with no user configuration. Tradeoff: the full Symbols Nerd Font Mono woff2 is a few MB;font-display: swapand lazy loading only on terminal pages should mitigate this. -
Add a custom font-family option in Appearance settings (and/or a deployment-level setting), so users or admins can name a locally installed font such as
JetBrainsMono Nerd Font Mono. This would let users opt into a fully patched font without Coder bundling it.
Option 1 is preferred as it benefits all users out of the box.
Workaround today
Overriding the terminal font via browser font settings or a user stylesheet targeting .xterm. Per-user, fragile, and not something we can recommend as supported.
Filed by @ericpaulsen on behalf of a customer. This issue was drafted with Coder Agents.
- 主要语言
- Go
- 星标
- 16.6k
- 派生
- 1.6k
- 平均合并
- 1 天 23 小时
- 30 天内合并 PR
- 543
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
coder/coder 的其他 Issue
-
bug: AI Gateway client filter lists "Unknown" twice when NULL and literal Unknown clients coexist 未关闭bug
难度 2/5 1-3 小时 新手友好度 90/100
-
feat(site): suppress the web terminal context menu when the application has enabled mouse tracking 未关闭
难度 2/5 1-3 小时 新手友好度 78/100
-
bug frontend
难度 2/5 1-3 小时 新手友好度 84/100
-
bug site
难度 2/5 1-3 小时 新手友好度 84/100
-
难度 2/5 1-3 小时 新手友好度 85/100
相似的 Issue
-
agentic-workflows
难度 2/5 1-3 小时 新手友好度 76/100
-
agentic-workflows
难度 2/5 1-3 小时 新手友好度 70/100
microsoft/agent-framework-go#1179 ·
-
bug
难度 2/5 1-3 小时 新手友好度 76/100
-
[Bug]: OLLAMA_KEEP_ALIVE="5m" / "24h" crashes Ollama embedding and vision models with ValueError 未关闭
难度 2/5 1-3 小时 新手友好度 75/100
infiniflow/ragflow#20223 · 1 个 reaction ·
-
bug needs triage pkg/translator/faro
难度 2/5 1-3 小时 新手友好度 88/100
open-telemetry/opentelemetry-collector-contrib#51484 · 1 条评论 ·