AppFlowy-IO / AppFlowy-IO/AppFlowy

[FR] Assembly is missing from the code block dropdown and fails to render syntax highlighting

未关闭
#8,740 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
editor improvements
主要语言
Dart
星标
76.6k
派生
6k
PR 合并指标
30 天内没有已合并 PR

描述

### Bug Description

I noticed a bug where Assembly doesn't show up in the code block language dropdown menu at all, and it completely fails to render syntax highlighting.

Image

### How to Reproduce

1. Open AppFlowy (Web or Desktop).
2. Create a new code block component.
3. Click the language dropdown menu.
4. Search for "Assembly" (it is not in the list).

### Expected Behavior

"Assembly" should be an available option in the language dropdown menu and should correctly apply syntax highlighting to the code block when selected across all platforms.

Image

### Operating System

Cross-platform (Issue spans both Desktop and Web builds)

### AppFlowy Version(s)

Latest Web distribution (tested on May 16, 2026)

### Screenshots

_No response_

### Additional Context

I have tried to fix this. I've checked the [`AppFlowy-Plugins`](https://github.com/AppFlowy-IO/AppFlowy-Plugins) repo to understand the implementation. I found it was a naming issue where the filtering logic drops the language. Since it looked like a literal value change, I submitted a PR directly without setting up a full local test environment.

However, when checking the web distribution, I found that `prism.js` is actively being loaded in the browser sources. This completely complicates the fix. `highlight.dart` requires the token `x86asm` and `prism.js` which doesn't recognize `x86asm` and expects `nasm` instead.

To verify, I tested the `x86asm` value directly in the web client by overriding the `detectedLanguage` variable in the editor file from the source.
* Setting the variable to a standard language like `bash` worked perfectly.
* Setting the variable to `x86asm` failed completely (no syntax highlighting rendered).
* Setting the variable to `nasm` worked because `prism.js` expects `nasm` and not `x86asm`.

**Question:** Since the web client uses 2 libraries for syntax highlighting, does the web build require additional configuration or updates to support Assembly alongside my PR?

Link to the PR I made in [`AppFlowy-Plugins`](https://github.com/AppFlowy-IO/AppFlowy-Plugins) repo: [#34](https://github.com/AppFlowy-IO/AppFlowy-Plugins/pull/34)

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。