Giter VIP home page Giter VIP logo

pathogen's Introduction

pathogen Cookbook

Use the custom resources provided by this cookbook to install pathogen, a plugin manager for vim, as well as any plugins that you specify.

Prerequisites

This cookbook expects vim and git to be available but does not provide resources or recipes for installing them.

Attributes

N/A

Resources

pathogen_base

The pathogen_base resource manages the basic installation of pathogen.

Properties
  • users - A list of users for whom pathogen should be installed. Required.
Example
pathogen_base 'install pathogen!' do 
  users ['root', 'vagrant']
end

pathogen_plugin

Installs plugins that can be found on GitHub. The "name property" of the resource is the name of the plugin.

Properties
  • github_org - The name of the GitHub organization or user that houses the repo.
  • users - A list of users for whom pathogen should be installed. Required.
Example
pathogen_plugin 'ctrlp.vim' do
  github_org 'ctrlpvim'
  users ['root', 'vagrant']
end

Usage

  1. Add depends 'pathogen' to your metadata.rb.

  2. Go buck wild with the above two resources in your recipe of choice.

Contributing

Please open an issue if you find a bug. Pull requests are also welcome. When submitting pull requests, please try to abide by the following guidelines:

  1. Keep changes as small as possible
  2. Rebase and squash extraneous commits whenever possible
  3. Use detailed commit messages
  4. Don't modify version information

pathogen's People

Contributors

davidcpell avatar

pathogen's Issues

pathogen_plugin does not transfer ownership

Installing a plugin (like below) as a different user does not chown the cloned repo.

pathogen_plugin 'nerdtree' do
  github_org 'scrooloose'
  users ['foo'] 
end

When 'foo' runs a subsequent vim command like :helptags ~/.vim/bundle/nerdtree/doc/, the command fails with insufficient directory permissions.

E152: Cannot open /home/vagrant/.vim/bundle/nerdtree/doc/tags for writing

Upgrading chef-client 13.6.4 -> 14.0.190 breaks pathogen_base

Running pathogen_base with Vagrant's chef-solo provisioner started breaking for me. Fixing the chef-version to match the ChefDK's[1] (chef.version = '13.6.4') works around the issue for me. Below is the error snippet.

[1] I had been using the ChefDK earlier, and recalled that pathogen_base worked for me then.

==> default: ================================================================================
==> default:     
==> default: Error executing action `install` on resource 'pathogen_base[pathogen]'
==> default:     
==> default: ================================================================================
==> default:     
==> default: 
==> default: 
==> default:     
==> default: NameError
==> default:     
==> default: ---------
==> default:     
==> default: undefined local variable or method `users' for #<#<Class:0x0000000004ceb9c8>:0x0000000004079fa0>
==> default:     
==> default: 
==> default: 
==> default:     
==> default: Cookbook Trace:
==> default:     
==> default: ---------------
==> default:     
==> default: /var/chef/cache/cookbooks/pathogen/resources/pathogen_base.rb:8:in `block in class_from_file'
==> default:     
==> default: 
==> default: 
==> default:     
==> default: Resource Declaration:
==> default:     
==> default: ---------------------
==> default:     
==> default: # In /var/chef/cache/cookbooks/workstation/recipes/vim.rb
==> default: 
==> default:     
==> default: 
==> default: 
==> default:     
==> default:  29: pathogen_base 'pathogen' do
==> default: 
==> default:     
==> default:  30:   users [user]
==> default: 
==> default:     
==> default:  31: end

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.