vi편집기로 코딩할때 컬러로 나오는 방법점알려주세요

nidle의 이미지

안녕하세요. vi편집기사용할때 환경설정이나 c코딩할때 컬러로 나오게 하는 방법을 알고싶습니다
/etc/vimrc파일도 편집해보구 이곳저곳 알아봤는데 잘안되더라구요,
이상한건 일반계정으로 들어가면 컬러로 나오는데 유독 root계정으로 들어가면 흑백으로 나옵니다.
fedora4사용하고 있습니다. 어떤분은 vi 와 vim하고 는 다른거라는데 vimrc가 vi편집기 환경설정파일 아닌가요

pynoos의 이미지

:syntax on
을 했는데도 그렇다면,
shell 상에서 확인할 수 있는 TERM 환경변수가 다르기 때문일 것입니다.

sh.의 이미지

리눅스에 포함된거면 vi가 아니라 vim일겁니다
/etc/vimrc 는 전역설정파일이고요
홈디렉토리에 .vimrc (~/.vimrc)를 만드시면 그 계정에만 적용됩니다
pynoos님 답변대로 :syn on 하셔도 안나오면
셸에서 echo $TERM 하셔서 터미널환경변수를 확인해보세요
~/.bashrc 에서 변경해주시면 아마 될겁니다.

nidle의 이미지

일반유저상태와 root계정의 환경변수 모두
echo $TERM결과
xterm 으로 나왔습니다
홈디렉토리에 모두 .vimrc파일은 없구요
다만 다른게 있다면 일반유저 홈에는 .viminfo가 있더라구요
etc에있는 파일은 전역이니 일반계정하고 똑같이 나와야되는거 같은데
root계정은 안되네요, 일반계정은 :syn on/off가 먹히는데
root계정은 별반응이 없네요 ㅠ.ㅠ 머 꼭필요한건아니지만.. 왠지 안되니
오기가 생기네요 ^^ 되야 될텐데

cinsk의 이미지

같은 vim이라도 다른 실행 파일일 겁니다. 보통 Redhat 계열은 두 종류의 vim을 제공하는데, 공유 라이브러리를 (가능한) 쓰지 않고, 최소한 기능만 가지고 있는 /bin/vi와 공유 라이브러리를 쓰고, 많은 기능을 가지고 있는 /usr/bin/vim을 제공합니다. 또한 /usr/bin/vi는 /usr/bin/vim으로 symbolic link되어 있습니다.

아마 root로 로긴했을 경우, vi를 실행하면 /bin/vi가 실행되고, 대개 /bin/vi는 syntax highlight 기능이 없습니다.

일반 사용자로 로긴했을 경우, vi를 실행하면 /usr/bin/vi가 실행되고, 이 것은 /usr/bin/vim으로 링크가 되어 있어서 syntax highlight 기능이 있는 full vim이 실행될 것입니다.

--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/

익명 사용자의 이미지

2015년에도 도움을 얻고 가네요 KLDP 짱! cinsk님 짱!

nidle의 이미지

감사합니다. cinsk님 말씀대로 vim을로 실행하니 컬러가 나오네요,,
전에 레드햇9에서는 안그랬던거 같은데 ㅋㅋ
좋은정보 감사합니다.

익명사용자@12345의 이미지

저도 헤메다가 답을 발견하고 이 게시를 읽었네요. 다른 분들에게 도움이 되고자 달아 봅니다.

로긴 후 $which vi를 해보면 root와 일반계정이 다른 결과가 나올 껍니다.

# root
$which vi
/bin/vi

# user
$ which vi
alias vi='vim'
/usr/bin/vim

보시다 시피 일반계정에는 vi의 alias가 vim으로 설정되어 있습니다. 당연히 full Path를 입력하지 않으면 vim이 실행 됩니다.

/root/.bashrc 파일을 편집해 alias를 거는것도 좋은 방법이나 두 계정의 .bash_profile, .bashrc를 아무리 뒤져봐도 관련 설정이
없는데 설정이 다르게 나타나는데 의문을 품어 봤습니다.

원인은 아래 파일 때문 입니다. (RHEL 6.X 기준)
$cat /etc/profile.d/vim.sh
if [ -n "$BASH_VERSION" -o -n "$KSH_VERSION" -o -n "$ZSH_VERSION" ]; then
[ -x /usr/bin/id ] || return
ID=`/usr/bin/id -u`
[ -n "$ID" -a "$ID" -le 200 ] && return ## ID로 판별해 alias를 거느냐 마느냐
# for bash and zsh, only if no alias is already set
alias vi >/dev/null 2>&1 || alias vi=vim
fi

이유는 모르겠지만 UID로 판별해 alias를 설정하는데 UID 200 이하 즉, 시스템 계정이냐 아니냐로 판별 합니다.

즉, vim.sh 파일에서 해당 조건문을 수정하면 다음 로그인시 반영 됩니다.

댓글 달기

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