vi 로 컴파일하는 옵션어떻게 설정하시나요?

aNsITAte의 이미지

약간 불편하게 느껴져서 지금 손좀 보려고하는데..

지금 편집중인 파일을 컴파일해서 확장자를 제외한 상태의

결과물을 얻어서 그 결과물을 자동으로 실행하게 하는

설정을 하고 싶은데 -_-;;

혹시 이렇게 설정하고 쓰시는분 계시면;;

ckebabo의 이미지

전 이렇게 설정해놓고있습니다만...

map <F5> :w<CR>:!gcc -W -Wall % -o %< && ./%<<CR>
aNsITAte의 이미지

감샤~

ckebabo wrote:
전 이렇게 설정해놓고있습니다만...

map <F5> :w<CR>:!gcc -W -Wall % -o %< && ./%<<CR>

그립다는 것은 아직도 네가 내 안에 남아 있다는 뜻이다.
그립다는 것은 지금은 너를 볼 수 없다는 뜻이다.
볼 수는 없지만 보이지 않는 내 안 어느 곳에 네가 남아 있다는 뜻이다.
-이정하의 《혼자 사랑한다는 것은》중에서-

소맛라면의 이미지

소스 코드들어 갈때마다..
ex모드( : )에 저렇게 써줘야 하는건가요???
아님 한번 정해주면 계속 사용할수 있는것인가요??

map <F5> :w<CR>:!gcc -W -Wall % -o %< && ./%<<CR>

그리고 초보라 그런데 윗 코드에 대한 설명좀 부탁드립니다.

무엇을 위해 사는가..

eungkyu의 이미지

컴파일 옵션 그런건 vim이 담당하는게 아니고 make가 담당하는 것입니다.
Makefile 잘 만들어두고 vim에선 :make 명령을 내리면 됩니다.

hokim의 이미지

wjdguddnr wrote:
소스 코드들어 갈때마다..
ex모드( : )에 저렇게 써줘야 하는건가요???
아님 한번 정해주면 계속 사용할수 있는것인가요??

map <F5> :w<CR>:!gcc -W -Wall % -o %< && ./%<<CR>

그리고 초보라 그런데 윗 코드에 대한 설명좀 부탁드립니다.


F5 function키를 누르면 :w 엔터를 쳐서 저장하고
외부에서 gcc 로 컴파일해서 실행까지 하는 것을 한꺼번에 해주는 키 맵핑입니다
소맛라면의 이미지

컴파일은 vim의 몫이 아닌것 저도 알고 있는데요,
단지 재가 알고 싶은건 저 명령어를 어디다 치는지 또는 어느 파일에 포함시키는지 그것이 궁금합니다..;;
파일을 열때마다 ex모드에 저렇게 쳐주는것은 조금은 불편함이 있지 않을까해서
두고 두고 쓸수 있는 방법을 물어본거에요..;;

무엇을 위해 사는가..

eungkyu의 이미지

wjdguddnr wrote:
컴파일은 vim의 몫이 아닌것 저도 알고 있는데요,
단지 재가 알고 싶은건 저 명령어를 어디다 치는지 또는 어느 파일에 포함시키는지 그것이 궁금합니다..;;
파일을 열때마다 ex모드에 저렇게 쳐주는것은 조금은 불편함이 있지 않을까해서
두고 두고 쓸수 있는 방법을 물어본거에요..;;

make 명령을 알아보세요.

kldp에 http://doc.kldp.org/KoreanDoc/html/GNU-Make/GNU-Make.html 와 같은 문서도 있네요

소맛라면의 이미지

Quote:
kldp에 http://doc.kldp.org/KoreanDoc/html/GNU-Make/GNU-Make.html 와 같은 문서도 있네요

감사합니다...^^

무엇을 위해 사는가..

hokim의 이미지

Makefile을 만들어놓고 :make로 컴파일을 할것을 권장하는 이유가 소스코드에 에러가 있을때 vim이 그 에러들을 찾아 그 위치로 커서를 움직이며 에러에 대한 힌트를 주기 때문입니다

마잇의 이미지

wjdguddnr wrote:
컴파일은 vim의 몫이 아닌것 저도 알고 있는데요,
단지 재가 알고 싶은건 저 명령어를 어디다 치는지 또는 어느 파일에 포함시키는지 그것이 궁금합니다..;;
파일을 열때마다 ex모드에 저렇게 쳐주는것은 조금은 불편함이 있지 않을까해서
두고 두고 쓸수 있는 방법을 물어본거에요..;;

map <F5> :w<CR>:!gcc -W -Wall % -o %< && ./%<<CR> ~/.vimrc 안에 넣어주시면 됩니다. 저 키 매핑은 Makefile까지 만들고 싶지 않은 간단한 소스 컴파일하실때 쓰셔도 좋을거 같네요. %는 현재 편집하는 파일명으로 대체 됩니다.


--
마잇

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.