2013/01/29

Windows XP  プロシージャ エントリ ポイント apsInitialize がダイナミック リンク ライブラリ wlanapi.dll から見つかりませんでした。

前回、notebook がタダで手に入ったと書いた。今回はその続き。
TravelMate 245LMAmilo M 1425 より古いけど、状態はまだ良かった。手入れもされているようだった。ただ起動時に

 プロシージャ エントリ ポイント apsInitialize がダイナミック リンク ライブラリ wlanapi.dll から見つか
 りませんでした。  

というエラーメッセージが出てくる。今回はこの処理についての覚書。


基本情報

機種   Travelmate 245 LM
CPU  Celeron 2.70 GHz
メモリ 512 MB
OS     Windows XP  Home Eddition (SP3)


症状

起動時に

WZCSLDR2.exe - エントリポイントが見つかりません

 プロシージャ エントリ ポイント apsInitialize がダイナミック リンク ライブラリ wlanapi.dll から見つか
 りませんでした。  

というエラーメッセージが出てくる。


詳細

Travelmate 245 LM の電源を入れると Windows XP が立ち上がる。起動して間もなく上記のエラーメッセージが出てくる。

wlanapi.dll について調べてみると、このファイルは無線LAN関係のデバイスに必要なファイルのようだ。(参照:2)しかしながらこの notebook は無線LANを内蔵されていない。代わりに D-Link製の無線LANアダプターのためのソフトウェア(ユティリティソフトウェア)がインストールされている。おそらくこのソフトウェアが wlanapi.dll を使っているのだろう。

今度は、上記のメッセージで検索したら、”How To Fix Wlanapi.dll Not Found or Missing Errors”という Website を見つけた。ここには wlanapi.dll に関するエラーの対処方法が詳しくかかれている。 ここの4番目に
 ”wlanapi.dll を使用しているプログラムを再インストールせよ。”
とある。

そこで D-Link製の無線LANアダプター関係のユティリティソフトウェアを全てアンインストールした。そして”プログラムの追加と削除”から
 Anio Service
 Aniwzcs2 Service
も削除した。(参照:3)

これでエラーメッセージは出なくなった。その後手持ちの無線LANアダプターをインストールしたが、問題なく使えている。

無線LANアダプター: 無線でインターネットに接続するための周辺機器
周辺機器:PCに接続できる電子機器。デバイスとも呼ばれる。
ダイナミック リンク ライブラリdynamic link library): ライブラリの一つで、他のプログラムを実行する時にリンクという形で読み込まれるライブラリのこと。 Linux系では共有ライブラリshared library)と呼ばれている。(参考:4)


参照

 1. How To Fix Wlanapi.dll Not Found or Missing Errors

 2. Windows XP Service Pack3 のインストール後、コンピュータを再起動するたびにエラーメッセージが表示される

 3. プロシージャ エントリ ポイント apsInitialize がダイナミック リンク ライブラリ wlanapi.dllから見つかりませんでした。の解決。

 4. ダイナミックリンクライブラリ (dynamic link library)




2013/01/26

Windows XP  bluescreen DRIVER_IRQL_NOT_LESS_OR_EQUAL ndis.sys

先日偶然にもノートブックが2台タダで手に入った。1台は Amilo M 1425 で、もう1台は TravelMate 245LM。  

もちろんタダには理由がある。 Amilo M 1425 は電源を入れるとすぐに黒い画面(Windows 拡張オプションメニュー)になって Windows XP が立ち上がらない。

今日は Amilo M 1425 の Windows XP が立ち上がるまでの覚書。 TravelMate 245LM ついてはまた次回へ、


基本情報

機種   Amilo M 1425
CPU  Centrino 2 GHz
メモリ 512 MB
OS     Windows XP  Home Eddition (SP3)

症状

 - 電源を入れると Fujitsu-Siemens のロゴがでてくるが、そん後間もなくWindows 拡張オプションメニューの画面(黒い画面)になる。
 - しかし、Knoppix などの LiveCD からは正常に起動する。

詳細

Windows がインストールしてあるノートブックの電源を入れると、Fujitsu-Siemens のロゴが出てくる。その後間もなくWindows 拡張オプションメニューの画面(黒い画面)がでてきて Windows XP が通常どおりに起動しない。 ここの選択肢で

 - セーフモード
 - セーフモードとネットワーク
 - 前回正常起動時の構成
 - 通常起動
 - 再起動

を試みたが、このうち起動したのは”セーフモード”の場合だけだった。

ここで、”セーフモード”の場合に起動して、”セーフモードとネットワーク”で起動しないのだから、
原因はネットワーク関係に何かがありそうだ。そこでネットワークに関係したソフトウェアを新しい順にアンインストールしていった。しかし、状況に変化なし。
今度は試しに内蔵の無線LANのスイッチを切ってから電源スイッチを入れてみると、何と通常どおりに起動した。有線LANは問題なく使える

そこで無線LAN関係のドライバーを全て無効化してから、無線LANのスイッチを入れてみた。すると、間もなくして Bluescreen になり、再起動してしまった。ここで無線LANのスイッチが入ったままだと例の黒い画面がでてくるが、スイッチを切っておくと通常に起動してくれる。

これは無線LAN関係のドライバーに何か問題があることは間違いなさそうだ。
そこで Bluescreen のメッセージをデジカメで撮影してみると、


