GithubHelp home page GithubHelp logo

darlal / obsidian-switcher-plus Goto Github PK

View Code? Open in Web Editor NEW
395.0 5.0 10.0 51.78 MB

Enhanced Quick Switcher plugin for Obsidian.md

License: GNU General Public License v3.0

JavaScript 0.32% CSS 0.53% TypeScript 98.96% Shell 0.19%
obsidian-plugin obsidian-md

obsidian-switcher-plus's Introduction

Quick Switcher++ for Obsidian

Latest Release Total Downloads Build Workflow Status

Find what you're looking for faster, using Quick Switcher++. An Obsidian.md plugin that extends the functionality of the builtin "Quick Switcher". What's new?

Features

Demo

Search Headings:

Launch Switcher++ using a shortcut, trigger Headings mode using the default # command, then enter the search text. Notice, different heading level matches are returned, along with Alias, Unresolved and regular filename matches.

Heading Mode gif

Symbol Navigation:

Launch Switcher++ using a shortcut, filter all files to find the Format your notes file, then trigger the symbol command (default @) to open the file directly to the External links section.

Symbol Mode gif

Editor Navigation:

Launch Switcher++ directly into editor mode using a shortcut, filter the currently open editors to find the Format your notes editor and make it active. Then use Switcher++ again to open the backlinks side panel.

Symbol Mode gif

Search headings instead of filename

Find the file you're looking for by searching through the headings contained in the file, instead of only searching the filename. This mode can be configured to search a) strictly through only the first H1 header, fallback to filename search if there's no match with the H1, b) through all headers, and c) respect the builtin Quick Switcher settings Show existing only, Show attachments, and Show all file types. By default, this mode will display the first top 50 results.

headings mode preview

Search headings configuration

Setting Description Default
Headings list mode trigger Character that will trigger headings list mode in the switcher. #
Search Headings Enabled: search and show suggestions for Headings
Disabled: Don't search through Headings
enabled
Turn off filename fallback Enabled: strictly search through only the headings contained in the file. Do not fallback to searching the filename when an H1 match is not found.
Disabled: fallback to searching against the filename when there is not a match in the first H1 contained in the file.
disabled
Search all headings Enabled: search through all headings contained in the file.
Disabled: only search through the first H1 in each file.
enabled
Search Filenames Enabled: search and show suggestions for filenames
Disabled: Don't search through filenames (except for fallback searches)
disabled
Search Bookmarks Enabled: search and show suggestions for Bookmarks
Disabled: Don't search through Bookmarks
enabled
Max recent files to show The maximum number of recent files to show when there is no search term. Set this to 0 to hide recent file suggestions in that case 25
Exclude folders List of folder path regex that will be used to exclude folders and their sub-directories from suggestion search. One per line. None
Hide Obsidian "Excluded files" Enabled, suggestions for files that are in Obsidian's "Options > Files & Links > Excluded files" list will not be displayed. Disabled, suggestions for those files will be displayed but downranked. disabled
File extension override Override the "Show attachments" and the "Show all file types" builtin, system Switcher settings and always search files with the listed extensions. canvas

Symbol Navigation (Canvas Nodes, Headings, Hashtags, Links, Embeddings)

View, filter, and navigate to any symbol (Canvas Nodes, Headings, Hashtags, Links, Embedding, Callouts) in a file directly from the Quick Switcher, whether the file is currently open in an editor or not. This feature can be triggered in two ways a) for the active file in the currently active editor pane, b) for the currently selected (highlighted) suggestion in the switcher itself.

For active file in the active editor pane

The Quick Switcher++: Open Symbols for the active editor command will always trigger Symbol mode for the current active file in the active editor pane (the file actively being edited). Meaning, when this command is triggered (either via a hotkey, command palette, or trigger character), the list of symbol suggestions will always be symbols from the active file in the active editor pane when the command was triggered.

Embedded Symbol mode: For any other file in the vault, open or not

The Symbol mode trigger character (default @) will trigger Symbol mode for the currently highlighted suggestion in the switcher. Meaning, when you open up the switcher and it's displaying a list of your recent files (or a list of file search results), the source file for whichever suggestion is highlighted when you type @ is the file whose symbols will be displayed. The resulting list of symbol suggestions will be from the file suggestion that was highlighted when the @ was typed. You can use the navigation keys to select (highlight) which file will be used as the source file before typing @.

For example: symbols can be viewed by opening Quick Switcher++, typing some characters to filter and/or using the arrow keys to select (highlight) the file of interest. Then, once the file of interest is selected/highlighted, type the trigger character (default @) to view the symbols for the file of interest.

symbol outline preview

Symbol Navigation Configuration

