Commit Graph
100 Commits
Author SHA1 Message Date
Zef Hemel 299309144e Removing reference to LLM use, moving back to "merit based" judgment 2026-05-14 08:37:26 +02:00
Zef Hemel c93dc03ca7 Journal robustness 2026-05-14 08:30:26 +02:00
Zef Hemel 946cf6d1db Fix e2e tests 2026-05-14 08:08:07 +02:00
Zef Hemel 2cabdb5f59 Fix: prefix rendering in queries on page load
Bonus: show a spinner while wigets are not ready to render yet.
2026-05-13 16:41:12 +02:00
Zef Hemel d99ba67092 Disable scroll-to-top on top bar
That was confusing and a bad UX idea
2026-05-12 17:06:32 +02:00
Zef Hemel 95ae979c54 Adjust journal e2e test to new journaling feature 2026-05-12 14:17:40 +02:00
Zef Hemel ca8405bb95 x-ray: show page attributes when hovering over the frontmatter section 2026-05-12 13:58:17 +02:00
Zef Hemel 60bc135479 Initial version of Journal library 2026-05-12 13:47:41 +02:00
Zef Hemel 0569a037b2 fix (hopefully) for video embedding in SB+ 2026-05-12 13:46:58 +02:00
Zef Hemel 4e23e7a4c6 fix: more caching fixes 2026-05-12 13:45:34 +02:00
Zef Hemel 772757ad27 Fix: widget cache invalidation again
Two hard problems in CS...
2026-05-12 11:51:26 +02:00
Zef Hemel a76f123d50 Expose page template creation as public API on template.* 2026-05-12 11:20:39 +02:00
Zef Hemel 06dfb01582 Add SB_DISABLE_SERVICE_WORKER mode 2026-05-12 10:08:59 +02:00
Zef Hemel 0ca442eb12 Fix: transform order on object indexing 2026-05-12 09:40:21 +02:00
Zef Hemel a96a86c0b5 Slightly optimize vertical jiggering by pre-computing all widgets on page load 2026-05-12 09:38:17 +02:00
Zef Hemel 32d0ee8f64 Merge branch 'main' of github.com:silverbulletmd/silverbullet 2026-05-11 16:55:41 +02:00
Zef Hemel 3532638612 'sb' auth encryption changed to no longer depend on hostname (which can
change)
2026-05-11 16:55:33 +02:00
Zef Hemel cecd56c267 Fix index range for data, space-lua and space-style blocks 2026-05-09 13:05:08 +02:00
Zef Hemel ece758e59d e2e test fix for x-ray 2026-05-09 12:39:00 +02:00
Zef Hemel 8222d47549 X-Ray docs 2026-05-09 12:32:44 +02:00
Zef Hemel aa0996bbd0 Add X-Ray editor lens
New "Editor: Toggle X-Ray" command underlines every ranged object the indexer produces and shows a YAML tooltip per indexing tag on hover.
2026-05-09 12:32:11 +02:00
Zef Hemel 10898f2580 Add index.previewProcessedObjects syscall
Read access to the index pipeline validation, multi-tag  expansion, tagDefinition.transform()).
2026-05-09 12:30:08 +02:00
Zef Hemel 09059aa18a Lint: support rich HTML tooltips
LintDiagnostic adds `messageHtml` (rendered into the hover
  tooltip) and `markClass` (added to the inline range mark)
