Thread: Re: [A-A-P-develop] Yet another patch (dmd.py this time)
Brought to you by:
vimboss
From: Lars I. I. <lar...@ig...> - 2004-02-28 14:33:48
|
Bram Moolenaar wrote: > Lars - > > >>>For me using $?var when $var was not set is equivalent to use $var when >>>it is empty. Thus I don't think the precense of a '?' should matter. >> >>Reading the docs more thouroughly, I have to agree. >> >>So my conclusion on how I want it: >> >>During RC-expansion, the result should be nothing if all expanded >>variables are empty. > > > I would agree with you, except that I can think of a situation where you > don't want it this way: > > LIBS = one two > NOLIBS = > ext = .lib > noext = > > :print - lib$*LIBS$ext - > :print - lib$*LIBS$noext - > :print - lib$*NOLIBS$ext - > :print - lib$*NOLIBS$noext - > > What would you expect to be the result? I would think this: > > - libone.lib libtwo.lib - > - libone libtwo - > - - > - - > > Agreed? > > I think the rule should be that $*var expansion is empty when $var is > empty. Whether something follows or not is irrelevant. Good example. I agree. Lars Ivar Igesund |
From: Lars I. I. <lar...@ig...> - 2004-04-24 13:05:20
|
It seems like this isn't implemented. How and where? Lars Ivar Lars Ivar Igesund wrote: > Bram Moolenaar wrote: > >> Lars - >> >> >>>> For me using $?var when $var was not set is equivalent to use $var when >>>> it is empty. Thus I don't think the precense of a '?' should matter. >>> >>> >>> Reading the docs more thouroughly, I have to agree. >>> >>> So my conclusion on how I want it: >>> >>> During RC-expansion, the result should be nothing if all expanded >>> variables are empty. >> >> >> >> I would agree with you, except that I can think of a situation where you >> don't want it this way: >> >> LIBS = one two >> NOLIBS = >> ext = .lib >> noext = >> >> :print - lib$*LIBS$ext - >> :print - lib$*LIBS$noext - >> :print - lib$*NOLIBS$ext - >> :print - lib$*NOLIBS$noext - >> >> What would you expect to be the result? I would think this: >> >> - libone.lib libtwo.lib - >> - libone libtwo - >> - - >> - - >> >> Agreed? >> >> I think the rule should be that $*var expansion is empty when $var is >> empty. Whether something follows or not is irrelevant. > > > Good example. I agree. > > Lars Ivar Igesund > > > ------------------------------------------------------- > SF.Net is sponsored by: Speed Start Your Linux Apps Now. > Build and deploy apps & Web services for Linux with > a free DVD software kit from IBM. Click Now! > http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click > _______________________________________________ > A-A-P-develop mailing list > A-A...@li... > https://lists.sourceforge.net/lists/listinfo/a-a-p-develop > > |
From: Bram M. <Br...@mo...> - 2004-04-24 14:26:13
|
Lars Ivar Igesund wrote: [about rc-style expansion giving an empty result if the expanded variable is empty] > It seems like this isn't implemented. How and where? I implemented at least part of the RC-style expansion ideas. The code was getting complicated,, thus I only implemented what I thought was necessary. Can you give a few examples of what you think doesn't work correctly now? -- hundred-and-one symptoms of being an internet addict: 15. Your heart races faster and beats irregularly each time you see a new WWW site address in print or on TV, even though you've never had heart problems before. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Buy at Amazon and help AIDS victims -- http://ICCF.nl/click1.html /// |
From: Lars I. I. <lar...@ig...> - 2004-04-24 14:40:56
|
Bram Moolenaar wrote: > Lars Ivar Igesund wrote: > > [about rc-style expansion giving an empty result if the expanded > variable is empty] > > >>It seems like this isn't implemented. How and where? > > > I implemented at least part of the RC-style expansion ideas. The code > was getting complicated,, thus I only implemented what I thought was > necessary. > > Can you give a few examples of what you think doesn't work correctly > now? > I see that it works in some cases, but it fails if you do this: :import d :program foo : foo.d The command line becomes #dmd -L -L+ -offoo.exe build-nt\ptest.obj where -L comes from -L$*?DLINKFLAGS and -L+ from -L+$*?DLIBS in the actions in dmd.py Lars Ivar |
From: Bram M. <Br...@mo...> - 2004-04-24 21:15:35
|
Lars Ivar Igesund wrote: > > [about rc-style expansion giving an empty result if the expanded > > variable is empty] > > > > > >>It seems like this isn't implemented. How and where? > > > > > > I implemented at least part of the RC-style expansion ideas. The code > > was getting complicated,, thus I only implemented what I thought was > > necessary. > > > > Can you give a few examples of what you think doesn't work correctly > > now? > > > > I see that it works in some cases, but it fails if you do this: > > :import d > :program foo : foo.d > > The command line becomes > #dmd -L -L+ -offoo.exe build-nt\ptest.obj > > where -L comes from -L$*?DLINKFLAGS and -L+ from -L+$*?DLIBS in the > actions in dmd.py Ah, it only works when a variable is empty, not when the variable does not exist. This requires a small change in Commands.py: --- Commands.py 19 Apr 2004 08:54:16 -0000 1.122 +++ Commands.py 24 Apr 2004 20:25:47 -0000 @@ -1665,7 +1665,7 @@ idx = e # Skip over optional variable that is not defined. - if not (scope_found and var_found): + if not (scope_found and var_found) and not exp.rcstyle: continue # Find what comes after $VAR. @@ -1682,6 +1682,11 @@ break idx = idx + 1 after = arg[s:idx] + + if exp.rcstyle and not (scope_found and var_found): + # xxx$?var results in nothing when $var doesn't exists + res = res[0:itemstart] + continue if exp.attr: # Obtain any following attributes, advance to after them. -- hundred-and-one symptoms of being an internet addict: 20. When looking at a pageful of someone else's links, you notice all of them are already highlighted in purple. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// Sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ Project leader for A-A-P -- http://www.A-A-P.org /// \\\ Buy at Amazon and help AIDS victims -- http://ICCF.nl/click1.html /// |