มีวิธีง่าย ๆ ในการแทรกลิงค์โหมดองค์กรโดยตรงจากคลิปบอร์ดของระบบหรือไม่? ฉันกำลังคิดที่จะเลือก URL ใน Safari และแทรกลิงก์นั้นลงในเอกสารโหมดองค์กรโดยตรง
มีวิธีง่าย ๆ ในการแทรกลิงค์โหมดองค์กรโดยตรงจากคลิปบอร์ดของระบบหรือไม่? ฉันกำลังคิดที่จะเลือก URL ใน Safari และแทรกลิงก์นั้นลงในเอกสารโหมดองค์กรโดยตรง
คำตอบ:
คำถามของคุณไม่เจาะจงมากนักเกี่ยวกับประเภทของลิงค์ที่คุณต้องการและสิ่งที่คุณคิดว่า "ง่าย" สมมติว่าคุณหมายถึงลิงค์ของแบบฟอร์มต่อไปนี้:
[[target][description]]
เวิร์กโฟลว์เริ่มต้น (หลังจากใส่ URL ในคลิปบอร์ดของคุณ) คือ:
C-c C-l C-y RET description
RET
การป้อน a description
เป็นทางเลือก หากคุณไม่ได้ระบุไว้ลิงค์จะอยู่ในแบบฟอร์ม
[[target]]
x-clipboard-yank
แทนที่จะyank
วางเนื้อหาของคลิปบอร์ด M-x
คำสั่งนี้จะไม่ผูกพันกับที่สำคัญโดยค่าเริ่มต้นดังนั้นคุณจะต้องเรียกว่าใช้ หากวิธีนี้แก้ปัญหาได้แน่นอนคุณสามารถตั้งค่าการเชื่อมโยงคีย์สะดวกสำหรับมัน (ผ่าน(global-set-key (kbd "C-c y") 'x-clipboard-yank)
)
นี่คือฟังก์ชันสองอย่างที่ตรวจสอบเพื่อดูว่ามี URL ในคลิปบอร์ดหรือไม่และถ้าเป็นเช่นนั้นให้แทรกที่จุดนั้นเป็นorg-mode
ลิงก์ อดีตทำในรูปแบบของ[[url]]
และหลังในรูปแบบของ[[url][description]]
และออกจากคุณในdescription
สนาม
(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")))))
ฉันได้สร้างแพ็คเกจ emacs ที่อาจช่วยคุณในการแทรกลิงก์โหมดองค์กรจากคลิปบอร์ด:
org-cliplink
(ใช้ได้ผ่าน Melpa)มันทำให้การร้องขอ HTTP ไปยัง URL จากคลิปบอร์ดและถ้าการตอบสนองมี HTML ก็พยายามที่จะดึงชื่อและแทรกลิงค์ org [[URL][extracted-title]]
โหมดในรูปแบบนี้
ตัวอย่างเช่นหลังจากคัดลอกลิงก์ของคำถามนี้การทำM-x org-cliplink
ในบัฟเฟอร์โหมดองค์กรจะแทรก:
[[https://emacs.stackexchange.com/q/3280][org mode - Orgmode insert link from clipboard? - Emacs Stack Exchange]]
และลิงค์จะดูไฮเปอร์ลิงก์เป็นโหมด org - Orgmode แทรกลิงค์จากคลิปบอร์ด? - Emacs Stack Exchangeในบัฟเฟอร์นั้น