FC2ブログ

天地有情

[便利ツール] Doxygen でドキュメントを作成

§1 はじめに

Doxygen(読み:ドキシジェン)は,ソースコードのドキュメンテーションジェネレータです.
自作ライブラリ(C/C++,Fortran,...等々)のドキュメント化にも使えますが,
本稿では,Doxygenで文書を作成するために有益と思われるソースの書き方などをサンプルで示します.

(留意事項)
 「Doxygen」で検索するとインストールの仕方,設定の仕方,使い方などなど多数の情報が得られます.
 本稿では,これらについては割愛させて頂きます.必要最小限の事柄についてのみ説明することとします.

以下に必要と思われる事柄を,あらかじめ箇条書きで列挙しておきます.


■ インストールの要約
  (1)doxygen ソースコードのドキュメントツール
        https://sourceforge.net/projects/doxygen/

  (2)Graphviz dot言語で記述されたグラフの構造を画像ファイルへ出力
        https://graphviz.gitlab.io/_pages/Download/Download_windows.html
        オプションである.graphvizをインストールしてドキュメント作成すると,
        関数やクラス間の関係性を図にしてくれる.

■ 出力成果
  doxygen の出力結果は,HTML形式とLaTex形式である.

■ ユーザ作成ファイルの要約
   ファイルの拡張子は各種プログラミング言語のソースコードを除いて,
   Doxygenに文書として使用されるファイルの拡張子は
   
   .dox
   .md
   
   の2種類である..doxはDoxygen標準の文書ファイルであり,.mdはマークダウンである.


  ちなみに Doxygen はファイル中のコメントを抜き出すというスタイルなので,
  .doxファイルは全体をコメントアウトする.
  要は,最初の行と,最後の行を下記のようにする.C言語風のコメントアウトがおすすめ.

   xxx.doxの書式例
   
   ■■■■■■■■■■■■■■
   /**
   \mainpage タイトル
   \section タイトル
   (本文)
   (本文)
   (本文)
   **/
   ■■■■■■■■■■■■■■
   
   doxファイル1つにつき1つの名前を付ける.
   そういうわけで,各ファイルの先頭では,このdox(md)ファイルが何を表すのか上記のコマンドでタイトルなど
   を宣言する.
   ちなみに,1つのプロジェクトに1つの\mainpageが存在し,\pageはそれにぶら下がるような構造になります.

■ プロジェクト名
  プロジェクト名はデフォルトで 「My Project」 である.設定変更可能である,
  
■ コンパイル方法
  ユーザ作成ファイルのコンパイル方法には2つの方法がある.
  (1) ウイザードによる方法
  (2) コマンドライン操作
  
  本稿のサンプルでは,簡単な(2)のコマンドライン操作で行う.
    コマンドラインで以下を実行する.
    
    ■■■■■■■■■■■■■■
    > doxygen -g    (この操作でDoxyfileが生成される)
      続いて
    > doxygen (あるいは > doxygen Doxyfile)
     これで HTML および LaTeX ディレクトリが生成される.(中身は関連ファイルが格納されている)
    ■■■■■■■■■■■■■■
    
    > doxygen -g はconfiguration fileを作成するためconfiguration fileを変更しない限り
    最初に1回だけ操作する.(configuration fileのデフォルト名は "Doxyfile" である)
    
    > doxygen はユーザ作成ファイルを修正した場合に使うため,修正のたびに操作する.
    

■ 実行方法
  (1) HTMLの場合:
    [html]ディレクトリを開いて,その中にある 「index.html」をクリックするだけである.
    
  (2) LaTeXの場合:
    [LaTeX]ディレクトリを開く.
    ・欧文だけの場合は「make.bat」を起動させるだけである.
    ・和欧文混合の場合は「refman.tex」を修正し,「lualatex」コマンドコンパイルする.
     (後述のサンプルを参照)

■ Ghostscriptについて注意喚起する
  数式表示のため,Ghostscript(32bit)を必要とします.(64bit)ではエラーになる,
  (32bit)であることを確認する.
  
■ ユーザ作成ファイルの文字コード
  .dox や .tex ファイルの文字コードは UTF-8 である.
 
 
〇 My System configuration
-------------------------------
  ・Windows 10
  ・doxygen 1.8.14
  ・Graphviz 2.38
  ・Ghostscript 9.26 (32bit)
-------------------------------

§2 サンプル

次の手順で作業を進めます.

