Chèn khối mã vào phần thân của email


14

Tôi là một nhà phát triển và tôi muốn có thể phân biệt các khối mã với văn bản thông thường, khi tôi viết email.

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

Có cách nào để làm việc này không với một phím tắt, hoặc macro, vv để tôi không phải tiếp cận chuột mỗi lần và thay đổi như 20 thuộc tính phông chữ?

Câu trả lời:


15

Điều kỳ diệu đằng sau định dạng trên StackExchange là một tập lệnh perl tuyệt vời được gọi là Đánh dấu . Tải xuống và nhấp đúp vào tệp Markdown_1.0.1.zip kết quả.

Sau đó, trong thiết bị đầu cuối, gõ

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

Khi bạn đã hoàn thành, bạn có thể tạo Dịch vụ trong Máy tự động .

Dịch vụ bạn tạo nhận được văn bản phong phú trong bất kỳ ứng dụng . Bỏ chọn hộp nói Đầu ra thay thế văn bản đã chọn.

Dịch vụ của bạn sẽ chứa hai hành động:

Hành động đầu tiên là Chạy Shell Script . Đây là kịch bản shell:

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

Phần hành động của bạn là Chạy AppleScript . Đây là AppleScript:

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

Lưu dịch vụ và, nếu bạn muốn, gán cho nó một phím tắt bằng cách sử dụng Tùy chọn hệ thống » Bàn phím » Các phím tắt bàn phím » Dịch vụ

Sau đó, bạn có thể nhập văn bản bằng mã định dạng bạn sử dụng trên trang web này và chạy dịch vụ này để tạo văn bản có định dạng. Điều này sẽ chỉ hoạt động nếu thư của bạn được thiết lập là Văn bản phong phú - nếu bạn có tin nhắn thư văn bản đơn giản, việc chạy dịch vụ này sẽ chỉ xóa nội dung thư của bạn, vì văn bản phong phú của bạn được định dạng bởi dịch vụ sẽ không thể được dán.


1
Sạch hơn "kết xuất" HTML trong Safari. Tôi thích nó.
jaberg

Đáng buồn thay, điều này vẫn không làm việc cho tôi. Bây giờ tôi nhận được "Không thể ghi đầu ra" và một lần nữa có vẻ như đó là do phần thứ hai (dán). Tôi đang chạy 10.6.8 với Automator 2.1.1. Tôi đoán đó là một vấn đề phiên bản.
garageàtrois

1
Nếu bất cứ ai có vấn đề gỡ lỗi, chúng tôi có một phòng: chat.stackexchange.com/rooms/info/2830/
jaberg

Điều này thật tuyệt vời. Dành cho những bạn thích tái cấu trúc: /path/to/rst2html.py -q --stylesheet=/create/a/style.css --embed-stylesheet | /path/to/textutil -stdin -stdout -format html -convert rtf | pbcopy
Shabbyrobe

Holy crap này là mát mẻ !!! Hoạt động hoàn hảo.
Mike N

2

Giả sử bạn thoải mái gửi thư HTML bạn có thể sử dụng Đánh dấu để định dạng thông điệp email của bạn và tạo một dịch vụ tự động hóa để chuyển đổi, kết xuất và thay thế đánh dấu của bạn bằng văn bản được định dạng.

ᔥ Ryan Gray: Markdown Compose cho Mac OS X Mail

Tôi phải làm là lưu HTML được tạo từ chuyển đổi Markdown thành tệp tạm thời, sau đó mở nó trong Safari, để Safari chọn tất cả và sao chép vào bảng tạm (sao chép một đối tượng HTML), sau đó có Mail dán - thay thế văn bản Markdown đã chọn. Vì vậy, quy trình dịch vụ lấy văn bản đã chọn, nhưng bản thân nó không thay thế lựa chọn trực tiếp.

Hướng dẫn tạo dịch vụ này được cung cấp trong bài viết. Ngoài việc cung cấp một đường dẫn rõ ràng đến tệp markdown.pl trong tập lệnh Automator của bạn, hãy chắc chắn rằng bạn tạo markdown.pl một tệp thực thi.

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

Chú thích: Với sự sụp đổ của Posterous, liên kết ban đầu đến bài viết của Ryan Gray đã bị phá vỡ. Tôi đã chỉnh sửa câu trả lời để trỏ đến một phiên bản được lưu trữ tại Máy lưu trữ Internet Wayback . ↬ Thống lĩnh đã mang đến sự liên kết bị hỏng để tôi chú ý.


Bài viết của Ryan Gray không còn ở địa chỉ được đưa ra mà Posterous đã biến mất. Tuy nhiên, Brett Terpstra có một tuyệt vời bộ dịch vụ OSX cho Markdown !
Dominique

Có, tôi sử dụng Dịch vụ Markdown của Brett liên tục.
jaberg


1

Tôi biết cái này hơi cũ - vì vậy đây là bản cập nhật các loại. Tôi đã có một thời gian khó khăn để có được câu trả lời đó Kịch bản shell của nó hoạt động chính xác.

Tôi đã cài đặt Markdown qua pha .

Trên tập lệnh shell "Pass input:" được đặt thành "as argument". Tôi đã thành công với biến thể này trên kịch bản shell:

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

AppleScript vẫn giữ nguyên.

enter image description here


0

Tôi sử dụng một kịch bản shell như thế này:

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 hoạt động như Markdown.pl và bảo tồn các tab.

-inputencoding UTF-8 là cần thiết để bảo tồn các ký tự không phải ASCII. LC_CTYPE=UTF-8 không cần thiết nếu LC_CTYPE đã được đặt thành ngôn ngữ UTF-8.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.