External Applications - Linus-Mussmaecher/rucola GitHub Wiki

To work optimally, rucola requires you to connect two external applications:

  1. An editor to edit note files
  2. A HTML viewer to view compiled notes

This page lists a couple of examples on how to connect these external applications. Feel free to send your own solutions to add here.

Editors

The basic setup that works for vim, nano, helix (note that the executable name of helix is sometimes hx depending on your system), etc. is

 editor = ["<editor>", "%p"]

Helix + Wezterm

Using helix and wezterm, you can look for an already running instance of helix with the correct working directory and open the note in that instance with the following nushell script:

def main [target_dir: string, file: string] {
 let list = wezterm cli list --format json | from json
 let pane_id = $list | where cwd =~ $target_dir | where title =~ "hx|helix" | get pane_id.0;
 wezterm cli send-text --pane-id $pane_id --no-paste $":o ($file | str replace --all ' ' '\ ')\r"
}

which you can then add as open-note to your bin or PATH and configure in rucola with

 editor = ["open-note", "<your-vault-dir>", "%p"]

Viewers

Minimal Profile

Most modern browsers support the creation of different profiles. You can then create a profile 'Notes' that hides all bookmarks and contains only minimal extensions to view your notes. Such a profile can be launched with

viewer = ["firefox", "-P", "Notes", "%p"]

for Firefox and

viewer = ["google-chrome-stable", "--profile-directory", "notes", "%p"]

for Google Chrome.

⚠️ **GitHub.com Fallback** ⚠️