マウスキー機能の操作が憶えられないので graphviz で

マウスなしのデスクトップPCでマウスキー機能を使うの状態、まだ続けてる。PC引越しそのものは済んだのだけれど、旧もまだ使うのでね。それと、マウスキー機能そのものが、場合によって便利なことがあってね。

で、結構憶えられなくてね。操作を。ので、遷移図を graphviz で書いてみた。単なるネタです。

以下 DOT は「オール手書き」。何の道具も使ってない。

mousekey.gv
 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

実はこの遷移図は「完全」ではなくて、DOT でコメントアウトしてる遷移は最低でもある。けど、全部書き込んでも読みにくいだけだし、そもそも「無理」なのです、表現するのが。ので、当然んなことはやめた。


なお、「画面遷移図とかにも使えるじゃん!」とはしゃがないようにな。多分あまりにも言うこときいてくれなくて疲れ果てるはずです。graphviz は機械的で「複雑過ぎる」、つまり「人がレイアウトを制御しきれない/しても無駄」なものに対して使うもんです、基本的には。素直に Visio とか Excel とか Astah* とか使いましょ。