2009年10月31日土曜日

Ubuntu: gnome-terminal から mlterm に切り替える

gnome-terminal をやめて、mlterm を使うことにしました。
あと、mlterm のフォント設定を M+ (エムプラス) + IPA にします。

■参考リンク:
http://www10.atwiki.jp/shirayuu/pages/16.html#id_2a3aecde
http://ubulog.blogspot.com/2009/02/ubuntumlterm.html

1. apt-get で mlterm をインストールします。

# apt-get install mlterm mlterm-tools mlterm-im-scim

2. apt-get で M+ フォントをインストールします (これはいらないか。一応入れておく)。

# apt-get install xfonts-mplus
$ sudo xset fp rehash

3. M+ + IPA 合成フォントをダウンロードします (フリー)。

下記から、フォントをダウンロードします。
http://mix-mplus-ipa.sourceforge.jp/download.html

4. M+ + IPA 合成フォントをインストールします。

# mkdir -p /usr/share/fonts/truetype/mplusipa
# tar jxvf mixfont-mplus-ipa-TrueType-20060520p1.tar.bz2
# cd mixfont-mplus-ipa-TrueType-20060520p1/opfc-ModuleHP-1.1.1_withIPAFonts_and_Mplus/fonts
# cp *.ttf /usr/share/fonts/truetype/mplusipa
  (ttf ファイルをコピー)

# cd /usr/share/fonts/truetype/mplusipa/
# fc-cache -v  *.ttf
  (フォントキャッシュに登録)
# mkfontdir
  (fontdir を作成)
# xset fp rehash

5. mlterm の設定を行います。

mlterml の設定ファイルは ~/.mlterm ディレクトリにあります。

まずは、基本設定。背景=黒、文字=白 の設定です。

$ vi ~/.mlterm/main

fontsize = 12
input_method = scim
bg_color = black
tabsize = 4
scrollbar_mode = right
fg_color = white
line_space = 0
brightness = 100
gamma = 100
not_use_unicode_font = true
use_anti_alias = true

フォント設定。

$ vi ~/.mlterm/aafont

ISO8859_1=M+1VM+IPAG circle-iso8859-1:90;
ISO8859_1=M+1VM+IPAG circle-iso8859-1:100;
JISX0201_ROMAN=M+1VM+IPAG circle-iso10646-1:100;
JISX0201_KATA=M+1VM+IPAG circle-iso10646-1:100;
JISX0208_1983=M+1VM+IPAG circle-iso10646-1:100;
JISX0208_1990=M+1VM+IPAG circle-iso10646-1:100;
ISO10646_UCS2_1_BIWIDYH=M+1VM+IPAG circle-iso10646-1:100;
ISO10646_UCS2_1=M+1VM+IPAG circle-iso10646-1:100;
ISO10646_UCS4_1=M+1VM+IPAG circle-iso10646-1:100;
ISO10646_UCS4_1_BIWIDTH=M+1VM+IPAG circle-iso10646-1:100;

色設定。

$ vi ~/.mlterm/color

black=#000000
red=#cc0000
green=#4e9a06
yellow=#c4a000
blue=#3465a4
magenta=#75507b
cyan=#06989a
white=#ffffff
hl_black=#555753
hl_red=#ef2929
hl_green=#8ae234
hl_yellow=#fce94f
hl_blue=#729fcf
hl_magenta=#ad7fa8
hl_cyan=#34e2e2
hl_white=#eeeeec

● mlterm, mplus, M+, IPA, gnome-terminal, ターミナル

2009年10月28日水曜日

StructureT-Maker でフォルダリストを作る (Windows)

Windows でフォルダのツリー構造をテキストファイルや Excel で保存したいときがあります。
そんなときに使うのがこれです。

StructureT-Maker

ツリー構造をリスト化したいフォルダをドラッグするだけ。
他にも同様の機能を持ったソフトがあるのですが、今のところこれが一番良さそう。

Linux でやるときは、tree コマンドを使います。

● Structure T-Maker, ツリー, tree, Windows, Excel

2009年10月25日日曜日

「マスターしておきたい 技術英語の基本」

