Вставте кодові блоки в основу електронних листів


15

Я розробник, і мені хотілося б мати можливість відрізняти блоки коду від звичайного тексту, коли я пишу електронні листи.

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

Чи є спосіб зробити це за допомогою ярлика чи макросу тощо, щоб мені не потрібно було кожного разу тягатися до миші та змінюватись як 20 атрибутів шрифту?

Відповіді:


15

Зачарування форматування на StackExchange - це чудовий сценарій Perl, який називається Markdown . Завантажте його та двічі клацніть отриманий файл Markdown_1.0.1.zip.

Потім в терміналі введіть

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

Після цього ви можете створити службу в Automator .

Служба, яку ви створюєте, отримує насичений текст у будь-якій програмі . Зніміть прапорець, у якому написано, що вихідний текст замінює вибраний текст.

Ваша послуга міститиме дві дії:

Перша дія - « Запустити сценарій оболонки» . Ось сценарій оболонки:

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

Дія вашого розділу - Запустити AppleScript . Ось AppleScript:

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

Збережіть послугу та, за бажанням, призначте її ярликом клавіатури за допомогою системних налаштувань » Клавіатура » Комбінації клавіш » Послуги

Потім ви можете ввести текст за допомогою кодів форматування, які ви використовуєте на цьому веб-сайті, і запустити цю послугу для створення форматованого тексту. Це буде працювати лише в тому випадку, якщо ваші поштові повідомлення налаштовані як Rich Text - якщо у вас є звичайні текстові повідомлення електронної пошти, запуск цієї послуги просто видалить вміст вашого повідомлення, оскільки ваш формат, відформатований службою, не зможе бути обклеєний.


1
Чистіше, ніж "рендерінг" HTML в Safari. Мені це подобається.
jaberg

На жаль, це все ще не працює для мене. Тепер я отримую "Не вдалося записати вихід", і знову схоже, що це викликано другою частиною (вставкою). Я працюю 10.6.8 з Automator 2.1.1. Я здогадуюсь, це проблема з версією.
garageàtrois

1
Якщо у когось є проблеми з налагодженням, у нас є кімната: chat.stackexchange.com/rooms/info/2830/…
jaberg

Це геніально. Для тих із вас, хто віддає перевагу реструктуризованомутексту:/path/to/rst2html.py -q --stylesheet=/create/a/style.css --embed-stylesheet | /path/to/textutil -stdin -stdout -format html -convert rtf | pbcopy
Шабіроб

Святе лайно це круто !!! Працює чудово.
Майк N

2

Якщо припустити, що вам зручно надсилати HTML-пошту, ви можете використовувати Markdown для форматування свого повідомлення електронної пошти та створення сервісу автоматизації для перетворення, рендерингу та заміни розмітки на відформатований текст.

ᔥ Райан Грей: Розмітка композиції для Mac OS X Mail

[W] капелюх, який я повинен був зробити, це зберегти HTML, створений від конверсії Markdown, до тимчасового файлу, потім відкрити, що в Safari, Safari вибрати все та скопіювати у буфер обміну (копіюючи HTML-об’єкт), а потім поштою вставити його. - заміна вибраного тексту Markdown. Отже, службовий робочий процес приймає вибраний текст, але сам не замінює виділення безпосередньо.

Інструкції щодо створення цієї послуги наведені у статті. Крім надання явного шляху до файлу markdown.pl у вашому скрипті Automator, будьте впевнені, що ви зробите markdown.pl виконуваним файлом.

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

Примітка. З кончиною Постероса зірвалася оригінальна посилання на статтю Райана Грея. Я відредагував відповідь, щоб вказати на версію, заархівовану на Інтернет-архіві Wayback Machine . ↬ Домінік за те, що я розірвав ланку.


Стаття Райана Грея вже не за адресою, вказаною тепер, коли Постероса немає. Однак Brett Terpstra має приголомшливий набір послуг OSX для Markdown !
Домінік

Так, я постійно користуюся послугами Brett's Markdown.
jaberg


1

Я знаю, що це трохи старе - ось ось оновлення. У мене був важкий час отримати цю відповідь «сек скрипт для роботи правильно.

Я встановив Markdown за допомогою варіння .

На скрипті оболонки "Передати введення:" встановлено на "як аргументи". Я мав успіх із цією варіацією сценарію оболонки:

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

AppleScript залишився колишнім.

введіть тут опис зображення


0

Я використовую такий сценарій оболонки:

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 діє як Markdown.pl і зберігає вкладки.

-inputencoding UTF-8потрібно зберегти символи, що не належать до ASCII. LC_CTYPE=UTF-8не потрібен, якщо LC_CTYPE вже встановлений на локалі UTF-8.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.