Thread: [A-a-p-user] how to write a general rule
Brought to you by:
vimboss
From: Joerg B. <j....@we...> - 2003-11-06 09:08:37
|
Dear Listreader, I am not sure, how to write a generell aap-rule. I have a inputfile x.in that sould be transformed to x.out. For the sake of simplicity let's assume that the tranformation is a sed step. So I have this aap rule: ------------------ x.out : x.in :sys sed -e "s,e,X,g" <$source >$target ------------------ This works fine. Now my question: how do I generalize this rule for file x.in to any file that ends with a ".in"? Joerg @bram: I cant find this in the manual, but I will make up a documented example for the documentation - if you like. |
From: Lars I. I. <lar...@ig...> - 2003-11-06 09:15:02
|
----- Original Message ----- From: "Joerg Beyer" <j....@we...> > Dear Listreader, > > I am not sure, how to write a generell aap-rule. I have a > inputfile x.in that sould be transformed to x.out. For the > sake of simplicity let's assume that the tranformation is > a sed step. > > So I have this aap rule: > > ------------------ > x.out : x.in > :sys sed -e "s,e,X,g" <$source >$target > ------------------ > > This works fine. Now my question: how do I generalize > this rule for file x.in to any file that ends with a ".in"? > > > Joerg > > @bram: I cant find this in the manual, but I will make up > a documented example for the documentation - if you like. Are you sure about this? Have you looked at this page: http://www.a-a-p.org/exec/user-filetype.html and maybe also http://www.a-a-p.org/exec/user-language.html Also, look at the commands :action, :do, :rule and :route. Lars Ivar Igesund |
From: <j....@we...> - 2003-11-06 09:53:19
|
On Thu, Nov 06, 2003 at 10:19:22AM +0100, Lars Ivar Igesund wrote: > ----- Original Message ----- > From: "Joerg Beyer" <j....@we...> > > > Dear Listreader, > > > > I am not sure, how to write a generell aap-rule. I have a > > inputfile x.in that sould be transformed to x.out. For the > > sake of simplicity let's assume that the tranformation is > > a sed step. > > > > So I have this aap rule: > > > > ------------------ > > x.out : x.in > > :sys sed -e "s,e,X,g" <$source >$target > > ------------------ > > > > This works fine. Now my question: how do I generalize > > this rule for file x.in to any file that ends with a ".in"? > > > > > > Joerg > > > > @bram: I cant find this in the manual, but I will make up > > a documented example for the documentation - if you like. > > Are you sure about this? Have you looked at this page: > > http://www.a-a-p.org/exec/user-filetype.html > > and maybe also > > http://www.a-a-p.org/exec/user-language.html > > Also, look at the commands :action, :do, :rule and :route. > yes, I read those parts of the manual - but to be hoenst, I dont fully understand it. I understand, that I have to define a filetype (in my case that would be like this: :filetype· suffix in myin suffix out myout # this says: everything ending with ".in" is of the type "myin" # and files ending ".out" are of the type "myout". ) But my question is: how could I tell aap, that to do, when aap should make an x.out of an x.in. I assume, that this is very simple. any suggestion is welcome Joerg |
From: Lars I. I. <lar...@ig...> - 2003-11-06 10:00:57
|
----- Original Message ----- From: "Joerg Beyer" <j....@we...> To: <a-a...@li...> Sent: Thursday, November 06, 2003 10:08 AM Subject: [A-a-p-user] how to write a general rule > Dear Listreader, > > I am not sure, how to write a generell aap-rule. I have a > inputfile x.in that sould be transformed to x.out. For the > sake of simplicity let's assume that the tranformation is > a sed step. > > So I have this aap rule: > > ------------------ > x.out : x.in > :sys sed -e "s,e,X,g" <$source >$target > ------------------ > > This works fine. Now my question: how do I generalize > this rule for file x.in to any file that ends with a ".in"? > I'm not really an expert, but shouldn't this work? :rule %.out : %.in :sys sed -e "s,e,X,g" <$source >$target http://www.a-a-p.org/exec/ref-commands.html#cmd-rule Lars Ivar Igesund |
From: <j....@we...> - 2003-11-06 10:40:14
|
On Thu, Nov 06, 2003 at 11:05:16AM +0100, Lars Ivar Igesund wrote: > I'm not really an expert, but shouldn't this work? > > :rule %.out : %.in > :sys sed -e "s,e,X,g" <$source >$target > > http://www.a-a-p.org/exec/ref-commands.html#cmd-rule > yes, that works. I misunderstood explanation of ":rule" from the docu. thanks Joerg |
From: Bram M. <Br...@mo...> - 2003-11-07 13:11:29
|
Joerg Beyer wrote: > I am not sure, how to write a generell aap-rule. I have a > inputfile x.in that sould be transformed to x.out. For the > sake of simplicity let's assume that the tranformation is > a sed step. > > So I have this aap rule: > > ------------------ > x.out : x.in > :sys sed -e "s,e,X,g" <$source >$target > ------------------ > > This works fine. Now my question: how do I generalize > this rule for file x.in to any file that ends with a ".in"? You already found out that you need to use "%.out : %.in". > @bram: I cant find this in the manual, but I will make up > a documented example for the documentation - if you like. I notice that the use of "%" is not explained in the reference manual. If you can write something to add there that would be useful. I actually planned to support more ways of pattern matching for ":rule", but didn't give it a high priority. There doesn't seem to be much demand for it. -- "I've been teaching myself to play the piano for about 5 years and now write most of my songs on it, mainly because I can never find any paper." Jeff Lynne, ELO's greatest hits /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Creator of Vim - Vi IMproved -- http://www.Vim.org \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Help AIDS victims, buy here: http://ICCF-Holland.org/click1.html /// |