天地有情

[LaTeX] menukeys.sty -- メニュー·シーケンス,キーストロークなどのビルダー

menukeys.sty -- メニュー·シーケンス,キーストロークなどのビルダー

§1.はじめに
menukeysパッケージは主にソフトウェアのメニュー·シーケンス,フォルダやファイルまたはキーストロークを解析し,
印刷するように設計されたビルダーです.ほとんどの事前定義されたスタイルは,TikZの機能を使用しています.
ここに幾つかの例を紹介します.例えば,次のようなものです.

menukeys09.png


1.1 インストール
TeXLive/W32TeX などには標準でインストールされていますので,インストール作業は必要ありません.
すぐに利用できる状態にあると思われます.

1.2 マニュアル
コマンドラインから texdoc menukeys を実行してください..

§2.LaTeX2e 文書での指定方法
プリアンブルに
   \usepackage[<options>]{menukeys} を記述します.

2.1 書式のサンプル

  以下に列挙するサンプルの書式を示します.
  
  sample.tex
  ■■■■■■■■■■■■■■■■■■■
  %% 文字コード:UTF-8
  \documentclass{ltjsarticle}
  \usepackage{menukeys}
  \begin{document}
   == ここに menukeys コマンドを記述 ==
  \end{document}
  ■■■■■■■■■■■■■■■■■■■

  ★クラスファイルは ltjsarticle を使っていますが,scrartcl や article でも構いません.
  ★文字コードは UTF-8 とします.
  ★以下のサンプルは menukeys コマンドのみが記述されています.

2.2 コンパイルの仕方
  luajitlatex sample.tex
  または
  lualatex sample.tex

2.3 コンパイルの結果
  正しくコンパイルできたら sample.pdf が生成されます.

§3. パッケージオプション および コマンドの種類
パッケージには、いくつかのオプションを実装しています。それらは、異なるオペレーティングシステム間で
キー修飾の違いを処理し、キーボードショートカットを組版するときのみ必要です.デフォルト値はmacです.

  ■■■■■■■■■■■■■■■■■■■
   %Windows
   \usepackage[os=win]{menukeys}

   %Mac OS X (symbols)
   \usepackage[os=mac, mackeys=symbols]{menukeys}

   %Mac OS X (text)
   \usepackage[os=mac, mackeys=text]{menukeys}
  ■■■■■■■■■■■■■■■■■■■

3.1 Menu sequences コマンド
   コマンド: \menu[option]{<menu sequence>}
   
入力リストの区切りを指定するための [option] の引数をもっています.デフォルト値は ">" です.

   option: /, =, *, +, ,, ;, :, -, >, < and bslash (to use \ as separator)

menukeys01.png



3.2 Directory path names コマンド
ディレクトリパス名は出力に小さな矢印の頭に変換されます.デフォルトのセパレータは "/" です.

   コマンド: \directory{<path and files>}    

menukeys02.png


3.3 Keyboard shortcuts コマンド
キーボードショートカットは,キーの組み合わせが特定のアクションのために押されるように記述します.
キーの間に使用されるデフォルトのセパレータは,プラス記号 "+" です.

   コマンド: \keys{<keystrokes>}

menukeys03.png


定義済みのキーボードショートカットを以下に示します.

menukeys04.png


\usepackage[os=mac, mackeys=symbols]{menukeys} とした場合の例を示します.

menukeys05.png


§4. スタイルの変更
パッケージには、スタイルのセットが付属しています.いくつかのスタイルは他のものより大幅に、あるいは微妙に
外観の変更が可能です.
使用可能なスタイルの完全なリストについては,パッケージのドキュメントを参照してください。
スタイルを変更するには、パッケージには,次のマクロを提供します.

   \renewmenumacro{list}[separator]{style}

4.1 サンプル1

menukeys06.png


4.2 サンプル2

menukeys07.png


出力結果は全く同じです.

Note:
セパレーターの前または後に追加のスペースは、パッケージによって無視されます.
すなわち A + B, b および A+ Bとまったく同じ結果を生成されます.

§5. カラーの変更

\changemenucolor{<name>}{<element>}{<model>}{<color definition>}

<name> gray %default
<element> bg, br, or txt %bg(background), br(border), txt(text)
<model> named, rgb, cmyk, ...
<color definition>

menukeys08.png






スポンサーサイト
  1. 2014/10/31(金) 07:37:56|
  2. LaTeX Tools
  3. | トラックバック:0
  4. | コメント:0

[LaTeX] smartdiagram.sty -- 文書やプレゼンで使用できるダイアグラム

smartdiagram.sty -- 文書やプレゼンで使用できるダイアグラム

§1.概要
このパッケージは,簡単にTikZのへのアイテムのおかげでリストから文書やプレゼンテーションの図を
描画する方法を提供します.

