鱼C论坛

 找回密码
 立即注册
查看: 5476|回复: 123

[作品展示] 【源文本转换器】Markdown ←→ Discuz 源文本相互转换器

  [复制链接]
回帖奖励 129 鱼币 回复本帖可获得 3 鱼币奖励! 每人限 1 次(中奖概率 70%)
发表于 2023-4-23 01:36:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Twilight6 于 2023-5-21 10:35 编辑

MarDisTextConverter 源文本转换器

                               
登录/注册后可看大图

                               
登录/注册后可看大图

(温馨提示:单击图片可以放大图片哦~)


程序于2023/4/23号更新,详细内容请至更新日志处查看。

Ps: 原创程序,仅供参考。另外程序中还有许多 BUG 希望大家能多多反馈,最好带上测试文本,和出现的 BUG 情况,万分感谢!



兄弟萌,在前些天发的ChatGPT详细注册教程时,感受到了来自论坛中编辑器的不便,花费了大量的时间在帖子格式上调试,被渐渐消磨耐心

其中也可能是因为楼主是个强迫症患者,一个成稿帖子,可能经过了五六十、七八十次的编辑,因为论坛编辑器无法实时的看到格式的变化,经常需要排版后反复的提交,时常触发人机验证

也是由于格式和文本是相隔开来的,所以在编写文案修改格式时,作者就看不到实际文章生成的效果,又因为是网页端,所以每次都进行刷新等待页面需要写一步、保存一步、看一眼样式效果

然后继续机械性的重复以上工作 N 次。直到感官上满意为止。所以觉得花费这么多时间调整格式,偏向于“无用功”了,很容易影响作者们发帖积极性,使之扼杀在了修改帖子格式的“噩梦”里。

所以我想减轻一些格式上的负担:既然编辑器不支持 Markdown 语法,那么就让我们自己制造轮子吧(气呼呼)!因此这些天花了不少的时间,写了一个文本转换器。

该程序能 TyporaMarkdown 笔记文件可以直接通过该转换器转为 Discuz 论坛编辑器中的源文本。同时,也能将自己的帖子部分格式化后的保存到本地,做到文本互转。

方便直接将本地的笔记通过转换器,快速转换为适合论坛格式的源文本,最终分享到论坛上来,供自己记录笔记和其他鱼油的学习。

希望这样可以稍微减缓一些发帖子改格式上的压力,略微增加兄弟们发帖子欲望吧!

接下来是对该程序的使用、介绍和注意事项等说明。
程序主界面展示
0. 程序界面展示.png



Ⅰ. 程序简单演示



        1. 楼主已将此程序打包~,因为 PyQt5 模块底层依赖 QtC++库),所以打包时候必须要将使用到的一起附带上,导致打包文件较大,见谅嗷~(不会 Cython 打包,不然可以小很多)
           解压后即可打开如图所示 MarDisTextConverter.exe 即可开启程序~

                       

1

1


        2. 程序界面简单展示,工具栏可以拖动(PyQt5 工具栏自带默认行为),帮助跳转到此帖,关于中可以点击蓝字跳转~

                       

2

2



Ⅱ. 主功能演示


        Ps:写稿的时候才发现,当引用标签 “>” 后面没有空格时,会把字吃掉一个(图中名言的序号就被吞了)
            因为我源代码写的是固定索引切片导致的,因为 Typora 中引用语法是自带 “> ” 一个空格 太懒了打包上传云盘、Git 啥的...,等下次有机会再更新呗,嘿嘿。
            不用担心吞你正常的文本Typora 中引用 “>” 是自带空格的,这里是因为我测试文本是我手打的嘿嘿(但是还是建议如果要覆盖保存,建议提前备份一份哈~)

        1. Markdwon To DiscuzMarkdownDiscuz

                       

3. MTD

3. MTD


        2. Discuz To MarkdwonDiscuzMarkdown

                       

4. DTM

4. DTM


        3. Markdwon and Discuz convert to each otherMarkdownDiscuz 使用快捷键互相转换)

                       

3and4

3and4


        4. 程序转换对比
        (长图,点击放大图片观看左边 Discuz右边 Typora MarkdownTypora 使用了 Vue 主题)

                       

merge

merge