私は英語が苦手なのですが、海外の会社の人とメールとかでやりとりしないといけないことがたまにあります。
大抵の場合、「エキサイト 翻訳」 や、「アルクの 英辞郎 on the WEB」 を駆使することになります。
でも、調べているうちに、いろいろな表現があって、どの表現を使う "べき" なのか迷います。
(変な英語書いてるんだろうなぁ)
で、それを解決してくれそうな本がこれ。
「マスターしておきたい 技術英語の基本」
表紙は地味なんですが、内容はすばらしいです。今、少しずつ読んでいるところです。
技術英語で間違えやすい単語・表現についてまとめられています。
例文も情報・電子分野のものが多いので、参考になりそう。
厚さ 1cm の割に、お値段高め 2,400 円ですが、読んで損はないと思います。

2009年10月24日土曜日

Microsoft Word の TIPS

Word を使うときの TIPS をメモ。
図形描画については、Excel, PowerPoint でも使えると思います。

1. 改ページしたいときは、「Ctrl + Enter」で。

ま、これは大抵の人が知っていると思います。
軽くジャブ。

2. 空白を表示しない表示形式を表示するようにするには、ページの境界をダブルクリック。

Word 2007 では、ダブルクリックでしたが、それより前のバージョンではやり方が違うかもしれません。
ページの境界にマウスを持って行くと、やり方が出てくるはずです。
他の人が作った Word ファイルを開いたときに、この表示になることがあるんですよね。
解除の方法を知ったのは、昨日でした。


3. 図形描画のグリッドを小さくして、図形を描きやすくする。

いつも、Word で図を書くときに、グリッドが大きすぎて、Excel や PowerPoint のようにきれいに
描きにくいなぁと思っていたら、設定の変更が可能でした。
これで、描画位置の微調整が可能になります。
「描画ツール」→「書式」→「配置」→「グリッドの設定」を選択し、
設定値を小さくしてやります。



4. 図形の縦横をきれいに揃えたい場合は、「Shift」を押す。

線をまっすぐ縦横に引きたい場合は、「Shift」を押すと、縦横 (ななめ) にマウスの移動が制限されます。
あと、同じ図形をコピーするときに、対象図形をマウスで選択して「Ctrl」を押して、
さらに「Shift」を押すとこれも縦横に移動が制限されて、レイアウトしやすくなります。
血液型が A 型の人はどうぞ。

「Shift」を押す前は、こんな感じでどこでも移動できます。


上の状態から、「Shift」を押すと、図形の位置が揃います (今回の例では縦に揃う)。


● Word, ページ表示, ページ毎, グリッド, 大きい, 小さく, 図形, 揃えたい

2009年10月15日木曜日

Ubuntu /bin/sh -> /bin/dash → /bin/bash 切り替え

Ubuntu の /bin/sh は、bash のシンボリックリンクではなく、dash (Debian Almquist Shell)になっています。
dash は、ほぼ、bourne shell に近い動きをします。
ちなみに、Fedora は bash のシンボリックリンクです。

世の中には、シェルスクリプトの先頭に #!/bin/sh と書いておきながら、
bash でしか動作しないコードを含んでいるものもあります。

正しくは、そのシェルスクリプトで #!/bin/bash と書き換えるべきなのですが、
それも難しい場合があります。

# 入手したソースコードが、そうなっていたとか (あるある)。

そんなときは、以下のコマンドで dash から bash に切り替えます。

# dpkg-reconfigure dash

動くはずのシェルスクリプトが、動かない場合は、ここを疑ってみると良いです。

● /bin/sh, bash, dash, dpkg-reconfigure, 切り替え

2009年10月14日水曜日

Copy Path Shell Extension (フリー)

会社で、共有ファイルサーバのファイルの場所をメールに貼り付けることが、良くあります。
そんなとき、便利な Windows ソフト。

Copy Path Shell Extension

lifehacker.jp で紹介されていました。こいつは便利。
ファイルを選択して右クリックすると、「Copy Path」というメニューが追加されます。
コピーしたいパス (フォルダ名 or ファイル名) を選択して、「貼り付け」すれば OK。
エクスプローラにアドレスバーを表示しとけばいいじゃん。という意見もありますが、
ファイルサーバのフォルダをネットワークドライブに割り当てている場合でも、
ホスト名をたどって表示してくれるので、便利だったりします。
常用フリーソフトに採用です。

