An Obsidian plugin to add (prepend or append) specified content to a note (existing or new) without opening another pane.

Overview

Obsidian Note Content Pusher

An Obsidian plugin to add (prepend or append) specified content to a note (existing or new) without opening another pane.

As requested in this forum post.

Buy me a Coffee

Demo

How to use

  • When you want to link to a file that doesn't yet exist, do it with this syntax: [[title of new file]]>>{content you want to appear in file}
  • Then run the only command in this plugin, "Create file and push content," either from the command palette or with a hotkey. The command will automatically replace content in the original file to look like this: [[title of new file]], will create the file, and add the content within the brackets to it, all without leaving the currently open note.
  • If a file with the name you specified already exists, the content in the brackets will be added to the end of that file.

Aliases

  • To add an alias to the new file, do it in the following format: [[title for new file|>>alternate title]]>>{}
  • Running the command will fix the formatting on the current file: [[title for new file|alternate title]] and will also add the alias you wrote, in this case "alternate title," to the yaml frontmatter of the new note, like this:
---
alias: alternate title
---

Inline Settings

To adjust how the text is pushed to a note, you can add inline settings within the curly brackts by using the inline settings characters (by default @@). Currently, the only available inline settings are:

  • append: overrides the push to existing notes setting to add new content to the end of an existing file.
  • prepend: overrides the push to existing notes setting to add new content to the beginning of an existing file.

For example, to tell the plugin to prepend content, you could write: [[title of existing file]]>>{content to add at the beginning@@prepend}

Customization/Settings

Content Pusher Characters

First, you can customize the string of characters the plugin will look for when pushing content to a file. Make this something you don't often type elsewhere. The default is >>. For example, if you changed this setting to %%%, you would type something like [[title]]%%%{content} to push content to a new note.

Inline Settings Characters

The next setting allows you to customize the characters used to to tell the plugin when to look for inline settings within the curly brackts.

Automatic Push

The third setting allows you to toggle on Automatic Push. This will automatically check for any text in the correct format when you switch to a new line in your note. This way you never have to run the plugin's command to trigger the note creation. You will still be able to run the command manually at any time.

Push to Existing Notes

The fourth setting allows you to toggle whether content being pushed to new notes will be added to the beginning or to the end of the note. By default, the content will be appended (added to the end), but turning the toggle on will add new content to the beginning.

