スポンサーリンク
UbuntuのVimを使おうとして、「どうも様子がおかしい」と思う場合があります。カーソル移動をしようと矢印キーを使うとABCD文字が入力されたり、バックスペースキーを押しても文字が消えなかったり。そのときの対策について書いておきます。
スポンサーリンク
インストール直後のUbuntu
サーバ向けのUbuntuをインストールしたとき、Vimの様子がおかしい場合があります。
気が付きやすいのは、挿入モードでバックスペースキーを押しても文字が消えなかったり、挿入モードから抜けたときに文字が消えたり。
また、カーソルキー(←↓↑→)で移動しようと思ったら、移動するの代わりに「D」「B」「A」「C」が入力されてしまいます。
$ vi --version
さらに、そもそも「$ vim」コマンドを実行しようとしても存在しないと言われ、「$ vi」を使うのですが、「$ vi --version」をすると、ちゃんと「VIM」と表示されます。
「$ vi --version」の出力結果がこちらです。
$ vi --version VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jan 2 2014 19:39:02) Included patches: 1-52 Modified by pkg-vim-maintainers@lists.alioth.debian.org Compiled by buildd@ Small version without GUI. Features included (+) or not (-): +acl -farsi -mouse_sgr -tag_old_static -arabic -file_in_path -mouse_sysmouse -tag_any_white -autocmd -find_in_path -mouse_urxvt -tcl -balloon_eval -float -mouse_xterm +terminfo -browse -folding +multi_byte -termresponse +builtin_terms -footer -multi_lang -textobjects -byte_offset +fork() -mzscheme -title -cindent -gettext -netbeans_intg -toolbar -clientserver -hangul_input -path_extra -user_commands -clipboard +iconv -perl -vertsplit -cmdline_compl -insert_expand -persistent_undo -virtualedit +cmdline_hist +jumplist -printer +visual -cmdline_info -keymap -profile -visualextra -comments -langmap -python -viminfo -conceal -libcall -python3 -vreplace -cryptv -linebreak -quickfix +wildignore -cscope -lispindent -reltime -wildmenu -cursorbind -listcmds -rightleft +windows -cursorshape -localmap -ruby +writebackup -dialog -lua -scrollbind -X11 -diff -menu -signs +xfontset -digraphs -mksession -smartindent -xim -dnd -modify_fname -sniff -xsmp -ebcdic -mouse -startuptime -xterm_clipboard -emacs_tags -mouse_dec -statusline -xterm_save -eval -mouse_gpm -sun_workshop -xpm -ex_extra -mouse_jsbterm -syntax -extra_search -mouse_netterm -tag_binary system vimrc file: "$VIM/vimrc" user vimrc file: "$HOME/.vimrc" 2nd user vimrc file: "~/.vim/vimrc" user exrc file: "$HOME/.exrc" fall-back for $VIM: "/usr/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -DTINY_VIMRC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 Linking: gcc -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--as-needed -o vim -lSM -lICE -lXpm -lXt -lX11 -lXdmcp -lSM -lICE -lm -ltinfo -lselinux -lacl -lattr -ldl
tiny-vim
ここでよく見たいのが、前半にある「Small version」の表示や、最後のコンパイルオプションの「-DTINY_VIMRC」の表示です。
実は、ここでインストールされているのは、確かに「VIM」なのですが、「Tiny Vim」や「vim-tiny」と呼ばれるものであり、非常に低機能な状態のVIMなのです。
対処法:vimを(改めて)インストールする
そこで、改めて、高機能なVimをインストールします。
別に、現在インストールされている vim を削除する操作は必要なく、「$ sudo apt-get install vim」を実行するだけです
sudo apt-get install vim Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libgpm2 libpython2.7 vim-runtime Suggested packages: gpm ctags vim-doc vim-scripts The following NEW packages will be installed: libgpm2 libpython2.7 vim vim-runtime 0 upgraded, 4 newly installed, 0 to remove and 1 not upgraded. Need to get 6,899 kB of archives. After this operation, 31.7 MB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 http://jp.archive.ubuntu.com/ubuntu/ trusty/main libgpm2 amd64 1.20.4-6.1 [16.5 kB] Get:2 http://jp.archive.ubuntu.com/ubuntu/ trusty-updates/main libpython2.7 amd64 2.7.6-8ubuntu0.2 [1,039 kB] Get:3 http://jp.archive.ubuntu.com/ubuntu/ trusty/main vim-runtime all 2:7.4.052-1ubuntu3 [4,888 kB] Get:4 http://jp.archive.ubuntu.com/ubuntu/ trusty/main vim amd64 2:7.4.052-1ubuntu3 [956 kB] Fetched 6,899 kB in 29s (236 kB/s) Selecting previously unselected package libgpm2:amd64. (Reading database ... 53504 files and directories currently installed.) Preparing to unpack .../libgpm2_1.20.4-6.1_amd64.deb ... Unpacking libgpm2:amd64 (1.20.4-6.1) ... Selecting previously unselected package libpython2.7:amd64. Preparing to unpack .../libpython2.7_2.7.6-8ubuntu0.2_amd64.deb ... Unpacking libpython2.7:amd64 (2.7.6-8ubuntu0.2) ... Selecting previously unselected package vim-runtime. Preparing to unpack .../vim-runtime_2%3a7.4.052-1ubuntu3_all.deb ... Adding 'diversion of /usr/share/vim/vim74/doc/help.txt to /usr/share/vim/vim74/doc/help.txt.vim-tiny by vim-runtime' Adding 'diversion of /usr/share/vim/vim74/doc/tags to /usr/share/vim/vim74/doc/tags.vim-tiny by vim-runtime' Unpacking vim-runtime (2:7.4.052-1ubuntu3) ... Selecting previously unselected package vim. Preparing to unpack .../vim_2%3a7.4.052-1ubuntu3_amd64.deb ... Unpacking vim (2:7.4.052-1ubuntu3) ... Processing triggers for man-db (2.6.7.1-1ubuntu1) ... Setting up libgpm2:amd64 (1.20.4-6.1) ... Setting up libpython2.7:amd64 (2.7.6-8ubuntu0.2) ... Setting up vim-runtime (2:7.4.052-1ubuntu3) ... Processing /usr/share/vim/addons/doc Setting up vim (2:7.4.052-1ubuntu3) ... update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/vim (vim) in auto mode update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/vimdiff (vimdiff) in auto mode update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/rvim (rvim) in auto mode update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/rview (rview) in auto mode update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/vi (vi) in auto mode update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/view (view) in auto mode update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/ex (ex) in auto mode Processing triggers for libc-bin (2.19-0ubuntu6.6) ...
インストール後、もう一度、「$vim --version」と実行してみます。
$ vim --version VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jan 2 2014 19:39:32) Included patches: 1-52 Modified by pkg-vim-maintainers@lists.alioth.debian.org Compiled by buildd@ Huge version without GUI. Features included (+) or not (-): +acl +farsi +mouse_netterm +syntax +arabic +file_in_path +mouse_sgr +tag_binary +autocmd +find_in_path -mouse_sysmouse +tag_old_static -balloon_eval +float +mouse_urxvt -tag_any_white -browse +folding +mouse_xterm -tcl ++builtin_terms -footer +multi_byte +terminfo +byte_offset +fork() +multi_lang +termresponse +cindent +gettext -mzscheme +textobjects -clientserver -hangul_input +netbeans_intg +title -clipboard +iconv +path_extra -toolbar +cmdline_compl +insert_expand -perl +user_commands +cmdline_hist +jumplist +persistent_undo +vertsplit +cmdline_info +keymap +postscript +virtualedit +comments +langmap +printer +visual +conceal +libcall +profile +visualextra +cryptv +linebreak +python +viminfo +cscope +lispindent -python3 +vreplace +cursorbind +listcmds +quickfix +wildignore +cursorshape +localmap +reltime +wildmenu +dialog_con -lua +rightleft +windows +diff +menu -ruby +writebackup +digraphs +mksession +scrollbind -X11 -dnd +modify_fname +signs -xfontset -ebcdic +mouse +smartindent -xim +emacs_tags -mouseshape -sniff -xsmp +eval +mouse_dec +startuptime -xterm_clipboard +ex_extra +mouse_gpm +statusline -xterm_save +extra_search -mouse_jsbterm -sun_workshop -xpm system vimrc file: "$VIM/vimrc" user vimrc file: "$HOME/.vimrc" 2nd user vimrc file: "~/.vim/vimrc" user exrc file: "$HOME/.exrc" fall-back for $VIM: "/usr/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 Linking: gcc -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--as-needed -o vim -lm -ltinfo -lnsl -lselinux -lacl -lattr -lgpm -ldl -L/usr/lib/python2.7/config-x86_64-linux-gnu -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions
同じ形式の表示ですが、「Huge version」となっており、いろいろな機能が含まれた状態のVimがインストールされていることが分かります。
この時点ですでに「$ vi」と実行しても、新しくインストールしたvimが起動する様になっているので、普段「$vi」と打つ人も、そのまま使えます。
スポンサーリンク
スポンサーリンク