Setting Description Default
Symbol list mode trigger Character that will trigger symbol list mode in the switcher. This triggers a display of Symbols for the source file of the currently selected (highlighted) suggestion in the switcher. If there is not a suggestion, display results for the active editor. @
Symbol list mode trigger - Active editor only Character that will trigger symbol list mode in the switcher. This always triggers a display of Symbols for the active editor only. Note this trigger should be different from Symbol list mode trigger $ (note the trailing space)
List symbols as indented outline Enabled: symbols will be displayed in the (line) order they appear in the source text, indented under any preceding heading.
Disabled: symbols will be grouped by type: Headings, Tags, Links, Embeds.
enabled
Open Symbols in new pane Enabled: always open a new pane when navigating to Symbols.
Disabled: navigate in an already open pane (if one exists).
disabled
Open Symbols in active pane on mobile devices Enabled: navigate to the target file and symbol in the active editor pane, in other words, don't create a new editor pane.
Disabled: open a new pane when navigating to Symbols, even on mobile devices.
disabled
Auto-select nearest heading Enabled: in an unfiltered symbol list, select the closest preceding Heading to the current cursor position.
Disabled: the first symbol in the list is selected.
enabled
Show Headings Enabled: display Headings in the symbol list.
Disabled: don't show Headings in the symbol list
enabled
Show Tags Enabled: display Tags in the symbol list.
Disabled: don't show Tags in the symbol list
enabled
Show Embeds Enabled: display Embeds in the symbol list.
Disabled: don't show Embeds in the symbol list
enabled
Show Links Enabled: display Links in the symbol list. When enabled, the following settings become visible to further refine which types of links are displayed, Links to headings, Links to blocks.
Disabled: don't show Links in the symbol list
enabled
Links to headings Enabled: display links that point to a header, e.g [[file#header]]. This setting is only visible when Show Links is enabled.
Disabled: don't show Links to headers
enabled
Links to blocks Enabled: display links that point to a block, e.g [[file#^blockid]]. This setting is only visible when Show Links is enabled.
Disabled: don't show Links to blocks
enabled

Navigate between open editors

View, and filter all of the currently open editors, and navigate to any of them from Quick Switcher++ by using the default edt command. Note: Symbol search works in this mode as well, so you can use both modes together e.g. edt @. The default builtin Quick Switcher behavior is used when no commands are present.

Editors/views from the side panels can be configured to be displayed in the list as well. For example, you could use this to navigate to the backlinks, file explorer, tag pane, etc.. system views/panes directly from the Quick Switcher.

editor search preview

Editor Navigation Configuration

Setting Description Default
Editor list mode trigger Character that will trigger editor list mode in the switcher. edt
Include side panel views Show the specified view types from the side panels in the switcher. Add one view type per line. Leave empty to never display side panel editors in the switcher. backlink
image
markdown
pdf
Order default editor list by most recently accessed Enabled: When there is no search term, order the list of open editors by most recent access time. enabled

Switch Workspaces

View, filter, and switch between configured Workspaces quickly using the default + command.

Note: the built-in system Workspaces plugin must be enabled for this mode to work.

Workspace configuration

Setting Description Default
Workspace list mode trigger Character that will trigger workspace list mode in the switcher. +

Search Obsidian Bookmarks

View, filter, and switch between Obsidian Bookmarks quickly using the default ' command.

Note: the built-in system Bookmarks plugin must be enabled for this mode to work.

Bookmarks configuration

Setting Description Default
Bookmarks list mode trigger Character that will trigger Bookmarks list mode in the switcher. '

Run Commands

View, search, and run Obsidian commands quickly using the default > command. When there is no search text, the suggestion list will display the list of pinned commands, followed by a list of commands that were recently executed. When there are no pinned commands and no recently executed commands, then all commands are displayed initially. When there is search text, the suggestion list will only display commands that matched the search text.

Command configuration

Setting Description Default
Command list mode trigger Character that will trigger command list mode in the switcher. >

Related Items

View, filter, and navigate to files that are "related" to the selected input file directly from the Quick Switcher, whether the file is currently open in an editor or not. The supported relation types are: Outgoing links, Backlinks, and File system location. This feature can be triggered in two ways a) for the active file in the currently active editor pane, b) for the currently selected (highlighted) suggestion in the switcher itself.

For active file in the active editor pane:

The Quick Switcher++: Open Related Items for the active editor command will always trigger Related Items mode for the current active file in the active editor pane (the file actively being edited). Meaning, when this command is triggered (either via a hotkey, command palette, or trigger character), the list of related item suggestions will always be related to the active file in the active editor pane when the command was triggered.

For any other file in the vault, open or not:

The Related Items mode trigger character (default ~) will trigger Related Items mode for the currently highlighted suggestion in the switcher. Meaning, when you open up the switcher and it's displaying a list of your recent files (or a list of file search results), the source file for whichever suggestion is highlighted when you type ~ is the file whose relations will be displayed. The resulting list of related item suggestions will be for the file suggestion that was highlighted when the ~ was typed. You can use the navigation keys to select (highlight) which file will be used as the source file before typing ~.

For example: related items can be viewed by opening Quick Switcher++, typing some characters to filter and/or using the arrow keys to select (highlight) the file of interest. Then, once the file of interest is selected/highlighted, type the trigger character (default ~) to view the related items for the file of interest.

Backlinks relation (backlink)

When the Related Items command is triggered for a selected input suggestion/file, the entire vault is searched for all backlinks. Backlinks are files that contain an outgoing link pointing to the input file. These will be displayed in the result list along with a count of the number of links to the input file they contain.

Backlinks for Unresolved Links

Unresolved Links are outgoing links that point to files that do not exist in the vault. The Related Items commands can also be triggered for Unresolved Link suggestions, and will behave the same as a regular file.

Outgoing links relation (outgoing-link)

When the Related Items command is triggered for a selected input suggestion/file, all of the internal outgoing links from the input file will displayed in the result list.

File system location relation (disk-location)

When the Related Items command is triggered for a selected input suggestion/file, all files that are located in the same directory in the File System (or otherwise specified in the settings) as the input file will be displayed in the result list.

Related Items Configuration

Setting Description Default
Related items list mode trigger Character that will trigger related items list mode in the switcher. This triggers a display of Related Items for the source file of the currently selected (highlighted) suggestion in the switcher. If there is not a suggestion, display results for the active editor. ~
Related Items list mode trigger - Active editor only Character that will trigger related items list mode in the switcher. This always triggers a display of Related Items for the active editor only. Note this trigger should be different from Related items list mode trigger ^ (note the trailing space)
Show related item types Specify which relation types are enabled to be displayed in the result list. backlink
disk-location
outgoing-link
Exclude open files Enabled: related files which are already open in an editor will not be displayed in the list.
Disabled: All related files will be displayed in the list.
disabled

Open Vaults

Note: this is an experimental feature.

Open existing vaults directly from the switcher using the default vault command.

Vault configuration

Setting Description Default
Vault list mode trigger Character that will trigger vault list mode in the switcher. vault

Quick Filters

Quick Filters enable you to quickly narrow down the types of items that appear in your search results without having to change your query. Each type of results will have a hotkey assigned that can be used to toggle (show/hide) that type from the result list. When active, only results that match the Quick Filter type will be displayed, multiple Quick Filters can be active at the same time.

In the demo below, Quick Switcher++: Open Symbols for the active editor global command is triggered for the active file. Notice towards the bottom of the Switcher the hotkeys assigned to each result type. The headings Quick Filter is triggered using the Ctrl+Alt+1 hotkey, this restricts the result list to only display Heading results. Multiple Quick Filters are activated using their corresponding hotkeys, and all Quick Filters can be quickly toggle off using Ctrl+Alt+0.

quick filters gif

General Settings

Setting Description Default
Show ribbon icons List of modes that should be accessible from the ribbon menu. HeadingsList
SymbolList
Override default Switcher launch button (the "⊕" button) on mobile platforms Override the "⊕" button (in the Navigation Bar) on mobile platforms to launch Switcher++ instead of the default system switcher. Select the Mode to launch Switcher++ in, or select "Do not override" to disable the feature. Do not override
Preferred suggestion title source The preferred source to use for the primary suggestion text that will be searched and displayed for file based suggestions. First H₁ heading
Preferred file path display format The preferred way to display file paths in suggestions. Note: by default, path information will not be displayed for files at the root of the vault. Parent folder & filename
Hide path for root items Enabled: path information will be hidden for items at the root of the vault. enabled
Mode trigger escape character A character that can be used as a prefix to force a mode trigger character to be treated just as normal text. !
Default to open in new pane Enabled: navigating to un-opened files will open a new editor pane whenever possible (as if cmd/ctrl were held). When the file is already open, the existing pane will be activated. This overrides all other pane settings. enabled
Override Standard mode behavior Enabled: Switcher++ will change the default Obsidian builtin Switcher functionality (Standard mode) to inject custom behavior. Custom behavior includes features like enhance rendering of suggestion items to display additional information, special path display handling, and tab navigation features.
Disabled: No changes are made to the default Obsidian builtin functionality (Standard Mode).
enabled
Show indicator icons Enabled: Display icons to indicate that an item is recent, bookmarks, etc... enabled
Result priority adjustments Enabled: Artificially increase the match score of the specified item types by a fixed percentage so they appear higher in the results list (does not apply to Standard Mode). See the default list of priority types that can be prioritized. Note that the adjustments are independent of each other, e.g. if adjustments are specified for both Bookmarked items and Open items a result for a file that is open and bookmarked will receive both adjustments.
Disabled result match scores are not adjusted.
disabled
Use filename as alias Enabled: The file basename will be set as the link alias.
Disabled: An alias will not be set
enabled
Use heading as alias Enabled: The file heading will be set as the link alias. This overrides the "use filename as alias" setting.
Disabled: fall back to the "use filename as alias" setting.
enabled
Restore previous input in Command Mode Enabled: restore previous command mode input when launched via global command hotkey disabled
Restore previous input Enabled: restore previous switcher input when launched via global command hotkey disabled
Display mode trigger instructions Enabled: the trigger key for each mode will be displayed in the instructions section of the Switcher. enabled

Global Commands for Hotkeys

The following Global Commands are registered by the plugin, which can be used for global hotkeys/shortcuts.

  • Quick Switcher++: Open in Standard Mode
  • Quick Switcher++: Open in Editor Mode
  • Quick Switcher++: Open Symbols for selected suggestion or editor
  • Quick Switcher++: Open Symbols for the active editor
  • Quick Switcher++: Open in Workspaces Mode
  • Quick Switcher++: Open in Headings Mode
  • Quick Switcher++: Open in Bookmarks Mode
  • Quick Switcher++: Open in Commands Mode
  • Quick Switcher++: Open in Vaults Mode
  • Quick Switcher++: Open Related Items for selected suggestion or editor
  • Quick Switcher++: Open Related Items for the active editor

Installation

From Obsidian

From Obsidian v0.9.10, this plugin can be activated from within Obsidian:

  • Open Settings > Third-party plugin
  • Make sure Safe mode is off
  • Click Browse community plugins
  • Search for "Quick Switcher++"
  • Click the "Install" button
  • Once installed, close the community plugins window
  • Under the "Installed plugins" section, enable Quick Switcher++

From Github

  • Download the Latest release distribution
  • Extract the the contents of the distribution zip file to your vault's plugins folder: <vault>/.obsidian/plugins/ Note: On MacOs the .obsidian folder may be hidden by default.
  • Reload Obsidian
  • Open Settings, third-party plugins, make sure safe mode is off and enable "Quick Switcher++" from there.

Contributing

Contributions via bug fixes, documentation, and general improvements are always welcome. For more major feature work, please create a Discussion about the feature idea, or reach out to me so we can judge feasibility and how best to implement it.

A primary design goal for Switcher++ is to be a "drop in" replacement for the built-in system Switcher. Such that, a user can simply replace the built-in system Switcher with Switcher++ and have all the built-in functionality continue to work as expected.

Getting started

  • Clone the repository
  • cd into the repository directory
  • Run npm install
  • Run npm run dev this will monitor for any source file changes and run unit tests, linter, and build the plugin whenever a change is detected.
  • Happy coding! 😀

Change Log

Notes

  • This plugin very much experimental at the moment, use it at your own risk. It's only been tested on MacOS, other platforms may have issues.

Giving Thanks 🙏

If this project has been useful to you, give thanks to support its continued development and maintenance. Any contribution towards a cup of ☕ or 🍺 is greatly appreciated. Thank you!

Give Thanks Paypal Give Thanks buymeacoffee

obsidian-switcher-plus's People

Contributors

bytemain avatar darlal avatar dependabot[bot] avatar dgurkaynak avatar liamcain avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

obsidian-switcher-plus's Issues

Symbol Mode Indentation: Not Functional with Minimal Theme

When using the default Obsidian theme, the indented symbol list appears as anticipated when searching in Symbol mode. When using the Minimal Theme, however, the indentation vanishes—all of the headings appear, but are in a flat hierarchy rather than nested.

My apologies for submitting this here, as I realize you might have no ability to address how your plugin engages with a particular theme. But I thought perhaps you'd have some insight on how to address the issue. I've also submitted a similar issue on the Minimal Theme repository.

Feature request: sort order

Hey,
Quick Switcher++ is awesome, there's just one major thing that I'm missing from it: a sort order that can prioritize recently open files and modified time.
For me, and I assume also for most other users, newer and recently-opened notes have a considerably higher chance of being the most relevant match for a given query. The fact Obsidian's internal switcher and Quick Switcher++ ignore this metric, and just match plain text, is missing a huge opportunity to provide much better results!
Thanks in advance :)

Allow remove highlight on symbol mode search

In symbol mode search when you select an item it directs you to the item by highlighting it.

The problem: you might think the Esc key would remove the highlight but no, it remains. It is only removed by clicking somewhere in the editor.

Windows 11.
Obsidian v0.13.23

[Feature Request] New Command = Open + Open in Symbol Mode

Hello @darlal !!!!!!!!!!!!!!!!

MY FR is simple to explain: it's a new command that combines two QS++ commands into one:

  • Quick Switcher++ : Open
  • Quick Switcher++ : Open in Symbol Mode

Another words: Choose a file to open and after opening the file, automatically bring the Symbol Mode Modal to give us the ability to navigate in the new open file !!!!

My Workflow

I have a lot of notes that I create to store references/terms from things that I'm learning to remember when I'm working on a specific subject. I call these Reference Notes. For example:

  • Excel Formulas
  • Regex queries
  • iOS Shortcuts
  • CSS definitions and selectors

These notes have a simple structure:

## Reference 1

Details about Reference 1

`code`

Explanation about the code

## Reference 2

Details about Reference 2

`code`

Explanation about the code

This way, many times I open the note Open and hit another hotkey to enter in Symbol Mode to start searching about a reference.

  • Most of the time I don't remember the exactly name of the reference, I just know that is inside this note due to the topic that is related.
  • This way I can't use only symbol mode directly to search . I have to open the specific note and then go to Symbol Mode to search between the readers using the arrows keys

Since this is something that do many times, I realize that we could have an specific command that merge these two commands :)

