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

Naive question: how hard are namespaces for functions



Hello,
writing something sophisticated involves multiple functions. E.g. I have 47 interactive-mode (not at-startup time) functions in Zplugin, to provide things like:

% zplugin csearch  # Search for completions of plugins
[+] is installed, [-] uninstalled, [+-] partially installed
[+] _local/zplugin                      _zplugin
[-] benclark/parallels-zsh-plugin       _parallels
[-] or17191/going_places                _favrm, _goto
[+] psprint/zsh-navigation-tools        _n-kill
[-] tevren/gitfast-zsh-plugin           _git

So one can disable/enable selected completions. This is nice, but it hurts me that compared to zsh -f, $functions here are very populated. I have much free time so I invest it in Zsh, from this experience I can theoretically see Zsh becoming more like e.g. Ruby. Modules can be built outside Zsh source as plugins, I plan to add Oracle DBM module either on Github or in Zsh upstream, there is the fresh zsh/gdbm module (and it loads in just 0.43 ms, according to zprof, so modules are good way to go), I also plan to publish the regex re2 module from Phill as plugin. Then there is ZUI library, I wrote variable browser (https://github.com/zdharma/zbrowse) in 4 hours with it.

The point is: there is growing discomfort that $functions and $parameters tend to get more populated. Database, regex, etc. support can grow, ZUI applications can grow, but it comes down to single bag for all this, single namespace.

Maybe a namespace support at least for $functions can be easily added? Few ready namespaces:

- completions,
- autosuggestions plugin ${#functions[(I)_zsh_autosuggest*]} == 253
- zsh-syntax-highlighting, ${#functions[(I)_zsh_highlight*]} == 250

The point is to make $functions/functions (builtin) usable again. Like it probably was 5-10 years ago when one could use $functions to e.g. find interactively created functions. Now it's impossible.

--
Sebastian Gniazdowski
psprint /at/ zdharma.org



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