smartdiagramパッケージがロードされると,自動的に関連パッケージやTikZのライブラリがロードされます.

パッケージは,\usepackage{smartdiagram} によってロードされます.

■ インストール

TeXLive/W32TeX などには標準でインストールされていますので,インストール作業は必要ありません.
すぐに利用できる状態にあると思われます.

■ マニュアル

コマンドラインから texdoc smartdiagram を実行してください..

§2.基本的な仕様
コマンド形式は次の通りです.

  \smartdiagram [<type of diagram>] {<list of items>}

  ● <list of items> -- 文字列の並び カンマ区切りで指定する.

  ● <type of diagram> -- 以下の 10種 が用意されている.

    ■circular diagram
     リスト項目は,一般的に反時計回りに順番に円の周りに表示される.
     
    ■circular diagram:clockwise
     同上.時計回りに配置される.
     
    ■flow diagram
     リスト項目は,フローチャートとして表示される.
     
    ■flow diagram:horizontal
     リスト項目は,水平表示される.
     
    ■descriptive diagram
     リスト項目の概念やその説明が表示される.
     
    ■priority descriptive diagram
     アイテムは,それらの関連性に基づいて展開される図である.
     
    ■bubble diagram
     リスト項目の最初の要素の中心の周りに,配備されるバブルである.
     
    ■connected constellation diagram
     最初の要素を中心に,その他項目は,円環に接続される.
     
    ■constellation diagram
     最初の要素を中心に,その他項目は星状に接続される.
     
    ■sequence diagram
     リスト内の項目が順番に表示され,各項目は,後続を指している.

§3.\smartdiagramset コマンド
このコマンドはオプションの細部が記述できます.

   \smartdiagramset{<list of options>}

  <list of options>
     set color list
     uniform color list
     use predefined color list
     insert decoration
     arrow line width
     arrow tip
     arrow style
     uniform arrow color
     arrow color
     その他多数(manual参照)

§4.代表的な書式例

  foo.tex
  ■■■■■■■■■■■■■■■■■■■■■■■■■
  %% 文字コード:UTF-8
  
  \documentclass{ltjsarticle}
  \usepackage{smartdiagram}
  %
  \begin{document}
   \smartdiagram [<type of diagram>] {<list of items>}
  \end{document}
  ■■■■■■■■■■■■■■■■■■■■■■■■■

  ★ クラスファイルは ltjsarticle を使っていますが,scrartcl や article などでも構いません.
  ★ 文字コードは UTF-8 とします.

(1)コンパイルの仕方
  luajitlatex foo.tex
  または
  lualatex foo.tex

(2)コンパイルの結果
  正しくコンパイルできたら foo.pdf が生成されます.

§5.Gallery of Examples

(1)Option: circular diagram の例

sd01.png


(2)Option: circular diagram:clockwise の例

sd02.png


(3)Option: flow diagram の例

sd03.png


(4)Option: flow diagram:horizontal の例

sd04.png


(5)Option: descriptive diagram の例

sd05.png


(6)Option: priority descriptive diagram の例

sd06.png


なお,\smartdiagramset コマンドが利用されており,細かいオプションの指定が出来ます.

(7)Option: bubble diagram の例

sd07.png


(8)Option: connected constellation diagram の例

sd08.png


なお,\smartdiagramset コマンドを利用しています.


(9)Option: constellation diagram の例

sd09.png


なお,\smartdiagramset コマンドが利用されています.

(10)Option: sequence diagram の例

sd10.png


(11)\smartdiagramset{%
     border color=none,
     set color list={blue!50!cyan,green!60!lime,orange!50!red,red!80!black},
     back arrow disabled=true}
     \smartdiagram[flow diagram:horizontal]{計画,実行,評価,改善}

     ※ back arrow disabled=true は最後尾から先頭への戻り線を省略する例です.

sd11.png


  1. 2014/10/22(水) 13:04:23|
  2. LaTeX Tools
  3. | トラックバック:0
  4. | コメント:0

[LaTeX] grafcet.sty --- SFCシーケンス図を作る ~入門~

 grafcet.sty --- SFCシーケンス図を作る ~入門~

§1.概要

SFCとは -- (Sequential function chart) プログラマブルロジックコントローラ(PLC)用のグラフィカルな
プログラム言語で,IEC 61131-3標準で定義される5言語のうちのひとつです.この言語はシーケンス制御を
状態遷移図のように記述するのに適しています.grafcet.sty は,このような SFC をサポートします.

(1)SFCの主なコンポーネント

