Usa il tasto maiuscole per bloccare il tasto fn o un altro modo per bloccare il tasto fn?

2

Quello che voglio ottenere è semplice:

  • bloc maiusc on = fn bloccato ( usa i tasti funzione ).
  • caps lock off = fn unlock ( usa i tasti multimediali ).

Ho trovato un paio di argomenti su questo problema, ma le loro soluzioni non mi hanno aiutato:

  • Controllare / deselezionare l'opzione "Usa i tasti fn come standard" nel pannello delle preferenze della tastiera è ciò che voglio ottenere quando si preme / si annulla il tasto bloc maiusc .
  • Altre soluzioni, come il Functionflip o la rimappatura di strumenti di tastiera come Karabiner non sembrano essere proposte per risolvere il mio problema.

Conosci programmi o soluzioni che possono raggiungere questo obiettivo?

In caso contrario:

  • Posso assegnare un programma al tasto caps lock ? Come?
  • Posso attivare o disattivare l'opzione nel pannello delle preferenze della tastiera con uno script?
posta mperrin 24.04.2016 - 12:53
fonte

2 risposte

2

Per indirizzare l'ultimo punto del tuo post, " Posso alternare l'opzione nel pannello delle preferenze della tastiera con uno script? ", ecco il codice di AppleScript che commuta lo stato dei tasti "Usa tutti i tasti F1, F2, ecc. come tasti funzione standard" nella scheda Tastiera delle Preferenze di sistema della tastiera.

tell application "System Preferences"
    activate
    set the current pane to pane id "com.apple.preference.keyboard"
    reveal anchor "keyboardTab" of pane id "com.apple.preference.keyboard"
end tell

tell application "System Events" to tell process "System Preferences"
    click checkbox 1 of tab group 1 of window 1
end tell

quit application "System Preferences"

Nota: questo codice è stato testato sotto OS X 10.8.5. Potrebbe essere necessario modificare le versioni successive di OS X.

Potresti usare questo codice in un'applicazione AppleScript che potrebbe essere inserita nel Dock o in un flusso di lavoro del servizio Automator a cui è possibile assegnare una scorciatoia da tastiera, ecc. Se hai bisogno di aiuto, solo chiedere.

    
risposta data 24.04.2016 - 14:41
fonte
0

In realtà, se usi Karabiner Elements in ogni caso, c'è un modo più semplice per raggiungere questo obiettivo:

Sebbene sia un misto di "mondi" (Karabiner / shell / GUI) il suo fascino è che non hai bisogno di altre app per ottenerlo "scorciatoia"; -)

{ "parameters": {
          "basic.to_delayed_action_delay_milliseconds": 1000},
"from": {
          "key_code": "return_or_enter",
          "modifiers": {
                "mandatory": ["control", "shift" ] }
        },
 "to": [{"shell_command": "open -g /System/Library/¬ 
                           PreferencePanes/Keyboard.prefPane/"
                              }],
 "to_delayed_action": {
       "to_if_invoked": [                     ___
            {"key_code": "tab"},                 |   These key-codes
            {"key_code": "tab"},                 |   can be replaced
            {"key_code": "tab"},                 |   by a single osa-
            {"key_code": "tab"},                 |   script, more ele-
            {"key_code": "tab"},                 |   gantly, listed
            {"key_code": "spacebar"},            |   below !         *)
            {"key_code": "q",                    |   
             "modifiers": ["command"]},       ___| < (Easier to handle)
            {"key_code": "escape"}] },
 "type": "basic"
}
 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

(* 'tell application \"System Events\" to tell process ¬
    \"System Preferences\"\n click checkbox 1 of tab group 1 ¬
    of window 1\n end tell\n quit application \"System Preferences\"'

Come puoi vedere, la tastiera Preferenze di Sistema è aperta da un comando shell, che richiede "tempo di attesa" per i seguenti codici chiave (millisecondi: 1000).

Non ho trovato un tasto-scorciatoia per arrivare alla casella di controllo, quindi naviga per 5 "tab", una "barra spaziatrice" (= clic), chiude il prefpane e imposta una "fuga" finale ( senza di esso il mio sistema reagisce con un ritardo).
(Ho aggiunto un extra, in realtà parte di AppleScript della 1a risposta, ma adattato: \n per le interruzioni di riga, \" per le chiavi speciali.)

Ho installato un collegamento "Ctrl-Shift-Invio", puoi usare s.th. altro ...
("caps_lock" su EventViewer invia o key_down o key_up - premi due volte per cambiare stato!)

Questo codice può essere inserito manualmente nel tuo karabiner.json, o importato come una "modifica complessa" richiede un "titolo: > regole: > descrizione: > manipolatori:" -framework (ricicla uno esistente).

    
risposta data 19.10.2018 - 13:45
fonte

Leggi altre domande sui tag