Dans Keynote, existe-t-il un moyen d'assigner des touches de raccourci pour sélectionner des polices spécifiques?

6

J'écris une série de conférences où j'utilise une police différente pour indiquer le code. Est-il possible d'assigner de nouvelles touches de raccourci / combinaisons de touches pour sélectionner les deux polices que je veux?

Keflavich
la source
Vous devriez accepter la réponse de jm666. C'est excellent et je doute fort que vous en obtiendriez un meilleur.
CajunLuke
De plus, si vous utilisez Eclipse en tant qu'EDI, il place le code copié dans le Presse-papiers en texte enrichi avec la police utilisée dans Eclipse et la coloration syntaxique complète en plus du texte brut normal.
CajunLuke
@CajunLuke - c'était une excellente réponse, mais cela n'a pas fonctionné dans la pratique. Une autre réponse a fonctionné directement. De plus, je n'ai aucune idée de ce qu'est Eclipse ni de la raison pour laquelle je l'utiliserais avec Keynote.
keflavich

Réponses:

3

Je n'ai trouvé aucun moyen de modifier le style de la sélection, mais vous pouvez utiliser les scripts de l'interface utilisateur pour sélectionner une police dans la barre de format.

tell application "System Events" to tell process "Keynote"
    tell pop up button 1 of window 1
        click
        click menu item "Menlo" of menu 1
    end tell
end tell

Vous pouvez attribuer des raccourcis aux scripts avec FastScripts ou en créant des services Automator.

Lri
la source
Pour moi du moins, ça l'était pop up button 2 of window 1, mais sinon ça marche
keflavich
11

Je ne connais aucun moyen simple, mais (comme d'habitude), Automator et les scripts peuvent vous aider.

L'idée de base est:

  • Vous écrivez le texte avec la police par défaut de Keynote.
  • Sélectionnez le texte.
  • Appuyez sur une touche de raccourci - ceci exécutera le script Automator et remplacera la police pour le texte sélectionné.

alors, pour que cela fonctionne:

  1. Démarrer Automator.
  2. Sélectionnez le type "Service".
  3. Dans la partie supérieure, remplacez "texte" par "texte enrichi" et cochez la case "La sortie remplace…".
  4. Depuis la bibliothèque sur le côté gauche, faites glisser les actions suivantes vers le côté droit. (Vous pouvez utiliser le champ de recherche pour localiser rapidement les actions nécessaires.)
    • "Copier dans le presse-papier"
    • "Run Shell Script" (et cochez la case "Ignorer l'entrée de cette action" dans les Options de l'action)
    • "Récupérer le contenu du presse-papier"

dans l'action "Run Shell Script", entrez:

pbpaste -Prefer rtf | textutil -stdin -convert rtf -font 'Menlo' -fontsize 32 -stdout | pbcopy

Remplacez-le Menlopar le nom de police souhaité et remplacez-le 32par la taille souhaitée .

Tout ce qui précède semble compliqué, mais il est beaucoup plus rapide de le faire en lisant ce qui précède. ;) Voici à quoi votre écran Automator devrait ressembler lorsque vous avez terminé les étapes ci-dessus:

image

Enregistrez et nommez le service, par exemple, en tant que "SetMyFont". Maintenant que vous avez un nouveau "Service", regardons-le:

  • Lancez Keynote (ou TextEdit ou le programme dans lequel vous souhaitez utiliser ce service).
  • Sélectionnez du texte dont vous voulez changer la police.
  • Allez dans le menu: Keynote -> Services et sélectionnez le service précédemment nommé, par exemple "SetMyFont".
  • Le texte sélectionné doit maintenant apparaître dans la nouvelle police.

Si le service fonctionne, vous devez maintenant ajouter un raccourci clavier global:

  • Allez dans Préférences Système -> Clavier -> Raccourcis clavier.
  • Dans l'onglet "Services", recherchez le nom de votre service, par exemple "SetMyFont". Il devrait être dans le groupe "Texte".
  • Cochez la case et ajoutez un raccourci. (voir capture d'écran)

entrez la description de l'image ici

  • Et tu as fini!

Un peu compliqué à configurer, mais cela fonctionne et quand vous avez beaucoup de texte, cela peut accélérer un peu le formatage.

(Quelqu'un suggérera probablement une solution beaucoup plus simple utilisant AppleScript directement avec Keynote.)

Lorsque vous avez terminé et que vous n'avez plus besoin du service, vous pouvez supprimer le flux de travail "SetMyFont.work" de la ~/Library/Servicesou décocher cette case dans le volet des préférences de clavier.

jm666
la source
Pourquoi faut-il utiliser le Presse-papiers dans le flux de travail sans utiliser directement stdin / stdout?
Cajwine
1
Parce que pour certaines raisons (pas très claires) d’Apple, l’action "Shell script" accepte (et produit) uniquement du "texte brut" et non "rtf". Par conséquent, il faut passer rtf vers / depuis le shell-script via le presse-papier et pbcopy / pbpaste.
Jm666
1
Je l'ai fait fonctionner sur 10.7, mais cela change également la couleur de la police. Existe-t-il un moyen de conserver toutes les propriétés de texte OTHER et de modifier UNIQUEMENT la police?
Keflavich
1
Malheureusement, je ne connais aucune solution qui préserve la mise en forme. Ce qu'il est possible de faire, obtenir le texte et définir certaines propriétés de formatage de base - telles que la taille, le nom de la police. Avec une petite modification, vous pouvez également configurer la couleur, mais vous devez connaître le nom ou le code RDB de la couleur.
Jm666
1
pbpaste et pbcopy ne conservent pas les caractères Unicode dans l'environnement par défaut d'Automator. Vous pouvez résoudre ce problème en ajoutant export LC_CTYPE=UTF-8;au début. (Le terminal et l'iTerm définissent LC_CTYPE sur UTF-8 par défaut.)
Lri
3

Pas par défaut, mais selon la page de raccourci Keynote d’ Apple, vous pouvez utiliser:

Copier le style de paragraphe Option-Commande-C

Coller le style de paragraphe Option-Commande-V

Mieux que rien, j'espère.

da4
la source