Hi, Can I ask what where we're at with this work? Is it still being considered for inclusion to mainline tmux or has priorities changed?
I can see this being enormous benefit to tmux. Thank you all for your hard work in making tmux one of my most valued applications I use daily. David On 15 April 2013 00:12, Thomas Adam <tho...@xteddy.org> wrote: > Hi, > > Here's V3 of hook support for commands. Compared to V2, I've done the > following: > > * Grouped together header includes to remove blank lines (I hope :P); > * Removed extraneous tab characters from prepare() for struct assignments; > * Made error messages not use capitalisation on first word or add a > full-stop at the end of the sentence. > * Removed the on-bell hook for now -- will add something more generic later > on pending further discussion (I've my own ideas/questions about this > point anyway.) > * Added a man page entry for all of this. > > I don't think I've missed converting a command to use hooks, but if I have, > do shout. I'm keen to get as much testing on this either way -- whether > that's through independant testing, or merging this to OpenBSD to see if it > beds in well, or not. > > Things to watch out for will be existing commands still working the same way > they used to without hooks defined. Due to the changes I've had to make to > support hooks, this has lead to changes in how commands run, and whilst I've > made every effort not to bugger it up, I have a wonderful history of doing > just that -- so please, test away. :) > > Any questions, do please ask. > > Kindly, > > -- Thomas Adam > > Thomas Adam (3): > Define hooks infrasructure > Convert commands to use prepare() > Add man page entry for hooks > > Makefile.am | 3 ++ > cmd-attach-session.c | 14 ++++++- > cmd-bind-key.c | 3 +- > cmd-break-pane.c | 17 +++++++- > cmd-capture-pane.c | 15 ++++++- > cmd-choose-buffer.c | 17 ++++++-- > cmd-choose-client.c | 17 ++++++-- > cmd-choose-list.c | 17 ++++++-- > cmd-choose-tree.c | 26 +++++++++--- > cmd-clear-history.c | 17 ++++++-- > cmd-clock-mode.c | 17 ++++++-- > cmd-command-prompt.c | 14 ++++++- > cmd-confirm-before.c | 14 ++++++- > cmd-copy-mode.c | 15 +++++-- > cmd-delete-buffer.c | 3 +- > cmd-detach-client.c | 24 ++++++++--- > cmd-display-message.c | 42 +++++++++++++------ > cmd-display-panes.c | 17 ++++++-- > cmd-find-window.c | 17 ++++++-- > cmd-has-session.c | 15 +++++-- > cmd-if-shell.c | 34 ++++++++++----- > cmd-join-pane.c | 27 +++++++++--- > cmd-kill-pane.c | 17 ++++++-- > cmd-kill-server.c | 3 +- > cmd-kill-session.c | 14 ++++++- > cmd-kill-window.c | 17 +++++++- > cmd-link-window.c | 23 +++++++++-- > cmd-list-buffers.c | 3 +- > cmd-list-clients.c | 21 ++++++---- > cmd-list-commands.c | 3 +- > cmd-list-keys.c | 3 +- > cmd-list-panes.c | 24 +++++++++-- > cmd-list-sessions.c | 3 +- > cmd-list-windows.c | 18 ++++++-- > cmd-load-buffer.c | 3 +- > cmd-lock-server.c | 31 ++++++++++---- > cmd-move-window.c | 28 +++++++++++-- > cmd-new-session.c | 4 +- > cmd-new-window.c | 24 +++++++++-- > cmd-paste-buffer.c | 18 ++++++-- > cmd-pipe-pane.c | 16 +++++++- > cmd-queue.c | 45 +++++++++++++++++++- > cmd-refresh-client.c | 14 ++++++- > cmd-rename-session.c | 14 ++++++- > cmd-rename-window.c | 16 ++++++-- > cmd-resize-pane.c | 16 +++++++- > cmd-respawn-pane.c | 17 +++++++- > cmd-respawn-window.c | 16 +++++++- > cmd-rotate-window.c | 15 +++++-- > cmd-run-shell.c | 19 ++++++++- > cmd-save-buffer.c | 6 ++- > cmd-select-layout.c | 20 +++++++-- > cmd-select-pane.c | 28 ++++++++++--- > cmd-select-window.c | 46 +++++++++++++++++---- > cmd-send-keys.c | 20 +++++++-- > cmd-server-info.c | 3 +- > cmd-set-buffer.c | 3 +- > cmd-set-environment.c | 14 ++++++- > cmd-set-hook.c | 98 ++++++++++++++++++++++++++++++++++++++++++++ > cmd-set-option.c | 6 ++- > cmd-show-environment.c | 14 ++++++- > cmd-show-hooks.c | 69 +++++++++++++++++++++++++++++++ > cmd-show-messages.c | 17 ++++++-- > cmd-show-options.c | 28 ++++++++++--- > cmd-source-file.c | 3 +- > cmd-split-window.c | 17 +++++++- > cmd-start-server.c | 3 +- > cmd-suspend-client.c | 17 ++++++-- > cmd-swap-pane.c | 17 ++++++-- > cmd-swap-window.c | 25 ++++++++---- > cmd-switch-client.c | 20 ++++++--- > cmd-unbind-key.c | 3 +- > cmd-unlink-window.c | 17 ++++++-- > cmd-wait-for.c | 3 +- > cmd.c | 16 ++++++++ > hooks.c | 109 > +++++++++++++++++++++++++++++++++++++++++++++++++ > session.c | 2 + > tmux.1 | 79 +++++++++++++++++++++++++++++++++++ > tmux.c | 2 + > tmux.h | 81 ++++++++++++++++++++++++++++-------- > 80 files changed, 1376 insertions(+), 240 deletions(-) > create mode 100644 cmd-set-hook.c > create mode 100644 cmd-show-hooks.c > create mode 100644 hooks.c > > -- > 1.7.11.4 > > > ------------------------------------------------------------------------------ > Precog is a next-generation analytics platform capable of advanced > analytics on semi-structured data. The platform includes APIs for building > apps and a phenomenal toolset for data science. Developers can use > our toolset for easy data analysis & visualization. Get a free account! > http://www2.precog.com/precogplatform/slashdotnewsletter > _______________________________________________ > tmux-users mailing list > tmux-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/tmux-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ tmux-users mailing list tmux-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tmux-users