Ⅲ. 菜单栏演示


        1. 文件功能演示

                       

4

4


        2. 编辑功能演示

                       

5

5




Ⅳ. 使用注意


        1. “#” 标题问题

                       

9.1

9.1


        已修复:2. “>” 引用需带一个空格,否则会吞字(Typora 中编辑没问题,因为编辑中会在 “>” 自带一个空格)

                       

9.2

9.2


        3. 当程序打开新文件后,程序的撤回栈中就清空了,导致无法撤回,需要注意一下哈。



Ⅴ. 程序的不足



        1. 不同支持 Markdown 的编辑器语法上可能都有差异,因为楼主在平时做笔记习惯使用了 Typora
          所以本程序主要是转换 Typora 的源文本,其它的 Markdown 编辑器暂不支持(例如:语雀有道云笔记

        2. 因为楼主技艺不精,和 ChatGPT超级工程师讨论了三天三夜(换个真人可能已经把我轰出去了),它的有应必达,
          让我哭死(当然,偶尔也会高血压)。尽力肝出这些基础转换功能,基本上可以正常使用啦。

        3. 程序源码个人感觉就是依托答辩,楼主的正则写的臭、且 PyQt5 算是第一次接触,都靠 ChatGPT 孜孜不倦的 “教导” ,
          才有了现在的代码,所以感兴趣的小伙伴可以学....... 呃,小伙伴我佩服你的勇气。还是去看看隔壁大佬的代码进行学习吧~

        4. 此版本为 v0.1.1 测试版,本以为这种文本转换就无非是正则的使用,但实际上在程序的编写过程中,遇到的问题数不胜数(楼主菜是个重要的原因,其次
          吹爆 ChatGPT,编写程序过程中就像我的专属导师,帮我解决了大量的问题),所以兄弟们,如果能进行实战的,多进行实战,否则就是纸上谈兵!

        5. 遵循基本语法上的转换一般不会有什么问题,奇葩的嵌套等语法大概率无法转换的嗷,所以转换文件前,如果需要保存文件,那么建议将原文本文件进行备份哈~

        Ps: 以下为暂不支持Discuz 标签:

                1) 图片、附件、音乐、音乐、视频等高级标签

                2) 目录、字体颜色、字体背景色、表格、有序列表、无序列表

                3) 左右浮动标签、上下角标标签


Ⅵ. 本贴资源合集



游客,如果您要查看本帖隐藏内容请回复


最后:小伙伴们有使用的建议、遇到的 BUG 、吐槽都到评论区发一发呀~,你们的捧场就是对我最大的鼓励!


帖子创作不易,评个分再走呗~


                               
登录/注册后可看大图


评分

参与人数 19荣誉 +75 鱼币 +73 贡献 +39 收起 理由
cjjJasonchen + 5 + 3
1molHF + 2 + 2 感谢楼主无私奉献!
Ewan-Ahiouy + 1 + 1 鱼C有你更精彩^_^
陈尚涵 + 5 + 5 + 3 鱼B有你更精彩^_^
hrpzcf + 5 + 5 + 3 感谢楼主无私奉献!
qiuyouzhi + 5 + 5 + 3
liuhongrun2022 + 5 + 5 + 3
yinda_peng + 1 鱼C有你更精彩^_^
开心老六 + 3 + 5
小伤口 + 5 感谢楼主无私奉献!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-23 01:56:21 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-23 01:56:52 | 显示全部楼层
大佬这么晚还没睡?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-23 01:57:47 | 显示全部楼层
isdkz 发表于 2023-4-23 01:56
大佬这么晚还没睡?



这个帖子没整完睡不着,哈哈哈

话说你一样呀,早点修仙嗷~

点评

噗,休息,不是修仙,再不睡真的修仙了哈哈  发表于 2023-4-23 01:58
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 07:33:32 | 显示全部楼层
那个按下按键就显示的小插件还挺酷的

自己做的吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 07:35:04 | 显示全部楼层
Twilight6 发表于 2023-4-23 01:57
这个帖子没整完睡不着,哈哈哈

话说你一样呀,早点修仙嗷~

“修仙”
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 08:01:17 | 显示全部楼层
能支持数学公式不
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 08:11:51 | 显示全部楼层
本帖最后由 王逗比666 于 2023-4-23 08:35 编辑

