name: core imports: - https://get.silverbullet.md/global.plug.json syntax: Hashtag: firstCharacters: - "#" regex: "#[^#\\d\\s]+\\w+" className: sb-hashtag NakedURL: firstCharacters: - "h" regex: "https?:\\/\\/[-a-zA-Z0-9@:%._\\+~#=]{1,256}([-a-zA-Z0-9()@:%_\\+.~#?&=\\/]*)" className: sb-naked-url CommandLink: firstCharacters: - "{" regex: "\\{\\[[^\\]]+\\]\\}" className: sb-command-link NamedAnchor: firstCharacters: - "@" regex: "@[a-zA-Z\\.\\-\\/]+[\\w\\.\\-\\/]*" className: sb-named-anchor functions: clearPageIndex: path: "./page.ts:clearPageIndex" env: server events: - page:saved - page:deleted pageQueryProvider: path: ./page.ts:pageQueryProvider events: - query:page parseIndexTextRepublish: path: "./page.ts:parseIndexTextRepublish" events: - page:index_text reindexSpaceCommand: path: "./page.ts:reindexCommand" command: name: "Space: Reindex" reindexSpace: path: "./page.ts:reindexSpace" env: server deletePage: path: "./page.ts:deletePage" command: name: "Page: Delete" editorLoad: path: "./editor.ts:editorLoad" events: - plugs:loaded toggleReadOnlyode: path: "./editor.ts:toggleReadOnlyMode" command: name: "Editor: Toggle Read Only Mode" # Backlinks indexLinks: path: "./page.ts:indexLinks" events: - page:index linkQueryProvider: path: ./page.ts:linkQueryProvider events: - query:link renamePage: path: "./page.ts:renamePage" command: name: "Page: Rename" mac: Cmd-Alt-r key: Ctrl-Alt-r pageComplete: path: "./page.ts:pageComplete" events: - page:complete # Commands commandComplete: path: "./command.ts:commandComplete" events: - page:complete # Item indexing indexItem: path: "./item.ts:indexItems" events: - page:index itemQueryProvider: path: "./item.ts:queryProvider" events: - query:item # Navigation linkNavigate: path: "./navigate.ts:linkNavigate" command: name: Navigate To page key: Ctrl-Enter mac: Cmd-Enter clickNavigate: path: "./navigate.ts:clickNavigate" events: - page:click navigateHome: path: "./navigate.ts:navigateCommand" command: name: "Navigate: Home" key: "Alt-h" page: "" # Hashtags indexTags: path: "./tags.ts:indexTags" events: - page:index tagComplete: path: "./tags.ts:tagComplete" events: - page:complete tagProvider: path: "./tags.ts:tagProvider" events: - query:tag # Anchors indexAnchors: path: "./anchor.ts:indexAnchors" events: - page:index anchorComplete: path: "./anchor.ts:anchorComplete" events: - page:complete # Full text search # searchIndex: # path: ./search.ts:pageIndex # events: # - page:index # searchUnindex: # path: "./search.ts:pageUnindex" # env: server # events: # - page:deleted searchQueryProvider: path: ./search.ts:queryProvider events: - query:full-text searchCommand: path: ./search.ts:searchCommand command: name: "Search Space" key: Ctrl-Shift-f mac: Cmd-Shift-f readPageSearch: path: ./search.ts:readPageSearch pageNamespace: pattern: "🔍 .+" operation: readFile getPageMetaSearch: path: ./search.ts:getPageMetaSearch pageNamespace: pattern: "🔍 .+" operation: getFileMeta # Template commands insertPageMeta: path: "./template.ts:insertTemplateText" slashCommand: name: meta description: Insert a page metadata block value: | ```meta |^| ``` insertTask: path: "./template.ts:insertTemplateText" slashCommand: name: task description: Insert a task value: "* [ ] |^|" insertQuery: path: "./template.ts:insertTemplateText" slashCommand: name: query description: Insert a query value: | insertInclude: path: "./template.ts:insertTemplateText" slashCommand: name: include description: Include another page value: | insertInjectTemplate: path: "./template.ts:insertTemplateText" slashCommand: name: use description: Use a template value: | insertInjectCleanTemplate: path: "./template.ts:insertTemplateText" slashCommand: name: use-verbose description: Use a template (verbose mode) value: | insertHRTemplate: path: "./template.ts:insertTemplateText" slashCommand: name: hr description: Insert a horizontal rule value: "---" quickNoteCommand: path: ./template.ts:quickNoteCommand command: name: "Quick Note" key: "Alt-Shift-n" priority: 1 dailyNoteCommand: path: ./template.ts:dailyNoteCommand command: name: "Open Daily Note" key: "Alt-Shift-d" instantiateTemplateCommand: path: ./template.ts:instantiateTemplateCommand command: name: "Template: Instantiate Page" insertSnippet: path: ./template.ts:insertSnippet command: name: "Template: Insert Snippet" slashCommand: name: snippet description: Insert a snippet insertTodayCommand: path: "./template.ts:insertTemplateText" slashCommand: name: today description: Insert today's date value: "{{today}}" insertTomorrowCommand: path: "./template.ts:insertTemplateText" slashCommand: name: tomorrow description: Insert tomorrow's date value: "{{tomorrow}}" # Text editing commands quoteSelectionCommand: path: ./text.ts:quoteSelection command: name: "Text: Quote Selection" key: "Ctrl-Shift-." mac: "Cmd-Shift-." listifySelection: path: ./text.ts:listifySelection command: name: "Text: Listify Selection" numberListifySelection: path: ./text.ts:numberListifySelection command: name: "Text: Number Listify Selection" linkSelection: path: ./text.ts:linkSelection command: name: "Text: Link Selection" key: "Ctrl-Shift-k" mac: "Cmd-Shift-k" bold: path: ./text.ts:wrapSelection command: name: "Text: Bold" key: "Ctrl-b" mac: "Cmd-b" wrapper: "**" italic: path: ./text.ts:wrapSelection command: name: "Text: Italic" key: "Ctrl-i" mac: "Cmd-i" wrapper: "_" marker: path: ./text.ts:wrapSelection command: name: "Text: Marker" key: "Alt-m" wrapper: "==" # Plug manager updatePlugsCommand: path: ./plugmanager.ts:updatePlugsCommand command: name: "Plugs: Update" key: "Ctrl-Shift-p" mac: "Cmd-Shift-p" updatePlugs: path: ./plugmanager.ts:updatePlugs env: server getPlugHTTPS: path: "./plugmanager.ts:getPlugHTTPS" events: - get-plug:https getPlugGithub: path: "./plugmanager.ts:getPlugGithub" events: - get-plug:github getPlugGithubRelease: path: "./plugmanager.ts:getPlugGithubRelease" events: - get-plug:ghr # Debug commands parseCommand: path: ./debug.ts:parsePageCommand command: name: "Debug: Parse Document" showLogsCommand: path: ./debug.ts:showLogsCommand command: name: "Debug: Show Logs" key: "Ctrl-Alt-l" mac: "Cmd-Alt-l" events: - log:reload hideBhsCommand: path: ./debug.ts:hideBhsCommand command: name: "UI: Hide BHS" key: "Ctrl-Alt-b" mac: "Cmd-Alt-b" # Link unfurl infrastructure unfurlLink: path: ./link.ts:unfurlCommand command: name: "Link: Unfurl" key: "Ctrl-Shift-u" mac: "Cmd-Shift-u" contexts: - NakedURL unfurlExec: env: server path: ./link.ts:unfurlExec # Title-based link unfurl titleUnfurlOptions: path: ./link.ts:titleUnfurlOptions events: - unfurl:options titleUnfurl: path: ./link.ts:titleUnfurl events: - unfurl:title-unfurl # Random stuff statsCommand: path: ./stats.ts:statsCommand command: name: "Stats: Show" key: "Ctrl-s" mac: "Cmd-s" # Cloud pages readPageCloud: path: ./cloud.ts:readFileCloud pageNamespace: pattern: "💭 .+" operation: readFile getPageMetaCloud: path: ./cloud.ts:getFileMetaCloud pageNamespace: pattern: "💭 .+" operation: getFileMeta