忍者ブログ
Yaleで、遊んで学ぶ日々。

Yaleで、遊んで学ぶ日々。

囲碁、ときどきプログラミング、ところにより経済。
[45]  [46]  [47]  [48]  [49]  [50]  [51]  [52]  [53]  [54]  [55
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

1. Texは標準装備じゃなかった。自分でTexシステムを導入しなかったものだからもとから入っていたんだと勘違いしてしまったが、どうやらLyXインストール時にTeXが入ってきたらしい。

2. Fortranは標準装備じゃなかった。Fortran(gfortranというコンパイラ)も自分でインストールした記憶がなかったからデフォルトかと思ったが、これはRのインストール時に入ってきたものらしい。

3. Synaptic Package Managerのskype使えねー。どうも最新版じゃないらしい。このページにしたがって、skypeのページからLinux版をダウンロード。


MORE TO DO...
  skypeで喋れるようにする。
  wireless修正。


PR
ubuntu移行へ向けて。latexのパッケージをインストールしていこうと思ったのでその覚書。
shell scriptで書くか、pythonで書くかというのは迷い中。別にどっちでも書けそうなのだけど。とりあえずpythonで書いてみる。

まず第1にlatexの構造について。基本的にlatexは「texルート」と呼ばれるディレクトリから始まる大きなツリーでできている。texルートの名前は大抵 "texmf" とか "texmf-local" とか "texmf-texlive" とかそういう名前がついている。とりあえずそれを探すのが第1歩。Windowsにあべのりのインストーラを使ってインストールすると
  C:\tex\share\texmf\

  C:\tex\share\texmf-local\
という2つtexルートができていた。僕の記憶が正しければ、確か『美文書』のインストーラを使った場合は確か
  C:\usr\local\share\texmf\
だったと思う。
今Ubuntu 9.04を探索したところ、
  /usr/share/texmf/
  /usr/share/texmf-texlive/

  /usr/local/share/texmf/
の3つが見つかった。このうちのどれかに適切にファイルを配置してやれば良いわけだ。たぶんこれがデフォルトだと思うのだけど、僕はlyxをインストールしているのでその際にもしかしたら変更があったかもしれない。それはまたOSを入れ直した時にでも調べる。

さて、3つあるうちのどこにパッケージを入れてもよいのだけど、ここはlocalが付いているのがいいと考えた。ここならもとは空っぽなので、自分が今まで何を付け加えてきたかがわかりやすいし、うっかり余計なファイルを削除する危険も少ない。ただ、このディレクトリは管理者権限がないといじれないようになっている。ここはhomeディレクトリの外だからかな(/homeと/usrは並列の関係)。別にsudoからディレクトリをいじっても良いのだが。

もう少し検索をしていたら、/home/<ユーザー名>/ の中にある、".texmf-var" という隠しフォルダが第4のtexルートであることが判明した(ソースは忘れた)。色々試してみたところ、ここにコピーしても問題ないようだったので、ここをいじっていくことに決めた。
texルートさえ決まればやることはWindowsと変わらない。


Windowsではテキストエディタには真魚(まな)を使っていて大分気に入っていた(TexのみWinshellでやっていたけど)のだけど、Ununtuでは動かなかったので他のエディタを探す。ネット上で情報を集めてみたところ、Emacs, Vi, Kate, gedit, Kwriteあたりが主流らしい(参考)。

格好良さそうだったのでEmacsを10分いじってみたが、慣れるのにやたら時間がかかりそうだったので、当面はgeditを使うことにした。タブ表示だし、色も綺麗なのでちょっと真魚(まな)に似ているし。

さて、多くのプログラミング言語ではテキストファイルでコードを書いたあとコンパイルしたり実行したりする作業があるけど、それをターミナルを開かないでエディタ上からできると手間が少なくて楽。そのために、テキストエディタを特定のコマンドを実行するようカスタマイズしておくと便利。geditでは、これは「外部ツール」というプラグインでできるようになる。要するに実行させたいシェルスクリプトを書いて登録しておく、という機能だ。

使い方は、まず「編集」→「設定」→「プラグイン」 から、「外部ツール」にチェックを入れる。そうすると、「ツール」の中に外部ツールというのができるのでそれを選択。新規ボタンを押せば新しいスクリプトを定義することができる。

とりあえずgeditをlatexで使えるようにWinshellで使うようなコマンドを登録しよう。登録するのは、とりあえず次の4つの機能だけ。他はそのうち付け足す。

1. texを回す
2. DVIを表示
3, DVIからPDFを作る
4. PDFを開く

1.
#! /bin/sh
platex $GEDIT_CURRENT_DOCUMENT_PATH


2.
#! /bin/sh
xdvi ${GEDIT_CURRENT_DOCUMENT_PATH%.*}.dvi


3.
#! /bin/sh
dvipdfmx ${GEDIT_CURRENT_DOCUMENT_PATH%.*}

4.
#! /bin/sh
xpdf ${GEDIT_CURRENT_DOCUMENT_PATH%.*}.pdf


* xpdfは事前にインストールしておくのが前提。
Ubuntuへの移行計画のつづき。今まで面倒くさいと思ってやって来なかったけど、日本語でTexを出力できるようにした。

このページがすべて。ありがとう。
【コピペ】
  1. 必要ソフトウェアのインストール
    sudo apt-get install texlive texlive-latex-extra dvipng latex-xft-fonts okumura-clsfiles xdvik-ja dvipsk-ja latex-cjk-japanese latex-cjk-japanese-wadalab jbibtex-bin mendexk xpdf xpdf-japanese gv gs-cjk-resource cmap-adobe-japan1 cmap-adobe-japan2 cmap-adobe-cns1 cmap-adobe-gb1 cmap-adobe-korea1 nkf
  2. フォントの設定
    1. sudo jisftconfig add
    2. /etc/texmf/vfontmap.d/20ptex-jisfonts.mapを以下のように書き換え
      ### For ptex-jisfonts
      @Mincho Roman|Mincho@
      rml-jis JIS-H
      @Gothic SansSerif|Gothic@
      gbm-jis JIS-H
    3. sudo update-vfontmap
  3. 文字エンコーディングの変更
    nkf -e 元texファイル名 > 新texファイル名

最後の3番目の項目が上記ページでは抜け落ちている.texはもともとEUCで書くことを想定しているが,Ubuntuはデフォルト文字エンコー ディングがUTF-8であるため,最後の項目を行なわないと日本語などの英語以外の部分が文字化けしてしまう.毎回,texファイルを作成したらnkfコ マンドを実行することを心がけよう.

2番目の項目は必須ではないが,IPAモナーフォントがフォントとして用いられるようになるため,文字が格段にきれいに印字されるようになる.
【コピペ終】
 


日本語使っているとエンコーディングの問題が本当に頻繁に起こるなぁ。



同じ寮に住んでいる、宇宙物理か何かをやっているアイルランド人がUbuntuのユーザーだった。まだまだ自分は素人だけど、ちょっと親近感。分からないことがあったら彼に聞いてみよう。きっとちょっと照れながら頑張って教えようとしてくれるに違いない。見たところ彼はアメリカへ去年の夏に来るまではほとんどアジア文化との接点がなかったらしく、一生懸命接しようとしてくれているが、なかなか難しさを感じているようだ。一昨日つくった改心の餃子は「ちょっとオニオンがきつい」と言ってあんまり食べてくれなかった。でもオニオンは入っていないので、おそらく生姜かニラの風味のことだと思う。

Ubunutuは本当に良くできているので、ほとんどストレスなく使えているのだけど、やはりいくつか、Windowsの方が楽だと感じる場面がある。
1. wirelessがすぐ切れる。つながらないのでも検知しないのでもなく、一回つながって数分で切れる。理由は分からないし未解決。いずれ取り組んでみよう。それができたらカフェに持っていてLinuxユーザーを気取ってみようと思う。
2. TextTreeが使えない。気に入っているフリーソフトの1つにTextTreeというのがあるのだけど、おそらくlinux上では使えない。使用頻度はかなり高くて、ふと思いついたアイデアをメモしたり、プログラミングの細かいtipsを溜め込んだりしている。これに近い機能を持ったソフトウェアが欲しい。と思って探していたらあった。Gjots2というらしい。
3. MangaMeeyaが使えない。漫画読むのに使っているフリーソフト。これを補完するソフトがほしい。と思ったらこれもあった。Comixというらしい。

Gjots2というのをちょっと使ってみたところ、機能はそっくりだけど、その実現方法は違うみたい。TextTreeでは階層構造をディレクトリ構造に対応させているが、Gjots2はそれを1つのテキストファイルのなか行っているようだ。そういう意味では、AUTLAのようなアウトラインプロセッサに近い。機能は申し分ないので使っていこうと思う。

Comixは完璧だった。機能はMagaMeeyaとほぼ一緒だと思う。

あといくつか思うところはあるけれども、どれも解決可能な問題のような気がする。ということはwirelessの問題さえクリアすれば完全移行もありということか。ちょっとしばらく頑張ってみようかな。Ubuntuの初心者フォーラムにでも書き込んで。

で、以前Latexのパッケージを再インストールするためのバッチファイルを書いたのだけど、これだとOSに依存してしまって2度手間なので、pythonで書き直そうかなと思う。python簡単で使いやすくていい。ネット上の情報量が半端ないのもいい。

先日、研究用に巨大なデータを処理する必要があったのだけど、たぶん数100万行くらいのテキストファイルだと思う。こいつをRで読み込もうとしたら完全にアウトだった。pythonでは、テキストファイルを1行ずつ順番に読んでいくのが基本なので、時間はそれなりにかかっかけどもすんなり処理できた。Rでも同じことができたりするのかなぁ。まぁいいや。当面は必要なデータをCSVファイルに整形しなおすまでをpythonで、その後の解析の部分をRまたはMatlab, Octaveで分担することにしようと思う。

Matlabとかだとforループはどうしても時間を食うので、演算をベクトルや行列の形でなるべくループを使わずに書くのが基本だけど、ある一定のサイズを超えると今度はその膨大なデータを格納することのデメリットの方が大きくなる。話には聞いたことがあったけど、実感したのは初めて。

Calender
12 2025/01 02
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Search in This Blog
Latest Comments
[03/30 川内のばば山田]
[03/30 川内のばば山田]
[08/06 Aterarie]
[07/05 Agazoger]
[07/01 Thomaskina]
Oldest Posts
Latest Trackbacks
フリーエリア

Barcode
Access Analysis
Powerd by NINJAブログ / Designed by SUSH
Copyright © Yaleで、遊んで学ぶ日々。 All Rights Reserved.
忍者ブログ [PR]