Emacsであるものを使って楽に入力する

入力したいものはEmacsのどこかにある、、、というときは、

  • 最初の何文字かを入力し、
  • M-/ (dabbrev-expand)

してみましょう。

そうするとEmacsは、

  • バッファから入力した文字で始まる語を探し、
  • 入力に続く部分を追加してくれます。

思っていたものと違ったときは、連続して M-/ すると次の単語にしてくれます。

f:id:tt195361:20161216113727p:plain

Interpreterパターン

Interpreterパターンは、文法を解釈しその内容を実行するインタプリタの作成に使う。ここでは、以下の仕様の 1 桁の数字を計算するインタプリタを作ってみる。

  • 使用できる演算子は '*' と '+'。
  • '*' は '+' より先に計算する。
  • '(' と ')' で囲んだ部分は先に計算する。

このインタプリタの文法は以下の通り。

続きを読む

Visitorパターン

デザインパターンの中のVisitorパターンは、

  • データ構造をたどって、その要素について処理をし、かつ、
  • その処理が複数ある。

という場合に使う。ここでは、データ構造として以下のようなComponentクラス, Compositeクラス, およびLeafクラスを使った木構造を例として使う。

続きを読む

Windowsでのバックアップ

Windowsでファイルをバックアップするには xcopy が便利。

こんなバッチファイルを作成しておいて、実行すればよい。

set SOURCE=C:\Source
set DESTINATION=D:\Backup
REM /C: コピー時のエラーを無視する
REM /D: コピー先に同名のファイルが存在する場合に更新日が新しいファイルのみコピーする
REM /E: ファイルが存在しなくてもディレクトリごとコピーする
REM /I: コピー先のディレクトリが存在しない場合は新規にディレクトリを作成する
REM /H: 隠しファイルやシステムファイルも全てコピーする
REM /R: 読み取り専用属性のファイルも上書きコピーできるようにする
REM /Y: 同名のファイルが存在する場合、上書きの確認を行わない
xcopy %SOURCE% %DESTINATION% /C /D /E /I /H /R /Y
pause

Emacs で文字コードを調べる

ある文字が 'O' (アルファベットのオー) なのか '0' (数字のゼロ) なのかで悩んだら、

してみましょう。カーソル位置の文字の文字コードなどが表示されます。

f:id:tt195361:20150723170122p:plain)