Apakah ada cara sederhana untuk menyisipkan tautan mode-org langsung dari clipboard sistem? Saya berpikir untuk memilih URL di Safari, dan menyisipkan tautan itu secara langsung dalam dokumen mode-org.
Pertanyaan Anda tidak terlalu spesifik sehubungan dengan jenis tautan apa yang Anda inginkan dan apa yang Anda anggap "sederhana". Anggap Anda maksud tautan dari formulir berikut:
[[target][description]]
alur kerja default (setelah meletakkan URL di clipboard Anda) adalah:
C-c C-lC-yRETdescriptionRET
Memasukkan descriptionadalah opsional; jika Anda tidak menentukannya, tautannya berupa
Cukup sederhana. Ini berfungsi seperti yang diharapkan pada mesin Windows, tetapi karena alasan tertentu tidak dapat menyalin / menempel URL dari Firefox atau Safari ke Emacs di MacOS dengan Emacs 25.0.50
Alain
@ Alain saya tidak di MacOS jadi saya tidak bisa mengujinya, tetapi Anda bisa mencoba menggunakan x-clipboard-yankalih-alih yankmenempelkan isi clipboard. Perintah ini tidak terikat pada kunci secara default, jadi Anda harus menyebutnya menggunakan M-x. Jika itu menyelesaikan masalah, tentu saja Anda dapat mengatur kunci yang nyaman untuk itu (via (global-set-key (kbd "C-c y") 'x-clipboard-yank)).
itsjeyd
3
Bergantung pada yang mana dari dua yang Anda sukai, berikut adalah dua fungsi yang memeriksa untuk melihat apakah ada URL di clipboard dan, jika demikian, masukkan di titik sebagai org-modetautan. Yang pertama melakukannya dalam bentuk [[url]], dan yang terakhir dalam bentuk [[url][description]]dan meninggalkan Anda di descriptionlapangan.
(defun insert-url-as-org-link-sparse ()"If there's a URL on the clipboard, insert it as an org-mode
link in the form of [[url]]."(interactive)(let((link (substring-no-properties (x-get-selection 'CLIPBOARD)))(url "\\(http[s]?://\\|www\\.\\)"))(save-match-data
(if(string-match url link)(insert (concat "[[" link "]]"))(error "No URL on the clipboard")))))(defun insert-url-as-org-link-fancy ()"If there's a URL on the clipboard, insert it as an org-mode
link in the form of [[url][*]], and leave point at *."(interactive)(let((link (substring-no-properties (x-get-selection 'CLIPBOARD)))(url "\\(http[s]?://\\|www\\.\\)"))(save-match-data
(if(string-match url link)(progn(insert (concat "[[" link "][]]"))(backward-char 2))(error "No URL on the clipboard")))))
Itu membuat permintaan HTTP ke URL dari clipboard dan jika respon berisi HTML mencoba untuk mengekstrak judul dan memasukkan link org-mode dalam format ini: [[URL][extracted-title]].
Misalnya, setelah menyalin tautan pertanyaan ini , melakukan M-x org-cliplinkdi buffer mode-org akan memasukkan:
[[https://emacs.stackexchange.com/q/3280][org mode - Orgmode insert link from clipboard? - Emacs Stack Exchange]]
Jawaban:
Pertanyaan Anda tidak terlalu spesifik sehubungan dengan jenis tautan apa yang Anda inginkan dan apa yang Anda anggap "sederhana". Anggap Anda maksud tautan dari formulir berikut:
alur kerja default (setelah meletakkan URL di clipboard Anda) adalah:
C-c C-l C-y RET
description
RETMemasukkan
description
adalah opsional; jika Anda tidak menentukannya, tautannya berupasumber
x-clipboard-yank
alih-alihyank
menempelkan isi clipboard. Perintah ini tidak terikat pada kunci secara default, jadi Anda harus menyebutnya menggunakanM-x
. Jika itu menyelesaikan masalah, tentu saja Anda dapat mengatur kunci yang nyaman untuk itu (via(global-set-key (kbd "C-c y") 'x-clipboard-yank)
).Bergantung pada yang mana dari dua yang Anda sukai, berikut adalah dua fungsi yang memeriksa untuk melihat apakah ada URL di clipboard dan, jika demikian, masukkan di titik sebagai
org-mode
tautan. Yang pertama melakukannya dalam bentuk[[url]]
, dan yang terakhir dalam bentuk[[url][description]]
dan meninggalkan Anda didescription
lapangan.sumber
Saya telah membuat paket emacs yang dapat membantu Anda memasukkan tautan mode-org dari clipboard:
org-cliplink
(juga tersedia melalui Melpa)Itu membuat permintaan HTTP ke URL dari clipboard dan jika respon berisi HTML mencoba untuk mengekstrak judul dan memasukkan link org-mode dalam format ini:
[[URL][extracted-title]]
.Misalnya, setelah menyalin tautan pertanyaan ini , melakukan
M-x org-cliplink
di buffer mode-org akan memasukkan:dan tautannya akan terlihat hyperlink sebagai mode org - Orgmode menyisipkan tautan dari clipboard? - Emacs Stack Exchange di buffer itu.
sumber