Emacsで行末の^Mを除去

Windowsで作ったテキストファイルの改行コードCR(^M)をEmacsで除去したのでメモ
replace-stringコマンドで「C-q C-m」を除去すればいい。

M-x replace-string ⏎
C-q C-m ⏎
⏎

たまに忘れる。
 

EmacsからPostgreSQLに接続

EmacsからPostgreSQLに接続したら楽だったのでメモ

Emacsを起動後、sql-postgresコマンドでサーバーに接続

M-x sql-postgres

ユーザー名・データベース名・サーバーを入力して接続。
.pgpassファイルを作っておけばパスワード入力しなくて済む。
.pgpassのパーミッションは600にしておく。

#~/.pgpass
localhost:5432:データベース:ユーザー:パスワード

別バッファで.sqlファイルをsql-modeで開く。
構文ハイライトがデフォルトでansiなので、これをsql-set-productコマンドを使ってpostgresに変える

M-x sql-set-product ⏎
postgres

そしてバッファとSQLコネクションをsql-set-sqli-bufferコマンドで関連付ける。

M-x sql-set-sqli-buffer

「*SQL*」というバッファがあるのでそれを選ぶ。
つながったら「C-c C-r」でリージョン内のクエリを実行出来る。

バッファ内ののクエリをまるごと実行するなら「C-c C-b」でOK.

 

Emacs: 空白行を一括削除

Emacsで空白行を削除したかったのでメモ

テキスト開いてる状態で

M-x flush-lines ⏎
^$ ⏎

これで消える。

NTEmacsをインストール

Windows7機にNTEmacsをインストールしたのでメモ

まずは環境変数設定でHOMEを指定する。
※cygwinセットアップした時にもう指定してた。

C:\cygwin\home\hoge

ここからIMEパッチ済みのNTEmacsバイナリをダウンロード。最新は24.4です。

http://cha.la.coocan.jp/doc/NTEmacs.html
zipを解凍して、適当なところに配したしたら \bin\runemacs.exe を起動。

それから %HOME%\.emacs.d\init.el を作成。
まずは必要最低限な設定だけ。

(setq inhibit-startup-screen t)

(setq frame-title-format
      (format "%%b - emacs-%s" emacs-version))

(when (eq window-system 'w32)
  (set-face-attribute 'default nil
                      :family "MS ゴシック"
                      :height 110)
  (set-fontset-font nil 'japanese-jisx0208 (font-spec :family "MS ゴシック")))

(setq-default line-spacing 2)

(setq make-backup-files nil)
(setq confirm-kill-emacs 'y-or-n-p)

(global-linum-mode)

(setq show-paren-delay 0)
(show-paren-mode t)
(setq show-paren-style 'expression)

(set-language-environment "Japanese")
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(setq file-name-coding-system 'sjis)
(setq locale-coding-system 'utf-8)

(set-frame-position (selected-frame) 0 0)
(set-frame-size (selected-frame) 120 40)