내 컴퓨팅 시간의 대부분은 Linux에서 사용됩니다 (Windows에서는 가끔 시간이 소요됨). 이러한 플랫폼에서 Home및 End키는 현재 줄의 시작 또는 끝으로 보편적으로 이동합니다.
내 인생에서 한 대의 Apple 컴퓨터를 사용하는 데 점차 익숙해 지지만이 키가 문서의 시작과 끝 부분에 묶여있는 것보다 여전히 실망 스럽습니다. 기반 행동.
내 질문:
- 줄의 시작과 끝에서 누락 된 기존 키 바인딩이 있습니까? (주로 터미널, Chrome 및 LibreOffice를 사용합니다)
- 이 키의 기능을 내가 알고있는 기능에 리 바인드하는 방법이 있습니까? 나는 거의 쓸모가없는 문서 기반 버전을 기꺼이 포기할 것입니다.
또한 두 가지주의 사항 :
- 나는 시스템의 유일한 사용자가 아닙니다. 내 사용자 설정이 다른 사람들의 경험을 방해하지 않으면 좋을 것입니다. 이것이 가능하지 않다면 아마도 내가 가장 선호하는 것 같습니다!
- 여러 언어를 사용하고 키보드 레이아웃간에 전환하므로 여러 키보드 레이아웃간에 전환 할 때도 모든 솔루션이 작동 할 것으로 예상됩니다.
답변
줄 바꿈 시작 또는 끝으로 이동하기위한 기본 바로 가기는 ⌘←및 ⌘→입니다. ⌥↑및 ⌥↓또는 ⌃A과 ⌃E언 래핑 된 라인 (또는 단락)의 시작 또는 끝으로 이동한다. ⌥←그리고 ⌥→단어 앞으로 / 뒤로 이동, 그리고이 모든 지주와 호환되는 Shift해당 이동 중에 선택할 수 있습니다.
~/Library/KeyBindings/
다음과 같이 속성 목록 을 작성 하고 저장하여 홈을 재 맵핑하고 종료 할 수 있습니다 DefaultKeyBinding.dict
.
{
"\UF729" = moveToBeginningOfLine:; // home
"\UF72B" = moveToEndOfLine:; // end
"$\UF729" = moveToBeginningOfLineAndModifySelection:; // shift-home
"$\UF72B" = moveToEndOfLineAndModifySelection:; // shift-end
}
OS X에서 텍스트를 편집하기위한 대부분의 키 바인딩은에 정의되어 /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict
있습니다.
변경 사항을 적용하려면 응용 프로그램을 다시 열어야합니다. DefaultKeyBinding.dict는 일부 이전 버전의 Xcode (최신 버전 6.3.1에서 작동), 터미널 및 여러 플랫폼 간 응용 프로그램에서 무시됩니다.
참조 코코아 텍스트 시스템 및 내 웹 사이트를 사용자 정의 가능한 키 바인딩에 대한 자세한 내용은.
터미널의 키 바인딩은 환경 설정> 설정> 키보드에서 사용자 정의 할 수 있습니다. \033OH
줄의 시작과 줄 \033OF
의 끝으로 이동합니다.
Eclipse에서 키 바인딩은 환경 설정> 일반> 키에서 수정해야합니다. 줄 시작 및 줄 끝 명령에 대한 기본 바인딩을 수정해야합니다 (를 ⌘ ←로 바꾸고 ⌘ →를 ↘로 바꾸십시오). 선택이 작동하려면 라인 시작 선택 및 라인 끝 선택을 수정 하십시오 .
PS : 당신이해야 할 수 있습니다 로그 아웃하고 다시 로그인 에 대한 ~/Library/KeyBindings/DefaultKeyBinding.dict
사항을 적용하려면 변경.
답변
저는 현재 Lion 10.7.4를 사용하고 있으며 이상한 이유로 편집이 효과 ~/Library/KeyBindings/DefaultKeyBinding.dict
가 없었습니다.
KeyRemap4MacBook 시스템 환경 설정 애드온 (현재 Karabiner )이 실제로 잘 작동 한다는 것을 알았으며 텍스트 파일을 편집하지 않고도 다양한 키를 다시 매핑 할 수 있습니다. 예를 들어, 페이지 위로 / 페이지 아래로 키를 변경하면 커서가 페이지 위로 / 아래로도 이어집니다.
애드온을 다운로드하고 시스템 환경 설정 패널에서 해당 For PC Users
섹션을 찾아 확인하십시오 Use PC Style Home /End
.
참고로, 나는 첫 번째를 선택한 것처럼을 (Change Home to Command+Left)
대신 (Change Home to Control+A)
선택했습니다. 줄이 줄 바꿈되면 홈은 현재 줄의 시작 부분으로 이동하는 대신 줄 바꿈 된 줄의 시작 부분으로 이동합니다.
답변
이 기사 덕분에 키보드 레이아웃에서 작동하는 사용자별로 Home및 End키를 라인 기반 동작에 리 바인드하는 방법을 알아 냈습니다 .
키 코드와 매핑 할 새 명령을 사용하여 사전 파일을 만들어야하지만 먼저 터미널을 열고 실행하여이 폴더를 배치 할 폴더가 있는지 확인하십시오.
$ mkdir -p ~/Library/KeyBindings
그런 다음에서 파일을 작성하거나 편집하십시오 ~/Library/KeyBindings/DefaultKeyBinding.dict
. 이전에 존재하지 않았다면 아래 섹션 전체를 추가하십시오. 존재하는 경우 블록 안에 네 개의 새 행을 추가하십시오.
{
"\UF729" = "moveToBeginningOfLine:";
"\UF72B" = "moveToEndOfLine:";
"$\UF729" = "moveToBeginningOfLineAndModifySelection:";
"$\UF72B" = "moveToEndOfLineAndModifySelection:";
}
설정을 활성화하려면 사용자를 로그 아웃하고 다시 로그인해야합니다.
여기에는 커서 이동의 정상적인 동작과 커서 이동 중에 선택 하는 Shift+ Home/ End조합이 모두 포함됩니다.
답변
OS X Sierra를 사용하고 있으며 ~/Library/KeyBindings/DefaultKeyBinding.dict
다른 사용자가 제안한 솔루션이 부분적으로 효과가 있습니다. TextEdit와 같은 일부 응용 프로그램에는 원하는 동작이 있지만 다른 응용 프로그램은 그렇지 않습니다. Chrome과 Slack은 DefaultKeyBinding.dict
파일 을 존중하지 않는 것 같습니다 .
나머지 응용 프로그램 문제를 해결하려면, 내가 사용 BetterTouchTool가 바인딩 응용 프로그램 별 키보드 단축키를 생성 Home
하고 End
OS X의 기본 바로 가기에 Ctrl+A
와 Ctrl+E
. BetterTouchTool은 무료가 아니지만 45 일의 평가 기간이 있습니다.
이것을하기 위해:
- BetterTouchTool 설치 및 시작
- 제스처> 키보드 탭으로 이동
- “응용 프로그램 선택”에서을 클릭
+
하고 수정하려는 앱을 선택하십시오. - “새 바로 가기 추가”를 클릭
Home
하고 “레코드 바로 가기”필드에 키를 지정한 다음 “다른 키보드 바로 가기 트리거”를 Ctrl + A로 설정하십시오.End
와 Ctrl + E를 반복하십시오 . - 완료되면 패널은 다음과 같아야합니다.
- BetterTouchTool의 고급 설정에서 시작시 실행되도록 허용하십시오.
참고 : BetterTouchTool 앱을 종료하지 마십시오. 그렇지 않으면 키 누름 차단이 중지됩니다. 창을 닫으면 백그라운드에서 계속 작업해야합니다.
답변
아래의 사용자 정의 설정으로 멋진 KeyRemap4MacBook 을 사용하고 있습니다.
대부분의 응용 프로그램에서 Home / End를 수정하고 iTerm2를 망치지 않습니다.
에서 https://gist.github.com/lhotari/6134223181439b9ed0a1
<?xml version="1.0"?>
<!-- ~/Library/Application Support/KeyRemap4MacBook/private.xml -->
<!-- Custom keyboard mappings for MBP using https://pqrs.org/macosx/keyremap4macbook/ -->
<root>
<item>
<name>Lari's PC Style Home/End</name>
<appendix>(Change Home to Command+Left)</appendix>
<appendix>(Change End to Command+Right)</appendix>
<appendix></appendix>
<appendix>{{ PC_STYLE_BINDINGS_IGNORE_APPS_DESCRIPTION }}</appendix>
<identifier>lari.remap.pclikehomeend</identifier>
<block>
<only>DREAMWEAVER</only>
<autogen>__KeyToKey__ FROMKEYCODE_HOME, KeyCode::HOME, ModifierFlag::SHIFT_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_END, KeyCode::END, ModifierFlag::SHIFT_L</autogen>
</block>
<block>
<only>BLUEFISH,WORD,EXCEL,POWERPOINT</only>
<autogen>__KeyToKey__ FROMKEYCODE_HOME, KeyCode::HOME</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_END, KeyCode::END</autogen>
</block>
<!--
<block>
<only>EMACS, TERMINAL, X11, ECLIPSE</only>
<autogen>__KeyToKey__ FROMKEYCODE_HOME, KeyCode::A, ModifierFlag::CONTROL_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_END, KeyCode::E, ModifierFlag::CONTROL_L</autogen>
</block>
-->
<block>
<not>{{ PC_STYLE_BINDINGS_IGNORE_APPS }}</not>
<autogen>__KeyToKey__ FROMKEYCODE_HOME, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_COMMAND, KeyCode::CURSOR_UP, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_HOME, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_CONTROL, KeyCode::CURSOR_UP, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_END, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_COMMAND, KeyCode::CURSOR_DOWN, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_END, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_CONTROL, KeyCode::CURSOR_DOWN, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_HOME, KeyCode::CURSOR_LEFT, ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ FROMKEYCODE_END, KeyCode::CURSOR_RIGHT, ModifierFlag::COMMAND_L</autogen>
</block>
</item>
</root>
답변
나는 여기 에서 인용에 유용 iterm2
하고 유용한 것을 발견했다 .zsh
를 엽니 다
iTerm > Preference
. 로 이동하십시오profiles tab > Keys
. 그런 다음+
키 목록 맨 아래 에있는 버튼을 클릭
하고을 누른 다음 select 아래 에서Home
또는Fn+left arrow
Apple 무선 키보드를 누릅니다.Action
Send Escape Sequence
[1~
이스케이프 키 시퀀스에 대해 End
키를 반복하십시오 [~4
.
zsh를 사용하는 경우 다음을 수행하십시오.
1)
~/.zshrc
파일에 다음을 배치하십시오.bindkey "^[[1~" beginning-of-line bindkey "^[[4~" end-of-line
2)
source ~/.zshrc
열린 터미널에서 실행하십시오 .
답변
키보드를 변경하는 가장 좋은 도구는 실제로 Karabiner (이전 명칭 KeyRemap4MacBook)입니다. 오픈 소스 ( https://github.com/tekezo/Karabiner )이지만 응용 프로그램 ( https://pqrs.org/osx/karabiner/index.html.en ) 으로도 제공됩니다 . 나는 꽤 오랫동안 검색해 왔으며 더 좋은 것을 찾지 못했습니다.