Skip to content

Latest commit

 

History

History
69 lines (42 loc) · 4.51 KB

README-CN.md

File metadata and controls

69 lines (42 loc) · 4.51 KB

Obsidian Code Link

在 Obsidian 中展示代码,只展示你感兴趣的部分!

main

  • 像链接笔记一样链接代码文件,并且你可以预览它们的内容
  • 通过符号搜索/标签搜索/代码大纲(或者你想叫它什么都可以), 你可以直接链接到代码文件中的特定符号(例如类、函数、或者类中的方法)。

通过使用符号创建链接,你可以在笔记中引用你感兴趣的代码部分,避免其他内容的干扰。这在学习复杂的开源项目时特别有用。

⚠️注意

  • 为了能够使用内部链接链接到代码文件,请确保设置 - 文件和链接 - 检测所有类型的文件选项已启用。
  • 嵌入式预览仅在阅读视图中有效,所以如果你发现预览没有显示,请按 Ctrl/Cmd + E 切换到阅读视图。
  • 在执行标签搜索之前,请确保设置 - 代码链接 - 启用标签搜索选项已启用,并且必要的组件已下载(通过点击下载必要组件按钮)。

使用方法

  1. 在 Obsidian 仓库中创建一个文件夹,用于存储导入的代码项目,路径默认为 projects
  2. 打开命令面板,运行 Code Link: Import project,选择要导入的项目文件夹(详见下面的介绍),然后项目将被导入到你在步骤 1 中创建的文件夹中。
  3. 打开编辑器,像链接笔记一样链接到代码文件,然后就可以在编辑器中预览代码了。

代码预览

支持代码文件的悬停预览和嵌入式预览。

在嵌入式预览下方列出了对所引用的代码文件的链接,以及当前符号的标签路径(例如,如果你链接到一个名为 methodB 的方法,它在一个名为 ClassA 的类中,标签路径是 class ClassA > def methodB)。当你点击标签路径中的符号时,嵌入式预览将临时将显示的代码内容切换到该符号的内容。

标签搜索

将光标放在代码链接的后面(例如 [[main.py]]|,其中 | 是光标)将触发标签搜索。当在标签搜索中选择了指定的符号时,代码链接将被替换。从该位置处输入内容可以筛选tag search中的条目,如 [[main.py]]def 将会筛选出条目中所有包含 def 关键字的条目。注意输入的内容需要紧跟在 ]] 之后。

⚠️注意:插件安装后,若标签搜索无法正常触发,尝试关闭并重新打开Obsidian。

此功能是通过 TreeSitterzed 编辑器的 .scm 文件 实现的。当前支持的语言包括 C, C++, JavaScript, TypeScript, Rust, Go, Python。如果你希望支持更多的语言,请考虑模仿现有的 .scm 文件编写其他语言的 tree-sitter 查询,并提交一个Pull Request。感激不尽!

将项目导入 Obsidian 仓库

Obsidian 仅允许链接到仓库内的文件,所以你需要将项目导入到你的仓库中才能链接到它。

要导入项目,打开命令面板,运行 Code Link: Import project,然后选择要导入的项目文件夹。项目将被导入到 projects 文件夹中。

请注意,“导入”意味着创建符号链接(或者在 Windows 中指文件快捷方式)到原始文件。符号链接只是对原始文件的引用,所以如果你删除了原始文件,符号链接将会失效。