Docs overhaul
parent
6510f06e0e
commit
b501b51a56
|
@ -0,0 +1,42 @@
|
||||||
|
Attributes can contribute additional [[Metadata]] to various entities:
|
||||||
|
|
||||||
|
* Pages
|
||||||
|
* Items
|
||||||
|
* Tasks
|
||||||
|
|
||||||
|
## Syntax
|
||||||
|
The syntax for attributes in inspired by [Obsidian’s Dataview](https://blacksmithgu.github.io/obsidian-dataview/annotation/add-metadata/) plugin, as well as [LogSeq](https://logseq.com/)‘s:
|
||||||
|
|
||||||
|
```
|
||||||
|
[attributeName:: value]
|
||||||
|
```
|
||||||
|
|
||||||
|
Attribute names need to be alphanumeric. Values are interpreted as text by default, unless they take the shape of a number, in which case they’re parsed as a number.
|
||||||
|
|
||||||
|
Multiple attributes can be attached to a single entity, e.g. like so:
|
||||||
|
|
||||||
|
* Some item [attribute1:: sup][attribute2:: 22]
|
||||||
|
|
||||||
|
And queried like so:
|
||||||
|
|
||||||
|
<!-- #query item where page = "Attributes" and name =~ /Some item/ -->
|
||||||
|
|name |attribute1|attribute2|page |pos|
|
||||||
|
|---------|---|--|----------|---|
|
||||||
|
|Some item|sup|22|Attributes|569|
|
||||||
|
<!-- /query -->
|
||||||
|
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
Depending on where these attributes appear, they attach to different things. For instance here:
|
||||||
|
|
||||||
|
[pageAttribute:: hello]
|
||||||
|
|
||||||
|
The attribute attaches to a page, whereas
|
||||||
|
|
||||||
|
* Item [itemAttribute:: hello]
|
||||||
|
|
||||||
|
it attaches to an item, and finally:
|
||||||
|
|
||||||
|
* [ ] Task [taskAttribute:: hello]
|
||||||
|
|
||||||
|
Here it attaches to a task.
|
|
@ -6,11 +6,13 @@ release.
|
||||||
## Next
|
## Next
|
||||||
* [Mobile view improvements](https://github.com/silverbulletmd/silverbullet/pull/452) for tables and directives (vertical spacing) by [vuau](https://github.com/vuau)
|
* [Mobile view improvements](https://github.com/silverbulletmd/silverbullet/pull/452) for tables and directives (vertical spacing) by [vuau](https://github.com/vuau)
|
||||||
* Internal work on [color theming](https://github.com/silverbulletmd/silverbullet/pull/455) by [TheLD6978](https://github.com/TheLD6978)
|
* Internal work on [color theming](https://github.com/silverbulletmd/silverbullet/pull/455) by [TheLD6978](https://github.com/TheLD6978)
|
||||||
* **Bug fix**: Renaming of pages now works again on iOS
|
* Re-implemented fuzzy search in the page picker, command palette etc. with [Fuse.js](https://www.fusejs.io/) — let’s see if people like this better.
|
||||||
* Backlinks (as queried via the `link` data source) now contains richer data, namely `inDirective` (if the link appears in the context of a directive) and `alias` (if the backlink has an alias name). This also fixes not updating page references inside directives. This introduced a backwards incompatible data. To update your indexes, please run {[Space: Reindex]} on your clients (once).
|
* Backlinks (as queried via the `link` data source) now contains richer data, namely `inDirective` (if the link appears in the context of a directive) and `alias` (if the backlink has an alias name). This also fixes not updating page references inside directives. This introduced a backwards incompatible data. To update your indexes, please run {[Space: Reindex]} on your clients (once).
|
||||||
|
* Initial work on [[Attributes]] (inline [[Metadata]]) such as this [importance:: high]
|
||||||
* Added {[Debug: Reset Client]} command that flushes the local databases and caches (and service worker) for debugging purposes.
|
* Added {[Debug: Reset Client]} command that flushes the local databases and caches (and service worker) for debugging purposes.
|
||||||
* Added {[Editor: Center Cursor]} command.
|
* Added {[Editor: Center Cursor]} command.
|
||||||
* New template helper `replaceRegexp`, see [[🔌 Core/Templates@vars]]
|
* New template helper `replaceRegexp`, see [[🔌 Core/Templates@vars]]
|
||||||
|
* **Bug fix**: Renaming of pages now works again on iOS
|
||||||
* Big internal code refactor
|
* Big internal code refactor
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
Frontmatter is a common format to attach additional metadata (data about data) to markdown documents.
|
Frontmatter is a common format to attach additional metadata (data about data) to markdown documents.
|
||||||
|
|
||||||
|
In SilverBullet there are multiple ways to attach [[Metadata]] to a page, frontmatter is one of them.
|
||||||
|
|
||||||
You create it by starting your markdown document with `---` followed by [[YAML]] encoded attributes and then ending with `---` again. Followed by the regular body of your document.
|
You create it by starting your markdown document with `---` followed by [[YAML]] encoded attributes and then ending with `---` again. Followed by the regular body of your document.
|
||||||
|
|
||||||
Here is an example:
|
Here is an example:
|
||||||
|
|
|
@ -134,7 +134,7 @@ You will need three things:
|
||||||
* A debit/credit card 💳.
|
* A debit/credit card 💳.
|
||||||
* A domain name (you can buy it on [Njalla](https://njal.la/) 😉, your real name will not be shown if someone uses whois tools).
|
* A domain name (you can buy it on [Njalla](https://njal.la/) 😉, your real name will not be shown if someone uses whois tools).
|
||||||
|
|
||||||
We assume you've already [signed up to Cloudflare](https://www.cloudflare.com/), if not you can go and do it now, it's free but you'll need to add a real debit/credit card to have access to the tunnels and zero access. If you don't want to do that, you can use **alternatives** like [Caddy](https://caddyserver.com/docs/quick-starts/reverse-proxy) or [Nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) for reverse proxy and [Authelia](https://www.authelia.com/) or you can use the [BasicAuth build-in](https://silverbullet.md/Authentication) for authentication.
|
We assume you've already [signed up to Cloudflare](https://www.cloudflare.com/), if not you can go and do it now, it's free but you'll need to add a real debit/credit card to have access to the tunnels and zero access. If you don't want to do that, you can use **alternatives** like [Caddy](https://caddyserver.com/docs/quick-starts/reverse-proxy) or [Nginx](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/) for reverse proxy and [Authelia](https://www.authelia.com/) or you can use the [basic authentication built-in](https://silverbullet.md/Authentication) for authentication.
|
||||||
|
|
||||||
## Add your Site/Domain Name to Cloudflare
|
## Add your Site/Domain Name to Cloudflare
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,7 @@ You have two options to install and run SilverBullet as a server:
|
||||||
In either case, check the notes [[@tls|on using TLS]].
|
In either case, check the notes [[@tls|on using TLS]].
|
||||||
|
|
||||||
## Installation via Deno
|
## Installation via Deno
|
||||||
|
$deno
|
||||||
This consists of two steps (unless Deno is already installed — in which case we’re down to one):
|
This consists of two steps (unless Deno is already installed — in which case we’re down to one):
|
||||||
|
|
||||||
1. [Install Deno](https://deno.land/manual/getting_started/installation) (if you’re using a Raspberry Pi, follow [[Raspberry Pi Installation]]-specific instructions)
|
1. [Install Deno](https://deno.land/manual/getting_started/installation) (if you’re using a Raspberry Pi, follow [[Raspberry Pi Installation]]-specific instructions)
|
||||||
|
@ -46,8 +47,15 @@ silverbullet upgrade
|
||||||
And restart SilverBullet. You should be good to go.
|
And restart SilverBullet. You should be good to go.
|
||||||
|
|
||||||
## Installing SilverBullet with Docker
|
## Installing SilverBullet with Docker
|
||||||
|
$docker
|
||||||
|
There is a [docker image on docker hub](https://hub.docker.com/r/zefhemel/silverbullet). The image comes in two flavors:
|
||||||
|
|
||||||
There is a [docker image on docker hub](https://hub.docker.com/r/zefhemel/silverbullet). To use it, first create a volume to keep your space (markdown) files:
|
* 64-bit Intel
|
||||||
|
* 64-bit ARM (e.g. for Raspberry Pis and Macs)
|
||||||
|
|
||||||
|
There is no 32-bit version of Deno, and therefore we cannot offer a 32-bit version of SilverBullet either.
|
||||||
|
|
||||||
|
To use the docker container, first create a volume to keep your space (markdown) files:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
docker volume create myspace
|
docker volume create myspace
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
A full manual is still missing, but this is an attempt to give pointers on topics you may be interested in.
|
||||||
|
|
||||||
|
## Keeping up-to-date
|
||||||
|
* [[CHANGELOG]]: what’s new in SilverBullet
|
||||||
|
|
||||||
|
## Installation and deployment
|
||||||
|
* [[Install]]
|
||||||
|
* [[Deployments]]: various deployment options
|
||||||
|
* [[Install/Deno Deploy|Deploying on Deno Deploy with S3]] (experimental)
|
||||||
|
* [[Authelia]]: configuring SilverBullet with [Authelia](https://www.authelia.com/) authentication.
|
||||||
|
* [[Guide/Deployment/Cloudflare and Portainer]]: configuring SilverBullet with a Cloudflare tunnel, portainer and optionall Cloudflare zero trust authentication.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
* [[Markdown]]
|
||||||
|
* [[Markdown/Syntax Highlighting]]
|
||||||
|
* [[Markdown/Code Widgets]]
|
||||||
|
* [[Metadata]]
|
||||||
|
* [[Frontmatter]]
|
||||||
|
* [[Attributes]]
|
||||||
|
* [[🔌 Directive|Directives]]
|
||||||
|
* [[🔌 Directive/Query]]
|
||||||
|
* [[SETTINGS]]: A few settings you can tweak
|
|
@ -0,0 +1,29 @@
|
||||||
|
Metadata is data about data. There are a few entities you can add meta data to:
|
||||||
|
|
||||||
|
* **page**: Pages have a default set of meta data built-in, but this can be expanded through mechanisms described below. The available metadata for a page is:
|
||||||
|
* `name`: The full name of the page
|
||||||
|
* `lastModified`: a timestamp (in ms since 1970-01-01) of when the page was last modified
|
||||||
|
* `perm`: either `ro` (read-only) or `rw`: this determines whether the editor opens in read-write or read-only mode.
|
||||||
|
* `contentType`: for pages always `text/markdown`
|
||||||
|
* `size`: the size of the file in bytes
|
||||||
|
* `tags`: A list of tags used in the top-level of the page (if any)
|
||||||
|
* **item**: Every list item appearing in a numbered, or unordered list is indexed and contains the following default set of metadata:
|
||||||
|
* `name`: The full content of the item minus attributes (see later)
|
||||||
|
* `page`: The page the item appears in
|
||||||
|
* `pos`: The offset (number of characters from the beginning of the page) where the item starts
|
||||||
|
* `tags`: A list of tags used in the item (if any)
|
||||||
|
* **task**: Every task defined in the space using the `* [ ] Task name` syntax
|
||||||
|
* `name`: The full task name/description
|
||||||
|
* `done`: Whether the task has been marked as done
|
||||||
|
* `page`: The page where the task appears
|
||||||
|
* `pos`: The offset (number of characters from the beginning of the page) where the item starts
|
||||||
|
* `tags`: A list of tags used in the task (if any)
|
||||||
|
* **tag**: Every tag used in the space
|
||||||
|
* `name`: The name of the tag (without `#`)
|
||||||
|
* `freq`: The frequency of the use of the tag
|
||||||
|
|
||||||
|
In addition, this metadata can be augmented in a few additional ways:
|
||||||
|
|
||||||
|
* [[🔌 Core/Tags]]: adds to the `tags` attribute
|
||||||
|
* [[Frontmatter]]: at the top of pages, a [[YAML]] encoded block can be used to define additional attributes to a page
|
||||||
|
* [[Attributes]]
|
|
@ -1,45 +0,0 @@
|
||||||
There are currently no official 64-bit ARM Linux builds available of [Deno](https://deno.land/). However, there are [unofficial ones](https://github.com/LukeChannings/deno-arm64). Here’s how to set that up.
|
|
||||||
|
|
||||||
> **Note** Compatibility note
|
|
||||||
> This only works on **64-bit** versions of Linux. 32-bit is currently unsupported by Deno.
|
|
||||||
|
|
||||||
For the record, this was tested on a 64-bit Ubuntu server install on a Raspberry Pi 4. But it should work on any 64-bit Linux.
|
|
||||||
|
|
||||||
## Installing Deno
|
|
||||||
```shell
|
|
||||||
# Make sure you have unzip installed
|
|
||||||
$ apt install unzip
|
|
||||||
# Download a recent Deno build
|
|
||||||
$ wget https://github.com/LukeChannings/deno-arm64/releases/download/v1.29.1/deno-linux-arm64.zip
|
|
||||||
# Deno will use this directory for other binaries, so let's put Deno there too
|
|
||||||
$ mkdir -p ~/.deno/bin
|
|
||||||
$ cd ~/.deno/bin
|
|
||||||
$ unzip ~/deno-linux-arm64.zip
|
|
||||||
```
|
|
||||||
|
|
||||||
That’s it. You should now be able to run `~/.deno/bin/deno` just fine.
|
|
||||||
|
|
||||||
Add `~/.deno/bin` to PATH, e.g. in `~/.bashrc` add:
|
|
||||||
|
|
||||||
```
|
|
||||||
export PATH=$PATH:~/.deno/bin
|
|
||||||
```
|
|
||||||
|
|
||||||
Then to verify:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ source ~/.bashrc
|
|
||||||
$ deno -V
|
|
||||||
```
|
|
||||||
|
|
||||||
Then, just follow the standard [[SilverBullet]] installation instructions:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
$ deno install -f --name silverbullet -A --unstable https://get.silverbullet.md
|
|
||||||
$ mkdir ~/Notes
|
|
||||||
$ silverbullet ~/Notes --hostname 0.0.0.0
|
|
||||||
```
|
|
||||||
|
|
||||||
And access it on `http://ip-of-pi:3000`
|
|
||||||
|
|
||||||
Have fun!
|
|
|
@ -28,8 +28,4 @@ spaceIgnore: |
|
||||||
dist
|
dist
|
||||||
largefolder
|
largefolder
|
||||||
*.mp4
|
*.mp4
|
||||||
|
|
||||||
# Federation
|
|
||||||
#federate:
|
|
||||||
#- someserver
|
|
||||||
```
|
```
|
||||||
|
|
|
@ -2,7 +2,7 @@ SilverBullet is an extensible, [open source](https://github.com/silverbulletmd/s
|
||||||
|
|
||||||
You’ve been told there is _no such thing_ as a [silver bullet](https://en.wikipedia.org/wiki/Silver_bullet). You were told wrong.
|
You’ve been told there is _no such thing_ as a [silver bullet](https://en.wikipedia.org/wiki/Silver_bullet). You were told wrong.
|
||||||
|
|
||||||
Before we get to the nitty gritty, some _quick links_ for the impatient reader: [[Install]], [[CHANGELOG]], [Roadmap](https://github.com/orgs/silverbulletmd/projects/2/views/1), [Issues](https://github.com/silverbulletmd/silverbullet/issues), [Discussions](https://github.com/silverbulletmd/silverbullet/discussions), [Mastodon](https://hachyderm.io/@silverbullet), [Discord](https://discord.gg/EvXbFucTxn), [Docker Hub](https://hub.docker.com/r/zefhemel/silverbullet).
|
Before we get to the nitty gritty, some _quick links_ for the impatient reader: [[Install]], [[Manual]], [[CHANGELOG]], [Roadmap](https://github.com/orgs/silverbulletmd/projects/2/views/1), [Issues](https://github.com/silverbulletmd/silverbullet/issues), [Discussions](https://github.com/silverbulletmd/silverbullet/discussions), [Mastodon](https://hachyderm.io/@silverbullet), [Discord](https://discord.gg/EvXbFucTxn), [Docker Hub](https://hub.docker.com/r/zefhemel/silverbullet).
|
||||||
|
|
||||||
Now that we got that out of the way let’s have a look at some of SilverBullet’s features.
|
Now that we got that out of the way let’s have a look at some of SilverBullet’s features.
|
||||||
|
|
||||||
|
@ -75,13 +75,7 @@ rating: 5
|
||||||
Has your mind been sufficiently blown to commit to an install? Took you long enough, alright then. Please proceed to the [[Install]] and enjoy!
|
Has your mind been sufficiently blown to commit to an install? Took you long enough, alright then. Please proceed to the [[Install]] and enjoy!
|
||||||
|
|
||||||
## Where to go from here
|
## Where to go from here
|
||||||
Click on the links below to explore various aspects of SilverBullet more in-depth:
|
Have a lock at our work-in-progress [[Manual]].
|
||||||
|
|
||||||
* [[CHANGELOG]]: What’s new?
|
|
||||||
* [[🔌 Plugs]]: extensions available for, and as part of SilverBullet
|
|
||||||
* [[SETTINGS]]: What settings exist and how to change them
|
|
||||||
* [[Special Pages]]: a few page names in Silver Bullet have special meaning
|
|
||||||
* [[🔨 Development]]: how to start hacking on SilverBullet itself
|
|
||||||
|
|
||||||
## Support
|
## Support
|
||||||
If you (hypothetically) find bugs or have feature requests, post them in [our issue tracker](https://github.com/silverbulletmd/silverbullet/issues). Want to contribute? [Check out the code](https://github.com/silverbulletmd/silverbullet).
|
If you (hypothetically) find bugs or have feature requests, post them in [our issue tracker](https://github.com/silverbulletmd/silverbullet/issues). Want to contribute? [Check out the code](https://github.com/silverbulletmd/silverbullet).
|
||||||
|
|
Loading…
Reference in New Issue