という具合にいろいろと書かれていた。

作業の方向は正しかった。もうすでにかなりのソフトウェアをアンインストールしているし、周辺機器も有線LANしか接続していないので、 Bluescreen のメッセージにある

 DRIVER_IRQL_NOT_LESS_OR_EQUAL
 NDIS.sys

で検索した。すると、

 DRIVER_IRQL_NOT_LESS_OR_EQUAL in w22n51.sys

という記事を見つけた。そこには

The answer was simple: go to http://downloadcenter.intel.com/ and update the drivers for the wireless networking hardware.

と、あった。ここで、”the drivers” とは”w22n51.sys” だと書いてある。これは問題の notebook にもインストールされている Intel PRO/Wireless 2200BG のドライバーだ。

早速このドライバーを最新のものに更新すると、正常に起動するようになった


ドライバーの更新の仕方

ネットで調べると色々かかれているが、有線LANが使えたので以下の方法をとった。
 
 - http://downloadcenter.intel.com/ にアクセスする。
 - インテル® ドライバー・アップデート・ユーティリティー のところにある”次へ”をクリック。
 - ”システムに適した最新ドライバーの確認” をクリック。
 - 後は画面の指示にしたがってインストール開始。



後書き

今回は始めから Windows が立ち上がらないことは分かっていたが、それしか分からなかった。もし、何をどうしたときにこうなったということが分かっていたら、もっと簡単だっただろう。

