隐藏frontmatter段的CSS代码

原来是要在主体先enable。

有些问题:
1, 设置里中文乱码
2, 有些文档的文档属性无隐藏,也没有加那个toggle属性

BTW:
能加入js代码,检查打开的MD文件是否已存在leaf,若存在,就不重复打开,而是把相应leaf设为active?

不重复打开可参考:有没有办法实现,假如文件已打开,点击链接跳转到已打开文件,而不是新打开一个标签页 - #8,来自 WouiTC

当然,可能有些不能用了,你试试看,obsidian-close-simlar官方已不能下载,因此我从github下载源码重新构建了下,希望能帮到你,下载地址:https://github.com/wish5115/obsidian-ii-quicker-full/releases/download/1.1.6/obsidian-close-simlar.zip

另外,你上次提到的记住浏览位置,可使用Remember cursor position插件,第三方市场搜索即可。

在安卓1.4.16下无效,试卸载1.4.16,安装1.5.12,但ii js脚本仍然是无效。
能否让ii js脚本兼容安卓和ios等移动端?

抱歉,之前这块没考虑支持移动端的,你把这个main.js重新下载,覆盖ii-quicker插件的main.js,应该就好了。

安装 了style settings,也在snippets里创建了这个css,为什么在它的settings,还是什么也没有?

这个建议参考style settings官方文档,按照它支持的格式配置下应该就可以了。

重新下载了main.js,之前是280KB,现在是90KB。

但移动端,仍然是无效!

我电脑和github都显示290多KB

你检查下文件,如果还不支持,那可能是实际的手机端的dom结构和pc端有差异吧。

我在pc端,用官方提供的移动端模拟器方式测试是可以的。


你不用移动端吗?

似乎在windows里,不能在设置外观里钩选你的YAML隐藏CSS,也是可以实现指定文档不隐藏,其他文档不隐藏效果。

但在安卓,把外观里的隐藏YAML CSS取消后,则是所有文档都不隐藏了。

BTW:
能在CSS里,让文档属性初状状态是折叠 ?

是这个路径,你的路径错误,在obsidian-ii-quicker-full这个项目下,另外,你通过第三方下载不知道是否有缓存。

文档属性默认折叠,最简单的方式就是通过对.metadata-container的模拟点击,你尝试下应该可以的,比如,在之前的js代码里加上var mc=document.querySelector(activeLeaf+".metadata-container");if(mc && mc.firstChild) mc.firstChild.click()应该就行。

一般不是在release下面吗?第三方也是正确的

移动端测试了,和win端行为有点不同:
指定A和B要显示。
先打开A,显示,再原位打开C也显示。
全关闭。
先打开C,不显示,再原位打开A也不显示。

这在windows上,不会有此问题。

更正
移动端是
指定A和B要显示。
先打开A,显示,再原位打开C不显示,再原位打开A不显示。
全关闭。
先打开C,不显示,再原位打开A也不显示。

我这边暂时不方便调试,思路应该没错,涉及到具体细节,你可以多尝试调整下。

锁定要显示文档属性的文档,基本上可以用了。
你方便时再在模拟器,看看移动端为何在改变了不显示的文档后,就没有重新执行js了。

实际使用:

  1. 重用leaf时,若发现有重复,会关闭leaf,并激活已打开的文件。
  2. 锁定leaf后,可以重复打开锁定了的文件。-- 怀疑它的行为不是关闭新打开,是关闭已打开,已打开锁定了,不能关闭,导致重复。

麻烦看下第2点,是不是这样,若是,是否可以简单修改,让它是关闭新打开,这样就让锁定文件也不会重复打开了。

js代码里加上var mc=document.querySelector(activeLeaf+".metadata-container");if(mc)mc.click() 应该就行。

^^^^
这有些不妥,因为obsidian也会记忆折叠状态,点击折叠后,下次就变成点击打开了。

中文乱码你可以手动改成英文,将默认设置保持开启就是保持不显示的状态,如果你关了,文档肯定显示呀,设置这个按钮和切换是方便切换来使用的。
image

刚用ctrlshift -i 看到控制台有错误信息有 read properties of none,包括隐藏yaml里的style,和我添加的yaml。
但似乎代码又是正确执行的。

我把指定显示的文件名写到一个md的yaml里,在代码里读取,应该如何修改才不出错?

  1. 你提到的移动端问题,我在iPhone上没有发现问题,如下:

    建议先检查代码是不是和我的完全一致,如果还有问题建议根据自己的环境具体调试下。

  2. 文档属性会记住折叠,可以这样var mc=document.querySelector(activeLeaf+".metadata-container:not(.is-collapsed)");if(mc && mc.firstChild) mc.firstChild.click(),这样就仅未折叠的才点击

  3. 没有完美的东西,建议别太纠结个别细节了,能用就行,实现功能简单,如果想完美支持,尤其各版本各端兼容,也不容易,如果你想研究,源码在:GitHub - zhaihao/Obsidian-Close-Similar-Tabs: Close Similar tabs
    也可尝试找找看看有没有更优的插件,这个插件本身也有bug,比如,在多分割窗口下也不能有效关闭。

不出错最简单的方式是

try{
  //你的代码
} catch(e){
  // 这里你可以打印错误,也可以不打印
 console.log(e)
}

或者

var mc=document.querySelector(activeLeaf+".metadata-container");
if(mc) mc.style.display='none'

大佬,这个阅读模式代码下怎么没内容是漏写了?

yaml区 太复杂了 不好 只想要创建时间 修改时间 和标签 三个在一行显示 其他详细信息最好是隐藏了或者在右栏显示 右边栏那么大空间 要多少给多少 正文编辑区 尽量简洁

确实,我觉得官方应该把文档属性放到右侧面板,然后右侧面板用tab分开当前文档和全部文档属性