2026-05-09 12:29:19 +02:00
Zef Hemel 3b22827aaf Removed note about mac signing (binaries are signed now) 2026-05-07 11:24:22 +02:00
Zef Hemel 09a318a5e9 Revert "Fix ref links in tables regression"
This reverts commit 15ccabc361.
2026-05-07 08:13:07 +02:00
Zef Hemel 0abd582200 Added change of "Navigate: Home" default keybinding to changelog 2026-05-07 07:41:39 +02:00
Zef Hemel 53968ce438 Merge branch 'main' of github.com:silverbulletmd/silverbullet 2026-05-06 16:46:09 +02:00
Zef Hemel 15ccabc361 Fix ref links in tables regression 2026-05-06 16:46:05 +02:00
Zef Hemel 21e7418db3 Move page and slash page templates to appropriate library page 2026-05-06 16:37:47 +02:00
Zef Hemel b21f2e9352 Fixes #1921 and #1557 2026-05-06 16:22:39 +02:00
Zef Hemel ba3910c702 Fixed docs typo 2026-05-06 15:13:26 +02:00
Zef Hemel a626453262 Offer API to external apps (e.g. Tauri) to properly support drag & dropping of files 2026-05-06 15:06:18 +02:00
Zef Hemel ec2df68944 2.7.0 2026-05-06 13:20:25 +02:00
Zef Hemel 2d45929ea8 Fixes #1966 2026-05-06 13:14:14 +02:00
Zef Hemel a28c661d24 refactor: config: rename ui order to priority (consistency with rest of SB), flip sort direction
Also: docs
2026-05-03 16:06:45 +02:00
Zef Hemel 3c3e7afbb9 Fixes #1067 2026-05-03 07:57:00 +02:00
Zef Hemel f24ee538a8 fix: config correct default value handling 2026-05-03 07:55:24 +02:00
Zef Hemel c96651d0b2 fix lint... 2026-04-30 19:57:35 +02:00
Zef Hemel a2a2960d02 docs tweaks 2026-04-30 19:52:57 +02:00
Zef Hemel 6831fd7177 untrack sb binary 2026-04-30 19:52:30 +02:00
Zef Hemel 5080cf9b50 anchor documentation 2026-04-30 19:51:49 +02:00
Zef Hemel dc6ee80ec8 anchor-aware refs in taskItem/itemItem/paragraphItem templates 2026-04-30 19:47:47 +02:00
Zef Hemel 46e8dcf112 syntax highlight for anchros 2026-04-30 19:47:03 +02:00
Zef Hemel 25256307fb plug: register anchor functions on index plug events 2026-04-30 19:46:34 +02:00
Zef Hemel b05b6f4652 editor: anchor autocomplete and lint rules 2026-04-30 19:46:01 +02:00
Zef Hemel 60c2ecf4d8 editor: navigate, toggle, and render anchor refs 2026-04-30 19:44:30 +02:00
Zef Hemel facf5cc141 index: page-level $anchor via frontmatter $ref 2026-04-30 19:38:35 +02:00
Zef Hemel be0e1c60ca Add anchor resolving through space.readRef 2026-04-30 19:35:24 +02:00
Zef Hemel cb36d44634 index: resolveAnchor function and syscall wrapper 2026-04-30 19:34:13 +02:00
Zef Hemel 4e6a855854 fix: correct argument order in index.getObjectByRef syscall 2026-04-30 18:03:18 +02:00
Zef Hemel 4e4eb58a21 index: emit dedicated anchor records 2026-04-30 18:02:21 +02:00
Zef Hemel 05d3ba9333 anchor extraction and per-type indexer wiring
Paragraphs, list items, tasks, headers, and fenced-data blocks now adopt the anchor name as the host's `ref` field when present. For fenced-data blocks the anchor comes from a YAML  field named `$ref:` (the markdown anchor syntax doesn't apply inside YAML).
2026-04-30 17:57:10 +02:00
Zef Hemel 3670016408 anchor: parse $name as NamedAnchor inline node 2026-04-30 17:54:41 +02:00
Zef Hemel ea44937863 anchors: extend Ref grammar with anchor variant ($anchor) 2026-04-30 17:52:21 +02:00
Zef Hemel d566a00336 Add 'sb' to .gitignore 2026-04-30 10:59:53 +02:00
Zef Hemel 70f100f066 Fixes #1952 2026-04-30 10:59:53 +02:00
Zef Hemel 81dbdae857 Fixes #1955 2026-04-30 10:59:53 +02:00
Zef Hemel 0b5cf7c6af Make Configuration UI look more reasonable on mobile devices 2026-04-28 09:07:44 +02:00
Zef Hemel a7c18cfa78 Renamed silverbullet-cli -> sb
+ CHANGELOG updates
2026-04-27 16:56:21 +02:00
Zef Hemel c33b3edd41 Fix "Save & Apply" on hover for configuration management 2026-04-26 20:50:32 +02:00
Zef Hemel 4149fbc287 Fixes #1936 2026-04-26 17:31:53 +02:00
Zef Hemel f76060fb08 fix tests 2026-04-26 17:24:37 +02:00
Zef Hemel 5833919faf More robust traversals in case of invalid markdown trees 2026-04-26 17:22:29 +02:00
Zef Hemel 4d38ca3a22 Don't silenty fail on auth config file corruption 2026-04-24 16:34:10 +02:00
Zef Hemel 563b20eece Security: set auth cookie security flags 2026-04-24 16:06:27 +02:00
Zef Hemel e4ffb660c0 Limit restriction on name attribute to just #meta/library pages 2026-04-24 13:55:28 +02:00
Zef Hemel 1763b07c8f Remove indent/outdent key bindings clashing with browser forward/backward 2026-04-23 15:54:21 +02:00
Zef Hemel ccc917c55d Fix makefile for windows 2026-04-23 15:29:32 +02:00
Zef Hemel d0cb8e6c0e Menus: refactoring and renaming 2026-04-23 13:32:00 +02:00
Zef Hemel 1e5d35ab8d Simplified navigate home keyboard shortcut 2026-04-23 10:21:50 +02:00
Zef Hemel 47f9d9987c Annotated existing commands with menu placements 2026-04-23 10:16:49 +02:00
Zef Hemel 6dec86d236 Add initial schema support for native file menu bindings 2026-04-23 09:31:04 +02:00
Zef Hemel c5d9a1b6fe Better debugging info in case of headless Chrome boot failure 2026-04-22 21:00:57 +02:00
Zef Hemel 8b241f9448 Rebranding LIQ to SLIQ! 2026-04-22 20:54:43 +02:00
Zef Hemel 6f5d3c776f fix: restrict Ctrl-v page-down binding to macOS 2026-04-22 14:23:07 +02:00
Zef Hemel aca71e2621 Fix: re-enable some features on the website
Accidentally disabled this why testing the configuration manager, whoopsies.
2026-04-22 08:58:33 +02:00
Zef Hemel 4f8dbe209f Remove unnecessary comment in configuration manager website copy 2026-04-21 21:00:03 +02:00
Zef Hemel 88428d2111 Key bindings UI: "Filter commands" instead of "Search commands"
Consistency people
2026-04-21 17:09:54 +02:00
Zef Hemel 8ccd6b2add Docs: configuration manager + CHANGELOG
Documents the Configuration Manager and Libraries tab, removes Library Manager page, rewrites the plug-installation section of the v1 migration guide, tighten the Plugs manifest reference, and updates in the Edge changelog.
2026-04-21 17:00:06 +02:00
Zef Hemel 5a9f9ed101 Std Library: remove plug-manager and legacy Library Manager
Drop the old plug-manager plug and the Space-Lua Library Manager, all superseded by the Libraries tab in the configuration manager.

