[语法高亮插件][Sublime Text][VSCode] BBCode (NGA) [v1.1][25-05-27更新] · NGA Web[语法高亮插件][Sublime Text][VSCode] BBCode (NGA) [v1.1][25-05-27更新]
[语法高亮插件][Sublime Text][VSCode] BBCode (NGA) [v1.1][25-05-27更新]
前 言
之前有想过配置一下NGA代码的语法高亮显示,但一直懒得折腾,都是用与Markdown部分重合的语法凑合着;最近整理排版技巧的时候又想起这件事,想着NGA都这么多年了应该有人做过,一查确实有:
不过我个人还是习惯使用本地的文本编辑器,因此花了点时间捣鼓了下手头用的Sublime Text,希望能对存在相同需求的人有所帮助。
后续功能更新以Sublime Text为基准,VSCode仅作移植
颜色主题仅在 (Sublime Text) Mariana 和 (VSCode) Atom One Dark Theme 上测试过
|
- 安装步骤——1楼
- 功能文档——2楼
- 支持的语法高亮
- 支持的代码片段
- 专楼模板
- 右键菜单
- 快捷键
- 版本日志——3楼
- v0.1
—— 2025/03/20
- v0.2
—— 2025/03/23
- v0.3
—— 2025/03/25
- v1.0
—— 2025/03/30
|
更 新 记 录
- [2025-05-27] 发布v1.1版本,新增img转占位符和table转Markdown格式功能,url精简新增对B站视频/专栏链接的支持;装修1楼、2楼
- [2025-03-30] 发布v1.0正式版,新增VSCode支持;重新装修主楼、1楼、2楼
- [2025-03-25] 发布v0.3版本,新增3个常用代码快捷键、BBS代码转换为纯文本、快捷创建表格功能;修正部分语法高亮
- [2025-03-23] 发布v0.2版本,新增代码作用域高亮和未闭合代码块提示功能;修改安装步骤
- [2025-03-20] 发布v0.1版本
已编辑
安装步骤前言: 对于没有编程需求的普通用户,推荐使用更加轻便(大小仅53MB)的Sublime Text,虽然是无中文的收费软件,但前者有对应的汉化插件(使用 Package Control 搜索 ChineseLocalization 即可安装)可解决,后者则完全不影响正常使用(免费试用没有期限),在我这边是作为记事本的完全上位替代。
Sublime Text插件
- [推荐] 使用Package Control (会自动更新)
(若已安装Package Control则从第2步开始)
1. Sublime Text菜单 Tools->Install Package Control…,会弹出命令面板
2. 选择 Package Control: Install Package
3. 搜索 BBCode (NGA),回车进行安装
- 手动安装 (每次版本更新都需要操作一次)
1. 点击Github-releases页面中最新版本的,会下载一个的压缩包2. 解压压缩包,将解压出来的的文件夹重命名为3. Sublime Text菜单 ->,会打开一个文件夹4. 将移动到该文件夹目录下5. 重启Sublime Text
功能文档
支持的语法高亮
支持的代码片段
注:输入部分“触发字符串(trigger)”以后,会有候选栏以供选择,选择完以后点击“Tab”或者“Enter”进行补全
(大部分触发字符串都是“对应 tag 并双写其首字母”)
版本日志
v1.1 2025-05-27
- 新增: 右键菜单中的"table转Markdown格式"功能
将选中区域中的table代码块转换为Markdown格式, 仅支持基础表格 (加粗/斜体/删除线/代码/url/补全NGA图床图片的完整URL)
- 新增: 右键菜单中的"img转占位符"功能
将选中区域中的img代码块替换为"__图__"
- 修改: 右键菜单中的"url精简"功能
新增对B站URL的精简, 去除视频/专栏链接后面的非必要传参
- 修改: 微调template_video
将第三个td从td34修改为td33, 与前两个td保持一致
- 修改: 微调template_overall
将部分繁体修正为简体
- 修改: 微调template_episode_preview
在第一个collapse块前面增加一行空行, 保证段落和两个collapse块之间的统一
v1.0 2025-03-30
若使用过程中遇到BUG,或有希望添加的功能,欢迎留言反馈
更新v0.2版本
- 重构代码架构
- 新增代码作用域高亮功能
- 新增未闭合代码块提示功能
- 语法高亮:
- 代码补全:
已编辑
更新v0.3版本
- 快捷键新增
- ctrl+b: 将所选内容最外层添加/去除[b][/b]
- ctrl+u: 将所选内容最外层添加/去除[u][/u]
- ctrl+i: 将所选内容最外层添加/去除[i][/i]
- 右键菜单新增
- BBS代码转换为纯文本: 将所选内容中所有生效的BBS代码,显示为纯文本
VSCode插件我研究研究,最好也给提点功能需求和使用反馈,我目前待实现的点子只剩下“格式化list和table排版”;不过最近比较忙,下次更新可能得等一段时间了
发布v1.0正式版 (新增VSCode支持)
(Sublime Text)
- 重要: 插件由"SublimeBBS_NGA"重命名为"SublimeBBCodeNGA", 并重组插件架构, 请删除旧版本插件
- 修复: "包裹代码块高亮提示"在代码块多层重复嵌套时, 相同tag的代码块只高亮提示最内层
- 新增: "包裹代码块高亮提示"支持多行光标
- 新增: "包裹代码块高亮提示"支持高亮list中的[*]
- 新增: sup语法ssup代码补全高亮 & (sub由于效果不明显, 不推荐使用, 因此不添加语法高亮提示)
- 新增: 快捷键"ctrl+q": 在选中区域两侧添加/去除[quote][/quote]
- 新增: 右键菜单中的"精简URL"功能: 将选中区域中的url代码块中的NGA域名精简掉, 比如将"[url=https://bbs.nga.cn/read.php?tid=43592483]"精简成"[url=/read.php?tid=43592483]"
- 删除: 右键菜单中的"快捷创建表格"功能 (不推荐手动创建表格)
- 修改: 图片占位符(iimg)的效果由"[quote][align=center]__图__[/align][/quote]"改为"[quote]__图__[/quote]"
![[ac:哭笑]](https://img4.nga.cn/ngabbs/post/smile/ac15.png)
你坛的表格有没有可能转换成markdown之类的格式啊?
回复 SkywalkerJi2025-03-30 14:52 做了一版这个功能,目前仅支持基础表格 (加粗/斜体/删除线/代码/url),NGA图床的图片转换时会补全URL,如果能满足你的需求的话,那就不改动下个版本更新的时候直接放进去
更新v1.1版本
- 新增: 右键菜单中的"table转Markdown格式"功能
将选中区域中的table代码块转换为Markdown格式, 仅支持基础表格 (加粗/斜体/删除线/代码/url/补全NGA图床图片的完整URL)
- 新增: 右键菜单中的"img转占位符"功能
将选中区域中的img代码块替换为"__图__"
- 修改: 右键菜单中的"url精简"功能
新增对B站URL的精简, 去除视频/专栏链接后面的非必要传参
- 修改: 微调template_video
将第三个td从td34修改为td33, 与前两个td保持一致
- 修改: 微调template_overall
将部分繁体修正为简体
- 修改: 微调template_episode_preview
在第一个collapse块前面增加一行空行, 保证段落和两个collapse块之间的统一
登录后可以回复
Source code.zip
Sublime-BBCode-NGA-x.x.zip
Sublime-BBCode-NGA-x.x
BBCode (NGA)
Preferences
Browse Packages
BBCode (NGA)
VSCode插件
- VSCode扩展市场 搜索 BBCode (NGA)
| ll | [l]__内容__[/l] | rr | [r]__内容__[/r] |
| ssup | [sup]__内容__[/sup] | ddel | [del]__文本__[/del] |
| rrandomblock | [randomblock] __内容__ [/randomblock] | qquote | [quote]__内容__[/quote] |
| ccode | [ccode]__内容__[/ccode] | ccollapse | [collapse=__提要__]__内容__[/collapse] |
| aalign | [align=center]__内容__[/align] | uurl | [url=__url__]__描述__[/url] |
| ttable | [table] [tr][td]__内容__[/td][/tr] [/table] | llist | [list] __内容__ [/list] |
| ttr | [tr][/tr] | vv | [align=right].[/align] |
| ttd | [td][/td] | zz | [size=0%]卝[/size] |
| silver | [color=silver]__文本__[/color] | ssilver | [color=silver][b]__文本__[/b][/color] |
| red | [color=red]__文本__[/color] | rred | [color=red][b]__文本__[/b][/color] |
| green | [color=green]__文本__[/color] | ggreen | [color=green][b]__文本__[/b][/color] |
| blue | [color=blue]__文本__[/color] | bblue | [color=blue][b]__文本__[/b][/color] |
| large | [size=150%]__文本__[/size] | small | [size=60%]__文本__[/size] |
| tiny | [size=1%]__文本__[/size] | iimg | [quote]__图__[/quote] |
| collapse_img | [collapse]__图__ [/collapse] | collapse_img2 | [collapse=描述]__图__ [/collapse] |
专楼模板
注:具体排版可见专楼排版技巧:个人经验分享,以及我最新搭建的专楼
|
| template_character | 角色模块 | template_video | 视频模块 |
| template_episode_preview | 先行情报模块 | template_overall | 主楼整体 |
快捷键
- ctrl+b: 在选中区域两侧 添加/去除 [b][/b]
- ctrl+i: 在选中区域两侧 添加/去除 [i][/i]
- ctrl+u: 在选中区域两侧 添加/去除 [u][/u]
- ctrl+q: 在选中区域两侧 添加/去除 [quote][/quote]
右键菜单
- BBCode转纯文本: 使选中区域内 BBCode 失去效果, 显示为纯文本
示例
- url精简: 精简选中区域中的url代码块中的NGA域名和B站链接
示例-NGA域名
示例-B站链接
- img转占位符: 将选中区域中的img代码块替换为"__图__"
示例
- table转Markdown格式: 将选中区域中的table代码块转换为Markdown格式, 仅支持基础表格 (加粗/斜体/删除线/代码/url/补全NGA图床图片的完整URL)
示例
- 重要: 插件由"SublimeBBS_NGA"重命名为"SublimeBBCodeNGA", 并重组插件架构, 请删除旧版本插件
- 修复: "包裹代码块高亮提示"在代码块多层重复嵌套时, 相同tag的代码块只高亮提示最内层
- 新增: "包裹代码块高亮提示"支持多行光标
- 新增: "包裹代码块高亮提示"支持高亮list中的[*]
- 新增: sup语法ssup代码补全高亮 & (sub由于效果不明显, 不推荐使用, 因此不添加语法高亮提示)
- 新增: 快捷键"ctrl+q": 在选中区域两侧添加/去除[quote][/quote]
- 新增: 右键菜单中的"精简URL"功能: 将选中区域中的url代码块中的NGA域名精简掉, 比如将"[url=https://bbs.nga.cn/read.php?tid=43592483]"精简成"[url=/read.php?tid=43592483]"
- 删除: 右键菜单中的"快捷创建表格"功能 (不推荐手动创建表格)
- 修改: 图片占位符(iimg)的效果由"[quote][align=center]__图__[/align][/quote]"改为"[quote]__图__[/quote]"
- 添加: [size=0%][/size]新增特殊样式, 区别于其他代码块
- 修改: 右键菜单中的"BBCode转纯文本"功能: 将生成的"[size=100%][/size]"修改为"[size=0%][/size]"
- 修改: 分隔符([size=1%]卝[/size])触发由"split"改为"zz", 并且将生成的"[size=1%]卝[/size]"修改为"[size=0%]卝[/size]"
(VSCode)
- 同步 Sublime Text 插件 SublimeBBCodeNGA v1.0版本
v0.3 2025-03-25
- 快捷键新增
- ctrl+b: 将所选内容最外层添加/去除[b][/b]
- ctrl+u: 将所选内容最外层添加/去除[u][/u]
- ctrl+i: 将所选内容最外层添加/去除[i][/i]
- 右键菜单新增
- BBS代码转换为纯文本: 将所选内容中所有生效的BBS代码,显示为纯文本
- 快捷创建表格: 将两个用空格隔开的数字(行数 列数)转换为表格
- 语法高亮
- 新增: style位于randomblock块外时,增加高亮提示
- 修正: 光标不在代码块内时,取消之前的代码块包裹高亮标记
v0.2 2025-03-23
- 重构代码架构
- 新增代码作用域高亮功能
- 新增未闭合代码块提示功能
- 语法高亮:
- 代码补全:
- 已知问题:
- style:在randomblock块外仍然正常高亮(style必须要在randomblock中才不会报错,因此在randomblock块外的style不应该高亮显示)
- style:高亮显示未完成,没能正确将style后面的参数正确变色
v0.1 2025-03-20
- 支持的语法高亮:i / u / del / l / r / h / quote / collapse / list / table / code / color / size / img / url / tid / pid / uid / randomblock / fixsize / style / __高亮占位符__
- 支持的语法补全:
- 基础代码:i / u / del / l / r / h / quote / collapse / list / table / tr / td / url / randomblock
- 颜色代码:silver / red / green / blue / 以及它们的加粗版本
- 特殊:vv(空行占位符) / size(large/small/tiny) / split(分割符) / img(折叠)
- 专楼模板:
- 已知问题:
- style:在randomblock块外仍然正常高亮(style必须要在randomblock中才不会报错,因此在randomblock块外的style不应该高亮显示)
- style:高亮显示未完成,没能正确将style后面的参数正确变色
快捷创建表格: 将两个用空格隔开的数字(行数 列数)转换为表格
语法高亮- 新增: style位于randomblock块外时,增加高亮提示
- 修正: 光标不在代码块内时,取消之前的代码块包裹高亮标记
添加: [size=0%][/size]新增特殊样式, 区别于其他代码块
修改: 右键菜单中的"BBCode转纯文本"功能: 将生成的"[size=100%][/size]"修改为"[size=0%][/size]"
修改: 分隔符([size=1%]卝[/size])触发由"split"改为"zz", 并且将生成的"[size=1%]卝[/size]"修改为"[size=0%]卝[/size]"
(VSCode)
- 同步 Sublime Text 插件 SublimeBBCodeNGA v1.0版本