답변:
Filling 의 수동 노드에 따르면 일부 채우기 기능은 사용할 수있는 선택적 JUSTIFY 인수를 사용합니다. 예를 들어 단락을 타당하게 채우려면을 사용할 수 있습니다 (fill-paragraph 'right)
.
(justify-current-line 'right)
한 줄에 사용할 수도 있습니다 .
이러한 옵션을 많이 사용하려는 경우 다음과 같은 기능으로 해당 옵션을 래핑 한 다음이 기능을 선택한 키에 바인딩 할 수 있습니다.
(defun right-justify-current-line ()
"Right-justify this line."
(interactive)
(justify-current-line 'right))
(defun right-fill-paragraph ()
"Fill paragraph with right justification."
(interactive)
(fill-paragraph 'right))
다음은로 대체 할 수있는 함수입니다 fill-paragraph
. 다양한 접두사를 사용하면 채우는 단락에 어떤 종류의 타당성을 사용할지 결정할 수 있습니다.
(defun fill-paragraph-dwim (&optional arg)
"Fills the paragraph as normal with no prefix. With C-u,
right-justify. With C-u C-u, center-justify. With C-u C-u C-u,
full-justify."
(interactive "p")
(fill-paragraph (cond ((= arg 4) 'right)
((= arg 16) 'center)
((= arg 64) 'full))))
오른쪽 정렬을 할 때 채우지 않으려면 다음 기능을 사용하면 center-region
한 줄 변경으로 함수 에서 직접 크립하여 대신 올바르게 정렬 할 수 있습니다.
(defun right-region (from to)
"Right-justify each nonblank line starting in the region."
(interactive "r")
(if (> from to)
(let ((tem to))
(setq to from from tem)))
(save-excursion
(save-restriction
(narrow-to-region from to)
(goto-char from)
(while (not (eobp))
(or (save-excursion (skip-chars-forward " \t") (eolp))
;; (center-line)) ; this was the original code
(justify-current-line 'right)) ; this is the new code
(forward-line 1)))))