emacsのビープ音

xemacs21のビープ音を消した。
emacs21にいつ移行しようかと思いつつ、xemacs21を使い続けているが、エラーのときにビープ音がうるさいので消してみた。設定ファイルに

(setq visible-bell t)

を追加すると、ブザーの代わりに画面が反転するようになる。でも、意外に目にうるさい感じがする。反転もしなくする方法もあるとは思うけど、どうするのかな。

Read more...

To make pdf using Windows

Windowsでpdfをつくるのは面倒なようだ。
Acrobatを入れれば良いのだろうが有料だし、と思って調べてみたら、方法を見付けた。まず、AdobePSプリンタドライバというのがあるので、それをdownloadして、インストールする。その際、ポートとしては、ローカルのFILEを選択する。すると、印刷のところからPSを作れるようになるので、ps2pdfで変換すれば良い。Acrobatで変換したときと、フォントが違うようだが、まあ大きな問題ではないだろう。 標準でPSも作れないWindowsもどうかと思いますが。まあ、OpenOfficeを使うか、TeXを使えば良い話なので、あまり利用価値はない気がしますが。

Read more...

debianでスキャナー

Linuxでも簡単にスキャナーが使えるようになってきた。
まずはsaneをインストール。

sudo aptitude install sane sane-utils

使ったのは、canonのN1220Uというスキャナーだが、これをUSBにつないで、

sane-find-scanner
sudo scanimage -L

として、うまく認識していることを確認したのち、

sudo scanimage |convert - temp.png

として、データを取り込む。しかし、デフォルトの設定をかえるオプションがわからなかったので、

sudo xscanimage

としたら、windowsなんかでよくあるような感じで簡単に指定できた。あとはimagemagickで変換でもなんでもすれば良いだろう。

Read more...

beep

タブ補完のときのビープ音がうるさかったので、消した。
これまで、あまり気にしていなかったが、他の人に迷惑かなと思って、ターミナルのビープ音を消してみた。/etc/inputrcのset bell-style noneの部分のコメントアウトしてあるのを、#を消して有効にすれば終わりです。 他のアプリケーションに関しては、どうするのかな。

Read more...

ROXの設定

エディターの設定
acroreadを使っていると、defaultのeditorがなぜかacroreadに設定されてしまった。以前もそんなことがあったので、何か悪さをしているのだろう。起動するアプリケーションは、 .config/rox.sourceforge.net/MIME-types/ に設定ファイルがある。このtext_plainが書き換えられているようだ。/usr/share/rox/Choices/MIME-types/text を参考に、

#! /bin/sh
exec x-terminal-emulator -e sensible-editor "$@"

としたら、無事nanoが立ち上がるようになった。

Read more...

latexで書類作成

提出書類をplatexで準備
書類のほとんどがwordやexcelで出すように強要される。せめてopenofficeを使って欲しいのだが、世の中はそう簡単には変わらないようである。 Linuxユーザーとしては、これをどのように処理するかが問題なのだが、これまでは最後だけwindowsマシンで処理して提出するという手段でごまかしてきたが、今回はlatexで処理してみた。 まず、windowsマシンで書類をpdfに変換してもらう。これよりあとはすべてlinuxマシンで行うことができる。そして、acroreadでページ毎のpsを作る。このとき、printerの設定をcustomにしておかないとあとでエラーが出た。ps2epsでepsに変換すれば、それらをwatermarkとして背景にして文字を書き込んでいけば良い。 注意しなければいけないのは、watermarkとして文字を書き込んだ場合には、ページが出力されないので、phantomをつかって、何かの文字があるようにしておかないといけない点です。連続したページの場合には、本文として文字を書き込んで、watermarkはthiswatermarkとwatermarkでページの背景を作りわけると良い。

2009.10.12追記 watermark.styはdebian lennyではtexlive-latex-extraに入っているらしい。

Read more...

Rのバグ取り

Rのエラーメッセージはわかりづらい。
せめて、行番号くらい出して欲しい。warningに関しても同じことが言える。一応オブジェクト指向なのだが、隠蔽があんまりできない感じだし、やはり長いプログラムを組むにはあまり向かない気がする。長らく発見されずにどこかでエラーが起きて気づかなかったバグが、今日ようやく取れた。まあ、慣れもあるんだろうけど。あまりオブジェクト指向っぽく書けていないのも、バグができる要因なのだろう。グラフを簡単に書けるようにするプログラムを作っていたのだが、書くよりも簡単にコマンドを覚えられる気がする。

Read more...

R-guiのtkbind

ふたつのブラケット
Rのtcltkでbindを使ってみた。tkbindを使えば良いのはすぐに分かったが、

tkbind(widget,"<<ListboxSelect>>",function(){})

でなんとか動いた。ふたつ括弧が必要なのはなぜだろう。ruby/tkのときは一つだったのに。まあ、tcl/tkを理解しないで使っているので、気にしないことにしよう。

Read more...

Rの正規表現

Rの正規表現は面倒だ。
perlやrubyでは、スラッシュでquoteするので、バックスラッシュの取扱いが簡単だが、Rでは、“や’でquoteするので、バックスラッシュを二個重ねないといけないので、厄介だ。 rubyだと、

r.gsub!(/\^\{([^\}]*)\}/){"\",phantom()\^{#{$1} phantom()},\""}

と書けば良いところを、

r<-gsub('\\^\\{([^\\}]*)\\}',"\",phantom()^{\\1 phantom()},\"",r)

というように長くなってしまう。ちなみに、phantom()はV4+とかのときに、エラーがでないようにするためにつけています。

Read more...

Rのプログラム

Rのプログラムは思ったより組みやすい。
オブジェクト指向だし、変数はローカルだし、慣れればなんとかなりそうある。しかし、癖はある。rubyに慣れていると、括弧とかを省略してしまって、すぐにエラーがでる。 今日は、どんなデータフレームが読み込まれているかを調べる関数を作るのに苦労した。データフレームもローカルなんですね。また、is.data.frameは名前の文字列を入れると、文字列なので、常にFALSEを返してしまうので、evalでごまかした。

data_frame <- function(){
  l<-ls(env=.GlobalEnv)
  r<-c()
  for(i in l){
     if(eval(parse(text=sprintf("is.data.frame(%s)",i)))){r<-c(r,i)}
  }
  return(r)
}
Read more...