マウスなしのデスクトップPCでマウスキー機能を使うの状態、まだ続けてる。PC引越しそのものは済んだのだけれど、旧もまだ使うのでね。それと、マウスキー機能そのものが、場合によって便利なことがあってね。
で、結構憶えられなくてね。操作を。ので、遷移図を graphviz で書いてみた。単なるネタです。
以下 DOT は「オール手書き」。何の道具も使ってない。
1 digraph g {
2
3 graph [nodesep=1.1, ranksep=1.0];
4
5 edge [color=blue, fontname="Courier", fontsize=32];
6
7 left [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="1.png"/></TD></TR></TABLE>>];
8 right [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="2.png"/></TD></TR></TABLE>>];
9 both [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="3.png"/></TD></TR></TABLE>>];
10
11 left_c [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="5.png"/></TD></TR></TABLE>>];
12 right_c [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="6.png"/></TD></TR></TABLE>>];
13 both_c [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="4.png"/></TD></TR></TABLE>>];
14 both_left_c [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="7.png"/></TD></TR></TABLE>>];
15 both_right_c [shape=none, label=<<TABLE border="0" cellborder="0"><TR><TD><IMG SRC="8.png"/></TD></TR></TABLE>>];
16
17 {rank=same; left; right}
18 {rank=same; left_c; right_c}
19 {rank=same; both; both_c}
20 {rank=same; both_left_c; both_right_c}
21
22 left -> right [label="[-]"];
23 right -> left [label="[/]"];
24 left -> both [label="[*]"];
25 right -> both [label="[*]"];
26
27 left -> left_c [label="[0]"];
28 right -> right_c [label="[0]"];
29 both -> both_c [label="[0]"];
30
31 left_c -> left [label="[5]"];
32 right_c -> right [label="[5]"];
33 both_c -> both [label="[5]"];
34
35 left_c -> both_left_c [label="[*]"];
36 right_c -> both_right_c [label="[*]"];
37
38 both_left_c -> left_c [label="[/]"];
39 both_right_c -> right_c [label="[-]"];
40
41 both_left_c -> both_c [label="[0]"];
42 both_right_c -> both_c [label="[0]"];
43
44 both_left_c -> both [label="[5]"];
45 both_right_c -> both [label="[5]"];
46
47 /*
48 right_c -> left [label="[/]"];
49 right -> left_c [label="[/]"];
50
51 left_c -> right [label="[-]"];
52 left -> right_c [label="[-]"];
53 */
54 }
で、
1 me@host: ~$ dot -Tpdf mousekey.gv -omousekey.pdf
として出力したのが以下:
Unable to display PDF
Click here to download
Click here to download
実はこの遷移図は「完全」ではなくて、DOT でコメントアウトしてる遷移は最低でもある。けど、全部書き込んでも読みにくいだけだし、そもそも「無理」なのです、表現するのが。ので、当然んなことはやめた。
なお、「画面遷移図とかにも使えるじゃん!」とはしゃがないようにな。多分あまりにも言うこときいてくれなくて疲れ果てるはずです。graphviz は機械的で「複雑過ぎる」、つまり「人がレイアウトを制御しきれない/しても無駄」なものに対して使うもんです、基本的には。素直に Visio とか Excel とか Astah* とか使いましょ。