私はvi/vimを編集するかもしれませんが、vimとmercurialは一緒にniceを配置しません。Mercurialコミットは「中止:編集に失敗しました:viがステータス1で終了しました」
変更をコミットしようとすると、コマンドラインがで終了した場合:
$ hg commit
abort: edit failed: vi exited with status 1
viは常に終了時に1を返します表示されます。
例:
$ vi
$ echo $?
1
私はvi/vimを編集するかもしれませんが、vimとmercurialは一緒にniceを配置しません。Mercurialコミットは「中止:編集に失敗しました:viがステータス1で終了しました」
変更をコミットしようとすると、コマンドラインがで終了した場合:
$ hg commit
abort: edit failed: vi exited with status 1
viは常に終了時に1を返します表示されます。
例:
$ vi
$ echo $?
1
解決の迅速ハック問題。
シェルファイルを作成します
$ sudoのviのは/ usr/local/binに/ hgedit
のvi $ * 終了0
アップデート〜/ .hgrc
エディタ=/usr/local/bin/hgedit
これは簡単な回避策ですが、vimが非ゼロステータスで終了する理由を特定することをおすすめします。たとえば、http://unix.stackexchange.com/questions/14497/why-would-vim-return-non-zero-exit-code-if-i-exit-immediately-after-opening – torek
を参照してください。Mercurialはviを次のように使用します。デフォルトのエディタであるため、動作する必要があります。なぜなら、@torekが指摘するように、viが非ゼロで終了する理由は、根本原因を理解しなければならないことは明らかです。ハックは常に悪い考えです。後で価格を支払うことになります。 –
'ls -l" $(command -v vi) "'は何を表示しますか? 'EDITOR = vim hg commit'は期待どおりに動作しますか? – Ryan
1. ls -l "$(command -v vi)" - >/usr/bin/vi - > vim –
待ち時間...どのようにviを終了しましたか? ':q'ではなく? – Ryan