Bagaimana cara menyalin tautan ke pesan Mail.app tanpa menggunakan seret-dan-jatuhkan?

8

Saya menyimpan jurnal harian, dan saya suka memiliki tautan ke pesan email, klien email saya adalah Mail.app di OSX. Saya dapat menarik dan melepas tautan ke program jurnal saya (VoodooPad), tetapi saya benar-benar lebih suka menyalin dan menempelkannya, jadi saya memiliki tautan yang terlihat seperti pesan: //%3C30533360.1931252053580.bla.bla.bla.

Apakah ada cara mudah untuk mendapatkan tautan dalam format ini dari Mail.app?

Lorin Hochstein
sumber

Jawaban:

9

Berdasarkan tanggapan splattne, dan entri macosxhints ini , saya menemukan cara untuk melakukannya. Sekarang, itu hanya masalah menggunakan sesuatu seperti Quicksilver dari FastScripts untuk mengikatnya ke pintasan keyboard.

tell application "Mail"
  set selectedMessages to selection
  set theMessage to item 1 of selectedMessages  
  set messageid to message id of theMessage
    -- Make URL (must use URL-encoded values for "<" and ">")
  set urlText to "message://" & "%3c" & messageid & "%3e"  
  set the clipboard to (urlText)     
end tell
Lorin Hochstein
sumber
1
Ini juga berfungsi di OS X Mavericks di mana fungsi seret & lepas tampaknya menjadi hit & miss.
Rafael Bugajewski
0

Bukan jawaban untuk pertanyaan yang sudah Anda jawab sendiri, tetapi hanya untuk arsip:

Setelah seseorang menyimpan file dari situs web atau pesan email, seseorang dapat menggunakan Dapatkan Info di Pencari untuk menemukan dari mana file itu berasal . Untuk lampiran email ini menunjukkan pesan Pengirim, Subjek dan URL yang merujuk pada pesan itu.

Alih-alih Dapatkan Info, seseorang juga dapat menggunakan baris perintah untuk mendapatkan informasi:

mdls -name kMDItemWhereFroms <filename>

Dengan menggunakan openperintah, URL tersebut akan membuat OS X mengaktifkan aplikasi default, sama seperti itu akan mengaktifkan TextEdit untuk file teks. Untuk message:URL, Mail.app akan diluncurkan untuk menampilkan pesan (jika masih ada).

Dikombinasikan dengan beberapa AppleScript dari komentar di tautan di atas:

on open these_items 
   set first_item to item 1 of these_items 
   set full_path to quoted form of POSIX path of first_item 

   set cmd to ¬ 
      "/usr/bin/mdls -name kMDItemWhereFroms " & ¬ 
      full_path & " | grep 'http:\\|https:\\|message:' | xargs open" 
   do shell script cmd 
end open

Rekatkan AppleScript di atas dalam Editor Skrip dan simpan sebagai Aplikasi, dengan opsi Jalankan Saja . Sekarang, ketika menyeret file apa pun ke aplikasi itu, sumber akan dibuka, jika berlaku. Saya jelas bukan ahli AppleScript, dan di atas tidak melakukan penanganan kesalahan, hanya mengambil file pertama ketika beberapa file dijatuhkan ke aplikasi, dan tidak mendukung direktori. Tapi ada yang tahu, kurasa.

(Garis miring terbalik di http:\\atas disengaja, dan tidak boleh dibaca //. Script mencari http:, https:atau message:. Dengan kata lain: http://garis miring tidak dimaksudkan untuk menjadi bagian dari , tetapi bersama-sama membentuk garis miring terbalik, untuk menghindari karakter pipa dalam grepperintah .)

Arjan
sumber