Home > pgsql > psqlのヒストリ機能

psqlのヒストリ機能

psqlのヒストリ機能が使いづらい。ずっと前から思っていた。僕はわりとSQLに改行をいれて打つことが多い。

ishida=# SELECT *
ishida-#   FROM pg_class
ishida-#  WHERE relname = 'tbl1';

でも、psqlのヒストリ機能は行単位なので、これを実行した後にCtrl-Pを押すと、"WHERE relname = 'tbl1';"の一行だけが出てくる。3行全部出てきてくれた方がうれしいんだけど。

で、ちょろっといじってみた。つーか適当なパッチのつもりがだんだん色々な問題が発生してきてどうしたものか。バックスラッシュコマンドはどうしようかなぁ。まあでも使える感じ。

あと、一旦psqlを終了しちゃうと、前回の履歴(.psql_historyファイルに保存されたもの)はやっぱり行単位でしか履歴を呼びだせない。うーん。改行をエスケープして保存して、read_history()を使わずに自分でファイルを読みながらadd_history()していけばできなくはないなぁ。

psql_addhistory_051015.patch

Writeback:3

from 満ち干で 2005/10/15 (Sat) 10:58:26
直前のSQLの行数が画面の現在のウィンドウサイズを超えたら…とか考えたら頭痛くなってきました(笑)。
from iakio 2005/10/15 (Sat) 21:11:09
そのSQLを見るの自体が頭痛そうですw
psqlコマンドのヒストリ機能ハック from よくきたblog 2005/10/16 (Sun) 17:14:26
akioさんとこで載ってました.便利そう.
Comment Form

writeback message: Ready to post a comment.

TrackBack ping me at
http://www.mono-space.net/blog/pgsql/051015_psql_history.trackback

Page Top