0.83

Dendron 0.83 has sprouted 🌱

Breaking changes: This release of Dendron updates the publishing configuration within dendron.yml. Updated workspaces will not work with older version of dendron-cli, so make sure to update.

Pod V2 preview continues to grow: you can now export the contents of a hierarchy, filtered by a target vault. This means the multi-vault workspaces can be more targeted in their exports without including notes from undesired vaults.

File Links now support block anchors ( ^block-anchor)! This means that you can create comments in your code, and link directly to the comment blocks. This is configurable to use the older method of linking to line numbers.

Block anchors are more reliable because they will always refer to the marked line, but Dendron has to modify the file to insert a block anchor which looks like ^this. You are free to move the anchor anywhere in the file or to put comment markers like // or # or anything else before them.

Highlights

  • enhance(pods): add vault filter for pods-v2 hierarchy export
  • enhance(notes): change dendron id format to be alphanumeric lowercase
  • enhance(workspace): Block Anchor support for non-note files
  • deprecate(publishing): Legacy publishing has now been removed from dendron-cli. Dendron users that haven't yet migrated from dendron buildSite commands must migrate to using the dendron publish commands.

Everything Else

  • enhance(workspace): calculate backlinks and anchors in engine for improved editor responsiveness
  • fix(workspace): Fixed instances where Journal note title values weren't properly formatted as yyyy-MM-dd and the traitID of journalNote wasn't being applied
  • fix(workspace): Dendron will try to parse non-dendron files in onFirstOpen
  • fix(workspace): error message to be readable in error toast
  • fix(publish): horizontal line's height in publishing
  • fix(publish): properly set siteIndex when it's not explicitly set by config

Community

General

  • We added bookmark bot to the Dendron Discord, meaning that users can now react to a message with :bookmark: 🔖 and Bookmarker will save it for them in a direct message.

Publishing Documentation Updates

A significant review and refresh of publishing settings can be seen in the Publishing configuration reference documentation. Make sure to take a look at all of the configuration options currently available when publishing websites with Dendron!

Starboard and TIL Highlights

These are highlights from the Dendron Discord #starboard and #today-i-learned channels.

  • seadude shared how to create clickable areas of images that he found useful in reveal.js presentations: "Today I learned you can create a clickable area (or more than one) of an image and have it link anywhere."

    • Useful for RevealJS presentations, etc.

    • Done by using the usemap parameter of <img> and <map> HTML tags

    • Example:

      <img src="https://example.com/image.jpg" usemap="#map" height="550"/>
      
      <map name="map">
          <area shape="circle" coords="330,350,50" alt="egg" href=".\assets\pdfs\timeline2.pdf" target="_blank">
          <area shape="circle" coords="430,250,50" alt="mallet" href=".\assets\pdfs\timeline3.pdf" target="_blank">
      </map>
      
  • 💡 seadude shared information about VS Code Snippets:

    • Related: Dendron Snippet Maker

    • Example 1: You can set a default value for a variable by using a colon (:). The DUE: property in the below snippet defaults to the current current month, date, hour but can be modified.

      "TODO": {
      "prefix": "stodo",
      "body": [
          "- [ ] ${1:Enter Task}",
          "- **CAPTURED:**        ${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}T${CURRENT_HOUR}:${CURRENT_MINUTE}:${CURRENT_SECOND}-08:00",
          "- **DUE:**             ${CURRENT_YEAR}-${2:${CURRENT_MONTH}}-${3:${CURRENT_DATE}}T${4:${CURRENT_HOUR}}:${5:${CURRENT_MINUTE}}:00-08:00",
          "- **PRIORITY:**        ${6|HIGH,MEDIUM,LOW|}",
          "- **STATUS:**          ${7|TODO,WAITING,IN PROGRESS,DONE|}",
          "- **NOTES:**           ",
          "    - $0",
          ],
          "description": "Capture new TODO"
      }
      
    • Example 2: You can set dropdown values for a variable using a pipe (|).

      "Context Switch": {
        "prefix": "scontext",
        "body": [
          "- **TYPE:**          ${1|COMMS,SUPPORT,RESEARCH,MEETING,DEVELOPMENT,TESTING,VALIDATION,CI/CD,PROJECT MGMT,CONSULTING,DOCUMENTATION,ADMINISTRATION,TRAINING,BREAK|}",
          "- **PROJECT:**       ${2|PROJ1,PROJ2|}",
          "- **TOOLS:**         ${3|N/A,PYTHON,AZURE,POWER APPS,POWER AUTOMATE,POWER BI,SHAREPOINT,DENDRON|}",
          "- **START:**         ${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}T${CURRENT_HOUR}:{$CURRENT_MINUTE}:${CURRENT_SECOND}-08:00",
          "- **END:**           ",
          "- **DURATION:**      ",
          "- **NOTES:**         ",
          "    - $0",
          "---"
          ],
          "description": "Capture new context switch"
      }
      
  • 💡 scriptautomate shared a link to the Sourcegraph VS Code extension: "TIL about the Sourcegraph extension for VS Code. I feel like it has interesting potential. Like, imagine searching public Dendron vaults directly from your VS Code?"

