VIM ESC키 한글 문제 해결 방법(windows)

 

  • autohotkey 설치
  • esc_force_english.ahk 파일 작성
    • 컴파일해서 실행파일로 만들어 준다 버전 1.x로 컴파일해야됨
----------------------------------------------------------------------
$Esc::
    ret := IME_CHECK("A")
    if %ret% <> 0           ; 1 means IME is in Hangul(Korean) mode now.
        {
	          Send, {Esc}
            Send, {vk15}    ;한글인 경우 Esc키를 입력하고 한영키를 입력해 준다.
        }
    else if %ret% = 0       ; 0 means IME is in English mode now.
        {
	          Send, {Esc}     ;영문인 경우 Esc키만 입력한다.
        }
    return

/*
  IME check 
*/
IME_CHECK(WinTitle) {
  WinGet,hWnd,ID,%WinTitle%
  Return Send_ImeControl(ImmGetDefaultIMEWnd(hWnd),0x005,"")
}
Send_ImeControl(DefaultIMEWnd, wParam, lParam) {
  DetectSave := A_DetectHiddenWindows
  DetectHiddenWindows,ON
   SendMessage 0x283, wParam,lParam,,ahk_id %DefaultIMEWnd%
  if (DetectSave <> A_DetectHiddenWindows)
      DetectHiddenWindows,%DetectSave%
  return ErrorLevel
}
ImmGetDefaultIMEWnd(hWnd) {
  return DllCall("imm32\\ImmGetDefaultIMEWnd", Uint,hWnd, Uint)
}
--------------------------------------------------------------------
  • 윈도 시작시 실행되게 하기
    • Win + R > shell::startup
    • 작성한 실행파일 넣기

댓글

이 블로그의 인기 게시물

Session 대신 JWT를 사용하는 이유

VSCode에서의 VIM 단축키와 키보드 구매 가이드

우분투에서 테스트링크(testlink)와 맨티스(mantis)로 테스팅 서버 구성하기