it-swarm.com.de

Fokus-Folgen-Maus (plus Auto-Raise) unter Mac OS X

(Ich will nicht hören, wie verrückt ich das will! :)

Focus-follow-mouse ist auch als Punkt-zu-Fokus, Zeigerfokus und (in einigen Implementierungen) als abfallender Fokus bekannt. [Fügen Sie andere Begriffe hinzu, die diese Suche einfacher machen!] X-Maus

142
dreeves

Sie können dies für Terminal.app tun, indem Sie den folgenden Befehl in der Befehlszeile ausgeben:

defaults write com.Apple.Terminal FocusFollowsMouse -bool true

Für X11-Apps können Sie Folgendes tun:

defaults write com.Apple.x11 wm_ffm -bool true

Verwenden Sie stattdessen in Snow Leopard Folgendes:

defaults write org.x.X11 wm_ffm -bool true

Anscheinend gibt es ein Programm namens CodeTek Virtual Desktop, das es systemweit emuliert, aber $ kostet (und sie haben nie eine Version für OSX Leopard herausgebracht).

67
Clint Ecker

Steve Yegge schrieb vor einiger Zeit einen Aufsatz darüber, in dem er versucht hatte, eine geeignete Erweiterung zu schreiben. Ich habe seitdem versucht, Fokus-Folgen-Maus-Anwendungen für OS X zu finden und bin auch gescheitert.

55
John Millikin

Die Fokus-Folgen-Maus ist keine besonders geeignete Eingabemethode für OS X, da die Menüleiste oben auf dem Bildschirm angezeigt wird. Wenn Sie die Maus aus Ihrem Anwendungsfenster bewegen, um zu den Menüs zu gelangen, wenn sie die Fenster einer anderen Anwendung auf dem Weg kreuzt, ändert sich das Menü.

Ja, als Antwort auf dreeves Kommentar, funktioniert es perfekt für Terminal (oder für jede andere einzelne Anwendung auf dem Desktop), da die einzigen anderen Fenster, die es betrifft, Terminalfenster sind. Und es funktioniert gut für X11, da X11-Apps im Allgemeinen über Menüleisten verfügen, sodass Sie das Fenster nicht verlassen müssen, um darauf zuzugreifen.

Natürlich können Sie das Problem der Menüänderung umgehen, indem Sie eine künstliche Verzögerung einführen, bevor sich der Fokus ändert und/oder das Menü wechselt. Dies funktioniert jedoch nie so gut wie auf anderen Desktops.

44
calum_b

Obwohl dies alles andere als eine vollständige Lösung ist, gibt es zwei praktische Aktionen, die in OSX (10.11) integriert sind:

⌃⌥-Klick (Kontrolloption-Klick) - wechselt den Fokus, ohne das Fenster zu vergrößern

Klicken Sie auf (Befehlstaste) - klickt in das Fenster, ohne den Fokus zu wechseln

Ich bin mir nicht sicher, wann diese Abkürzungen eingeführt wurden, da ich sie nirgendwo geschrieben finden konnte.

34
dvj

Amethyst unterstützt diese Funktion. Es kann leicht mit brew cask install amethyst installiert werden.

Hier ist die Konfigurationsdatei, die ich verwende. Es werden alle Funktionen außer Fokus-Folgen-Maus deaktiviert. Speichern Sie es in ~/.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
}
15
wprl

Das Menüproblem ist der einzige Grund, warum traditionelle Fokus-Folgen-Mäuse nicht funktionieren würden.

Hier eine Alternative: Ändern Sie den Fokus nicht, bis eine Taste auf der Tastatur gedrückt wird. Dies würde 95% der Anwendungsfälle für focus-follow-mouse abdecken und würde diesen alten curmudgeonly X-Benutzer wirklich glücklich machen. Ich weiß nicht, wie oft ich in Chrome durch eine Webseite scrolle und dann mit Befehlstaste-T eine neue Registerkarte öffnet und stattdessen die Registerkarte im Terminal öffnet. Wenn mein Gehirn dies seit acht Monaten mit einem Mac nicht erkannt hat, wird es das nie tun.

9
Kyle Rose

Ich verwende derzeit MondoMouse und selbst mit seinen Macken konnte ich meinen Mac nicht ohne benutzen. Sie haben eine kostenlose Testversion und ich würde es jedem empfehlen.

MondoMouse

8
mcotton

