Why demand t in use-package and introduce org-rich-yank

사용 중인 패키지를 요구하고 조직이 풍부한 양크를 도입하는 이유

왜 demand 가 필요한가? 관심이 없었다면 여기서 짚고 가자. 현재 버퍼에 미리 로딩이 되어 있어야 하기 때문이다. 그래야 저장해놓을 것을 넣지 않겠는가?!

Demand Sample

(use-package org-rich-yank
  :ensure t
  :demand t
  :bind (:map org-mode-map
              ("C-M-y" . org-rich-yank)))

The :demand t in there is because we never know when the user will hit C-M-y, so we always have to store the current buffer on kills. You can remove the :demand t and have lazy/deferred loading, but then the first time you hit C-M-y after startup, you’ll get a message that you have to kill the selection again.

:demand t 는 사용자가 언제 C-M-y 을 클릭할지 모르기 때문에 항상 현재 버퍼를 킬에 저장해야 하기 때문입니다. :demand t 을 제거하고 지연/지연 로딩을 설정할 수 있지만, 시작 후 C-M-y 을 처음 누르면 선택 항목을 다시 죽여야 한다는 메시지가 표시됩니다.

org-rich-yank 무엇인가?

[2023-11-08 Wed 12:58]

코드를 조직 모드 글에 복붙 할 때, 자동으로 블록 만들어 주고, 파일 링크 만들어 준다. 아래는 커스텀 링크 적용 예이다. 잘 된다.

(defun jh-org/post-init-org-rich-yank ()
  ;; https://github.com/unhammer/org-rich-yank If you want to change how the
  ;; source block or link is formatted, you can do so by setting
  ;; org-rich-yank-format-paste to a function. For example, links to local files
  ;; might be useful in your org document but not so useful in exported content,
  ;; so you may want to make such a link a comment line.
 
  ;; 소스 블록 또는 링크의 서식을 변경하려면 org-rich-yank-format-paste 을 함수로
  ;; 설정하여 변경할 수 있습니다. 예를 들어 로컬 파일에 대한 링크는 조직
  ;; 문서에서는 유용하지만 내보낸 콘텐츠에서는 유용하지 않을 수 있으므로 이러한
  ;; 링크를 주석 줄로 만들 수 있습니다.
  (defun my/org-rich-yank-format-paste (language contents link)
    "Based on `org-rich-yank--format-paste-default'."
    (format "#+BEGIN_SRC %s\n%s\n#+END_SRC\n#+comment: %s"
            language
            (org-rich-yank--trim-nl contents)
            link))
  (customize-set-variable 'org-rich-yank-format-paste #'my/org-rich-yank-format-paste)
  )

#참고자료

Related-Notes

References