sysadmins .vimrc의 항목 제안

적어도 나는 항상 / etc / vim / vimrc에서 “구문 온”을 주석 해제한다



답변

우리의 CTO는 GitHub에서 기능이 가득한 Vim 구성을 가지고 있습니다 .

하이라이트:

  • 구문 강조, 2 개의 공백 탭 정지, 확장 된 탭.
  • NERDtree는 TextMate의 프로젝트 드로어와 유사한 파일 트리보기입니다.
  • FuzzyFileFinder , TextMate의 cmd-T 기능을 수행하기위한 플러그인.
  • 멋진 (황혼) 기본값으로 많은 색상 테마.

시스템 관리 도구가 Ruby로 작성 되었기 때문에 Ruby 코딩에 유용합니다.


답변

먼저, 여러 대의 컴퓨터를 사용하는 경우 ~/.vim/, ~/.vimrc및 기타 유용한 구성 파일 ( screen, 셸 등)을 개정 관리 시스템에 넣는 것을 고려하십시오 . 나는 darcs데비안 시스템에서 저렴하고 (하스켈 컴파일러를 설치할 필요가없고, 패키지를 직접 설치할 필요가있다) 분산되어 있으며 훌륭한 대화식 모드를 가지고있다. 당신이 알고 / 좋아한다면 git, 당신은 또한 그것을 고수 할 수 있습니다.

현재 설정 파일은 darcs 저장소에서 사용할 수 있습니다 http://repo.harnir.net/. 내가 ~/.vimrc따르는 몇 가지 구체적인 예 . 죄송합니다. 새로운 사용자이므로 스크립트에 대한 링크가 없습니다 http://vim.org/.

sysadmins를위한 필수 ViM 스크립트

  • 원격 파일을 편집 할 때 백업 스크립트는 필수입니다. cbackup.vim 스크립트를 사용 합니다.이 스크립트는 편집 한 각 파일의 마지막 10 개 사본을 중앙 디렉토리에 유지하고 이전 파일을 자동으로 제거합니다. ~/.vim/plugins/디렉토리에 넣고 잊어 버리십시오.

  • 작업 목록을 빠르게 검색 할 수 있습니다 FIXME, XXX그리고 TODO현재 파일의 태그, 그들을 표시하고 하나의 키 누르기와 태그로 이동합니다. 이 태그를 사용하는 경우이 태그를 설치하십시오

  • dbext 는 모든 DBA에 필수적이며 데이터베이스 작업을하는 프로그래머에게도 유용합니다. 쿼리를 실행하고 데이터베이스의 구조를 확인하고 그 밖의 것들을 살펴 봅시다. 그것은 본질적으로 같은 도구를위한 프론트 엔드 인 mysql, sqlite3, sqlplus등이있다. 데이터베이스로 작업하는 경우 필수입니다!

구문 파일

나는 많은 유용한 구문을 야생에서 보지 못했다 .sysadmins가 작업하는 대부분의 파일은 구성이며 /etc일반적으로 꽤 강조 표시되어있다. 내 CSS~/.vim/syntax/ 는 현재 CSS 색상에 대한 구문을 가지고 있습니다 (웹 개발자에게도 좋습니다). 나머지가 잘 작성되지 않았으므로 여가 시간에 업데이트 할 것입니다. 추가 구문 파일은 dhcpd.conf , / etc / network / interfaces , nginx 구성 파일 및 SpamAssassin 의 local.cf입니다.

구문과 함께 유용한 팁 : 구성 파일이 인식되지 않는 경우 (예 : 이상한 이름 /etc/apache2/sites-enabled/some.domain.com이있는 경우 .conf) 파일 이름에 올바른 확장자를 추가하거나 (이 경우 ) ViM 모델을 끝에 추가 할 수 있습니다.

vim : filetype = 아파치

ViM 구성 옵션

대부분의 구성 옵션은 다음과 같이 매우 인기가 있습니다 set nocompatible ruler. 매우 좋은 옵션은 다음과 같습니다.

  • set gdefault: g모드를 반전시킵니다 s///g-해당 옵션 /g이 기본적으로 사용되므로 매번 추가 할 필요가 없습니다. 끄려면 추가하십시오.

  • set incsearch ignorecase smartcase hlsearch: 파일을 검색하는 데 필수-증분, 실시간으로 일치 항목 표시, 대문자를 사용하지 않으면 검색시 대소 문자를 무시합니다.

  • set pastetoggle=<F6>: 또는 원하는 다른 키 paste, nopaste모드 간 전환 , ServerFault와 같은 웹 페이지에서 무언가를 복사하여 붙여 넣을 경우 필수 🙂

  • set noerrorbells visualbell t_vb=: 무언가를 할 때마다 성가신 종이나 시각적 종을 제거하십시오.)