Workaround

Today to achieve something like this, I'm using a QuickAdd Macro

AD898751-D6E5-4478-83A6-2E78C2CD21E9

The problem here is that I have to use a timer between the two commands and some times I'm too fast and other times I forget the name of the note and I lost the time to open the note :(


I hope you like my suggestion :)

Thanks for reading this !

Have a great day!!!

[FR] Filter tags globally

I'd love to have a 'tag mode' which allows to search for any specific tag and then list all notes containing it.

It'd surprise me if no one has asked for this yet... Unless it's already implemented and I just never figured out..?

[FR] remnote like search

ok, I think this maybe too more for this plugin, but I really need a general search like remnote software, it combind ctrl + O with ctrl shift F, so you can search and jump to anywhere. Of course, filename and title would be first class citizen (should show up first)

it also have tree search, for example, you can search filename first and then tab to search heading or any content in the file you selected before

Select nearest symbol when performing "Open in Symbol Mode"

I'm a few weeks into Obsidian and I find Quick Switcher++ invaluable to do what I used to do in Sublime Text before: switching between headings in long documents using just the keyboard. I'm really grateful for your work!

However, a very important behavior of the Sublime symbol switcher is currently absent from Quick Switcher++, and it's really slowing me down when working inside long documents: starting from the nearest/current heading from the cursor when invoking Open in Symbol Mode.

