zsviczian / excalibrain Goto Github PK
View Code? Open in Web Editor NEWA graph view to navigate your Obsidian vault
License: MIT License
A graph view to navigate your Obsidian vault
License: MIT License
Hi there, thank you for this awesome plugin. I've been playing with it on my regular notes and it works quite well as is. I also tried on my WIP genealogy tree but I noticed the assumption that every link becomes by default a "child" is not working so well, I would prefer to have for my genealogy notes only every link to become part of the "friend" category instead. Is there a way to create a separate configuration to deal with some of those settings on a per folder basis?
Maybe prefer first tags in frontmatter?
Use dataview field to force tag for formatting?
I have 0.15 on my MacBook, but just updated to 0.16 on my MacMini. I no longer see parent or child relationships with 0.16. They were working properly prior to the update. Nothing else has changed as far as I know. I've restarted Obsidian and ExcaliBrain a few times but noted no change.
I have used the list modified plugin which means that notes that I have modified will automatically linked to that day's daily note so even when the link of a note is simple , it will be crowded by unnecessary links generated by daily notes , so I wonder if you could develop a option to exclude folder/tag/link
Is your feature request related to a problem? Please describe.
When I used excalibrain as a mindmap tool, I can only view the brain by calling Excalibrain: Open Excalibrain
command. However, it's a bit annoyedto trigger command platte and type Excalibrain: Open Excalibrain
every time. What if it provide a way to link to this brain in markdown note file just like normal link?
For example, here are my markdown note.
---
alias: sum of prefix
tags:
- algorithm
category: "[[algorithm]]"
create_time: 2022-05-18 17:30:09
update_time: 2022-05-18 17:30:09
mindmap: "[[../../mindmap of kownledge/mindmap of kownledge#algorithm]]"
---
### Title1
fdafsadfjsaflkdsjoifusadfojsd
### Title2
fdsfdsouieworuweoirueworuweoru
It can be navigate to algorithm part of the brain through clicking the "[[../../mindmap of kownledge/mindmap of kownledge#algorithm]]" link.
What's more, delving into this idea. I can embeded the algotithm mindmap into markdown by using
![[../../mindmap of kownledge/mindmap of kownledge#algorithm]]
Describe the solution you'd like
Describe alternatives you've considered
Currently I have workflow with many panes open, one of them is daily note, other are notes on topic
When I want to add something to daily note, the excalibrain switches to it, what I would like to achieve that it will stay connected with specific pane and not the active one
First, thanks for making this plug-in, it's fantastic.
The way the 'inferred' relationships are derived from link direction makes a lot of sense to me.
I describe it in 'My ITE OS' as 'inlinks' represent 'children', and 'outlinks' represent 'parents'. Similarly, arrows point towards the parents in the default Obsidian graph.
So, arrows, like the ones in the Obsidian graph, or a way to style the 'inferred' parent/child relationships, is what I'm looking for.
This change would prevent having to change & update many notes/templates for me. Also, it would seem, for me at least, that the change would make ExcaliBrain immediately useful "right out of the box."
Excalidraw json template for the node including additional fields that can be populated with data from dataview fields
The nodes don't navigate properly unless the window size is large enough to display the zoom buttons.
when running my dnp scirpt
Is your feature request related to a problem? Please describe.
When I used excalibrain to build a mindmap, I found out that excalibrain now just supports for rendering two types of node: page link node and virtual page link node. I wonder if it could possible to add more node types support, heading link node, block link node, literal node (no link) etc.
Children:: [[Page#heading|alias]] # rendering the heading text and alias can be specified
Children:: [[Page^block_id]] # rendering block and alias can be specified
Children:: "literal text" # rendering just "literal text"
It can be used to build more rich mind map。
And what's more, It can be designed as "Relation:: Node config", Relation
just work as "Children", "Parent" and so on。However,Node config
can designed to more powerful syntax config, not only specified the node type but also allow to config the node style。Maybe obsidian-image-caption can give you some design hints。
Describe the solution you'd like
Describe alternatives you've considered
I've recently started using ExcaliBrian and it's super awesome! I've tried TheBrain about a year ago and switched to Obsidian only to now miss the plex view that was provided in TheBrain, and ExcaliBrain does a good job of adding functionality similar to TheBrain in Obsidian. Kudos to a great plugin!
As a new ExcaliBrain user looking forward to what this wonderful tool has to offer, I have a few suggestions, with more along the way.
This can reduce clutter since scrollbars can serve to provide a limit to the number of notes seen on ExcaliBrain at once (possibly dependent on current window size), with the user able to scroll over different sections of the graph if they ever want to see more connected notes.
I believe there's utility in breaking up the "Friends" relationship category into "Next", "Previous", and "Friends". Sometimes notes can have relationships between them that have directionality, but is not best described as a parent-child relationship per se, depending on what you consider to be a parent and child. (for example, [[Disease]] → is_treated_by → [[Drug]]; "Drug" is neither a type of nor was created by the "Disease"). Also, ← (previous) & → (next) are implemented in the Breadcrumbs plugin, so for those who have been using them, it would be helpful if they can be denoted and represented similarly in ExcaliBrain as well. I also believe it's still necessary to keep the "Friends" category, since not all relationships have directionality (the "friend" relationship is an example in and of itself).
I have a lot more to suggest for this wonderful plugin, but I don't want to cram too much into one issue. Thank you so much for creating this awesome plugin and for taking the time to read through this!
"Cmd -" and "Cmd =" shortcuts zoom all of Obsidian rather than zooming only the ExcaliBrain plex. Changing the shortcut at the system level doesn't correct it. Expected behavior would be separate shortcuts for zooming either all of Obsidian, or just the Excalibrain frame.
In my notes an alias
is not always set, but I would have keys/attributes like the following
---
title: A Title
class: classa
state: astate
tags:
- topic/atopic
- activite/anactivity
---
# Relations
parent:: [[aparent]]
child:: [[achild]]
next:: [[nextone]]
etc
It would be brilliant if you were able to configure what to use as the label. Even a concatenation e.g., title & "-" & state
I'm uncertain if this is already possible, and I'm just missing something?
Thanks
The bottom navigational suggestions are displayed slid down if you use Workspaces.
If you manually run the plugin - bottom navigation suggestions is displayed normally.
The history panel at the bottom of the ExcaliBrain window doesn't respect the setting "Display alias if available". This is a bit jarring since I rely heavily on aliases. I have to switch mental contexts when looking at the graph versus looking at the history list. I would expect the history panel to match the node names in the graph.
You can do something like this:
https://github.com/ryanjamurphy/lumberjack-obsidian/blob/1418da59dcc259b5823140b5a3452bd6ba997b71/main.ts#L54
i.e. instead of [[file]] preserve [[file#section]] if section was provided in the source text
I love your excalibrain! And use it more and more.
I have a mind that I want to let the brain all show in right side. AND I can always find the brain for all notes.
But it have a little problem. When I switch notes. The view have to resize all time.
Uncle, could you make it suppose sideview.
Very Thanks!
This picture showed that when it have many children notes
hello, zsviczian, the excalibrain plugin is very useful for me, it gives me one more possibility to build PKM
When I was using it, I found that when using 🔼, ↔, or 🔽 as Parent, Children or Friend, Plugin does not recognize
I guess it should be that the declared emoji doesn't work, making ExcaliBrain think it's a normal two-way link, causing it to be recognized as a child
Please take a look at this issue, looking forward to fixing it soon
@zsviczian
good luck
This is a great plugin, it helps me a lot.
If there is a full map, this is perfect for me.
About the full map, there is a plugin called "Map of content" which I think is an idea of how to display the full map. For the full map I have some ideas, as shown below
The first image just for illustration, just to show the structure of my files.
The second image, to indicate the effect I want.
The third image, to avoid misunderstanding, shows the exact folder structure.
My ideas are just for your reference, you just have to do what you think is right.
Original issue by @mattdenner #592
Is your feature request related to a problem? Please describe.
When I'm working through some thoughts I usually start at a note and wander its connections. What I have found is that most of the current Obsidian solutions either give me a local map (this node and those that touch it), a global map (here are all your nodes), or some radial map (this node, nodes that touch it, nodes that touch all those, ...).
But my mind likes to have a map that I can curate. I want to follow a path through some nodes. Backtrack if that ends up going in the wrong direction. So I'm manually building a map from a starting position.
Describe the solution you'd like
I really like your TheBrain script for presentation of the information. But it is a "local map" for me and I find myself getting lost quickly. What I'd love is to be able to expand nodes in-situ, to build out a much larger map.
My (abstract) process would be:
Taking a more concrete example (that maybe reveals a little too much about what's on top of my mind at the moment):
I have a note on "Exercise" that is referenced from another note "How long does it take to lose belly fat". That second note also references "Visceral Fat" and "Diet". With TheBrain script I can see "Exercise", or I can see "How long does it take to lose belly fat". What I'd like to be able to do is start at "Exercise", click the "How long does it take to lose belly fat" node, and have "Visceral Fat" and "Diet" nodes appear.
Describe alternatives you've considered
Juggl is kind of close. However, it struggles where there are notes with the same name but in different folders. This is can occur in my vault and so I don't get a good graph.
Hello zsviczian!
Please advise:
Why excalibrain shows diagram only after I restart Obsidian app?
Obsidian shows me this picture:
and ony after that I can see the diagram.
Should I enable something in DataView?
I use:
Thank you for this AWESOME plugin!
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.