Skip to content

Instantly share code, notes, and snippets.

@yoshikaw
Created December 25, 2011 14:22
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save yoshikaw/1519337 to your computer and use it in GitHub Desktop.
Save yoshikaw/1519337 to your computer and use it in GitHub Desktop.
開発版GNU Screenにあてているパッチ
Patch: expand-input-maxlen.patch
Probrem: More than 100 characters cannot be set to the caption
Solution: expands the text buffer size to 255.
Author: Kazuhiro Yoshikawa <yoshikaw@gmail.com>
Files: src/input.c
src/process.c
--- a/src/input.c 2010-02-27 02:30:55.000000000 +0900
+++ b/src/input.c 2010-06-21 00:19:43.000000000 +0900
@@ -43,7 +43,7 @@
struct inpline
{
- char buf[101]; /* text buffer */
+ char buf[256]; /* text buffer */
int len; /* length of the editible string */
int pos; /* cursor position in editable string */
struct inpline *next, *prev;
@@ -58,7 +58,7 @@
struct inpdata
{
struct inpline inp;
- int inpmaxlen; /* 100, or less, if caller has shorter buffer */
+ int inpmaxlen; /* 255, or less, if caller has shorter buffer */
char *inpstring; /* the prompt */
int inpstringlen; /* length of the prompt */
int inpmode; /* INP_NOECHO, INP_RAW, INP_EVERY */
@@ -134,8 +134,8 @@
if (!flayer)
return;
- if (len > 100)
- len = 100;
+ if (len > 255)
+ len = 255;
if (!(mode & INP_NOECHO))
{
maxlen = flayer->l_width - 1 - strlen(istr);
--- a/src/process.c 2010-04-04 02:26:19.000000000 +0900
+++ b/src/process.c 2011-05-04 02:59:00.000000000 +0900
@@ -1796,7 +1796,7 @@
s = *args;
if (!args[0])
{
- Input("Stuff:", 100, INP_COOKED, StuffFin, NULL, 0);
+ Input("Stuff:", 255, INP_COOKED, StuffFin, NULL, 0);
break;
}
n = *argl;
@@ -2083,7 +2083,7 @@
ChangeAKA(fore, *args, strlen(*args));
break;
case RC_COLON:
- Input(":", 100, INP_EVERY, Colonfin, NULL, 0);
+ Input(":", 255, INP_EVERY, Colonfin, NULL, 0);
if (*args && **args)
{
s = *args;
Patch: osx-comment-combined-char.patch
Probrem: display corruption at some combining characters.
Solution: comment out some combined char from mapping table
- 0x3099 voiced sound mark
- 0x309A semi-boiced sound mark
Author: Kazuhiro Yoshikawa <yoshikaw@gmail.com>
Files: src/encoding.c
--- a/src/encoding.c 2009-09-26 00:50:28.000000000 +0900
+++ b/src/encoding.c 2010-05-03 00:26:03.000000000 +0900
@@ -998,7 +998,7 @@
{ 0x1B6B, 0x1B73 }, { 0x1DC0, 0x1DCA }, { 0x1DFE, 0x1DFF },
{ 0x200B, 0x200F }, { 0x202A, 0x202E }, { 0x2060, 0x2063 },
{ 0x206A, 0x206F }, { 0x20D0, 0x20EF }, { 0x302A, 0x302F },
- { 0x3099, 0x309A }, { 0xA806, 0xA806 }, { 0xA80B, 0xA80B },
+ /*{ 0x3099, 0x309A }, */{ 0xA806, 0xA806 }, { 0xA80B, 0xA80B },
{ 0xA825, 0xA826 }, { 0xFB1E, 0xFB1E }, { 0xFE00, 0xFE0F },
{ 0xFE20, 0xFE23 }, { 0xFEFF, 0xFEFF }, { 0xFFF9, 0xFFFB },
{ 0x10A01, 0x10A03 }, { 0x10A05, 0x10A06 }, { 0x10A0C, 0x10A0F },
Patch: rename2screenx.patch
Probrem: Currently, GNU Screen version 4.1 has not been released.
However, the new development version has a very powerful feature.
want to try it without changing the current environment.
Solution: changes the binary name to 'screenx'
Author: Kazuhiro Yoshikawa <yoshikaw@gmail.com>
Files: src/Makefile.in
src/fileio.c
src/nethack.c
src/screen.c
src/socket.c
src/window.c
src/doc/Makefile.in
src/doc/screen.texinfo
--- a/src/Makefile.in 2009-12-08 23:39:28.000000000 +0900
+++ b/src/Makefile.in 2010-06-27 03:28:26.000000000 +0900
@@ -1,5 +1,5 @@
#
-# Makefile template for screen
+# Makefile template for screenx
#
# See machine dependant config.h for more configuration options.
#
@@ -9,7 +9,7 @@
DESTDIR =
-# Where to install screen.
+# Where to install screenx.
prefix = @prefix@
exec_prefix = @exec_prefix@
@@ -20,16 +20,16 @@
bindir = $(exec_prefix)/bin
VERSION = @VERSION@
-SCREEN = screen-$(VERSION)
+SCREEN = screenx-$(VERSION)
GIT_REV = "`git describe --always 2>/dev/null`"
DEFS = @DEFS@ -DGIT_REV=\"$(GIT_REV)\"
ETCSCREENRC = @ETCSCREENRC@
ifeq (${ETCSCREENRC}, )
-ETCSCREENRC=$(prefix)/etc/screenrc
+ETCSCREENRC=$(prefix)/etc/screenxrc
endif
-SCREENENCODINGS = $(datadir)/screen/utf8encodings
+SCREENENCODINGS = $(datadir)/screenx/utf8encodings
CC = @CC@
CFLAGS = @CFLAGS@
@@ -88,17 +88,17 @@
$(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
-chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
# This doesn't work if $(bindir)/screen is a symlink
- -if [ -f $(DESTDIR)$(bindir)/screen ] && [ ! -f $(DESTDIR)$(bindir)/screen.old ]; then mv $(DESTDIR)$(bindir)/screen $(DESTDIR)$(bindir)/screen.old; fi
- rm -f $(DESTDIR)$(bindir)/screen
- (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
+ -if [ -f $(DESTDIR)$(bindir)/screenx ] && [ ! -f $(DESTDIR)$(bindir)/screenx.old ]; then mv $(DESTDIR)$(bindir)/screenx $(DESTDIR)$(bindir)/screenx.old; fi
+ rm -f $(DESTDIR)$(bindir)/screenx
+ (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screenx)
cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
###############################################################################
install: installdirs install_bin
cd doc ; $(MAKE) install
-if [ -d /usr/lib/terminfo ]; then \
- PATH="$$PATH:/usr/5bin" tic ${srcdir}/terminfo/screeninfo.src; \
- chmod 644 /usr/lib/terminfo/s/screen*; \
+ PATH="$$PATH:/usr/5bin" tic ${srcdir}/terminfo/screenxinfo.src; \
+ chmod 644 /usr/lib/terminfo/s/screenx*; \
fi
# Better do this by hand. E.g. under RCS...
# cat ${srcdir}/terminfo/screencap >> /etc/termcap
@@ -112,8 +112,8 @@
uninstall: .version
rm -f $(DESTDIR)$(bindir)/$(SCREEN)
- rm -f $(DESTDIR)$(bindir)/screen
- -mv $(DESTDIR)$(bindir)/screen.old $(DESTDIR)$(bindir)/screen
+ rm -f $(DESTDIR)$(bindir)/screenx
+ -mv $(DESTDIR)$(bindir)/screenx.old $(DESTDIR)$(bindir)/screenx
rm -f $(DESTDIR)$(ETCSCREENRC)
cd doc; $(MAKE) uninstall
@@ -140,9 +140,9 @@
CPP="$(CPP) $(CPPFLAGS)" srcdir=${srcdir} sh $(srcdir)/osdef.sh
docs:
- cd doc; $(MAKE) dvi screen.info
+ cd doc; $(MAKE) dvi screenx.info
-dvi info screen.info:
+dvi info screenx.info:
-cd doc; $(MAKE) $@
mostlyclean:
--- a/src/doc/Makefile.in 2009-09-26 00:50:28.000000000 +0900
+++ b/src/doc/Makefile.in 2009-07-28 03:29:26.000000000 +0900
@@ -21,29 +21,29 @@
all: screen.info
dvi screen.dvi: screen.texinfo mostlyclean
- $(TEXI2DVI) $(srcdir)/screen.texinfo
+ $(TEXI2DVI) $(srcdir)/screen.texinfo -o screenx.dvi
pdf screen.pdf: screen.texinfo mostlyclean
- $(TEXI2PDF) $(srcdir)/screen.texinfo
+ $(TEXI2PDF) $(srcdir)/screen.texinfo -o screenx.pdf
info screen.info: screen.texinfo
- @rm -f screen.info*
- $(MAKEINFO) $(srcdir)/screen.texinfo -o screen.info
+ @rm -f screenx.info*
+ $(MAKEINFO) $(srcdir)/screen.texinfo -o screenx.info
install: installdirs
- $(INSTALL_DATA) $(srcdir)/screen.1 $(DESTDIR)$(mandir)/man1/screen.1
+ $(INSTALL_DATA) $(srcdir)/screen.1 $(DESTDIR)$(mandir)/man1/screenx.1
-$(MAKE) screen.info
- -if test -f screen.info; then d=.; else d=$(srcdir); fi; \
- if test -f $$d/screen.info; then \
- for f in $$d/screen.info*; do $(INSTALL_DATA) $$f $(DESTDIR)$(infodir);done; \
+ -if test -f screenx.info; then d=.; else d=$(srcdir); fi; \
+ if test -f $$d/screenx.info; then \
+ for f in $$d/screenx.info*; do $(INSTALL_DATA) $$f $(DESTDIR)$(infodir);done; \
if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \
- install-info --info-dir=$(DESTDIR)$(infodir) $$d/screen.info; \
+ install-info --info-dir=$(DESTDIR)$(infodir) $$d/screenx.info; \
else true; fi; \
fi
uninstall:
- rm -f $(DESTDIR)$(mandir)/man1/screen.1
- rm -f $(DESTDIR)$(infodir)/screen.info*
+ rm -f $(DESTDIR)$(mandir)/man1/screenx.1
+ rm -f $(DESTDIR)$(infodir)/screenx.info*
installdirs:
$(srcdir)/../etc/mkinstalldirs $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(infodir)
--- a/src/doc/screen.texinfo 2010-01-29 23:54:19.000000000 +0900
+++ b/src/doc/screen.texinfo 2009-09-13 15:10:15.000000000 +0900
@@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@c vi:set wm=5
-@setfilename screen.info
+@setfilename screenx.info
@settitle Screen User's Manual
@dircategory General Commands
@finalout
--- a/src/fileio.c 2009-09-26 00:50:28.000000000 +0900
+++ b/src/fileio.c 2009-07-28 03:29:26.000000000 +0900
@@ -150,24 +150,24 @@
return SaveStr(rcfile);
}
debug("findrcfile: you specified nothing...\n");
- if ((p = getenv("SCREENRC")) != NULL && *p != '\0')
+ if ((p = getenv("SCREENXRC")) != NULL && *p != '\0')
{
- debug1(" $SCREENRC has: '%s'\n", p);
+ debug1(" $SCREENXRC has: '%s'\n", p);
return SaveStr(p);
}
else
{
- debug(" ...nothing in $SCREENRC, defaulting $HOME/.screenrc\n");
+ debug(" ...nothing in $SCREENXRC, defaulting $HOME/.screenxrc\n");
if (strlen(home) > sizeof(buf) - 12)
Panic(0, "Rc: home too large");
- sprintf(buf, "%s/.screenrc", home);
+ sprintf(buf, "%s/.screenxrc", home);
return SaveStr(buf);
}
}
/*
* this will be called twice:
- * 1) rcfilename = "/etc/screenrc"
+ * 1) rcfilename = "/etc/screenxrc"
* 2) rcfilename = RcFileName
*/
int
--- a/src/nethack.c 2009-09-26 00:50:28.000000000 +0900
+++ b/src/nethack.c 2009-07-28 03:29:26.000000000 +0900
@@ -98,20 +98,20 @@
"Be careful! New screen tonight."},
{"Child has been stopped, restarting.",
"You regain consciousness."},
-{"There are screens on:",
+{"There are screenxs on:",
"Your inventory:"},
-{"There is a screen on:",
+{"There is a screenx on:",
"Your inventory:"},
-{"There are several screens on:",
+{"There are several screenxs on:",
"Prove thyself worthy or perish:"},
-{"There is a suitable screen on:",
+{"There is a suitable screenx on:",
"You see here a good looking screen:"},
-{"There are several suitable screens on:",
+{"There are several suitable screenxs on:",
"You may wish for a screen, what do you want?"},
{"%d socket%s wiped out.",
"You hear %d distant explosion%s."},
-{"Remove dead screens with 'screen -wipe'.",
- "The dead screen%s touch%s you. Try 'screen -wipe'."},
+{"Remove dead screenxs with 'screenx -wipe'.",
+ "The dead screenx%s touch%s you. Try 'screenx -wipe'."},
{"Illegal reattach attempt from terminal %s.",
"'%s' tries to touch your session, but fails."},
{"Could not write %s",
--- a/src/screen.c 2010-02-27 02:30:00.000000000 +0900
+++ b/src/screen.c 2010-02-27 02:50:00.000000000 +0900
@@ -1657,9 +1657,9 @@
unlink("core");
#ifdef SIGHASARG
- sprintf(buf, "\r\n[screen caught signal %d.%s]\r\n", sigsig, dump_msg);
+ sprintf(buf, "\r\n[screenx caught signal %d.%s]\r\n", sigsig, dump_msg);
#else
- sprintf(buf, "\r\n[screen caught a fatal signal.%s]\r\n", dump_msg);
+ sprintf(buf, "\r\n[screenx caught a fatal signal.%s]\r\n", dump_msg);
#endif
for (disp = displays; disp; disp = disp->d_next)
@@ -1830,7 +1830,7 @@
#ifdef UTMPOK
RestoreLoginSlot();
#endif
- AddStr("[screen is terminating]\r\n");
+ AddStr("[screenx is terminating]\r\n");
Flush(3);
SetTTY(D_userfd, &D_OldMode);
fcntl(D_userfd, F_SETFL, 0);
--- a/src/socket.c 2010-02-27 02:30:00.000000000 +0900
+++ b/src/socket.c 2010-02-27 03:00:00.000000000 +0900
@@ -345,13 +345,13 @@
switch(ngood)
{
case 0:
- Msg(0, nfound > 1 ? "There are screens on:" : "There is a screen on:");
+ Msg(0, nfound > 1 ? "There are screenxs on:" : "There is a screenx on:");
break;
case 1:
- Msg(0, nfound > 1 ? "There are several screens on:" : "There is a suitable screen on:");
+ Msg(0, nfound > 1 ? "There are several screenxs on:" : "There is a suitable screenx on:");
break;
default:
- Msg(0, "There are several suitable screens on:");
+ Msg(0, "There are several suitable screenxs on:");
break;
}
for (sent = slist; sent; sent = sent->next)
@@ -390,7 +390,7 @@
}
if (ndead && !quietflag)
{
- char *m = "Remove dead screens with 'screen -wipe'.";
+ char *m = "Remove dead screenxs with 'screenx -wipe'.";
if (wipeflag)
Msg(0, "%d socket%s wiped out.", nwipe, nwipe > 1 ? "s" : "");
else
@@ -447,13 +447,13 @@
Kill(D_userpid, SIG_BYE);
eexit(11);
}
- Msg(0, "There is already a screen running on %s.", Filename(SockPath));
+ Msg(0, "There is already a screenx running on %s.", Filename(SockPath));
if (stat(SockPath, &st) == -1)
Panic(errno, "stat");
if ((int)st.st_uid != real_uid)
Panic(0, "Unfortunately you are not its owner.");
if ((st.st_mode & 0700) == 0600)
- Panic(0, "To resume it, use \"screen -r\"");
+ Panic(0, "To resume it, use \"screenx -r\"");
else
Panic(0, "It is not detached.");
/* NOTREACHED */
@@ -539,13 +539,13 @@
*/
eexit(11);
}
- Msg(0, "There is already a screen running on %s.", Filename(SockPath));
+ Msg(0, "There is already a screenx running on %s.", Filename(SockPath));
if (stat(SockPath, &st) == -1)
Panic(errno, "stat");
if (st.st_uid != real_uid)
Panic(0, "Unfortunately you are not its owner.");
if ((st.st_mode & 0700) == 0600)
- Panic(0, "To resume it, use \"screen -r\"");
+ Panic(0, "To resume it, use \"screenx -r\"");
else
Panic(0, "It is not detached.");
/* NOTREACHED */
--- a/src/window.c 2010-02-27 02:30:00.000000000 +0900
+++ b/src/window.c 2010-02-27 03:03:00.000000000 +0900
@@ -745,7 +745,7 @@
{
struct display *d = display; /* WriteString zaps display */
- WriteString(p, ":screen (", 9);
+ WriteString(p, ":screenx (", 10);
WriteString(p, p->w_title, strlen(p->w_title));
WriteString(p, "):", 2);
for (f = 0; p->w_cmdargs[f]; f++)
@@ -892,7 +892,7 @@
{
struct display *d = display; /* WriteString zaps display */
- WriteString(p, ":screen (", 9);
+ WriteString(p, ":screenx (", 10);
WriteString(p, p->w_title, strlen(p->w_title));
WriteString(p, "):", 2);
for (f = 0; p->w_cmdargs[f]; f++)
Patch: screen-devel-string-escape.patch
Probrem: current time is shown by set date and time 'HH:MM'.
but ':' is not suitable for the file path in some environment.
(espacially using it in :logfile)
Solution: create a new definition in the hour and the time.
Author: Kazuhiro Yoshikawa <yoshikaw@gmail.com>
Files: src/doc/screen.1
src/screen.c
Refs: This patch is referring to screen-devel mailing-list.
and add some fix.
- adjust source lines
------------
Date: Tue, 8 Jun 2010 19:03:54 -0700
From: Israel Jacques <mrkotfw@gmail.com>
To: screen-devel@gnu.org
Subject: [screen-devel] Screen patch for string escape, n and new escapes
Hello everyone.
I would like to submit this very simple patch that allows the n escape
to be qualified with a '0'. In other words, the same behavior as both
the 'c' and 'C' escape.
The patch also includes new escapes: j, k, and K.
j, displays the minutes;
k, displays the hour in 24h format; and
K displays the hour in 12h format.
I have also updated the man page.
While the j, k, and K options seem redundant as both the c and C
escapes display both minutes and hours, I would like to have the
flexibility to be able to give each escape a color attribute.
Israel
------------
diff --git src/doc/screen.1 src/doc/screen.1
index c175891..0eb17d3 100644
--- a/src/doc/screen.1
+++ b/src/doc/screen.1
@@ -3700,6 +3700,12 @@ sets %? to true if the window has the focus
hardstatus of the window
.IP H
hostname of the system
+.IP j
+minute
+.IP k
+hour in 24h format
+.IP K
+hour in 12h format
.IP l
current load of the system
.IP m
@@ -3758,7 +3764,7 @@ attribute/color modifier string terminated by the next \*Q}\*U
Substitute with the output of a 'backtick' command. The length
qualifier is misused to identify one of the commands.
.P
-The 'c' and 'C' escape may be qualified with a '0' to make
+The 'n', 'c', and 'C' escape may be qualified with a '0' to make
.I screen
use zero instead of space as fill character. The '0' qualifier
also makes the '=' escape use absolute positions. The 'n' and '='
diff --git src/screen.c src/screen.c
index 3dde3b4..a6696c4 100644
--- a/src/screen.c
+++ b/src/screen.c 2011-05-04 03:42:00.000000000 +0900
@@ -2610,7 +2610,8 @@ int rec;
}
break;
case 'd': case 'D': case 'm': case 'M': case 'y': case 'Y':
- case 'a': case 'A': case 's': case 'c': case 'C':
+ case 'a': case 'A': case 's': case 'c': case 'C': case 'k':
+ case 'K': case 'j':
if (l < 4)
break;
if (tm == 0)
@@ -2669,6 +2670,21 @@ int rec;
if (!tick || tick > 60)
tick = 60;
break;
+ case 'k':
+ sprintf(p, zeroflg ? "%02d" : "%2d", tm->tm_hour);
+ if (!tick || tick > 60)
+ tick = 60;
+ break;
+ case 'K':
+ sprintf(p, zeroflg ? "%02d" : "%2d", (tm->tm_hour + 11) % 12 + 1);
+ if (!tick || tick > 60)
+ tick = 60;
+ break;
+ case 'j':
+ sprintf(p, zeroflg ? "%02d" : "%2d", tm->tm_min);
+ if (!tick || tick > 60)
+ tick = 60;
+ break;
default:
break;
}
@@ -2998,9 +3014,9 @@ int rec;
if (num == 0)
num = 1;
if (!win)
- sprintf(p, "%*s", num, num > 1 ? "--" : "-");
+ sprintf(p, "%*s", num, ((num > 1) || zeroflg) ? "--" : "-");
else
- sprintf(p, "%*d", num, win->w_number);
+ sprintf(p, zeroflg ? "%02d" : "%*d", zeroflg ? win->w_number : num, win->w_number);
qmflag = 1;
p += strlen(p) - 1;
}
Patch: screen-statusline-showencoding.patch
Probrem: by default, :info command shows each window encoding.
but it is inconvenient in a multi encoding environment
to confirm everytime.
Solution: enable to display encoding information at caption/hardstatus.
Author: Kazuhiro Yoshikawa <yoshikaw@gmail.com>
Files: src/screen.c
src/process.c
Refs: This patch is referring to screen-devel mailing-list.
and add some fix.
* adjust directory depth
* adjust source lines
------------
Date: Wed, 28 May 2008 15:34:15 +0800
From: Yi-Jheng Lin <yzlin@cs.nctu.edu.tw>
To: screen-devel@gnu.org
Subject: [screen-devel] Statusline showencoding patch
Dear,
I'm so glad that screen supports the encoding transformation. That's =
really a great function for me to switch between Big5 & UTF-8 environment=
! But sometimes I may be confused "What encoding am I using?". Although, =
I can use "Ctrl-a i" to get the information of current window (including =
the encoding info). I was wondering if the statusline could show the enc=
oding of current window, so I patch it!
With this patch, I could add a new parameter "%e" to statusline for s=
howing the encoding of current window. This might not be a good solution,=
but it does work!
The following is the patch.
------------
--- a/src/screen.c 2008-05-08 02:37:22.000000000 +0800
+++ b/src/screen.c 2010-04-04 02:29:00.000000000 +0900
@@ -2778,6 +2778,17 @@
}
p += strlen(p) - 1;
break;
+#ifdef ENCODINGS
+ case 'e':
+ *p = 0;
+ D_encoding = nwin_options.encoding > 0 ? nwin_options.encoding : 0;
+ if (win && win->w_encoding)
+ {
+ strcpy(p, EncodingName(win->w_encoding));
+ }
+ p += strlen(p) - 1;
+ break;
+#endif
case '{':
{
char rbuf[128];
--- a/src/process.c 2008-05-08 02:37:33.000000000 +0800
+++ b/src/process.c 2011-05-04 00:41:00.000000000 +0900
@@ -3673,6 +3673,7 @@
{
WinSwitchEncoding(fore, n);
ResetCharsets(fore);
+ RedisplayDisplays(0);
}
else if (i && display)
D_encoding = n;
require 'formula'
class Screenx < Formula
homepage 'http://www.gnu.org/software/screen/'
url 'http://git.savannah.gnu.org/cgit/screen.git/snapshot/screen-master.tar.gz'
sha1 '642588a585fca1def67bd85172addf9cd0a0c745'
version '4.1.0-20110819git450e8f3'
head 'git://git.savannah.gnu.org/screen.git', :branch => 'master'
def patches
[
'https://gist.github.com/raw/1519337/24b9b43d9e11557759babeaf098acf8988448666/screen-statusline-showencoding.patch',
'https://gist.github.com/raw/1519337/c827522e7892344719effbb4544192692c038bf6/rename2screenx.patch',
'https://gist.github.com/raw/1519337/04dd8fdc435fdeb70cbda0b9d75a2b01b6287278/expand-input-maxlen.patch',
'https://gist.github.com/raw/1519337/d1e708560606ac6778dabac6f8d7d06beff6dfde/screen-devel-string-escape.patch',
'https://gist.github.com/raw/1519337/8180c8eedbd83dcca1e66d7a7b7550916ae835e3/osx-comment-combined-char.patch'
]
end
def install
Dir.chdir 'src' do
system './autogen.sh'
system './configure', "--prefix=#{prefix}",
'--enable-pam',
'--enable-colors256',
'--enable-rxvt_osc',
'--enable-use-locale',
'--enable-telnet'
system 'make install'
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment