Zsh Mailing List Archive
Messages sorted by:
Re: compadd -r
- X-seq: zsh-workers 5325
- From: "Bart Schaefer" <schaefer@xxxxxxxxxxxxxxxx>
- To: Sven Wischnowsky <wischnow@xxxxxxxxxxxxxxxxxxxxxxx>, zsh-workers@xxxxxxxxxxxxxx
- Subject: Re: compadd -r
- Date: Mon, 8 Feb 1999 09:37:40 -0800
- In-reply-to: <199902081217.NAA27404@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
- References: <199902081217.NAA27404@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
On Feb 8, 1:17pm, Sven Wischnowsky wrote:
} Subject: Re: compadd -r
} Bart Schaefer wrote:
} > How about this: For the simple case (remove the whole suffix, which I
} > suspect is the most common by far) stick with something like `-r <str>'.
} > For complex cases, let the user give the name of a user-defined function
} > that is called as a callback as if it were a ZLE widget, that is, with
} > LBUFFER and RBUFFER etc. writable, and with the keystrokes that caused
} > it to be called also available somewhere.
} The easiest way to do this is to add a function-pointer-variable in
} the zle module that will be called whenever zle thinks that a suffix
} should be removed. The completion module sets this variable whenever
} it needs it to the address of a function that calls the given shell
Isn't this more complicated than necessary? Why couldn't it be the same
function pointer every time? All it has to do is the equivalent of
} This is easy to implement, but somehow I think that we probably should
} take this as an example for a more gerneral problem (calling functions
} in sub-modules from modules they depend upon), and solve that one.
Eh? There isn't any such dependency here, is there? The compctl module
already depends on zle, and it's calling a function in zle.
} What I'm thinking about is some kind of hook-mechanism. Giving modules
} the possibility to register functions that should be called whenever
} some event happens.
This is, in effect, what the "wrappers" already are.
} By making the description of the hooks contain a `char *name' this
} could also easily exposed to user level to let users register shell
} function to be executed when a hook is run. The builtin to control
} this could be added in a separate module, of course.
Have you finished reimplementing emacs yet?
Bart Schaefer Brass Lantern Enterprises
Messages sorted by: