2

VCSCommandをインストールしたところ、コマンドを実行しようとすると「適切なプラグインがありません」というエラーが表示されます。MercurialリポジトリのあるディレクトリにあるVimにファイルをロードしました。

「作業ディレクトリ」にいない場合、「適切なプラグインがありません」エラーが表示される可能性があるという説明がいくつか見つかりました。これは、編集しているファイルがチェックされたファイルの「作業ディレクトリ」にある必要があることを意味します。リポジトリから。問題は、(Hgの新規ユーザーとして)私がMercurialを適切に理解していないことかもしれません。私が編集しているファイルは、ローカルの変更を追跡するためだけにHgリポジトリを作成したディレクトリにあります。私が発行したコマンドは「hginit」、次に「hg add」で、それ以来「hg commit」、「hg log」、「hgdiff」を楽しく使用しています。このディレクトリはリポジトリの「作業ディレクトリ」ではありませんか?これが問題であると仮定して、hgリポジトリから作業ディレクトリにファイルを「チェックアウト」するにはどうすればよいですか?

または、上記は「適切なプラグインがありません」というエラーの問題ではないかもしれません。正しいプラグインディレクトリにvcshg.vimファイルがあるので、プラグインはそこにあります。

ありがとう、どんな助けにも感謝します。

更新:Mercurialの使用が問題になった場合に備えて、メインのMercurialリポジトリの「クローン」を作成し、クローン内のファイルを編集してみました。それでも同じ「適切なプラグインがありません」を取得します。メッセージ。

また、Windowsで実行しているという元のメッセージを省略しました。文字列内のエスケープコードの不適切な引用まで、追跡したと思います。フル解像度になったら、さらにアップデートを提供します。

4

2 に答える 2

3

私はVCSCommandをうまく動かしました。この問題はMercurialとは関係がなく、Windowsでのシステムコマンドの引用に関するVCSCommandの問題と関係があると思います。少なくともそれが大きな問題でした。

VCSCommandを機能させるために、最初に変数b:VCSCommandVCSTypeが「HG」に設定されていることを確認しました。何らかの理由で設定されていなかったため、「適切なプラグインがありません」というエラーが発生していました。

次に、vcshg.vimの行を変更する必要がありました。s:Executable()関数は、1行の'returnで構成されます。。。' 働き。システムコールのshellescape()ラッパーが不適切に引用していました。私が削除した後、それはうまく機能します。(同じ問題がMercurial以外のシステムのvcsXX.vimファイルに存在する可能性があります。私はそれをチェックしていません。)

この見積もりの​​問題はWindowsにのみ存在し、メインの開発者がテストするWindowsマシンを持っていないために発生した可能性があると思います。。。。

于 2010-09-24T18:27:32.310 に答える
0

最初に「作業ディレクトリ」の質問に答えます。リポジトリは作業ディレクトリです。cvs / svnとは異なり、編集するためにファイルをチェックアウトする必要はありません。編集するだけです。

(FYI hgは、updateコマンドをsvnユーザーにエイリアスしcheckoutcosvnユーザーを支援しますhg updateが、非常に異なる動物です。)

完全な環境(プラットフォーム、vimのインストールなど)がわからなくても、「適切なプラグインがありません」というエラーは、VCSCommandファイルが適切な場所にないことが原因であると推測できます。hgリポジトリ内のファイルであるcp VCSCommand/plugin/* ~/.vim/plugin/cygwinbyで古いvim7.2を使用して最新バージョン1.99.42を試したところ、正しい結果が表示されました。vim:VCSStatus

VCSCommandがサポートする他のVCS(cvs、svn、svk、git、bzr)がある場合は、それらのリポジトリの1つで試して、同じエラーが発生するかどうかを確認してください。もしそうなら、それは間違いなくVCSCommandのインストールの問題です。

于 2010-09-23T01:50:50.957 に答える