Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Is this an orthodox use of zstyle?

    Hi Bart :)

 * Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx> dixit:
> }     I think I can use styles to carry state information from one
> } widget execution to another, so the widget will behave differently
> } depending on the result of past executions, but: is this an orthodox
> } use of styles [...]?
> Typically functions read styles but don't set them, unless they're a
> special kind of function that's designed to help the user set up his
> environment (e.g., (in 4.1.1) select-word-style).

    That's the cause of my question, I haven't seen this kind of use
in zsh functions (well, I haven't checked all...).
> If the same function will behave differently depending on context
> (e.g., it might be called as either a normal widget or a completion
> widget) then styles might be appropriate, but if you don't need to
> save different state in different contexts, parameters are better.

    Well, the first widgets I want to modify using state information
really don't need contexts, but I think that I may need it in the
future, for example if I write any completion widget (I don't use
compsys), so it may be a good thing using styled from the beginning.

> }     I know that I can do this with an environment variable but since
> } the state information can be a bit complex I will need an array, or
> } maybe a couple for separating information, or even an associative
> You presumably don't want to "export" the widget state parameters
> (you can't export styles) so it's fine to use arrays and associative
> arrays for your state.

    Yes, you're true, I don't want nor need to export the state, so
this is not an issue. Anyway, since styles doesn't pollute namespace,
wouldn't be better to directly use them for storing state information
even without contexts?

> For example, look at the set of parameters
> used by the zftp functions to maintain state.

    Yes, I've took that as an example ;)) but then my idea about
using styles arose. I must admit that for simple state information, a
simple array is enough, or maybe one per 'session' (whatever you call
a session), but the power of styles is exciting ;)

    Raúl Núñez de Arenas Coronado

Linux Registered User 88736
http://www.pleyades.net & http://raul.pleyades.net/

Messages sorted by: Reverse Date, Date, Thread, Author