之前一直使用的是 Markdown Nice 编写微信推文,不过存在一些不方便的地方,一个是后来 Markdown Nice 改收费了,免费用户新建文档数量限制,不能直接复制上传图片。二个是 Markdown Nice 不支持 Stata 代码的高亮。
鉴于诸多不便,所以我一直想拥有一个自己的微信推文代码编辑器。其实我之前基于 Markdown Nice 的源代码魔改了一个网页应用:https://tidyfriday.cn/mdnice/
这个网页应用能够支持 Stata 代码高亮,但是也缺少了很多功能,还是不方便。最近探索了很多 WorkBuddy 的用法,今天突发奇想决定让它来帮我开发一款这样的应用。要有如下功能:
- Markdown 微信推文排版软件
- 代码高亮支持 R 语言、Stata、Python、Javascript、shell 等
- 支持文章管理功能,可以新建和删除文章,不需要登陆注册功能
- 支持 Markdown 编写和预览以及复制到微信推文里面
- 默认样式就是提供的 style.css
- 最终打包成一个 Mac 系统可用的 app 软件。
提问词如下:
“附件中提供了 Markdown nice 网站的一些源码,和 style.css ,参考这些文件,编写一个 Markdown 微信推文排版软件,代码高亮支持 R 语言、Stata、Python、Javascript、shell 等。支持文章管理功能,可以新建和删除文章,不需要登陆注册功能,支持 Markdown 编写和预览,以及复制到微信推文里面,支持样式编辑,默认样式就是提供的 style.css。最终打包成一个 Mac 系统可用的 app 软件。”

然后后面还根据使用情况提了很多意见,最终终于觉得大致达到了我的要求。


效果还真不错,全程大概耗费了 200 个积分。
除了上面的要求,我还增加了一键导出 MD 文件和 PDF 文件的功能,可以插入表格。双栏预览等功能。也可以通过 css 调整改变推文样式,不过我通常写推文都是一个样式,不怎么需要调整。
代码高亮终于支持 Stata 了:
use "1985~2024年上市公司专利创新突破度 CD 指数计算结果(分上市公司年份平均).dta", clear destring 年份 cd_index, replace collapse (mean) cd_index, by(年份)
tw conn cd_index 年份, m(o) lp(solid) color(black) xla(1985(5)2020 2024) yla(0(0.1)0.5, format(%6.2f)) yti("平均 CD 指数") xti("") ti("1985~2024年上市公司平均专利创新突破度(CD指数)") subti("数据计算 & 绘图:微信公众号 RStata") caption("数据来源:RStata 数据中心: 1985~2024年上市公司专利创新突破度CD指数计算结果. 2026. " "https://tidyfriday.cn/rsdb2/")
|
R 语言代码:
read_rds("patent_citations.rds") -> patent_citations patent_citations %>% filter(date - date2 <= dyears(5) & date - date2 >= 0) -> patent_citations2
read_rds("nobackrefs.rds") -> nobackrefs nobackrefs %>% mutate(cd_index = 1) %>% write_rds("nobackrefs.rds")
for (x in testmat$newipzlid) { patent_citations2 %>% filter(newipzlid == x) -> testpat testpat %>% select(newipzlid2) %>% pull(newipzlid2) -> backrefs
patent_citations2 %>% filter(date >= testpat$date[1]) -> part0
part0 %>% filter(newipzlid2 == x) %>% select(newipzlid) %>% distinct(newipzlid) -> part1
part0 %>% filter(newipzlid2 %in% backrefs) %>% select(newipzlid) %>% distinct(newipzlid) -> part2
cd_index = mean(c(parta$cd, partb$cd, partc$cd), na.rm = T) }
|
最后,这篇推文就是使用该软件排版得到的~
和之前推文的效果差不多。
点击这里跳转到 RStata 短书平台获取附件:使用 WorkBuddy 自己动手开发一款 MacOS 应用~
评论