mirror of
https://github.com/tmux/tmux.git
synced 2024-11-17 18:08:51 +00:00
Merge branch 'master' into sixel-passthrough
This commit is contained in:
commit
7c033a74e2
16
CHANGES
16
CHANGES
@ -59,6 +59,20 @@ CHANGES FROM 3.0 to X.X
|
||||
|
||||
* Add reverse sorting in tree, client and buffer modes.
|
||||
|
||||
CHANGES FROM 3.0 to 3.0a
|
||||
|
||||
* Do not require REG_STARTEND.
|
||||
|
||||
* Respawn panes or windows correctly if default-command is set.
|
||||
|
||||
* Add missing option for after-kill-pane hook.
|
||||
|
||||
* Fix for crash with a format variable that doesn't exist.
|
||||
|
||||
* Do not truncate list-keys output on some platforms.
|
||||
|
||||
* Do not crash when restoring a layout with only one pane.
|
||||
|
||||
CHANGES FROM 2.9 to 3.0
|
||||
|
||||
* Workaround invalid layout strings generated by older tmux versions and add
|
||||
@ -149,7 +163,7 @@ CHANGES FROM 2.9 to 3.0
|
||||
* Add the ability to create simple menus. Introduces new command
|
||||
display-menu. Default menus are bound to MouseDown3 on the status line;
|
||||
MouseDown3 or M-MouseDown3 on panes; MouseDown3 in tree, client and
|
||||
buffer modes; and C-b C-m and C-b M-m.
|
||||
buffer modes; and C-b < and >.
|
||||
|
||||
* Allow panes to be empty (no command). They can be created either by piping to
|
||||
split-window -I, or by passing an empty command ('') to split-window. Output
|
||||
|
@ -59,8 +59,8 @@ attributes_fromstring(const char *str)
|
||||
size_t end;
|
||||
u_int i;
|
||||
struct {
|
||||
const char* name;
|
||||
int attr;
|
||||
const char *name;
|
||||
int attr;
|
||||
} table[] = {
|
||||
{ "bright", GRID_ATTR_BRIGHT },
|
||||
{ "bold", GRID_ATTR_BRIGHT },
|
||||
|
29
compat.h
29
compat.h
@ -61,12 +61,31 @@ void warn(const char *, ...);
|
||||
void warnx(const char *, ...);
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_PATHS_H
|
||||
#define _PATH_BSHELL "/bin/sh"
|
||||
#define _PATH_TMP "/tmp/"
|
||||
#ifdef HAVE_PATHS_H
|
||||
#include <paths.h>
|
||||
#endif
|
||||
|
||||
#ifndef _PATH_BSHELL
|
||||
#define _PATH_BSHELL "/bin/sh"
|
||||
#endif
|
||||
|
||||
#ifndef _PATH_TMP
|
||||
#define _PATH_TMP "/tmp/"
|
||||
#endif
|
||||
|
||||
#ifndef _PATH_DEVNULL
|
||||
#define _PATH_DEVNULL "/dev/null"
|
||||
#endif
|
||||
|
||||
#ifndef _PATH_TTY
|
||||
#define _PATH_TTY "/dev/tty"
|
||||
#endif
|
||||
|
||||
#ifndef _PATH_DEV
|
||||
#define _PATH_DEV "/dev/"
|
||||
#endif
|
||||
|
||||
#ifndef _PATH_DEFPATH
|
||||
#define _PATH_DEFPATH "/usr/bin:/bin"
|
||||
#endif
|
||||
|
||||
@ -98,10 +117,6 @@ void warnx(const char *, ...);
|
||||
#include "compat/bitstring.h"
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_PATHS_H
|
||||
#include <paths.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_LIBUTIL_H
|
||||
#include <libutil.h>
|
||||
#endif
|
||||
|
2
grid.c
2
grid.c
@ -204,7 +204,7 @@ grid_clear_cell(struct grid *gd, u_int px, u_int py, u_int bg)
|
||||
|
||||
/* Check grid y position. */
|
||||
static int
|
||||
grid_check_y(struct grid *gd, const char* from, u_int py)
|
||||
grid_check_y(struct grid *gd, const char *from, u_int py)
|
||||
{
|
||||
if (py >= gd->hsize + gd->sy) {
|
||||
log_debug("%s: y out of range: %u", from, py);
|
||||
|
@ -24,12 +24,6 @@
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
#define DEFAULT_CLIENT_MENU \
|
||||
" 'Detach' 'd' {detach-client}" \
|
||||
" 'Detach & Kill' 'X' {detach-client -P}" \
|
||||
" 'Detach Others' 'o' {detach-client -a}" \
|
||||
" ''" \
|
||||
" 'Lock' 'l' {lock-client}"
|
||||
#define DEFAULT_SESSION_MENU \
|
||||
" 'Next' 'n' {switch-client -n}" \
|
||||
" 'Previous' 'p' {switch-client -p}" \
|
||||
@ -325,7 +319,6 @@ key_bindings_init(void)
|
||||
"bind -n MouseDrag1Pane if -Ft= '#{mouse_any_flag}' 'if -Ft= \"#{pane_in_mode}\" \"copy-mode -M\" \"send-keys -M\"' 'copy-mode -M'",
|
||||
"bind -n WheelUpPane if -Ft= '#{mouse_any_flag}' 'send-keys -M' 'if -Ft= \"#{pane_in_mode}\" \"send-keys -M\" \"copy-mode -et=\"'",
|
||||
|
||||
"bind -n MouseDown3StatusRight display-menu -t= -xM -yS -T \"#[align=centre]#{client_name}\" " DEFAULT_CLIENT_MENU,
|
||||
"bind -n MouseDown3StatusLeft display-menu -t= -xM -yS -T \"#[align=centre]#{session_name}\" " DEFAULT_SESSION_MENU,
|
||||
"bind -n MouseDown3Status display-menu -t= -xW -yS -T \"#[align=centre]#{window_index}:#{window_name}\" " DEFAULT_WINDOW_MENU,
|
||||
"bind < display-menu -xW -yS -T \"#[align=centre]#{window_index}:#{window_name}\" " DEFAULT_WINDOW_MENU,
|
||||
|
@ -610,7 +610,7 @@ options_match(const char *s, int *idx, int *ambiguous)
|
||||
|
||||
struct options_entry *
|
||||
options_match_get(struct options *oo, const char *s, int *idx, int only,
|
||||
int* ambiguous)
|
||||
int *ambiguous)
|
||||
{
|
||||
char *name;
|
||||
struct options_entry *o;
|
||||
|
@ -1579,7 +1579,7 @@ server_client_check_exit(struct client *c)
|
||||
/* Redraw timer callback. */
|
||||
static void
|
||||
server_client_redraw_timer(__unused int fd, __unused short events,
|
||||
__unused void* data)
|
||||
__unused void *data)
|
||||
{
|
||||
log_debug("redraw timer fired");
|
||||
}
|
||||
|
@ -333,7 +333,7 @@ window_buffer_resize(struct window_mode_entry *wme, u_int sx, u_int sy)
|
||||
}
|
||||
|
||||
static void
|
||||
window_buffer_do_delete(void* modedata, void *itemdata,
|
||||
window_buffer_do_delete(void *modedata, void *itemdata,
|
||||
__unused struct client *c, __unused key_code key)
|
||||
{
|
||||
struct window_buffer_modedata *data = modedata;
|
||||
@ -347,7 +347,7 @@ window_buffer_do_delete(void* modedata, void *itemdata,
|
||||
}
|
||||
|
||||
static void
|
||||
window_buffer_do_paste(void* modedata, void *itemdata, struct client *c,
|
||||
window_buffer_do_paste(void *modedata, void *itemdata, struct client *c,
|
||||
__unused key_code key)
|
||||
{
|
||||
struct window_buffer_modedata *data = modedata;
|
||||
|
@ -313,7 +313,7 @@ window_client_resize(struct window_mode_entry *wme, u_int sx, u_int sy)
|
||||
}
|
||||
|
||||
static void
|
||||
window_client_do_detach(void* modedata, void *itemdata,
|
||||
window_client_do_detach(void *modedata, void *itemdata,
|
||||
__unused struct client *c, key_code key)
|
||||
{
|
||||
struct window_client_modedata *data = modedata;
|
||||
|
@ -317,7 +317,7 @@ window_tree_filter_pane(struct session *s, struct winlink *wl,
|
||||
|
||||
static int
|
||||
window_tree_build_window(struct session *s, struct winlink *wl,
|
||||
void* modedata, struct mode_tree_sort_criteria *sort_crit,
|
||||
void *modedata, struct mode_tree_sort_criteria *sort_crit,
|
||||
struct mode_tree_item *parent, const char *filter)
|
||||
{
|
||||
struct window_tree_modedata *data = modedata;
|
||||
@ -383,7 +383,7 @@ empty:
|
||||
}
|
||||
|
||||
static void
|
||||
window_tree_build_session(struct session *s, void* modedata,
|
||||
window_tree_build_session(struct session *s, void *modedata,
|
||||
struct mode_tree_sort_criteria *sort_crit, const char *filter)
|
||||
{
|
||||
struct window_tree_modedata *data = modedata;
|
||||
@ -973,7 +973,7 @@ window_tree_get_target(struct window_tree_itemdata *item,
|
||||
}
|
||||
|
||||
static void
|
||||
window_tree_command_each(void* modedata, void* itemdata, struct client *c,
|
||||
window_tree_command_each(void *modedata, void *itemdata, struct client *c,
|
||||
__unused key_code key)
|
||||
{
|
||||
struct window_tree_modedata *data = modedata;
|
||||
@ -1030,7 +1030,7 @@ window_tree_command_free(void *modedata)
|
||||
}
|
||||
|
||||
static void
|
||||
window_tree_kill_each(__unused void* modedata, void* itemdata,
|
||||
window_tree_kill_each(__unused void *modedata, void *itemdata,
|
||||
__unused struct client *c, __unused key_code key)
|
||||
{
|
||||
struct window_tree_itemdata *item = itemdata;
|
||||
|
Loading…
Reference in New Issue
Block a user