Implementation of #117: sharing
This commit is contained in:
@@ -5,8 +5,13 @@ release.
|
||||
|
||||
## 0.2.1
|
||||
|
||||
* New `Plugs: Add` command
|
||||
* When holding `Shift` while pasting, rich test paste will be disabled.
|
||||
* New `Plugs: Add` command to quickly add a new plug (will create a `PLUGS` page if you don't have one yet).
|
||||
* **Paste without formatting**: holding `Shift` while pasting will disable "rich text paste."
|
||||
* General purpose, extensible, **share support** ([RFC](https://github.com/silverbulletmd/silverbullet/discussions/117)): using the `$share` key in frontmatter (with the {[Share: Publish]} bound to `Cmd-s`/`Ctrl-s`). This will enable plugs to support various types of page sharing. Two types of sharing are supported initially:
|
||||
* `file:/full/path/to/file.html` will render the current page as HTML and write it to given path.
|
||||
* `collab:*` will share the page via the new real-time collaboration feature (see next bullet)
|
||||
* `gh-gist:<gist-id>` via the [[🔌 Github]] plug, which has been updated to add support for publishing to Gists.
|
||||
* An initial version of **real-time collaboration** on individual pages: This will allow concurrent "Google Doc" style editing. To enable this, a central collaboration server is used (there is currently one deployed at `wss://collab.silverbullet.md`) which will become the source of truth for pages shared this way. To share an existing page, run the {[Share: Collab]} command. A random ID will be assigned to the page, which functions as a token for others to join the editing session. Copy and paste the resulting `collab:...` URI and send it your collaborator, who can join using {[Share: Join Collab]}. **Note:** the security of this is to be improved, it currently relies on "security through obscurity": if you guess an existing ID, you will have full access. Be careful what you share this way.
|
||||
|
||||
## 0.2.0
|
||||
* The editor is now in "live preview" mode where a lot of markdown is hidden unless the cursor is present. This will take some getting used to, but results in a much more distraction free look.
|
||||
|
||||
+10
-4
@@ -7,7 +7,10 @@ author: Zef Hemel
|
||||
|
||||
<!-- #include [[https://raw.githubusercontent.com/silverbulletmd/silverbullet-github/main/README.md]] -->
|
||||
# SilverBullet plug for Github
|
||||
Provides Github events, notifications and pull requests as query sources using SB's query mechanism
|
||||
Provides various integrations with Github:
|
||||
|
||||
* Query sources for events, notifications and pull requests
|
||||
* Ability to load and share pages as Gists
|
||||
|
||||
## Installation
|
||||
Open your `PLUGS` note in SilverBullet and add this plug to the list:
|
||||
@@ -19,8 +22,6 @@ Open your `PLUGS` note in SilverBullet and add this plug to the list:
|
||||
Then run the `Plugs: Update` command and off you go!
|
||||
|
||||
## Configuration
|
||||
This step is optional for anything but the `gh-notification` source, but without it you may be rate limited by the Github API,
|
||||
|
||||
To configure, add a `githubToken` key to your `SECRETS` page, this should be a [personal access token](https://github.com/settings/tokens):
|
||||
|
||||
```yaml
|
||||
@@ -37,9 +38,14 @@ To configure, add a `githubToken` key to your `SECRETS` page, this should be a [
|
||||
* `query`: [the search query](https://docs.github.com/en/rest/search#search-issues-and-pull-requests)
|
||||
* `gh-notification` requires a `githubToken` to be configured in `SECRETS`.
|
||||
|
||||
## Share as Gist support
|
||||
|
||||
To use: navigate to a page, and run the {[Share: Gist: Public Gist]} command, this will perform an initial publish, and add a `$share` attribute to your page's front matter. Subsequent updates can be performed via {[Share: Publish]}.
|
||||
|
||||
To pull an *existing* gist into your space, use the {[Share: Gist: Load]} command and paste the URL to the gist.
|
||||
## Example
|
||||
|
||||
Example uses:
|
||||
Example uses of the query providers:
|
||||
|
||||
## Recent pushes
|
||||
<!-- #query gh-event where username = "zefhemel" and type = "PushEvent" select type, actor_login, created_at, payload_ref limit 3 -->
|
||||
|
||||
Reference in New Issue
Block a user