Typically, I've got one log file per big project, with a h1 heading for each day, and further headings for subjects I've worked on. Every new day I append a new h1 heading and start taking notes. My biggest project currently weighs 500 KB (started in January), so there are a lot of headings.
With this proposed behavior (could be an option), I can start from the current day, at the bottom, and quickly navigate to the earlier days by just pressing Cmd+R (my shortcut for Open in Symbol Mode) and the Up arrow.

(In the same vein, to help fast keyboard-based navigation, the symbol switcher in Sublime and others also scroll the editor view to the selected heading in real-time, and scroll back to the cursor if the user cancels. Not sure if this belongs to another enhancement request/issue?)

[FR] filter result by fuzzy search on filename

for example, I have a lot of file contain # TODO heading

image

I would like to enter filename to quickly find what I actually want (filter result), because there is too many result, up and down key would be inconvenient

Support to run terminal scripts

If you add ability to run any scripts via terminal triggered in your switcher. You will be forever loved in Obsidian tech community. Similar feature have Sublime reader.

[Feature Request] Symbol List Mode -> A New Toggle for Block References Links

Hello again @darlal !!!!

This Feature Request is related to the content of the toggle LINKS in the Symbol List Mode.

In Obsidian we have three types of internal LINKS:

  • Internal Links: [[MyFileName]]
  • Embed Links: ![[MyFileName]]
  • Block Reference Links: [[MyFileName#^abc1234]]

In QuickSwitcher++ we have two toggles to show these links in the List View:

Screen Shot 2021-10-06 at 06 22 39

Links:

  • Internal Links: [[MyFileName]]
  • Block Reference Links: [[MyFileName#^abc1234]]

Embed:

  • Embed Links: ![[MyFileName]]

My FR

My FR is a new toggle to separate Internal Links and Block Reference. This way we will have these toggles:

  • Heading
  • Tags
  • Links >>> ([[MyFileName]])
  • Embeds
  • Block References >>> ([[MyFileName#^abc1234]])

My suspicion is that Obsidian has a way to identify/separate blockreferences and links!

Looking at the Outgoing Pane we can see that a theme can define different icons to these two types of links:

Screen Shot 2021-10-06 at 06 28 10

Why I'm Requesting this

Since I'm a keyboard lover I use the Symbol Mode as an Outline Core Plug-in to Navigate between Headings in the current note. Since I use headers to organize my notes, it's much better to use the Symbol List Mode :)

My book notes has a lot of block references (300 for each book note). Since English is not my native language I need to use block references to connect what I'm writing (or translating) about a book (permanent notes) with the original source (literature note or books highlights notes) that are in English.

  • If something felt wrong in the future, I have the original source to study again and make corrections.

Screen Shot 2021-10-06 at 06 35 20

I use links (backlinks) as everybody uses: create new content that needs reference for crossing content inside the vault:

  • Person of Interest: [[Richard Feynman]], [[James Clear]] ...
  • Topics: [[Journaling]] [[Morning Routine]] ...

When I have Toggle Links and Headings, My Symbol List Mode has a lot of block references that don't help me: I have a hard time to find the [[links]] inside the note from each header :(

Screen Shot 2021-10-06 at 06 39 10

That's why I'm requesting a new toggle -> to only toggle Links and Headings :)


I hope you like my suggestion and thanks for reading this :)

I wish you a fantastic day!!!!

Autocomplete suggestions stopped working in 0.12.5?

Just switched to latest insider build and switcher's autocomplete is no longer working. It works with edt and @ but not with default note search.

Here's the console output:

Uncaught TypeError: Cannot read property 'options' of undefined
    at class_1.t.getSuggestions (app.js:1)
    at class_1.t.updateSuggestions (app.js:1)
    at class_1.updateSuggestions (eval at <anonymous> (app.js:1), <anonymous>:855:52)
    at class_1.t.onInput (app.js:1)
    at class_1.onInput (eval at <anonymous> (app.js:1), <anonymous>:850:38)
t.getSuggestions @ app.js:1
t.updateSuggestions @ app.js:1
class_1.updateSuggestions @ VM115:855
t.onInput @ app.js:1
class_1.onInput @ VM115:850

[Feature Request] Open file in new window

Would love to be able to pop open a new window with the file selected in switcher plus. Like with the popover option added recently. Thanks! I love this plugin, especially the ability to view headings.

[Feature Request] Open note in new pane by default

Hi!

I'm working with the 'sliding panes' plugin at the moment. Would an option to open notes in a new pane by default be an easy addition? It'd be great addition here given I can't seem to find it anywhere else.

Cheers

confuse where to use it?

Should it be used in the switcher and type # then trigger the search of headers? On my side nothing happens.

demo:
image

setting:
image

[Feature Request] Symbol Mode - Support for Obsidian Callouts

Hello @darlal !!!!!

My FR is simple to explain: A new item to the spectacular Symbol Mode —> Obsidian Callouts !!!!

  • Show Callouts

A3D42EC9-5670-4A46-BF7B-19A22694E3D1

⚠️ I don’t know if is feasible but would be a great addition to the Symbol Mode :)

My Idea

If the Callout have Title >>> Symbol Mode list will show the title Lorem Ipsum

55BBC1E1-78FF-461C-AC94-EAB6A5F103AC

If the Callout DONT have a Title >>> Symbol Mode list will show the callout type NOTE

A1A76C46-2D9D-4BD8-B0E9-5E3880B4E140


Since we use callouts to store/write important items of a note, I think would be great to be able to open Symbol Mode and navigate directly to the content inside a Callout :)

Thanks for reading this !!!!

Let me know what you think :)

Have a great day @darlal !!!!!!!

[Feature Request] Quick Swicher++ Open in Editor Mode for SIDEBAR Notes

Hello @darlal !!!

I recently find out about QuickSwicther++ and I don't know how I could operate before without it. Thank you so much for creating this to our community!

My feature request is related to notes placed in the Sidebars (right and Left).

  • If you browse in Discord for the past month you will see a lot of people placing Notes in the Sidebar as a quick alias when reading or writing.

My workflow is this:

  • I have a bunch of source notes splited in the Panes and Tabs;
  • I have my "Quicknote" note in EDIT MODE (which is a Workbench Note) on the Right Sidebar
  • As far as a I read call the Sidebar trough a hotkey and start taking some notes
  • Then I hide the Sidebar to continue to reading.

Screen Shot 2021-06-22 at 10 30 47

Screen Shot 2021-06-22 at 10 31 16

My Feature Request:

Adding to the feature Quick Switcher++ Open in Editor Mode list notes that are placed in the Sidebar (right and left).

Screen Shot 2021-06-22 at 10 39 28
As you can see my Quicknote is not in the list

This way I can navigate between the notes only using my keyboard.

I hope you like my suggestion. Let me know if you need any additional information!
Thanks for your time!

Switch Workspaces

How hard would it be to allow a feature like 'edt' but for workspaces? e.g. 'wsp' or 'wk'
it's easy enough to assign a hotkey to 'load workspace' but I'm hoping to unify all my searching hotkeys as much as possible

Search for and select a folder

I want to be able to jump to a folder. I use File Tree Alternative and want to be able to search for a folder name and jump to the folder. But I think this could be generally useful. How about adding f:foldername or some other leadin to specify that the search is for folders and to jump to the folder when selected.

[Feature] Show path in editor mode

Currently in editor mode (with "edt" command) only the note (file) names are shown, but no path is visible.

It's a good idea to focus on the filenames only (lot easier to read), but to me it happens that I have multiple notes with the same name, but in different folders. In such case, I see these note names multiple times as desired, but I cannot decide which note is on which path.

Is it possible to show the paths of these files next to the file names, maybe with a smaller font type? Like (where "thoughts" is the multiple occuring filename): "thoughts (/notes/today/thoughts)" where the (...) brackets part could be with a smaller font.
Or maybe should show the path only in cases when there are multiple notes with the same name? Or even better to have an setting for it?
Would be great if some enhancement is achievable.

[Feature Request] - Filter Folders/Tags

My biggest gripe with the default switcher is that you cannot filter out archived things. I have a ton of old links/articles/folders that I have archived. These pollute the quick switcher and greatly diminish the functionality.

It would be great if there were a set of configurable filters to remove entries from the quick-switcher based on either folder or tag filtering

image

indenting in symbol mode

It would be great to have indentation in the symbol mode.

I see that you have H1, H2 etc marked, and that is certainly useful, but indentation would make the hierarchy very obvious and allow fast navigation of a large note too.

This functionality kind of replaces the outline.

Congratulations on the plug-in btw. This is the only plug in I have installed even though plug-ins are still in alpha.

[Feature request] Add quick switch for vaults

I request an additional functionality: to quickly open (or switch to) a different vault.
Right now, there is a core command (and shortcut possible) to open de vault modal window, but I still need to use the mouse to select the other vault.

One idea: a command Quick Switcher++: Open in Vaults Mode - then selecting the vault with arrows/enter.

Another idea: define a specific command to open a specific vault. Defined in preferences.

Thanks,

Please add a "Recent Files" mode

Really like quick switcher plus -- especially the different modes.

There is a Recent Files extension that I've found useful. However, it would be even more convenient if the list of recent files was available via a new quick switcher plus mode. It would be fine to have a dependency on the Recent Files extension being installed before this mode could be used.

[Feature Request] `New List Mode`: Active Folder List

Hello @darlal !!!

I have an idea for a new list type: A list that only shows the notes from the folder where the active note is located.

  • The Active Note will not be in this list
  • Any open Note from the same folder will not be in this list

Idea

1- Image a Folder with these structure:

Folder1
--> NoteA
--> NoteB
--> NoteC
--> NoteD
--> ImageA (.png)

2- On Obsidian, we have these two notes in the screen (open)
--> NoteA is open
--> NoteB is open and is the Active Note

3- When calling Quick Switcher++: Open in Active Folder Mode the following notes will be showed (only notes from the Folder1 that were not Open):
--> NoteC
--> NoteD
--> ImageA

4- Hitting Enter Open the Note and Hitting Cmd+Enter open the Note in a new Tab

  • Maybe a setting just like Open Symbol in new Pane to define the default behavior.

Why I'm requesting this ?

When I'm working on a specific project I prefer to create a specific folder and start generating notes from this project inside that folder.

Having a QuickSwitcher List Mode that only shows sources from this project would save me a lot of time since I love to work with keyboard hotkeys

Thanks for reading this. Let me know if you need more information.

I wish you a fantastic day!

[Feature Request] Separate File/Folder Path & File Name for Search Purposes

The current search results in Quick Switcher ++ show the full path of a particular result.

In my Vault, for instance, today's daily note displays as 01 Inbox/2022/05-May/22.05.09

This can make search results a little hard to read, particularly for those of us who use deeply-nested folders. Would you consider having the file path—

(1) As a feature that can be toggled on or off.
(2) Displayed separately from the file name (perhaps below the file, the same way that Aliases/File Names are currently rendered together, or, alternatively, displayed separately from the file name along the righthand margin of the search results window).

FR: Add class to the Quick Switcher to allow Styling by themes

I am a theme dev and would like to theme the prompt by this plugin, however the html elements form this plugin use exactly the same classes as the regular quick switcher. Therefore, it is not possible to properly style this plugin without affecting the other prompts. 🙁

Screenshot 2022-04-03 12 06 51

Switch with full text search

Hello!

I just wanted to know if it was possible to have full text search in open switcher++, basically just having the existing search future in the same kind of palette that your plugin to be able to navigate the results up and down with the keyboard (unlike the current obsidian search in the sidebar) like for instance in Notion or other similar apps.

Thanks a lot!

Error when opening quick switcher

Hi,
When opening the quick switcher, Im getting this error, and the switcher doesn't suggest any options.

VM157:450 Uncaught TypeError: Cannot read property '0' of null
    at ModeHandler.onInput (eval at evalFunc (app.js:1), <anonymous>:450:47)
    at class_1.onInput (eval at evalFunc (app.js:1), <anonymous>:849:20)
    at class_1.onOpen (eval at evalFunc (app.js:1), <anonymous>:841:18)
    at class_1.e.open (app.js:1)
    at class_1.openInMode (eval at evalFunc (app.js:1), <anonymous>:834:18)
    at Object.checkCallback (eval at evalFunc (app.js:1), <anonymous>:922:31)
    at dt (app.js:1)
    at e.executeCommandById (app.js:1)
    at e.onTrigger (app.js:1)
    at e.handleKey (app.js:1)

I'm fairly certain it's related to this plugin, as the core switcher didn't have this problem

Exclude is NOT working.

I don't know if I don't know how to use it, or what, sometimes it works and sometimes it doesn't work, and I can still find it in the excluded folder.

It can be ruled out at the first time of reload, and useless after re-entry.

[Bug] Navigating to Links puts cursor at end of block

Plugin Version: 0.0.9
Obsidian version: 0.10.7

Steps to reproduce

  • Open Switcher in Symbol mode
  • select a 🔗 link

Expected?

I would expect the cursor to appear over the link (preferably at the start of the link).

Actual

Instead, the cursor appears at the end of the block that the link appears in.

new note Creation with Case in-sensitive input

When I want to create new note with this plugin, I must input Case sensitive path strings.
But, plugin shows that matching is not case sensitive.

So I think, if there is one and only one choice for the path, isn't it OK to creating a new note with case insensitive input?

[Feature Request] Always respect "Auto-select nearest heading"

Hi,

the "Auto-select nearest heading" setting is valid when using the "Open in Symbol Mode" command.
However, it should also be respected when simply launching "Quick Switcher++: Open" with a keyboard shortcut and just pressing @ to enter in symbol list mode for the current file.

Thanks,
really great stuff here!

Accessing backlinks of current file

Hello :). I really love this plugin, as it makes keyboard navigation through your vault so much easier.

