All Projects → mattn → Vim Gist

mattn / Vim Gist

Vim plugin for Gist

Programming Languages

Vim Script
2826 projects

Labels

Projects that are alternatives of or similar to Vim Gist

Awesome Gists
A collection of amazing gists
Stars: ✭ 413 (-74.54%)
Mutual labels:  gist
Dotslash3.0
🎯 Creating DartPad Snippets Made Easy
Stars: ✭ 60 (-96.3%)
Mutual labels:  gist
Kodeweave
HTML/CSS/JS and Markdown Playground For Web Designers and Developers
Stars: ✭ 87 (-94.64%)
Mutual labels:  gist
Bestandroidgists
Find best Android Gist 🔥
Stars: ✭ 745 (-54.07%)
Mutual labels:  gist
Gisto
Gisto is a Cross-platform snippets management desktop application that allows you and/or your team share code snippets fast and easily. Based on GitHub Gists Infrastructure which means you can use all your existing snippets by connecting your GitHub account! Gisto started as an attempt to fulfill the lack of a syntax highlighted and cloud synchronized code snippet solution. You may thing of Gisto as Evernote for code.
Stars: ✭ 853 (-47.41%)
Mutual labels:  gist
Wakatime Sync
Update Wakatime summary data to your gist every day
Stars: ✭ 73 (-95.5%)
Mutual labels:  gist
Code Settings Sync
🌴💪 Synchronize your Visual Studio Code Settings Across Multiple Machines using GitHub GIST 💪🌴
Stars: ✭ 3,754 (+131.44%)
Mutual labels:  gist
Just Dashboard
📊 📋 Dashboards using YAML or JSON files
Stars: ✭ 1,511 (-6.84%)
Mutual labels:  gist
Gatsby Remark Embed Gist
Gatsby remark gists preprocessor
Stars: ✭ 30 (-98.15%)
Mutual labels:  gist
Pysession
Automatically saves python shell code to a local file or secret Gist
Stars: ✭ 82 (-94.94%)
Mutual labels:  gist
Git Repo
Git-Repo: CLI utility to manage git services from your workspace
Stars: ✭ 818 (-49.57%)
Mutual labels:  gist
Code Notes
A simple code snippet & gist manager for developers built with Electron & Vue.js 🚀
Stars: ✭ 919 (-43.34%)
Mutual labels:  gist
Sequential
An environment to visualize JavaScript code execution in a browser
Stars: ✭ 74 (-95.44%)
Mutual labels:  gist
Gistpad
VS Code extension for managing and sharing code snippets, notes and interactive samples using GitHub Gists
Stars: ✭ 443 (-72.69%)
Mutual labels:  gist
Gistr
Interact with GitHub gists from R
Stars: ✭ 90 (-94.45%)
Mutual labels:  gist
Vscode Syncing
⚡️ VSCode Extension - Sync all of your VSCode settings across multiple devices.
Stars: ✭ 395 (-75.65%)
Mutual labels:  gist
Wp Gistpen
A self-hosted alternative to putting your code snippets on Gist.
Stars: ✭ 67 (-95.87%)
Mutual labels:  gist
Gist Run
🚀 Bring your Gists to life with GistRun
Stars: ✭ 121 (-92.54%)
Mutual labels:  gist
Macgist
Simple app to send pasteboard items to GitHub's Gist
Stars: ✭ 110 (-93.22%)
Mutual labels:  gist
Xgist
Xcode extension to send code to GitHub's Gist
Stars: ✭ 75 (-95.38%)
Mutual labels:  gist

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:

  • Post current buffer to gist, using default privacy option.

      :Gist
    
  • Post selected text to gist, using default privacy option. This applies to all permutations listed below (except multi).

      :'<,'>Gist
    
  • Create a private gist.

      :Gist -p
    
  • Create a public gist. (Only relevant if you've set gists to be private by default.)

      :Gist -P
    

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

  • Create a gist anonymously.

      :Gist -a
    
  • Create a gist with all open buffers.

      :Gist -m
    
  • Edit the gist (you need to have opened the gist buffer first). You can update the gist with the ":w" command within the gist buffer.

      :Gist -e
    
  • Edit the gist with name 'foo.js' (you need to have opened the gist buffer first).

      :Gist -e foo.js
    
  • Post/Edit with the description " (you need to have opened the gist buffer first). >

      :Gist -s something
      :Gist -e -s something
    
  • Delete the gist (you need to have opened the gist buffer first). Password authentication is needed.

      :Gist -d
    
  • Fork the gist (you need to have opened the gist buffer first). Password authentication is needed.

      :Gist -f
    
  • Star the gist (you need to have opened the gist buffer first). Password authentication is needed.

      :Gist +1
    
  • Unstar the gist (you need to have opened the gist buffer first). Password authentication is needed.

      :Gist -1
    
  • Get gist XXXXX.

      :Gist XXXXX
    
  • Get gist XXXXX and add to clipboard.

      :Gist -c XXXXX
    
  • List your public gists.

      :Gist -l
    
  • List gists from user "mattn".

      :Gist -l mattn
    
  • Specify the number of gists listed:

      :Gist -l -n 100
    
  • List everyone's gists.

      :Gist -la
    
  • List gists from your starred gists.

      :Gist -ls
    
  • Open the gist on browser after you post or update it.

      :Gist -b
    

List Feature

  • Useful mappings on the gist-listing buffer:

    • Both o or Enter open the gist file in a new buffer, and close the vim-gist listing one.
    • b opens the gist file in a browser; this is necessary because Shift-Enter (as was originally) only works for GUI vim.
    • y copies the contents of the selected gist to the clipboard, and closes the vim-gist buffer.
    • p pastes the contents of the selected gist to the buffer from where vim-gist was called, and closes the vim-gist buffer.
    • Hitting Escape or Tab at the vim-gist buffer closes it.
  • Gist listing has fixed-length columns now, more amenable to eye inspection. Every line on the gist-listing buffer contains the gist id, name and description, in that order. Columns are now padded and truncated to offer a faster browsing, in the following way:

    • The gist id string is fixed at 32 characters.

    • The length (in characters) of the name of the gist is fixed and can be set by the user using, for example:

      let g:gistvim_namelength = 20

      The default value for gistvim_namelength is 30. If the gist (file)name exceeds that length, it is truncated to the specified length.

    • Finally, the gist description is truncated in length to fit the remaining of the line, avoiding wrapped lines that mess up the table layout.

    • Note that the gist listing buffer now does not show the field 'code' (not sure what that did in the first place).

Tips:

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

  • Mac:

      let g:gist_clip_command = 'pbcopy'
    
  • Linux:

      let g:gist_clip_command = 'xclip -selection clipboard'
    
  • Others (cygwin?):

      let g:gist_clip_command = 'putclip'
    

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.

  • rtp:
    • autoload/gist.vim
    • plugin/gist.vim

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].