Readit News logoReadit News
varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
enriquto · 5 years ago
I guess the opposite behavior would be more intuitive. If you drag the interior of the node, it moves. To add a new arrow you drag from the immediate outside of the node.

Besides, in tikz I draw 3D commutative diagrams whose arrows pass in front/behind of each other. It is rather annoying to write the code for that, and it would be nice to do that somewhat automatically. Does quiver support this? For example, to draw a 3D cube.

EDIT: more comments: there are some important missing arrowhead styles. For example, if there are bijections in your diagram, it is common to use a single bidirectional arrow with two arrohweads.

varkor · 5 years ago
There are open issues for these feature requests:

- Crossing over arrows: https://github.com/varkor/quiver/issues/19

- Two-headed arrows: https://github.com/varkor/quiver/issues/37

I hope to get to them before too long. Thanks for the suggestions!

varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
sharat87 · 5 years ago
I just took a cursory look at the Javascript source and looks like it's built without any view framework or even jQuery. Is this correct?

As a backend developer curious about such frontend development, could you write up on how to architecture large apps without a reactive view framework behind. Or, if a write-up like that exists, a pointer would also be great.

varkor · 5 years ago
This is correct: I like having full control over the application behaviour (at least down to the browser), and for a relatively small implementation like this, it's quite manageable. I make no claim this is sensible, but I've been bitten by obscure bugs in large libraries before and this way I find debugging is much easier, because I typically only have to worry about my own code.

I'm not sure I would recommend this strategy to others. It very much comes down to a personal preference, and I imagine using an existing framework would be much more accessible to someone starting frontend development. I feel I might get some stick if I were to suggest this to newcomers :) I'm afraid I don't know of any existing write-ups!

varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
emmanueloga_ · 5 years ago
This looks incredibly well done, congrats!

A quick thing that occurs to me, adding all those elements by point and click appears to be extremely tedious, reminds me of working with music notation software and how I prefer much more something like lilypond.

This makes me wonder, is there some text serialization that could be written by hand? I picture something like graphviz notation. Quiver could use a force-directed layout as a first rough step, but users would then have to manually fix the diagram by dragging and dropping the nodes.

varkor · 5 years ago
There's currently no direct textual input: I have considered it, but I feel it would be less efficient than the diagrammatic approach. Let me note that there is full keyboard support, which can be faster than drawing the diagrams by hand: you can see the keyboard shortcuts from the "Shortcuts" toolbar button.
varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
enriquto · 5 years ago
I tried to draw my favourite commutative diagram.

Some UI troubles:

1. I would like to be able to move a node by dragging it around.

2. While the "b" key does its job to move the objects, it is very confusing because it pans the view so that the moving object is fixed, giving the impression that everything moves but the object in question.

varkor · 5 years ago
You can move vertices by clicking and dragging in the empty space around them. I appreciate this isn't immediately intuitive and I'm trying to come up with a better way to reveal this to the user.

I also agree that fixing the view to the vertices with B can be confusing. My plan is to change this.

Thanks for your comments!

varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
tlb · 5 years ago
Could you support nice-looking causal diagrams? Most look like the bubble-and-line diagrams in [Pearl 95](http://bayes.cs.ucla.edu/R218-B.pdf). I think it would increase their popularity (and the quality of science) if it was easy to include nice ones in papers & blogs.
varkor · 5 years ago
I think you should already be able to draw most of the causal diagrams from that paper already: you can use `\circ` for the white circles and `\bullet` for the black ones. Perhaps the only missing feature is being able to draw double-ended arrows? That's on my to-do list; let me know if there's something else that's missing.
varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
sirjaz · 5 years ago
Are there any plans to make this a desktop app. I despise graphical editors in a browser
varkor · 5 years ago
I've been considering it. If you'd find a desktop app useful, please do open an issue on GitHub: that way I can gauge the demand a little better, which will help me to prioritise what to work on next!
varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
varkor · 5 years ago
I'm happy to see people are interested in the editor!

Let me also point out that I wrote a short blog post about the motivation behind quiver, as well as some of its key features, here: https://varkor.github.io/blog/2020/11/25/announcing-quiver.h...

varkor commented on Quiver: A modern commutative diagram editor   github.com/varkor/quiver... · Posted by u/dustingetz
choeger · 5 years ago
This looks like a really nice and well-made tool. Kudos and thanks for open sourcing!

One nitpick: Why do you use a Makefile without using any of the features of Make and then even requiring a special GNUMake feature to make things work like a shell script? Why not simply provide shell scripts in the first place?

varkor · 5 years ago
Thanks! I use a Makefile simply because someone else contributed it early on in the development and it did the job, so I didn't see a reason to replace it. If there's a better way, I'd be happy to receive a pull request to change it!

u/varkor

KarmaCake day40September 19, 2014View Original