(1)作業環境を作る
   Desktop上に [DoxySample] ディレクトリを作成し,
   ・作成ファイル: DoxySample.dox
   ・コマンドプロセッサ: cmd.exe のショートカット
   を配置します.
   DoxySample.dox は http://hayato1224.web.fc2.com/Doxygen/DoxySample.dox をコピーして(CTRL-A + CTRL-C)
   お手持ちのエディタに転写(CTRL-V)して本ディレクトリに DoxySample.dox の名前で格納します.

doxygen01.png



(2)cmd.exe を開いて,次の操作を行います.
   > doxygen -g
   > doxygen (あるいは doxygen Doxyfile)
   
   操作完了すると,[html] と [latex] ディレクトリが生成されます.

doxygen02.png



(3)[html] ディレクトリ内を確認する
   先ず,tiger.png をコピーしておきます.その後
   > doxygen のみを実行.
   
   次に index.html をクリックすると,次が表示されます.

doxygen03.png


doxygen04.png


doxygen05.png


doxygen06.png


doxygen07.png


doxygen08.png


doxygen09.png


 
  


 
  
(4)[latex] ディレクトリ内を確認する

doxygen10.png


   ・先ず,コマンドプロセッサ cmd.exe のショートカットを配置
   ・IMAGESディレクトリを作成し,その中にtiger.pngを格納します.
   ・その後,
      > doxygen のみを実行.

(5)TeXファイルの修正
   TeXファイルのメインファイルは refman.tex であるが .doxファイルが和欧文のため,
   修正する必要があります.
   
   ================================
   01行目:
     \documentclass[twoside]{ltjsbook} %%%%%%{book}を{ltjsbook}に変更
   23行目:
     %% \usepackage{sectsty} ------------- コメントアウト
   25~28行目:
     %% \allsectionsfont{% ------------- コメントアウト
     %% \fontseries{bc}\selectfont ------ コメントアウト
     %% \color{darkgray}% --------------- コメントアウト
     %% } --------------------------------- コメントアウト
   146行目:
     %% \backmatter ----------------------- コメントアウト
   ================================
     

(6)コマンドプロセッサ cmd.exe から次の操作を行います.
      > luajitlatex refman.tex
      > luajitlatex refman.tex
      (続けて2回コンパイル実行します)
      

(7)結果表示
   以下のPDFを開いてください.都合により 12分割 となっております.(空白ページもあります)
   

http://hayato1224.web.fc2.com/Doxygen/refman-01.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-02.pdf (空白ページ)
http://hayato1224.web.fc2.com/Doxygen/refman-03.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-04.pdf (空白ページ)
http://hayato1224.web.fc2.com/Doxygen/refman-05.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-06.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-07.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-08.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-09.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-10.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-11.pdf
http://hayato1224.web.fc2.com/Doxygen/refman-12.pdf

   
   




(EOF)
スポンサーサイト
  1. 2018/12/17(月) 09:38:00|
  2. 便利ツール

[便利ツール] Jupyter Notebook を使おう ~初歩の初歩~

§1 初めに

Anaconda2の Jupyter Notebook (読み方は「ジュピター・ノートブック」) とは,ノートブックと呼ばれる
形式で作成したプログラムを実行し,実行結果を記録しながら,データの分析作業を進めるためのツールです.

§2 インストール

前提として,python2.7 あるいは python3.6 のいずれかが
インストールされている必要があります.私の場合は python -V コマンドを打つと 2.7.10 です.

その上で,Jupyter NotebookをDownload し,インストールします.

§3 Jupyter Notebookの起動と使い方

「Jupyter Notebookとかいう最高のノートを知った件」
がNotebookの特徴や基本的な使い方が易しく解説されています.
ここでは,サンプルのみを挙げておきます.ご参考になれば幸甚です.

§4 Jupyter Notebookのサンプル

(1)print関数を使う

Jupyter01.png

  python2: print文  --- print "Hello"
  python3: print関数 --- print("Hello")

Notebook はどちらも受付けます.

(2)表を作成する

   ライブラリ pandas を事前にインストールします.
    pip install pandas

Jupyter02.png


(3)Sin,Cos を描く

   ライブラリ matplotlib を事前にインストールします.
    pip install matplotlib
    
Jupyter03A.png


Jupyter03B.png


(4)画像を表示する

   ライブラリ IPython を事前にインストールします.
    pip install IPython

Jupyter04.png

(5)Markdown を使う

Jupyter05A.png

