mirror of
https://github.com/joaotavora/yasnippet.git
synced 2025-10-13 21:13:04 +00:00
152 lines
8.6 KiB
HTML
152 lines
8.6 KiB
HTML
<?xml version="1.0" encoding="utf-8" ?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<meta name="generator" content="Docutils 0.5: http://docutils.sourceforge.net/" />
|
|
<title>Yet Another Snippet extension</title>
|
|
<meta name="author" content="pluskid" />
|
|
<meta name="date" content="2008-03-20" />
|
|
<link rel="stylesheet" href="styles.css" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div class="document" id="yet-another-snippet-extension">
|
|
<div id="header-region" class="clear-block"></div>
|
|
<div id="wrapper">
|
|
<div id="container" class="clear-block">
|
|
<div id="header">
|
|
<div id="logo-floater">
|
|
<h1 class="title">Yet Another Snippet extension</h1>
|
|
</div>
|
|
<ul class="primary-links">
|
|
<li>
|
|
<a title="" href="index.html">Home</a>
|
|
</li>
|
|
<li>
|
|
<a title="" href="define_snippet.html">Howto</a>
|
|
</li>
|
|
<li>
|
|
<a title="" href="faq.html">FAQ</a>
|
|
</li>
|
|
<li>
|
|
<a title="" href="changelog.html">ChangeLog</a>
|
|
</li>
|
|
<li>
|
|
<a title="" href="http://code.google.com/p/yasnippet/downloads/list">Download</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id="center">
|
|
<div id="squeeze">
|
|
<div class="right-corner">
|
|
<div class="left-corner">
|
|
<div class="contents topic" id="contents">
|
|
<p class="topic-title first">Contents</p>
|
|
<ul class="simple">
|
|
<li><a class="reference internal" href="#video-demo" id="id1">Video Demo</a></li>
|
|
<li><a class="reference internal" href="#brief-install-instruction" id="id2">Brief Install Instruction</a><ul>
|
|
<li><a class="reference internal" href="#bundle-install" id="id3">Bundle Install</a></li>
|
|
<li><a class="reference internal" href="#normal-install" id="id4">Normal Install</a></li>
|
|
</ul>
|
|
</li>
|
|
<li><a class="reference internal" href="#customization-group" id="id5">Customization group</a></li>
|
|
<li><a class="reference internal" href="#bugs-contribution-and-support" id="id6">Bugs, Contribution and Support</a></li>
|
|
</ul>
|
|
</div>
|
|
<p>Yasnippet is a template system for emacs. It allows you to type a
|
|
abbrevation and automatically expand the abbreviation into function
|
|
templates.</p>
|
|
<p>Bundled language templates includes: C, C++, C#, Perl, Python, Ruby,
|
|
SQL, LaTeX, HTML, CSS and more.</p>
|
|
<p>Yasnippet system is inspired from TextMate's template system. You can
|
|
use <a class="reference external" href="https://groups.google.com/group/smart-snippet/browse_thread/thread/691fbdd33412d86e?pli=1">a tool</a>
|
|
to import any TextMate template you have to Yasnippet. It is a
|
|
re-design and re-write of my original extension <a class="reference external" href="http://code.google.com/p/smart-snippet/">smart-snippet</a>. It
|
|
is much cleaner and more powerful than smart-snippet.</p>
|
|
<div class="section" id="video-demo">
|
|
<h1><a class="toc-backref" href="#id1">Video Demo</a></h1>
|
|
<p>Watch the <a class="reference external" href="http://www.youtube.com/watch?v=vOj7btx3ATg">demo at YouTube</a> (download a higher
|
|
resolution version: <a class="reference external" href="http://yasnippet.googlecode.com/files/yasnippet.avi">yasnippet.avi</a>).</p>
|
|
</div>
|
|
<div class="section" id="brief-install-instruction">
|
|
<h1><a class="toc-backref" href="#id2">Brief Install Instruction</a></h1>
|
|
<p>There are two archives of YASnippet. One is a single file compiled
|
|
“bundle”, and the other is normal. If all you need is to use the
|
|
builtin templates, download the bundle one. If you want to add your
|
|
own templates, download the normal one.</p>
|
|
<div class="section" id="bundle-install">
|
|
<h2><a class="toc-backref" href="#id3">Bundle Install</a></h2>
|
|
<ol class="arabic simple">
|
|
<li>Download the latest <tt class="docutils literal"><span class="pre">yasnippet-bundle-x.y.z.el.tgz</span></tt> and unpack it.</li>
|
|
<li>You'll get a file named <tt class="docutils literal"><span class="pre">yasnippet-bundle.el</span></tt>, put it under
|
|
<tt class="docutils literal"><span class="pre">~/.emacs.d/plugins/</span></tt> (create the directory if not exists).</li>
|
|
<li>Open the file in Emacs, and type <tt class="docutils literal"><span class="pre">Alt+x</span> <span class="pre">eval-buffer</span></tt>.</li>
|
|
</ol>
|
|
<p>That's it. Now open any one of your language file, you'll see a menu
|
|
YASnippet. you can pull the menu to insert a template. Or, you can
|
|
type the pre-defined abbrev and press <tt class="docutils literal"><span class="pre">TAB</span></tt> to expand it.</p>
|
|
<p>To have emacs load YASnippet automatically when it starts, put the
|
|
following in your <tt class="docutils literal"><span class="pre">~/.emacs</span></tt> file:</p>
|
|
<blockquote>
|
|
<div class="highlight"><pre>(<span style="color: #19177C">add-to-list</span> <span style="color: #19177C">'load-path</span>
|
|
<span style="color: #BA2121">"~/.emacs.d/plugins"</span>)
|
|
(<span style="color: #008000">require</span> <span style="color: #19177C">'yasnippet-bundle</span>)
|
|
</pre></div>
|
|
</blockquote>
|
|
</div>
|
|
<div class="section" id="normal-install">
|
|
<h2><a class="toc-backref" href="#id4">Normal Install</a></h2>
|
|
<p>For full install of the normal archive, just download and unpack the
|
|
latest <tt class="docutils literal"><span class="pre">yasnippet-x.y.z.tar.bz2</span></tt>. You'll get a directory named
|
|
<tt class="docutils literal"><span class="pre">yasnippet</span></tt>, put it in your <tt class="docutils literal"><span class="pre">~/.emacs.d/plugins</span></tt> and add the
|
|
following in your <tt class="docutils literal"><span class="pre">.emacs</span></tt> file:</p>
|
|
<blockquote>
|
|
<div class="highlight"><pre>(<span style="color: #19177C">add-to-list</span> <span style="color: #19177C">'load-path</span>
|
|
<span style="color: #BA2121">"~/.emacs.d/plugins"</span>)
|
|
(<span style="color: #008000">require</span> <span style="color: #19177C">'yasnippet</span>) <span style="color: #408080; font-style: italic">;; not yasnippet-bundle</span>
|
|
(<span style="color: #19177C">yas/initialize</span>)
|
|
(<span style="color: #19177C">yas/load-directory</span> <span style="color: #BA2121">"~/.emacs.d/plugins/yasnippet/snippets"</span>)
|
|
</pre></div>
|
|
</blockquote>
|
|
<p>Please refer to the documentation for full customization, or use the
|
|
customization group.</p>
|
|
<img align="right" alt="images/customization-group.png" class="align-right" src="images/customization-group.png" />
|
|
</div>
|
|
</div>
|
|
<div class="section" id="customization-group">
|
|
<h1><a class="toc-backref" href="#id5">Customization group</a></h1>
|
|
<p>From version 0.6 onwards, there is a customization group that you can
|
|
access with:</p>
|
|
<p><tt class="docutils literal"><span class="pre">M-x</span> <span class="pre">customize-group</span> <span class="pre">RET</span> <span class="pre">yasnippet</span> <span class="pre">RET</span></tt></p>
|
|
<p>Each customization variable affects how some part of YASnippet works,
|
|
for example automatic snippet indentation, what prompting method to
|
|
use, whether to expand snippets inside snippets, etc...</p>
|
|
<p>Inside the customization group, each variable is reasonably documented
|
|
to explain what it does.</p>
|
|
</div>
|
|
<div class="section" id="bugs-contribution-and-support">
|
|
<h1><a class="toc-backref" href="#id6">Bugs, Contribution and Support</a></h1>
|
|
<ul class="simple">
|
|
<li>If you find a bug, please report it at <a class="reference external" href="http://code.google.com/p/yasnippet/issues/list">Issue List</a>.</li>
|
|
<li>If you have problem using YASnippet, or have some new ideas, please
|
|
post to the <a class="reference external" href="http://groups.google.com/group/smart-snippet">discussion group</a>. Especially, there's a <a class="reference external" href="http://code.google.com/p/yasnippet/wiki/WishList">wish list</a>
|
|
wiki page. I'll collect ideas from the <a class="reference external" href="http://groups.google.com/group/smart-snippet">discussion group</a> to the
|
|
<a class="reference external" href="http://code.google.com/p/yasnippet/wiki/WishList">wish list</a>. So you might want to look at the <a class="reference external" href="http://code.google.com/p/yasnippet/wiki/WishList">wish list</a> before
|
|
you post something.</li>
|
|
<li>If you want to contribute some snippets, you can also post them to
|
|
the <a class="reference external" href="http://groups.google.com/group/smart-snippet">discussion group</a>. Some common snippets may be added to
|
|
YASnippet, while others will be collected at the
|
|
<a class="reference external" href="http://code.google.com/p/yasnippet/wiki/UserContributedSnippets">UserContributedSnippets wiki page</a>.</li>
|
|
</ul>
|
|
<p>Thank you very much for using YASnippet!</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|