]> code.delx.au - gnu-emacs-elpa/blobdiff - README.mdown
Don't indent empty lines in snippet expansion
[gnu-emacs-elpa] / README.mdown
index 14e193f2cdcf729c0f0a056d280c793d0b5d7257..6646557498bb25621dd5bf46a6adf11c35f4169e 100644 (file)
@@ -8,12 +8,10 @@ templates. Bundled language templates include: C, C++, C#, Perl,
 Python, Ruby, SQL, LaTeX, HTML, CSS and more. The snippet syntax
 is inspired from [TextMate's][textmate-snippets] syntax, you can
 even [import](#import) most TextMate templates to
-YASnippet. Watch [a demo on YouTube][youtube-demo] or download a
-[higher resolution version][high-res-demo].
+YASnippet. Watch [a demo on YouTube][youtube-demo].
 
 [textmate-snippets]: http://manual.macromates.com/en/snippets
 [youtube-demo]: http://www.youtube.com/watch?v=ZCGmZK4V7Sg
-[high-res-demo]: http://yasnippet.googlecode.com/files/yas_demo.avi
 
 # Installation
 
@@ -36,33 +34,22 @@ Add your own snippets to `~/.emacs.d/snippets` by placing files there or invokin
 ## Install with `package-install`
 
 In a recent emacs `M-x list-packages` is the recommended way to list and install packages.
-[MELPA][melpa] keeps a very recent snapshot of YASnippet, see http://melpa.milkbox.net/#installing.
+[MELPA][melpa] keeps a very recent snapshot of YASnippet, see http://melpa.org/#installing.
 
 ## Install 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. Be sure to install the
-"master" branch since the 3.x series still use the old googlecode code, base.
-Consider using this "local" recipe.
-
-    (push '(:name yasnippet
-                  :website "https://github.com/capitaomorte/yasnippet.git"
-                  :description "YASnippet is a template system for Emacs."
-                  :type github
-                  :pkgname "capitaomorte/yasnippet"
-                  :features "yasnippet"
-                  :compile "yasnippet.el")
-          el-get-sources)
+https://github.com/dimitri/el-get for instructions.
 
 ## Use `yas-minor-mode` on a per-buffer basis
 
-To use YASnippet as a non-global minor mode, replace `(yas-global-mode 1)` with
-`(yas-reload-all)` to load the snippet tables. Then add a call to
-`(yas-minor-mode)` to the major-modes where you to enable YASnippet.
+To use YASnippet as a non-global minor mode, don't call
+`yas-global-mode`; instead call `yas-reload-all` to load the snippet
+tables and then call `yas-minor-mode` from the hooks of major-modes
+where you want YASnippet enabled.
 
-    (add-hook 'prog-mode-hook
-              '(lambda ()
-                 (yas-minor-mode)))
+    (yas-reload-all)
+    (add-hook 'prog-mode-hook #'yas-minor-mode)
 
 # Where are the snippets?
 
@@ -76,8 +63,8 @@ download "git submodules" and find two subdirs under the main tree.
 
 1. `snippets/`
 