以下のようなものがあります.

   ■ ステップ(step)
     アクション(処理)を記述した制御のひとかたまり.
   ■ トランジション(transition)
     論理的な条件を記述して,ステップ間の状態遷移を制御する.
   ■ リンク(link)
     ステップとトランジション間といったコンポーネントを結ぶライン.

(2)SFC イメージ図

grafcet.sty で使用するシンボルとは,やや異なりますがが,イメージとしてみてください.

sfc01.png


説明:

プログラムは初期ステップ(右図ではInitial)から開始する.図中の大きい長方形がステップで,
ステップ直前の小さい四角形がトランジション(条件)を表す.

トランジションに記述されている条件が true(真)になると,直下のステップが起動する.
ステップ内の「アクション」はプログラム中のどこに書かれていても実行される.

(3)インストールについて

TeXLive/W32TeX などには標準でインストールされていますので,インストール作業は必要ありません.
すぐに利用できる状態にあると思われます.

(4)マニュアルをみる

コマンドラインから texdoc grafcet と打ち込んでください.(フランス語で書かれています)

§2.始める前に

(1)シンボルや用語
   grafcet では,ステップ番号,ステップ・シンボル出入口のノード番号,トランジション・シンボルの
   ノード番号などが必要になります.以下の図を参照しながら説明します.

sfc02.png

  A. 開始ステップのみシンボルは2重ボックスで表示され,結線のための位置ラベルが付与されます.
    ここでは,ステップ番号=100,入口側位置ラベル(ノード名)=Xnnn この場合は X100 です.
    出口側位置ラベル=VXnnn この場合は VX100 となります.
    ステップ番号=110の場合は X110,VX110,ステップ番号=120の場合は X120,VX120 となります.
  B. トランジションにも同様に位置ラベルが付与されます.ここでは,トランジション番号=100,110,120で,
    位置ラベルは Tnnn,VTnnn で付与されます.ここでは,T100,VT100 T110,VT110 T120,VT120 です.
  C. トランジション 120 の出口が開始ステップへ戻りとなっていますが,リターンコマンド(後述)を
    使って \LinkReturn{T120}{X100} として結線します.

(2)コマンド名について(重要)
   コマンド名はフランス語となっていますが,理解しにくいので \let命令で英語に置換しています.
   以下は,\let命令のリスト(sfc.tex)です. \input {sfc} をプリアンブルに記述して使っています.
   従って,以降に記述するコマンド説明は英語に置換した名称を使っています.
   
   ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
   File: sfc.tex
   
   \let\Step=\Etape %% \Step[pos]{nnn}
   \let\StepInit=\EtapeInit %% \StepInit[pos]{nnn}
   \let\Trans=\Transition %% \Tran{nnn}
   \let\LinkReturn=\LienRetour %% \LinkReturn{Tnnn}{Xnnn}
   \let\StepActive=\EtapeActive %% \StepActive{Xnnn}
   \let\MacroStep=\MacroEtape %% \MacroStep[pos]{Mnnn}
   \let\StepEncapsulante=\EtapeEncapsulante %% \StepEncapsulante[pos]{nnn}
   \let\StepEncapsulanteInit=\EtapeEncapsulanteInit %% StepEncapsulanteInit[pos]{nnn}
   \let\LinkActive=\LienActivation %% \LinkActive{nnn}
   \let\StepInitTran=\EtapeInitTransition %% \StepInitTran[pos]{nnn}{action}{recept}
   \let\StepTran=\EtapeTransition %% \StepTran[pos]{nnn}{action}{recept}

   \let\SeqST=\SequenceET %\SeqST[pos]{step list}
   \let\SeqSS=\SequenceEE %\SeqSS[pos]{step list}{last step}
   \let\SeqTS=\SequenceTE %\SeqTS[pos]{pre-step}{step list}{last step}
   \let\SeqTT=\SequenceTT %\SeqTT[pos]{pre-step}{step list}

   \let\GrapheLoop=\GrapheBoucle

   \let\DivOR=\DivOU %並列選択シーケンス用
   \let\ConvOR=\ConvOU

   \let\DivAND=\DivET %並列同時シーケンス用
   \let\ConvAND=\ConvET

   %(注)以下の命令は,そのまま利用する.
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   %\Recept
   %\ActionX
   %\Action
   %\ActionRecept
   %\Actions
   %\Recepts
   %\Grahe
   ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

§3.代表的な書式例

  foo.tex
  ■■■■■■■■■■■■■■■■■■■
  %% 文字コード:UTF-8
  
  \documentclass{ltjsarticle}
  \usepackage[usenames,dvipsnames]{xcolor}
  \usepackage{tikz}
  \usetikzlibrary{arrows,snakes}
  \usepackage{graphicx}
  \usepackage{grafcet}
  %
  \input {sfc}  %
  \begin{document}
   \begin{tikzpicture}
    == SFC 作成コマンドを記述 ==
   \end{tikzpicture}
  \end{document}
  ■■■■■■■■■■■■■■■■■■■

  ★ クラスファイルは ltjsarticle を使っていますが,scrartcl や article などでも構いません.
  ★ 文字コードは UTF-8 とします.