上記を Notebook へ記述し,「Code」欄を Markdown に切り替えて
「Run」(実行)すると,次に変遷して完了します.

Jupyter05BB.png

(1)~(5)までを一つにまとめて保存すると,これが「*.ipynb」というファイルで保存されます.
このファイル1つで,Pythonのコードからメモ書きまでしたノートが完成します.


(EOF)
  1. 2018/09/16(日) 08:44:16|
  2. 便利ツール

[便利ツール] KLatexFormula --- LaTeX の数式を画像ファイルに出力するアプリケーション

§1 はじめに

● 利用可能なエクスポート形式
  LaTeXの 数式 をコンパイルしたら,さまざまな出力形式を利用できます.
  これらのフォーマットは,ディスクに保存することも,ドラッグ&ドロップ/コピー&ペーストして
  他のアプリケーションに書き込むこともできます.

● 出力形式
  KLatexFormula --- Available Export Formats( https://klatexformula.sourceforge.io/doc/formats )
  を参照してください.

  主要なも:PDF, PNG, SVG, JPEG, PS/EPS, EMF/WMF, ODG(OpenOffice Draw形式),...など


1.1 インストール

必要に応じて,TeX Wiki KLAtexFormula ( https://texwiki.texjp.org/?KLatexFormula )から
ダウンロードしてください.

動作環境は,Windows, macOS, Linux です.以下は Windows10 がターゲットです.


1.2 マニュアル

Using KLatexFormula 2.0.1(←現在は ver. 4.0.0 です.マニュアル的には 部分的に古いですが利用可能です.)

https://klatexformula.sourceforge.io/docs/khelpcenter-html/using-klatexformula.html


§2 使い方

ダウンロード後,"klatexformula-4.0.0-win32.exe" を解凍すると Desktop上にアイコン

klatexformula01.png


が表示され,これを"クリック"(↓ で表記)すると次が表示され,動作環境の設定を行います.
klatexformula02.png


KLatexFormula には基本的に2つのモードがあります.

「①[拡張モードに切り替える]」ボタンを↓して,もう一度①を↓すると縮小ウインドモードに戻ります.
縮小ウインドモードでは,すべてが簡単です.数式を入力して出力を処理します.
拡張ウインドモードでは,さらに便利な設定をすることができます.

(1)動作環境を設定する.
   ①を↓して拡張モードとし,②タブを↓して設定します.(通常は初期設定されています)
   
   [LaTeX]タブ
   * Foreground color(数式の色) 黒色 初期設定のままでよい.
   * Background color(背景色) 透明 初期設定のままでよい.
   
   * Use Math mode にチェック入れる
    \begin{align*} ... \end{align*}を選択 初期設定のままでよい.
    
   * Font : Times(txfonts) を選択 (初期設定はComputer Modern)
   * Font Size : (default) 初期設定のままでよい.
   
   [Preamble]タブ
   * 初期設定のままでよい.(必要に応じて \usepackage{...}を追加する)
   
   [Image]タブ
   * 初期設定のままでよい.
   
   [Script]タブ
   * 初期設定のままでよい.(none)
   
   [Setting]
   * Interface : 初期設定のままでよい.
   * LaTeX : 初期設定のままでよい.
        ただし, gs:が空白だったので右側の[Browse]から手動設定した.
        (c:/gs/gs9.21/bin/gswin64c.exe)
        設定変更したら,[Apply]↓とする.
   * Editor : 初期設定のままでよい.
   * Library: 初期設定のままでよい.
   * Scripts: 初期設定のままでよい.
   * Advanced:初期設定のままでよい.
   
   [Style]
   Save Current Style As Default ↓


§3 サンプル

3.1 新規に数式を入力する

(1)縮小モードにして,数式記入欄に以下を記述します.

-------------------------------------------------------------------
\left( \int_0^\infty \frac{\sin x}{\sqrt{x}} dx \right)^2=
\sum_{k=0}^\infty \frac{(2k)!}{2^{2k}(k!)^2} \frac{1}{2k+1}=
\prod_{k=1}^\infty \frac{4k^2}{4k^2 -1}= \frac{\pi}{2}
-------------------------------------------------------------------

klatexformula03.png


(2)数式表示欄にリアルタイムで数式が表示されます.見易くする為にルーペ③で
   拡大して確認できます.(この段階までは正式なものではありません.)
   
(3)いよいよ LaTeX を起動させます.
   [Run LaTeX]④↓,少し間をおいて,正式な数式が表示されます.

klatexformula04.png


(4)数式画像を保存するには,[SAVE]⑤ボタンを↓ファイル名とファイルイメージ形式を選択します.
   [COPY]ボタン↓で別のアプリケーションに画像を貼り付けることができます.

(5)数式をクリアするには,クリア⑥ボタンを↓します.

(6)終了するには,最下行の[Quit]↓


3.2 既存の数式を使う

(1)[Show Libraly]⑦ボタンを↓,以前に評価した数式が表示されますので,再度呼び戻して
   修正や強化を行うことができます. 不要になった数式は削除できます.

klatexformula05.png


(2)既存の y=ax^2+bx+c をダブルクリックすると,数式欄に反映され,[Run LaTeX]で
   正式な数式が表示されます.

klatexformula06.png


(3)その他
   LaTeX Symbol Palette ⑧↓でシンボルパレットが表示され該当シンボルをクリックすると
   数式欄へ挿入されます.

klatexformula07.png


(EOF)
  1. 2017/09/25(月) 13:36:57|
  2. 便利ツール

[便利ツール] 「ヘルプましん」(HTML Help Designer) --- HTML Help 作成支援ツール

§1 はじめに

「ヘルプましん」は Microsoft HTML Help 形式のヘルプファイル (*.CHM) の作成をサポートする
フリーソフトです.

HTML Help にしたいHTMLファイルがある場合や、HTMLファイルを作成する事が出来るなら
簡単にHTML Help ファイルを作成する事が可能です.

1.1 インストール

http://www.vector.co.jp/download/file/win95/prog/fh382800.html から
ダウンロードしてください.

(こちらでは,Windows 10 にインストールしました)

1.2 マニュアル

以下のサイトをお読みください.全体を把握できると思います.

(1)手元のHTMLファイルをHTMLヘルプ形式に変換「ヘルプましん」
   http://forest.watch.impress.co.jp/article/2002/03/04/helpmachine.html

(2)複数のHTMLファイルからCHM形式のヘルプファイル作成
   http://forest.watch.impress.co.jp/library/software/helpmachine/

なお,HTML Help Workshop はマイクロソフト社のホームページ MSDN Online Library より入手できます.
   https://msdn.microsoft.com/ja-jp/library/windows/desktop/ms669985(v=vs.85).aspx
   
   (Htmlhelp.exe, Htmlhelpj.exe)

§2 使い方

インストール後は次のような手順で作業すればよいはずです.

(1) HTMLソースファイルと収納ホルダを準備
(2) "ヘルプましん"アイコンをクリックして起動する
(3) 「プロジェクト名」を設定
(4) 「ホルダの取り込み」---(1)を読み込む
(5) 画面左側にツリーが表示される
(6) 最後に,「コンパイル」を実行する.

§3 サンプル

私は,「天地有情」というブログを書いています.内容は "LaTeX関連" のパッケージに関する
情報を発信しています.ブログの原稿を整理するつもりで「ヘルプましん」の利用を思い立ちました.
以下は,"[LaTeX] 公開済みパッケージ一覧表(目的別順)"
http://konoyonohana.blog.fc2.com/blog-entry-415.html
を「ヘルプましん」化したものです.アイコンを Desktop 上におき,不明点があればクリックして活用して
います.以下はそのサンプルです.有用な一面をご覧頂ければと思います.

詳しくは説明しませんが,ブログ原稿(テキスト)のHTML化はドキュメントツール Sphinx を使いました.
(TeX Wiki / Sphinx : https://texwiki.texjp.org/?Sphinx )もご覧ください.

helpmachine01.png



(EOF)
  1. 2017/06/27(火) 09:21:40|
  2. 便利ツール

Internet Speed Tracker を駆除した話 --- AdwCleanerを使う

1.いきさつ:

Internet Speed Tracker ツールバーは,悪意のある有害な可能性のあるプログラムのカテゴリ
に分類され,システムに脅威を与えるものではなく,ユーザの日常の作業を妨げるといったよ
うな低レベルの脅威ですが,困ったもんです.迷惑ソフトのひとつです.

自分は通常 ブラウザとして,Mozilla Firefox を利用しています.ある日,突然トップページ
をInternet Speed Trackerに乗っ取られてしまいました.これは迷惑ソフトですので何とか駆除
しなければなりません.

2.対策:

先ず,ネットで「Internet Speed Tracker」を検索したところ,この被害で困惑されている方々
が多数おられました.そこから得られた情報をもとに,AdwCleaner という駆除ソフト(フリー)
を使えばよいことが分かりました.

3.AdwCleaner とは

各種アドウェアの検出に特化した,非常駐型のシンプルなセキュリティソフトです.システムの内部
に潜伏する アドウェア / PUP / ツールバー / ブラウザハイジャッカー を検索し,検出されたもの
を一括して駆除することができます.

4.どから入手するのか

「k本的に無料ソフト・フリーソフト」というサイトがあり,以下のアドレスから入手できます.

http://www.gigafree.net/security/AdwCleaner.html

AdwCleaner についての丁寧な説明が付いていますので,詳細は割愛させて頂きます.

5.最後に:

AdwCleaner でスキャンされ検出された削除すべきファイルやレジストリがリストアップされます.
一括して削除すればOKです.最後に再起動して,ブラウザを起動するともとのトップページが表示
されました.めでたしめでたし.何らかの参考になれば幸いです.

(EOF)
  1. 2016/11/12(土) 08:47:43|
  2. 便利ツール

wkhtmltopdf の使い方

wkhtmltopdf の使い方

1.概要

wkhtmltopdfはその名の通り,Webkitのレンダリングエンジンを用いて,HTMLをPDFに変換するというソフトウェアです.
ちょっとしたドキュメントを作る際に,手軽に利用出来ます.

※ Webkit とはアップルが中心となって開発されているオープンソースのHTMLレンダリングエンジン群の総称である.
HTML,CSS,JavaScript,SVG,MathMLなどを解釈する.(ウィキペディアより)

2.ダウンロード

次のサイトからOSに合ったものをダウンロードする.

http://code.google.com/p/wkhtmltopdf/


3.使い方

■ 最も簡単な例:

  (1) wkhtmltopdf input.html output.pdf

  (2) wkhtmltopdf index.html sample.html output.pdf

■ WebページもPDFにできる.

   wkhtmltopdf http://www.asahi.com/ output.pdf

■ 用紙サイズの変更(デフォルトはA4サイズ)

   wkhtmltopdf -s B5 input.html output.pdf

■ コマンドオプション

コンソールから次のコマンドを打ち込むとオプションリストが表示される.

   wkhtmltopdf --help

Synopsis:
   wkhtmltopdf [GLOBAL OPTION]... [OBJECT]...

Global Options:
****************************************************************************************
  --collate            Collate when printing multiple copies
                   (default)
  --no-collate           Do not collate when printing multiple
                   copies
  --copies         Number of copies to print into the pdf
                   file (default 1)
-H, --extended-help         Display more extensive help, detailing
                   less common command switches
-g, --grayscale           PDF will be generated in grayscale
-h, --help              Display help
-l, --lowquality           Generates lower quality pdf/ps. Useful to
                    shrink the result document space
-O, --orientation     Set orientation to Landscape or Portrait
                    (default Portrait)
-s, --page-size         Set paper size to: A4, Letter, etc.
                    (default A4)
-q, --quiet              Be less verbose
  --read-args-from-stdin       Read command line arguments from stdin
  --title            The title of the generated pdf file (The
                    title of the first document is used if not
                    specified)
-V, --version             Output version information an exit
****************************************************************************************

EOT





  1. 2014/06/27(金) 09:59:00|
  2. 便利ツール
  3. | トラックバック:0
  4. | コメント:0

[Windows][diff][patch] Windows用の diff & patch コマンドでのパッチの適用 ~備忘録~

Windows用の diff & patch コマンドでのパッチの適用 ~備忘録~

§1.概要

diff/patchコマンドを使うとファイルの変更を別のファイルに簡単に適用できます.

今回,使用した diff/patch コマンドのバージョンは次の通りです.

  diff.exe ーーー ”diff - GNU diffutils version 2.7”
  patch.exe ーーー”patch 2.5.4”

§2.作業手順

パッチ作業は次の順で行います.

  1)diffコマンドで変更前/後ファイルの 差分(パッチ)ファイル を作成
  2)変更前ファイルに対して patchコマンド で 差分(パッチ)ファイル を適用

§3.コマンド説明

コマンドについて説明します.

● diff --help で詳細を確認できます.
  オプションとしては通常,「-u」または「-c」が使われます.
   「-u」は unified 形式で出力.
   「-c」は context 形式で出力.

● patch --help で詳細を確認できます.
  オプションとしては通常,「-u」「-c」が使われます.意味は diff の場合と同じです.
  対象がカレント・ディレクトリの場合は,-uオプション以外は使わなくてもよいと思われます.

§4.差分(パッチ)ファイルの作成とパッチ(patch)の適用

  1)パッチファイルの作成には diff コマンドを使用します.

   diff -u(または -c) 変更前ファイル名  変更後ファイル名 > 差分(パッチ)ファイル名

