OS X의 왼쪽 및 오른쪽 Option 키에 대한 서로 다른 바인딩

OS X의 왼쪽 및 오른쪽 Option 키에 대한 서로 다른 바인딩

왼쪽 Option에 META 키를 갖는 동시에 Alt+2=@에 대한 오른쪽 Option과 스웨덴/덴마크어 레이아웃에 일반적인 기타 사항을 사용할 수 있는 것이 가능합니까?

답변1

당신은개인.xmlKeyRemap4MacBook을 사용하면 다음과 같습니다.

<?xml version="1.0"?>
<root>
  <appdef>
    <appname>APPLETERMINAL</appname>
    <equal>com.apple.Terminal</equal>
  </appdef>
  <item>
    <name>terminalmeta</name>
    <identifier>terminalmeta</identifier>
    <only>APPLETERMINAL</only>
    <autogen>__KeyToKey__ KeyCode::A, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::A</autogen>
    <autogen>__KeyToKey__ KeyCode::B, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::B</autogen>
    <autogen>__KeyToKey__ KeyCode::C, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::C</autogen>
    <autogen>__KeyToKey__ KeyCode::D, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::D</autogen>
    <autogen>__KeyToKey__ KeyCode::E, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::E</autogen>
    <autogen>__KeyToKey__ KeyCode::F, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::F</autogen>
    <autogen>__KeyToKey__ KeyCode::G, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::G</autogen>
    <autogen>__KeyToKey__ KeyCode::H, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::H</autogen>
    <autogen>__KeyToKey__ KeyCode::I, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::I</autogen>
    <autogen>__KeyToKey__ KeyCode::J, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::J</autogen>
    <autogen>__KeyToKey__ KeyCode::K, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::K</autogen>
    <autogen>__KeyToKey__ KeyCode::L, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::L</autogen>
    <autogen>__KeyToKey__ KeyCode::M, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::M</autogen>
    <autogen>__KeyToKey__ KeyCode::N, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::N</autogen>
    <autogen>__KeyToKey__ KeyCode::O, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::O</autogen>
    <autogen>__KeyToKey__ KeyCode::P, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::P</autogen>
    <autogen>__KeyToKey__ KeyCode::Q, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::Q</autogen>
    <autogen>__KeyToKey__ KeyCode::R, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::R</autogen>
    <autogen>__KeyToKey__ KeyCode::S, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::S</autogen>
    <autogen>__KeyToKey__ KeyCode::T, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::T</autogen>
    <autogen>__KeyToKey__ KeyCode::U, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::U</autogen>
    <autogen>__KeyToKey__ KeyCode::V, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::V</autogen>
    <autogen>__KeyToKey__ KeyCode::W, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::W</autogen>
    <autogen>__KeyToKey__ KeyCode::X, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::X</autogen>
    <autogen>__KeyToKey__ KeyCode::Y, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::Y</autogen>
    <autogen>__KeyToKey__ KeyCode::Z, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::Z</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_0, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_0</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_1, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_1</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_2, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_2</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_3, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_3</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_4, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_4</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_5, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_5</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_6, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_6</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_7, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_7</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_8, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_8</autogen>
    <autogen>__KeyToKey__ KeyCode::KEY_9, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEY_9</autogen>
    <autogen>__KeyToKey__ KeyCode::BACKQUOTE, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::BACKQUOTE</autogen>
    <autogen>__KeyToKey__ KeyCode::BACKSLASH, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::BACKSLASH</autogen>
    <autogen>__KeyToKey__ KeyCode::BRACKET_LEFT, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::BRACKET_LEFT</autogen>
    <autogen>__KeyToKey__ KeyCode::BRACKET_RIGHT, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::BRACKET_RIGHT</autogen>
    <autogen>__KeyToKey__ KeyCode::COMMA, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::COMMA</autogen>
    <autogen>__KeyToKey__ KeyCode::DOT, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::DOT</autogen>
    <autogen>__KeyToKey__ KeyCode::EQUAL, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::EQUAL</autogen>
    <autogen>__KeyToKey__ KeyCode::MINUS, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::MINUS</autogen>
    <autogen>__KeyToKey__ KeyCode::QUOTE, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::QUOTE</autogen>
    <autogen>__KeyToKey__ KeyCode::SEMICOLON, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::SEMICOLON</autogen>
    <autogen>__KeyToKey__ KeyCode::SLASH, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::SLASH</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_0, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_0</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_1, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_1</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_2, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_2</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_3, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_3</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_4, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_4</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_5, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_5</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_6, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_6</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_7, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_7</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_8, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_8</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_9, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_9</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_CLEAR, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_CLEAR</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_COMMA, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_COMMA</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_DOT, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_DOT</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_EQUAL, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_EQUAL</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_MINUS, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_MINUS</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_MULTIPLY, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_MULTIPLY</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_PLUS, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_PLUS</autogen>
    <autogen>__KeyToKey__ KeyCode::KEYPAD_SLASH, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::KEYPAD_SLASH</autogen>
    <autogen>__KeyToKey__ KeyCode::DELETE, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::DELETE</autogen>
    <autogen>__KeyToKey__ KeyCode::ENTER, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::ENTER</autogen>
    <autogen>__KeyToKey__ KeyCode::ESCAPE, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::ESCAPE</autogen>
    <autogen>__KeyToKey__ KeyCode::FORWARD_DELETE, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::FORWARD_DELETE</autogen>
    <autogen>__KeyToKey__ KeyCode::RETURN, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::RETURN</autogen>
    <autogen>__KeyToKey__ KeyCode::SPACE, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::SPACE</autogen>
    <autogen>__KeyToKey__ KeyCode::TAB, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::TAB</autogen>
    <autogen>__KeyToKey__ KeyCode::CURSOR_UP, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::CURSOR_UP</autogen>
    <autogen>__KeyToKey__ KeyCode::CURSOR_DOWN, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::CURSOR_DOWN</autogen>
    <autogen>__KeyToKey__ KeyCode::CURSOR_LEFT, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::CURSOR_LEFT</autogen>
    <autogen>__KeyToKey__ KeyCode::CURSOR_RIGHT, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::CURSOR_RIGHT</autogen>
    <autogen>__KeyToKey__ KeyCode::PAGEUP, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::PAGEUP</autogen>
    <autogen>__KeyToKey__ KeyCode::PAGEDOWN, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::PAGEDOWN</autogen>
    <autogen>__KeyToKey__ KeyCode::HOME, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::HOME</autogen>
    <autogen>__KeyToKey__ KeyCode::END, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::END</autogen>
    <autogen>__KeyToKey__ KeyCode::UK_SECTION, ModifierFlag::OPTION_L, KeyCode::ESCAPE, KeyCode::UK_SECTION</autogen>
  </item>