(1)コンパイルの仕方
  luajitlatex foo.tex
  または
  lualatex foo.tex

(2)コンパイルの結果
  正しくコンパイルできたら foo.pdf が生成されます.

§4.簡単なサンプル

(1)その1:オプション[位置ラベル]を使った例

sfc03.png

(2)その2:オプション[位置ラベル]を省略した例

sfc04.png

(3)その3:さらに簡便に
  \Step命令と\Tran命令を一つにした次の命令も用意されています.

  ■ \Step + \Tran → \StepTran
  ■ \StepInit + \Tran → \StepInitTran

sfc05.png


§5.リニア(直列形)シーケンス

直列形シーケンスの最初と最後の要素,即ち,ステップまたは転移のいずれかであるかに応じて,
次のコマンドが用意されています.

(1)コマンド
   ■Sequence Step Transition
   \SeqST[pos]{step list} -- Stepで始まりTransitionで終わるシーケンス.
   \SeqST[0,0]{50,51,52,53} -- 図(A)参照

   ■Sequence Step Step
   \SeqSS[pos]{step list}{last step} -- Stepで始まりStepで終わるシーケンス.
   \SeqSS[1,0]{50,51,52,53}{54} -- 図(B)参照

   ■Sequence Transition Step
   \SeqTS[pos]{pre-step}{step list}{last step} -- Transitionで始まりStepで終わるシーケンス.
   \SeqTS[2,0]{49}{50,51,51}{53} -- 図(C)参照

   ■Sequence Transition Transition -- Transitionで始まりTransitionで終わるシーケンス.
   \SeqTT[pos]{pre-step}{step list}
   \SeqTT[3,0]{49}{50,52,54,56} -- 図(D)参照

(注)以下を sfc.tex に追加しておきます.

\let\SeqST=\SequenceET
\let\SeqSS=\SequenceEE
\let\SeqTS=\SequenceTE
\let\SeqTT=\SequenceTT

sfc06.png


(2)便利な組み合わせ例ー1
  \Actions, \Recepts を使う
sfc07.png


(3)便利な組み合わせ例ー2
  \ActionRecept を使う
sfc08.png


(4)さらに便利な \Graphe(リニア) コマンド

\Graphe[pos]{
num/action/recept,
num/action/recept, .....}

sfc09.png


(5)さらに便利な \GrapheLoop(ループ) コマンド

\GrapheLoop[pos]{
num/action/recept,
num/action/recept, .....}

sfc10.png



§6.並列選択形シーケンス

\DivOU と \ConvOU の2つのコマンドは、複数の配列のなかから,条件を満足した一つの配列の選択を行い,
下流のステップをアクティブにします.コマンドの構文はかなり複雑です.

(注)以下を sfc.tex に追加しておきます.

\let\DivOR=\DivOU
\let\ConvOR=\ConvOU

(1)\DivOR と \ConvOR の説明

sfc11.png


   ■ \DivOR
     上位シーケンスから分岐する際に水平バーに交差する箇所を基点に左側への距離がマイナス(-),
     右側への距離がプラス(+)で表示します.
     コマンド例:
     \DivOR{X10}{-5/L1a, 3/L1b, 11/L1c} (注)数値の単位は[em]です.

   ■ \ConvOR
     上位分岐のうち,最長ステップのルートが水平バーに交差する箇所を基点に左側への距離がマイナス(-),
     右側への距離がプラス(+)で表示します.
     コマンド例:
     \ConvOR[-3]{T23}{T32, T11}{L20}

(2)サンプル

sfc12.png


§7.並列同時形シーケンス

\DivAND と \ConvAND の2つのコマンドは、複数の配列のすべてが条件を満足したときに限り,
下流のステップをアクティブにします.コマンドの構文は \DivOR と \ConvOR と同様の考え方です.

(注)以下を sfc.tex に追加しておきます.

\let\DivAND=\DivET
\let\ConvAND=\ConvET

(1)\DivAND と \ConvAND の説明

sfc13.png


   ■ \DivAND
     コマンド例:
     \DivAND{T3}{-5/br1, 4.5/br3, 13/br2} (注)数値の単位は[em]です.

   ■ \ConvAND
     コマンド例:
     \ConvAND[-6]{X15}{X24, X33}{b40}


(2)サンプル

sfc14.png



  1. 2014/10/03(金) 09:20:33|
  2. LaTeX Tools
  3. | トラックバック:0
  4. | コメント:0