Dendron Reading Series

This week's entry in the Dendron Reading Series.

Credit to Jack of some quantity of trades#3247, a Dendrologist from the Dendron community, for contributing the link and summary for this week's Dendron Reading Series!

Even with all the best tools, are you still struggling to get things done?

Data suggests that people mainly uses to-do lists and associated productivity software to manage their mood rather than to organize their activities. Typically, the contents of to-do lists is poorly correlated with things accomplished, which seem to usually be what people remember on the spur of the moment or felt like doing anyway.

Of all technology, productivity software is rather uniquely suited to evoke experiences of guilt and virtue (this has something to do with the Protestant work ethic). Adding items to to-do lists allows us to maintain the conceit that we will take care of them at some point, providing a semblance of cognitive and emotional relief. Though, since people usually don't actually do the things on their lists, they become "lists of shame" that continue accumulating until they are abandoned in "productivity bankruptcy."

Ultimately, the drive to adopt productivity tools and methods may reflect the fear of death ("We like lists because we do not want to die"); having a sense of our mortality and finite time, and wanting to accomplish our infinite ambitions and desires.

All of this may be rather bleak, but there are a couple prescriptions that emerge from this perspective:

  1. More effective use of lists of tasks may be made by assigning them to specific blocks of time in a schedule. This kind of planning forces us to come to terms with what it is actually possible for us to accomplish.
  2. We can avoid generating "lists of shame" by making sure that the rates at which we are adding to our to-do lists are comparable with the rates at which we are completing tasks. This may require reconciling oneself with one's mortality and accepting existential limits.
  • Four Thousand Weeks: Time Management for Mortals, of Oliver Burkeman: This book discusses prescription #2 in some depth
  • Life as Nonproductive Act, from David McLaver's Overthinking Everything substack: Contains some musings about the Protestant work ethic in contemporary circumstances.
  • Complice: Beyong Getting Things Done
    • The Complice paradigm is designed with some of these things in mind, eschewing exhaustive collection in favor of focusing on what is most important on a day-to-day basis. Productivity software that implements Complice is typically designed to prevent the accumulation of lists of shame by preventing the user from unreflectively carrying tasks over from day to day, among other design features.

Event Reminders

Thank You's

A big thanks to the following gardeners that brought up issues, contributions, and fixes to this release :man_farmer: :woman_farmer: Visit Discord Roles for more information.

Surveyors

A huge thanks to the following Dendronites that provided feedback in the 2022 Dendron User Survey. If you would like to help us improve Dendron, please checkout the survey (and earn a shiny Surveyor Discord badge in the process)!

  • @Idan#8549
  • @aleksey#5276
  • @d1onysus#1514
  • @foureyedsoul#0796
  • @cro#4610

Changelog

Breaking changes

The latest release of Dendron will prompt users to automatically migrate their dendron.yml configurations to use the latest publishing configuration. Updated workspace configurations (version: 5) won't work with older versions of dendron-cli.

If dendron-cli is not updated, you will encounter the following error message:

Cannot find minimum compatible client version. This error should never occur! Please report a bug if you have encountered this.

If running the latest dendron-cli, users can optionally migrate their configurations directly from dendron-cli:

dendron dev run_migration --migrationVersion 0.83.0

Deprecation Notices

Enhancements

  • enhance(pods): add vault filter for pods-v2 hierarchy export (docs) (#2419) @joshi (Private)
  • enhance(notes): change dendron id format to be alphanumeric lowercase (docs) (#2403) @kevin (Private)
  • enhance(workspace): Block Anchor support for non-note files (docs) (#2377) @kaan (Private)
  • enhance(workspace): calculate backlinks and anchors in engine for improved editor responsiveness (#2389) @kaan (Private)

Fix

  • fix(workspace): Fixed instances where Journal note title values weren't properly formatted as yyyy-MM-dd and the traitID of journalNote wasn't being applied (#2401) @jonathan (Private)
  • fix(workspace): Dendron will try to parse non-dendron files in onFirstOpen (#2405) @kevin (Private)
  • fix(workspace): error message to be readable in error toast (#2426) @joshi (Private)
  • fix(publish): horizontal line's height in publishing (#2441) @kaan (Private)
  • fix(publish): properly set siteIndex when it's not explicitly set by config (#2443) @hikchoi (Private)


Backlinks