In Keynote, c'è un modo per assegnare tasti di scelta rapida per selezionare caratteri specifici?


6

Sto scrivendo una serie di lezioni in cui utilizzo un carattere diverso per indicare il codice. Esiste un modo per assegnare nuovi tasti di scelta rapida / combinazioni di tasti per selezionare i due caratteri desiderati?


Dovresti accettare la risposta di jm666. È eccellente e dubito fortemente che ne avrai uno migliore.
CajunLuke,

Inoltre: se usi Eclipse come IDE, inserisce il codice copiato negli appunti in formato RTF con il carattere che usi in Eclipse e l'evidenziazione completa della sintassi oltre al normale testo normale.
CajunLuke,

@CajunLuke - è stata un'ottima risposta, ma non ha funzionato in pratica. Un'altra risposta ha funzionato direttamente. Inoltre, non ho idea di cosa sia Eclipse o perché lo utilizzerei con Keynote.
keflavich,

Risposte:


3

Non ho trovato alcun modo per modificare lo stile della selezione, ma è possibile utilizzare gli script dell'interfaccia utente per selezionare un carattere dalla barra del formato.

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

È possibile assegnare collegamenti agli script con FastScripts o creando servizi di Automator.


Almeno per me lo era pop up button 2 of window 1, ma per il resto funziona
keflavich,

11

Non conosco un modo semplice e semplice, ma (come al solito) Automator e scripting possono fornire qualche aiuto.

L'idea di base è:

  • Scrivi il testo con il carattere predefinito di Keynote.
  • Seleziona il testo
  • Premi un tasto di scelta rapida: questo eseguirà lo script di Automator e sostituirà il carattere per il testo selezionato.

quindi, per farlo funzionare:

  1. Avvia Automator.
  2. Seleziona il tipo "Servizio".
  3. In alto cambia "testo" in "rich text" e imposta la casella di controllo "Output sostituisce ...".
  4. Dalla Libreria sul lato sinistro trascina sul lato destro le seguenti azioni. (È possibile utilizzare il campo di ricerca per individuare rapidamente le azioni necessarie.)
    • "Copia negli appunti"
    • "Esegui script shell" (e seleziona la casella "Ignora l'input di questa azione" nelle Opzioni dell'azione)
    • "Ottieni contenuti dagli Appunti"

nell'azione "Esegui script shell" immettere:

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

Sostituisci Menlocon il nome del carattere desiderato e modifica la 32dimensione desiderata.

Tutto quanto sopra sembra complicato, ma è molto più veloce farlo leggendo quanto sopra. ;) Ecco come dovrebbe apparire la schermata di Automator quando hai finito con i passaggi precedenti:

Immagine

Salvare e denominare il servizio, ad esempio, come "SetMyFont". Ora hai un nuovo "Servizio", quindi diamo un'occhiata:

  • Avvia Keynote (o TextEdit o qualsiasi altro programma in cui desideri utilizzare questo servizio).
  • Seleziona del testo di cui vuoi cambiare il carattere.
  • Vai al menu: Keynote -> Servizi e seleziona il servizio precedentemente denominato, ad es. "SetMyFont".
  • Il testo selezionato ora dovrebbe apparire nel nuovo carattere.

Se il servizio funziona, ora è necessario aggiungere un tasto di scelta rapida globale per esso:

  • Vai a Preferenze di Sistema -> Tastiera -> Tasti di scelta rapida.
  • Nella scheda "Servizi", cerca il nome del tuo servizio, ad esempio "SetMyFont". Dovrebbe essere nel gruppo "Testo".
  • Seleziona la casella di controllo e aggiungi un collegamento. (vedi screenshot)

inserisci qui la descrizione dell'immagine

  • E hai finito!

Un po 'complicato da configurare, ma funziona e quando hai molto testo, puoi velocizzare un po' la formattazione.

(Qualcuno probabilmente suggerirà una soluzione molto più semplice usando AppleScript direttamente con Keynote.)

Quando hai finito il lavoro e non hai più bisogno del servizio, puoi rimuovere "SetMyFont.workflow" dalla ~/Library/Servicescasella o deselezionare la casella di controllo nel riquadro delle preferenze della tastiera.


Perché è necessario utilizzare gli Appunti nel flusso di lavoro e non usare direttamente stdin / stdout?
Cajwine,

1
Perché per alcuni motivi (non molto chiari) di apple l'azione "Script shell" accetta (e produce) solo "testo semplice" e non "rtf". Pertanto è necessario passare rtf a / dallo shell-script tramite appunti e pbcopy / pbpaste.
jm666

1
Ho funzionato su 10.7, ma cambia anche il colore del carattere. Esiste un modo per preservare tutte le ALTRE proprietà del testo e modificare SOLO il carattere?
keflavich,

1
Sfortunatamente non conosco alcuna soluzione per preservare la formattazione. Cosa è possibile fare, ottenere il testo e impostare alcune proprietà di formattazione di base - come, dimensione, nome-carattere. Con una piccola modifica è possibile impostare anche il colore, ma è necessario conoscere il codice o il nome RDB del colore.
jm666,

1
pbpaste e pbcopy non conservano i caratteri Unicode nell'ambiente predefinito di Automator. Potresti risolverlo aggiungendo export LC_CTYPE=UTF-8;all'inizio. (Terminale e iTerm hanno impostato LC_CTYPE su UTF-8 per impostazione predefinita.)
Lri

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.