Pass fallback values to config.get(...) in the Std widgets so  TOC / linked mentions / linked tasks keep rendering on a fresh  space where schema defaults haven't been indexed yet.
2026-04-21 16:59:00 +02:00
Zef Hemel 74173af525 Configuration Manager: Libraries tab
Add a Libraries tab to the configuration manager covering installed libraries, installable libraries (from repositories),  repositories themselves, and detection of "rogue" plugs installed outside a library.

Rename the managed-block marker from "configuration-ui" to"configuration-manager" to match the plug name.
2026-04-21 16:56:55 +02:00
Zef Hemel 556404565e Client: portal notification panel to document.body
Render .sb-notifications via createPortal so notifications escape the top-bar stacking context and can overlay modal panels.
2026-04-21 16:55:24 +02:00
Zef Hemel b207e8a06e Client: extract prettifyShortcut into shared lib
Move isMacLike and prettifyShortcut out of command_palette into plug-api/lib/shortcut so the configuration manager's shortcuts UI can render identical key notation.
2026-04-21 16:54:24 +02:00
Zef Hemel 54da633d06 Move "Plugs: Reload" command to editor
Move `Plugs: Reload` from the plug-manager plug into the editor plug  alongside the other built-in client commands, ahead of removing plug-manager entirely.
2026-04-21 16:53:45 +02:00
Zef Hemel a446014e2c Fix: accidentally pulled in a huge amount of codemirror code by not using the parseMarkdown syscall in outline ops, whoopsies
Reduces the editor plug bundle size by about 600K
2026-04-21 16:52:50 +02:00
Zef Hemel a34c2d3ac9 Plugs: per-path load/unload syscalls
Track the source path on each Plug and rename the sandbox-factory "cacheKey" to "path" to reflect what it actually is. Fold the one-liner web_worker_sandbox helper into a WorkerSandbox.forPath factory and add system.loadPlug / system.unloadPlug syscalls so individual plugs can be (re)loaded by path — foundation for the upcoming configuration-manager libraries UI.
2026-04-21 16:51:33 +02:00
Zef Hemel e226bfd685 Client: add editor.focus syscall 2026-04-21 16:50:34 +02:00
Zef Hemel 15b1f37734 Potentially breaking CSS change for the themers: .sb-notifications is now elsewhere in the DOM
Goal: make it always appear above even modal windows
2026-04-21 16:29:38 +02:00
Zef Hemel 795c248a0c Set some sensible default (fallback) config options when defaults are not yet available (initial index) 2026-04-21 13:06:36 +02:00
Zef Hemel f1394f3bc0 Expose content type also via X-Content-Type header 2026-04-21 10:30:11 +02:00
Zef Hemel 42bbcf5f7c lint fixes 2026-04-21 10:16:05 +02:00
Zef Hemel 8d8bb46649 Expanded plug dev guide
Split the Plug Development page into a quick-start with more subtopics: Architecture (loading, sandboxing, execution), Reference (manifests, hooks, syscalls), and Distribution and Testing.