-    Points to [yasnippet-snippets][yasnippet-snippets] the snippet
-    collection of [AndreaCrotti](https://github.com/AndreaCrotti).
+    Points to [yasnippet-snippets] the snippet collection of
+    [AndreaCrotti](https://github.com/AndreaCrotti).
 
     The default configuraiton already points to this dir, so to use
     them, just make sure the submodule really was downloaded
@@ -85,8 +72,8 @@ download "git submodules" and find two subdirs under the main tree.
 
 2. `yasmate/`
 
-    Points to a github repo of the [yasmate][yasmate] tool, which is
-    dedicated to converting textmate bundles into yasnippet snippets.
+    Points to a github repo of the [yasmate] tool, which is dedicated
+    to converting textmate bundles into yasnippet snippets.
 
     To use these snippets you have to run the tool first, so
     [see its doc][yasmate]), and then point the `yas-snippet-dirs`
@@ -95,6 +82,11 @@ download "git submodules" and find two subdirs under the main tree.
     If you have a working ruby environment, you can probably get lucky
     directly with `rake convert-bundles`.
 
+3.  [textmate-to-yas.el]
+
+    This is another textmate bundle converting tool using Elisp
+    instead of Ruby.
+
 Naturally, you can point `yas-snippet-dirs` to good snippet collections out
 there. If you have created snippets for a mode, or multiple modes,
 consider creating a repository to host them, then tell users that it
@@ -112,22 +104,21 @@ should be added like this to `yas-snippet-dirs`:
 # Manual, issues etc
 
 Please refer to the comprehensive [documentation][docs] for full
-customization and support.  If you find a bug in the code or in the
+customisation and support.  If you find a bug in the code or in the
 documentation, please report it on [the GitHub issue tracker][issues].
 
 ## Important note regarding bug reporting
 
 Your bug reports are very valuable.
 
-The most important thing when reporting bugs is making sure that the
-developer has a way to reproduce the problem exactly like it happened
-to you.
+The most important thing when reporting bugs is making sure that we have
+a way to reproduce the problem exactly like it happened to you.
 
-To do this, he needs to rule out interference from external factors
-like other Emacs extensions or other Lisp-side code.
+To do this, we need to rule out interference from external factors
+like other Emacs extensions or your own customisations.
 
-Here's an example that "sandboxes" an emacs just for reproducing the
-bug.
+Here's an example report that "sandboxes" an Emacs session just for 
+reproducing a bug.
 
 ```
 $ emacs --version
@@ -137,19 +128,22 @@ $ git clone https://github.com/capitaomorte/yasnippet.git yasnippet-bug
 $ cd yasnippet-bug
 $ git log -1 --oneline
 6053db0 Closes #527: Unbreak case where yas-fallback-behaviour is a list
-$ HOME=$PWD emacs -L  # This "sandboxes" your emacs, melpa configuration, etc
+$ HOME=$PWD emacs -L . # This "sandboxes" your emacs, melpa configuration, etc
 
 (require 'yasnippet)
 (yas-global-mode 1)
 
-When I open a foo-mode file I can't expand foo-mode snippets! 
+When I open a foo-mode file I don't see foo-mode under the "YASnippet" menu!
 OR
-I can't get yasnippet to load because frankinbogen!
+When loading yasnippet I see "Error: failed to frobnicate"!
 ```
 
+Using `emacs -Q` or temporarily moving your `.emacs` init file to the side 
+is another way to achieve good reproducibility.
+
 Here's a
 [another example](https://github.com/capitaomorte/yasnippet/issues/318)
-of a bug report. It has everything needed for a sucessfull analysis
+of a bug report. It has everything needed for a successful analysis
 and speedy resolution.
 
 Also, don't forget to state the Emacs version (use `M-x emacs-version`) and
@@ -159,9 +153,8 @@ do `git log -1` in the dir).
 Any more info is welcome, but don't just paste a backtrace or an error
 message string you got, unless we ask for it.
 
-
 There is also a [YASnippet google group][forum]. I will keep the group
-open for reference and for discussion among users, unfortunately I
+open for reference and for discussion among users. Unfortunately I
 can't guarantee a timely response, so maybe it's better to create a
 github issue clearly marking your intent (user support/bug/feature
 request).
@@ -174,4 +167,5 @@ Finally, thank you very much for using YASnippet!
 [forum]: http://groups.google.com/group/smart-snippet
 [melpa]: http://melpa.milkbox.net/
 [yasmate]: http://github.com/capitaomorte/yasmate
+[textmate-to-yas.el]: https://github.com/mattfidler/textmate-to-yas.el
 [yasnippet-snippets]: http://github.com/AndreaCrotti/yasnippet-snippets