Hacker News new | past | comments | ask | show | jobs | submit login
Emacs Major Mode for Sequence Diagrams (github.com/josteink)
136 points by signa11 on Dec 15, 2014 | hide | past | favorite | 22 comments



This would be more accurately titled “Emacs Major Mode for Web Service for creating Sequence Diagrams”, since all it does is be a client for www.websequencediagrams.com and is completely dependent on that Software-as-a-Service.


Author here. This is completely correct. But my main motivation for creating this was getting something working in a easy and portable fashion.

Basically I wanted to have something I could share with my colleagues and which could be accepted as "documentation" if checked into source-control. For that using a dialect of diagram-generators which nobody else can get working isn't going to cut it. Those solutions are hardly "out of the box"-friendly, and even less so portable.

This package relies 100% on websequencediagrams.com, and for that it is restricted by whatever the website supports.

But because of that it's also 100% portable and should work out of the box on any machine, without any other prerequisites. And I think that is quite nice.

I just thought it was useful and wanted to share. If my needs are aligned differently than yours I'm not going to take offence :)


> I just thought it was useful and wanted to share. If my needs are aligned differently than yours I'm not going to take offence :)

I think there's a tendency here to nitpick everything that's submitted. Personally I'm just glad that you had an itch, scratched it, and then shared it with others. This looks like something I could use right now actually! And from this discussion I learned about PlantUML too. So seriously, thanks a lot and don't pay too much attention to the critics.


Totally useful – I'd love to be able to use this offline, but I understand that that would probably be a much larger task. Thanks for building this and sharing!


Well done. Do you accept feature requests?


This isn't a full time project for me, but just something to scratch an itch: writing out big UML processes in a HTML textarea isn't my idea of an ideal editing process.

It's hard to promise anything up front, but if you register an issue on the github issue-tracker I can at least consider it.

I may like the idea and take on the challenge or I may decide that for me it doesn't seem worth it. But I do also accept pull requests :)


> completely dependent on that Software-as-a-Service.

Indeed, that was disappointing for me. People on the look out for a similar tool might want to check graphviz and its emacs mode.

http://users.skynet.be/ppareit/projects/graphviz-dot-mode/gr...

or

http://orgmode.org/worg/org-contrib/babel/languages/ob-doc-d... if you're into org-mode.


I'm pretty sure that that website is just a SaaS-wrapper on PlantUML [1], an open-source Java application (pick your license, they allow several).

If it isn't, the syntax is similar enough that this emacs mode is probably useful for PlantUML as well.

[1] http://plantuml.sourceforge.net/


I created http://www.websequencediagrams.com. PlantUML came several years later. I'm happy that my syntax is good enough to emulate in so many different projects.


Nice work then. Didn't mean to denigrate websequencediagrams.com, I've just always assumed the inspiration went in the other direction.

Cool service either way. Thanks for it.


I've been using PlantUML with Emacs's plantuml-mode quite successfully. I split the buffer into two, the top one containing PlantUML code and the bottom containing the rendered picture (yes, Emacs can view PNG files). Some snippets from my Emacs config may be useful for others: https://github.com/bdsatish/dot-emacs-24/blob/master/euchy/e...


Author here. Good observation. :)

I personally didn't know able plantuml, but I'm pretty sure you're correct about this one. Out of interest: Do you know if plantuml-syntax has a preferred extension?


The two screenshots really do a great job of explaining what it is.


Maybe. The pretty generated picture, how is it generated? It references "www.websequencediagrams.com" but when I go there I get a 500 error.

Aside from the pretty pictures it's pretty devoid of information.


I think they submit the sequence description file to that website and capture the returned image.


Author here. I used the api as provided by the site author. Details here:

http://www.websequencediagrams.com/embedding.html


Very cool. Thanks.


It might be interesting to update this to use http://www.mcternan.me.uk/mscgen/ or the enhanced http://sourceforge.net/projects/msc-generator/ to remove the websequencediagrams.com dependency. I know others have suggested planetuml, but I've always liked the msc-gen stuff for sequence diagrams, a bit more.


I used graphviz dot program to create https://github.com/maksle/xslt-dependencies (xslt 1.0 dependency viewer) for EMACS. I was about to look into this and drop using dot but this also relies on an external service. Nothing wrong with this or dot though, I just thought it would be cool to be entirely self contained in EMACS. It was surprisingly easy to create a nice node graph with dot though.


I love the DSL for sequence diagrams the most. I've always wanted a structured text notation for architectural concepts (databases, queues, load balancing, failover, etc) as well as more atomic (non-text) graphical symbols for each. UML specifies a symbol for database, for example, but not for most of those other things. Perhaps I should get serious about scratching this itch.


[deleted]


Sometimes it's an accident, as the upvote is a small target and it's right next to the downvote. Also, it can't be undone.


Especially if you're trying to vote on a mobile phone.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: