增强编辑插件真是一个好插件

Ob 自带的引用命令插入的是带一个空格的引用(> ),这对我很苦恼。

蚕子大佬的 增强编辑插件 main.js 结构清晰,于是借用增强编辑插件原有的“转换callout语法”命令,新添加了一个命令:

// 分别插在 main.js 里和各自结构相似的其他项附近
this.addCommand({
    id: 'add-blockquote',
    name: '转换blockquote语法',
    callback: () => this.转换blockquote语法()
});

转换blockquote语法(){
    this.获取编辑器信息 ();
    if(所选文本 == ""){return};
    所选文本 = 所选文本.replace(/\n/g,"↫");
    if(所选文本.startsWith(">")){
        //new obsidian.Notice("需要去除>符号");
        所选文本 = 所选文本.replace(/↫?\>/m,"");
        所选文本 = 所选文本.replace(/↫\>/g,"\n");
    }else{
        //new obsidian.Notice("需要补充>符号");
        所选文本 = 所选文本.replace(/^(.+)$/m,">$1");
        所选文本 = 所选文本.replace(/↫/g,"\n>");
    }        
    this.替换所选文本 (所选文本);
    编辑模式.exec("goRight");
};

这样就可以用这个命令插入不带空格的引用了 :smile:

(其实我总觉得应该有什么更简单的方法插入不带空格的引用的,希望有人能告诉我呀~)

注:增强编辑插件需手动安装。

你可以选择用linter写一个正则自动把> 替换为>

其实我之前一直用 Linter “引用块样式: 无空格” 自动格式化,直到有一天我开始在引用里写列表,然后我发现自动格式化把我的列表缩进整没了 :joy: 我想除了一次性在行首插入无空格的引用符号比较可行,剩下的替换估计都会有类似问题。

(在引用里写列表是因为我需要分栏样式)