All Projects → benji300 → joplin-note-tabs

benji300 / joplin-note-tabs

Licence: MIT license
Allows to open several notes at once in tabs and pin them.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to joplin-note-tabs

joplin-plugin-hotfolder
A plugin to Monitor a locale folder and import the files as a new note.
Stars: ✭ 24 (-84%)
Mutual labels:  desktop-app, joplin
joplin-plugin-combine-notes
Joplin plugin to combine one or more notes to a new one.
Stars: ✭ 27 (-82%)
Mutual labels:  desktop-app, joplin
joplin-plugin-tagging
Plugin to extend the Joplin tagging menu with a copy all tags and tagging dialog with more control.
Stars: ✭ 17 (-88.67%)
Mutual labels:  desktop-app, joplin
InventoryDesktopFlutterApp
Implementation of Flutter Desktop Application
Stars: ✭ 36 (-76%)
Mutual labels:  desktop-app
network-smoothie
Dead simple internet bonding. Take advantege of multiple network adapters.
Stars: ✭ 14 (-90.67%)
Mutual labels:  desktop-app
guitar-tabs-to-MIDI
A program that converts Guitar Tabs into MIDI files.
Stars: ✭ 38 (-74.67%)
Mutual labels:  tabs
vue-flexible-link
Tiny Vue component for Electron to open links in a browser. Ideal for cross environment apps (Web & Native)
Stars: ✭ 22 (-85.33%)
Mutual labels:  desktop-app
squoosh-desktop-app
Squoosh Desktop App is a multiplatform desktop app to compress, resize, and crop your images.
Stars: ✭ 141 (-6%)
Mutual labels:  desktop-app
smartsilo
Hardware-integrated system composed by a desktop app and a Node.js server able to control an Arduino and manipulate the temperature of grains within storage silos
Stars: ✭ 33 (-78%)
Mutual labels:  desktop-app
Mtgdb
Mtgdb.Gui - desktop app to search MTG cards and build decks
Stars: ✭ 46 (-69.33%)
Mutual labels:  tabs
Tabs
Tabs component of React,designed for mobile.Support gestures and lots of tabs.
Stars: ✭ 29 (-80.67%)
Mutual labels:  tabs
InvMan
Open source JavaFX inventory management application
Stars: ✭ 40 (-73.33%)
Mutual labels:  desktop-app
vue-slim-tabs
A slim tab component for Vue.js (1.3 kB minified)
Stars: ✭ 104 (-30.67%)
Mutual labels:  tabs
un-material-tab
(deprecated) Custom tab layout which can be used as a material TabLayout alternative and contains basic functionality which Google's TabLayout has.
Stars: ✭ 83 (-44.67%)
Mutual labels:  tabs
react-native-segment-controller
A react-native segment controller(Tab) for both ios and android.
Stars: ✭ 18 (-88%)
Mutual labels:  tabs
nova-tabs
Another Laravel Nova Tabs Package
Stars: ✭ 60 (-60%)
Mutual labels:  tabs
use-react-router-breadcrumbs
tiny, flexible, hook for rendering route breadcrumbs with react-router v6
Stars: ✭ 170 (+13.33%)
Mutual labels:  breadcrumbs
violin
🎵 Minimalistic music player for desktop devices.
Stars: ✭ 40 (-73.33%)
Mutual labels:  desktop-app
Pixeval
Wow. Yet another Pixiv client!
Stars: ✭ 1,639 (+992.67%)
Mutual labels:  desktop-app
vanilla-js-tabs
Vanilla JavaScript tabs - tiny and simple.
Stars: ✭ 54 (-64%)
Mutual labels:  tabs

Joplin Note Tabs

Note Tabs is a plugin to extend the UX and UI of Joplin's desktop application.

It allows to open several notes at once in tabs and pin them to be kept open.

⚠️ CAUTION - Requires Joplin v1.8.2 or newer

Features

  • Display selected note as tab
  • Additional display options below the tabs
    • Navigation buttons (historyBackward/Forward)
    • Completion status of all checklists in selected note
    • Full breadcrumbs for selected note
  • Pin note(s) to the tabs
    • Either via command or drag & drop from the note list
  • Save pinned tabs permanently
    • Stored in database (not synced with other devices!)
  • Remember last opened and unpinned note
  • Change position of tabs within the panel
    • Either via drag & drop or keyboard shortcuts (which have been assigned to the corresponding commands)
  • Toggle to-do state directly on the tabs
    • Optionally unpin completed to-dos automatically
  • Configurable style attributes
  • Support horizontal and vertical layout

screencast

Screenshots

Tabs above note content

tabs-top-horizontal

Tabs below note content

tabs-bottom-horizontal

NOTE - The used UI theme on this screenshot can be downloaded here.

Tabs beside note content (vertical layout)

tabs-right-vertical

NOTE - The used UI theme on this screenshot can be downloaded here.

Installation

Automatic (Joplin v1.6.4 and newer)

  • Open Joplin and navigate to Tools > Options > Plugins
  • Search for the plugin name and press install
  • Restart Joplin to enable the plugin
  • By default the panel will appear on the right side of the screen, see how to place the panel