기능, 키보드 매핑

  • 사용자 이름과 현재 날짜를 파일에 붙여 넣습니다. 팀에서 작업 할 때 파일에서 변경 한 사람에 대한 의견을 추가 할 때 유용합니다. 그냥 쓰고 xxsig스페이스를 누르면 다음과 같이 바뀝니다 harnir 20090531. 루트에서 올바르게 작동하려면 (예 : 대신 사용자 이름을 작성하십시오 root)를 사용하여 로그인해야합니다 sudo.

    iabbrev xxsig <Esc> : r! [-n "$ SUDO_USER"] && echo "$ SUDO_USER`날짜 '+ \ % Y \ % m \ % d'`"\ | \ | echo "$ USER`date '+ \ % Y \ % m \ % d'`"<CR> I <BS> <Esc> A
    
  • # -- Some title -------------------{{{1길이 78 자 와 같은 주석 “줄”을 삽입하십시오 – \com#표준 모드에서 누르면 거기에 있습니다. 제목을 추가 할 수 있도록 바꾸기 모드로 자동 전환됩니다.

    nmap \ com # O # <Esc> 72A- <Esc> 3A {<Esc> A1 <Esc> <홈> 4 <오른쪽> R <Space>
    

당신은 쉽게 다른 코멘트 시스템 (위해 그것을 수정할 수 있습니다 ", //등), 또는 내 설정 파일을 확인하십시오.

터치 종료

RCS 시스템에 구성 파일이있는 경우 특정 시스템에 특정한 구성 옵션을 포함시킬 수 있습니다. 이를 위해서는 ~/.vimrc.local구성이 끝날 때 자동으로 포함 된 파일 을 갖는 것이 좋습니다 (물론 존재하는 경우).

파일을 읽을 수있는 경우 (expand ( "~ / .vimrc.local"))
        소스 ~ / .vimrc.local
엔디 프

답변

이것의 어떤 부분이 특히 sysadmin과 관련이 있는지 확실하지 않지만 내 필수 사항은 다음과 같습니다.

syntax on
set background=dark
set shiftwidth=2
set tabstop=2
if has("autocmd")
  filetype plugin indent on
endif
set showcmd             " Show (partial) command in status line.
set showmatch           " Show matching brackets.
set ignorecase          " Do case insensitive matching
set smartcase           " Do smart case matching
set incsearch           " Incremental search

또한 항상 머신이 nginx 구문 강조 파일에 액세스 할 수 있는지 확인 합니다 .


답변

일반적으로 사용자에서 작업하는 경우 이보다 파일을 “파이프”하여 sudo로 저장할 수 있습니다.

cmap w!! %!sudo tee > /dev/null %

다음 명령을 사용하십시오 :

:w!!

sudo를 호출하고 파일을 저장하십시오.


답변

이 SO 질문을 볼 수도 있습니다 : vimrc에 무엇이 있습니까?


답변

뻔뻔한 플러그. 이것은 실제로 .vimrc 변경이 아니라 VIM 플러그인입니다. 설치된 모든 VIM 버전에서 RCSVers를 사용합니다. 기본적으로 RCS 명령을 사용하여 편집 한 파일의 버전을 저장합니다. RCSVers가 내가 변경 한 내용을 보여줌으로써 나를 구하기 위해 구성 파일을 몇 번이나 망쳤는지 알 수 없습니다.

http://www.vim.org/scripts/script.php?script_id=563


답변

VIM 학습을 피하기 위해 .vimrc를 사용하지 마십시오

많은 VIM 신규 이민자들이 이것을 읽을 것이라는 것을 알고 있기 때문에, 내가 가진 가장 좋은 제안은 : “게으르지 말고 .vimrc에 맵 항목을 넣습니다”VIM에서 비표준적인 방법을 배우면 기분이 좋아질 것입니다. vimrc가 없을 때 총 김프. vi의 학습 곡선은 가파르지만 배우지 않기로 선택하여 호의를 베풀지 않습니다.