2011-02-05 11 views
7

Windows実行ファイルをコンパイルしてリンクするためにMinGWとmsysを正常にインストールして使用しました。私が前回の成功を収めていたときと同じプラットフォームである32ビットVista用の新しいインストールでは、私は小文字の「e」または大文字の「P」を提供されたシェル環境に入力すると、ビープ音は鳴りますが、文字はありません!意味私は "メイク"や "エコー"を入力することはできませんし、例えば、それらのコマンドを実行します。それは行く:m-a-k-BEEP!は、MinGW/msysのシェルまたは端末に 'e'または 'P'を入力できません。

これは、インストーラによって生成されたショートカットを介してmsysを呼び出すときに開き、シェルではc:\ msys \ 1.0 \ binに移動してbashをダブルクリックすることで表示されます.exe、sh.exe、rxvt.exe(実際には鮮明なBEEPよりノイズが多いですが)小文字の 'e'と大文字の 'P'は端末(またはシェル?私はこれらの用語の違いについては扱いません)。

私は、自動化されたMinGWとmsysインストーラを試して、同じエンドに新しい手動インストールを試みました。

シェルがうまく理解できない、または起動時に環境がどのように進化するのかわからないので、この不愉快な動作の原因をどこから探し始めるべきかわかりません。

+0

Windowsでgitシェルと同じ問題が発生しましたが、新しくMinGWのbashでは発生しません。 (同じ修正が働いた)...多分それはいくつかのMSysバージョンに特有のものだろうか? – Kos

答えて

12

私はあなたがBashを使用していると仮定しています。キーバインディングが何らかの理由で台無しになったように私に聞こえる。

あなたは、このコマンドを実行する場合は、次の "P" と "E" のエントリは、これらのコマンドを試してみてください含まれていない場合

"E": self-insert 
"e": self-insert 
"P": self-insert 
"p": self-insert 

bind -p|grep -i '"[pE]"' 

をあなたはこの結果を取得する必要があります。明らかに

bind '"e":self-insert' 
bind '"P":self-insert' 

、あなたはそれより低いのです(小さな「P」か、Alt-LをUPCASEするAltキーを押しながらUを押して、文字を入力するので、その逆のケースのバージョン、プレス左矢印を入力することはできません"大文字小文字の" ell ")を使用して大文字の" E "を小文字にします(最初のコマンドではの場合はそれぞれ" e "にする必要があります)。

これが機能する場合は、~/.inputrcファイルで無効なキーバインドを確認してください。また、~/.bashrcなどの起動ファイルをチェックしてください。引用符が見つからないか間違っていると問題が起きる可能性があります。\ePなどのキーバインディングの場合は、デフォルトでreadline関数do-lowercase-versionにバインドされている可能性があります。ディレクトリC

+0

説明書は完璧に機能しました。私は確かに "P"と "e"が自己挿入バインディングを持っていなかったことを知りました。そして、私は「〜/ .inputrc」ファイルで十分に狩り始めました。私が追加した違和感のある行は、「エコー$ PATH」と 'PATH = $ PATH:/ c/MinGW/msys/1.0/bin :. ' 'echo $ PATH'は、何らかの理由で問題が発生したとき、および取り除いたときに発生します。ありがとうございました! –

+1

@dim fish:はい、 '〜/ .inputrc'は実行可能ファイルではないので、コマンドを入力することはできません。 –

+0

@DennisWilliamson "b"と同じ問題があります。私は.inputrcからすべての設定を取り除いて解決した "e"と同じ問題を抱えていました。 "b"が単一の二重引用符を挿入する前に、 "b"を押すと、Ctrl + cを押すまで二重引用符の無限の文字列が挿入されます。私は 'bind '" b ":self-insert''をinputrcに入れましたが、変更はありません。私のmsysは非常に小さく、coreutilsを除くほとんどのパッケージはありません。 – otonvm

0

:\ DocumentsとSettings \あなたのユーザ名は、あなたが名前のファイルを見つけることができます「の.bashrc」は以下の2行 バインド 『『E』:自己挿入』を追加 バインド「『P』を:自己挿入 '

デニスウィリアムソン、ありがとうございました!この問題は長い間私を悩ましています。

関連する問題