Se alguém se deparar com um problema como este, há um problema semelhante, com sintomas ligeiramente diferentes e a mesma resposta.
+ e - funcionam como esperado somente no modo de inserção. Quando tento arrancar uma linha no modo visual usando a combinação " + y , + faz com que o cursor se mova uma linha e - uma linha abaixo. O último campo de tecla pressionado reinicia " e em seu lugar aparece um número de linhas para arrancar.
Eu não encontrei nenhuma dica na ajuda, em relação ao unbinding + do movimento Retorno do Carro , Ctrl M . Muito irritante.
Com ou sem .vimrc, o efeito é exatamente o mesmo. Talvez problema com mapeamentos. Aqui está a saída de vários comandos:
---------showkey key 12 # pressing + ----------showkey -a + 43 0053 0x2b # pressing + ----------dumpkeys |grep plus keycode 12 = plus question backslash Control_underscore ----------xev | grep -A2 --line-buffered '^KeyRelease' | sed -n '/keycode /s/^.*keycode \([0-9]*\).* (.*, \(.*\)).*$/ /p' 20 plus # pressing + ----------cat .vimrc set fileencodings=iso-2022-jp,euc-jp,cp932,utf8,default,latin1 "colorscheme distinguished filetype on filetype plugin on filetype indent on set stl=%f\ %m\ %r\ [Fmt=%{&ff}][Typ=%Y]\ Line:%l/%L[%p%%]\ Col:%c\ Buf:%n\ [%b][0x%B] set autowrite set noswapfile set hidden "no need to save buffer before set nocompatible set autoindent set si set wrap set spell set nobackup set ruler set showcmd set number set cursorline set tabstop=4 set expandtab set smarttab set shiftwidth=4 set incsearch set mouse=a syntax on set hlsearch set hid "change buffer no save set incsearch set magic "for regex set wildmenu set ls=2 set cmdheight=1 ----------vim --version VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jul 2 2013 18:30:39) Included patches: 1-1287 Compiled by Arch Linux Huge version without GUI. Features included (+) or not (-): +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 +farsi +mouse_netterm +syntax system vimrc file: "/etc/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 -D_FORTIFY_SOURCE=2 -I/usr/local/include -march=i686 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 Linking: gcc -Wl,-E -Wl,-rpath,/usr/lib/perl5/core_perl/CORE -Wl,-O1,--sort-common,--as-needed,-z,relro -L/usr/local/lib -Wl,--as-needed -o vim -lm -lncurses -lacl -lattr -lgpm -ldl -Wl,-E -Wl,-rpath,/usr/lib/perl5/core_perl/CORE -Wl,-O1,--sort-common,--as-needed,-z,relro -fstack-protector -L/usr/local/lib -L/usr/lib/perl5/core_perl/CORE -lperl -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
Se alguém se deparar com um problema como este, há um problema semelhante, com sintomas ligeiramente diferentes e a mesma resposta.
Se eu entendi seu problema corretamente, você deve pressionar + logo após escolher o registrador, não depois de y .
A maneira correta de obter o "
register é " + y .
"Como esperado"? Mas o que você espera?
No modo de inserção, +
e -
devem inserir +
e -
.
No modo normal, +
e -
devem mover o cursor uma linha para cima e para baixo.
No modo visual, +
e -
devem mover o cursor uma linha para cima e para baixo, gastando / contraindo a seleção.
+
significa apenas "registro da área de transferência" quando é digitado após "
(ou em alguns contextos após @
).
Se você está tentando arrancar para o "+
register primeiro você deve informar ao vim qual registro usar, então faça a operação.
"+y
Depois de ter digitado o "
, digitar +
não moverá o cursor e o Vim esperará pacientemente até você informar o que deseja fazer com esse registro ( ydc
).