※ -u(または -c)オプションを付けると,差分(パッチ)ファイル自体にパッチの対象となる
  ファイルの情報が含まれます.次項で述べる patch コマンドでは,わざわざユーザが
  変更前ファイル名を指定する必要はありません.

  2)patchコマンドの適用

   patch [-u(または -c)] [適用するファイル名] < パッチファイル名

※ [適用するファイル名]は前述のとおり省略できます.パッチファイルの情報として,
  先頭の行「--- ファイル名」のファイルにパッチが適用されます.

※ 【重要なこと】パッチファイル名 の改行コードは 標準では[LF]となっています.
         Windowsの場合は必ず[CRLF] に変更します.
         もし,変更しなかった場合は次のようなメッセージが出て失敗します.

*************************************************************
missing header for unified diff at line 4 of patch
can't find file to patch at input line 4
Perhaps you should have used the -p or --strip option?
File to patch:
*************************************************************


§5.簡単なサンプル

例として以下のような2ファイル(test,test.new)を元にパッチファイルを作成してみます.

1)サンプルファイルの作成

■ test ファイル(変更前ファイル)
-----------------------------
1.あいうえお   %%「か」行なし
2.さしすせそ
3.たちつてと   %%「な」行なし
4.はひふへほ
5.まみむめも

-----------------------------

