(Tôi không muốn nghe về việc tôi điên đến mức nào khi muốn điều đó! :)
Focus-follow-mouse còn được gọi là tiêu điểm, tiêu điểm con trỏ và lấy nét cẩu thả (trong một số triển khai). [Thêm các thuật ngữ khác sẽ giúp điều này dễ tìm kiếm hơn!] Chuột X
(Tôi không muốn nghe về việc tôi điên đến mức nào khi muốn điều đó! :)
Focus-follow-mouse còn được gọi là tiêu điểm, tiêu điểm con trỏ và lấy nét cẩu thả (trong một số triển khai). [Thêm các thuật ngữ khác sẽ giúp điều này dễ tìm kiếm hơn!] Chuột X
Câu trả lời:
Bạn có thể làm điều đó cho Terminal.app bằng cách phát lệnh sau tại dòng lệnh:
defaults write com.apple.Terminal FocusFollowsMouse -bool true
Đối với ứng dụng X11, bạn có thể thực hiện việc này:
defaults write com.apple.x11 wm_ffm -bool true
Trong Snow Leopard, sử dụng cái này thay thế:
defaults write org.x.X11 wm_ffm -bool true
Rõ ràng có một chương trình có tên CodeTek Virtual Desktop sẽ mô phỏng nó trên toàn hệ thống, nhưng nó có giá $$ (và họ chưa bao giờ có phiên bản dành cho OSX Leopard).
Steve Yegge đã viết một bài luận về điều này một thời gian trước, nơi ông đã cố gắng và thất bại trong việc viết một phần mở rộng phù hợp. Kể từ đó, tôi đã cố gắng tìm các ứng dụng tập trung theo dõi chuột cho OS X và cũng thất bại.
Focus-follow-mouse không phải là phương thức nhập đặc biệt phù hợp cho OS X vì thanh menu của nó được thiết kế ở trên cùng của màn hình. Khi bạn di chuyển chuột ra khỏi cửa sổ ứng dụng của bạn để đến các menu, nếu nó vượt qua bất kỳ cửa sổ nào của ứng dụng khác trên đường đi, menu sẽ thay đổi.
Vì vậy, có, để trả lời nhận xét của dreeves, nó hoạt động hoàn toàn tốt cho Terminal (hoặc cho bất kỳ ứng dụng nào khác trên máy tính để bàn), bởi vì các cửa sổ khác sẽ ảnh hưởng là cửa sổ Terminal, vì vậy menu không bao giờ thay đổi khi bạn chuyển đổi cửa sổ. Và nó hoạt động tốt cho X11 vì các ứng dụng X11 thường có các thanh menu của chúng được nhúng trong cửa sổ, vì vậy bạn không phải rời khỏi cửa sổ để truy cập chúng.
Tất nhiên, bạn có thể giải quyết vấn đề thay đổi menu bằng cách đưa ra độ trễ nhân tạo trước khi thay đổi tiêu điểm và / hoặc chuyển đổi menu, nhưng nó sẽ không bao giờ hoạt động tốt như trên các máy tính để bàn khác.
Mặc dù đây không phải là một giải pháp hoàn chỉnh, hai hành động tiện dụng được tích hợp trong OSX (10.11) là:
-Click (control-option-click) - chuyển trọng tâm mà không cần nâng cửa sổ
-Click ( nhấp chuột lệnh) - nhấp trong cửa sổ mà không chuyển trọng tâm
Không chắc chắn khi các phím tắt này được giới thiệu, vì tôi không thể tìm thấy chúng được viết ở bất cứ đâu.
click
dự định cho một cửa sổ mà không tập trung.
Vấn đề về menu là lý do duy nhất khiến chuột tập trung truyền thống không hoạt động.
Đây là một cách thay thế: không thay đổi tiêu điểm cho đến khi nhấn phím trên bàn phím. Điều này sẽ bao gồm 95% các trường hợp sử dụng cho chuột theo dõi tập trung và sẽ làm cho người dùng X cũ kỹ này thực sự hài lòng. Tôi không biết bao nhiêu lần tôi sẽ cuộn qua một trang web trong Chrome và nhấn Command-T để mở một tab mới và thay vào đó, tìm tab mở trong Terminal. Nếu bộ não của tôi không phát hiện ra điều này trong 8 tháng sử dụng máy Mac, nó sẽ không bao giờ như vậy.
Amethyst hỗ trợ tính năng này. Nó có thể dễ dàng cài đặt với brew cask install amethyst
.
Đây là tập tin cấu hình tôi sử dụng. Nó tắt tất cả các tính năng bên cạnh tiêu điểm theo dõi chuột. Lưu nó vào ~/.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
}
Vì vậy, tôi quyết định cải thiện một lần nữa về công việc tôi đã làm trên MouseF Focus.app vẫn còn một số sai sót. Những cái đó đã được sửa. Tôi đã đổi tên toàn bộ thành "AutoRaise" để phản ánh tốt hơn những gì công cụ này làm: Khi bạn di chuột qua một cửa sổ, nó sẽ được nâng lên phía trước (với sự chậm trễ của sự lựa chọn của bạn) và lấy nét. Các công cụ có thể được tải về ở đây . Để sử dụng nó, hãy sao chép nó vào thư mục / Ứng dụng / của bạn để đảm bảo nó có thể thực thi được (chmod 700 AutoRaise). Sau đó nhấp đúp vào nó từ trong Finder. Để nhanh chóng bật / tắt nó, bạn có thể sử dụng applescript bên dưới và dán nó vào quy trình dịch vụ tự động hóa . Sau đó liên kết dịch vụ đã tạo với một phím tắt thông qua System Preferences | Bàn phím | Phím tắt.
Cập nhật (29-03-2017): Nhị phân AutoRaise đã được cập nhật. Nếu không có độ trễ nào được chỉ định trên dòng lệnh, thì bây giờ nó cũng sẽ tìm tệp AutoRaise.delay trongtương tựThư mục chủ. Điều này đặc biệt hữu ích khi sử dụng applescript bên dưới vì 'khởi chạy ứng dụng' không hỗ trợ các đối số dòng lệnh. Độ trễ phải được chỉ định theo đơn vị50ms20ms. Ví dụ: để chỉ định độ trễ 20ms chạy lệnh này một lần trong thiết bị đầu cuối: '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
Cập nhật (18-04-2019): Nguồn https://github.com/sbmpost/AutoRaise
Cập nhật (05-06-2020): Độ trễ mặc định đã được đặt thành 2 và thời gian bỏ phiếu đã giảm. Các cài đặt này ngăn việc nâng cửa sổ ngoài ý muốn khi di chuyển chuột nhanh chóng (ví dụ để đến menu trên cùng). Ngoài ra, một tính năng chuột dọc đã được thêm vào và rò rỉ bộ nhớ đã được khắc phục. Để biết thêm chi tiết, hãy kiểm tra README
Tập trung theo chuột bây giờ có thể có trong macOS, Mojave trong trường hợp của tôi, sử dụng chunkwm . Xem này phản ứng Stack Overflow cho một "không autoraise" giải pháp. Autoraise được kích hoạt bằng cách rời khỏi
chunkc set ffm_disable_autoraise 0
trong ~/.chunkwmrc
.
Chỉnh sửa 2019-09-12:
chunkwm đã được thay thế bởi yabai . Để cài đặt:
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
Tôi hiện đang sử dụng MondoMouse và thậm chí với các tiện ích của nó, tôi không thể sử dụng máy Mac của mình mà không có nó. Họ có bản dùng thử miễn phí và tôi muốn giới thiệu nó cho mọi người.
Codetek đã có một sản phẩm làm điều này nhưng họ không bao giờ phát hành phiên bản cho Leopard hoặc sau này.
MondoMouse có thể sắp xếp tập trung theo dõi chuột, nhưng không tự động nâng lên. Ngay cả chuột tập trung theo sau cũng bị hỏng. Ví dụ: nó không hoạt động tốt với tab lệnh (nếu bạn sử dụng tab lệnh cho ứng dụng mới và không chạm vào chuột thì nó sẽ không chuyển trọng tâm trở lại bất cứ nơi nào con trỏ chuột xuất hiện - Tôi khá chắc chắn rằng mọi triển khai trong Linux tôi từng thấy đều đúng nhưng MondoMouse thì không).
Bạn có thể bật chuột theo dõi tập trung (không tự động) cho chỉ các cửa sổ Terminal (chỉ thực hiện các thao tác sau trong thiết bị đầu cuối):
defaults write com.apple.Terminal FocusFollowsMouse -string YES
Và tương tự cho các cửa sổ X11:
defaults write org.x.X11 wm_ffm -bool true
(Đối với các phiên bản mac trước 10.5.5, đây là:
defaults write com.apple.x11 wm_ffm true
)
Tôi không biết bất kỳ ứng dụng nào khác hỗ trợ nó.
Điều thú vị là Leopard có một hương vị của chuột theo dõi tập trung (sans autoraise) được bật theo mặc định. Các bánh xe cuộn làm việc trong các cửa sổ không tập trung.
Thật không may, CodeTek Virtual Desktop Pro không còn được phát triển nữa và công ty dường như đã ngừng hoạt động vài năm trước ..
Tài liệu tham khảo lịch sử: http://www.codetek.com/ctvd/ (không hoạt động trên các phiên bản OS X mới!)
Đánh giá lịch sử: http://www.osnews.com/story/6144
Sử dụng CodeTek Virtual Desktop Pro, bạn có thể lấy Focus-Follow-Mouse và tắt Auto-Raise, và nó cũng có Pager cho máy tính để bàn ảo - tương tự như cách Fvwm hoạt động trên Linux. Nó thực sự hoạt động hoàn hảo - phần mềm tốt nhất mà tôi từng mua. Nó hoạt động ổn định với tất cả các ứng dụng và chuyển đổi ứng dụng, di chuyển các cửa sổ sang các không gian làm việc khác nhau và điều hướng các không gian làm việc dễ dàng hơn nhiều so với cách nó được triển khai trong các phiên bản OS X mới nhất [10.6, 10.7, 10.8]
Thật không may với Mac OS X 10.5 VirtualDesktop Pro đã ngừng hoạt động và có vẻ như Apple đã chủ động đảm bảo rằng CodeTek sẽ không tiếp tục hoạt động trên nó.
Thật đáng buồn khi Apple đã nghiền nát CodeTek và đó là sản phẩm - Virtual Desktop Pro thực sự vượt trội so với cách thức không gian làm việc của OS X hiện đang được triển khai. Nó hoạt động cơ bản như Fvwm trên LINUX - điều hướng siêu nhanh - không cần nhấp chuột hoặc cử chỉ không cần thiết ...
Tôi rất buồn khi thấy Apple ra lệnh cho hành vi của trình quản lý cửa sổ (Finder) và dường như không cho phép thay thế bên thứ ba cho Finder nữa.
Ngoài ra còn có vấn đề liên quan đến tăng khi nhấp. Trong OSX mỗi lần nhấp vào một cửa sổ, nó cũng được nâng lên, do đó có khả năng ẩn các cửa sổ khác. Đây là vấn đề khi làm việc với sao chép / dán từ hai cửa sổ trong đó một trong số chúng che hầu hết màn hình. Tôi muốn giữ một notepad toàn cầu (hoạt động trong tất cả các không gian làm việc) mà tôi sao chép / dán nội dung (có thể là bất cứ thứ gì từ các lệnh, văn bản, các mục việc cần làm, v.v.). Đây là một thách thức theo OSX. Sẽ thật tuyệt nếu có một tùy chọn để vô hiệu hóa tăng khi nhấp.
Hãy thử DwellClick . Mặc dù, nó không nhằm mục đích của nó, hành vi tự động nhấp có tác dụng phụ tương tự như tự động nâng hoặc lấy nét sau chuột.
Cá nhân, tôi chỉ sử dụng tính năng nhấp chuột trái sau khi chuyển động con trỏ của tôi dừng lại, nhưng cũng có nhấp chuột với sửa đổi và hỗ trợ kéo cửa sổ khá tiện dụng.
Cũng có một chút bực bội khi duyệt web vì bạn sẽ muốn tắt ứng dụng hoặc có ý thức hơn về nơi con trỏ nằm (ví dụ: không có bất kỳ liên kết hoặc nút nào bạn không có ý định kích hoạt).
Sử dụng tính năng Dwell trong mac. Chuyển đến Trợ năng -> bàn phím -> Bàn phím trợ năng (Tôi đang ở Catalina)
Thử nghiệm với các tùy chọn đó, Command-Tab của tôi bắt đầu hành xử kỳ quặc. Đây là giải pháp về cách nó tập trung vào các ứng dụng một lần nữa:
Dường như một tính năng trước đó, cụ thể là khả năng lấy nét cửa sổ của Terminal thay đổi theo chuyển động của chuột, bị phá vỡ trong 10.6 và khiến Command-Tab không chuyển tiêu điểm cửa sổ chính xác. Để khắc phục sự cố, chỉ cần dán lệnh sau vào Terminal:
mặc định viết com.apple.Terminal FocusFollowsMouse-chuỗi NO
Sau đó khởi động lại Terminal.
Giải pháp: Vì tôi đã quá quen với autoraise trong Windows nên tôi đã rất nhớ nó trên Mac. Giải pháp tôi tìm thấy cho Mac là Zooom (vâng, ba giờ). Nó có chức năng autoraise. Bạn thậm chí có thể đặt mili giây để chờ trước khi tự động. Không thể sống mà không có nó. Autoraise là một tùy chọn trong prefs như bạn có thể thấy trong ảnh chụp màn hình https://www.macupdate.com/app/mac/23203/zooom http://coderage-software.com/zooom/index.html
Đã thử nghiệm MondoMouse ( https://www.atomicbird.com/about/mac-apps ) trên MacOS Mojave. Có vẻ làm việc tốt cho tôi!
Để cài đặt prefpane, sẽ có thông báo " cho phép truy cập các thiết bị trợ giúp " không còn trong Tùy chọn hệ thống> Trợ năng nữa. Bạn sẽ phải đặt nó trong Bảo mật & Quyền riêng tư> Trợ năng> Quyền riêng tư
Sẽ có một vài cảnh báo về việc cho phép MondoMouse trong mỗi ứng dụng bạn đã mở, nhưng sau khi thiết lập, nó hoạt động tốt! Thật là nhẹ nhõm :)
Bạn thực sự không thể làm tốt điều đó, vì giao diện Mac đơn giản là không được thiết kế với tiêu điểm theo dõi chuột (có hoặc không có tự động nâng cao). Tôi nghi ngờ rằng điều đó sẽ thay đổi bất cứ lúc nào sớm, và trừ khi nó xảy ra, mọi người cố gắng thực hiện tập trung theo dõi chuột sẽ chạy vào cùng một rào cản và kết thúc với kết quả không đạt yêu cầu (với những người muốn điều đó).
Vì vậy, có, bạn đang điên vì muốn này - nhưng vì lý do kỹ thuật. Làm quen với việc sử dụng Mac theo cách riêng của nó và tôi chắc chắn rằng mong muốn của bạn buộc nó hoạt động giống như bất kỳ thứ X11 nào bạn từng sử dụng sẽ giảm đi một chút khi bạn tìm ra cách làm việc hiệu quả mới.