Also beschloss ich, meine Arbeit an MouseFocus.app, die immer noch einige Mängel hatte, noch einmal zu verbessern. Die sind jetzt behoben. Ich habe das Ganze in "AutoRaise" umbenannt, um besser darzustellen, was dieses Werkzeug bewirkt: Wenn Sie ein Fenster bewegen, wird es nach vorne (mit einer Verzögerung Ihrer Wahl) angehoben und erhält den Fokus. Das Tool kann hier heruntergeladen werden. Um es zu verwenden, kopieren Sie es in Ihren Ordner/Applications/und stellen Sie sicher, dass es ausführbar ist (chmod 700 AutoRaise). Doppelklicken Sie dann im Finder darauf. Um es schnell ein- und auszuschalten, können Sie das unten stehende Applescript verwenden und in einen Automator service - Workflow einfügen. Binden Sie dann den erstellten Dienst über Systemeinstellungen | Tastatur | Tastenkombinationen an eine Tastenkombination.

Update (29-03-2017): Die AutoRaise-Binärdatei wurde aktualisiert. Wenn in der Befehlszeile keine Verzögerung angegeben wurde, wird jetzt auch nach einer AutoRaise.delay-Datei im selben Ordner gesucht. Dies ist besonders nützlich, wenn Sie das folgende Apfelskript verwenden, da 'Anwendung starten' keine Befehlszeilenargumente unterstützt. Die Verzögerung sollte in Einheiten von 50 ms angegeben werden. Um beispielsweise eine Verzögerung von 150 ms anzugeben, führen Sie diesen Befehl einmal in einem Terminal aus: 'echo 3> 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
8
sbmpost

Codetek hatte ein Produkt, das dies tat, aber es wurde nie eine Version für Leopard oder später veröffentlicht.

MondoMouse kann sozusagen Fokus-Folgen-Maus ausführen, aber nicht automatisch erhöhen. Selbst die Fokus-Folgen-Maus ist defekt. Allerdings kann sie mit dem Befehls-Tab (falls vorhanden) nicht gut funktionieren Kommando-Tab zu einer neuen Anwendung und berühren Sie nicht die Maus, dann sollte not den Fokus zurück auf den Punkt richten, an dem sich der Mauszeiger gerade befindet richtig, aber MondoMouse nicht).

Sie können die Fokus-Folgen-Maus (keine automatische Ausrichtung) nur für Terminalfenster aktivieren (führen Sie einfach Folgendes in einem Terminal aus):

defaults write com.Apple.Terminal FocusFollowsMouse -string YES

Und ähnlich für X11-Fenster:

defaults write org.x.X11 wm_ffm -bool true 

(Für Mac-Versionen vor 10.5.5 war dies:

defaults write com.Apple.x11 wm_ffm true

)

Ich kenne keine anderen Anwendungen, die dies unterstützen.

7
dreeves

chunkwm unterstützt dies auch (standardmäßig glaube ich): chunkwm

6
asselinpaul

Interessant ist, dass Leopard standardmäßig eine Option für Fokus-Folgen-Maus (Sans Autoraise) hat. Das Scrollrad funktioniert in unscharfen Fenstern.

5
cksubs

Leider ist CodeTek Virtual Desktop Pro nicht mehr entwickelt, und das Unternehmen scheint vor einigen Jahren aus dem Geschäft gegangen zu sein.

Historische Referenz: http://www.codetek.com/ctvd/ (funktioniert nicht mit neuen OS X-Versionen!)

Historische Besprechung: http://www.osnews.com/story/6144

Mit CodeTek Virtual Desktop Pro konnten Sie Focus-Follow-Mouse abrufen und Auto-Raise deaktivieren. Außerdem gab es einen Pager für die virtuellen Desktops - ähnlich wie Fvwm unter Linux. Es hat wirklich perfekt funktioniert - die beste Software, die ich je gekauft habe ... __ Sie arbeitete konsequent mit allen Apps und wechselte Apps, verschob Fenster in verschiedene Arbeitsbereiche und navigierte in Arbeitsbereichen viel einfacher als in der Implementierung die neuesten OS X-Versionen [10.6, 10.7, 10.8]

Leider funktioniert VirtualDesktop Pro unter Mac OS X 10.5 nicht mehr und es scheint, dass Apple aktiv dafür Sorge getragen hat, dass CodeTek nicht weiter arbeitet.

