Revision: 2539
http://tmux.svn.sourceforge.net/tmux/?rev=2539&view=rev
Author: tcunha
Date: 2011-07-04 08:23:39 +0000 (Mon, 04 Jul 2011)
Log Message:
-----------
Sync OpenBSD patchset 929:
Add an option to trigger the terminal bell when there is an alert, from
Marco Beck.
Modified Paths:
--------------
trunk/options-table.c
trunk/server-window.c
trunk/tmux.1
Modified: trunk/options-table.c
===================================================================
--- trunk/options-table.c 2011-07-04 08:22:37 UTC (rev 2538)
+++ trunk/options-table.c 2011-07-04 08:23:39 UTC (rev 2539)
@@ -1,4 +1,4 @@
-/* $Id: options-table.c,v 1.12 2011-05-22 16:26:09 tcunha Exp $ */
+/* $Id$ */
/*
* Copyright (c) 2011 Nicholas Marriott <[email protected]>
@@ -97,6 +97,11 @@
.default_num = BELL_ANY
},
+ { .name = "bell-on-alert",
+ .type = OPTIONS_TABLE_FLAG,
+ .default_num = 0
+ },
+
{ .name = "default-command",
.type = OPTIONS_TABLE_STRING,
.default_str = ""
Modified: trunk/server-window.c
===================================================================
--- trunk/server-window.c 2011-07-04 08:22:37 UTC (rev 2538)
+++ trunk/server-window.c 2011-07-04 08:23:39 UTC (rev 2539)
@@ -1,4 +1,4 @@
-/* $Id: server-window.c,v 1.20 2011-02-15 15:20:38 tcunha Exp $ */
+/* $Id$ */
/*
* Copyright (c) 2009 Nicholas Marriott <[email protected]>
@@ -28,6 +28,7 @@
int server_window_check_silence(struct session *, struct winlink *);
int server_window_check_content(
struct session *, struct winlink *, struct window_pane *);
+void ring_bell(struct session *);
/* Window functions that need to happen every loop. */
void
@@ -134,6 +135,8 @@
if (!options_get_number(&w->options, "monitor-activity"))
return (0);
+ if (options_get_number(&s->options, "bell-on-alert"))
+ ring_bell(s);
wl->flags |= WINLINK_ACTIVITY;
if (options_get_number(&s->options, "visual-activity")) {
@@ -183,6 +186,9 @@
timer_difference = timer.tv_sec - w->silence_timer.tv_sec;
if (timer_difference <= silence_interval)
return (0);
+
+ if (options_get_number(&s->options, "bell-on-alert"))
+ ring_bell(s);
wl->flags |= WINLINK_SILENCE;
if (options_get_number(&s->options, "visual-silence")) {
@@ -221,6 +227,8 @@
return (0);
xfree(found);
+ if (options_get_number(&s->options, "bell-on-alert"))
+ ring_bell(s);
wl->flags |= WINLINK_CONTENT;
if (options_get_number(&s->options, "visual-content")) {
@@ -235,3 +243,17 @@
return (1);
}
+
+/* Ring terminal bell. */
+void
+ring_bell(struct session *s)
+{
+ struct client *c;
+ u_int i;
+
+ for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
+ c = ARRAY_ITEM(&clients, i);
+ if (c != NULL && c->session == s)
+ tty_putcode(&c->tty, TTYC_BEL);
+ }
+}
Modified: trunk/tmux.1
===================================================================
--- trunk/tmux.1 2011-07-04 08:22:37 UTC (rev 2538)
+++ trunk/tmux.1 2011-07-04 08:23:39 UTC (rev 2539)
@@ -1783,6 +1783,11 @@
means all bells are ignored and
.Ic current
means only bell in windows other than the current window are ignored.
+.It Xo Ic bell-on-alert
+.Op Ic on | off
+.Xc
+If on, ring the terminal bell when an activity, content or silence alert
+occurs.
.It Ic default-command Ar shell-command
Set the command used for new windows (if not specified when the window is
created) to
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
tmux-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tmux-cvs