Soy muy aficionado bash
al historial de búsqueda inversa (Cr) (función de línea de comandos):
Busque hacia atrás comenzando en la línea actual y avanzando 'hacia arriba' a través del historial según sea necesario. Esta es una búsqueda incremental.
Cuando golpeo control-r
en bash
, me sale el siguiente:
(reverse-i-search)`':
Y puedo escribir caracteres de comandos ejecutados previamente, perfeccionando lo que estoy buscando. Si me equivoco, puedo ingresar control-h
para borrar un carácter (equivalente a backspace
).
Esta funcionalidad de línea de comandos hace que sea extremadamente fácil referirse a comandos ejecutados previamente. Me pregunto si existe tal capacidad para psql
. Me resulta extremadamente ineficiente confiar en justos control-p
y control-n
.
Por lo que vale, estoy usando PostgreSQL 9.3.1 on x86_64-apple-darwin13.0.0, compiled by Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn), 64-bit
, obtenido a través de Postgres.app .
fuente
Ctrl-r
Ya lo has intentado ? :)ctrl-r
obras para ti?rlwrap
...rlwrap
través de homebrew (brew install rlwrap
) y lo probé (rlwrap psql
), perocontrol-r
aún no funciona; de hecho, se comporta exactamente de la misma manera quecontrol-r
sinrlwrap
(que es que no pasa nada ). Quizás este sea el signo de un problema más profundo.ctrl-r
normalmente es proporcionado por la biblioteca readline. Parece que hay un problema abierto para postgres.app sobre esto.Respuestas:
Una conversación sobre esto en GitHub condujo a una solución provisional de "solución rápida" :
Aparentemente, el problema más grande es que PostgresApp usa en
libedit
lugar delibreadline
. Y supuestamentelibedit
carece de algunas características de la línea de comandoslibreadline
, por lo que hasta que se compile PostgresApplibreadline
, solo use la solución rápida anterior.fuente