我与同事共享实验室服务器,但想要单独的 .vimrc 文件。如何得到它?
$ cat .vimrc
color desert
$ pwd
/fvs101/home
Run Code Online (Sandbox Code Playgroud)
我们有单独的工作目录,所以我的目录位于 /fvs101/home/sp 内
在 /fvs101/home 有一个通用的 .vimrc 文件。我想玩 vim,但不想碰这个 /fvs101/home/.vimrc 文件。我想创建自己的 .vimrc 文件。
++++++++++my vimrc file
[sp]$ cat .vimrc
noremap - ddp
noremap _ dd2kp
inoremap <c-u> <esc>lviwU<esc>i
nnoremap <c-u> <esc>viwU<esc>
let mapleader = "-"
let maplocalleader = "\\"
nnoremap <leader>ev :vsplit $MYVIMRC<cr>
nnoremap <leader>sv :source $MYVIMRC<cr>
iabbrev ssig -- <cr>Sachin Pawar<cr>sachin.sp.pawar@oracle.com
vnoremap <leader>' vi<esc>`<<esc>i'<esc>`><esc>i'<esc>
nnoremap H 0
nnoremap L $
inoremap jk <esc>
inoremap <esc> <nop>
augroup filetype_js
autocmd!
autocmd FileType javascript nnoremap <buffer> <localleader>c I//<esc>
augroup END
augroup filetype_python
autocmd!
autocmd FileType python nnoremap <buffer> <localleader>c I#<esc>
augroup END
augroup filetype_sql
autocmd!
autocmd FileType sql nnoremap <buffer> <localleader>c I--esc>
augroup END
augroup filetype_shell
autocmd!
autocmd FileType shell nnoremap <buffer> <localleader>c I#esc>
augroup END
augroup filetype_html
autocmd!
autocmd FileType html nnoremap <buffer> <localleader>f Vatzf
augroup END
++++++++++
Run Code Online (Sandbox Code Playgroud)
如果我使用单独的 .vimrc 文件,我将无法看到某些映射的映射,例如
inoremap jk
为什么会发生这种情况以及如何避免这种情况。
为了使用我自己的 .vimrc 文件,我创建了一个单独的别名。
别名 vi='vim -u /fvs101/home/sp/.vimrc'
创建一个不同的 .vimrc (正如您在评论中所述/refresh/oracle/spawar/.vimrc)并为您自己的用户创建一个别名
myvi='vim -Nu /refresh/oracle/spawar/.vimrc'
Run Code Online (Sandbox Code Playgroud)
请注意,如果没有该-N标志,使用该-u标志将以兼容模式启动 vim,从而导致各种令人讨厌的、意外的副作用,例如映射无法完全工作。
我通过查看该-u标志的实际用途并从那里进行跟踪来发现这一点。下面有帮助的链接。
| 归档时间: |
|
| 查看次数: |
2615 次 |
| 最近记录: |