Vim에서 명령 다음에 스페이스바를 눌러야 하는 이유는 무엇입니까?

Vim에서 명령 다음에 스페이스바를 눌러야 하는 이유는 무엇입니까?

나는 문자의 대소문자를 바꾸기 space위해 클릭한 후와 같이 입력한 명령을 "실행"하기 위해 눌러야 하는 상황에 자주 직면합니다 .~

왜 그런 겁니까?

답변1

muru와 다른 사람들은 vim 자체의 프로그래밍 가능성과 구성 가능성의 관점에서 이것을 보고 있습니다. 그러나 세 번째, 매우 다른 대답이 있습니다.

  • 키보드 레이아웃이 다음을 지원합니다.데드 키.
  • 귀하의 레이아웃에서 그것은 아마도 전통적인 "결합 물결표"( ə ) ~에 매핑된 데드 키일 것입니다 .U+0303
  • 레이아웃은 ISO/IEC 9995-3 및 ISO/IEC 9995-11에 지정된 일반적인 규칙을 따릅니다. 즉, 결합 문자 데드 키와 그에 Space상응하는 결과가 뒤따릅니다.결합되지 않음, 간격, 문자.

따라서 누르는 방법은 터미널 에뮬레이터에서 ~Space간단한 "물결표"(~) 문자를 얻는 방법 U+007E과 실제로 vim 명령을 실행하는 방법입니다. 키 누르기 ~자체는 터미널을 통해 문자를 전혀 보내지 않습니다. 왜냐하면 터미널 에뮬레이터는 "죽은" 키를 결합한 후 다음에 누르는 것이 무엇인지 확인하기를 기다리고 있기 때문입니다. vim에 관한 한 이 시점에서는 실제로 아무 일도 일어나지 않습니다.

이 경우 삽입 모드로 들어가서 다음을 눌러 이를 수행할 수 있습니다.다른 것후에 ~. 누르는 키는 물론 선택한 키보드 레이아웃에 따라 달라집니다. 일반적으로 그룹은 이러한 유형의 레이아웃 ~a으로 결합됩니다 .ã

잘 알려지지 않은 표준화

ISO/IEC 9995-3:2010에 정의된 "공통 보조 그룹"은 다양한 국가 레이아웃에서 변경되지 않고 유지됩니다. "결합 물결표" 문자는 U+0303보조 그룹에서 표준 위치를 갖습니다.

따라서 ISO/IEC 9995-3:2010 호환 키보드 레이아웃에서는 기본 그룹 레이아웃에 관계없이 동일한 키 순서로 물결표를 결합할 수 있어야 합니다.

  • 이러한 키는 ⯖ Group2D12표준 언어로 표현됩니다. "그룹 2 선택" 키를 조각하는 데 권장되는 유니코드 글리프입니다. 대부분의 최신 문서에서는 WWW 브라우저가 이전 문장에서 빈 키보드를 표시하는 경우 분명한 이유로 이것을 사용합니다. ☺
  • Shift키보드 상단에서 볼 수 있는 실제 각인 측면에서 이는 + AltGr](PC 스타일 US 레이아웃) 또는 Shift+ ⌥ Option](Mac 스타일) 와 비슷합니다 . 이는 두 개의 별도 코드라는 점에 유의하세요. 단일 코드 Shift++는 또 다른 이야기 AltGr입니다 ].

~이는 특히 다음 을 의미합니다. 레이아웃으로 전환하면아니요데드 키는 아마도 여러분이 하려고 하는 작업일 것입니다. 키보드 레이아웃이 ISO/IEC "Universal Auxiliary Group"을 지원하는 한 필요할 때 데드 키에 계속 액세스할 수 있습니다.

이 글을 쓰는 시점에서는 구체적인 구현이 매우 드물기 때문에 터미널 에뮬레이터와 키보드 레이아웃이 이를 지원하지 않을 가능성이 높습니다. 그러나 이것은 사람들이 지난 몇 년 동안 추진해 온 ISO 키보드 표준입니다.

관련 정보