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
The plugin provides four primary commands:
-
Carry Forward: Copy selection with each line linked to its copied source
-
Carry Forward: Copy selection with first line linked to its copied source
- 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.
- This plugin uses the ECMAScript / Javascript flavor of Regular Expressions.
- 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.
Follow the steps below to install the plugin.
- Search for "Carry Forward" in Obsidian's community plugins browser
- Enable the plugin in your Obsidian settings (find "Carry Forward" under "Community plugins").
- Check the "Carry Forward" settings tab.
- (Optional) In the "Hotkeys" settings tab, add a hotkey for one or both of the "Carry Forward..." commands.
Clone the repository, run yarn
to install the dependencies, and run yarn dev
to compile the plugin and watch file changes.
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.
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!