Swap the Excalidraw architecture embed for a Mermaid diagram, and update the website Dockerfile to ship the Mermaid plug instead of Excalidraw.
2026-04-21 10:11:24 +02:00
Zef Hemel 1a0cb49fd7 Server: stop seeding CONFIG.md in empty spaces
The configuration-manager plug now creates and owns the managed  CONFIG.md block on first save, so the server no longer needs to  inject a template. Client also gracefully handles the absense of CONFIG.
2026-04-21 10:09:28 +02:00
Zef Hemel 88c3f00b7d First iteration of the new: configuration-manager plug
Adds the `Configuration: Open` command (Ctrl/Cmd-,) (and `Configuration: Key Bindings` also) backed by a Preact UI compiled through the new plug build steps. Supports editing scalar, enum, password, and object fields against the registered JSON schemas, plus a shortcuts tab with a chord recorder that handles multi-stroke sequences and multiple alternate bindings per command.

Edits are written back into a managed `space-lua` block (created  from template/CONFIG.md on first save).
2026-04-21 10:08:27 +02:00
Zef Hemel d25e98b932 Std Library: wire schema defaults and UI categories
Registers UI categories and moves default values from `config.set` blocks into schema `default` fields, so the configuration manager can drive everything directly from the schema. Only `actionButtons`, whose entries hold function bodies, stays in `config.set`.

Also adds a schema for `github.*` settings so the integration shows  up in the configuration UI (later commit)
2026-04-21 10:06:52 +02:00
Zef Hemel 21ce019ede Editor: move built-in commands from plug to client
Cursor motions, selection, delete, undo/redo, completion, and the various navigator/palette openers are registered directly on the CommandHook from client code, eliminating the async plug round-trip that was racing Enter/Backspace handling in some cases (especially e2e tests).

CommandHook gains `registerCommand` and a shared `mergeCommand`  helper so built-ins, plug commands.
2026-04-21 10:05:38 +02:00
Zef Hemel dcc5f8992c Plug compiler: add "build" steps (esbuild/sass/copy)
Adds an optional `build:` section to plug manifests, running esbuild,  sass, or copy transforms before asset bundling. Enables plugs to ship bundled TSX/SCSS UIs (used by the upcoming configuration-manager plug).
2026-04-21 10:04:34 +02:00
Zef Hemel 0c9c07b3e6 Config: schema defaults, UI categories and annotations
`config.define` now propagates schema `default` values, so features like smart quotes no longer need their own fallback constants.

Adds `defineCategory` / `getCategories` for the upcoming configuration  manager UI.
2026-04-21 10:03:40 +02:00
Zef Hemel efd827b721 Implements #510
Extracts almost all codemirror keyboard shortcuts into proper SB
commands so they can be rebound

Bonus: renders prettier versions of keyboard shortcuts on Mac
2026-04-17 16:45:11 +02:00
Zef Hemel ea2ad9a732 Add actionButton.define "command" attribute
This automatically triggers a command bound to an actionButton, and
notably also shows the keyboard shortcut connected to it (if any)
2026-04-16 14:23:54 +02:00