请教大佬,如何批量把 \n 替换成 shift+enter 的换行?

我得需求是:经常需要把思源笔记中的部分换行手动转成软换行,因为内容相关。现在想利用 quicker 写一个小脚本实现自动替换\n,换行可以用\n 表示,可是软换行改用什么符号表示呢?

或者是否有别的思路能比手动改更快捷的?

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • abbj
    支持者 订阅者 作者

    呼唤大佬 @88250

  • 88250
    订阅者

    不推荐直接改 DOM 结构。不知道能不能模拟键盘操作触发 Shift Enter。

    1 回复
  • abbj
    支持者 订阅者 作者

    看来 shift enter 没有类似\n 这样的表示方法啊?那我只能研究模拟键盘了。

    原先的想法是复制笔记中相关内容,quicker 处理剪贴板文本,把\n 替换成软换行后,再粘贴回思源笔记,应该不是你说的改 dom 结构吧。

    1 回复
  • 88250
    订阅者

    Markdown 引擎在处理 \n 换行符时可能生成两种节点,软换行节点和硬换行节点。一般现在所有的引擎都会把软换行默认转换为硬换行。

    软换行和硬换行的区别仅在于渲染时是否是可见的换行,因为在 HTML 中,\n 是不可见的,没有换行效果;而 <br> 才有换行效果,硬换行就是固定渲染为 <br>

    可以试下结尾加两个空格再 \n,即 \n,这是硬换行的解析逻辑。

    1 回复
  • abbj
    支持者 订阅者 作者

    是不是可以这么理解,仅针对思源笔记:\n 解析为软换行, \n 解析为硬换行?这样的话我感觉我需要查找 \n,把它替换成 \n

    1 回复
  • 88250
    订阅者

    \n 是标换行标准语法,会固定渲染为 <br>,试试看,如果不行的话那估计只能想其他办法了。

请输入回帖内容 ...