/obsidian-carry-forward

An Obsidian Notes plugin for generating and copying block IDs, and copying lines with a link to the copied line

Primary LanguageJavaScriptOtherNOASSERTION

Obsidian Carry-Forward plugin

Copy text from a note, linking back to its copied source, or copy a link to a note block.

This plugin facilitates linking to blocks (e.g., specific lines) within an Obsidian note. It allows:

  • Copying a link to the current line, and
  • Copying text from one note with automatically-added links back to the where the text was copied from. This can be useful, for example, when using note-taking methods like Bullet Journaling, which involve periodically moving tasks forward from past days' notes into the current day's note.

Please submit bugs here: https://github.com/jglev/obsidian-carry-forward

Please submit ideas here: https://github.com/jglev/obsidian-carry-forward/discussions/categories/ideas

Please ask for help here: https://github.com/jglev/obsidian-carry-forward/discussions/categories/q-a


For changes in each release, please check the releases page: https://github.com/jglev/obsidian-carry-forward/releases


Screenshots and Usage

The plugin provides four primary commands:

  1. Carry Forward: Copy selection with each line linked to its copied source

  2. Carry Forward: Copy selection with first line linked to its copied source

  3. Carry Forward: Copy link to line

  4. Carry Forward: Copy embed link to line

  • Within the Settings tab, a Regular Expression can be set for precisely placing links in the copied text -- whether at the beginning of a line, end of a line, or replacing existing text.
  • The theme in the screenshots above is Solarized Light.

Variants of the above commands allow setting the copied link's text using the current selection or the current clipboard text.

Installation

Follow the steps below to install the plugin.

  1. Search for "Carry Forward" in Obsidian's community plugins browser
  2. Enable the plugin in your Obsidian settings (find "Carry Forward" under "Community plugins").
  3. Check the "Carry Forward" settings tab.
  4. (Optional) In the "Hotkeys" settings tab, add a hotkey for one or both of the "Carry Forward..." commands.

Development

Clone the repository, run yarn to install the dependencies, and run yarn dev to compile the plugin and watch file changes.

License

This plugin's documentation setup is based off of the Obsidian Tasks plugin by Martin Schenck. Like that plugin, this plugin is released under the MIT license.

Todo

Automated tests are not currently included in this code for this repository. Assistance in this, particularly using the Obsidian End-to-End testing approach, is especially welcome!