2016-10-11 4 views
1

Solaris 10 시스템에서 vi 사용. 나는 일반적인 구문vi 설정 기본값은 화면 중앙에 선이 있습니까?

/foo<CR> 

로 문자열을 검색 할 때 발견 된 라인의 위치는 내 디스플레이의 60 개 라인에서 semingly 임의이다. 때로는 맨 위, 때로는 중간, 종종 마지막 줄 근처에 있습니다.

나는 일관된 위치 (어딘가 맨 아래)에 있기를 바랍니다. 다음은 항상 중간

/foo/z.<CR> 

에 배치됩니다 어떻게 기본 동작 것으로에게 단순히

/foo<CR> 

이 중간마다에서 발견 된 라인을 표시합니다 입력하면 그래서 할 수 있습니까? 트릭을 할 수

let g:in_search = 0 
function! StartSearch() 
    let g:in_search = 1 
endfunction 

function! EndSearch() 
    if g:in_search 
    normal! zz 
    endif 
    let g:in_search = 0 
endfunction 

nnoremap/<ESC>:call StartSearch()<CR>/ 
cnoremap <CR> <CR>:call EndSearch()<CR> 
nnoremap n nzz 
nnoremap N Nzz 

:

+0

이 Q **는 S.E. 관련 사이트 http://superuser.com 또는 http://vi.stackexchange.com. Q 하단의 '깃발'링크를 사용하여 운영자에게 이동하도록 요청하십시오. 2 개의 다른 사이트에 같은 Q를 게시하지 마십시오. 감사와 행운 – shellter

+0

vi가 필요하지 않을 때 vi는 스크롤하지 않습니다. 화면에있는 파일의 부분에'foo'가 더 있으면, 그 파일을 통해 점프합니다. 그리고 vi가 파일에 한 줄만 있으면 중간에 줄을 넣을 수 있습니까? –

답변

1

처럼 ~/.vimrc 뭔가에 추가.

는하지만 어쩌면 당신은 필요

set incsearch 
set hlsearch 

?!

+0

vi, vim이 아니므로 .virc를 만들고 스크립트를 넣으십시오. 제대로 작동하는 것 같습니다. (또한 incsearch도 hlsearch도 사용 가능하지 않습니다). – JimR

관련 문제