2011年1月24日月曜日

davfs2 で drivee に接続する

ネットワークストレージではDropboxが使い勝手がいいのですが、今回 drivee という新サービスがはじまり、無料で3GBも使え、しかも WebDAV でアクセスできちゃうということなので、早速試してみました。

インストール

事前にdriveeのアカウントを取得しておいてください。
sudo apt-get install davfs2

davfs2 のユーグループに自分のアカウントを追加する

sudo gpasswd -a ユーザ名 davfs2

マウントポイントを作成する

mkdir ~/drivee

/etc/davfs2/secrets にIDとパスワードを記述する

パーミッションに注意してくださいね。
書式は、
https://アカウント名.drivee.jp/ ID パスワード

/etc/davfs2/davfs2.conf の設定を変更する

if_match_bug 1
にしておく。

fstab に追記する

https://ユーザ名.drivee.jp/ マウントポイント(フルパス) davfs noauto,users,uid=1000,gid=1000 0 0
uid と gid は自分のアカウントに合わせてください。id コマンドで確認できます。

マウントしてみる

以上設定ができましたら、マウントしてみます。
sudo mount ~/drivee

後はファイルをコピーしたりして試してみてください。

2010年9月11日土曜日

Emacsから校正支援する

 Emacs から 日本語の校正支援をする Emacs lisp を作ってみました。


インストール

 github からダウンロードしてきた yspel.el ~/emacs.d/ などの load-path の通った場所に置いてください。
 git コマンドからなら、
git clone git://github.com/yama-natuki/yspel
で落とせます。
 落としてきたら ~/.emacs
