Postgres外部编辑器不会对savequit执行查询

时间:2017-01-04 19:42:51

标签: postgresql vim

这让我有些疯狂。我尝试在postgres中使用\e编辑查询,但在保存时:wq没有任何反应。 运行\p,显示编辑器保存的内容,只是出现一个空白行,或者我最近在cli中运行的任何内容。似乎编辑并没有坚持到底。

我使用vim作为默认编辑器,而且我使用的是psql版本9.5.4。操作系统是OSX,我使用iterm2。我在网上找到的唯一类似问题是here,似乎没有任何建议可以提供帮助。

欢迎所有想法!

编辑:发现问题。这与我的vim有关 - 当我将编辑器设置为Pico时,事情就有效了,所以我把我的vimrc和慢慢读回来的东西都搞定了。奇怪的是,当一切都恢复时,它继续工作。所以检查它是否适用于其他编辑器!

2 个答案:

答案 0 :(得分:0)

我不知道原因究竟是什么,但看起来需要设置$associativeArray = array( 'First' => 1, 'Second' => 2, 'Third' => 3, ); foreach ($associativeArray as $index => $value) { echo $index . ": " . $value; } // First: 1 // Second: 2 // Third: 3 环境变量才能使其正常工作。

像这样启动psql:

$EDITOR

或者更长期,添加

EDITOR=vim psql ...

到您的export EDITOR=vim 或同等版本。

答案 1 :(得分:0)

我已确认使用 Janus vim发行版时会发生这种情况,并created an issue over there进行跟踪。一旦在那里得到解决,它将给我们一个线索,我可以在这里给出一个具体的答案。

在此期间,将以下内容添加到~/.profile作为解决方法:

export PSQL_EDITOR="vim -u NONE"

您将失去Janus功能(以及.vimrc.before.after中的任何其他内容,但它会让您使用vim。

请参阅: