From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: joaotavora@gmail.com (=?iso-8859-1?Q?Jo=E3o_T=E1vora?=) Newsgroups: gmane.emacs.devel Subject: Re: Including Yasnippet to Emacs Date: Mon, 17 Mar 2014 20:23:58 +0000 Message-ID: References: <20140317041012.GA24472@debian> <20140317174244.GA28011@debian> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1395087866 30814 80.91.229.3 (17 Mar 2014 20:24:26 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 17 Mar 2014 20:24:26 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 17 21:24:33 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WPe5G-00064f-8y for ged-emacs-devel@m.gmane.org; Mon, 17 Mar 2014 21:24:30 +0100 Original-Received: from localhost ([::1]:60098 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPe5F-0001fK-QM for ged-emacs-devel@m.gmane.org; Mon, 17 Mar 2014 16:24:29 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58612) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPe57-0001dw-NG for emacs-devel@gnu.org; Mon, 17 Mar 2014 16:24:27 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WPe51-0008NI-Sr for emacs-devel@gnu.org; Mon, 17 Mar 2014 16:24:21 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:56335) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPe51-0008N7-MX for emacs-devel@gnu.org; Mon, 17 Mar 2014 16:24:15 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1WPe4z-0005mD-Dy for emacs-devel@gnu.org; Mon, 17 Mar 2014 21:24:13 +0100 Original-Received: from a81-84-241-129.static.cpe.netcabo.pt ([81.84.241.129]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 17 Mar 2014 21:24:13 +0100 Original-Received: from joaotavora by a81-84-241-129.static.cpe.netcabo.pt with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 17 Mar 2014 21:24:13 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 46 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: a81-84-241-129.static.cpe.netcabo.pt User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (windows-nt) Cancel-Lock: sha1:UnMQXb1YzldcHdgJ3KFyV+8BTD8= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:170459 Archived-At: Stefan writes: > snippet.el is not designed to be user-friendly, but to be easy to > integrate in a major-mode instead (yasnippet rather sucks in this > regard, you end up needing to distribute umpteen little files > instead). Actually, you can compile these umpteen little files into one file per mode. See `yas-compile-directory'. Few use it AFAIK, but it's there and it should work (at least the tests show it does). And that's because yasnippet already has an elisp interface to defining snippets, `yas-define-snippets'. There is definitely some suckage to it, otherwise I wouldn't be writing snippet.el, but users or distribtors aren't forced to deal with those million files. > [ BTW, part of the intention behind snippet.el is to make Edebug work > with them. Si in some cases they may turn out to be more > user-friendly, rather than less so. ] Indeed, I've answered many bugs from those who don't understand why snippets don't work as intended, and I don't blame them. > As for "not so powerful", I'm not sure what you mean: they should be > pretty much as powerful as yasnippet's since yasnippet will be written > on top of them. And of course, they can run any Lisp code you like. Danil, snippet.el is in its core just as powerful as yasnippet. Just a few bits are missing like in-snippet expansions and snippet revival after undo, but I plan to (re)implement them all. >> And they are all not manage keybindings. > This layer is not provided yet, indeed. E.g. I want to link snippet.el with > abbrevs, so the "table of snippets" will be an abbrev table. And I intend to keep the familiar yasnippet keying mechanism in yasnippet.el. In general yasnippet will keep most backward compatibility. > more docs we could provide. For snippet.el, it's still in flux and > there are indeed no docs yet, IIRC. `define-snippet's docstring contains the gist of what that main entry point will be. It's quite heavy at 60 lines, so maybe parts of it belong to the manual, but it should give you an idea of what the defined snippets can do. Did you read this docstring, Danil?