GithubHelp home page GithubHelp logo

linczero / obsidian-any-block Goto Github PK

View Code? Open in Web Editor NEW
125.0 125.0 6.0 3.74 MB

A Obsidian Plugin. You can flexibility to create a 'Block' by some means. It also provides some useful features, like `list to table`.

License: GNU Affero General Public License v3.0

JavaScript 2.57% TypeScript 84.59% CSS 3.81% SCSS 3.65% Svelte 5.37%

obsidian-any-block's People

Contributors

linczero avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

obsidian-any-block's Issues

[feature request] 列表转可折叠树形表格可否增加层次缩进和默认折叠

更新到1.2.4,发现列表转可折叠树形表格[2lt]已经有了折叠三角形和点击折叠/展开的更新。使用后尚觉有待改进:

  1. 层次缩进被折叠三角形占位了,同级的文字没有对齐。如上海市场部与销售部

image

  1. 可否默认折叠与展开。比如在你的示例”Obsidian开源集团通讯录“中,我是北京分公司的,平常就只常联系北京分公司的人,其他分公司的人几乎很少联系。因此能否打开MD文件时默认只展开北京分公司的同时折叠其他分公司的。

image

[Feature Request] 建议增强选择器与块之间的空白行,让其不论是否有用几行空白行相隔都能生效。

  • 鉴于MD的一些块的渲染需要前后有一行或多行空白行(如用|-----构建的表格等等),建议增强选择器与块之间的位置,让其不论是否有用几行空白行相隔都能生效。
  • 让有空白行相隔也能生效可避免万一Any Block意外不生效或卸载了,那些需要前后有空白行的块任然可以被MD正确渲染,从而不会破坏原本的数据及渲染,保障数据的安全性和完整性。
[2table]与列表之间 实时预览 阅读模式
没有空白行 生效 生效
有空白行 无效 无效

测试环境:

  • Windows 11 22H2
  • Obsidian 1.1.9 沙箱仓库初始设置(仅安装Any Block插件1.3.1)

image

[Extra] 建议:相同一大类功能的选择器收归到同一个模块接口,以免用户难于选择。

1. 同大类的选择器收归到同一个模块接口,有助于用户使用

目前各选择器表现的很杂乱,如[list2table]、[2mdtable]、[2lt]、[2ut]、[2mdut]、[2tableT],其实就只是列表转表格这一功能的不同样式表现,但看上去就有六种功能之多,用户难以选择。

建议:相同一大类功能的选择器收归到同一个模块接口,同一大类下的各特殊样式用参数来表示。当用户参数输入不正确时调用默认参数来渲染。日后要增加新的样式时也无需新增加一个选择器,多一种参数即可。

像上面这些列表转表格都可全部收归为[2table],或用户使用更简洁的[2tb],然后通过参数来指定特殊样式,当参数不正确时调用默认接口来渲染,例如:

列表转表格 模块接口 用户默认入口 转树表格 转MD表格 转树形可折叠表格 ut方法 mdut方法 转置
当前 [list2table] [list2table] [2mdtable] [2lt] [2ut] [2mdut] [2tableT]
建议 [2table] [2tb]、[2tb()] [2tb]、[2tb()] [2tb(md)] [2tb(lt)] [2tb(ut)] [2tb(mdut)] [2tb(T)]

再如列表转各类图表,也可收归为一个接口:[2graph]:

列表转图 模块接口 用户默认入口 转流程图 转脑图
当前 [2mermaid] [2mermaid] [2mindmap]
建议 [2graph] [2gr]、[2gr()] [2gr(flow)] [2gr(mindmap)]

等等诸类。

2. 接口统一后的关键词有助于识别是否是选择器,有助于排除意外的错误渲染

接口统一之后,选择器就有了几个固定的关键词。这个也有助于识别是否是选择器,凡是[ ]里与关键词不匹配的,统统不是选择器。可以排除很多意外的错误渲染。

#2

#2 (comment)

[功能请求] scroll 对MD格式的表格无效

scroll 处理器对列表转化的表格有效,但对MD用|-----构建的表格无效。

scroll与MD表格 scroll语句 实时预览 阅读模式
没有空一行 无效 MD表格可正确渲染为表格 MD表格无法渲染为表格
有空一行 无效 MD表格可正确渲染为表格 MD表格可正确渲染为表格

测试环境:

  • Windows 11 22H2
  • Obsidian 1.1.9 沙箱仓库中仅安装Any Block插件1.3.1

scroll与MD表格没有空一行:

image

scroll与MD表格有空一行:

image

【建议增强】列分隔符除了`|`最好还能内置Inline Fields的`::`符号,这样`Key:: Value`值对方便直接渲染为表格来查看。

