pashashocky / obsidian-note-gallery Goto Github PK
View Code? Open in Web Editor NEWA masonry note gallery for obsidian.
License: GNU General Public License v3.0
A masonry note gallery for obsidian.
License: GNU General Public License v3.0
in source mode, clicking switch to reading mode right now won't render gallery.
As we speaked about on discord
I think it would be useful to be able to have rows of same-size notecards, square or otherwise. If the note is too long, then there can be a little search bar in the note to scroll up and down. There's another note plugin that allows for something similar but their implimentation of the scroll bar includes one that goes side to side which makes the whole plugin unusable.
Within each of my directories containing notes, there exists an assets
folder.
I have confirmed the functionality of the query I am employing:
query: '[type:mysetup]'
debugQuery: true
Contrarily, it inadvertently selects images from the assets
folder, even though the query isn't designed to include them given they are image files and inherently lack front-matter?
The method to circumvent this issue is to use recursive: false
, which unfortunately undermines the purpose in scenarios where multiple folders are present
Thanks
For example, sorting by the value of the property "cite"
Sortby: cite
Images with specified size (like this ![[logo.png|300]]) follow the large size in the note page.
This css snippet will make it follow the gallery width:
It should be better if this option can be set as default.
.card-content img{
max-width:100%;
}
btw, the margin between title and content is too large in my minimal theme. I made some minor changes with the following css snippet:
.card-content p{
margin-top: 0;
}
.note-card hr{
display: none;
}
.search-empty-state{
display: none;
}
Hey there!
Disabling titles under Appearance
will prevent titles from appearing in the Gallery View, despite the flag being set to True
within the config. Not sure if intended, but just wanted to call it out. It would be nice (or rather, preferable) that that option overrides the Appearance toggle, since it's nice to see the titles in the Gallery view, but not so much in the Editor itself (at least for me).
Thanks!
Hi, Pasha, thank you for your amazing plugin!
I use obsidian on both desktop and mobile with obsidian sync. I've found that when I add notes on my phone, the plugin on desktop doesn't update automatically (It does update on mobile). I have to run the command to refresh it manually. The same happens vice versa.
Is is possible to make the plugin update automatically in real-time across mobile and desktop?
Hi,
I'm brand new to Obsidian, so please be gentle.
I'm wanting to move away from Google Keep.
I just installed Obsidian and this plugin on my phone, I enabled the plugin and created a note with the "quickstart" code snippet, I can't for the life of me get the "gallery" view of my two notes.
When I start Obsidian I simply get a new tab saying "No file is open" with buttons to create a new note, go to file or see recent files.
Thanks!
I acknowledge that I may be using it wrong; however, it appears that the query function doesn't work.
I have tried all of these with no results showing.
~~~~note-gallery
query: 'path: Worlds/The Vault/Masks'
debugQuery: true
~~~~
~~~~note-gallery
query: path:Worlds/The Vault/Masks
debugQuery: true
~~~~
~~~~note-gallery
query: tag:#Masks
debugQuery: true
~~~~
~~~~note-gallery
query: 'tag: #Masks'
debugQuery: true
~~~~
The path function works perfectly; but, I would like only to show results with a specified tag.
I would also like to mention that I'm a big fan of this plugin, there is another one called Page Gallery by Nathan Clark, which is very similar, and honestly a bit more versatile and easier to use; however, due to the amount of results I would like to load its performance is terrible. Perhaps in consideration of that, a "results per page" would be a wise addition, so not every result is loaded at the same time, even though your plugin seems to be more performant so far.
I'm moving over from Google Keep, Obsidian is a much more in-depth solution which I intend to use, but I want to replicate the main search and masonry list from Keep.
Your plugin looks great, is it possible to reflect the current global search query (which could be anything, tag, path, filename etc) dynamically in the masonry view, without having to keep editing the query manually?
Many thanks
I want to use path and go 2 levels down, but want to skip the "_attachments" and another directory I use. Not clear how to do this. Maybe add an "pathexclude" to allow that.
Hi there, as a new Obsidian user, the "Example Syntax" section was extremely confusing for me. If it weren't for my software background, I would have given up and uninstalled. Which would be silly because this plugin rocks.
The syntax block assumes people already know how this syntax stuff works and will immediately know what to do with that text. I think the README needs more explicit instructions on how to use this "Example Syntax"
Thank you for developing this amazing plugin, I think it may be as useful as dataview.
It would be perfect if local query and dataview key were supported for filtering.
query: "/regex/"(Support Obsidian's own search syntax, especially regex, that would be perfect!)
limit: 100
recursive: true
sort: desc
sortby: frontmatter&dataview key
fontsize: 8pt
Hi Pasha,
Amazing plugin. Is it possible to open a note in new tab or go back to the same view after viewing a clicked note? This is important because it is currently inconvenient to scroll down again to a point after opening a note and going back (going back opens top of the page)
I noticed that an undefined --interactive-accent-tint
CSS variable is used for coloring note card borders on hover.
That makes the interpreter to reset border width to zero and cards become wider by 2px. In some cases card text takes less lines on hover.
According to the documentation for developers, the --interactive-accent
variable should be used instead of aforementioned above one.
To see banners while viewing the gallery. Banners is compatible with core Page Preview and Hover Editor plugin.
I don't know if this FR belongs to Banners' repo or this one? :)
PS: Very much needed and very well executed plugin, thank you very much !!!
Plugin is not rendering. Javascript errors regarding "EmbeddedSearch."
version: 0.0.40
I get these errors whether I build the plugin or install via community.
Here is the code block:
~~~~note-gallery
path: Atlas/Utilities/Assets
limit: 25
recursive: true
sort: desc
sortby: mtime
fontSize: 7pt
showTitle: true
~~~~
and the errors:
index.tsx:32 Uncaught (in promise) TypeError: this.plugin.EmbeddedSearch is not a constructor
at eval (index.tsx:32:9)
at t.onLayoutReady (app.js:1:1975503)
at CodeBlockNoteGallery.eval (index.tsx:24:31)
at Generator.next (<anonymous>)
at eval (plugin:note-gallery:79:61)
at new Promise (<anonymous>)
at __async (plugin:note-gallery:63:10)
at CodeBlockNoteGallery.onload (index.tsx:23:18)
at e.load (app.js:1:1140190)
at e.addChild (app.js:1:1140591)
eval @ index.tsx:32
t.onLayoutReady @ app.js:1
eval @ index.tsx:24
eval @ plugin:note-gallery:79
__async @ plugin:note-gallery:63
onload @ index.tsx:23
e.load @ app.js:1
e.addChild @ app.js:1
eval @ main.ts:145
wrapper @ index.js:20
addChild @ app.js:1
eval @ main.ts:89
eval @ plugin:note-gallery:79
__async @ plugin:note-gallery:63
eval @ main.ts:87
(anonymous) @ app.js:1
t.postProcess @ app.js:1
t.postProcess @ app.js:1
h @ app.js:1
e.onRender @ app.js:1
requestAnimationFrame (async)
ft @ app.js:1
e.queueRender @ app.js:1
e.set @ app.js:1
t.set @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
a @ app.js:1
Promise.then (async)
l @ app.js:1
(anonymous) @ app.js:1
v @ app.js:1
t.setMode @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
v @ app.js:1
t.setState @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
(anonymous) @ app.js:1
v @ app.js:1
t.setViewState @ app.js:1
t.toggleMode @ app.js:1
checkCallback @ app.js:1
Eq @ app.js:1
e.executeCommand @ app.js:1
e.onTrigger @ app.js:1
e.handleKey @ app.js:1
e.handleKey @ app.js:1
t.handleKey @ app.js:1
e.onKeyEvent @ app.js:1
Let me know if I can assist further with troubleshooting.
Thank you
Reloading a note-gallery causes other note-galleries to refresh and display content that is not part of the retrieval style.
I don't know if it's the auto-refresh that's causing this.
Hello dear developer, your plugin saved me when I was lost for the need of centralized embedding to show some notes. Especially its waterfall style is really amazing.
But at the same time I found a problem that after inserting a note gallery in a note, the background of the note will turn black ...... like the following:
Before insertion:
After insertion:
I wonder if this is some kind of CSS conflict? I hope you can tell me how to remove this background effect.
Finally, I would like to thank you again for developing such a WONDERFUL plugin and for your selflessness!
Is there any way I can change the number of columns from the default 4 to a different number, like 3 or 2?
I didn't find such an option in the available options or in the Styles file
I searched for notes with the #CPP tag.
Through debugging, I can see that the corresponding notes in the library were indeed searched.
But some notes can be displayed in the final gallery, and some notes cannot. The picture is shown below:
The notes that can be displayed are as follows:
The notes that can not be displayed are as follows:
Suppose we have a pinned note that lists the most recent (mtime) notes: it would be convenient if the gallery updated itself automatically (according to a specific interval, on focus, ...). Now (unfortunately) that doesn't happen and you have to reopen the note with the gallery.
I want the setting to expose this option to allow user to specify the breakpoints and corresponding columns they want
The plugin cannot seem to resize table content against the defined font-size properly - It has an issue with plain tables as well as those produced by the dataview plugin
Automatic refresh is not necessary at the same time, and can even cause errors and performance loss.
Considering that some people need auto-refresh, I would like to add an option to turn auto-refresh on or off.
Do you plan to support HTML and PDF exports?
On HTML I get only "Note Gallery: Indexing Database..."
I have not installed the plugin, but I am intrigued.
I save most of my notes and assets in one folder.
Would it be possible to support a Dendron styled path, e.g., user.script.daily-notes
, which displays all files with that prefix, e.g., user.script.daily-notes.quick-switcher.mjs.md
and user.script.daily-notes.dates-database.mjs.md
?
Cheers
Since many notes have their titles as a H1 Header, it uses up a lot of space when its shown twice in the gallery view (as the files title and as a h1 header). Would be great to have to option of not showing the file-titles.
This is indeed a promising start. However, its practical application needs the incorporation of two features:
Thanks
Obsidian search string of
path: "📺 TV Shows" tag: #to-watch
returns one note which is in the 📺 TV Shows folder and has the #to-watch tag. There is another file in the folder without the tag which is not displayed.
```note-gallery
query: 'path: "📺 TV Shows"'
query: tag:#to-watch
sort: asc
debugQuery: true
limit: 15
```
returns all notes in my vault with the tag #to-watch, including the correct one in 📺 TV Shows.
I've tried multiple permutations with and without the single and/or double quotes and space after path:. Most return the same result set while a couple return an error.
#10 I'm not a collaborator, so re-opening here. I left a comment:
Looks like this is still not functioning as intended. Using the following code block:
~~~~note-gallery
showTitle: true
query: 'tag:#snippet'
debugQuery: false
recursive: true
limit: 10
sort: desc
sortBy: mtime
fontSize: 12pt
~~~~
I tried repositioning the arguments, reinstalling via BRAT, but the issue persists. If I toggle show inline title on again, the titles will appear with no issue. I don't think there's anything else impacting the plugin. It's not a theme issue either, I've tested it with Default. Maybe I'm missing something?
I want to use this (amazing, thank you!) plugin in a template, and would like the gallery to be populated by every note that links to the current one. In dataview you can just do [[]] and it knows to use the name of the note you're in, would be really handy here too so that I don't have to manually go in and change the query for every new note. I guess relatedly, is it already possible to use dataview with note gallery somehow?
Hello,
Thank you for your plugin, i love the idea !
I tried it, but it seems there is a little issue.
When the note contains text and local image with preview, it works very well.
But when the image in the note is on a website (and note inside the vault), the note gallery don't show that note.
I show you this in the following gif.
I tried it on the sandbox vault and in my own local vault and that's the same.
Thank you for your plugin and your help.
Just like the embedded query that comes with obsidian
I know there is no "link:" search query in the search bar, so maybe this isn't possible to begin with.
Example: I'd like to list all notes containing the link [[Psychology]]
I tried this as a workaround, but it did not work:
query: 'content: [[Psychology]]'
The reason I'd like to use links instead of tags is because clicking a [[Psychology]]
link inside a note could send me to the note containing the Note Gallery of all notes with the same link, whereas clicking #Psychology
would just open the search window.
Thanks for this great plugin, I use it daily!
Thank you SO much for this great plugin.
Would it be possible to add a function to filter not only on a folder but also on the value of a property? What I need is to be able to show only those results where the checkbox property for 'Reviewed' is empty.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.