FreeBSD의 vim은 화살표 키 및 기타 vi와 유사한 동작에 올바르게 응답하지 않습니다.

FreeBSD의 vim은 화살표 키 및 기타 vi와 유사한 동작에 올바르게 응답하지 않습니다.

저는 FreeBSD에서 (Linux xterm 호환 터미널의 ssh를 통해) vim을 사용하려고 합니다. 그러나 vim은 기본적으로 vi처럼 동작합니다. 예를 들어 삭제 키에 반응하지 않고 삽입 모드에서 위로 이동하는 대신 F 문자를 삽입하는 등의 작업을 수행합니다.

FreeBSD X11에는 설치되지 않습니다.

편집하다: 요청대로 게시했습니다vim --version

# vim --version
VIM - Vi IMproved 7.2 (2008 Aug 9, compiled Jul 28 2010 11:48:54)
Included patches: 1-6, 8-35, 37-48, 50-70, 73, 75-87, 90-92, 94-100, 102-137, 139-149, 151-171,     173-190, 192-193, 195-203, 206-211, 213-215, 217-218, 220-232, 234-246, 251-259, 261-301, 303-319, 321-322, 324-335, 337-351, 353-361, 363, 366-371, 373, 375-376, 378-383, 385-387, 389-398, 401-402, 404-411
Compiled by [email protected]
Big version without GUI.  Features included (+) or not (-):
+arabic +autocmd -balloon_eval -browse ++builtin_terms +byte_offset +cindent 
-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments 
+cryptv +cscope +cursorshape +dialog_con +diff +digraphs -dnd -ebcdic 
+emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path 
+float +folding -footer +fork() -gettext -hangul_input +iconv +insert_expand 
+jumplist +keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap 
+menu +mksession +modify_fname +mouse -mouseshape +mouse_dec -mouse_gpm 
-mouse_jsbterm +mouse_netterm +mouse_sysmouse +mouse_xterm +multi_byte 
+multi_lang -mzscheme -netbeans_intg -osfiletype +path_extra -perl +postscript 
+printer -profile -python +quickfix +reltime +rightleft -ruby +scrollbind 
+signs +smartindent -sniff +startuptime +statusline -sun_workshop +syntax 
+tag_binary +tag_old_static -tag_any_white -tcl +terminfo +termresponse 
+textobjects +title -toolbar +user_commands +vertsplit +virtualedit +visual 
+visualextra +viminfo +vreplace +wildignore +wildmenu +windows +writebackup 
-X11 -xfontset -xim -xsmp -xterm_clipboard -xterm_save 
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
      user exrc file: "$HOME/.exrc"
  fall-back for $VIM: "/usr/local/share/vim"
Compilation: cc -c -I. -Iproto -DHAVE_CONFIG_H   -I/usr/local/include  -O2 -pipe -fno-strict-aliasing  -D_FORTIFY_SOURCE=1        
Linking: cc   -L/usr/local/lib -o vim       -lm -ltermlib -liconv  

답변1

이는 일반적으로 터미널 설정 문제입니다. FreeBSD 측에서 $TERM 환경 변수를 확인하고 로컬 터미널 설정이 무엇인지 확인하십시오. 이는 D패드의 문제인 것이 거의 확실합니다.

그 외에도 표준 "unbreak my vim" .vimrc 설정 세트를 적용했는지 확인하세요.

set nocompat
set backspace=eol,start,indent

터미널이 올바르게 설정되었다고 확신하지만 여전히 백스페이스 문제가 발생하는 경우 vim의 도움말을 확인하세요.

:help fixdel

답변2

저는 주로 Linux를 사용한 후 최근에 FreeBSD 8.2 서버를 설정했는데 VI에 대해서도 동일한 좌절감을 느꼈습니다. 문제는 FreeBSD의 VI 기본값이 대부분의 Linux 배포판과 매우 다르다는 것입니다.

이 페이지를 찾아주셔서 감사합니다:http://jmcpherson.org/vimrc.html, VI가 익숙한 방식으로 작동하도록 .vimrc 파일을 설정하는 방법은 다음과 같습니다.

set nocompatible
set autoindent
set smartindent
set tabstop=4
set shiftwidth=4
set showmatch
set guioptions-=T
set vb t_vb=
set ruler
set nohls
set incsearch
set virtualedit=all
set bs=2

VI가 문제를 많이 일으키기 때문에 nano 텍스트 편집기를 사용하여 파일을 만들었습니다.

VI를 처음 사용하는 경우 홈 디렉터리에 .vimrc라는 텍스트 파일을 만들고 위의 코드 상자에 내용을 붙여넣은 후 저장하세요. 또는 :옵션을 입력한 후 Enter를 눌러 VI에서 직접 이러한 옵션을 시도해 볼 수도 있습니다 :set ruler.

답변3

"vim"을 입력하고 있습니까? 아니면 "vi"를 입력하면 Vim이 실행될 것이라고 가정하고 있습니까?

FreeBSD에서는 "vi" 명령을 사용하면잉웨이.

답변4

vim을 설치한 후 가장 먼저 한 일은 다음과 같습니다.

cp ${LOCALBASE:-"/usr/local"}/share/vim/vim*/vimrc_example.vim ~/.vimrc

background=dark로 설정한 것을 제외하면 가장 합리적인 기본값이 있습니다.

관련 정보