自定义分隔符我倒是有可能会做,让用户使用 | 符号之外的分隔符。而且有一个比较通用的解决方案:
使用文本处理器,将自定义符号转化为 | ,例如:

设置别名:[separator(, )] alias [replace(", ","| ")]
replace 就是一个简单的替换处理器,当然他不会真实修改你的源文件,只是处理渲染出来的文本

#14 (reply in thread)

chinese text on options

Hi, i wanted to know if it is normal that on the options menu there is chinese and enlish text, because i don't understand chinese at all and it will be really usefull if you translate them in english; if you want if you translate them in english i could also translate them in italian
image

[BUG] 会把用`[ ]`括住的且前后无字符的内容误识别为选择器

几天没关注,还没上Obsidian插件市场啊。

看到更新2.2了,顺手测试了下,提个bug:

  • 会把用[ ]括住的且前后无字符的内容误识别为选择器。或许选择器的识别应当用严格模式,对生效的选择器建立有效列表,凡不在有效列表内的都不是选择器。

测试环境:

  • Windows 11 22H2
  • Obsidian 1.1.16 沙箱仓库中仅安装Any Block插件2.2.0

image

[FR] list2markmap

使用了现在基于Mermaid的 list2mindmap ,感觉转化生成的mindmap好别扭,实在太丑了还不能像正常mindmap那样点击节点进行收起和展开。

看了github 里的markmap项目,markdown + mindmap ,这才是markdown里该有的mindmap,漂亮美观,也能正常节点进行收起和展开。Mermaid的 list2mindmap可以保留,建议新增一个基于markmap的mindmap转换处理器 list2markmap ,用于转换渲染为markmap。

markmap:
image

Mermaid mindmap:
image

[BUG] 阅读模式显示有问题

问题

该插件语法如下:

[...]
- Center
  - First
    - 1
    - 2
  - Second
    - 3
    - 4

但进入阅读模式后,[...] 没有被隐藏,如图:

环境

  • Windows 11 22H2
  • Obsidian 1.1.9
  • Any Block 1.2.4
  • Theme: Minimal Theme

Feature questions

Hey there, I have 4 questions based on the attachment.

A. Are there any options for table size or do I need to go with the CSS option and the heading ID ('#') API?

B. The short code still show in the reading view. I think this is a bug but if not is there a way to disable it from showing?

C. Is there an option/way to change or disable this text?

D. I don't work with PDF's often so I'm not sure if this is possible. Would it be possible for the export to handle the tab bar and still be interactive?

Thanks for the help!

Screenshot 2023-10-19 at 2 52 55 PM

[BUG] 分隔符`|`后边没空白符时无法识别为列分隔符

如下面例子中行2、行3的|后边没空白符,都会渲染为单行单列的表格,而不是期待的单行两列的表格。

测试环境:

  • Windows 11 22H2
  • Obsidian 1.1.16 沙箱仓库中仅安装Any Block插件2.2.0

[2lt]

  • 行1 | ab
  • 行2|ab
  • 行3 |ab
  • 行4| ab

image

[Bug] 实时预览模式无法遇览图片

具体情况

  • 插件语法用的是 [list2tab]
  • 图片语法用的是 Obsidian 的 Wiki 语法;
  • 其它插件语法目前还没尝试;
  • 只在 Obsidian 的实时预览模式有问题;
  • Code 如下:
     [list2tab]
     - 表格
       - ……
     - 思维导图
       - ……
     - 图片
       - ![[attachments/测试 2023.02.14-1.jpg]]
  • 结果如下图:

[reinforce] list2mdtable style optimize

list2mdtable 的行高较于 list2table会更高,原因:表格的内容是<p>标签,这个标签有行高。

那为什么自带的表格可以做到有样式的同时,行高较小?因为他不需要考虑换行。上下间隔可以设置为0。但如果换行了,上下间隔就会非常小,很拥挤。

可能会考虑的解决方案:

  • 方案1. 识别单元格内容是否会进行换行(是否有换行符),若是,则设置内容的上下margin为0。若不是,维持原状
  • 方案2. 使用first-child和last-child选择器,找到每个单元格的第一个和最后一个元素,分别清除top-margin和bottom-margin

[功能请求] addClass 对MD格式的表格无效

addClass处理器对列表转化的表格有效,但对MD用|-----构建的表格无效。(测试时仅仅很简单的用类给表格字体设了color: red;

addClass与MD表格 addClass语句 实时预览 阅读模式
没有空一行 无效 MD表格可正确渲染为表格 MD表格无法渲染为表格
有空一行 无效 MD表格可正确渲染为表格 MD表格可正确渲染为表格

测试环境:

  • Windows 11 22H2
  • Obsidian 1.1.9 沙箱仓库中仅安装Any Block插件1.3.1

addClass与MD表格没有空一行:
image

addClass与MD表格有空一行:
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.