I'd have one feature suggestion.

So far i've found no way to interact with backlinks without using the mouse pointer.

It would be great if backlinks could be accessed through quick switcher++ (at least in a capacity to see the file names for backlinked files. unmentioned links would be a great plus too.) a seperate shorthand character and hotkey would be great too.

Cheers and thx for the great plugin :)

"Only parent folder" option not working

I'm not sure I understand what this new option is supposed to do. No matter which option I select, the suggester shows the files exactly the same: full path. I tried "only parent folder" thinking it would be like folder/filename even if, say, that file is 3 folders deep. Instead, every option displays files the same way: folder-level-1/folder-level-2/filename etc.

Maybe I'm just misunderstanding what that option controls?

Scroll/select symbol in real-time

To help fast keyboard-based navigation, well-known symbol switchers like the one of Sublime Text and others scroll the editor view to the selected heading in real-time, and (equally important) scroll back to the cursor if the user cancels.
This way, it's very easy to get a glimpse of what we're switching towards, if the title isn't enough.
It provides an additional layer of context that can allow us to find our way much faster.

It would be nice if Quick Switcher++ worked the same way.

More specifically, in Sublime, the heading/symbol is selected in real-time in addition to scrolling, and if the user cancels the selection is restored to what it was before invoking the switcher.
But not selecting the heading/symbol and just scrolling the view to it would be fine too.
Whatever the underlying API allows more easily, I'd say.

