Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 制作一个能批量修改md的frontmatter信息的工具,方便用户迁移 #174

Open
qtqz opened this issue Feb 12, 2023 · 5 comments
Labels
enhancement New feature or request pr welcome

Comments

@qtqz
Copy link
Contributor

qtqz commented Feb 12, 2023

背景

现在不同的静态博客框架,或同一框架(hexo)不同的主题,对于博客文章frontmatter信息的规定都有所不同,比如文章的封面图在这里叫cover在那里却叫headimg。也没有合适的东西处理这些(之前发现一段代码,但是只能统一增加或删除)。这就导致用户想换主题或者框架非常麻烦,往往就维持现状不换了。

目前Valaxy刚刚起步,也确实需要这样的工具,并提供官方的引导,方便用户迁移过来试用。

需求与可能的实现

可以有2种做法,1.自己实现批量修改,增删改查等等;2.将数据导出为表格,交给专业的软件处理表格数据,然后再导入覆盖,如下:

文件名 title date reward headimg cover
标题1 标题1 2022-1-1 TRUE 1.jpg  
标题2 标题2 2022-1-2 TRUE 2.jpg  
标题3 标题3 2022-1-3 TRUE   3.jpg
标题4 标题4 2022-1-4 TRUE   4.jpg

第2种做法的需求:

  • 可以凭某文件夹下所有md文件生成电子表格
  • 可以将电子表格内frontmatter导入回某文件夹下所有md文件,按文件名匹配
  • 易上手,方便没有编程经验的用户操作
  • 能完全清除frontmatter,方便不需要它的博客引擎
  • 容错等等

这可能不是关于valaxy本身的issue,但是应小云的提议,发到这里备忘

@YunYouJun YunYouJun added enhancement New feature or request pr welcome labels Feb 12, 2023
@guowei-gong
Copy link
Contributor

Maybe I can provide a CLI terminal tool to do this ?

@YunYouJun
Copy link
Owner

批量修改 frontmatter 的工具是一个很不错的想法,我认为这对于其他静态站点框架(不局限于 valaxy)也是适用的。

我想到有两种实现方案:

一种是纯粹的命令行解决方案,批量设置某个目录下的所有 markdown 文件的 frontmatter。
该方案简洁,对于开发者友好。

另一种方案是实现一个 GUI 客户端,譬如可以基于 tauri 实现。( https://github.com/YunYouJun/tauri-vite-vue )
可以提供一个表格直接展示某目录下的所有文件 frontmatter,并直接对其进行修改。

@Rotten-LKZ 曾经使用 tauri 开发过一个 valaxy admin 客户端,可以进行一些编辑操作,我想他会对此有所经验。

我认为第二种方案可能是对于所有用户最为便捷的一个方式,该功能可以作为 valaxy-admin 的一个子功能,也可以作为一个单独的 gui 工具。如果你们想要实现该功能,我很乐意邀请你们成为 valaxyjs org 一员,并进行项目开发。我会提供一些设计和开发上的帮助及建议。

@kwaa
Copy link

kwaa commented Mar 7, 2023

也许可以推荐一下我的插件 markdown-it-fff
它在读取时处理 Frontmatter(而不是提前修改),初始配置以外几乎不需要用户操作

@YunYouJun
Copy link
Owner

也许可以推荐一下我的插件 markdown-it-fff 它在读取时处理 Frontmatter(而不是提前修改),初始配置以外几乎不需要用户操作

看起来和 @qtqz 想要的有点区别,我猜他应该是想要一个可视化界面/交互终端脚本以修改 markdown 的 frontmatter 信息并保存原文件。

@kwaa
Copy link

kwaa commented Mar 7, 2023

也许可以推荐一下我的插件 markdown-it-fff 它在读取时处理 Frontmatter(而不是提前修改),初始配置以外几乎不需要用户操作

看起来和 @qtqz 想要的有点区别,我猜他应该是想要一个可视化界面/交互终端脚本以修改 markdown 的 frontmatter 信息并保存原文件。

方式不同,不过我认为同样解决了标题中的 “方便用户迁移”

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pr welcome
Projects
None yet
Development

No branches or pull requests

4 participants