Skip to content

Commit 1e8d821

Browse files
add table features, edn data export and task changes
1 parent 420137e commit 1e8d821

File tree

1 file changed

+29
-7
lines changed

1 file changed

+29
-7
lines changed

db-version.md

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
## Description
22

3-
This page describes DB (database) graph functionality as of Jan 22nd. See [here](https://test.logseq.com/#/) to try the latest stable version. If you're an existing user of Logseq, you'll be interested in [changes with the db version](./db-version-changes.md).
3+
This page describes DB (database) graph functionality as of Feb 12th. See [here](https://test.logseq.com/#/) to try the latest stable version. If you're an existing user of Logseq, you'll be interested in [changes with the db version](./db-version-changes.md).
44

55
NOTE: While there is an [automated backup](#automated-backup) for DB graphs, we recommend only using DB graphs for testing purposes.
66

@@ -191,9 +191,10 @@ Tasks are improved from the previous version as they more powerful and customiza
191191
#### Create a Task
192192

193193
A new task can be created in a number of ways:
194-
* Set the status of a block by typing the status choice e.g. `/todo` or cyling status with `Cmd-Enter`.
194+
* On a block without a tag, add the `Status` property by typing the status choice e.g. `/todo` or cyling status with `Cmd-Enter`.
195195
* Type text in a block and end it with `#Task`.
196196
* When on the `Task` page, create a new row in the Task table.
197+
* On a block without a tag, add the `Deadline` or `Scheduled` property by typing `/Deadline` or `/Scheduled`.
197198

198199
#### Task Shortcuts
199200

@@ -294,14 +295,21 @@ Like other tags, go to their tag pages to view and manage all of them in one pla
294295
## Tables
295296

296297
A table displays a group of nodes as rows and a node's properties as columns. A table behaves like a spreadsheet as table cells are editable by default. A node has the following special columns which are available by default: `Name`, `Created At` and `Updated At`. Tables have the following features:
297-
* Sort rows by any column, ascending or descending.
298-
* Filter rows by multiple columns by clicking on the filter icon. For columns with a specific property type e.g. :number and :date, there are specific filters for that type.
299-
* Hide columns by clicking on the three dots menu and selecting `Columns visibility`.
300-
* Drag columns to sort their order.
298+
* Sort rows by multiples columns, sorting each by ascending or descending. Click on the sort icon to remove a sorting.
299+
* Filter rows by multiple columns by clicking on the filter icon.
300+
* Multiple filters can be applied. By default, only rows that match all filters display (AND the filters). To match on any filter (OR filters), change the dropdown on the right to `Match any filter`.
301+
* For columns with a specific property type e.g. :number and :date, there are specific filters for that type.
302+
* Group rows by a column by clicking on the three dots menu and selecting `Group by`.
303+
* Rows can be grouped by all property types except `DateTime`.
304+
* While each group is displayed as a different table, they all obey the same column configurations.
301305
* Switch between `Table View`, `List View` or `Gallery View` by selecting one in the table's header. The `List View` displays nodes in an outliner with nodes grouped by pages. The `Gallery View` is useful for viewing blocks as square tiles, especially for assets.
302-
* Resize columns by dragging the resize handle at a column header's border.
303306
* Click on the magnifying glass icon to live search a table. This is the only feature that doesn't persist when switching away from a table.
304307
* Click `+ New` at the bottom of a table to create a new block. If in a property or tags table, the newly created block will be associated with the respective property or tag.
308+
* Columns can be configured in a number of ways:
309+
* Hide columns by clicking on the three dots menu and selecting `Columns visibility`.
310+
* Drag columns to sort their order.
311+
* Pin column(s) to ensure they appear first.
312+
* Resize columns by dragging the resize handle at a column header's border.
305313

306314
A powerful new feature of tables is the ability to create a table view. This is currently enabled for tag pages. To use it, click the `+` icon in the upper left to create a new tab in the table. Click on the tab's header to rename or delete this new view. Within this view, all of the above persisting features will save!
307315

@@ -353,6 +361,8 @@ An automated backup of graphs is available by clicking on the upper right three
353361

354362
## Export and Import
355363

364+
### Graph Export
365+
356366
To export a DB graph, click on the three dots menu in the upper right corner, select `Export graph` and then choose one of the following options:
357367

358368
1. `Export SQLite DB` - Export graph as a [SQLite](https://sqlite.org/) .db file.
@@ -368,6 +378,18 @@ To import the exported .sqlite file, click on the three dots menu in the upper r
368378
2. `File to DB graph` - Import a markdown graph. See the [db graph importer](#db-graph-importer) for more on it.
369379
3. `Debug Transit` - Import a debug transit file from export.
370380

381+
### EDN Data Export
382+
383+
Exported EDN data allows any DB graph content to be shared between users as text. With this text, a user can then import it to replicate the same visible and behavioral content including the content's properties, tags. This is important as it gives users control of their content and enables some workflows that aren't possible with file graphs. This feature is available with the following commands:
384+
385+
* `Export block EDN data` - Run this command on the current block to copy it to the clipboard. When this data is imported, it will overwrite the current block.
386+
* `Export page EDN data` - Run this command on the current page to copy it to the clipboard. When this is imported to an existing page, it will append to the existing page.
387+
* `Export graph's tags and properties EDN data` - Run this command to copy the entire graph's tags and properties. This is useful for sharing your workflows with others without sharing your graph-specific data. This is an example of a workflow that was not possible with file graphs.
388+
* `Import EDN data` - Run this command to import any of the above exported data. If importing a block, you must have focus on the block you want to import into.
389+
390+
For developers, this shareable EDN data can also be used in scripts to create or modify existing graphs. For example, a page's data could be passed to [this script](https://github.com/logseq/logseq/blob/feat/db/deps/db/script/create_graph.cljs) to create a new DB graph with that page.
391+
392+
371393
## Scripting
372394

373395
DB graphs are scriptable using https://github.com/logseq/nbb-logseq/tree/feat/db. Scripts can both read and _write any_ data in a DB graph. To write your own script, you'll need a package.json and nbb.edn. Use [this example package.json](https://github.com/logseq/publish-spa/blob/feat/db/package.json) and [this example nbb.edn](https://github.com/logseq/publish-spa/blob/feat/db/nbb.edn). Some example scripts:

0 commit comments

Comments
 (0)