关于链接的一个别的想法
关于链接,我也一般不会改动 text
,顶多是对于那些不怎么遵守“中英文之间添加空格”的行为有些极度反感罢了,因此对于这种情况,我希望的是在我创建 [text](link)
的时候就解决掉。
比如说:
这个页面原文的标题,中英文不加空格。创建链接的一般操作是:
- 复制
text
, - 返回到 Obsidian 中,粘贴,(快捷键)调整空格;
- 返回到浏览器,复制
link
; - 返回到 Obsidian 中,选中
text
,粘贴得到[text](link)
。
但是我能不能直接:
- 复制
text
和link
(次序争取可以不用管) - 回到 Obsidian,敲击
lll
或者lkk
直接触发[text](link)
呢?
也就是通过触发触发器,帮我:
- 自动识别历史剪贴板中第一个和第二个内容,其中一个一定是
purelink
,即https://...
,另外一个是text
; - 将
text
做文本微调,即([\\u4E00-\\u9FA5])([A-Za-z0-9])
和([A-Za-z0-9])([\\u4E00-\\u9FA5])
replaceAll 为$0 $1
。 - 还可以实现一些附加功能,比如添加一个
from
字段,根据link
的来源,switch case 不同的平台后缀Bilibili
YouTube
知乎
Quora
微信
等。 - 最终输出
[text - from](link)
即可。
后面几点都不算难,问题其实是第一点:[在 LaTeX Suite 插件中,如何通过 Javascript,并借助历史剪贴板,快速实现创建 text 形式的链接?](在 LaTeX Suite 插件中,如何通过 Javascript,并借助历史剪贴板,快速实现创建 [text](link) 形式的链接?)。
最后的这一段代码很神奇,有的时候是可行的,有的时候是不行的。
我不怎么了解 JavaScript 相关编程语言,或者可以说我是因为使用 Obsidian 才开始学习使用 JavaScript,因此不知道错误在哪里。
关于 require
我一开始使用的也是 navigator.clipboard
,后来是在尝试实现上面这个需求的时候根据 AI 的回答,用了 const { clipboard } = require('electron');
和一系列代码,只不过没有成功,把相关代码删了之后然后忘记改回来了。之后就没有管了,还是老老实实地常规操作处理,不想太折腾了,哈哈。