source

Eclipse에서 스페이스 바 키 누름이 자동 완성을 트리거하지 않도록 합니다.

ittop 2023. 5. 22. 21:41
반응형

Eclipse에서 스페이스 바 키 누름이 자동 완성을 트리거하지 않도록 합니다.

갱신하다

이것은 Eclipse 2018-12에서 수정되었습니다.이 동작은 여전히 기본이지만 꺼짐으로 구성할 수 있습니다. 방법은 승인된 답변을 참조하십시오.

이클립스 이전 버전의 사람들과 후손들을 위한 질문은 그대로 두겠습니다.


Eclipse에서 Java에 대한 인텔리센스 스타일 제안을 활성화했습니다.

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

다음을 설정합니다.

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

출처 = 이클립스 인텔리센스?

이것은 하나의 성가신 문제를 제외하고는 훌륭하게 작동합니다.누르면 입력되는 토큰이 제안 목록의 맨 위에 있는 것으로 자동 완성됩니다.당연합니다. 가끔 정확하게 일치하는 클래스/변수 이름을 입력하지만 이 항목이 상위 제안으로 표시되지는 않습니다.그래서 제가 자연스럽게 이클립스를 치면 완전히 잘못된 것이 삽입됩니다.

입력 Cookie제가 때릴게요.CookieMonster.

이것은 버그처럼 보이고 짜증날 정도로 자주 발생하지만, 그럼에도 불구하고 일반적으로 자동 완성을 트리거하고 싶지 않습니다.아직 선언되지 않은 변수 이름 또는 이와 유사한 이름을 입력할 수 있습니다.자동 완성 기능을 도우미 도구로 사용하고 싶지만 항상 자연스러운 타이핑이 우선되어야 합니다.

자동 완성 트리거를 중지하고 를 다시 사용하거나 일반 타이핑에 사용되지 않는 키로 자동 완성을 트리거하는 것이 좋습니다.이것들 중 하나라도 가능합니까?

Content Assist의 모든 설정을 가지고 놀았지만 소용이 없었습니다.질문을 구글링하면 자동 완성 기능 비활성화에 대한 많은 결과가 반환됩니다.


이 문제는 Eclipse 2018-12 [4.10]에서 수정되었습니다. 승인된 답변을 참조하십시오.

2018-09 [4.9], 광자 [4.8], 산소 [4.7], 네온 [4.6] 등의 모든 이전 버전에 존재합니다.

Eclipse 2018-12는 이미 이에 대해 패치되었습니다!

Bug 348857용 패치는 최근 이클립스 프로젝트에 병합되었으며 이클립스 2018-12의 일부로 릴리스되었습니다.여기서 해당 버전을 다운로드할 수 있습니다.

이제 를 제외한 모든 삽입 트리거를 비활성화할 수 있는 새로운 옵션이 제공되어 자동 완성이 발생하지 않습니다.

[환경설정]으로 이동-> Java -> Editor -> Content Assist(또는 Window -> Preferences -> Java -> Editor -> Content Assist(Windows의 경우)를 선택하고 아래 스크린샷에 표시된 것처럼 'Enter' 제외한 삽입 트리거 사용을 선택합니다.

에 대한 해결책이 이슈 추적기에 있습니다.eclipse/dropins 폴더에 있는 병을 복사합니다.다음 재시작 시 공간이 자동 완료 트리거로 비활성화됩니다.

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

이클립스 12-2018 이상:기본적으로 작동합니다. Pyves 응답을 확인하십시오.

SDK 버전의 이클립스 사용

1.플러그인 보기를 열고 org.eclipse를 찾습니다.jface.text를 마우스 오른쪽 단추로 클릭하고 소스 프로젝트로 가져오기를 선택합니다.가져온 후 작업영역에서 이를 찾을 수 있습니다.

2. in src/org/eclipse/jface/text/content Assistant/CompletionProposalPopup.java

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

로 변경.

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

3.조직.이클립스를 내보냅니다.jface.text

org.eclipse의 프로젝트 폴더를 마우스 오른쪽 버튼으로 클릭합니다.jface.text, export-->전개 가능한 플러그인 및 fragment, 다음으로 대상을 선택하여 아카이브 파일, finish를 선택합니다.이클립스/플러그인의 항목을 생성하는 항목으로 바꿉니다.

스페이스 바는 인디고에서도 자동 완성기를 선택하는 열쇠였습니다.구성할 수 없는 것으로 알고 있습니다.사실, 그것이 아마도 지연이 존재하는 이유일 것입니다.

저는 하여 다과같음입것수할있최값는적다제지니것설과 같은 할 수 합니다.private void ...에 대한 제안을 유발하지 않고 편안하게private그리고.void그런 다음 너무 오래 기다려서 제안을 받을 경우 이스케이프를 눌러 Content Assist를 중단합니다.

davnicwill과 동일한 구성, 동일한 문제, 여전히 eclipse 4.4에 있습니다.

솔루션:(편집기-창) Eclipse에서 SHIFT+SPACE(누름)를 가로채(후크)하고 ESC,SPACE(시퀀스)로 바꿉니다.이제 당신은 나의 결정입니다.

  • 자동 완성+SPACE: 자동 제안이 있을 때 SPACE를 누릅니다.
  • Just SPACE: 사전 정의된 키 조합 또는 시퀀스(예: SHIFT+SPACE)를 누릅니다.

윈도우에서는 http://www.heise.de/download/activaid.html 을 사용할 수 있습니다(AutoHotkey, Java native hook 등도 사용할 수 있습니다).

ActiveAid 사용 방법:

  1. Ac'tivAid를 열고 "사용자 단축키"를 선택합니다.
  2. "+"를 클릭하고 설명을 설정합니다.
  3. "바로 가기"를 클릭하고 Shift+SPACE를 누릅니다.
  4. 명령: "{ESC}{SPACE}"(따옴표 없음)
  5. "+"를 클릭하고 이클립스 편집기 프레임을 선택한 후 ENTER를 누릅니다.
  6. Ac'ivAid에서 확인, 확인을 클릭합니다.

내 구성 파일:activAid/settings/ac'tivAid.ini:[사용자 핫키]

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

영어 이외의 키보드에서 "HotStrings"(예: ö->{,ä->})로 키를 다시 매핑할 수도 있습니다.

드디어 해결했습니다.

org.eclipse를 다운로드해 보십시오.jface.text.jar를 플러그인 폴더(일반적으로 eclipse/plugin)에 복사합니다.자신의 데이터를 백업하는 것을 잊지 마십시오.

이클립스 주노에서 작동합니다.

링크가 작동하지 않으면 이에 대해 의견을 내십시오. 감사합니다.

Eclipse에서 Window -> Preferences -> General -> Keys로 이동하고 Content Assist 명령에 대한 바인딩을 제거합니다.

의 확인란을 통해 자동 활성화를 비활성화할 수 있습니다.

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

요청 시 자동 완성 기능을 활성화할 수 있습니다.이에 대한 기본 단축키는 다음과 같습니다.

CTRL+Space

언급URL : https://stackoverflow.com/questions/14297735/stop-spacebar-keypress-from-triggering-autocomplete-in-eclipse

반응형