刚刚用了一下,给楼主反应几个小问题:
第一个是不支持数学公式,不过这玩意在Markdown里也需要用引擎渲染,直接转换支持不了应该算是硬伤
第二个是将代码块转换的时候会将写在```后的语言名也转进去,比如说
```c++
      ...
```
转换效果会是

  1. c++
  2. ....
复制代码

可能是楼主没有考虑这一点?
第三个也是在代码块里,它会将#转换成奇奇怪怪的东西,比如
```c++
#include <iostream>
#include <algorithm> //直接用里面的sort函数
```
变成了

  1. c++
  2. [size=7][b]include <iostream>[/b][/size]
  3. [size=7][b]include <algorithm> //直接用里面的sort函数[/b][/size]
复制代码

这个问题只在部分代码中出现了,可能是缩进的问题?
但是这个工具确实很好用,我几年前就吐槽过鱼c的编辑器不支持markdown,楼主的工具的出现也算是在另一个角度解决了这个问题
大佬nb

点评

我很赞同!: 5.0
我很赞同!: 5
1.公式因为Discuz也不太支持,所以不在考虑范围内 2.代码块保留语言,是我故意不小心的,嘿嘿 3.太感谢啦~,此Bug严重影响转换结果  发表于 2023-4-23 11:22

评分

参与人数 1荣誉 +6 鱼币 +6 贡献 +6 收起 理由
Twilight6 + 6 + 6 + 6 万分感谢!!!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 09:04:13 | 显示全部楼层
王逗比666 发表于 2023-4-23 08:11
刚刚用了一下,给楼主反应几个小问题:
第一个是不支持数学公式,不过这玩意在Markdown里也需要用引擎渲染 ...

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 09:06:08 | 显示全部楼层
稳定才是王道有没有想过很多人还不知道 Markdown 是什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2023-4-23 09:18:00 From FishC Mobile | 显示全部楼层
不二如是 发表于 2023-4-23 09:06
稳定才是王道有没有想过很多人还不知道 Markdown 是什么

知道一点
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-23 10:03:10 | 显示全部楼层
不二如是 发表于 2023-4-23 09:06
稳定才是王道有没有想过很多人还不知道 Markdown 是什么



那确实,稳定更为重要,听说 Discuz 论坛的 Markdown 插件似乎有很多 Bug

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-23 10:13:27 | 显示全部楼层
元豪 发表于 2023-4-23 07:33
那个按下按键就显示的小插件还挺酷的

自己做的吗?


这个是自己写滴,开个信号槽,发送更新信号,每次更新一个字,时间间隔 0.4s 更新一次

而且因为  PyQt5 支持 html 标签,在解析 html 标签时,会直到解析结束才显示,所以有些时候会停顿一下

然后解析完成,一次性显示出来的,实际上就是被包裹在了 <> html 的标签中
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 11:41:10 From FishC Mobile | 显示全部楼层
王逗比666 发表于 2023-4-23 08:11
刚刚用了一下,给楼主反应几个小问题:
第一个是不支持数学公式,不过这玩意在Markdown里也需要用引擎渲染 ...

哈哈,那我就猜错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 18:50:00 | 显示全部楼层

回帖奖励 +3 鱼币

Twilight6 发表于 2023-4-23 01:57
这个帖子没整完睡不着,哈哈哈

话说你一样呀,早点修仙嗷~

我说昨晚看着怎么看着那么奇怪,都不知道怎么回

每次都想着不能这么晚睡,每次都习惯性熬夜,然后第二天晚起,继续熬夜,就一直处于这样的恶性循环

可惜 markdown 没有字体颜色的语法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-4-23 19:10:11 | 显示全部楼层
isdkz 发表于 2023-4-23 18:50
我说昨晚看着怎么看着那么奇怪,都不知道怎么回

每次都想着不能这么晚睡,每次都习惯性熬夜 ...


哈哈哈哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 19:43:16 | 显示全部楼层

回帖奖励 +3 鱼币

感谢分享!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 19:54:24 | 显示全部楼层
论坛的纯文本模式取消勾选就行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-4-23 19:56:18 | 显示全部楼层

回帖奖励 +3 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-23 19:56:43 | 显示全部楼层
typora要钱
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 16:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表