Najlepsze sposoby generowania UML z poziomu Emacsa

19

Istnieje kilka z opcji integracji pomiędzy narzędziami Emacs i UML , jak org-mode„s plantumlzatapiania , a plantumltryb dur itp Oczywiście mogę je wypróbować, ale zastanawiam się, co inni ludzie używają do obiegu UML?

Osadzanie w innym dokumencie, podobnie jak org-moderobi, jest dobrym pomysłem, lub wysyłanie wygenerowanego uml do innego bufora aktualizowanego na żywo również byłoby fajne. Jestem pewien, że ludzie tam mają jakieś urocze funkcje elisp, aby zautomatyzować tego rodzaju rzeczy!

Mark Aufflick
źródło
1
Raczej późno na imprezę, ale to Q zostało tylko uderzone przez niektóre odpowiedzi. Czy możesz uczynić pytanie nieco bardziej dyskretnym i zorientowanym na problemy? Obecnie „to, czego używają inni”, będzie wymagało wielu różnych, opartych na opiniach odpowiedzi, a tego rodzaju pytania i odpowiedzi nie są odpowiednie dla tej witryny.
Dan
Cześć @Dan, nie jestem przeciwny zmianie pytania (które, jak mówisz, jest przestarzałe), ale ludzie stwierdzający, że używają, nie są faktami (nawet jeśli ich opinie były zaangażowane w podejmowanie decyzji, co użyć). Na przykład, czy uważasz, że lepiej zapytać „jakie moduły są dostępne do generowania UML i ich kluczowych funkcji”? Nie mogę po prostu zapytać „jak mogę wygenerować UML z poziomu Emacsa”, ponieważ, jak już wspomniano, znam już wiele wiarygodnych odpowiedzi na to pytanie, ale chcę poprawić moje obecne opcje.
Mark Aufflick,
@ Czy także jakie odpowiedzi na to wpadły? Ostatnio widzę to Gru '14? A może upvotes również niszczy wątki?
Mark Aufflick,

Odpowiedzi:

20

Nie jestem pewien, czy chcesz mieć konwersję UML z / do kodu źródłowego itp., Ale jeśli chcesz je tworzyć i utrzymywać ręcznie, plantumlskały!

Prosty przykładowy schemat sekwencji:

Bob -> Alice : hello

Renderowany wynik prostego przykładu plantuml

Z powodzeniem korzystam org-babelze plantumlschematów (i gnuplot i ditaa i ...) itp. Po skonfigurowaniu działa jak urok , a wyjście HTML również wygląda niesamowicie, gdy używasz jednego z dostępnych org-modearkuszy stylów.

Zobacz także Zeekat Making Emacs Work For Me na temat konfiguracji org-babeli wiele innych gadżetów Emacsa.

Następnie jest kropka graphviz , którą zamierzam sprawdzić i chociaż nie jest specyficzna dla UML, może być również używana w Emacsie do tworzenia diagramów UMLy.

Prosty przykład kropki:

graph graphname { 
                a -- b; 
                b -- c;
                b -- d;
                d -- a;
        }

Renderowany wynik prostego przykładu kropki

I chociaż jesteśmy przy tym, choć w ogóle nie jest to związane z UML, org-babel-gnuplot pokazuje, jak używać niezwykle wszechstronnego gnuplot w Emacsie.

Eugene Beresovsky
źródło
7

Będę tylko trącić własnym rogiem i wspomnieć wsd-mode. Ma również częściową obsługę org-babel, co oznacza, że ​​możesz dosłownie osadzić swój UML w dokumentach w trybie org i wyeksportować wynik do ważnego dokumentu HTML lub podobnego.

W porównaniu z tym plantuml-modejego obsługa wyróżniania składni i wcięć jest wyraźnie i obiektywnie lepsza. Ładnie integruje się również z flychecki company-mode.

Jeśli uważasz, że wszystkie te „małe” rzeczy mają znaczenie, wsd-modemoże być dla Ciebie lepiej dopasowane.

W przeciwieństwie do plantuml-modetego, nie zależy od Javy ani innych plików binarnych, ale zamiast tego korzysta z usługi SaaS do generowania diagramów.

To sprawia, że ​​jest bardziej plug-and-play i przenośny i dla kogoś może to być lepsze dopasowanie, ale haczykiem jest to, że musisz być online, aby to działało.

Jostein Kjønigsen
źródło
3

[OSTRZEŻENIE] Zależność myszy

Co z artist-mode+ ditaa?

artist-mode- Mysz korzysta z szuflady w stylu ASCII, takiej jak prosty analogowy Monodraw dla systemu macOS. Na wyjściu mamy plik tekstowy na wykresie ASCII.

ditaa - może konwertować plik tekstowy na obraz / HTML itp.

jest użyteczny do rozpoczęcia używania emacsa do kompilacji UML. Ale w ten sposób używaj myszy tak mocno. Jednak nienawidzę myszy, podobnie jak większość użytkowników emacsa, i używam plantUML w trybie org. To przyjazne dla klawiatury i epickie przydatne narzędzie do każdego stylu uml.

Przykładowa skrzynka

tryb artis

ditaa

Bimawa
źródło
Co z nimi? Pokaż, jak odnoszą się do pytania. W przeciwnym razie istnieje ryzyko, że zostanie usunięte jako „odpowiedź tylko do łącza”. Dzięki.
Drew
@Drew Nie wiem, jak to pokazać w formacie SO. Dodaję tylko przykładowe wideo założone na youtube.
Bimawa
Spróbuj opisać, co Twoim zdaniem mają do zaoferowania te rzeczy, aby odpowiedzieć na pytanie.
Drew
@Drew, proszę sprawdź mnie ponownie.
Bimawa,
OK, dziękuję za wysiłek. Mam nadzieję, że dla niektórych czytelników będzie to bardziej zrozumiałe.
Drew