vi 에서 주석 처리에 관한 ...

익명 사용자의 이미지

vi를 사용하다 보면, 아래 10 줄을 주석처리

# ..
# ..
# ..
# ..
# ..
# ..

이런 식으로 주석처리를 한번에 해야할 경우가 있는데
이때 정규표현식으로 처리할 수 있나요?
전 지금까지 일일이 다 했거든요 --;
또 연속된 주석을 지우는 방법도 궁금합니다.

익명 사용자의 이미지

주석 붙이기..

1,20 s/^/#/g

1~20 line 주석 붙이기..

20,$ s/^#//g

20~마지막 라인 주석 지우기입니다..

익명 사용자의 이미지

vi 의 매크로 기능을 이용하면 쉽게 한줄을 주석처리할 수 있습니다.

map I/*A*/

이런 식으로 하면 (잘 기억이 나지는 않지만.. -_-;) ctrl+g 키로

/* ......... */ 이렇게 주석처리해주는 매크로가 만들어집니다.

익명 사용자의 이미지

vim script로 만들어져 있습니다.

(물론 search&replace를 써도 되지만, script만은 못하죠)

http//vim.sourceforge.net/scripts/script.php?script_id=23

저는 crt를 써서 접속해서 쓰는데, alt+c가 안되길래(왜 안되는지는
잘..^^;)

ctrl+c로 mapping해서 쓰고 있습니다.

익명 사용자의 이미지

음... 아래 소개된 방법으로 부터 완전히 새로운 방법은 아닙니다.

정규식 표현과 visual을 이용하는 방법도 있습니다.

우선 visual로 자신이 주석처리 하고자 하는 부분을 선택합니다.

그다음 ''을 타이핑하게 되면 ex모드가 됩니다.

'<,'>

그러면 iron*님이 말씀하신 방법을 사용할 수 있습니다.

'<,'>s/^/# \0/

'#'은 자신이 편집하고 있는 글에따라 달라질 수 있겠죠. 쉘에서 '#' C++에서는 '//'정도가 되겠죠?

/* 주석입니다. */
/* 이것도 주석이죠. */

와 같은 것을 비슷한 방법으로 이렇게 처리합니다.

'<,'>s/^.*/\/ \0 *\//

혹은

'<,'>s,^.*,/* \0 */,

그런데 이런 형식의 주석이 또 탐이 나죠?

/* 여러줄에 걸친
주석 말입니다.
이런 것은? */

사실 이건 한번에 처리되는 것은 아닙니다.
우선 비주얼로 선택을 하시고 ESC키를 누릅니다.

그 다음에 두번 명령을 내립니다.
' '>s,^.*,\0 */,
또 이런 주석은 어떤지요..

/* 헉 별걸 다하는 군요.. ^^;;
* 이렇게 되는 것도 괜찮더군요
* 그래서 한번 해봤습니다.
*/

이번에는 map을 이용해보았습니다.

map '`>o */k$mn`

visual을 선택하고 Ctrl+c로 명령을 주시면됩니다.

마지막으로 주석 제거는...

비슷한 방법으로 ㅡ.ㅡ;;

익명 사용자의 이미지

-.-a

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.