Home

Awesome

Gist.vim

This is a vimscript for creating gists (http://gist.github.com).

For the latest version please see https://github.com/mattn/vim-gist.

Usage:

This is only relevant if you've set gists to be private by default; if you get an empty gist list, try ":Gist --abandon".

List Feature

Tips:

If you set g:gist_clip_command, gist.vim will copy the gist code with option '-c'.

If you want to detect filetype from the filename:

let g:gist_detect_filetype = 1

If you want to open browser after the post:

let g:gist_open_browser_after_post = 1

If you want to change the browser:

let g:gist_browser_command = 'w3m %URL%'

or:

let g:gist_browser_command = 'opera %URL% &'

On windows, this should work with your user settings.

If you want to show your private gists with ":Gist -l":

let g:gist_show_privates = 1

If you want your gist to be private by default:

let g:gist_post_private = 1

If you want your gist to be anonymous by default:

let g:gist_post_anonymous = 1

If you want to manipulate multiple files in a gist:

let g:gist_get_multiplefile = 1

If you want to use on GitHub Enterprise:

let g:gist_api_url = 'http://your-github-enterprise-domain/api/v3'

You need to either set global git config:

$ git config --global github.user Username

If you want to list more than 30 gists per page (maximum is 100):

let g:gist_per_page_limit = 100

License:

Copyright 2010 by Yasuhiro Matsumoto
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice,
   this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.

Install:

Copy it to your plugin directory. gist.vim will create a curl cookie-jar file in your runtimepath.

If you want to uninstall gist.vim, remember to also remove ~/.gist-vim.

You need to install webapi-vim also:

http://www.vim.org/scripts/script.php?script_id=4019

If you want to use latest one:

https://github.com/mattn/webapi-vim

Install with Vundle

Add the following lines to your .vimrc.

Bundle 'mattn/webapi-vim'
Bundle 'mattn/vim-gist'

Now restart Vim and run :BundleInstall.

Install with NeoBundle

Add the following line to your .vimrc.

NeoBundle 'mattn/vim-gist', {'depends': 'mattn/webapi-vim'}

Requirements:

Setup:

This plugin supports both basic and two-factor authentication using GitHub API v3. The plugin stores its credentials in ~/.gist-vim.

First, you need to set your GitHub username in git's global configuration:

$ git config --global github.user <username>

Then vim-gist will ask for your password in order to create an access token. If you have two-factor authentication enabled, vim-gist will also prompt you to enter the two-factor key you receive.

NOTE: If you want you can set it directly to g:github_user and g:gist_token.

Whichever type of authentication you use, your GitHub password will not be stored, only a OAuth access token produced specifically for vim-gist. The token is stored in ~/.gist-vim. If you stop using the plugin, you can easily remove this file. To revoke the associated GitHub token, go to the list of "Authorized applications" on GitHub's "Account Settings" page.

Note: the username is optional if you only send anonymous gists.