(나는 내가 얼마나 미친 지에 대해 듣고 싶지 않다! :)
Focus-follows-mouse는 point-to-focus, 포인터 초점 및 (일부 구현에서는) 느슨한 초점으로도 알려져 있습니다. [더 많이 검색 할 수있는 다른 용어를 추가하십시오!] X-mouse
(나는 내가 얼마나 미친 지에 대해 듣고 싶지 않다! :)
Focus-follows-mouse는 point-to-focus, 포인터 초점 및 (일부 구현에서는) 느슨한 초점으로도 알려져 있습니다. [더 많이 검색 할 수있는 다른 용어를 추가하십시오!] X-mouse
답변:
명령 행에서 다음 명령을 실행하여 Terminal.app에 대해이를 수행 할 수 있습니다.
defaults write com.apple.Terminal FocusFollowsMouse -bool true
X11 앱의 경우 다음을 수행 할 수 있습니다.
defaults write com.apple.x11 wm_ffm -bool true
Snow Leopard에서는 다음을 대신 사용하십시오.
defaults write org.x.X11 wm_ffm -bool true
시스템 전체를 에뮬레이트하는 CodeTek Virtual Desktop이라는 프로그램이 있지만 비용은 $$입니다 (OSX Leopard 용 버전은 제공되지 않음).
Steve Yegge 는이 문제에 대한 에세이를 작성했는데, 그는 적절한 확장을 작성하려고 시도하지 못했습니다. 그 후 OS X 용 초점 추적 마우스 응용 프로그램을 찾으려고했지만 실패했습니다.
Focus-follows-mouse는 메뉴 막대가 화면 상단에 있도록 설계 되었기 때문에 OS X에 특히 적합한 입력 방법이 아닙니다. 마우스를 응용 프로그램 창 밖으로 이동하여 메뉴로 이동하면 도중에 다른 응용 프로그램의 창과 교차하면 메뉴가 변경됩니다.
예, dreeves 의견에 대한 답변으로 터미널 (또는 데스크탑의 다른 단일 응용 프로그램)에서는 완벽하게 작동합니다. 단지 영향을 줄 다른 창은 터미널 창이므로 창을 전환해도 메뉴가 변경되지 않습니다. X11 앱에는 일반적으로 메뉴 막대가 창에 내장되어 있기 때문에 X11에서 잘 작동하므로 액세스하기 위해 창을 떠날 필요가 없습니다.
물론 포커스가 변경되거나 메뉴가 전환되기 전에 인위적인 지연을 도입하여 메뉴 변경 문제를 해결할 수는 있지만 다른 데스크탑 에서처럼 작동하지는 않습니다.
이것은 완전한 솔루션과는 거리가 멀지 만 OSX (10.11)에 내장 된 두 가지 편리한 동작은 다음과 같습니다.
⌃⌥- 클릭 (control-option-click)-창을 올리지 않고 초점을 전환
⌘- 클릭 (명령-클릭)-포커스를 전환하지 않고 창에서 클릭
이 단축키가 언제 도입되었는지 확실하지 않습니다. 어디에서나 작성된 단축키를 찾을 수 없었습니다.
click
초점없이 윈도우를위한 것입니다.
메뉴 문제는 전통적인 focus-follows-mouse가 작동하지 않는 유일한 이유입니다.
대안은 다음과 같습니다. 키보드에서 키를 누를 때까지 초점을 변경하지 마십시오. 여기에는 focus-follows-mouse 사용 사례의 95 %가 포함되며이 오래된 curmudgeonly X 사용자는 정말 행복 할 것입니다. Chrome에서 웹 페이지를 몇 번 스크롤하는지 모르고 Command-T를 눌러 새 탭을 열고 대신 터미널에서 탭이 열리는 것을 찾습니다. Mac을 사용한지 8 개월 만에 뇌가이 문제를 해결하지 못했다면 결코 그렇지 않을 것입니다.
자수정 은이 기능을 지원합니다. 로 쉽게 설치할 수 있습니다 brew cask install amethyst
.
여기 내가 사용하는 구성 파일이 있습니다. 초점 추적 마우스 외에 모든 기능을 끕니다. 에 저장하십시오 ~/.amethyst
.
{
"LAYOUTS": "----------------------",
"layouts": [
],
"MODIFIERS": "----------------------",
"Valid modifiers are": [
"option",
"shift",
"control",
"command"
],
"mod1": [
],
"mod2": [
],
"COMMANDS": "----------------------",
"Commands are": {
"cycle-layout": "Cycle layout to the next layout",
"cycle-layout-backward": "Cycle layout to the previous layout",
"focus-screen-1": "Focus the main window on the first screen",
"focus-screen-2": "Focus the main window on the second screen",
"focus-screen-3": "Focus the main window on the third screen",
"focus-screen-2": "Focus the main window on the second screen",
"focus-screen-3": "Focus the main window on the third screen",
"focus-screen-4": "Focus the main window on the fourth screen",
"throw-screen-1": "Throw the focused window to the first screen",
"throw-screen-2": "Throw the focused window to the second screen",
"throw-screen-3": "Throw the focused window to the third screen",
"throw-screen-4": "Throw the focused window to the fourth screen",
"shrink-main": "Shrink the main pane of the current layout",
"expand-main": "Expand the main pane of the current layout",
"increase-main": "Increase the number of windows in the main pane",
"decrease-main": "Decrease the number of windows in the main pane",
"focus-ccw": "Move window focus counter-clockwise on the current screen",
"focus-cw": "Move window focus clockwise on the current screen",
"swap-ccw": "Swap focused window with the next window going counter-clockwi$
"swap-cw": "Swap focused window with the next window going clockwise",
"swap-main": "Swap focused window with the main window of its screen",
"throw-space-1": "Throw the focused window to the first space",
"throw-space-2": "Throw the focused window to the second space",
"throw-space-3": "Throw the focused window to the third space",
"throw-space-4": "Throw the focused window to the fourth space",
"throw-space-5": "Throw the focused window to the fifth space",
"throw-space-6": "Throw the focused window to the sixth space",
"throw-space-7": "Throw the focused window to the seventh space",
"throw-space-8": "Throw the focused window to the eighth space",
"throw-space-9": "Throw the focused window to the ninth space",
"throw-space-8": "Throw the focused window to the eighth space",
"throw-space-9": "Throw the focused window to the ninth space",
"toggle-float": "Toggle the focused window between being floating and tiled"
},
"screens": "3",
"cycle-layout": {
"mod": "mod1",
},
"cycle-layout-backward": {
"mod": "mod2",
},
"select-tall-layout": {
"mod": "mod1"
},
"select-wide-layout": {
"mod": "mod1"
},
"select-fullscreen-layout": {
"mod": "mod1"
},
"select-column-layout": {
"mod": "mod1"
},
"mod": "mod1"
},
"focus-screen-1": {
"mod": "mod1"
},
"focus-screen-2": {
"mod": "mod1"
},
"focus-screen-3": {
"mod": "mod1"
},
"focus-screen-4": {
"mod": "mod1"
},
"throw-screen-1": {
"mod": "mod2"
},
"throw-screen-2": {
"mod": "mod2"
},
"throw-screen-3": {
"mod": "mod2"
},
"throw-screen-4": {
"mod": "mod2"
"throw-screen-4": {
"mod": "mod2"
},
"shrink-main": {
"mod": "mod1"
},
"expand-main": {
"mod": "mod1"
},
"increase-main": {
"mod": "mod1"
},
"decrease-main": {
"mod": "mod1"
},
"focus-ccw": {
"mod": "mod1"
},
"focus-cw": {
"mod": "mod1"
},
"swap-screen-ccw": {
"mod": "mod2"
},
"swap-screen-cw": {
},
"swap-screen-cw": {
"mod": "mod2"
},
"swap-ccw": {
"mod": "mod2"
},
"swap-cw": {
"mod": "mod2"
},
"swap-main": {
"mod": "mod1"
},
"throw-space-1": {
"mod": "mod2"
},
"throw-space-2": {
"mod": "mod2"
},
"throw-space-3": {
"mod": "mod2"
},
"throw-space-4": {
"mod": "mod2"
},
"mod": "mod2"
},
"throw-space-5": {
"mod": "mod2"
},
"throw-space-6": {
"mod": "mod2"
},
"throw-space-7": {
"mod": "mod2"
},
"throw-space-8": {
"mod": "mod2"
},
"throw-space-9": {
"mod": "mod2"
},
"toggle-float": {
"mod": "mod1"
},
"toggle-tiling": {
"mod": "mod2"
},
"display-current-layout": {
"mod": "mod1"
"display-current-layout": {
"mod": "mod1"
},
"MISC": "----------------------",
"floating": [],
"float-small-windows": false,
"mouse-follows-focus": false,
"focus-follows-mouse": true,
"enables-layout-hud": false,
"enables-layout-hud-on-space-change": false
}
그래서 여전히 약간의 결함이있는 MouseFocus.app에서 수행 한 작업을 다시 개선하기로 결정했습니다. 그것들은 지금 수정되었습니다. 이 도구의 기능을 더 잘 반영하기 위해 전체 이름을 "AutoRaise"로 바꿨습니다. 이 도구는 여기에서 다운로드 할 수 있습니다 . 사용하려면 / Applications / 폴더에 복사하여 실행 가능해야합니다 (chmod 700 AutoRaise). 그런 다음 Finder에서 두 번 클릭하십시오. 빠르게 켜거나 끄려면 아래의 애플 스크립트를 사용하여 자동화 서비스 워크 플로에 붙여 넣을 수 있습니다 . 그런 다음 생성 된 서비스를 시스템 환경 설정 | 키보드 | 바로 가기를 통해 키보드 단축키에 바인딩합니다.
업데이트 (29-03-2017) : AutoRaise 바이너리가 업데이트되었습니다. 명령 행에 지연이 지정되지 않은 경우, 이제 명령 행에서 AutoRaise.delay 파일도 찾습니다.같은홈 폴더. '시작 응용 프로그램'은 명령 줄 인수를 지원하지 않기 때문에 아래의 Applescript를 사용할 때 특히 유용합니다. 지연은 다음 단위로 지정해야합니다50ms20ms 예를 들어 20ms 지연을 지정하려면 터미널에서이 명령을 한 번 실행하십시오. 'echo 1> ~ / AutoRaise.delay'
on run {input, parameters}
tell application "Finder"
if exists of application process "AutoRaise" then
quit application "/Applications/AutoRaise"
display notification "AutoRaise Stopped"
else
launch application "/Applications/AutoRaise"
display notification "AutoRaise Started"
end if
end tell
return input
end run
업데이트 (18-04-2019) : 소스 https://github.com/sbmpost/AutoRaise
업데이트 (05-06-2020) : 기본 지연이 2로 설정되었고 폴링 시간이 단축되었습니다. 이 설정은 마우스를 빠르게 움직일 때 의도하지 않은 창이 나타나지 않도록합니다 (예 : 최상위 메뉴에 도달). 또한 워프 마우스 기능이 추가되었고 메모리 누수가 수정되었습니다. 자세한 내용은 README를 확인하십시오.
초점은 마우스에서 chunkwm을 사용하여 macOS, Mojave에서 가능합니다 . "자동화되지 않은"솔루션에 대해서는 이 스택 오버 플로우 응답을 참조하십시오 . 떠날 때 자동 올리기가 활성화됩니다
chunkc set ffm_disable_autoraise 0
에서 ~/.chunkwmrc
.
2019-09-12 편집 :
chunkwm에 의해 대체되었습니다 yabai . 설치하기 위해서:
brew tap koekeishiya/formulae
brew install yabai
mkdir -p ~/.config/yabai/
printf 'yabai -m config focus_follows_mouse autoraise' >> ~/.config/yabai/yabairc
brew services start yabai
나는 현재 MondoMouse를 사용하고 있으며 그 단점으로도 Mac이 없으면 Mac을 사용할 수 없습니다. 그들은 무료 평가판을 가지고 있으며 모든 사람에게 권장합니다.
Codetek은이 작업을 수행 한 제품을 가지고 있었지만 Leopard 이상 버전은 출시하지 않았습니다.
MondoMouse는 일종의 초점 추적 마우스를 수행 할 수 있지만 자동 올리기는 할 수 없습니다. 초점 추적 마우스조차도 깨졌습니다. 예를 들어, command-tab에서는 잘 작동하지 않습니다 (새 응용 프로그램으로 command-tab하고 마우스를 터치 하지 않으면 마우스 포인터가있는 곳으로 초점을 다시 전환 내가 본 Linux의 모든 구현은이 권리를 얻지 만 MondoMouse는 그렇지 않습니다.)
터미널 창에 대해서만 초점 추적 마우스 (자동화 안 함)를 활성화 할 수 있습니다 (터미널에서 다음을 실행하기 만하면 됨).
defaults write com.apple.Terminal FocusFollowsMouse -string YES
그리고 X11 창과 비슷합니다.
defaults write org.x.X11 wm_ffm -bool true
(10.5.5 이전의 Mac 버전의 경우 다음과 같습니다.
defaults write com.apple.x11 wm_ffm true
)
나는 그것을 지원하는 다른 응용 프로그램을 모른다.
Leopard에는 기본적으로 사용 가능한 한 가지 종류의 초점 추적 마우스 (sans autoraise)가 있습니다. 스크롤 휠은 초점이 맞지 않는 창에서 작동합니다.
불행히도 CodeTek Virtual Desktop Pro는 더 이상 개발되지 않았으며 회사는 몇 년 전에 사업을 중단 한 것으로 보입니다.
기록 참조 : http://www.codetek.com/ctvd/ (새로운 OS X 버전에서는 작동하지 않습니다!)
역사적 검토 : http://www.osnews.com/story/6144
CodeTek Virtual Desktop Pro를 사용하면 Focus-Follow-Mouse를 가져 와서 Auto-Raise를 비활성화 할 수 있었으며 Linux에서 Fvwm이 작동하는 방식과 유사한 가상 데스크톱 용 페이저도있었습니다. 내가 구입 한 최고의 소프트웨어 인 정말 완벽하게 작동했습니다. 최신 OS X 버전 [10.6, 10.7, 10.8]에서 구현 된 방식보다 모든 앱, 앱 전환, 창을 다른 작업 영역으로 이동 및 작업 영역 탐색과 일관성있게 작동했습니다.
불행히도 Mac OS X 10.5에서는 VirtualDesktop Pro가 작동을 멈췄으며 Apple이 CodeTek이 계속 작동하지 않는 것을 적극적으로 확인한 것처럼 보입니다.
Apple이 CodeTek을 분쇄 한 것은 슬픈 일이며 제품입니다. Virtual Desktop Pro는 현재 OS X 작업 공간이 구현되는 방식보다 실제로 우수했습니다. 기본적으로 불필요한 클릭이나 마우스 동작없이 LINUX의 초고속 탐색 기능에서 Fvwm처럼 작동했습니다.
Apple이 창 관리자 (Finder) 동작을 지시하고 더 이상 Finder를 써드 파티로 교체하는 것을 허용하지 않는 것을 알게되어 슬 sad니다.
클릭시 발생 관련 문제도 있습니다. 창을 클릭 할 때마다 OSX에서 창도 올라와 다른 창을 숨길 수 있습니다. 두 창에서 복사 / 붙여 넣기 작업 중 하나가 대부분의 화면을 차지하는 경우 문제가됩니다. 나는 물건을 복사 / 붙여 넣는 전역 (모든 작업 공간에서 활성) 메모장을 유지하고 싶습니다 (명령, 텍스트, 할 일 항목 등의 모든 것이 될 수 있음). 이것은 OSX에서 도전적입니다. 클릭시 증가를 비활성화하는 옵션이 있으면 좋을 것입니다.
DwellClick 제공 시도. 의도 된 목적이 아니지만 자동 클릭 동작은 자동 올리기 또는 초점 추적 마우스와 유사한 부작용이 있습니다.
개인적으로, 커서 이동이 중단 된 후 왼쪽 클릭 기능 만 사용하지만 수정 자와 함께 클릭하는 경우도 있으며 매우 편리한 창 끌기 지원도 있습니다.
또한 웹 탐색 중에는 앱을 비활성화하거나 커서가 놓이는 위치를 더 잘 알고 싶기 때문에 약간 실망 스럽습니다 (예 : 활성화하려는 링크 나 버튼이 아님).
Mac에서 드웰 기능을 사용하십시오 . 내게 필요한 옵션-> 키보드-> 내게 필요한 옵션 키보드로 이동하십시오 (Catalina에 있습니다).
이러한 옵션을 실험하면서 Command-Tab이 이상하게 작동하기 시작했습니다. 다음은 앱에 다시 집중하는 방법에 대한 솔루션입니다.
이전 기능, 즉 마우스의 움직임에 따라 터미널의 창 초점이 변경되는 기능이 10.6에서 깨져서 Command-Tab이 창 초점을 올바르게 전송하지 못하는 것으로 보입니다. 문제를 해결하려면 터미널에 다음 명령을 붙여 넣으십시오.
기본값은 com.apple.Terminal FocusFollowsMouse -string NO입니다.
그런 다음 터미널을 다시 시작하십시오.
솔루션 : Windows에서 자동화하는 데 너무 익숙했기 때문에 Mac에서는 제대로 표시되지 않았습니다. 내가 Mac에서 찾은 해결책은 Zooom입니다 (예, 3 o). 자동 기능이 있습니다. 자동 올리기 전에 대기하도록 밀리 초를 설정할 수도 있습니다. 그것 없이는 살 수 없습니다. 스크린 샷 https://www.macupdate.com/app/mac/23203/zooom http://coderage-software.com/zooom/index.html 에서 볼 수 있듯이 Autoraise는 prefs의 옵션입니다 .
MacOS Mojave에서 테스트 된 MondoMouse ( https://www.atomicbird.com/about/mac-apps ) 나를 위해 잘 작동하는 것 같습니다!
프리 판을 설치하기 위해 더 이상 시스템 환경 설정> 접근성 에없는 " 보조 장치에 대한 접근 활성화 "알림이 표시됩니다 . 보안 및 개인 정보> 접근성> 개인 정보 에서 설정해야합니다.
열려있는 각 앱에서 MondoMouse를 허용하는 것에 대한 몇 가지 경고가 있지만 일단 설정하면 정상적으로 작동합니다! 어떤 구호 :)
Mac 인터페이스는 초점 자동 조정 마우스 (자동 올리기 기능이 있거나없는)를 염두에두고 설계되지 않았기 때문에 실제로는 잘 수행 할 수 없습니다. 나는 그것이 곧 바뀔 것이라는 점을 의심하며, 그렇게하지 않는다면, 초점 추적 마우스를 구현하려는 모든 사람들은 같은 장애물에 부딪 히고 만족스럽지 못한 결과를 얻게 될 것입니다 (그러한 것을 원하는 사람들에게).
그렇습니다 . 기술적 인 이유 때문에 이것을 원한다는 것은 미쳤습니다. Mac을 그 자체로 사용하는 데 익숙해졌고 새로운 효율적인 작업 방법을 찾을 때 사용했던 X11 물건이 조금씩 사라지는 것처럼 강제로 행동하려는 것이 확실합니다.