hans0000
本帖最后由 hans0000 于 2022-9-6 11:19 编辑
前言
经过前期的调研,最后决定开发油猴插件来增强论坛的编辑器,主要原因如下

正篇
整体的交互是使用md语法,在此基础上会扩展一些论坛独有的功能(例如:设置背景、密码等,后面会详细列出)。
md语法
不知道的可以搜索引擎关键字markdown语法,这里不详细展开了
扩展语法
以下内容为本人暂定的语法规则,也是本次要重点讨论的,希望大家认真阅读。
被采纳的意见,会获得一定人气奖励

1.设置生成规则
使用---来包裹yml语法,用于设置生成规则,具体如下
  1. // 用于设置背景样式
  2. postbg: 1.jpg
  3. // 用于设置帖子密码
  4. password: 123456
  5. // 标签名做属性,用于设置具体标签的样式,具体如下

  6. h1?: FontStyle          // 一级标题
  7. h2?: FontStyle          // 二级标题
  8. h3?: FontStyle          // 三级标题
  9. h4?: FontStyle          // 四级标题
  10. h5?: FontStyle          // 五级标题
  11. h6?: FontStyle          // 六级标题
  12. text?: FontStyle        // 文本
  13. strong?: FontStyle      // 粗体
  14. em?: FontStyle          // 斜体
  15. del?: FontStyle         // 删除线
  16. paragraph?: FontStyle   // 段落
  17. link?: FontStyle        // 链接

  18. // FontStyle被定义为如下
  19. interface FontStyle {
  20.     color?: string
  21.     backcolor?: string
  22.     font?: string
  23.     bold?: boolean
  24.     italic?: boolean
  25.     strikethrough?: boolean
  26.     size?: 2 | 3 | 4 | 5 | 6 | 7
  27. }
复制代码

例如本次帖子样式配置
  1. ---
  2. postbg: 2.jpg
  3. h2: { color: "#ffcc44", bold: true }
  4. h3: { color: "#007acc", bold: true }
  5. paragraph: { size: 4 }
  6. ---
复制代码

2.区域
使用**#region #endregion**来声明一块区域,对应论坛的折叠、免费信息和隐藏信息
  1. // 语法如下
  2. #region [属性]
  3. [内容主体]
  4. #endregion

  5. // 例子
  6. #region
  7. 默认属性为空为折叠功能,生成[spoiler][/spoiler]
  8. #endregion

  9. #region free
  10. free属性生成
  11. #endregion

  12. #region hide
  13. hide属性默认回帖查看
  14. #endregion

  15. #region hide=666
  16. hide属性后跟数字,积分大于666查看
  17. #endregion

  18. #region hide=d999,666
  19. 有效天数999,积分大于666
  20. #endregion
复制代码

3.视频、音频
这里扩展了原生md link的语法,用于区分链接、视频和音频
  1. [](audio:https://foo.mp3)
  2. [](media:https://foo.flv)
复制代码

一些待定的功能

最后
贴出本子生成的帖子的源文件



苦力怕553
MM2BC - MCBBS Markdown To BBCode Converter (SPXDesign)
https://ricolovefeng.github.io/
有个Markdown转bbcode的工具来着

q406891565
很好的想法大佬加油哇~

Tnoxus
可以可以,楼主加油啊

先导了再说
看起来就是我不会的东西

hans0000
苦力怕553 发表于 2022-9-6 15:25
MM2BC - MCBBS Markdown To BBCode Converter (SPXDesign)
https://ricolovefeng.github.io/
有个Markdown ...

基础功能很容易做,我想把它做的好一点,更实用一点

御坂10492号
御坂之前写mcbbswiki的时候有用过这个,do 御坂如此说到

asin
我看不懂都

羽希氷華
本帖最后由 羽希氷華 于 2022-9-9 00:25 编辑

想起来之前用 wiki.js 2.0 框架的时候,内置的 markdown it 插件有在语句块的结尾添加「  {.StyleName1 .StyleName2 .StyleName3}  」来快速使用一些常用预制好的样式的功能方言。


我感觉不少 markdown it 插件的文法格式都很有亮点。<- 也可能只是我的个人喜好啦。


markdown 是自由的。

贪玩的小淼
非常不多,楼主加油

hans0000
羽希氷華 发表于 2022-9-9 00:20
想起来之前用 wiki.js 2.0 框架的时候,内置的 markdown it 插件有在语句块的结尾添加「  {.StyleName1 .St ...

论坛支持的样式少的可怜