90

アップデート

これは Eclipse 2018-12で修正されました。この動作はデフォルトのままですが、オフに設定できます - 方法については受け入れられた回答を参照してください

後世のため、および以前のバージョンの Eclipse を使用していた人のために、質問はそのままにしておきます。


Eclipse では、Java の IntelliSense スタイルの提案を有効にしました。

Window -> Preferences -> Java/Editor/Content Assist

そして、次の設定

Auto activation delay (ms) -> 0
Auto activation triggers for Java -> .(abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

ソース = Eclipse インテリセンス?

これは、1 つの厄介な問題を除けば、見事に機能します。をspacebar押すと、入力されたトークンは、提案リストの一番上にあるものでオートコンプリートされます。正当な理由で正確に一致するクラス/変数名を入力することがありますが、これは最上位の候補として表示されません。したがって、Eclipse を自然にヒットするとspacebar、完全に間違ったものが挿入されます。

EG入力した後、Cookieヒットspacebarして取得しCookieMonsterます。

これはバグのように思われ、頻繁に発生して面倒ですが、それでも一般的にオートコンプリートをトリガーしたくありませんspacebar。まだ宣言されていない変数名などを入力したい場合があります。ヘルパー ツールとしてオートコンプリートを使用したいのですが、自然なタイピングを常に優先する必要があります。

spacebarオートコンプリートのトリガーを停止し、 を使用するようにフォールバックするか、通常の入力では使用されないキーenterでオートコンプリートをトリガーしたいと考えています。これは可能ですか?custom

Content Assistのすべての設定を試してみましたが、役に立ちませんでした。質問をグーグルで検索すると、オートコンプリート機能の無効化に関する一連の結果が返されます。


この問題は Eclipse 2018-12 [4.10] から修正されています。受け入れられた回答を参照してください。

2018-09 [4.9]、Photon [4.8]、Oxygen [4.7]、Neon [4.6] など、以前のすべてのバージョンに存在します。

4

8 に答える 8

26

これについては、 Issue Trackerに解決策があります。jarを eclipse/dropins フォルダーにコピーします。次回の再起動では、オートコンプリート トリガーとしてスペースが無効になります。

https://bugs.eclipse.org/bugs/show_bug.cgi?id=348857

Eclipse 12-2018 以降:これはネイティブに動作しています。Pyves の回答を確認してください。

于 2013-10-26T07:24:10.473 に答える
7

Eclipse の SDK バージョンを使用する

1. プラグイン ビューを開き、org.eclipse.jface.text を見つけて右クリックし、ソース プロジェクトとしてインポートを選択します。インポート後、ワークスペースに表示されます。

2.src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java 内

char[] triggers = t.getTriggerCharacter();
if(contains(triggers,key))

への変更

if(key!='='&&key!=0x20&&contains(triggers,key))

3.org.eclipse.jface.textのエクスポート

org.eclipse.jface.text のプロジェクト フォルダを右クリックし、[エクスポート] -> [デプロイ可能なプラグインとフラグメント] を選択し、次に、宛先でアーカイブ ファイルを選択して終了します。eclipse/plugins のものを生成したものに置き換えます。

于 2014-02-20T05:19:00.200 に答える
0

最後にそれを解決しました。

このorg.eclipse.jface.text.jarをダウンロードして、プラグイン フォルダー (通常は eclipse/plugin) にコピーしてみてください。自分のものをバックアップすることを忘れないでください。

Eclipse ジュノで動作します。

リンクが機能しない場合は、これについてコメントしてください。

于 2014-12-01T08:54:00.143 に答える
0

davnicwil と同じ構成、同じ問題、まだ Eclipse 4.4 です。

解決策: (editor-window) eclipse で SHIFT+SPACE (長押し) をインターセプト (フック) し、ESC,SPACE (sequence) に置き換えます。今、あなたは私が決める

  • オートコンプリート + スペース: 自動提案が表示されているときにスペースを押します
  • スペースのみ: 定義済みのキーの組み合わせまたはシーケンス (例: SHIFT+SPACE) を押します。

Windows では、 http: //www.heise.de/download/activaid.html を使用できます(AutoHotkey、Java ネイティブ フックなども使用できます)。

ActivAid の使用方法:

  1. ActivAid を開き、「UserHotkeys」を選択します。
  2. 「+」をクリックして、説明を設定します
  3. 「ショートカット」をクリックし、たとえばSHIFT + SPACEを押します
  4. コマンド: "{ESC}{SPACE}" (引用符なし)
  5. 「+」をクリックし、Eclipseエディターフレームを選択して、ENTERを押します
  6. [OK] をクリックし、ActivAid で [OK] をクリックします。

私の設定ファイル:activAid/settings/ac'tivAid.ini:[UserHotkeys]

Hotkey11=+Space
Path11=<Send>{ESC}{SPACE}
Description11=Eclipse Shift+Space -> Esc,Space
Category11=
Application11=ahk_class SWT_Window0

ö->{,ä->} などのように、"HotStrings" を使用して英語以外のキーボードのキーを再マッピングすることもできます。

于 2014-11-05T20:54:13.073 に答える
-3

Eclipse で、[ウィンドウ] -> [設定] -> [一般] -> [キー] に移動し、コマンド Content Assist のバインドを削除します。

于 2013-08-28T13:06:03.160 に答える
-4

のチェックボックスを使用して自動アクティベーションを無効にすることができます

Window -> Preferences -> Java/Editor/Content Assist

オンデマンドでオートコンプリート機能を有効にします。これのデフォルトのホットキーは

CTRL+Space

于 2013-01-14T17:48:33.127 に答える