(require 'yspel)
と書いておきます。


使い方

  • 校正したいテキストファイルを開きます。
  • 開いたら M-x yspel としてyspel を起動します。
  • ウィンドウが分割され、校正箇所がリストアップされます。
  • pキーとnキーでリストを上下に移動します。
  • リターンキーで該当箇所にジャンプします。
  • ウィンドウを閉じるときは q キーです。



 Yahoo API を利用して校正支援をおこなっています。
 yahoo API の制限で校正できるファイルサイズは 100KB までです。あまり大きいテキストだとうまくいかないかもしれせん。
 だいたい4000文字ぐらいが安心?
 文書が大きい場合は範囲選択して分割して M-x yspel するようにしてください。


 取りあえず、動くものを作った。多分動くと思う(^_^;)
 原稿や論文などの校正にお役立てください。メールを送信する前とかにもいいですね。

 まーしかしあれですね、Emacsはプログラムだけでなく普通の文章を書くのにも最高の道具ですね。Emacsから広辞苑は引けるわ、Emacsから英辞郎もひけるわ、Emacsから翻訳もできるわ、Emacsからはてなキーワードを調べられるわ、Emacsから原稿枚数も計算できるわ、Emacsから校正支援もできるわ。Emacs最高です。

2010年8月11日水曜日

Emacs でファイルをsudoで開き直す。その2

 前回、root所有のファイルをsudoで自動的に開き直してくれる Emacs lisp の記事を書きました。わりと好評だったようでよかったです。
 今回、rootユーザだけでなく、他のユーザのファイルも同様に開いて編集したいとのリクエストがきたので、修正してみました。以下になります。差し替えて使ってみてください。


(defun file-other-p (filename)
"Return t if file FILENAME created by others."
(if (file-exists-p filename)
(/= (user-real-uid) (nth 2 (file-attributes filename))) t))

(defun file-username (filename)
"Return File Owner."
(if (file-exists-p filename)
(user-full-name (nth 2 (file-attributes filename)))
(user-full-name (nth 2 (file-attributes (file-name-directory filename))))))

(defun th-rename-tramp-buffer ()
(when (file-remote-p (buffer-file-name))
(rename-buffer
(format "%s:%s"
(file-remote-p (buffer-file-name) 'method)
(buffer-name)))))

(add-hook 'find-file-hook
'th-rename-tramp-buffer)

(defadvice find-file (around th-find-file activate)
"Open FILENAME using tramp's sudo method if it's read-only."
(if (and (file-other-p (ad-get-arg 0))
(not (file-writable-p (ad-get-arg 0)))
(y-or-n-p (concat "File "
(ad-get-arg 0) " is "
(if (file-exists-p (ad-get-arg 0)) "read-only." "newer file.")
" Open it as "
(file-username (ad-get-arg 0)) "? ")))
(th-find-file-sudo (ad-get-arg 0))
ad-do-it))

(defun th-find-file-sudo (file)
"Opens FILE with root privileges."
(interactive "F")
(set-buffer (find-file (concat "/sudo:"
(file-username file) "@" (system-name) ":" file))))



 これで他のユーザのファイルでもそのユーザとして開いて編集する事ができます。



2010/08/15:修正


 新規ファイルを開こうとするとエラーになってしまうのを修正した。

2010/08/16:修正


 他ユーザの新規ファイルを開けるようにした。
 再度ダウンしなおして差し替えてください。

2010年6月12日土曜日

ubuntu 10.04 アップデートメモ

 遅ればせながら ubuntu10.04 にアップグレードしたのでそのメモを。

  • 起動時のスプラッシュ画面が、Plymouthになった。
  • kernel option で vga=792 としていたが、コンソールが表示されなくなった。
     フレームバッファの取り扱いも変更になたようだ。
     nvidia のプロプラなドライバを利用している場合は、
    echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
    sudo update-initramfs -u
    とし、
    sudo hwinfo --framebuffer
    として解像度の値を取得。 Mode 0x031b: 1280x1024 (+5120), 24 bitsにしたいので、kernel optionに、
    vga=0x031b
    と指定。無事コンソールが高解像度で表示されるようになった。

  • Emacs = Emacs23 となったので、以前のemacs22 と emacs-snapshot を削除。すっきり。
  • アップグレード時にxscreensaver が起動してるとダメよとメッセージが出たので、killした

 トラブルはこんなものか? 今回はほとんどトラブルらしいトラブルがなかった。
 特に問題もなくアップグレード作業は終わり。うーん書くことがない。困った(^_^;)
 起動時間は少し速くなったかなあという感じ。うちのPCがロートルなので体感出来ていないだけですかね。
 ext4 が以前より体感で高速になっている。不思議。遅くなっているハズなんだけどなあ。
 そんなわけで特に問題もなく、きわめて快適です。

2010年4月3日土曜日

nautilusのゴミ箱表示に削除した日と元の場所を追加する

 nautilusのゴミ箱を一覧表示した時に「元の場所」と「ゴミ箱に入れた日」という項目を表示するパッチを当てたものをPPAに置きました。
 よろしかったらどうぞ。

PPAの追加の仕方

sudo add-apt-repository ppa:yama-natuki/ppa

インストール

sudo apt-get update
sudo apt-get upgrade


こんな感じ。


 ubuntu 9.10 用です。

2010年3月1日月曜日

Emacs でファイルをsudoで開き直す

 tramp の最初の一回目の認証で待たされる感覚が嫌いなので、私はよくsudo をやらずにそのままファイルを開いてしまいます。そうして「ああ、やっぱり編集したい」となり、sudo で開きなおします。
 作業の流れ的に美しくありませんし、毎回引っかかるのでストレスにもなります。
 vim ですと「:e sudo:%」でカレントファイルを sudo で開きなおしてくれるようです。いいなあ。

 ということで 自動的に sudo で開きなおしてくれる機能を作ろうかと思ったら、すでにあったのでそれを導入します。
 元のlispは、書き込み不可なファイルすべてをsudoで開きなおすか聞いてくるのでうっとおしいので、少し修正しました。
 root所有なファイルを開いた時だけ、sudoで開き直すか聞いてくるようにしました。

 以下を ~/.emacs にコピペしします。


(defun file-root-p (filename)
"Return t if file FILENAME created by root."
(eq 0 (nth 2 (file-attributes filename))))

(defun th-rename-tramp-buffer ()
(when (file-remote-p (buffer-file-name))
(rename-buffer
(format "%s:%s"
(file-remote-p (buffer-file-name) 'method)
(buffer-name)))))

(add-hook 'find-file-hook
'th-rename-tramp-buffer)

(defadvice find-file (around th-find-file activate)
"Open FILENAME using tramp's sudo method if it's read-only."
(if (and (file-root-p (ad-get-arg 0))
(not (file-writable-p (ad-get-arg 0)))
(y-or-n-p (concat "File "
(ad-get-arg 0)
" is read-only. Open it as root? ")))
(th-find-file-sudo (ad-get-arg 0))
ad-do-it))

(defun th-find-file-sudo (file)
"Opens FILE with root privileges."
(interactive "F")
(set-buffer (find-file (concat "/sudo::" file))))



 これで dired や C-x C-f で普通にファイルを開いても、それがroot所有なファイルならば自動的にsudoで開きなおすか聞いてくれます。おかげでtrampを意識しなくて済むのでとても楽になりました。

2010年2月23日火曜日

Ubuntu のdvipdfmx でB5でPDFにしたら用紙サイズが変

 前回 TeX を導入し、いろいろ弄くって PDF に変換したりして遊んでいたんですが、

dvipdfmx -p b5 test.dvi
とかして 用紙を B5 指定にしてPDFに変換しても、どうもレイアウトがずれる。あれーおかしいなあとかなり悩んだんですけど、どうも用紙サイズがB系列がISO規格になっていて、国内のJIS規格に対応していないのが原因だった。

 とりあえず linpaper にB系列の用紙サイズを追加したものを PPA にアップしておきましたのでどうぞ。

dvipdfmx -p b5j test.dvi
というように j を付ければJIS規格のサイズで出力されます。
ついでにはがきサイズも追加しておきました。 hagaki でいけます。