Skip to content

Duplicate paths in &rtp when the same plugin is specified multiple times #184

@junegunn

Description

@junegunn
vim -Nu <(cat << EOF
call plug#begin()
Plug 'junegunn/seoul256.vim'
Plug 'junegunn/seoul256.vim'
call plug#end()
EOF
) +'echo &rtp'

/Users/jg/.vim,/Users/jg/.vim/plugged/seoul256.vim/,/Users/jg/.vim/plugged/seoul256.vim/,/usr/local/share/vim/vimfiles,/usr/local/share/vim/vim74,/usr/local/share/vim/vimfiles/af
ter,/Users/jg/.vim/after

We may not need to fix it cause

  • it does not break anything
  • it is likely the result of a misconfiguration
    • Except, there are users who prefer explicit specification of plugin dependencies, in that case the same entry can appear multiple times
Plug 'plugin1'
  \| Plug 'plugin0'

Plug 'plugin2'
  \| Plug 'plugin0'
  \| Plug 'plugin1'

The fix is trivial, a single uniq() call will do, and I don't think it'll have noticeable effect on startup time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions