From: Eric S Fraga <e.fraga@ucl.ac.uk>
To: suvayu ali <fatkasuvayu+linux@gmail.com>
Cc: Michael Hannon <jm_hannon@yahoo.com>,
Org-Mode List <emacs-orgmode@gnu.org>
Subject: Re: Customizing "Easy Templates"?
Date: Thu, 07 Jul 2011 09:30:37 +0100 [thread overview]
Message-ID: <87fwmitrv6.fsf@ucl.ac.uk> (raw)
In-Reply-To: <CAMXnza2bN2Krd4_gWFs8DTgu_oqCNGiVTtr0S9nizUP5X3hZFA@mail.gmail.com> (suvayu ali's message of "Thu, 7 Jul 2011 07:13:55 +0200")
suvayu ali <fatkasuvayu+linux@gmail.com> writes:
> Hey Mike,
>
> On Thu, Jul 7, 2011 at 4:28 AM, Michael Hannon <jm_hannon@yahoo.com> wrote:
>> I can't figure out how to
>> customize the text of these templates. Can anybody point me in the right
>> direction?
>>
>
> This should work:
>
> (add-to-list 'org-structure-template-alist
> '("S" "#+BEGIN_SRC ?\n\n#+END_SRC" "<src lang=\"?\">\n\n</src>"))
Mike,
if you intend to customise further than this, you might wish to consider
using yasnippets [1] instead of these templates, although these
templates are indeed quite useful! I use both but, for instance, for
source blocks, I have the following snippet defined:
--8<---------------cut here---------------start------------->8---
#name : #+begin_src language options ...#+end_src
# --
#+srcname: $1
#+begin_src $2 $3
$0
#+end_src
--8<---------------cut here---------------end--------------->8---
so that typing "src TAB" starts defining a source block with subsequent
TABs allowing me to fill in the name, the language, the arguments and
finally puts me into the actual code section.
The nice thing about yasnippets is that you can have defaults for any of
the fields. For instance, here is one I use for Java files (not org):
--8<---------------cut here---------------start------------->8---
#contributor: dobbymoodge <j...@transloc-inc.com>
#name : public? class ... { ... }
# --
// Copyright (c) 2011, Eric S Fraga, All rights reserved.
package ${1:jacaranda.design};
import jacaranda.base.Settings;
${2:public} class ${3:foo} ${4:extends jacaranda.base.EGO}
{
public static boolean debug = false;
private static final int dl = 5;
private static String version = "2011.03.02 20:04:40";
static {
Settings.output.printf (": <%s> $3\n", version);
}
${5:public} $3 () {
$0
}
} // end of $3 class
// Local Variables:
// time-stamp-line-limit: 1000
// time-stamp-format: "%04y-%02m-%02d %02H:%02M:%02S"
// time-stamp-active: t
// time-stamp-start: "version = \""
// time-stamp-end: "\";"
// End:
--8<---------------cut here---------------end--------------->8---
for when I start a new class file.
Footnotes:
[1] http://www.emacswiki.org/emacs/Yasnippet
--
: Eric S Fraga (GnuPG: 0xC89193D8FFFCF67D) in Emacs 24.0.50.1
: using Org-mode version 7.5 (release_7.5.586.g382e6)
next prev parent reply other threads:[~2011-07-07 8:30 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-07 2:28 Customizing "Easy Templates"? Michael Hannon
2011-07-07 5:13 ` suvayu ali
2011-07-07 8:30 ` Eric S Fraga [this message]
2011-07-07 15:33 ` Michael Hannon
2011-07-07 15:24 ` Michael Hannon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fwmitrv6.fsf@ucl.ac.uk \
--to=e.fraga@ucl.ac.uk \
--cc=emacs-orgmode@gnu.org \
--cc=fatkasuvayu+linux@gmail.com \
--cc=jm_hannon@yahoo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).