Home

Awesome

Obsidian Another Quick Switcher Plugin

release Tests downloads

This is an Obsidian plugin which is another choice of Quick switcher. It offers various features, such as:

⏬ Install

You can download from Community plugins in Obsidian settings.

⌨️ Features

1. Custom searches

Demo

Custom searches enables you to create your original search commands.

Demo

Search target

NameDescription
markdownAll markdown files
backlinkMarkdown files in backlinks on the current file
linkMarkdown files in outgoing links on the current file
2-hop-linkMarkdown files in 2-hop-links from the current file
opened fileMarkdown files opened in the current window

Sort priorities

You can use the following names as a Sort priorities.

NameDescriptionSince
Perfect word matchA query matches perfectly with a word in the file name6.0.0
Prefix name matchThe file name or alias starts with a query6.0.0
Name matchThe file name or alias includes a query6.0.0
Fuzzy name matchThe file name or alias matches fuzzy with a query8.10.0
Tag matchThe query includes the file's tag name6.0.0
Header matchThe query includes the file's header name6.0.0
Link matchThe query includes the file's internal link name6.0.0
Property matchThe query includes the file's property name11.0.0
LengthLength of the file name or alias6.0.0
Last openedThe time the file opened last6.0.0
Last modifiedThe time the file modified last6.0.0
StarThe file has a star6.0.0
AlphabeticalFile name or alias order by alphabetically ascend6.2.0
Alphabetical reverseFile name or alias order by alphabetically descend7.0.0
Created latestFile creation date from the latest to the earliest7.0.0
Created earliestFile creation date from the earliest to the latest7.0.0
(Tags split by comma)The file has specific tags7.0.0
(Extensions split by comma)The file has specific extensions8.3.0

Warning Please don't forget to click the Save button before you close Obsidian. Otherwise, the settings will never restore when you open Obsidian next time. Demo

Note Examples of (Tags spit by comma) are #hoge, #hoge,#huga, and so on.

Note Examples of (Extensions spit by comma) are .md, .md,.canvas, and so on.

Preset search commands

<details> <summary>Recent search</summary> <img src="https://raw.githubusercontent.com/tadashi-aikawa/obsidian-another-quick-switcher/master/demo/recent-search-setting.png" alt="recent search" /> </details> <details> <summary>File name search</summary> <img src="https://raw.githubusercontent.com/tadashi-aikawa/obsidian-another-quick-switcher/master/demo/file-name-search-setting.png" alt="file name search" /> </details> <details> <summary>Landmark search</summary> <img src="https://raw.githubusercontent.com/tadashi-aikawa/obsidian-another-quick-switcher/master/demo/landmark-search-setting.png" alt="landmark search" /> </details> <details> <summary>Star search</summary> <img src="https://raw.githubusercontent.com/tadashi-aikawa/obsidian-another-quick-switcher/master/demo/star-search-setting.png" alt="star search" /> </details> <details> <summary>Backlink search</summary> <img src="https://raw.githubusercontent.com/tadashi-aikawa/obsidian-another-quick-switcher/master/demo/backlink-search-setting.png" alt="backlink search" /> </details>

Note

Queries enclosed in double quotes are searched as is
A minus sign at the beginning excludes the matched candidates

Ex: If there are three files.

hoge -md suggests only hoge.

<cd> means the current directory

If a path of the active file is "/usr/local/vault/notes", The query, "<cd> obsidian" will regard as "/usr/local/vault/notes obsidian".

2. Header floating search in file / Header search in file

Demo

3. Grep

This feature requires ripgrep and set the executable command to "Ripgrep command" option.

Demo

It sorts results by modified time descending.

Default hotkeys

Note

4. Customizable hotkeys

Detailed hotkeys customization is available for each dialog.

Demo

5. Backlink search

The new Backlink search enables displaying all occurrences in the same file and listing the corresponding lines' text.

https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/assets/9500018/0ce0111a-7481-40a0-a49e-ab00a2f37b35

6. Link search

The new Link search enables displaying all occurrences in the same file and listing the corresponding lines' text.

https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/assets/9500018/b31034e7-7ad7-4ab5-8294-6b4950efe224

7. In file search

"In File search" allows you to search for a specific line within a file using a search keyword and displays it along with the surrounding lines.

https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/assets/9500018/0b16c4f4-b071-4e05-9402-00ae2525e57c

8. Show backlinks from the dialog

You can show the backlinks about the suggestion in the dialog. (Default hotkey is Mod h)

It can show backlinks from not only existing notes but also phantom(not existing) notes.

Demo

9. Navigate outgoing/backlinks without leaving the dialog

You can navigate outgoing/backlinks without leaving the dialog by using the "show links", "show backlinks", "navigate forward", and "navigate back" commands.

Demo

10. Preview

You can preview the file without closing the dialog. (Default hotkey is Mod ,)

It shows a floating view that doesn't distract the contents. Additionally, it makes the editor state before opening the dialog after previewing files and closing the dialog.

https://user-images.githubusercontent.com/9500018/216806330-daf57b52-d8a4-42e3-9803-ba7d76a93319.mp4

For users who use earlier than v8.0.0

Please read a "🔥 Breaking changes" section in the Release note.

For users who use earlier than v7.0.0

Please read a "🔥 Breaking changes" section in the Release note.

For users who use earlier than v6.0.0

Please read a "🔥 Breaking changes" section in the Release note.

📱 Mobile support

It both supports desktop and mobile.

Feature requests / Bugs

Please create a new issue.


🖥️ For developers / contributors

Pull requests

Sorry, I would not accept the pull requests except for the following cases.

  1. Fix obvious bugs
  2. Fix typo or wrong documentation
  3. If I ask for it in the GitHub issues or the discussions

Development

Set up

git config core.hooksPath hooks

Install dependencies

Bun is required.

bun i
bun dev

Release

Run Release Action manually.

Appendix

What is the "2-hop-link"?

2-hop-link are outgoing links in the current file, and files that have outgoing links to them.

For example, If there are relations as follows,

flowchart LR
    D[Dog] --> A[Animal]
    C[Cat] --> A
    O[Owl] --> A

2-hop-link from the "Dog" is as follows.

flowchart LR
    D[Dog]:::focus --> A[Animal]
    D[Dog]:::focus --> C[Cat]
    D[Dog]:::focus --> O[Owl]
    
    classDef focus fill:#f96

More complicated example.

flowchart LR
    Dog:::focus --> Animal
    Dog --> Masaru
    Zagitova --> Masaru
    Masaru --> Akita-inu
    Cat --> Animal
    Owl --> Animal
    Tama --> Cat
    Mike --> Cat
    Animal --> Zoo
    Zoo --> Animal
    Mahjong --> Zoo
    Animal --> Coffee
    classDef focus fill:#f96

2-hop-link from the "Dog" is as follows.

flowchart LR
    Dog:::focus --> Animal:::focus
    Dog --> Masaru:::focus
    Zagitova:::focus --> Masaru
    Masaru --> Akita-inu
    Cat:::focus --> Animal
    Owl:::focus --> Animal
    Tama --> Cat
    Mike --> Cat
    Animal --> Zoo
    Zoo:::focus --> Animal
    Mahjong --> Zoo
    Animal --> Coffee
    classDef focus fill:#f96