● Copy Path Shell Extension, copy, path, windows, free, paste

2009年10月11日日曜日

UNetbootin で USB メモリインストーラーを作る

窓の杜で紹介されていましたが、UNetbootin を使うと、各種 OS の USB メモリインストーラーが、
簡単に作成できるそうです。
まだ使ったこと無いですが、いつか使うことがあると思うのでメモ。

Windows, Linux に対応しているようです。
ディストリビューションと、バージョンを指定して、あとは USB メモリのドライブを指定すれば OK。


リンク:
http://unetbootin.sourceforge.net/

● UNetbootin, OS, Linux, インストーラ, installer, USB, メモリ, memory, 起動ディスク

2009年10月7日水曜日

distcc で並列分散コンパイル

distcc を使うと、複数のマシンで並列分散コンパイルを行うことができるようになり、
処理時間を短縮することができます。
カーネルのビルドや、アプリケーションのビルドに有効です。
Ubuntu での設定をまとめます。

1. apt-get で、distcc をインストールします。

# apt-get install distcc

2. /etc/default/distcc を編集します。

# vi /etc/default/distcc

(編集するのは、下記 3 箇所)

STARTDISTCC="true"

ALLOWEDNETS="192.168.0.0/24"   → アクセスを許可するネットワークを指定

LISTENER="192.168.0.10"        → アクセスを許可する NIC の IP アドレスを指定

3. distcc を起動します。

apt-get でインストールした時点で、自動起動するようにはなっています。

# /etc/init.d/distcc start

4. ビルドを実行する PC (CPU を借りる側) で、環境変数 DISTCC_HOSTS を設定します。

~/.bashrc にでも書いておくと良いです。

$ export DISTCC_HOSTS='localhost 192.168.0.20'
  (localhost と分散先を指定します)

■ 使用例 1: make を実行する場合

$ make -j 10 CC=distcc CXX=distcc

■ 使用例 2: configure を実行する場合

$ CC=distcc CXX=distcc ./configrue
$ make -j 10

■ 使用例 3: kernel をビルドする場合

# MAKEFLAGS="CC=distcc CXX=distcc" CONCURRENCY_LEVEL=10 make-kpkg --initrd kernel_image kernel_headers

ちなみに、CPU を貸す側 PC の処理優先度は、nice 値 25 で実行されます。
(つまり、優先度低)

top の実行結果 (抜粋)

24034 distccd   25   5 37460  34m 4732 R   30  1.7   0:00.90 cc1
 7864 root      20   0 40448  15m 6268 S    1  0.8   0:55.04 Xorg
 8496 masao     20   0 20208 8824 7308 S    1  0.4   0:02.25 metacity
24035 distccd   25   5  5920 4084  844 R    1  0.2   0:00.02 as
 8497 masao     20   0 41008  20m  15m S    0  1.0   0:01.72 gnome-panel
 8540 masao     20   0 52772  20m  10m S    0  1.0   0:05.70 gnome-terminal
23650 distccd   25   5  2100  712  372 S    0  0.0   0:00.13 distccd
23671 distccd   25   5  2100  568  372 S    0  0.0   0:00.19 distccd
23807 distccd   25   5  2100  664  372 S    0  0.0   0:00.09 distccd
24046 distccd   25   5 10908 4924 2152 R    0  0.2   0:00.01 cc1
...

■ 2009/10/08 追記

distccmon-text コマンドを使うと、どの PC で何の処理をしているかモニタリングすることができます。

$ distccmon-text 2  (2 は 2 秒ごとに更新)

5858  Blocked                                                            [0]
 5918  Compile     translate.c                                192.168.0.30[0]
 5700  Compile     log.c                                      192.168.0.30[1]
 5772  Compile     entries.c                                  192.168.0.30[2]
 5873  Compile     questions.c                                192.168.0.20[0]
 5879  Compile     merge.c                                    192.168.0.20[0]
 5868  Compile     lock.c                                     192.168.0.20[0]
 5884  Compile     props.c                                       localhost[0]
 5847  Compile     relocate.c                                    localhost[1]

● distcc, 並列, 分散, build, ビルド, compile, コンパイル, distccmon-text