2012年10月20日土曜日

Emacs メモ

~/.emacs から ~/.emacs.d/* へ移行するときに気になったコトのメモ。
参考:
Emacs 実践入門

■ Emacs Lisp コメント暗黙ルール

;;; セミコロン 3 つは、見出し
;; 左端のコメントは、セミコロンが 2 つ
(hogehoge t) ; 行末のコメントは、セミコロンが 1 つ

■ Emacs Lisp 設定の反映方法

・Emacs を再起動する
・S 式 ( "(" 開きカッコから ")" 閉じカッコ(コッカ) で終わるコード ) の末尾で C-x C-e
・M-x eval-buffer RET : カレントバッファをすべて評価
・M-x eval-region RET : リージョン選択範囲を評価

■ Dropbox にバックアップ (Windows7 コマンドプロンプトでシンボリックリンク作成) 反映方法

C:\Users\MASAO\Dropbox\dotfiles\.emacs.d に実態を置く。

C:\Users\MASAO> cd %HOME%
C:\Users\MASAO> mklink /D .emacs.d "C:\Users\MASAO\Dropbox\dotfiles\.emacs.d"
.emacs.d <<===>> C:\Users\MASAO\Dropbox\dotfiles\.emacs.d のシンボリック リンクが作成されました

■ アライメント

下記のようにテキストを書いて、":" で綺麗に揃えたい場合、

AAA: 0001
BB: 0002
C: 0003

リージョンで選択して M-x align-regexp そのあとで、":" を入力すると、綺麗に整形される。

AAA : 0001
BB  : 0002
C   : 0003

■ フェイス

・Emacs で定義されているフェイス一覧を確認
    M-x list-faces-display RET

■ 簡単な計算は *scratch* バッファで行う

S 式書いて C-j

(+ 1 2 3 4 5)
15

● Emacs, windows, align, eval, 評価,

複数ファイルを処理するシェルスクリプトメモ

複数ファイルを処理するときのシェルスクリプトメモ。

カレントディレクトリのファイルを処理。

#!/bin/sh

files=(`ls -1`)

for file in ${files[@]}
do
# ここに処理を書く。

done
exit 0

これと awk を組み合わせる時のメモ

#!/bin/sh

LINE=2

files=(`ls -1`)

for file in ${files[@]}
do
    cat $file | awk --assign awk_var="$LINE" '
    {
        # 条件を書かないと必ず実行
    }
    NR == 1 {
        # 1 行目の場合の処理
    }
    NR == awk_var {
        # 2 行目の場合の処理
        # シェルの変数を assign オプションで awk に渡す
    }
    {
        # next を呼ぶとパターンマッチングせずに次の行を読み込む
        next
    }
    END {
        # テキストの最後に実行される処理
    }
    '
done
exit 0

■ 参考
http://shellscript.sunone.me/awk.html

● 複数, ファイル, 処理, シェルスクリプト, file, for, ファイルリスト

2012年10月7日日曜日

Windows のコマンドプロンプトでネットワークドライブに移動する方法

cd x: では、移動できないのか~。/d オプションで、ドライブを指定。

cd /d x:

● windows, コマンドプロンプト, ネットワークドライブ, cd, /d, change directory, command prompt, network, drive