Inserisci i blocchi di codice nel corpo delle e-mail


15

Sono uno sviluppatore e mi piacerebbe essere in grado di distinguere i blocchi di codice dal testo normale, quando scrivo e-mail.

Basically I wanna be able to do this. In the Mail app, (or Sparrow!).

Esiste un modo per farlo con una scorciatoia, o una macro, ecc. In modo che non debba raggiungere il mouse ogni volta e cambiare come 20 attributi del carattere?

Risposte:


15

La magia dietro la formattazione su StackExchange è un ottimo script perl chiamato Markdown . Scaricalo e fai doppio clic sul file Markdown_1.0.1.zip risultante.

Quindi, nel terminale, digitare

chmod a+x ~/Downloads/Markdown_1.0.1/Markdown.pl
sudo cp ~/Downloads/Markdown_1.0.1/Markdown.pl /usr/local/bin/

Una volta fatto ciò, è possibile creare un servizio in Automator .

Il servizio creato riceve rich text in qualsiasi applicazione . Deseleziona la casella che dice Output sostituisce il testo selezionato.

Il tuo servizio conterrà due azioni:

La prima azione è Esegui script shell . Ecco lo script della shell:

/usr/local/bin/Markdown.pl | /usr/bin/textutil -stdin -stdout -format html -convert rtf | /usr/bin/pbcopy

L'azione della sezione è Esegui AppleScript . Ecco l'AppleScript:

tell application "System Events"
    keystroke "v" using {command down}
end tell

Salvare il servizio e, se lo si desidera, assegnargli una scorciatoia da tastiera usando Preferenze di Sistema » Tastiera » Scorciatoie da tastiera » Servizi

Quindi, è possibile digitare il testo utilizzando i codici di formattazione utilizzati in questo sito ed eseguire questo servizio per generare testo formattato. Funzionerà solo se i tuoi messaggi di posta sono impostati come Rich Text - se hai messaggi in chiaro, l'esecuzione di questo servizio cancellerà semplicemente il contenuto del tuo messaggio, dato che il tuo rich text formattato dal servizio non sarà in grado di incollato.


1
Più pulito del "rendering" dell'HTML in Safari. Mi piace.
Jaberg,

Purtroppo, questo non funziona ancora per me. Ora ricevo "Impossibile scrivere l'output" e di nuovo sembra che sia causato dalla seconda parte (incolla). Sono in esecuzione 10.6.8 con Automator 2.1.1. Immagino sia un problema di controllo delle versioni.
garageàtrois,

1
Se qualcuno ha problemi di debug, abbiamo una stanza: chat.stackexchange.com/rooms/info/2830/…
jaberg

È brillante. Per quelli di voi che preferiscono il testo ricostruito:/path/to/rst2html.py -q --stylesheet=/create/a/style.css --embed-stylesheet | /path/to/textutil -stdin -stdout -format html -convert rtf | pbcopy
Shabbyrobe

Santa merda, questo è fantastico !!! Funziona perfettamente.
Mike N

2

Supponendo che tu abbia dimestichezza con l'invio di posta HTML, potresti usare Markdown per formattare il tuo messaggio e-mail e creare un servizio di automazione per convertire, renderizzare e sostituire il tuo markdown con testo formattato.

ᔥ Ryan Gray: Markdown Compose per Mac OS X Mail

[W] il cappello che dovevo fare era salvare l'HTML generato dalla conversione di Markdown in un file temporaneo, quindi aprirlo in Safari, fare in modo che Safari selezionasse tutto e copiasse negli appunti (copiando un oggetto HTML), quindi Mail lo incollasse - sostituzione del testo Markdown selezionato. Pertanto, il flusso di lavoro del servizio accetta il testo selezionato, ma non sostituisce direttamente la selezione.

Le istruzioni per la creazione di questo servizio sono fornite nell'articolo. Oltre a fornire un percorso esplicito al file markdown.pl nello script di Automator, assicurati di rendere markdown.pl un file eseguibile.

chmod a+x your/path/to/markdown.pl

Nota: con la scomparsa di Posterous, il collegamento originale all'articolo di Ryan Gray si interruppe. Ho modificato la risposta per indicare una versione archiviata in The Internet Archive Wayback Machine . ↬ Dominique per aver portato il collegamento interrotto alla mia attenzione.


L'articolo di Ryan Gray non è più all'indirizzo indicato ora che Posterous non c'è più. Tuttavia, Brett Terpstra ha un fantastico set di servizi OSX per Markdown !
Dominique,

Sì, utilizzo costantemente i Markdown Services di Brett.
Jaberg,


1

So che questo è un po 'vecchio, quindi ecco un aggiornamento. Ho avuto difficoltà a far funzionare correttamente lo script di shell di quella risposta .

Avevo installato Markdown tramite brew .

Sullo script della shell "Passa input:" impostato su "come argomenti". Ho avuto successo con questa variazione sullo script della shell:

/usr/local/bin/markdown <( echo "$1" ) | /usr/bin/textutil -stdin -stdout -convert rtf -format html | /usr/bin/pbcopy

AppleScript è rimasto lo stesso.

inserisci qui la descrizione dell'immagine


0

Uso uno script di shell come questo:

echo "<style>
$(cat /Applications/Marked.app/Contents/Resources/swiss.css |
sed 's/&/&amp;/g;s/</\&lt;/g;s/>/\&gt;/g')
</style>
$(cat | pandoc --strict -p)" |
textutil -stdin -stdout -inputencoding UTF-8 -format html -convert rtf |
LC_CTYPE=UTF-8 pbcopy

pandoc --strict -p si comporta come Markdown.pl e conserva le schede.

-inputencoding UTF-8è necessario per conservare i caratteri non ASCII. LC_CTYPE=UTF-8non è necessario se LC_CTYPE è già impostato su una locale UTF-8.

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.