</root>

__KeyToKey__ KeyCode::OPTION_L, KeyCode::VK_NONE, Option::KEYTOKEY_BEFORE_KEYDOWN, KeyCode::ESCAPE옵션을 누른 상태에서 여러 키를 누르면 작동하지 않습니다.

삭제 또는 여러 수정자 키를 전달하는 올바른 옵션 매핑:

<autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::FORWARD_DELETE</autogen>

<autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::CONTROL_L, ModifierFlag::CONTROL_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::COMMAND_L</autogen>

해당 내용은 소스를 참조하세요키 코드 값그리고사전 정의된 설정.

iTerm은 하나의 옵션 키만 메타로 변경하는 것을 지원합니다.

답변2

다음과 같은 타사 소프트웨어를 사용하여 일부 동작을 수정할 수 있습니다.KeyRemap4맥북, 하지만 그것이 당신이 상상하는 것과 정확히 일치할지는 의문입니다.

Option_R 키 변경(오른쪽 옵션)

  • Option_R에서 Command_L로
  • Option_R에서 Command_R로
  • Option_R에서 Control_L로
  • Option_R ~ Control_L(가상 머신에서만)
  • Option_R에서 Control_R로
  • Option_R에서 Control_R로(Emacs, Terminal, X11에서만)
  • Option_R에서 Fn으로
  • Command_R+Option_R을 Fn으로
  • Option_R ~ Option_R
    (+ Option_R만 입력할 경우 Command+Space를 보냅니다)
  • Option_R에서 Option_R+Shift_L로
  • Option_R 삭제
  • Option_R ~ 끝
  • Option_R에서 End로(가상 머신, RDC에만 해당)
  • Option_R에서 End로(가상 머신, RDC에만 해당)
    (+ Shift+Option_R에서 Shift+End, Control_L+C로)
  • Option_R에서 End로(가상 머신, RDC에만 해당)
    (+ Shift+Option_R에서 Shift+End,Command_L+C로)
  • Option_R 입력
  • Option_R - 삭제 전달
  • Option_R에서 왼쪽 화살표로
  • Option_R에서 PageDown으로
  • Option_R에서 Command_L+오른쪽 화살표(가상 머신, RDC 제외)
  • Option_R에서 Command_L+오른쪽 화살표(가상 머신, RDC 제외)
    (+ Shift+Option_R에서 Command_L+Shift_L+오른쪽 화살표,Command_L+C)
  • Option_R에서 Command_L+오른쪽 화살표(가상 머신, RDC 제외)
    (+ Shift+Option_R에서 Command_L+Shift_L+오른쪽 화살표, Control_L+C)
  • Option_R에서 Command_L+오른쪽 화살표
  • Option_R에서 세미콜론으로
  • Option_R에서 Space로
  • Option_R에서 Command+Control+Option+Shift+F1

다음 조합 중 하나를 사용해 볼 수 있습니다.우켈렐레원하는 효과를 얻을 수 있도록 키보드 레이아웃을 변경합니다.

관련 정보