Phabricator Plugin for Vim
This Vim plugin provides features for interacting with Phabricator-based repositories. It builds upon the foundational git functionality provided by Fugitive.
- Syntax highlighting for Arcanist templates and configuration files
:Gbrowse
support for browsing Phabricator URLs from the current buffer- Completion support for users and projects in Arcanist diff templates using
<C-X><C-O>
(requires curl and a Conduit API token)
Installation
vim-plug
Using- Add
Plug 'jparise/vim-phabricator'
to~/.vimrc
vim +PluginInstall +qall
Using Vim Packages
mkdir -p ~/.vim/pack/jparise/start
cd ~/.vim/pack/jparise/start
git clone https://github.com/jparise/vim-phabricator.git phabricator
vim -u NONE -c "helptags phabricator/doc" -c q
Configuration
g:phabricator_hosts
This plugin automatically recognizes Phabricator repositories served from
hosts named phabricator
(eg. phabricator.example.com
).
This variable lists additional hosts that should also be considered Phabricator hosts.
g:phabricator_api_token
Phabricator's Conduit API is used to generate candidates for user and project completion. These API calls require an access token which can be generated in Phabricator's per-user Settings interface. For example:
https://phabricator.example.com/settings/user/USERNAME/page/apitokens/
The plugin will first attempt to read the per-host API token from the user's
~/.arcrc
configuration file. For example:
{
"hosts": {
"https://secure.phabricator.com/api/": {
"token": "api-secrettokencharacters"
}
}
}
If an API token can not be read from the ~/.arcrc
file for the current
Phabricator host, the value stored in g:phabricator_api_token
will be used.
License
This code is released under the terms of the MIT license.
See LICENSE
for details.
Similar Projects
- arcanist.vim provides syntax highlighting for Arcanist templates and configuration files.
- phabrowser.vim provides a Fugitive browse handler for Phabricator.
- rhubarb.vim provides similar features for GitHub-based repositories.
- vscode-phabricator provides similar Phabricator features for Visual Studio Code.