Comments
  • [Request] Add aliases to existing files as well

    [Request] Add aliases to existing files as well

    The language I'm using inflects many of its words. Even I create, hypothetically, a "John Doe" note, depending on whether it's a subject or an object, it may have to be referenced as "Johna Doe'a", for example.

    If I reference it like so:

    [[John Doe|Johna Doe'a]]
    

    the alias won't get saved in the YAML frontmatter.

    I'd like to use your plugin to do this job and add the aliases while I reference the existing notes. It'll speed up the reference process, because now I won't have to go into the note to edit the YAML myself.

    opened by DeutscheGabanna 3
  • What happens when attempting to push content to a file that *does* already exist?

    What happens when attempting to push content to a file that *does* already exist?

    That is, can the plugin identify if a file with the name already exists in the vault?

    If no, then current process.

    If yes, then prepend/append {content} per:

    • Plugin settings--top of note, bottom of note, after user-defined mark like "___"
    • Inline--top of note = "key" ; bottom of note = "key"
    opened by gobbletown 1
  • Q: Is it possible to push a template(r) to multiple documents?

    Q: Is it possible to push a template(r) to multiple documents?

    As in question, I'd really like to push a templater template to multiple documents simultaneously (or, a directory of them), I'm not clear if that's possible or a feasible feature?

    opened by sjgknight 0
  • Jumping on the source page

    Jumping on the source page

    When pushing something on a source page with a pretty long length, it seems to reset the page to the top again, which can be a little disruptive. Not sure if anything can be done to keep the page at the current scroll position? Thanks!

    opened by crazymedguy 1
  • [ BUG ] Alias Front Matter Key

    [ BUG ] Alias Front Matter Key

    Running a content push adds the alias front-matter key and at the wrong position -- even though an alias directive is not added.

    See the attached recording.

    Expected result: No alias key is added to the front matter.

    This plugin has a huge potential as discussed in the forum. Keep up the good work!

    https://user-images.githubusercontent.com/1460531/170817021-ea5fdda5-1ecb-4f39-8767-b5e8cbdb7aa9.MOV

    bug 
    opened by StefanoRausch 2
  • Push Several Content (BUG)

    Push Several Content (BUG)

    I try to pushed several content with setup like this :

    1. Push several content into same file [[Target File]]>>{ pushed first } [[Target File]]>>{ pushed second }

    2. Push several content into different file [[Target File]]>>{ pushed first } [[Target File 2]]>>{ pushed second }

    3. Push several content inline [[Target File]]>>{ pushed first} and [[Target File 2]]>>{ pushed second }

    It only push the first content..

    I put my sugestion on obsidian forum, because there are many people discuss ideas there..

    Edit : i've tested using manual push feature (with command)

    bug 
    opened by safrilth 1
Releases(1.0.4)
  • 1.0.3(May 26, 2022)

    Changes:

    Inline Settings

    To adjust how the text is pushed to a note, you can add inline settings within the curly brackts by using the inline settings characters (by default @@). Currently, the only available inline settings are:

    • append: overrides the push to existing notes setting to add new content to the end of an existing file.
    • prepend: overrides the push to existing notes setting to add new content to the beginning of an existing file. For example, to tell the plugin to prepend content, you could write: [[title of existing file]]>>{content to add at the beginning@@prepend}

    Headers

    You can now include a header in your link to an existing file. The plugin will detect this header and at the content under the correct heading. Syntax looks like this: [[Obsidian Plugins##Calendar]]>>{a note about the calendar plugin}

    Aliases

    fixed issue where adding an alias to a note with existing frontmatte, added new frontmatter instead of simply adding the alias

    Notes in folders

    Previously notes that aren't on the top level wouldn't be recognized by the plugin if the full path wasn't in the brackets. Now, the plugin will find all existing notes that share a title, even in a different directory. If multiple notes are found, the plugin will then use the path to choose the right one.

    Source code(tar.gz)
    Source code(zip)
    main.js(35.64 KB)
    manifest.json(370 bytes)
  • 1.0.2(May 25, 2022)

  • 1.0.1(May 23, 2022)

Owner
Henry Gustafson
Henry Gustafson
An Obsidian Plugin that allows to export tables from a pane in reading mode to CSV files.

Obsidian Plugin "Table to CSV Exporter" This is my very first attempt in writing a plugin for Obsidian. I didn't even know TypeScript before (but Java

Stefan Wolfrum 26 Dec 27, 2022
Obsidian plugin to open a note of your choice when creating a new tab, like in the browser.

New Tab Default Page Obsidian plugin to open a note of your choice when creating a new tab, like in the browser. Usage Set the note to open in new tab

pseudometa 20 Dec 27, 2022
🪐 The IPFS gateway for NFT.Storage is not "another gateway", but a caching layer for NFTs that sits on top of existing IPFS public gateways.

nftstorage.link The IPFS gateway for nft.storage is not "another gateway", but a caching layer for NFT’s that sits on top of existing IPFS public gate

NFT.Storage 37 Dec 19, 2022
A simple JS To Do List bundled using Webpack. You can add new tasks, edit existing tasks, check completed tasks, and delete tasks from the list. It is built mainly with Javascript.

To-Do-List A simple HTML list of To Do built using webpack and served by a webpack dev server. Live Link See Demo Built With HTML, CSS, Javascript To

Michael Ugochukwu 3 May 10, 2022
Bookmate - Watch changes in Chrome bookmarks, and use bookmarks as an append-only key-value store via an fs-like API.

?? Bookmate An append-only key-value store built on Chrome bookmarks, plus an asychronous stream of Bookmark changes. For NodeJS Actual production exa

Cris 6 Nov 8, 2022
A plugin for Obsidian (https://obsidian.md) that adds a button to its search view for copying the Obsidian search URL.

Copy Search URL This plugin adds a button to Obsidian's search view. Clicking it will copy the Obsidian URL for the current search to the clipboard. T

Carlo Zottmann 6 Dec 26, 2022
An Obsidian plugin for automatically creating notes when linking to non-existing notes

Note Auto Creator for Obsidian Automatically create notes when links are created to them. How to use After enabling the plugin in the settings menu, y

Simon Clement 31 Dec 14, 2022
jQuery Split Pane plugin

split-pane jQuery Split Pane plugin The plugin should work in IE8 and above as well as in Chrome, Safari and Firefox. You can download split-pane.js a

Simon Hagström 162 Dec 13, 2022
An obsidian plugin that creates tomorrows daily note for preemtive planning.

Tomorrow's Daily Note An Obsidian plugin that creates tomorrows daily note for preemtive planning. Requirements Obsidian v0.12.0+. Daily notes plugin

Will Olson 12 Sep 24, 2022
🪨 A simple obsidian plugin that links all modified files meeting certain criteria to a daily note

Obsidian List Modified This plugin lists all modified files meeting certain criteria to a daily note. Why? As of now, dataview queries cannot be "froz

Francis Kafieh 51 Dec 7, 2022
A plugin for the Obsidian markdown note application, adding functionality to render markdown documents with multiple columns of text.

Multi-Column Markdown Take your boring markdown document and add some columns to it! With Multi Column Markdown rather than limiting your document lay

Cameron Robinson 91 Jan 2, 2023
Best dialogue for file creation, renaming, opening, deletion or jumping to a specific line

Features No need to rely on vscode.quickOpen Create, rename, delete, open files/folders without relying on the sidebar Jump to specific lines Find spe

Suryansh Makharia 3 Jul 31, 2022
AdsPower supports Local API, which has functions like reading and writing account configuration information, opening and closing browsers, searching for accounts.

AdsPower supports Local API, which has functions like reading and writing account configuration information, opening and closing browsers, searching for accounts. Besides, it can cooperate with Selenium and Puppeteer to execute browser operations automatically.

AdsPower Official 20 Dec 1, 2022
A collection of opening hours-related utilities.

Opening-Hours-Utils A collection of opening hours-related utilities. tl;dr Install by executing npm install @wojtekmaj/opening-hours-utils or yarn add

Wojciech Maj 9 Jan 7, 2023
Render arbitrary Markdown content in Astro, optionally integrating with any existing configuration.

Astro Markdown Astro Markdown lets you render arbitrary Markdown content in Astro, optionally integrating with any existing configuration. --- import

Astro Community 14 Dec 22, 2022
A refined tool for exploring open-source projects on GitHub with a file tree, rich Markdown and image previews, multi-pane multi-tab layouts and first-class support for Ink syntax highlighting.

Ink codebase browser, "Kin" ?? The Ink codebase browser is a tool to explore open-source code on GitHub, especially my side projects written in the In

Linus Lee 20 Oct 30, 2022
Simple and minimal split pane component for Solid!

solid-split-pane Split pane component for Solid! Uses Split.Js under the hood. Takes all props that split.js takes, plus a gutterClass. (Q) Why not so

blusk 5 Oct 28, 2022
Publish your Obsidian note to a Telegraph page.

Obsidian Telegraph Publish Publish your Obsidian note to a Telegraph page. Features: Publish the active file to a new Telegraph page (create). Publish

Xiao Meng 21 Dec 12, 2022
✏️ A new tab extension for convenient note-taking

MDTab Write quick notes in Markdown on any new tabs! Installation Right now MDTab has only been tested on Chrome (brave browser). You can install it f

Ian Huang (Shaoru) 8 Nov 11, 2022