vimrc 내에서 vim과 vimdiff를 어떻게 구별합니까?


10

vim에는 모든 버퍼를 탭으로 여는 기능이 있습니다. 그러나이 기능을 추가하면 vimdiff가 파일을 열어 다른 탭으로 비교할 수 있으므로 차이점이 표시되지 않습니다. vimrc 파일을 호출하는 vim 또는 vimdiff인지 확인할 수있는 방법이 있습니까?

function! OpenTabs()
    let bf=len(filter(range(1, bufnr('$')), 'buflisted(v:val)'))
    if bf > 1
      exe "tab 5sball"
    endif
endfunction

버퍼로 탭을 사용하는 것에 대한 관련 SO 게시물 : 버퍼와 같은 Vim의 탭 사용
Peter Rincker

VIm이 실행될 때 vim-workspace가로드 한 작업 공간을 원하지 않기 때문에이 질문을 찾았 git difftool지만이 경우 let g:workspace_session_disable_on_args = 1나에게 더 적합합니다.
Günter Zöchbauer

답변:


12

:help diff 이것을 커버 :

.vimrc 파일에서 Vim이 diff 모드로 시작될 때 특별한 작업을 수행 할 수 있습니다. 다음과 같은 구문을 사용할 수 있습니다.

   if &diff
      setup for diff mode
   else
      setup for non-diff mode
   endif

12

&diffvimrc에서와 같은 옵션을 사용할 수 있습니다 .

if &diff
    echo "in diff mode"
else
    echo "not in diff mode"
endif

보다 :h 'diff'


스냅! 당신이 내 것을지지한다면 나는 너의 것을지지 할 것이다;)
Rich

아아 나는 "제출"을 클릭하기에 6 초가 너무 느렸다! 내
공감대를 가지십시오

빠른 답변 감사합니다! 보기 및 vi를 식별하는 옵션이 있는지 궁금하십니까?
Ankit Jain

@AnkitJain보기를 위해 모든 버퍼에 'readonly'옵션이 설정되어 view있는지 확인하거나 시작시 확인할 vim 변수를 별칭 으로 지정할 수 있습니다 .
statox

3
@AnkitJain:h v:progname
Christian Brabandt
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.