From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: Re: Perl parser, some questions Date: Thu, 31 Mar 2011 10:39:51 +0200 Message-ID: <61DB2A6C-1F7C-4CA6-972B-F30493D817E6@gmail.com> References: Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Return-path: Received: from [140.186.70.92] (port=56325 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q5DQ6-0006hc-Vs for emacs-orgmode@gnu.org; Thu, 31 Mar 2011 04:40:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q5DQ3-0001tA-TT for emacs-orgmode@gnu.org; Thu, 31 Mar 2011 04:39:57 -0400 Received: from mail-ew0-f41.google.com ([209.85.215.41]:65086) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q5DQ3-0001sv-OY for emacs-orgmode@gnu.org; Thu, 31 Mar 2011 04:39:55 -0400 Received: by ewy9 with SMTP id 9so691321ewy.0 for ; Thu, 31 Mar 2011 01:39:54 -0700 (PDT) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Steven Haryanto Cc: emacs-orgmode@gnu.org On Mar 31, 2011, at 7:05 AM, Steven Haryanto wrote: > Hi all, >=20 > I'm writing an Org parser for Perl[1]. There are a few things about = the syntax which are still unclear to me. >=20 > 1. The manual says that multiple (different) in-buffer settings can be = specified on the same line, but so far I haven't found such example = anywhere. What is the syntax for this? This only applied to the #+STARTUP settings which can have a number of keywords on a single line, like #+STARTUP: align hidestars odd >=20 > 2. For settings that can be applied near a block or table, like: >=20 > |1|2 > |2|6 > #+TBLFM: @2$1=3D@1$1*2::@2$2=3D@1$2*3 >=20 > does it matter if it is specified before/after? Can there be = separating lines between them? E.g. Yes, there can be other lines in between, even though this is probably not a good idea. The way the parser works is that it runs through the buffer, finds CAPTURE etc and applies it the next thing (table, link,...) that wants it. >=20 > #+CAPTION: Some caption > some text <-- allowed? > #+LABEL: ... > some more text <-- allowed? > |...|...| > |...|...| >=20 > (And btw, multiple #+TBLFM below a table doesn't seem to work on my = Emacs, all formulas need to be specified on a single (long) TBLFM = setting.) Yes, only one TBLFM line per table. >=20 > 3. What constitutes a valid tag? Emacs doesn't seem to recognize tags = (e.g. align them) if they contain a dash. Tags are matched by [[:alnum:]_@#%:]+ Dashes are not allowed because this would be cumbersome for the agenda tags matcher which uses "-" as NOT. >=20 > 4. What is the difference between TYP_TODO/TODO/SEQ_TODO? TODO and SEQ_TODO are the same. TYP_TODO is slightly different in operation. When you press C-c C-t in a line with the keyword defined by TYP_TODO, the task will immediately switch to DONE,=20 instead of to the next state in the sequence. I do believe the manual explains this quite well, but I don't believe many people use = this. > (IIRC, the manual is not clear on this). Or between TAGS/FILETAGS. TAGS defines tags that will be used in the buffer=20 and defines fast keyboard shortcuts for them. Though you are allowed to also use tags that are not in tis list. FILETAGS defines tags that are *inherited* by all trees in the buffer, You can imagine FILETAGS as the tags specified on a level zero headline of which all level one headlines in the buffer are children. HTH. - Carsten=