4 ms·
I love how everyone spends years drawing diagrams with mouse torture in visio, OmniGraffle, licid, etc. eventually everyone will find out about plantuml (puml)
by gcb0 8y ago
I love how everyone spends years drawing diagrams with mouse torture in visio, OmniGraffle, licid, etc.
eventually everyone will find out about plantuml (puml) which generates diagrams of all kinds via a simple source file and wonder how they could ever live without it.
- petecooper 8y agoLet me help you with that… http://plantuml.com http://plantuml.com
- ptaffs 8y agoI agree the diagrams from text is what's needed, since they can be maintained in version control, or even just maintained. Since so many diagrams I look at are produced to share a message and become out of date almost instantly. Developers work in text, so should the visualization tools.
- TeMPOraL 8y agoAlso https://www.planttext.com/ https://www.planttext.com/, which is a website with a text field linked to a PlantUML instance somewhere. It's what I use when I'm too lazy to install PlantUML locally.
- Kagerjay 8y agoMermaid js does that though, and many notetaking apps integrate with it Personally Draw.io is the best freeapp already out there (online based or desktop), but lucidchart for paid is great too (much better print capabilities)
- wooly_bully 8y agoMermaid.js is excellent, and takes very little time to learn. The quick render is VS Code is super useful for throwing together diagrams quickly
- TeMPOraL 8y agoPros: + It's all plaintext. I love working with plaintext for all the usual benefits, so this fits. + PUML renderer is technically a free-to-download JAR, so it can presumably[0] integrate well with my Org-mode life. Cons: - Try to draw anything more complicated than three boxes and an arrow, and you'll be spending 90% of the time fighting the layout engine. - It's even worse when you have your own opinion about the desired layout. No way to do that reliably, the result is very brittle. I generally like it, but I'd like it 100x more if there was a way to explicitly pin some component to absolute coordinates. Or at least a better way for giving layout hints than soft constraints introduced through invisible links. -- EDIT: A random idea if anyone is developing something PUML-like: How about separating out layouting a bit, and letting me type in something like that: A F G B C D E H And then continue with regular PUML code: package "core" #A { [something] [something-else] } ... [some-component #D]-->[some-component #E] ... Basically, I wish I could draw a picture representing the rough layout of key image components, and have this as a hard constraint on positioning other elements. -- [0] - Presumably, because I gave up on it after couple large-ish diagrams, just before my use has reached the threshold above which I consider Emacs integration.
- skummetmaelk 8y agoThis is my main gripe with plantUML as well. It's an awesome tool, but you either have to surrender to the layout engine or lose your sanity. It is especially frustrating when you add one item to a diagram and ALL the items shift around to completely new places.
- eevilspock 8y agoI hope you don't mind, but I submitted your excellent idea to the Mermaid diagram folks: https://github.com/knsv/mermaid/issues/270#issuecomment-417027136 https://github.com/knsv/mermaid/issues/270#issuecomment-4170...
- TeMPOraL 8y agoI don't; in fact, I very much appreciate it. This is a kind of thing I'd pursue if I didn't already have higher-priority work and personal projects, so I'd love if someone else could try this out.
- seanmcdirmid 8y agoBack in my day, everyone just used graphviz. Heck, OmniGraffle's diagram support was (is?) based on graphviz. Have things gotten much better since then? Graphviz was always hard to beat.
- marssaxman 8y agoNot so sure about that - I spent a few weeks this spring trying to badger PlantUML into generating the diagrams I wanted to include in a piece of documentation, and I'd much rather have used an ordinary mouse-based graphics tool where I could have simply put things where I wanted them to go.
- ismail 8y agoIs it possible to have best of both worlds, not having to worry about layout engines. But you can check into version control