summaryrefslogtreecommitdiff
path: root/Etc/zsh-development-guide
diff options
context:
space:
mode:
Diffstat (limited to 'Etc/zsh-development-guide')
-rw-r--r--Etc/zsh-development-guide53
1 files changed, 46 insertions, 7 deletions
diff --git a/Etc/zsh-development-guide b/Etc/zsh-development-guide
index 7f5266bd9..cbbc798d3 100644
--- a/Etc/zsh-development-guide
+++ b/Etc/zsh-development-guide
@@ -70,6 +70,19 @@ avoided further changes to our workflow.
a commit to the master repository. Don't create a separate change for
this: amend the existing commit in your local repository.
+ Several developers use scripts to automate part or all of the ChangeLog
+ workflow:
+
+ Subject: helper script for making ChangeLog entries
+ X-Seq: 33835, 33872, 34912
+ http://www.zsh.org/mla/workers/2014/msg01622.html
+ http://www.zsh.org/mla/workers/2014/msg01659.html
+ http://www.zsh.org/mla/workers/2015/msg00836.html
+
+ Subject: Re: _git commit object name completion
+ X-Seq: 35414
+ http://www.zsh.org/mla/workers/2015/msg01338.html
+
* Do not merge your private feature branches onto the master branch: a
linear history without merge commits is simpler to follow (and to
bisect).
@@ -738,7 +751,7 @@ the other things that can be defined by modules:
/**/
int
- boot_foo(Module m)
+ boot_(Module m)
{
int ret;
@@ -748,7 +761,7 @@ the other things that can be defined by modules:
...
/**/
int
- cleanup_foo(Module m)
+ cleanup_(Module m)
{
deletehookdefs(m->nam, foohooks, sizeof(foohooks)/sizeof(*foohooks));
...
@@ -789,14 +802,37 @@ The definition is simple:
};
The macro `WRAPDEF(...)' gets the C-function as its only argument.
-This function should be defined like:
+The `boot_()' function must install wrappers by calling `addwrapper()'
+like so:
+
+ /**/
+ int
+ boot_(Module m)
+ {
+ int ret;
+
+ ret = addwrapper(m, wrapper);
+ ...
+ }
+
+The `cleanup_()' function should then remove the wrappers again:
+
+ /**/
+ int
+ cleanup_(Module m)
+ {
+ deletewrapper(m, wrapper);
+ ...
+ }
+
+The wrapper function should be defined like:
/**/
static int
- ex_wrapper(List list, FuncWrap w, char *name)
+ ex_wrapper(Eprog prog, FuncWrap w, char *name)
{
...
- runshfunc(list, w, name);
+ runshfunc(prog, w, name);
...
return 0;
}
@@ -815,11 +851,11 @@ finished:
/**/
static int
- ex_wrapper(List list, FuncWrap w, char *name)
+ ex_wrapper(Eprog prog, FuncWrap w, char *name)
{
if (wrapper_need_to_run) {
...
- runshfunc(list, w, name);
+ runshfunc(prog, w, name);
...
return 0;
}
@@ -907,6 +943,9 @@ Documentation
surrounding text. No extra newlines after the opening or before the
closing parenthesis are required.
+A syntax highlighting file for Vim is included, just source tt(Doc/Zsh/.vimrc)
+before editing one of the Doc/Zsh/*.yo files.
+
Module names
------------