将功能键绑定到有用的命令

如果您发现自己一遍又一遍地输入相同的 psql 斜杠命令 序列,并且希望有一种方法可以用一个键击来输入它们,并且您的键盘顶部有一排未使用的功能键,并且您运行的是类似 UNIX 的系统,例如 Linux,那么您来对地方了。

使用.inputrc将功能键绑定到常用的psql斜杠命令和输入序列。以下文件在 Linux 上有效。

elephant:~$ cat .inputrc
$if psql
#F1: show psql slash command help
"\eOP": "\\?\n"

#F2: list databases
"\eOQ": "\\l\n"

#F3: list schemas
"\eOR": "\\dn\n"

#F4: list tables
"\eOS": "\\dt\n"

#F5: list views
"\e[15~": "\\dv\n"

#F6: list indexes
"\e[17~": "\\di\n"

#F7: list aggregates
"\e[18~": "\\da\n"

#F8: list roles
"\e[19~": "\\dg\n"

#F9: list internal variables
"\e[20~": "\\set\n"

#F10: list SQL commands
"\e[21~": "\\h\n"

#F11: toggle pager 
"\e[23~": "\\pset pager\n"

#F12: toggle timing
"\e[24~": "\\timing\n"

$endif

在其他系统上,在bash中使用read命令来确定哪些键生成哪些转义序列;将前导^[替换为\e。例如,在 OS X 上,F1产生^11~,它应该被转换为\e[11~用于.inputrc.