usr/lib/byobu/.notify_osd, usr/lib/byobu/notify_osd,

usr/share/byobu/profiles/common: separate the perl into a script of
its own
This commit is contained in:
Dustin Kirkland 2010-11-02 16:18:27 -05:00
commit 90a7b74f9f
4 changed files with 40 additions and 7 deletions

3
debian/changelog vendored
View file

@ -7,6 +7,9 @@ byobu (3.7) unreleased; urgency=low
usr/lib/byobu/notify_osd, usr/share/byobu/profiles/common,
usr/share/man/man1/byobu.1:
- add notify_osd support to byobu, LP: #669189
* usr/lib/byobu/.notify_osd, usr/lib/byobu/notify_osd,
usr/share/byobu/profiles/common: separate the perl into a script of
its own
-- Dustin Kirkland <kirkland@ubuntu.com> Thu, 21 Oct 2010 12:09:14 -0500

31
usr/lib/byobu/.notify_osd Executable file
View file

@ -0,0 +1,31 @@
#!/usr/bin/perl
#
# .notify_osd: perform some string manipulation on notify-osd messages
# and then send to the screen message window
# Copyright (C) 2010 Canonical Ltd.
#
# Authors: Dustin Kirkland <kirkland@canonical.com>
# with help from Mathias Gug <mathias.gug@canonical.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
$/ = "\n\n";
while (<STDIN>) {
$msg = $_;
$msg =~ s/\[[^,]*, //;
$msg =~ s/ \] /: /;
$msg =~ s/\s+/ /g;
$msg =~ s/\s+$//g;
$msg =~ s/^\s+//g;
system("/usr/bin/screen", "-X", "at", "0", "echo", "[$msg]");
}

View file

@ -27,9 +27,8 @@ fi
# This line operates basically as a daemon, watching the notify-osd log file,
# processing new messages and sending them to screen
tail -n 0 -F "$LOG" | perl -e '
$/ = "\n\n";
while (<STDIN>) {
$_ =~ s/^.*\]//;
system("/usr/bin/screen -X at 0 echo \"$_\"");
}'
if ! ps -ef | grep -qs "^$USER .*tail -n 0 -F \"$LOG\"$"; then
tail -n 0 -F "$LOG" | /usr/lib/byobu/.notify_osd
else
exit 0
fi

View file

@ -23,7 +23,7 @@
# Now, let's override with our customizations
startup_message off
vbell off
msgwait 1
msgwait 5
defutf8 on
# Define status commands