16. scratch

Miscellaneous stuff to be ordered and processed later.

16.1. Other Diagrams

16.2. Activity Diagrams

PlantUML has no built-in support for the rake symbol (┌┼┐) which designates call behavior in UML 2.x. _static/call-behavior.puml contains the macros RAKE and CALL, which use UNICODE block characters to provide it.

/' |:here:| '/
   !include settings.puml
   !include call-behavior.puml

   partition "Activities with call behavior" {

     fork
     /' Embedded CALL macro invocation with 1 argument '/
     :argument of
macro invocation
CALL(is the longest line)
followed by
shorter lines;

     /' Alternative CALL macro with 2 arguments '/
     :CALL(Last line of\nfirst argument\nis the longest line, \nfollowed by\nshorter lines);

     fork again
     :Flowchart\nPredefined Process\ncall behavior|

     end fork
   }

' -*- plantuml -*-
' Copyright (C) 2018, Wolfgang Scherer, <Wolfgang.Scherer at gmx.de>
'
' This file is part of Documentation Standard.
'
' This program is free software; you can redistribute it and/or modify
' it under the terms of the GNU General Public License as published by
' the Free Software Foundation; either version 3 of the License, or
' (at your option) any later version.
'
' This program is distributed in the hope that it will be useful, but
' WITHOUT ANY WARRANTY; without even the implied warranty of
' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
' General Public License for more details.
'
' You should have received a copy of the GNU General Public License
' along with this program. If not, see <http://www.gnu.org/licenses/>.

@startuml
/' |:here:| '/
   !include settings.puml
   !include call-behavior.puml

   partition "Activities with call behavior" {

     fork
     /' Embedded CALL macro invocation with 1 argument '/
     :argument of
macro invocation
CALL(is the longest line)
followed by
shorter lines;

     /' Alternative CALL macro with 2 arguments '/
     :CALL(Last line of\nfirst argument\nis the longest line, \nfollowed by\nshorter lines);

     fork again
     :Flowchart\nPredefined Process\ncall behavior|

     end fork
   }

/' |:here:| '/

' (progn (forward-line 1) (snip-insert-mode "puml.t.ide" t) (insert "\n"))
' :ide-menu: Emacs IDE Menu - Buffer @BUFFER@
' . M-x `eIDE-menu' ()(eIDE-menu "z")

' :ide: OCCUR-OUTLINE: Sections: `||: sec :||'
' . (x-symbol-tag-occur-outline "sec" '("||:" ":||") '("|:" ":|"))

' :ide: MENU-OUTLINE:  Sections `||: sec :||'
' . (x-eIDE-menu-outline "sec" '("||:" ":||") '("|:" ":|"))

' :ide: OCCUR-OUTLINE: Default `|||: sec :|||'
' . (x-symbol-tag-occur-outline)

' :ide: MENU-OUTLINE:  Default `|||: sec :|||'
' . (x-eIDE-menu-outline)

' :ide: +-#+
' . Buffer Outline Sections ()

' :ide: PLANTUML: HELP
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ""))) (compile (concat "plantuml -h ")))

' :ide: PLANTUML: this file's EPS
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".eps"))) (compile (concat "plantuml -teps " (buffer-file-name))))

' :ide: PLANTUML: this file's PDF
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".pdf"))) (compile (concat "plantuml -tpdf " (buffer-file-name))))

' :ide: PLANTUML: this file's PNG
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".png"))) (compile (concat "plantuml -tpng " (buffer-file-name))))

' :ide: PLANTUML: this file's SVG
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".svg"))) (compile (concat "plantuml -tsvg " (buffer-file-name))))

' :ide: PLANTUML: this file's PNG + display
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".png"))) (compile (concat "plantuml -tpng " (buffer-file-name) " && display " args)))

' :ide: PLANTUML: this file's PNG + VIEW
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".png"))) (shell-command (concat "plantuml -tpng " (buffer-file-name) " ")) (view-file-other-window args))

' :ide: PLANTUML: this file's SVG + VIEW
' . (let ((args (concat (file-name-sans-extension (buffer-file-name)) ".svg"))) (shell-command (concat "plantuml -tsvg " (buffer-file-name) " ")) (view-file-other-window args))

'
' Local Variables:
' mode: plantuml
' mode: snip-minor
' snip-show-inactive: t
' snip-mode: plantuml
' truncate-lines: t
' comment-start: "'"
' comment-end: ""
' End:
@enduml

16.3. Emacs Buffers with Highlighting

The command M-x htmlify-buffer generates HTML source from the current emacs buffer.

The program webvector converts HTML to SVG as vector graphics (not bitmap images). convert(1) is used to convert SVG to PDF.

Here is an example of the OCCUR-OUTLINE for a python buffer:

_images/emacs-buffer-html-svg.svg

16.4. Tastatur- und Spracheinstellung

Eventuell nach dem Start, Tastaturbelegung einstellen.

Ohne Einstellung der Tastaturbelegung befinden sich folgende Tasten an anderer Stelle:

Beschriftung Zeichen
z y
y z
ß -
- /