gitextract_3csvcwq2/ ├── .all-contributorsrc ├── .claude/ │ └── commands/ │ ├── prepare-pr.md │ └── research-issue.md ├── .devcontainer/ │ └── devcontainer.json ├── .editorconfig ├── .eslintrc.json ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ ├── config.yml │ │ └── feature_request.yml │ └── workflows/ │ ├── ci.yml │ └── update-docs.yml ├── .gitignore ├── .husky/ │ └── pre-push ├── .vscode/ │ ├── launch.json │ ├── settings.json │ └── tasks.json ├── .yarnrc ├── CLAUDE.md ├── LICENSE ├── docs/ │ ├── .vscode/ │ │ ├── custom-tag-style.css │ │ ├── extensions.json │ │ ├── keybindings.json │ │ └── settings.json │ ├── 404.md │ ├── CNAME │ ├── Gemfile │ ├── LICENSE.txt │ ├── _config.yml │ ├── _layouts/ │ │ ├── foam.html │ │ ├── home.html │ │ ├── mathjax.html │ │ └── page.html │ ├── assets/ │ │ └── css/ │ │ └── style.scss │ ├── dev/ │ │ ├── about-docs.md │ │ ├── build-vs-assemble.md │ │ ├── code-of-conduct.md │ │ ├── contribution-guide.md │ │ ├── devcontainers.md │ │ ├── foam-file-format.md │ │ ├── good-first-task.md │ │ ├── mdx-by-default.md │ │ ├── proposals/ │ │ │ ├── foam-core.md │ │ │ ├── inclusion-of-notes.md │ │ │ ├── link-reference-definition-improvements.md │ │ │ ├── materialized-backlinks.md │ │ │ ├── roadmap.md │ │ │ └── wikilinks-in-foam.md │ │ ├── publishing-permissions.md │ │ ├── releasing-foam.md │ │ ├── testing.md │ │ ├── todo.md │ │ └── unlinked-references.md │ ├── inbox.md │ ├── index.md │ ├── principles.md │ └── user/ │ ├── features/ │ │ ├── backlinking.md │ │ ├── block-anchors.md │ │ ├── commands.md │ │ ├── custom-markdown-preview-styles.md │ │ ├── custom-snippets.md │ │ ├── daily-notes.md │ │ ├── embeds.md │ │ ├── foam-queries.md │ │ ├── graph-view.md │ │ ├── link-reference-definitions.md │ │ ├── note-properties.md │ │ ├── paste-images-from-clipboard.md │ │ ├── resource-filters.md │ │ ├── spell-checking.md │ │ ├── tags.md │ │ ├── templates.md │ │ └── wikilinks.md │ ├── frequently-asked-questions.md │ ├── getting-started/ │ │ ├── first-workspace.md │ │ ├── get-started-with-vscode.md │ │ ├── installation.md │ │ ├── keyboard-shortcuts.md │ │ ├── navigation.md │ │ ├── note-taking-in-foam.md │ │ ├── recommended-extensions.md │ │ └── sync-notes.md │ ├── index.md │ ├── publishing/ │ │ ├── generate-gatsby-site.md │ │ ├── math-support-with-katex.md │ │ ├── math-support-with-mathjax.md │ │ ├── publish-to-azure-devops-wiki.md │ │ ├── publish-to-github-pages.md │ │ ├── publish-to-github.md │ │ ├── publish-to-gitlab-pages.md │ │ ├── publish-to-netlify-with-eleventy.md │ │ ├── publish-to-vercel.md │ │ └── publishing.md │ ├── recipes/ │ │ ├── add-images-to-notes.md │ │ ├── automatic-git-syncing.md │ │ ├── automatically-expand-urls-to-well-titled-links.md │ │ ├── capture-notes-with-drafts-pro.md │ │ ├── capture-notes-with-shortcuts-and-github-actions.md │ │ ├── diagrams-in-markdown.md │ │ ├── export-to-pdf.md │ │ ├── generate-material-for-mkdocs-site.md │ │ ├── how-to-write-recipes.md │ │ ├── markup-converter.md │ │ ├── migrating-from-obsidian.md │ │ ├── migrating-from-onenote.md │ │ ├── migrating-from-roam.md │ │ ├── predefined-user-snippets.md │ │ ├── real-time-collaboration.md │ │ ├── recipes.md │ │ ├── search-for-notes.md │ │ ├── shows-image-preview-on-hover.md │ │ ├── take-notes-from-mobile-phone.md │ │ ├── web-clipper.md │ │ └── write-your-notes-in-github-gist.md │ └── tools/ │ ├── cli.md │ ├── foam-logging-in-vscode.md │ ├── orphans.md │ └── workspace-janitor.md ├── lerna.json ├── package.json ├── packages/ │ └── foam-vscode/ │ ├── .vscodeignore │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── __mocks__/ │ │ └── vscode.ts │ ├── esbuild.js │ ├── jest.config.js │ ├── package.json │ ├── src/ │ │ ├── ai/ │ │ │ ├── model/ │ │ │ │ ├── embedding-cache.ts │ │ │ │ ├── embeddings.test.ts │ │ │ │ ├── embeddings.ts │ │ │ │ └── in-memory-embedding-cache.ts │ │ │ ├── providers/ │ │ │ │ └── ollama/ │ │ │ │ ├── ollama-provider.test.ts │ │ │ │ └── ollama-provider.ts │ │ │ ├── services/ │ │ │ │ ├── embedding-provider.ts │ │ │ │ └── noop-embedding-provider.ts │ │ │ └── vscode/ │ │ │ ├── commands/ │ │ │ │ ├── build-embeddings.spec.ts │ │ │ │ ├── build-embeddings.ts │ │ │ │ └── show-similar-notes.ts │ │ │ └── panels/ │ │ │ └── related-notes.ts │ │ ├── core/ │ │ │ ├── .eslintrc.json │ │ │ ├── common/ │ │ │ │ ├── cancellation.ts │ │ │ │ ├── charCode.ts │ │ │ │ ├── errors.ts │ │ │ │ ├── event.ts │ │ │ │ ├── functional.ts │ │ │ │ ├── iterator.ts │ │ │ │ ├── lifecycle.ts │ │ │ │ ├── linkedList.ts │ │ │ │ ├── platform.ts │ │ │ │ ├── snippetParser.test.ts │ │ │ │ └── snippetParser.ts │ │ │ ├── janitor/ │ │ │ │ ├── convert-links-format.test.ts │ │ │ │ ├── convert-links-format.ts │ │ │ │ ├── generate-headings.test.ts │ │ │ │ ├── generate-headings.ts │ │ │ │ ├── generate-link-references.test.ts │ │ │ │ ├── generate-link-references.ts │ │ │ │ └── index.ts │ │ │ ├── model/ │ │ │ │ ├── foam.ts │ │ │ │ ├── graph.test.ts │ │ │ │ ├── graph.ts │ │ │ │ ├── location.ts │ │ │ │ ├── note.test.ts │ │ │ │ ├── note.ts │ │ │ │ ├── position.ts │ │ │ │ ├── provider.ts │ │ │ │ ├── range.ts │ │ │ │ ├── tags.test.ts │ │ │ │ ├── tags.ts │ │ │ │ ├── uri.test.ts │ │ │ │ ├── uri.ts │ │ │ │ ├── workspace.test.ts │ │ │ │ └── workspace.ts │ │ │ ├── query/ │ │ │ │ ├── dql.ts │ │ │ │ ├── html.ts │ │ │ │ ├── index.test.ts │ │ │ │ ├── index.ts │ │ │ │ └── js.ts │ │ │ ├── services/ │ │ │ │ ├── attachment-provider.ts │ │ │ │ ├── datastore.test.ts │ │ │ │ ├── datastore.ts │ │ │ │ ├── heading-edit.test.ts │ │ │ │ ├── heading-edit.ts │ │ │ │ ├── markdown-link.test.ts │ │ │ │ ├── markdown-link.ts │ │ │ │ ├── markdown-parser.test.ts │ │ │ │ ├── markdown-parser.ts │ │ │ │ ├── markdown-provider.test.ts │ │ │ │ ├── markdown-provider.ts │ │ │ │ ├── progress.ts │ │ │ │ ├── tag-edit.test.ts │ │ │ │ ├── tag-edit.ts │ │ │ │ ├── text-edit.test.ts │ │ │ │ └── text-edit.ts │ │ │ └── utils/ │ │ │ ├── cache.ts │ │ │ ├── core.ts │ │ │ ├── hashtags.ts │ │ │ ├── index.ts │ │ │ ├── log.ts │ │ │ ├── md.test.ts │ │ │ ├── md.ts │ │ │ ├── path.test.ts │ │ │ ├── path.ts │ │ │ ├── slug.ts │ │ │ ├── task-deduplicator.test.ts │ │ │ ├── task-deduplicator.ts │ │ │ └── utils.test.ts │ │ ├── dated-notes.spec.ts │ │ ├── dated-notes.ts │ │ ├── extension.ts │ │ ├── features/ │ │ │ ├── block-rename-provider.spec.ts │ │ │ ├── block-rename-provider.ts │ │ │ ├── commands/ │ │ │ │ ├── convert-links.spec.ts │ │ │ │ ├── convert-links.test.ts │ │ │ │ ├── convert-links.ts │ │ │ │ ├── copy-without-brackets.spec.ts │ │ │ │ ├── copy-without-brackets.ts │ │ │ │ ├── create-new-template.ts │ │ │ │ ├── create-note-from-template.spec.ts │ │ │ │ ├── create-note-from-template.ts │ │ │ │ ├── create-note.spec.ts │ │ │ │ ├── create-note.ts │ │ │ │ ├── index.ts │ │ │ │ ├── janitor.ts │ │ │ │ ├── open-daily-note-for-date.spec.ts │ │ │ │ ├── open-daily-note-for-date.ts │ │ │ │ ├── open-daily-note.ts │ │ │ │ ├── open-dated-note.ts │ │ │ │ ├── open-random-note.ts │ │ │ │ ├── open-resource.spec.ts │ │ │ │ ├── open-resource.ts │ │ │ │ ├── rename-tag.ts │ │ │ │ ├── search-tag.spec.ts │ │ │ │ ├── search-tag.ts │ │ │ │ ├── update-graph.ts │ │ │ │ └── update-wikilinks.ts │ │ │ ├── date-snippets.ts │ │ │ ├── document-decorator.spec.ts │ │ │ ├── document-decorator.ts │ │ │ ├── heading-rename-provider.spec.ts │ │ │ ├── heading-rename-provider.ts │ │ │ ├── hover-provider.spec.ts │ │ │ ├── hover-provider.ts │ │ │ ├── index.ts │ │ │ ├── link-completion.spec.ts │ │ │ ├── link-completion.ts │ │ │ ├── navigation-provider.spec.ts │ │ │ ├── navigation-provider.ts │ │ │ ├── panels/ │ │ │ │ ├── connections.spec.ts │ │ │ │ ├── connections.ts │ │ │ │ ├── dataviz/ │ │ │ │ │ └── index.ts │ │ │ │ ├── dataviz.spec.ts │ │ │ │ ├── dataviz.test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── notes-explorer.ts │ │ │ │ ├── orphans.ts │ │ │ │ ├── placeholders.ts │ │ │ │ ├── tags-explorer.spec.ts │ │ │ │ ├── tags-explorer.ts │ │ │ │ └── utils/ │ │ │ │ ├── base-tree-provider.ts │ │ │ │ ├── folder-tree-provider.ts │ │ │ │ ├── grouped-resources-tree-data-provider.spec.ts │ │ │ │ ├── grouped-resources-tree-data-provider.ts │ │ │ │ └── tree-view-utils.ts │ │ │ ├── preview/ │ │ │ │ ├── block-anchor-ids.test.ts │ │ │ │ ├── block-anchor-ids.ts │ │ │ │ ├── escape-wikilink-pipes.test.ts │ │ │ │ ├── escape-wikilink-pipes.ts │ │ │ │ ├── foam-query-renderer.test.ts │ │ │ │ ├── foam-query-renderer.ts │ │ │ │ ├── index.ts │ │ │ │ ├── remove-wikilink-references.ts │ │ │ │ ├── tag-highlight.spec.ts │ │ │ │ ├── tag-highlight.ts │ │ │ │ ├── wikilink-embed-web-extension.ts │ │ │ │ ├── wikilink-embed.spec.ts │ │ │ │ ├── wikilink-embed.test.ts │ │ │ │ ├── wikilink-embed.ts │ │ │ │ ├── wikilink-navigation.spec.ts │ │ │ │ └── wikilink-navigation.ts │ │ │ ├── refactor.spec.ts │ │ │ ├── refactor.test.ts │ │ │ ├── refactor.ts │ │ │ ├── tag-completion.spec.ts │ │ │ ├── tag-completion.ts │ │ │ ├── tag-rename-provider.ts │ │ │ ├── wikilink-diagnostics.spec.ts │ │ │ ├── wikilink-diagnostics.ts │ │ │ ├── workspace-symbol-provider.spec.ts │ │ │ ├── workspace-symbol-provider.test.ts │ │ │ └── workspace-symbol-provider.ts │ │ ├── services/ │ │ │ ├── cache.ts │ │ │ ├── config.ts │ │ │ ├── editor.spec.ts │ │ │ ├── editor.ts │ │ │ ├── errors.ts │ │ │ ├── js-template-loader.ts │ │ │ ├── js-template-sandbox.ts │ │ │ ├── logging.ts │ │ │ ├── note-creation-engine.test.ts │ │ │ ├── note-creation-engine.ts │ │ │ ├── note-creation-triggers.ts │ │ │ ├── note-creation-types.ts │ │ │ ├── template-loader.spec.ts │ │ │ ├── template-loader.ts │ │ │ ├── templates.spec.ts │ │ │ ├── templates.ts │ │ │ ├── variable-resolver.spec.ts │ │ │ ├── variable-resolver.ts │ │ │ └── watcher.ts │ │ ├── settings.spec.ts │ │ ├── settings.ts │ │ ├── test/ │ │ │ ├── run-tests.ts │ │ │ ├── suite-unit.ts │ │ │ ├── suite.ts │ │ │ ├── support/ │ │ │ │ ├── jest-setup-after-env.ts │ │ │ │ ├── jest-setup-e2e.ts │ │ │ │ ├── jest-setup.ts │ │ │ │ └── vscode-environment.js │ │ │ ├── test-datastore.test.ts │ │ │ ├── test-datastore.ts │ │ │ ├── test-utils-vscode.ts │ │ │ ├── test-utils.ts │ │ │ ├── vscode-mock-extensions.test.ts │ │ │ └── vscode-mock.ts │ │ ├── types.d.ts │ │ └── utils/ │ │ ├── commands.ts │ │ ├── globExpand.test.ts │ │ ├── globExpand.ts │ │ ├── template-frontmatter-parser.test.ts │ │ ├── template-frontmatter-parser.ts │ │ ├── vsc-utils.spec.ts │ │ └── vsc-utils.ts │ ├── static/ │ │ └── preview/ │ │ ├── block-anchor-scroll.js │ │ └── style.css │ ├── syntaxes/ │ │ └── injection.json │ ├── test-data/ │ │ ├── __migration__/ │ │ │ ├── Roam Document.md │ │ │ └── Second Roam Document.md │ │ ├── __scaffold__/ │ │ │ ├── Note being referred as angel.md │ │ │ ├── angel-reference.md │ │ │ ├── file-with-different-link-formats.md │ │ │ ├── file-with-explicit-and-implicit-link-references.md │ │ │ ├── file-with-explicit-link-references.md │ │ │ ├── file-with-only-frontmatter.md │ │ │ ├── file-without-title.md │ │ │ ├── first-document.md │ │ │ ├── index.md │ │ │ ├── second-document.md │ │ │ └── third-document.md │ │ ├── test-config/ │ │ │ ├── enable-plugins/ │ │ │ │ └── config.json │ │ │ ├── folder1/ │ │ │ │ └── config.json │ │ │ └── folder2/ │ │ │ └── config.json │ │ └── test-datastore/ │ │ ├── docs/ │ │ │ └── file-in-nm.md │ │ ├── file-a.md │ │ └── info/ │ │ ├── docs/ │ │ │ └── file-in-sub-nm.md │ │ └── file-b.md │ ├── tsconfig.json │ ├── types/ │ │ └── utils.d.ts │ └── webview-ui/ │ └── graph/ │ ├── build.cjs │ ├── index.html │ ├── package.json │ ├── src/ │ │ ├── components/ │ │ │ ├── control-panel.ts │ │ │ └── graph-canvas.ts │ │ ├── foam-graph.ts │ │ ├── lib/ │ │ │ ├── colors.ts │ │ │ ├── defaults.ts │ │ │ ├── graph-utils.test.ts │ │ │ ├── graph-utils.ts │ │ │ ├── painter.ts │ │ │ └── types.ts │ │ ├── main.css │ │ ├── main.ts │ │ └── protocol.ts │ ├── tsconfig.json │ └── vitest.config.ts ├── readme.md ├── tsconfig.base.json └── typos.toml