본문 바로가기

computer/sw

[EMACS] \newline replace/search

KLDP에 올린 질문
http://kldp.org/node/106695

이맥스에서 Ctrl-Alt-%(Query replace regexp)로 특정 공백라인을 삭제하려고 하는데 잘 안되어서 질문드립니다.

목적만 달성된다면 방법이 Query replace regexp일 필요는 없습니다.

소스에 다음과 같은 라인이 있습니다.

<code>
\begin{boxedverbatim}
#name : #+begin_...#+end_
# --
#+begin_$1 $2
$0
#+end_$1

\end{boxedverbatim}
</code>

여기에서 맨아래 줄(반드시\end{boxedverbatim})앞의 공백라인을 지우고 싶습니다. 
다른 공백라인은 두고요.

아 그리고 한가지 더 질문이 있는데요.
보통 html문을 긁어서 복사하면 공백라인이 들어가서 vim에서 :g/^$/d 로 공백라인을 삭제하는데
emacs에서는 어떻게 해야 할까요.

날씨가 많이 더운데 건강들 조심하세요.


생각보다 간단한 문제 였다.

Ctrl-Alt-% 후 C-q C-j C-q C-j \\end <RET> C-q C-j \\end<RET>

그럼 공백라인 지우는 것은 (vim에서 :g/^$/d)와 같은 역할은?
Ctrl-Alt-% 후 C-q C-j C-q C-j <RET> C-q C-j <RET> ! <RET>

이것을 Lisp으로 함수로 만들수는 없는가? 해보자.
먼저 영역을 선택한 후 (C-x h)
M-x flush-lines <RET> ^$ <RET>
를 수행한다.