web-dev-qa-db-fra.com

Création de raccourci clavier ou de raccourci clavier pour coller une phrase de texte spécifique sous Mac OSX

J'ai une phrase de texte (en fait, plusieurs phases) que j'utilise fréquemment dans plusieurs applications. J'aimerais créer un raccourci clavier ou un raccourci clavier qui permettra de coller cette phrase de texte partout où j'ai placé mon curseur dans un champ de saisie de texte (Apple Mail, Microsoft Word, TextEdit, TextWrangler, les fenêtres du navigateur, etc.) coller d'un pense-bête.

Je préférerais ne pas avoir à acheter d'applications (il semblerait que Keyboard Maestro possède cette fonctionnalité, mais il semble ridicule de payer 36 $ rien que pour cela), même si des applications gratuites conviendraient. J'ai essayé de regarder sous Préférences Système> Clavier> Raccourcis clavier, mais pas de solution évidente, et tous les AppleScripts que j'ai trouvés semblent ne pas traduire correctement pour moi. J'ai trouvé d'autres solutions à ce problème sur ce forum pour les utilisateurs Windows (comme AutoHotKey) mais aucune pour les utilisateurs Mac.

19
Ruthie

Le moyen le plus simple de taper du texte avec un AppleScript consiste à exécuter:

tell application "System Events" to keystroke "foo bar"

Vous pouvez déclencher cela avec un raccourci clavier en créant un nouveau service dans Automator. Configurez-le pour recevoir aucune entrée , puis faites glisser Exécuter AppleScript à partir du volet de gauche à droite.

Ça devrait ressembler à ça:

Enregistrez-le, puis attribuez un raccourci clavier à ce service sous Préférences Système "Clavier" Raccourcis clavier .

16
slhck

La commande keystroke ne peut être utilisée que pour insérer des caractères trouvés dans la disposition de clavier actuelle, et il existe un délai visible pour les longues chaînes de texte. Vous pouvez également insérer du texte directement:

Cette méthode n'est pas vraiment utilisable non plus. Il existe un bogue sur 10.7 et 10.8 dans lequel les raccourcis des services Automator ne fonctionnent pas toujours tant que vous ne passez pas la souris sur le menu des services.

J'ai utilisé FastScripts pour affecter ce script à F3:

try
    set old to the clipboard as record
end try
try
    tell application "System Events"
        key code 123 using {option down, shift down}
        keystroke "c" using command down
    end tell
    delay 0.05
    set input to the clipboard
    read POSIX file "/Users/lauri/Notes/snippets.txt" as «class utf8» using delimiter linefeed
    repeat with p in result
        considering case
            if p starts with (input & " ") then
                set the clipboard to text ((offset of space in p) + 1) thru -1 of p
                tell application "System Events" to keystroke "v" using command down
                delay 0.05
                exit repeat
            end if
        end considering
    end repeat
end try
try
    set the clipboard to old
end try

snippets.txt ressemble à ceci:

m [email protected]
cmd ⌘

Une autre option consiste à utiliser DefaultKeyBinding.dict . Cela ferait que ⌥M ou ⌥X et m insèrent une adresse email:

{
    "~m" = (insertText:, "[email protected]");
    "~x" = {
        "m" = ("insertText:", "[email protected]");
    };
}

Vous pouvez également ajouter un texte personnalisé aux fenêtres contextuelles affichées lorsque vous maintenez les touches. Voir cette question .

6
Lri

Recherchez une application appelée "Textexpander" qui vous donne la possibilité de définir des expressions textuelles telles que @ dd qui, une fois typées, sera étendue à la définition contenu - dans ce cas, la date réelle.

Autant que je sache, c'est un shareware. Ce n'est donc pas réellement gratuit, mais le mode démo n'est pas limité dans le temps.

2
heiglandreas

L'application Alfred vous permet de le faire - ainsi que de nombreuses autres choses - en utilisant les fonctionnalités de flux de travail et d'extraits de code. J'utilise Alfred tout le temps et le recommande vivement. Pour déverrouiller les flux de production, vous devez payer pour une licence Powerpack, mais vous ne le regretterez pas. ????

1
mklbtz

Cliquez simplement sur: Préférences Système, Clavier, Texte, puis entrez votre raccourci et votre phrase.

1
Jonathan Huie

Un clavier séparé appelé le clavier martien tiendra des chaînes de texte telles que des phrases et même des paragraphes courts. Cela vous évitera de taper, jour après jour, des frappes nuisibles gênantes. Les touches fonctionnent comme des touches "coller". Il est capable de stocker tous les raccourcis dans Word sur un seul clavier, en utilisant les touches de calque de décalage. C'est principalement pour un usage professionnel, donc c'est un peu cher.

0
Rick