■ test.new ファイル(変更後ファイル)
-----------------------------
1.あいうえお
2.かきくけこ
3.さしすせそ
4.たちつてと
5.なにぬねの
6.はひふへほ   %%「ま」行なし

-----------------------------

※ 【重要なこと】各ファイルの[最終行]は改行してから,保存します.

2)操作

    diff -u test test.new > test.patch
 
    出力された test.patch の改行コードを[CRLF]に変更しておきます.
 次に,
    patch -u < test.patch

test.patch の内容
※ ファイルの見方の説明は §6.補足説明 を参照してください.
---------------------------------------
--- test Fri Mar 07 12:40:59 2014
+++ test.new Fri Mar 07 12:41:08 2014
@@ -1,5 +1,6 @@
1.あいうえお
-2.さしすせそ
-3.たちつてと
-4.はひふへほ
-5.まみむめも
+2.かきくけこ
+3.さしすせそ
+4.たちつてと
+5.なにぬねの
+6.はひふへほ
---------------------------------------

3)パッチ後の元のファイル test の内容

---------------------------------------
1.あいうえお
2.かきくけこ
3.さしすせそ
4.たちつてと
5.なにぬねの
6.はひふへほ
---------------------------------------

※ 上記の更新された test の内容を 変更前ファイル に戻したい場合には次の 「-R 」オプションを使います.

  patch -R < test.patch

