Orgmode panodan bağlantı ekle?


9

Doğrudan sistem panosundan bir kuruluş modu bağlantısı eklemenin basit bir yolu var mı? Safari'de bir URL seçmeyi ve bu bağlantıyı doğrudan bir kuruluş modu belgesine eklemeyi düşünüyorum.


1
Ayrıca, yakalama kullanarak bağlantıyı otomatik olarak eklemek için bir yer işareti yapılandırmak gerçekten güzel. Buraya bakın: orgmode.org/worg/org-contrib/org-protocol.html
mbork

Yanıtlar:


12

Sorunuz, ne tür bir bağlantı istediğinizi ve neyin "basit" olduğunu düşündüğünüz konusunda çok açık değildir. Aşağıdaki formun bir bağlantısını kastettiğinizi varsayarsak:

[[target][description]]

varsayılan iş akışı (URL'yi panoya yerleştirdikten sonra):

C-c C-l C-y RET description RET

A girmek descriptionisteğe bağlıdır; birini belirtmezseniz, bağlantı formda olur

[[target]]

Yeterince basit. Bu bir Windows makinede beklendiği gibi çalışır, ancak kopyalayamazsınız nedense / Emacs 25.0.50 ile MacOS üzerinde Emacs içine Firefox veya Safari bir URL'yi yapıştırın
Alain

@Alain MacOS'ta değilim, bu yüzden test edemiyorum, ancak panonun içeriğini yapıştırmak x-clipboard-yankyerine kullanmayı deneyebilirsiniz yank. Bu komut varsayılan olarak bir anahtara bağlı değildir, bu nedenle bunu kullanarak çağırmanız gerekir M-x. Bu sorunu çözüyorsa, elbette bunun için uygun bir anahtar ciltleme ayarlayabilirsiniz (üzerinden (global-set-key (kbd "C-c y") 'x-clipboard-yank)).
itsjeyd

3

İkisinden hangisini tercih ettiğinize bağlı olarak, panoda bir URL olup olmadığını kontrol eden ve varsa, org-modebağlantı olarak bir noktaya ekleyen iki işlev vardır . Birincisi bunu [[url]], ikincisi şeklinde yapar [[url][description]]ve sizi descriptiontarlada bırakır .

(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")))))

3

Panodan kuruluş modu bağlantıları eklemenize yardımcı olabilecek bir emacs paketi oluşturdum:

Bu panodan URL'ye HTTP isteğinde bulunur ve yanıt HTML içeriyorsa o başlığı alma çalışır ve bu biçimde org-mod bağlantı ekler: [[URL][extracted-title]].


Örneğin, bu Sorunun kopyaladıktan sonra bağlantıyı yapıyor, M-x org-cliplinkekler bir org-mod tamponu içinde:

[[https://emacs.stackexchange.com/q/3280][org mode - Orgmode insert link from clipboard? - Emacs Stack Exchange]]

ve bağlantı org modu olarak köprülü görünecek - Orgmode panodan bağlantı ekle? - Bu arabellekteki Emacs Stack Exchange .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.