Manual

  • Download the latest released JPL package (*.jpl) from here
  • Open Joplin and navigate to Tools > Options > Plugins
  • Press Install plugin and select the previously downloaded jpl file
  • Confirm selection
  • Restart Joplin to enable the plugin
  • By default the panel will appear on the right side of the screen, see how to place the panel

Uninstall

  • Open Joplin and navigate to Tools > Options > Plugins
  • Search for the plugin name and press Delete to remove the plugin completely
    • Alternatively you can also disable the plugin by clicking on the toggle button
  • Restart Joplin

Usage

Place the panel

By default the panel will be on the right side of the screen, this can be adjusted by:

  • View > Change application layout
  • Use the arrow keys (the displayed ones, not keyboard keys) to move the panel at the desired position
  • Move the splitter to reach the desired height/width of the panel
    • As soon as the width of the panel goes below 400px, it automatically switches from horizontal to vertical layout
  • Press ESC to save the layout and return to normal mode

Commands

This plugin provides additional commands as described in the following table.

Command Label Command ID Description Menu contexts
Pin note to Tabs tabsPinNote Pin selected note(s) to the tabs. Tools>Tabs, NoteListContext, EditorContext, Command palette
Unpin note from Tabs tabsUnpinNote Unpin selected note(s) from the tabs. Tools>Tabs, Command palette
Switch to last active Tab tabsSwitchLastActive Switch to the last active tab, i.e. to previous selected note. Tools>Tabs, Command palette
Switch to left Tab tabsSwitchLeft Switch to the left tab next to the active, i.e. select the left note. Tools>Tabs, Command palette
Switch to right Tab tabsSwitchRight Switch to the right tab next to the active, i.e. select the right note. Tools>Tabs, Command palette
Move active Tab left tabsMoveLeft Move active tab one position to the left. Tools>Tabs, Command palette
Move active Tab right tabsMoveRight Move active tab one position to the right. Tools>Tabs, Command palette
Remove all pinned Tabs tabsClear Remove all pinned tabs. In case no note is selected, the tabs list might be empty afterwards. Tools>Tabs, Command palette
Toggle Tabs visibility tabsToggleVisibility Toggle panel visibility. Tools>Tabs, Command palette

Keyboard shortcuts

Keyboard shortcuts can be assigned in user options via Tools > Options > Keyboard Shortcuts to all commands which are assigned to the Tools > Tabs menu context. In the keyboard shortcut editor, search for the command label where shortcuts shall be added.

Manual workaround

  1. Go to Joplin Settings > Keyboard Shortcuts > Export.
  2. Open the Export .json file with notepad, follow the structure to add command hotkey.
  3. Example:
[
  {
    "command": "newTodo",
    "accelerator": null
  },
  {
    "command": "textCode",
    "accelerator": null
  },
  {
    "command": "tabsPinNote",
    "accelerator": "Ctrl+T"
  },
  {
    "command": "tabsSwitchLeft",
    "accelerator": "Ctrl+Left"
  },
  {
    "command": "tabsSwitchRight",
    "accelerator": "Ctrl+Right"
  },
  {
    "command": "tabsUnpinNote",
    "accelerator": "Ctrl+W"
  },
  {
    "command": "tabsSwitchLastActive",
    "accelerator": "Ctrl+Tab"
  }
]
  1. Save the file then import at Joplin Settings > Keyboard Shortcuts.

User options

This plugin provides user options which can be changed via Tools > Options > Note Tabs (Windows App).

NOTE - If default is set for an advanced style setting, the corresponding default color, font family, etc. will be used to match the common App look.

NOTE - In case color settings shall be overwritten, they must be specified as valid CSS attribute values, e.g. #ffffff, rgb(255,255,255), etc.

UI Tweaks

If option Show breadcrumbs below tabs is enabled in the settings it might be useful to disable the default breadcrumbs below the note title. Follow these steps to hide it via the userchrome.css stylesheet:

  • Open Joplin
  • Navigate to Tools > Options > Appearance and open Show Advanced Settings
  • Click Edit below Custom stylesheet for Joplin-wide app styles to open userchrome.css in a text editor
  • Paste the following snippet into the file
  • Save your changes and restart Joplin to see the changes
.rli-editor
  > div
  > div
  > div
  > div[style^="padding-top: 10px; padding-bottom: 10px;"]
  > button {
  display: none !important;
}

NOTE - Since there is currently no unique attribute for the breadcrumbs, this can only be done using the workaround from above. However, the behavior may change with each version and it may happen that it no longer works.

Feedback

  • Need help?
  • 💡 An idea to improve or enhance the plugin?
  • 🐛 Found a bug?
    • Check the Forum if anyone else already reported the same issue. Otherwise report it by yourself.

Support

You like this plugin as much as I do and it improves your daily work with Joplin?

Then I would be very happy if you buy me a 🍺 or via PayPal 😉

Contributing

Contributions to this plugin are most welcome. Feel free to open a pull request or an issue. Make sure to use conventional commit messages if you're creating a pull request.

Development

The npm package of the plugin can be found here.

Building the plugin

If you want to build the plugin by your own simply run npm run dist.

Updating the plugin framework

To update the plugin framework, run npm run update.

Changes

See CHANGELOG for details.

License

Copyright (c) 2021 Benjamin Seifert

MIT License. See LICENSE for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].