§6.補足説明

パッチファイル test.patch の見方について説明します.

1行目: --- test は変更前(比較元)ファイル名と,そのファイルの作成日付である.

2行目: +++ test.new は変更後(比較先)ファイル名と,そのファイルの作成日付である.

3行目: @@ -R +R @@
     変更箇所の範囲情報は2つの範囲についての情報を含んでいる.一方はマイナス記号が頭に
     付いた元ファイルにおける変更箇所を示すものであり,もう一方はプラス記号が頭に付いた
     変更後のファイルにおける変更箇所を示している.範囲を示す R は l,s という形式となり,
     l は変更箇所の開始行,s はそれぞれのファイルにおける変更箇所の行数を示している.

4行目以降: 中盤の部分が比較しているテキストで,その中の「-」および「+」がついている行は
    二つのファイの相違点である.さらに冒頭の二行に「---」および「+++」が付加されている
    ことから類推すれば,「-」がついている行は比較元のファイルにのみ存在する行であること,
    逆に「+」が付加されている行は比較先にのみ存在する行であることがわかる.
    頭に何も書かれていない行は両者に共通している行である.

この項は(http://d.hatena.ne.jp/den8/20100622/1277226958)を参考にしました.

--おわり--
  1. 2014/03/07(金) 15:44:39|
  2. 便利ツール
  3. | トラックバック:0
  4. | コメント:0

[elapsedtime][timeit] プログラム実行時間の計測コマンド

プログラム実行時間の計測コマンド

■ コマンド

Windows におけるプログラムの実行時間を計測するコマンドを調べたところ
次の2つがありました.

elapsedtime.exe
     このコマンドはWindowsに標準搭載されています.

timeit.exe     このコマンドは WindowsXP には標準搭載されているようです.
     必要な場合には『Windows Server 2003のリソースキット』に含まれており,
     以下からダウンロードします.
     (http://www.microsoft.com/en-us/download/details.aspx?id=17657)
 
 
■ 使い方

● elapsedtime.exe

     texworks というプログラムが立ち上がるまでの経過時間を調べてみます.
     コマンドラインから次のように入力します.
 
     C:\Users\xxx\Desktop> elapsedtime texworks
 
--------------------------------------------
     Elapsed time = 450 milliseconds
--------------------------------------------
 
 
● timeit.exe

     上記と同様に texworks というプログラムについて実行時間などについて調べてみます.
     コマンドラインから次のように入力します.
 
     C:\Users\xxx\Desktop> timeit texworks

プログラムが終了すると、次のように実行したプログラムに関する統計値が表示されます.

--------------------------------------------
Version Number: Windows NT 6.1 (Build 7601)    ………OSバージョン
Exit Time: 12:04 am, Monday, February 24 2014  ……終了時間
Elapsed Time: 0:00:00.405        …………………開始から終了までの経過時間
Process Time: 0:00:00.358        …………………処理時間
System Calls: 8255            …………………システム・コールの回数
Context Switches: 1417            …………………コンテキスト切り替えの回数
Page Faults: 3141            …………………ページ・フォルトの回数
Bytes Read: 1378451           …………………ディスクからの読み出しバイト数
Bytes Written: 0              …………………ディスクへの書き込みバイト数
Bytes Other: 9000            …………………そのほかのデータ転送バイト数
--------------------------------------------

この中で大切なのは「Elapsed Time」と「Process Time」です.

「Elapsed Time(経過時間)」は,プログラムを起動してから終了するまでの実際の経過時間です.
この例では 405msec かかっていることがわかります.

「Process Time(処理時間)」は,プログラムの実際の処理時間です.つまり実際にCPUを占有して,
動作していた時間の総計を表わします.この例では 358msec かかっていることがわかります.

あと,4回実行して,合計5回の平均の実行時間を求めるには次のようにします.

     C:\Users\xxx\Desktop> timeit texworks …2回目
     C:\Users\xxx\Desktop> timeit texworks …3回目
     C:\Users\xxx\Desktop> timeit texworks …4回目
     C:\Users\xxx\Desktop> timeit texworks …5回目
     C:\Users\xxx\Desktop> timeit -k texworks…指定したキーのデータだけを表示させる(-k option要)

--------------------------------------------
Average for texworks key over 5 runs …………5回の実行における平均値

Version Number: Windows NT 6.1 (Build 7601)
Exit Time: 9:00 am, Monday, January 1 1601
Elapsed Time: 0:00:00.408 …………………平均実行時間.以下はすべて平均値
Process Time: 0:00:00.371
System Calls: 8838
Context Switches: 1489
Page Faults: 3192
Bytes Read: 1379189
Bytes Written: 35123
Bytes Other: 11600
--------------------------------------------

このtimeit.exeコマンドでは,実行した結果をログ・ファイルに記録し,その平均値を計算して表示するとい
機能を持っています.timeit.exeを実行すると,その結果が(デフォルトでは)カレント・ディレクトリにあ
timeit.datというファイルに記録されます.そして何もパラメータを付けずにtimeit.exeを実行すると,現在
timeit.datファイルに記録されているデータに基づいて,プログラムごとの平均値が表示されます.
また、キー名を指定すれば,そのキーに属するデータだけを表示することもできるます(「キー」とは実行し
プログラムの名称のこと).詳しくは timeit /? で表示されるヘルプ・メッセージを参照してください.
 
(参考文献:timeitコマンドでアプリケーションの実行時間を測定する)
http://www.atmarkit.co.jp/fwin2k/win2ktips/422timecmd/timecmd.html


(追)texworks などのアプリを実行した後,終了させるには
   timeit cmd /c "texworks"
   のように cmd /c を付加し"texworks"のように,実行ファイルを("...")ダブルコーテーションで囲みます.
   (詳細は cmd /? で表示されるヘルプ・メッセージを参照してください)

== おわり ==
  1. 2014/02/24(月) 13:35:19|
  2. 便利ツール
  3. | トラックバック:0
  4. | コメント:0

画像の圧縮・最適化ユーティリティ

画像の圧縮・最適化ユーティリティ

WEBサイト上で利用する画像ファイルなどは,減色したり画像サイズを小さくしたりと工夫を凝らすわけですが,
画質とファイルサイズのバランスをとるのは結構難しいものです.

画質を劣化させず,ファイルサイズを小さくしてくれるWindows用のツールを紹介します.

(1)画像の圧縮・最適化ユーティリティの種類

下表にまとめてあります.

画像UTL.png


(2)使い方

(a) PNGGauntlet
入力ファイルを Drag-Drop するだけです.

gaunt.png


(b) PNGOUT
入力ファイルを指定するだけです.

pngout.png


(c) carmine
入力ファイルを Drag-Drop するだけです.

carmine.png


(d) Caesium
入力ファイルのホルダーを指定するだけです.

Caesium.png

(3)入手先とインストール

次のサイトからダウンロードおよびインストールを実行してください.

(a) PNGGauntlet
http://pnggauntlet.com/

(b) PNGOUT.exe
http://advsys.net/ken/utils.htm#pngout

(c) carmine
http://www.vector.co.jp/soft/win95/art/se279366.html

(d) Caesium
http://www.vector.co.jp/soft/dl/winnt/art/se492943.html


(注意)
上記の(a) PNGGauntlet は,(b) PNGOUT というコマンドラインで利用する画像最適化ソフトの
単なるフロントエンドです.








  1. 2013/10/13(日) 10:00:18|
  2. 便利ツール
  3. | トラックバック:0
  4. | コメント:0

mklink コマンドを使ってみよう ----- 備忘録

mklink コマンドを使ってみよう ----- 備忘録

Windows におけるファイルやディレクトリに対するリンクの作成には mklink コマンドが使われます.

(1)使い方

C:\Users\Desktop> mklink/?

---------------------------------------------------------------------------------
シンボリック リンクを作成します.

MKLINK [[/D] | [/H] | [/J]] リンク ターゲット

/D ディレクトリのシンボリック リンクを作成します.既定では,
ファイルのシンボリック リンクが作成されます.
/H シンボリック リンクではなく,ハード リンクを作成します.
/J ディレクトリ ジャンクションを作成します.
リンク 新しいシンボリック リンク名を指定します.
ターゲット 新しいリンクが参照するパス (相対または絶対)
を指定します.
---------------------------------------------------------------------------------

わかり易く書くと

mklink 【オプション】 【作るリンク】 【実ファイルパス|実ディレクトリパス】

mklinkでは /H をつければハードリンクで,デフォルトならシンボリックリンクとなります.
さらに,Windowsではファイルのシンボリックリンクとディレクトリのシンボリックリンクが
区別されています.(下記を参照)

(2)オプションの説明

/H : ハードリンク
・Windows 3.1 以降で使用可能
・1 つのファイルに対して複数のリンク(パス)を付けることができる.
・片方のリンクで開いたファイルを変更すると,他のリンクで開いているものも更新される.
・ディレクトリ(フォルダ)に張ることはできない.
・ドライブをまたいでリンクを張ることはできない.

/J : ジャンクション
・Windows 2000 以降で使用可能
・ハードリンクとは異なり,ディレクトリにリンクを張ることができる.
・標準ではファイルにリンクを張ることはできない.
・ハードリンクとは異なり,ドライブをまたいでリンクを張ることができる.
・ネットワークドライブにはリンクが張れない.

デフォルト: シンボリックリンク
・Windows Vista 以降で使用可能
・ジャンクションの強化版で,UNIX のシンボリックリンクと同等の機能をもつ.
・ファイル,ディレクトリ,ネットワークドライブなど,ほとんどの対象にリンクが張れる.
・ディレクトリへのリンクは /D オプションを付けます.
・ファイルへのリンクはオプションなしです.

(3)サンプル

■ ファイルのシンボリックリンクを作成する
a.txtファイルにa_slink.txtシンボリックリンクを作成する

mklink a_slink.txt a.txt

■ ディレクトリのシンボリックリンクを作成する
aディレクトリにa_dlinkを作成する

mklink /d a_dlink a

■ ファイルのハードリンクを作成する
a.txtファイルにa_hlink.txtハードリンクを作成する

mklink /h a_hlink.txt a.txt





  1. 2013/10/07(月) 13:30:32|
  2. 便利ツール
  3. | トラックバック:0
  4. | コメント:0
次のページ