summaryrefslogtreecommitdiffstats
path: root/cmd-set-option.c
AgeCommit message (Collapse)Author
2017-04-22Get rid of the extra layer of flags and cmd_prepare() and just store thenicm
CMD_FIND_* flags in the cmd_entry and call it for the command. Commands with special requirements call it themselves and update the target for hooks to use.
2017-04-22Memory leaks, from David CARLIER.nicm
2017-02-16Style nits.nicm
2017-02-03Cache status line position to reduce option lookups during output.nicm
2017-01-25Clear option before adding to array if no -a, reported by Michaelnicm
Nickerson.
2017-01-24Fix set -u on array options.nicm
2017-01-24If given an array option without an index either show or set all items,nicm
and support -a for array options. Allow the separator for set to be specified in the options table (will be used for backwards compatibility later).
2017-01-16getopt() has a struct option so just return to using options_entry.nicm
2017-01-15-q flag now needs to be checked in a couple more places.nicm
2017-01-15Major tidy up and rework of options tree and set-option/show-optionsnicm
commands this pushes more of the code into options.c and ties it more closely to the options table rather than having an unnecessary split. Also add support for array options (will be used later). Only (intentional) user visible change is that show-options output is now passed through vis(3) with VIS_DQ so quotes are escaped.
2017-01-12Simplify appending to string options.nicm
2017-01-11Some tidying and tweaks to options code.nicm
2016-11-04Do not try to set the CHANGED flag on windows with no active pane, fixesnicm
problem reported by Nelo-T Wallus.
2016-10-16Mass rename struct cmd_q to struct cmdq_item and related.nicm
2016-10-14Add CMD_AFTERHOOK flag to the easy commands that don't need any special ↵nicm
handling.
2016-10-10Add static in cmd-* and fix a few other nits.nicm
2016-10-09Handle NULL window or session for user options.nicm
2016-09-26Support set -a (append) with user options, suggested by Xandor Schiefer.nicm
2016-05-30Cache the window styles and do not look up the window-style optionsnicm
unless they have changed.
2016-04-29Add option to include status text in the pane borders. Ifnicm
pane-border-status is set to "top" or "bottom" (rather than "off"), every pane has a permanent top or bottom border containing the text from pane-border-format. Based on a diff sent long ago by Jonathan Slenders, mostly rewritten and simplified by me.
2016-03-03show-* and set-* need to handle a missing target.nicm
2016-01-19I no longer use my SourceForge address so replace it.nicm
2015-12-14Instead of combined flags for -c, -s, -t, split into different setsnicm
using an enum and simplify the parsing code.
2015-12-13Use member names in cmd_entry definitions so I stop getting confusednicm
about the order.
2015-12-13Instead of every command resolving the target (-t or -s) itself, preparenicm
the state (client, session, winlink, pane) for it it before entering the command. Each command provides some flags that tell the prepare step what it is expecting. This is a requirement for having hooks on commands (for example, if you hook "select-window -t1:2", the hook command should to operate on window 1:2 not whatever it thinks is the current window), and should allow some other target improvements. The old cmd_find_* functions remain for the moment but that layer will be dropped later. Joint work with Thomas Adam.
2015-12-12Add key-table option to set the default key table for a session, allowsnicm
different key bindings for different sessions and a few other things.
2015-12-12Allow prefix and prefix2 to be set to None to disable (useful if younicm
would rather bind the prefix in the root table).
2015-11-20Instead of separate tables for different types of options, give eachnicm
option a scope type (server, session, window) in one table.
2015-11-18Use __unused rather than rolling our own.nicm
2015-11-12Support UTF-8 key bindings by expanding the key type from int tonicm
uint64_t and converting UTF-8 to Unicode on input and the reverse on output. (This allows key bindings, there are still omissions - the largest being that the various prompts do not accept UTF-8.)
2015-10-27Move struct options into options.c.nicm
2015-09-14Remove some extra blank lines.nicm
2015-08-29Move alerts onto events rather than checking every loop.nicm
2015-08-29Better take on reducing the name timer. Again check for name changes innicm
the main loop after events that may have changed the pane, but do so at most once every 500 millis. If the pane changed too soon, use a timer to ensure that a check happens later.
2015-08-28Revert previous; we do need a timer, until I have a better idea. Wenicm
can't do the name check every loop, because that is too expensive, and we can't make sure it only happens infrequently because we have no idea when the next change will happen.
2015-08-28We now only checking for name changes when the active pane has changed,nicm
but that can only happen when we have already been woken up by a read event, so there is no need for a timer, we can just check the changed flag on the end of that read event (we already loop over the windows to check for bells etc anyway).
2015-08-28Per-session timers for locking, and remove the global one-second timer.nicm
2015-08-28Run status update on a per-client timer at status-interval.nicm
2015-07-27Make -q suppress ambiguous option warnings too, from Cam Hutchison.nicm
2015-06-04Make unsetting a global option restore it to the default. Diff lyingnicm
around for a while, I have forgotten who suggested it :-/.
2015-04-24Convert clients list into a TAILQ.nicm
2015-04-24Allow choice options (multiple states) to be toggled between states 0nicm
and 1.
2015-04-22Change the windows array into an RB tree and fix some places where wenicm
were only looking at the first winlink for a window in a session.
2014-10-20Instead of setting up the default keys by building the key structnicm
directly with a helper function in the cmd_entry, include a table of bind-key commands and pass them through the command parser and a temporary cmd_q. As well as being smaller, this will allow default bindings to be command sequences which will probably be needed soon.
2014-09-01Various minor style and spacing nits.nicm
2014-04-17Some more long lines.nicm
2014-04-17Remove the "info" message mechanism, this was only used for about fivenicm
mostly useless and annoying messages. Change those commands to silence on success like all the others. Still accept the -q command line flag and "quiet" server option for now.
2014-04-17Extend the -q flag to set-option to suppress errors about unknownnicm
options - this will allow options to be removed more easily.
2014-02-17Don't crash when given a invalid colour, reported by Felix Rosencrantz,nicm
fix from Thomas Adam.
2014-02-14Style nit - no space between function name and bracket.nicm