(By the way, the Sublime switcher works the same way for files too, but given that Obisidan's core switcher doesn't work that way I guess it'd be a job for Obsidian devs to support this function for quick file switching.
Nevertheless, it could be done in symbols first and it would already be a huge help.)

edit mode functionality missing

When symbol mode is used in with the file in edit mode, the relevant symbol is scrolled into view and gets highlighted, but the file cannot be edited anymore with the keyboard. I have to click on the note with the mouse to start editing again.

This is on Windows 10

Additional settings to customize the commands syntax

Hi,
I was wondering if it could be possible to add some settings to customize the @ and edt commands. Personally, I am fine with @ syntax, especially since it matches the VsCode keybindings :)

Nevertheless, I would like to limit the number of keyboard shortcuts in obsidian, and a shorter command than edt like + or > for example would reduce the cost of switching between open editors imho (I tend to have quite a few opened simulteanously). This way for a very small additional effort (one extra character prefix to the search), I could have access to 'open editors search', 'symbol search', and 'files in vault search' with only one keyboard shortcut.

To push the logic even further, I feel that switching between open editors is a task I need to execute even faster than opening another file from the vault. What I mean is that usually if I have many editors open, it is because they belong to the same work / thought process, and in that case I would rather keep a fluid workflow switching seamlessly between editors. On the other hand, when I search for another file, I usually am looking for additional resources, and kind of "out of the zone" anyway so I do not mind typing extra stuff. So, following that logic, I think I would even prefer having the default search (no extra @ or edt command) for switching between open buffers, and a special command to search for files in the vault instead.

Sorry if I was too long sharing my thoughts, but I feel this kind of flexibility could add value to your (already very useful) plugin. Thanks for your time and attention :)

unable to invoke the command bar anymore

I am not sure what went wrong. This plugin used to work really well (and thank you!!❤️) but today I just found it doesn't work anymore. I tried to restart Obsidian, restart the system, turn off and on this plugin and re-assign hotkeys to the commands. None of them helped.

I noticed that the recent official release had changes to the quick switcher in the new version, could this be the reason for it? I now have Obsidian v0.12.7.

Thanks a lot for this plugin!

searching for `@` and `edt ` in switcher-plus

I cannot search for filenames using @ and edt
These are allowed characters in filenames in windows, but using these characters in switcher-plus activates the symbol navigation and editor navigation functions.
I need to resort to the native switcher to search for these files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.