Giter Club home page Giter Club logo

yasnippet's Introduction

Intro

YASnippet is a template system for Emacs. It allows you to type an abbreviation and automatically expand it into function templates. Bundled language templates includes: C, C++, C#, Perl, Python, Ruby,

SQL, LaTeX, HTML, CSS and more. The snippet syntax is inspired from TextMate's syntax, you can even import most TextMate templates to YASnippet. Watch a demo on YouTube or download a higher resolution version

Installation

Install the most recent version

Clone this repository somewhere

$ cd ~/.emacs.d/plugins 
$ git clone https://github.com/capitaomorte/yasnippet

Add the following in your .emacs file:

(add-to-list 'load-path
              "~/.emacs.d/plugins/yasnippet")
(require 'yasnippet)
(yas/global-mode 1)

Add your own snippets to ~/.emacs.d/snippets by placing files there or invoking yas/new-snippet.

Install yasnippet with el-get

El-get is a nice way to get the most recent version, too

See https://github.com/dimitri/el-get for instructions

Contributing snippets

Please do not ask me to add snippets to the default collection under /snippets. This is considered frozen and by customizing yas/snippet-dirs you can point yasnippet to good snippet collections out there.

There is a tool extras/textmate-import.rb than can import many actual Textmate snippets and there are extras/imported/*-mode/.yas-setup.el files that can help it with the more difficult importation.

I'm focusing on developping textmate-import.rb tool and the yas-setup.el files. In the future /snippets snippets will be deprecated and replaced with extras/imported.

Follow through the following example to start using these snippets for rails development. It will convert ruby, rails and html bundles from drnic's github repositories based on corresponding .yas-setup.el files.

Using imported textmate snippets (rails example)

After cloning this repository to ~/.emacs.d/plugins/yasnippet

cd ~/.emacs.d/plugins/yasnippet
git submodule init
git submodule update
gem install plist trollop
rake convert_bundles             # will convert ruby, rails and html bundles from drnic

Then, in your .emacs file

(add-to-list 'load-path
              "~/.emacs.d/plugins/yasnippet")
(require 'yasnippet)
(setq yas/snippet-dirs '("~/.emacs.d/snippets" "~/.emacs.d/extras/imported"))
(yas/global-mode 1)    

Open some rails file (model, app, etc) and start using the textmate snippets.

Documentation, issues, etc

Please refer to the comprehensive [documentation] docs for full customization and support. If you find a bug, please report it on the GitHub issue tracker. (please do not submit new issues to the old googlecode tracker)

If you run into problems using YASnippet, or have snippets to contribute, post to the yasnippet google group. Thank you very much for using YASnippet!

yasnippet's People

Contributors

joaotavora avatar pluskid avatar jimeh avatar rwc9u avatar mgalgs avatar hattorix avatar snikulov avatar

Stargazers

Chandle avatar

Watchers

Chandle avatar James Cloos avatar

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.