ubuntu - VIM键盘映射使用了终端的热键
巴扎黑
巴扎黑 2017-04-21 10:55:52
0
1
641

自己编写的键盘映射失灵,而且vim正在使用bash的热键,
导致我的vim现在的操作是这样的
插入模式下
ctrl-w 删除光标前的一个单词
ctrl-L 打出了^L
CTRL-J 换行

怎么才能正常配置使用键盘映射
我的vim有两个插件,youcompleteme,vundle
我的系统是ubuntu gnome

我自己的vimrc是这样

"基本设置
set nu
set tabstop=4
set bg=dark
set expandtab
set cursorline
set softtabstop=4
set hls
set shiftwidth=4
set fdm=syntax
set foldlevelstart=99
set autoindent
au filetype c,cpp set cindent
"键盘映射
map <S-Right> <Esc>:tabn<CR>
imap <S-Right> <Esc>:tabn<CR>i
map <S-Left>  <ESC>:tabp<CR>
imap <S-Left>  <ESC>:tabp<CR>i
map <C-o>     <Esc>:tabnew 
imap <C-o>     <Esc>:tabnew 
map <F5>      <Esc>:w<CR>:!g++ % -o %<<CR>
imap <F5>      <Esc>:w<CR>:!g++ % -o %<<CR>
map <C-F5>    <Esc>:w<CR>:!g++ % -o %< && ./%<<CR>
imap <C-F5>    <Esc>:w<CR>:!g++ % -o %< && ./%<<CR>
map <C-s>   <Esc>:w<CR>
imap <C-s>  <Esc>:w<CR>i
map <C-w> <Esc>:wq<CR>
imap <C-w> <Esc>:wq<CR>
"颜色
set t_Co=256
color darkburn
"vundle设置
set nocompatible
set backspace=2
filetype off                  " required!
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
" let Vundle manage Vundle
" required! 
Bundle 'gmarik/vundle'
" My bundles here:
" original repos on GitHub
Bundle 'Valloric/YouCompleteMe'
"Bundle 'tpope/vim-fugitive'
"Bundle 'Lokaltog/vim-easymotion'
"Bundle 'rstacruz/sparkup', {'rtp': 'vim/'}
"Bundle 'tpope/vim-rails.git'
" vim-scripts repos
"Bundle 'L9'
"Bundle 'FuzzyFinder'
" non-GitHub repos
"Bundle 'git://git.wincent.com/command-t.git'
" Git repos on your local machine (i.e. when working on your own plugin)
"Bundle 'file:///Users/gmarik/path/to/plugin'
" ...
filetype plugin indent on     " required!
"YCM设置
set completeopt=longest,menu "关掉补全的预览
let g:ycm_global_ycm_extra_conf = '~/.ycm_extra_conf.py' "默认配置
let g:ycm_confirm_extra_conf = 0 "不需手动确认

bash的配置文件我没有做任何更改
求问这个问题要怎么设置才能解决

巴扎黑
巴扎黑

全員に返信(1)
刘奇

私が書いたキーボードマッピングが失敗し、vim は bash のホットキーを使用しています、
現在のvimの動作はこんな感じです
挿入モード中
Ctrl-W はカーソルの前の単語を削除します
Ctrl+L で ^L を入力
CTRL-J 改行

これは単なる偶然です。実際、vim は bash ホットキーを使用しませんが、デフォルトのホットキーをオーバーライドするには、ヘルプドキュメント:h i_CTRL-w。这里正确的做法是使用noremap を参照してください。

リーリー

他のキーの組み合わせも同様です。 ctrl-w はデフォルトでウィンドウ ナビゲーションの重要なホットキーになっており、個人的にはこれをオーバーライドすることはお勧めしません。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!