[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: m4 -e
From: |
Gary V . Vaughan |
Subject: |
Re: m4 -e |
Date: |
Sat, 11 Aug 2001 02:17:08 +0100 |
On Friday 10 August 2001 11:46 am, Akim Demaille wrote:
> >>>>> "Gary" == Gary V Vaughan <address@hidden> writes:
>
> >> 2. keep it as is but add a negative -e option
>
> Gary> I think this is better...
I'll fix this presently.
> >> Also, how about making it possible to use readline? This could
> >> make 3. easier (when not linked with m4, simply exit?).
>
> Gary> I would like to do this... but only as a module. M4 is rarely
> Gary> used interactively (compared to the number of people who
> Gary> generate configure scripts), so I don;t think readline belongs
> Gary> in the core. There is probably a small amount of work needed in
> Gary> the main loop to provide the hooks for a readline interface
> Gary> module to connect to.
>
> Hm... For my personal education, I'd be happy to give this a try, but
> you certainly have more experience :)
At a glance, I think m4_next_token needs to access a hook function to collect
and cache input, and then consume chars from the cache rather direct from the
input stream. There will probably be some jiggery pokery to manage the cache
correctly in respect of files pushed on the input stack, and when rescanning.
To expose the input caching mechanism nicely, I think that we should add some
API calls to libm4 that a module can either call them from a builtin or in
their init function. There must be all sorts of other cool things that this
could be used for that we haven't thought of yet. In fact, it would be neat
to bear in mind that a nice future extension would be to have a facility to
stack functions on the input and output streams -- in the first instance to
connect unusual sinks and sources to m4, and additionally to be able to
encode and decode in different ways (reading gzipped sources directly?)
between the sink and/or source and the m4 interpreter proper... perhaps I
should stub out an API so that we don't need to change things unnecessarily
when there is time to do the implementation?
> >> Also, I like when options are changeable by the script itself, so
> >> maybe we could have a builtin to adjust this? Something a la
> >> debugmode/debugfile.
>
> Gary> To toggle interactive mode programmatically? Sure, why not.
>
> Well, I'm not ferociously for this. I'm ferociously in favor of a
> means for me to stop M4 when it goes wild, but if any of the other
> possibility is provided, I'm fine.
Perhaps I misunderstood your original intention? What was it that you wanted
the debugmode builtin to toggle?
> [036] - m4sh 0.1
> by Anonymous
> Thursday, December 9th 2001 10:42
>
> [snip]
>
> URL: http://freshmeat.net/projects/m4sh/
Okay. You got me. I clicked the link... :-D :-D
Cheers,
Gary.
--
())_. Gary V. Vaughan gary@(oranda.demon.co.uk|gnu.org)
( '/ Research Scientist http://www.oranda.demon.co.uk ,_())____
/ )= GNU Hacker http://www.gnu.org/software/libtool \' `&
`(_~)_ Tech' Author http://sources.redhat.com/autobook =`---d__/
- m4 -e, Akim Demaille, 2001/08/09
- Re: m4 -e, Gary V . Vaughan, 2001/08/09
- Re: m4 -e, Akim Demaille, 2001/08/10
- Re: m4 -e,
Gary V . Vaughan <=