summaryrefslogtreecommitdiffstats
path: root/arguments.c
AgeCommit message (Collapse)Author
2017-08-23Merge branch 'obsd-master'Thomas Adam
2017-08-23Run alert hooks based on the options rather than unconditionally, fromnicm
Brad Town.
2017-05-31Merge branch 'obsd-master'Thomas Adam
Conflicts: Makefile.am cfg.c server-client.c
2017-05-30Rewrite of choose mode, both to simplify and tidy the code and to addnicm
some modern features. Now the common code is in mode-tree.c, which provides an API used by the three modes now separated into window-{buffer,client,tree}.c. Buffer mode shows buffers, client mode clients and tree mode a tree of sessions, windows and panes. Each mode has a common set of key bindings plus a few that are specific to the mode. Other changes are: - each mode has a preview pane: for buffers this is the buffer content (very useful), for others it is a preview of the pane; - items may be sorted in different ways ('O' key); - multiple items may be tagged and an operation applied to all of them (for example, to delete multiple buffers at once); - in tree mode a command may be run on the selected item (session, window, pane) or on tagged items (key ':'); - displayed items may be filtered in tree mode by using a format (this is used to implement find-window) (key 'f'); - the custom format (-F) for the display is no longer available; - shortcut keys change from 0-9, a-z, A-Z which was always a bit weird with keys used for other uses to 0-9, M-a to M-z. Now that the code is simpler, other improvements will come later. Primary key bindings for each mode are documented under the commands in the man page (choose-buffer, choose-client, choose-tree). Parts written by Thomas Adam.
2017-04-22Do not need getopt.h.nicm
2017-01-18vis.h comes from compat.h.Nicholas Marriott
2017-01-18Merge branch 'obsd-master'Thomas Adam
2017-01-18Plain stravis() because it will mangle UTF-8 characters, so addnicm
utf8_stravis() which calls our existing utf8_strvis() and use it instead
2017-01-18Run arguments through vis() as well when printing them.nicm
2016-10-12Merge branch 'obsd-master'Thomas Adam
Conflicts: format.c osdep-openbsd.c
2016-10-11Add static in window-*.c and move some internal functions out of tmux.h.nicm
2016-10-10Merge branch 'obsd-master'Thomas Adam
2016-10-10Some more static.nicm
2016-01-19Merge branch 'obsd-master'Thomas Adam
2016-01-19I no longer use my SourceForge address so replace it.nicm
2015-11-27Merge branch 'obsd-master'Thomas Adam
2015-11-27Do not set a limit on the length of commands when printing them.nicm
2015-08-30Merge branch 'obsd-master'Thomas Adam
Conflicts: Makefile format.c
2015-08-29struct args_entry can go into arguments.c.nicm
2015-07-13Check for flock in libbsd for AIX, and remove some getopt.h includes. From JNicholas Marriott
Raynor.
2014-11-08No need for $Id$ now.Nicholas Marriott
2014-10-21Merge branch 'obsd-master'Thomas Adam
Conflicts: Makefile cmd-list-commands.c cmd-suspend-client.c job.c tmux.h xmalloc.c
2014-10-20Tidy up some includes.nicm
2014-04-23Merge branch 'obsd-master'Thomas Adam
Conflicts: Makefile tmux.1 window.c
2014-04-11Don't blindly increase offsets by the return value of snprintf, if therenicm
wasn't enough space this will go off the end. Instead clamp to the available space. Fixes crash reported by Julien Rebetez.
2014-01-20Merge branch 'obsd-master'Thomas
2014-01-15Couple of fixes from cppcheck via Tiago Cunha.nicm
2014-01-09Simplify args_set, from Tiago Cunha.nicm
2013-11-17Include unistd.h as it is the standard location for getopt().okan
OK millert@
2013-05-31Merge branch 'obsd-master'Thomas Adam
2013-05-31Instead of eating 1024 bytes or so for the arguments of each command,Nicholas Marriott
save memory by using an RB tree. From Tiago Cunha.
2012-07-11Sync OpenBSD patchset 1150:Tiago Cunha
xfree is not particularly helpful, remove it. From Thomas Adam.
2012-07-10xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott
2011-07-09Expand the Id keyword. Tiago Cunha
2011-07-09Pass the right size to calloc (* not **).Nicholas Marriott
2011-07-09Pass the right size to calloc (* not **).Nicholas Marriott
2011-02-15Sync OpenBSD patchset 859:Tiago Cunha
Free old argument even if setting to NULL.
2011-01-30Free old argument even if setting to NULL.Nicholas Marriott
2011-01-07Remove compat include.Tiago Cunha
2011-01-07Sync OpenBSD patchset 829:Tiago Cunha
Clean up and simplify tmux command argument parsing. Originally, tmux commands were parsed in the client process into a struct with the command data which was then serialised and sent to the server to be executed. The parsing was later moved into the server (an argv was sent from the client), but the parse step and intermediate struct was kept. This change removes that struct and the separate parse step. Argument parsing and printing is now common to all commands (in arguments.c) with each command left with just an optional check function (to validate the arguments at parse time), the exec function and a function to set up any key bindings (renamed from the old init function). This is overall more simple and consistent. There should be no changes to any commands behaviour or syntax although as this touches every command please watch for any unexpected changes.
2011-01-04Clean up and simplify tmux command argument parsing.Nicholas Marriott
Originally, tmux commands were parsed in the client process into a struct with the command data which was then serialised and sent to the server to be executed. The parsing was later moved into the server (an argv was sent from the client), but the parse step and intermediate struct was kept. This change removes that struct and the separate parse step. Argument parsing and printing is now common to all commands (in arguments.c) with each command left with just an optional check function (to validate the arguments at parse time), the exec function and a function to set up any key bindings (renamed from the old init function). This is overall more simple and consistent. There should be no changes to any commands behaviour or syntax although as this touches every command please watch for any unexpected changes.