おそらく持ち主はSP2からSP3にバージョンアップした直後か、ルーターを新しくして WPA(暗号の一つ)を使っているネットワークに接続しようとした直後ににWindows 拡張オプションメニューの画面(黒い画面)がでるようになったと思われる。(IRQL_NOT_LESS_OR_EQUAL – verursacht durch alten Treiber für Intel® PRO/Wireless 2200BG Read more about Wlan-Karte by

2013/01/19

Ubuntu  Gnuplot

Gnuplot とは

関数やデータから2次元や3次元のグラフを描くためのソフトウェア。
ほとんど全てのOSで動作する。また、入力は端末から実行し,描いたグラフをモニターに映し出すだけでなく、拡大縮小したり回転させたりすることも出来るし、画像として保存することも出来る。


インストール

Ubuntu の場合は

 パッケージマネージャや端末、ソフトウェアセンターなどから
  gnuplot
 をインストールする。  

一般的には Linux系の場合は

 gnuplot download から以下のファイルをダウンロードする。
  gnuplot-4.6.1.tar.gz 
 端末から以下のコマンドを1行ずつ実行する 
  tar xzvf gnuplot-4.6.1.tar.gz
  cd gnuplot-4.6.1
  ./configure
  make
  make check
  make install

Windows系の場合は

 gnuplot download から以下のファイルをダウンロードする。
  gp460-win32-setup.exe 
 ダウンロードしたファイルをダブルクリックしてインストール開始。
  インストーラにしたがってインストールを実行していく。 

その他のOSまたは詳しいことは readme  を参照

使い方

 起動 端末より gnuplot と入力する。

 描画 もっとも簡単な使い方は

      plot 2*x-1       一次関数 f(x)=2x-1 を描画する場合
      plot 2*x**2-6       二次関数 f(x)=2x²-6 を描画する場合
      splot 2*x+3*x*y     曲面 f(x,y)=2x+xy を描画する場合

     これだけでグラフを描ける。

 出力 特に設定しなければモニターに出力されるが、以下の2行で画像として出力することもできる。

     set term "type"      type は png, gif, postscript, epslatex など。
     set output "name.type"  name は任意、 type は term で指定した形式。
                 
    出力先をモニターに戻すには

     set term x11       Linux (Unix) の場合
     set term windows      Windows系の場合
 
 設定 グラフを入力すれば平面は自動で設定してくれるが,手動で設定することも出来る。

     set xrange [a:b]      x の値の範囲を a から b までに指定
     set yrange [c:d]      y の値の範囲を c から d までに指定

     set grid         方眼を入れる。
     set size square      x方向とY方向のメモリの大きさをそろえる。

     set xzeroaxis lt -1    x軸を黒の実線で入れる。
     set yzeroaxis lt -1    y軸を黒の実線で入れる。

     set xtics axis       x軸にメモリを入れる。
     set ytics axis       y軸にメモリを入れる。

 関数の定義 

     f(x)=a*x+b         関数 f(x)=ax+b を定義( g(x), f(x,y)なども使える。)
 
 設定の保存 save コマンドで今まで使ったコマンドを保存出来る。

     save "ファイル名"     例 save "x-y-place.txt"     


 設定ファイルの呼び出し load コマンドで設定ファイルを呼び出せる。
     load "ファイル名"      例 load "x-y-place.txt"

その他詳しい使い方は Official gnuplot documentation を参照。
 

参考

 Gnuplot について

  Official website

  http://en.wikipedia.org/wiki/Gnuplot

  http://ryukyu.astr.tohoku.ac.jp/pukiwiki/index.php?Members/chinone/覚書/Gnuplot  

 解説

  Gnuplotスクリプトの解説

  Gnuplot の Tip集

  Gnuplot入門

  Gnuplotkurs Gnuplot

  Gnuplot の初歩

  Gnuplot auf die Schnelle

 グラフ作成

  Gnuplot を用いたグラフ作成

  Gnuplot によるグラフ作成

  Gnuplot を使ってプレゼン用、論文用のグラフ作成

 リンク集

  Gnuplot について

Ubuntu  mimeTex

mimeTex とは

LaTex で書かれた数式をHTML形式の Website や Blog に取り込むためのソフトウェア。
mimeTex は TeX や Tex のフォントを使用せずに直接数式に対応するgif画像を出力するので、Tex やTex関連のソフトウェアをインストールしておく必要はない。


インストール

mimeTex はサーバーインストールする。

Ubuntu の場合はパッケージマネージャや端末、ソフトウェアセンターなどから
 mimetex
 python-nodebox-web
をインストールする。 

一般的には
  mimetex.zip をサーバーへダウンロード。 
 端末から
  unzip mimetex.zip
 と入力する。
 続いて
  cc -DAA mimetex.c gifsave.c -lm -o mimetex.cgi 
 と入力する。
 mimetex.cgi を以下のコマンドを使って cgi-bin/ に移動させる。
  sudo mv mimetex.cgi /usr/lib/cgi.bin/       (cgi-bin/ が /usr/lib/ にある場合。)
 以下のコマンドを使ってパーミッションを755(サーバーによっては705)に変更する。
  sudo chmod 755 mimetex.cgi
 詳しくは mimeTex quickstart を参照。


使い方

数式を書きたい場所に
 <img  src="../cgi-bin/mimetex.cgi?数式" >
と書けばよい。ここで
.. はネットから見た cgi-bin/ までのパス。例えば http://www.yourdomain.com/ に cgi-bin/ があるなら
 ../cgi-bin/mimetex.cgi -> http://www.yourdomain.com/cgi-bin/mimetex.cgi

とすればいい。
そして”数式”と書いたところに LaTex のコマンドで数式を書く。 

詳しくは mimeTex quickstart を参照。


マニュアル  

mimeTex manual より転載


     ./mimetex [ -d ]            dump gif image on stdout,
               [ -e export_file ]  or write gif image to export_file
               [ expression      expression, e.g., "x^2+y^2",
               | -f input_file ]   or read expression from input_file
               [ -g1 -d ]        dump .pbm-formatted image on stdout
               [ -g1 -e export_file ]  or write .pbm image to export_file
               [ -g2 -d ]        dump anti-aliased .pgm image on stdout
               [ -g2 -e export_file ]  or write .pgm image to export_file
               [ -m msglevel ]   verbosity of debugging output
               [ -o ]            render image with opaque background
               [ -s fontsize ]   default fontsize, 0-5

     -d   Rather than printing ascii debugging output, mimeTeX
          dumps the actual gif (or xbitmap) to stdout, e.g.,
               ./mimetex  -d  "x^2+y^2"  >  expression.gif
          creates expression.gif containing an image of x^2+y^2

     -e export_file   Like -d but writes the actual gif
          (or xbitmap) directly to export_file, e.g.,
               ./mimetex  -e expression.gif  "x^2+y^2"
          creates file expression.gif containing an image of x^2+y^2

     expression   Place LaTeX expression directly on command
          line, with no -switch preceding it, as in the example
          immediately above, or.....

     -f input_file   .....read expression from input_file
          (and automatically assume -d switch).  The input_file
          may contain the expression on one line or spread out
          over many lines.  MimeTeX will concatanate all lines
          from input_file to construct one long expression.
          Blanks, tabs, and newlines are just ignored.

     -g1 -d   dumps a .pbm-formatted portable bitmap image to stdout.
          Note that this is the bitmap image _before_ anti-aliasing.

     -g1 -e export_file   Like -g1 -d but writes the .pbm-formatted
          portable bitmap directly to export_file, e.g.,
               ./mimetex  -g1 -e expression.pbm  "x^2+y^2"
          creates file expression.pbm containing a bitmap image
          of x^2+y^2 before anti-aliasing.

     -g2 -d   dumps a .pgm-formatted portable graphic image to stdout.
          Note that this is the bytemap image _after_ anti-aliasing.

     -g2 -e export_file   Like -g2 -d but writes the .pgm-formatted
          portable graphic image directly to export_file, e.g.,
               ./mimetex  -g3 -e expression.pgm  "x^2+y^2"
          creates file expression.pgm containing a bytemap image
          of x^2+y^2 after anti-aliasing.

     -m msglevel   0-99, controls verbosity/message level for
          debugging output (usually used only while testing code).

     -o   Rather than the default transparent gif background,
          the rendered image will contain black symbols on an
          opaque white background (or vice versa if compiled
          with -DWHITE).  For example, if you have ImageMagick's
          display utility,
               ./mimetex  -o -d  "x^2+y^2" | display &
          opens a small window containing the rendered expression.
          (Note: if you already compiled mimeTeX with -DOPAQUE
          then  -o  renders images on a transparent background.)

     -s fontsize   0-7, font size.  Font size can also be specified
          within the expression by a directive, e.g., \Large f(x)=x^2
          displays f(x)=x^2 at font size 4, overriding -s.
          Default font size is 3.


サーバーを運営していない場合

 mimeTex quickstart の下のほうにサーバーを運営していない人でも mimeTex を利用出来るように

 http://www.forkosh.com/mimetex.cgi?

を利用できると書いてある。つまり、

 <img  src="http://www.forkosh.com/mimetex.cgi?数式" >

とすれば使えるということらしい。しかし私の所ではエラーメッセージがでて機能しなかった。
また、個人でサーバーを運営している方の中にはご自身の mimetex.cgi を開放してくださっている方もいる。それらを使っても出力できる。私はそんな方の一人の mimetex.cgi を使わせていただいて出力しました。(Ubuntu  Blog や Website で数式を表現


参考  

 1. http://www.forkosh.com/mimetex.html

 2. http://www.forkosh.com/mimetexmanual.html

 3. http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?mimeTeX

 4. http://www.analib.com/blog/2010/01/mimetexweb.html

2013/01/16

Ubuntu  jsMath

jsMath とは

JavaScript ライブラリにあり、 HTML形式で書かれた Website や Blog に数式を記述するためのソースコード。多くのブラウザーのもとで機能する。


インストール

jaMath と関連ファイルをサーバーにインストールする。


jsMathのダウンロードページから jsMath と jsMath Image Fontsをダウンロードする。
サーバーの適当な場所に jaMath という名前のフォルダをつくる。
jsMath を解凍すると jsMath-3.6e という名前のフォルダが出きるので,その中身を全て jsMath にコピーする。
jsMath Image Fonts を解凍すると jsMath という名前のフォルダが出きるので,その中の fonts
というフォルダを中身ごと全て jsMath にコピーする。
詳しくは jsMathのダウンロード(Webページの著者用) を参照。

サーバーに Ubuntu を利用している場合には
 sudo apt-get install jsmath ttf-jamath
を実行する。
すると、/usr/share 内に jsmath という名前のフォルダができ、その中に全てインストールされる。
このフォルダ名 jsmath を jsMath に変更する。
(ただし、未確認)


使い方

次の行をドキュメントのヘッダーに追加する。

 <SCRIPT SRC="path-to-jsMath/easy/load.js"></SCRIPT>

ここで,path-to-jsMathを,jsMathパッケージを置いている場所を示すように変更する。
例えば jsMath が /usr/share/ にある場合には

 path-to-jsMath -> /usr/share/jsMath

とすればよい。(詳しくは jsMathのダウンロード(Webページの著者用) を参照。)

あとは数式を書きたいところで
インライン表示の場合は

 <SPAN CLASS="math">
 数式
 </SPAN>


ディスプレイ表示の場合は

 <DIV CLASS="math">
 数式
 </DIV>

と,すればよい。
また、text2mathプラグインを使えば同じことを
インライン表示の場合は

 \(
 数式
 \)

ディスプレイ表示の場合は

 \[
 数式
 \]

で表現出来る。


参考

 1. http://www.geisya.or.jp/~mwm48961/jsmath/welcome.htm

 2. http://www.math.union.edu/~dpvc/jsmath/

 3. http://en.wikipedia.org/wiki/JsMath



2013/01/15

Ubuntu  Mathjax

Mathjax とは

JavaScript ライブラリ*の一つで、 Website や Blog 等に Tex、または MathML などで書かれた数式をブラウザーで表示するためのソースコード。ほとんどのポピュラーなブラウザで特別な設定なしで表示できる。 
例えば
\[
\int_{a}^{b} f(x) dx
\]

HTMLWebsite や Blog をブラウザー上で表示するための言語、)では数式を十分に表現できない。そこで Tex などで数式を書いておき,それをブラウザー上で表示出来るように変換すれば、自在に数式が表現出来る。 Mathjax はブラウザーが利用する JavaScript ライブラリの一つになっている。それゆえ Mathjax を利用するのに特別な設定は必要ない。
MathJax同じく JavaScript のライブラリひとつである jsMath の後継者として2009年に開発が始まった。このプロジェクトは、アメリカ数学会、デザイン科学、産業応用数理学会アメリカ物理学会、エルゼビア、およびプロジェクトユークリッドによってサポートされている。


インストール

インストールの必要はない。
しかし、個人でサーバーを運営している場合,そのサーバーにインストールすることが出来る。詳しくは Installing Your Own Copy of MathJax に書かれている。
  

使い方

ヘッダー(Header:ページのソースコードの<Header> と </Header> の間)に以下のコードを書き加える。
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
</script>
<script type="text/javascript"
  src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
詳しくは Sebsite または Blog運営者の仕様にしたがってください。Blogger の場合は
あとは文章内に Tex のコマンドを使って文章中に数式を書いていけばよい。
例えば
\[
\int_{a}^{b} f(x) dx
\]

と表示する場合は

\[ \int_{a}^{b} f(x) dx \]

と書けばよい。

\(\int_{a}^{b} f(x) dx\)

と、表示するには

\( \int_{a}^{b} f(x) dx \)

と書けばよい。([, ] が (, ) となっていることに注意!
個人でサーバーを運営している場合は Installing Your Own Copy of MathJax を参照。


JavaScript とはスクリプト言語の一つで大きくはプログラミング言語の一つである。 
ライブラリとは他のプログラムに何らかの機能をコピーという形で提供するコードの集まりである。


参考

 1. http://en.wikipedia.org/wiki/MathJax

 2. http://docs.mathjax.org/en/latest/start.html

 3. http://docs.mathjax.org/en/latest/platforms/index.html

 4. genkuroki.web.fc2.com/

2013/01/12

Ubuntu  MathML

MathML とは

MathML とは Web*world wide web*)上で数式を記述し,操作し,共有するための言語である。 MathML はコンピューター言語の中のマークアップ言語*の中のXML*の一つである。つまり、MathML の特徴は数式の構造を階層的に表現することである。

例えば

0 1 f ( x ) x

と表すには

<mrow>
  <msubsup>
    <mo> &int; </mo>
    <mn> 0 </mn>
    <mn> 1 </mn>
  </msubsup>
  <mrow>
    <mrow>
      <mi> f </mi>
      <mo> &ApplyFunction; </mo>
      <mrow>
        <mo> ( </mo>
        <mi> x </mi>
        <mo> ) </mo>
      </mrow>
    </mrow>
    <mo> &InvisibleTimes; </mo>
    <mrow>
      <mo> &DifferentialD; </mo>
      <mi> x </mi>
    </mrow>
  </mrow>
</mrow>

と、書いている。


長所と短所

MathML で Website に記述された数式は文字として認識される。したがって、数式を画像として認識させる場合より 編集しやすい。ただ、独自の文法を持つため,数式をMathML で書いたり、MathML で書かれた数式を解釈するのは簡単ではない。また、 MathML を使って書かれた数式を表示できるかどうかはどのブラウザ*を使っているかによる。場合によっては読者が自分でブラウザーの設定をしなければならない。


インストール

Ubuntu11.04 以降で FireFox を使っているなら以下のフォントをインストールするだけで MathML を使える。
 xfonts-mathml
 ttf-lyx
 otf-stix
Ubuntu11.04 より前のブラウザを使っている場合は MathML が参考になる。また,
FireFox 以外のブラウザを使っている場合は Mathematical_Markup_Language が参考になる。


使い方

もっとも簡単な使い方は Website や Blog で書きたい数式を

 <math xmlns:m="http://www.w3.org/1998/Math/MathML" >

  数式

 </math>

として書いていく。上の例で言うと

 <math xmlns="http://www.w3.org/1998/Math/MathML" >

  <mrow>
   <msubsup>
    <mo> &int; </mo>
    <mn> 0 </mn>
    <mn> 1 </mn>
   </msubsup>
   <mrow>
    <mrow>
     <mi> f </mi>
     <mo> &ApplyFunction; </mo>
     <mrow>
      <mo> ( </mo>
      <mi> x </mi>
      <mo> ) </mo>
     </mrow>
    </mrow>
    <mo> &InvisibleTimes; </mo>
    <mrow>
     <mo> &DifferentialD; </mo>
     <mi> x </mi>
    </mrow>
   </mrow>
  </mrow>

  </math>

となる。
詳しい使い方については
 Mathematical Markup Language (MathML) Version 2.0 (Second Edition)
にでている。書き方の例も豊富でいい。 
日本語では MathMLによる数式表現が参考になる。


マークアップ言語とはコンピューター言語の一つ。この言語は文章の構造や構成を記述する言語で、文章と共に書かれる。XMLとはマークアップ言語の一つで文章の構造を階層的に記述していく。 (参考:5,6,7)
World wide web (単に Web または WWW)とはインターネットを通して閲覧可能な電子文書のためのシステムである。
これらの電子文書はHTTP(インターネットを通して電子文書を転送するための規則またはルール)にしたがって転送される。 
World Wide Web を利用するにはブラウザー(電子文書を転送してモニターに映し出すためのソフトウェア)が必要である。
(参考:8、9)



参考

 1.  http://ja.wikipedia.org/wiki/MathML

 2. http://www.w3.org/Math/

 3. http://washitake.com/MathML/ver2/

 4. http://www.mozilla.org/projects/mathml/start.html

 5. http://ja.wikipedia.org/wiki/マークアップ言語 

 6. http://de.wikipedia.org/wiki/Extensible_Markup_Language

 7. http://ja.wikipedia.org/wiki/Extensible_Markup_Language

 8. http://de.wikipedia.org/wiki/World_Wide_Web

 9. http://de.wikipedia.org/wiki/HTTP

2013/01/10

Ubuntu  Blog や Website で数式を表現



Tex で書いた数式を Website,Blog へ

LibreOffice write で(定)積分記号を書く方法について調べているときに、Website に数式を書く方法があることを知った。

HTML形式の Website に直接数式を書こうとすると、簡単な式なら

ax+bx+c=0

となる。これならいいが、少し複雑になると,


f(x)dx

という感じになる。ここでは下端の a がインテグラル記号から離れすぎている。さらに複雑になって、例えば二次方程式の解の公式のように根号の中に式が入るような表現はできない。

しかしながら、 HTML -> Tex または HTML <- Tex なら変換ソフトがあったので、数式だけでなくファイル全体を Tex で作ってから変換すれば Website に表現したい数式を自由に表せた。

今回知ったのは,数式の部分だけを Tex で書いた数式を Website に書き込むことが出来ることだ。それならHTML形式である Blog にも Tex で書いた数式を書き込めるはずだ。今日はその方法と、Tex を使わずに数式を表現する方法をいくつか紹介したいと思う。



Tex を使わずに数式を表現する方法

 MathML

  Website, Blog 等で数式を記述するための言語
  例えば

a b f ( x ) d x

Tex を使って数式を画像として表現する方法

 mimeTex

  Tex で書かれた数式を画像に変換するソフトウェア
  例えば



 CODECOGSというサイトの利用

  このサイトにはTeXのコードを使って数式の画像を表示する機能がある。
  例えば



 Google Chart Tools API

  各種グラフを描画するためのソフトウェアの集まり。その中に数式表示機能が含まれている。
  例えば



 formula というサイトの利用

  CODECOGSと同様にTeXのコードを使って数式の画像を表示するAPI
  例えば




数式を表すコマンドを変換して表す方法

 jsMath

  JavaScript ライブラリの一つで、Tex で書かれた数式を Website や Blog で記述するための
  ソースコード


 Mathjax

  JavaScript ライブラリの一つで、 Tex、または MathML などで書かれた数式を Website や
  Blog 等で
記述するためのソースコード
  どのブラウザを使っても同様な表現ができるように工夫されている。
  例えば
\[\int_{a}^{b} f(x) dx
\]


表現の正確さと利用のしやすさについて

今回紹介した7通り

 MathML  mimeTex  CODECOGS  "Google Chart Tools API"  formula  jsMath  Mathjax 

のうち、出力の出来上がりを基準にすると

MathML  CODECOGS  formula  jsMath  Mathjax 

 (mimeTex と "Google Chart Tools API" では加工が必要な場合あり)

閲覧される方々が特に準備がいらないのは

 mimeTex  CODECOGS  "Google Chart Tools API"  formula  jsMath  Mathjax 
  (MathML を Windows系の標準であるインターネットエキスプローラーを使用している場合にはプラグインの設定が必要。)

Website や Blog を書く側も設定の必要がないのは

 MathML  mimeTex  CODECOGS  "Google Chart Tools API"  formula

 ブラウザの違いによる影響を受けないのは

 Mathjax



まとめ

出力の質と手軽さで選ぶなら

 MathML  CODECOGS  formula

出力の質と安定性(正確さ)で選ぶなら
 
 Mathjax

といったところか。

mimeTex と jaMath, Mathjax はサーバーにインストールして利用する。ただし、Mathjax の場合は公式サイトのサーバーにインストールされている Mathjax を利用出来る。したがって、Mathjax はサーバーを運用していない人にも利用出来る

2013/01/03

Ubuntu  組版ソフト-Tex

数式エディターとしての Tex と LaTex 

前回はLibreOffice Writer で LaTex のコマンドを使って数式を文字や記号として正確に表現できる事について書いた。同じような事が OpenOffice でも可能だ。また、Webseite や Blog でも数式を文字や記号として正確に表現できる。

それまではどうしても LibreOffice などで数式を正確に表現したければ画像として埋め込んで文章のように見せかけていたから、数式の扱いが非常に楽になった。では一体 Tex や LaTex とはどんなソフトウェアなんだろうか。


Tex, LaTex とは?

Tex (テックまたはテヒと読む。)とは1977年にDonald Knuth氏が開発した組版ソフトウェアである。 Tex を使って書かれたテキストは、本来書きたい文章と文章の構造を示す命令文(コマンド)が混在している。これが組版結果になる。この組版結果(テキストファイル)をDVI形式*のファイルに出力することによって文書が出来上がる。また、Tex では新しいコマンドを定義することも出来る。そして複数のコマンドを集めてパッケージとしてまとめて使用することも出来る。(参考:1)

この機能を使って論文やレポートを書きやすくするためのパッケージを Tex に組み込んで機能を拡張したのが LaTex (ラテックまたはラテヒと読む。)である。 LatTexは1980年代初頭にLeslie Lamportによって開発された。 (参考:2)

DVI形式:pdf, txt, odt などのようなファイルフォーマットの一つで、文書のレイアウトを画像形式・表示デバイス・プリンタにまったく依存しない形で記録している。内容はバイナリーデータであるため、それを読むには別途DVIビューアと総称されるプログラムが必要になる。DVIビューアにはYAP, xdvi, windvi, Evince, KDVI, Okular, dviout, dviwin, DView などがある。(参考:7、8)

Tex(LaTex も含む) の組版作成の自由度、作成した組版の完成度は共に高く、商用としても通用する。現在では理工系の出版社での組版、理工系の論文作成、研究誌への投稿フォーマットとして使用されている。(参考:2、3)


Tex を使うなら Tex Live

Tex は単体だけではファイルを生成できない。上記のとおり,Tex は組版に特化したソフトウェアであるから,Tex を使って書いた文章を作成したり,印刷させるにはまた別のソフトウェアが必要になる。

そこで、Tex を使ってファイルを作るのに必要なソフトウェアをパックのように一つにまとめた Tex-ディストゥリビュージョンと呼ばれるものがいくつかある。そのようなTex-ディストゥリビュージョンの一つが Tex Live で、Tex と関係するプログラムやライブラリ,フォントなどを含んだ大規模な Tex-System として機能する。

多くの Linux系OSでは Tex Live を Tex のための標準パッケージとして採用している。Ubuntu もそのような Linux系OSの一つである。(参照:4、5、6)


Tex Live のインストール

Ubuntu 12.04 の場合

Ubuntu 12.04 でインストールされる Tex Live のバージョンではUTF-8 のファイルを扱えない。
この問題を解決しながら Tex Live をインストールする方法は tlptexlive for TeX Live 2012 に詳しく書かれている。

Ubuntu 12.10 の場合

パッケージマネージャ、端末またはソフトウェアセンターなどから2つのパッケージ
 
 texlive-lang-cjk
 xdvik-ja 

をインストールする。端末からインストールする場合は

 $ sudo apt-get install texlive-lang-cjk
 $ sudo apt-get install xdvik-ja 

これでインストールは終わり。日本語対応も問題ない。(参考:9)



Tex の使い方

以下の4行が書かれた文書を作成して hello という名前で保存するとしよう。

 こんにちは
 Hello
 Hallo
 Bonjour

LibreOffice Writer を使えば、上の文章を打ち込んで hello.odt という名前で保存すればよい。テキストエディターを使えば同様に上の文章を打ち込んで hello.txt という名前で保存すればよい。

これを Tex を使って上の4行が書かれた文書を作成して hello という名前で保存するには

 1. テキストエディターなどを使って以下のように打ち込んで hello.tex という名前で保存する。

  \documentclass{jarticle}
  \begin{document}

こんにちは
  Hello
  Hallo
  Bonjour
  \end{document}
 
 2. 端末を起動して hello.tex を保存してあるフォルダーに移動して

   $ platex hello

  と($マーク以降を)入力する。これでエラーがでなければ hello.dvi というファイルが出来る。中身は

  こんにちは
  Hello
  Hallo
  Bonjour


  となっているはず。 このファイルは Tex をインストールしていないと読めないので,  

 3. 続いて端末から

   $ dvipdfmx hello

  と($マーク以降を)入力する。これで hello.pdf というファイルが出来る。中身は同じく

  こんにちは
  Hello
  Hallo
  Bonjour


  となっているはず。(参考:11Tex入門/最初の例

この様に Tex を使って文書を書こうとすると、 LibreOffice Writer や、テキストエディターを使って書くより手間がかかる。しかし、

 - 文書形式や図表を取り込んだレイアウトをを自在に変化させられる。
 - 長い文書の校正がしやすい。
 - 数式も自在に記述出来る。

というメリットがある。

詳しい説明やエラー処理などについては Tex入門/最初の例 が参考になる。

一通り勉強するなら Tex入門LaTex などが参考になる。 また、Tex入門は TexWiki の一部で、この TexWiki には Tex に関する膨大な資料がある。

参考

1. http://ja.wikipedia.org/wiki/TeX

2. http://ja.wikipedia.org/wiki/LaTeX

3. http://de.wikipedia.org/wiki/TeX

4. http://ja.wikipedia.org/wiki/TeX_Live

5. http://en.wikipedia.org/wiki/TeX_Live

6. http://de.wikipedia.org/wiki/TeX_Live

7. http://ja.wikipedia.org/wiki/DVI_(ファイルフォーマット)

8. http://en.wikipedia.org/wiki/Device_independent_file_format

9. http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?TeX%20Live#r64bfbe1

10. Tex入門

11. pLaTex始めの一歩(2012)

12. LaTex

13. TeXを使って数式をきれいに書こう

Ubuntu  Libreofficeで正確な数式を表現

より綺麗に数式を書ける?

先日,Libreoffice Math を使って積分記号を記述する方法についての記事を書いた。その記事を書いている最中に、TexMaths というソフトウェアを使うと Libreoffice で数式を正確に表現出来るらしい事を知った。今日はそのことについて書こうと思う。


Libreoffice と Tex

Libreoffice Math を使うと多くの数式が正確に書ける。しかし,まだ十分でない。例えば

  - 数式内の記号の大きさを変えられない。
  - ⊄,⊊ などの記号が ⊂,⊆ より小さくなってしまう。
  - 定積分記号の下端がインテグラル記号から離れている。

などの問題がある。

その点 LaTex というソフトウェアを使えば数式を自由に表現できる。 数式だけでなく、文書整形も商業品質と同等にできる。(参考:1)しかし、

  - 一般のユーザーが英語以外の言語を利用出来るように LaTex を インストールするのは    容易でない。
  - 小さい文書を作成するにも文書整形のために多くのコマンドを用いる必要がある。
  - LaTex で書いた文書(ファイル)は Libreoffice などの一般的なオフィスソフトでは開けない。

などの欠点がある。


TexMaths で数式を

数式を含んだ小さい文書、例えば数学のプリントとか,技術系のお知らせなどを Libreoffice write で問題なく書ければ便利だ。これを実現してくれるのが TexMaths だ。これを使うと全ての数学記号を LaTex のコマンドを使って Libreoffice write で正確に表現できるということだ。 

TexMaths は、OOoLatex から派生した LibreOffice のための LaTeX数式エディタだ。これは LibreOffice の拡張機能として LatTex のコマンドで書かれた数式からその画像を生成し、直接文書ファイルに書き込み、編集することが出来る。

また、TexMaths は Window系や、Linux系(Linux distribution)など、主要なOSのもとで動作する。 (参考:2)

LibreOffice の拡張機能として TexMaths をインストールしておけば多くの人にとって数式を含んだ文書を書く場合の強力な手段となる。


TexMaths のインストール

 - Tex Live をインストール。  (sudo apt-get install texlive)
 - dvipng をインストール。 (sudo apt-get install dvipng) 
 - TexMaths-0.36.oxt をダウンロードする。(LibreOffice 3.3.3 または、それ以降の場合)

 - LibreOffice Writer を開いて、ツール -> 拡張機能マネージャー をクリックする。
 - 出てきたウィンドウの下のほうの”追加”をクリックする。
 - TexMaths-0.36.oxt を選択して”開く”をクリック。
 - インストールが終了したら LibreOffice Writerを再起動する。
 - Texmaths をインストールしたのち,LibreOffice Writer を起動すると、ツールバーに TexMaths の
   アイコンが現れる。

  - 詳しくは Installation on Linux を参照。


TexMaths の使い方

 - LibreOffice Writer のツールバーの TexMaths のアイコンがをクリックする。
 - TexMaths の入力ウィンドウが現れるので,テキストボックス内に Tex のコマンドを使って数式を書く。
 - 数式を書き終わったら、ウィンドウ右下の”LaTex”をクリックする。

 - 詳しくは Docs を参照。


備考

TexMaths では、数式の画像を生成するのに Tex 関連のソフトウェアを使っている。そのために Windows では MikTex を、Linux では Tex Live をあらかじめインストールしておく必要があるということらしい。(参考:3)

画像を生成するためだけなら,必要なソフトウェアだけをインストールしたいところだ。

しかし、Ubuntu 12.04 の Tex Live ではUTF-8 のファイルを処理できないので、Ubuntu 12.04 を使っているユーザーにはいい知らせだと思う。(参考:4)


参考

 1. http://ja.wikipedia.org/wiki/TeX 

 2. http://roland65.free.fr/texmaths/index.html

 3. http://roland65.free.fr/texmaths/install.html

 4. https://forums.ubuntulinux.jp/viewtopic.php?id=14547

2013/01/02

Ubuntu  端末について

端末 (Terminal) について

かつてはコンピューターは大型で非常に高価だった。そこでコンピューターに処理させたい内容をまず紙テープやパンチカードに記述しておいて、一気にまたは分散したりしてコンピューターに順次処理させていた。(これをバッチ処理という。)
その後,1台のコンピューターを複数のユーザー (コンピューターを使っている人) で共有できるシステムが開発されて,複数の入出力装置が1台のコンピューターに接続されるようになった。この時の入出力を表示する装置を端末 (Terminal) と呼んでいた。つまり、端末とは "コンピューターへの入力とコンピューターからの出力を表示する装置" である。この時代はキーボード、紙テープまたはパンチカードを通してコマンド (ユーザーの要求を命令としてコンピューターに伝える入力) やプログラム、データをコンピューターへ入力 (CLI) していた。

やがて "PC (Personal Computer)" が開発されて普及してくるころには、GUI が開発された。すると、GUI を通して机上の作業をモニター上に再現させ、ペンの代わりにキーボードから文字を入力したり、マウスを使ってモニターに現れるシンボル (アイコン) をクリックして入力することも出来るようになる。これを可能にしたのがデスクトップ環境 (desktop environment) と呼ばれるソフトウェアである。
  
デスクトップ環境はコンピューターを視覚的に操作できる半面、コマンドによる入力が難しくなった。この難点をおぎなったのが "端末エミュレーター" と呼ばれるソフトウェアで、これは ”GUI上から端末のようにコマンドによって入出力来るようにしたソフトウェア” である。単に "端末" とも呼ばれる。Linux系ではこの端末のことをターミナルまたはコンソール、 Windows系ではコマンドプロンプトと呼ばれている。

端末とは

 

まとめると、端末とはハードウェアとして使われる場合と,ソフトウェアとして使われる場合がある。 ハードウェアとしての端末とはユーザーがからコンピューターへの入力とコンピューターからの出力を表示する装置である。ソフトウェアとしての端末とはハードウェアとしての端末の機能を有するソフトウェアである

 

端末の起動

 

ショートカットキーで起動する場合

 - キーボードから” Ctrl + Alt + T ”と入力する

デスクトップから起動する場合

Ubuntu 11.04 以降(標準デスクトップインターフェイスがUnity)の場合は以下の4通り

 - Dash(画面左上のubuntuのロゴマーク)をクリック -> 検索に”terminal”と入力する
                                                                                  -> 端末をクリック


 - Dashをクリック -> 中央下にある5つのアイコンのうち、左から2番目をクリック
                           -> インストール済みをクリック
                           -> 端末をクリック

 - Dashをクリック -> 中央下にある5つのアイコンのうち、左から2番目をクリック
                           -> 右上の絞り込みをクリック
                           -> アクセサリーをクリック
                           -> インストール済みをクリック
                           -> 端末をクリック

 なお、Dash を使う場合、2回目からは

 - Dashをクリック -> 最近使ったアプリケーションをクリック
                              -> 端末をクリック
 でも端末を開けます。

Ubuntu 11.04 以前の場合は

 - アプリケーション -> アクセサリー -> 端末をクリック

Xubuntu の場合は

 - アプリケーションメニュー -> システム -> 端末をクリック

Lubuntu の場合は

 - メニュー -> アクセサリー -> 端末をクリック

参考

 

http://ja.wikipedia.org/wiki/端末

http://de.wikipedia.org/wiki/Terminal_(Computer)

http://ja.wikipedia.org/wiki/端末エミュレータ

http://ja.wikipedia.org/wiki/バッチ処理

http://ja.wikipedia.org/wiki/タイムシェアリング

https://help.ubuntu.com/community/UsingTheTerminal

https://wiki.ubuntulinux.jp/UbuntuTips/Desktop/HowToUseUnity