Es ist traurig, dass Apple CodeTek und sein Produkt zermalmt hat - Virtual Desktop Pro war den aktuellen OS X-Arbeitsbereichen wirklich überlegen. Es funktionierte im Grunde wie Fvwm unter LINUX - superschnelle Navigation - ohne unnötige Klicks oder Mausgesten ...

Es macht mich traurig zu sehen, dass Apple das Verhalten des Fenstermanagers (Finder) vorschreibt und scheinbar keine Ersetzung von Drittanbietern für den Finder mehr zulässt.

4
Tilo

Gib DwellClick einen Versuch. Obwohl es nicht für den beabsichtigten Zweck bestimmt ist, hat das Verhalten mit dem automatischen Klicken einen Nebeneffekt, der dem automatischen Anheben oder der Fokus-Folgen-Maus ähnelt.

Ich persönlich benutze die Funktion des Linksklickens nur, wenn meine Cursorbewegung zum Stillstand kommt, aber es gibt auch ein Klicken mit Modifikatoren und einen Fenster-Zieh-Assistenten, der sehr praktisch ist.

Auch beim Surfen im Internet ist es etwas frustrierend, da Sie entweder die App deaktivieren möchten oder sich mehr darüber bewusst sind, wo sich der Cursor befindet (z. B. nicht auf Links oder Schaltflächen, die Sie nicht aktivieren möchten).

3
Ben M

Es gibt auch das verwandte Problem der Erhöhung beim Klicken. Jedes Mal, wenn ein Fenster angeklickt wird, wird unter OSX auch ein Fenster angehoben, wodurch möglicherweise andere Fenster ausgeblendet werden. Dies ist problematisch, wenn Sie mit Kopieren/Einfügen aus zwei Fenstern arbeiten, von denen eines den größten Teil des Bildschirms abdeckt. Ich möchte gerne einen globalen Notizblock (in allen Arbeitsbereichen aktiv) behalten, aus dem ich Sachen kopiert/eingefügt habe (etwa Befehle, Text, Aufgaben usw.). Dies ist eine Herausforderung unter OSX. Es wäre schön, eine Option zum Deaktivieren von Raise-on-Click zu haben.

3
sfar

Focus follows mouse ist jetzt in macOS möglich, in meinem Fall in Mojave mit chunkwm . Siehe this Stack Overflow-Antwort für eine "no autoraise" -Lösung. Autoraise wird durch Verlassen aktiviert

chunkc set ffm_disable_autoraise         0

in ~/.chunkwmrc.

2
Les Grieve

Beim Experimentieren mit diesen Optionen begann sich mein Command-Tab merkwürdig zu benehmen. Hier ist die Lösung, wie Apps wieder im Fokus stehen:

Es scheint, dass ein vorheriges Feature, nämlich die Möglichkeit, dass sich der Fensterfokus von Terminal mit der Mausbewegung ändert, in 10.6 unterbrochen wird und dazu führt, dass Befehlstaste den Fensterfokus nicht korrekt überträgt. Um das Problem zu beheben, fügen Sie einfach den folgenden Befehl in ein Terminal ein:

standardwerte schreiben com.Apple.Terminal FocusFollowsMouse -string NO

Starten Sie dann das Terminal erneut. 

1
Team Pannous

Lösung: Da ich in Windows so gerne zum Autorezieren verwendet wurde, habe ich es auf dem Mac sehr vermisst ... Die Lösung, die ich für den Mac gefunden habe, ist Zooom (ja, drei O's). Es verfügt über eine automatische Speicherfunktion. Sie können sogar Millisekunden einstellen, die vor dem automatischen Speichern warten sollen. Kann nicht ohne es leben. Autoraise ist eine Option in Prefs, wie Sie im Screenshot https://www.macupdate.com/app/mac/23203/zooomhttp://coderage-software.com/zooom sehen können /index.html

1
Gary Kaputnik

Getestete MondoMouse ( https://www.atomicbird.com/about/mac-apps ) auf MacOS Mojave. Scheint für mich gut zu funktionieren! 

Zur Installation des Prefpane wird ein Hinweis "Zugriff für Hilfsgeräte aktivieren" nicht mehr in den Systemeinstellungen> Eingabehilfen enthalten. Sie müssen es in Sicherheit & Datenschutz> Zugänglichkeit> Datenschutz einstellen.

In jeder geöffneten App wird es mehrere Warnungen geben, MondoMouse zuzulassen. Sobald dies jedoch eingestellt ist, funktioniert es einwandfrei! Was für eine Erleichterung :) 

0
MaltaCode