| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
this means they can be used with {} as well. Also make argument
processing from an existing vector preserve commands. GitHub issue 2858.
|
| |
|
|
|
|
| |
a format; the default remains the line number. GitHub issue 2636.
|
|
|
|
|
| |
includes adding a brief description of each option. Bound to "C" by
default.
|
|
|
|
| |
use more clearly defined and preparation for some future work).
|
| |
|
|
|
|
|
|
|
|
|
|
| |
reference to it, it isn't necessary that the pane in copy mode is the
same as the one copying from. Add a -s flag to copy-mode to specify a
different pane for the source content. This means it is possible to view
two places in a pane's history at the same time in different panes, or
copy from a pane's history into an editor or shell in the same pane.
From Anindya Mukherjee.
|
|
|
|
| |
Poirier in GitHub issue 1875.
|
|
|
|
| |
OK nicm
|
|
|
|
|
|
| |
automatically zoom the pane when the mode is entered and unzoom when it
exits, assuming the pane is not already zoomed. Add -Z to the default
key bindings.
|
|
|
|
| |
disables).
|
| |
|
|
|
|
|
| |
format of each line, as well as adding a couple of formats needed for
the default display.
|
|
|
|
| |
specify to command.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
using an enum and simplify the parsing code.
|
|
|
|
| |
about the order.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
consistent but with much less duplication, but keeping the same internal
API. Also adds more readable aliases for some of the special tokens used
in targets (eg "{start}" instead of "^"). Some behaviours may have
changed, for example prefix matches now happen before fnmatch.
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
highlighted. From Thomas Adam.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
commands and allow a command to block execution of subsequent
commands. This allows run-shell and if-shell to be synchronous which has
been much requested.
Each client has a default command queue and commands are consumed one at
a time from it. A command may suspend execution from the queue by
returning CMD_RETURN_WAIT and then resume it by calling cmd_continue() -
for example run-shell does this from the callback that is fired after
the job is freed.
When the command queue becomes empty, command clients are automatically
exited (unless attaching). A callback is also fired - this is used for
nested commands in, for example, if-shell which can block execution of
the client's cmdq until a new cmdq becomes empty.
Also merge all the old error/info/print functions together and lose the
old curclient/cmdclient distinction - a cmdq is bound to one client (or
none if in the configuration file), this is a command client if
c->session is NULL otherwise an attached client.
|
| |
|
| |
|
|
|
|
| |
client is attached.
|
| |
|
|
|
|
| |
Prabhu.
|
|
|
|
| |
Francoise.
|
| |
|
| |
|
| |
|
|
|
|
| |
from the choose-tree defaults.
|
| |
|
| |
|
|
|
|
|
|
| |
add a new value to mean "leave client running but don't attach" to fix
problems with using some commands in a command sequence. Most of the
work by Thomas Adam, problem reported by "jspenguin" on SF bug 3535531.
|
| |
|
| |
|
|
list. Change choose-window and -session to use the same code. From
Thomas Adam.
|