<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rtmux.git/hooks.c, branch master</title>
<subtitle>Tmux with Rahm's extra hacks.</subtitle>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/'/>
<entry>
<title>Merge hooks into options and make each one an array option. This allows</title>
<updated>2019-04-26T11:38:51+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2019-04-26T11:38:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=dfb7bb683057d08303955c49073f4b475bd0e2d6'/>
<id>dfb7bb683057d08303955c49073f4b475bd0e2d6</id>
<content type='text'>
multiple commands to be easily bound to one hook. set-hook and
show-hooks remain but they are now variants of set-option and
show-options. show-options now has a -H flag to show hooks (by default
they are not shown).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
multiple commands to be easily bound to one hook. set-hook and
show-hooks remain but they are now variants of set-option and
show-options. show-options now has a -H flag to show hooks (by default
they are not shown).
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused hooks_run function, from Thomas Adam.</title>
<updated>2018-01-18T07:10:53+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2018-01-18T07:10:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=c9037fde1c6fd1e32988951384d2a224591867f1'/>
<id>c9037fde1c6fd1e32988951384d2a224591867f1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Provide a way for hooks to tag formats onto the commands they fire so</title>
<updated>2016-10-16T19:36:37+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2016-10-16T19:36:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=3f35b5299fb2c08637aa12757185e5b82eeb3fc1'/>
<id>3f35b5299fb2c08637aa12757185e5b82eeb3fc1</id>
<content type='text'>
that the user can get at additional information - now used for the
"hook" format, more to come.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
that the user can get at additional information - now used for the
"hook" format, more to come.
</pre>
</div>
</content>
</entry>
<entry>
<title>Mass rename struct cmd_q to struct cmdq_item and related.</title>
<updated>2016-10-16T19:04:05+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2016-10-16T19:04:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=b342bd0b462f69a9fc9a59d52bcd4bb34b57114f'/>
<id>b342bd0b462f69a9fc9a59d52bcd4bb34b57114f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rewrite command queue handling. Each client still has a command queue,</title>
<updated>2016-10-16T17:55:14+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2016-10-16T17:55:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=ddc4512d2e0eda6c705e002cb5dbf80719d709e1'/>
<id>ddc4512d2e0eda6c705e002cb5dbf80719d709e1</id>
<content type='text'>
but there is also now a global command queue. Instead of command queues
being dispatched on demand from wherever the command happens to be
added, they are now all dispatched from the top level server
loop. Command queues may now also include callbacks as well as commands,
and items may be inserted after the current command as well as at the end.

This all makes command queues significantly more predictable and easier
to use, and avoids the complex multiple nested command queues used by
source-file, if-shell and friends.

A mass rename of struct cmdq to a better name (cmdq_item probably) is
coming.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
but there is also now a global command queue. Instead of command queues
being dispatched on demand from wherever the command happens to be
added, they are now all dispatched from the top level server
loop. Command queues may now also include callbacks as well as commands,
and items may be inserted after the current command as well as at the end.

This all makes command queues significantly more predictable and easier
to use, and avoids the complex multiple nested command queues used by
source-file, if-shell and friends.

A mass rename of struct cmdq to a better name (cmdq_item probably) is
coming.
</pre>
</div>
</content>
</entry>
<entry>
<title>Trying to do hooks generically is way too complicated and unreliable and</title>
<updated>2016-10-13T22:48:51+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2016-10-13T22:48:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=4289a1ebfa7479413ec5ac543b88c4ea039d00a0'/>
<id>4289a1ebfa7479413ec5ac543b88c4ea039d00a0</id>
<content type='text'>
confusing, particularly trying to automatically figure out what target
hooks should be using. So simplify it:

- drop before hooks entirely, they don't seem to be very useful;

- commands with special requirements now fire their own after hook (for
  example, if they change session or window, or if they have -t and -s
  and need to choose which one the hook uses as current target);

- commands with no special requirements can have the CMD_AFTERHOOK flag
  added and they will use the -t state.

At the moment new-session, new-window, split-window fire their own hook,
and display-message uses the flag. The remaining commands still need to
be looked at.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
confusing, particularly trying to automatically figure out what target
hooks should be using. So simplify it:

- drop before hooks entirely, they don't seem to be very useful;

- commands with special requirements now fire their own after hook (for
  example, if they change session or window, or if they have -t and -s
  and need to choose which one the hook uses as current target);

- commands with no special requirements can have the CMD_AFTERHOOK flag
  added and they will use the -t state.

At the moment new-session, new-window, split-window fire their own hook,
and display-message uses the flag. The remaining commands still need to
be looked at.
</pre>
</div>
</content>
</entry>
<entry>
<title>Loads more static, except for cmd-*.c and window-*.c.</title>
<updated>2016-10-10T21:29:23+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2016-10-10T21:29:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=c426e485e527a03aa3b4bdbb3203f621e006cbd5'/>
<id>c426e485e527a03aa3b4bdbb3203f621e006cbd5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add infrastructure to work out the best target given a pane or window</title>
<updated>2015-12-16T21:50:37+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2015-12-16T21:50:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=021c64310daa4ae4c4e8af08f17c994f21237758'/>
<id>021c64310daa4ae4c4e8af08f17c994f21237758</id>
<content type='text'>
alone and use it to add pane_died and pane_exited hooks.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
alone and use it to add pane_died and pane_exited hooks.
</pre>
</div>
</content>
</entry>
<entry>
<title>Some hooks API changes to fire a hook while waiting another cmdq and</title>
<updated>2015-12-15T13:43:07+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2015-12-15T13:43:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=ac9778395feb8551e0acbd2f32465b65aeba5e05'/>
<id>ac9778395feb8551e0acbd2f32465b65aeba5e05</id>
<content type='text'>
infrastructure that will be needed soon.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
infrastructure that will be needed soon.
</pre>
</div>
</content>
</entry>
<entry>
<title>We cannot do hooks_find and then hooks_remove because it might have come</title>
<updated>2015-12-11T15:46:57+00:00</updated>
<author>
<name>nicm</name>
<email>nicm</email>
</author>
<published>2015-12-11T15:46:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rtmux.git/commit/?id=bd5918760ecd1f40a574ccc8a302af869f68c27f'/>
<id>bd5918760ecd1f40a574ccc8a302af869f68c27f</id>
<content type='text'>
from the parent (global) tree, instead make it remove by name like options.

While here, also tidy up a few bits of options and hooks handling (use
RB_FOREACH_SAFE, and a helper function for the free).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
from the parent (global) tree, instead make it remove by name like options.

While here, also tidy up a few bits of options and hooks handling (use
RB_FOREACH_SAFE, and a helper function for the free).
</pre>
</div>
</content>
</entry>
</feed>
