vim mapleader 无法正常工作

vim mapleader 无法正常工作

我在 vim 中设置了 mapleader,如下所示

let mapleader = ","

当我尝试

:echo mapleader

它显示,正确

但以下不起作用

nnoremap <leader>a :echo("\<leader\> works! It is set to <leader>")<CR>

由于无法正确设置领导者,因此我无法使用 vimwiki。

经过大量的 Google 搜索后,我感到很沮丧。请帮忙。

我还安装了 gvim 来使用 vimwiki。设置的所有多个 wiki 都可以通过 gvim 访问,但不能通过 vim 访问。

以下是我的 vimrc 文件

" -----------------------------------------------------------------------------
" To make vimwiki properly
" -----------------------------------------------------------------------------
 set nocompatible            " put it on
 filetype plugin on
 syntax on

" -----------------------------------------------------------------------------
" end: To make vimwiki properly
" -----------------------------------------------------------------------------


set number            " line numbers
set hlsearch                  " Highlight search results
set incsearch                 " set increment search
set ignorecase                " case insensitive search, use \C anywhere with no space for case sensitive search
filetype off                  " required


" -----------------------------------------------------------------------------
" Basic mappings
" -----------------------------------------------------------------------------
let mapleader = ","
nnoremap <leader>a :echo("\<leader\> works! It is set to <leader>")<CR>




" -----------------------------------------------------------------------------
" start : Plugins
" -----------------------------------------------------------------------------


" Specify a directory for plugins
" - For Neovim: ~/.local/share/nvim/plugged
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/plugged')


Plug 'scrooloose/nerdtree'         " Navigate and manipulate files in a tree view.

Plug 'gruvbox-community/gruvbox'   " Gruvbox theme.

Plug 'junegunn/limelight.vim'      " Dim paragraphs above and below the active paragraph.


Plug 'junegunn/goyo.vim'           " Distraction free writing by removing UI elements and centering everything.

Plug 'vimwiki/vimwiki'

Plug 'godlygeek/tabular'           "The tabular plugin must come before vim-markdown.
Plug 'plasticboy/vim-markdown'     "The tabular plugin must come before vim-markdown.



call plug#end()



" -----------------------------------------------------------------------------
" End : Plugins
" -----------------------------------------------------------------------------

nmap <F6> :NERDTreeToggle<CR>   " open or close nerd tree by pressing F6
nmap <Leader>w <Plug>VimwikiIndex
nmap <Leader>dy <Plug>VimwikiMakeYesterdayDiaryNote






" -----------------------------------------------------------------------------
" start : Status line
" -----------------------------------------------------------------------------

" Heavily inspired by: https://github.com/junegunn/dotfiles/blob/master/vimrc
function! s:statusline_expr()
  let mod = "%{&modified ? '[+] ' : !&modifiable ? '[x] ' : ''}"
  let ro  = "%{&readonly ? '[RO] ' : ''}"
  let ft  = "%{len(&filetype) ? '['.&filetype.'] ' : ''}"
  let fug = "%{exists('g:loaded_fugitive') ? fugitive#statusline() : ''}"
  let sep = ' %= '
  let pos = ' %-12(%l : %c%V%) '
  let pct = ' %P'

  return '[%n] %f %<'.mod.ro.ft.fug.sep.pos.'%*'.pct
endfunction

let &statusline = s:statusline_expr()






" -----------------------------------------------------------------------------
" end : Status line
" -----------------------------------------------------------------------------



" -----------------------------------------------------------------------------
" start : Color settings
" -----------------------------------------------------------------------------

colorscheme gruvbox
" For Gruvbox to look correct in terminal Vim you'll want to source a palette
" script that comes with the Gruvbox plugin.
"
" Add this to your ~/.profile file:
"   source "$HOME/.vim/plugged/gruvbox/gruvbox_256palette.sh"

" Gruvbox comes with both a dark and light theme.
set background=dark

" Gruvbox has 'hard', 'medium' (default) and 'soft' contrast options.
let g:gruvbox_contrast_light='hard'

" This needs to come last, otherwise the colors aren't correct.
syntax on

" -----------------------------------------------------------------------------
" end : Color settings
" -----------------------------------------------------------------------------

" -----------------------------------------------------------------------------
" start : vimwiki
" -----------------------------------------------------------------------------
" vimwiki/vimwiki markdown syntax
" let g:vimwiki_list = [{'path': '~/vimwiki/', 'syntax': 'markdown', 'ext': '.md'}]


" start: vimwiki multiple wikis 
let wiki_1 = {}
let wiki_1.path = '~/vimwiki/'
let wiki_1.path_html = '~/vimwiki_html/'

let wiki_2 = {}
let wiki_2.path = '~/vimwiki/private/'
let wiki_2.path_html = '~/vimwiki/private_html/'

let wiki_3 = {}
let wiki_3.path = '~/vimwiki/technical/'
let wiki_3.path_html = '~/vimwiki/technical_html/'

let g:vimwiki_list = [wiki_1, wiki_2, wiki_3]
" end: vim multiple wikis
" -----------------------------------------------------------------------------
" end : vimwiki
" -----------------------------------------------------------------------------

答案1

在 .vimrc 中添加以下行解决了我的问题

let g:mapleader = ","

答案2

我发现我得到了输出

<leader> works! It is set to ','

设置后

:let mapleader = ","
:nnoremap <leader>a :echo("\<leader\> works! It is set to '<leader>'")<CR>

我之前遇到了与引号相关的错误。


就我个人而言,我发现使用

map , <Leader>

,a在测试时vim一定要:source vimrc查看所实施的更改vimrc

相关内容