Awesome Open Source
Awesome Open Source


Open link to new pull request with provided/current branch directly from (neo)vim.

Works with Github, Bitbucket and Gitlab out of the box. Can be extended.


Using vim-packager

function! PackagerInit() abort
  packadd vim-packager
  call packager#init()
  call packager#add('kristijanhusak/vim-packager', { 'type': 'opt' })
  call packager#add('kristijanhusak/vim-create-pr')

  "Optional packages, but highly recommended
  call packager#add('sodapopcan/vim-twiggy')
  call packager#add('tpope/vim-fugitive')


Through command line (Can be autocompleted):

:PR branchname

Or if you want to use current branch, just omit the branch name


If you are using vim-twiggy, select a branch from list and press pr.

If you want to open only repository page in browser, run this:



Additional git services

To add your custom git service to the list, add g:create_pr_git_services variable to your vimrc, using example below:

let g:create_pr_git_services = {
\ '': '{{owner}}/{{repository}}/merge_requests/new?merge_request[source_branch]={{branch_name}}'
\ }

Make sure key name ( in example above) is part of the string returned from this command:

git config --get remote.origin.url

Custom browser

Default browser is used by default, when available (xdg-open, open on mac). To use custom browser, add g:create_pr_browser to your vimrc with executable name.


let g:create_pr_browser = 'firefox'
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Plugin (113,980
Github (43,714
Git (34,430
Vim (18,649
Vim Script (11,483
Viml (6,889
Gitlab (5,563
Neovim (3,949
Bitbucket (2,279
Vimrc (2,252
Neo (1,414