summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkuriyama <kuriyama@FreeBSD.org>1998-11-21 03:27:53 +0000
committerkuriyama <kuriyama@FreeBSD.org>1998-11-21 03:27:53 +0000
commit4061d8091c795fda4e1c5979d8bc82355de1ef2b (patch)
treede6f10c3ea079c4aad5b0f0f868ada44e2347b3b
parent968ab3dff54e538bad20fb9d94e35d0e87047021 (diff)
downloadFreeBSD-ports-4061d8091c795fda4e1c5979d8bc82355de1ef2b.zip
FreeBSD-ports-4061d8091c795fda4e1c5979d8bc82355de1ef2b.tar.gz
a very light Emacs-clone with japanese support.
PR: ports/8222 Submitted by: Kawaguti Ginga <ginga@amalthea.phys.s.u-tokyo.ac.jp>
-rw-r--r--japanese/ng-devel/Makefile33
-rw-r--r--japanese/ng-devel/distinfo1
-rw-r--r--japanese/ng-devel/files/patch-aa308
-rw-r--r--japanese/ng-devel/pkg-comment1
-rw-r--r--japanese/ng-devel/pkg-descr11
-rw-r--r--japanese/ng-devel/pkg-plist5
-rw-r--r--japanese/ng/Makefile33
-rw-r--r--japanese/ng/distinfo1
-rw-r--r--japanese/ng/files/patch-aa308
-rw-r--r--japanese/ng/pkg-comment1
-rw-r--r--japanese/ng/pkg-descr11
-rw-r--r--japanese/ng/pkg-plist5
12 files changed, 718 insertions, 0 deletions
diff --git a/japanese/ng-devel/Makefile b/japanese/ng-devel/Makefile
new file mode 100644
index 0000000..90a809c
--- /dev/null
+++ b/japanese/ng-devel/Makefile
@@ -0,0 +1,33 @@
+# New ports collection makefile for: Ng
+# Version required: 1.3L
+# Date created: 18 November 1998
+# Whom: Kawaguti Ginga <ginga@athena.club.or.jp>
+#
+# $Id$
+#
+
+DISTNAME= ng-1.3L
+PKGNAME= ja-ng-1.3l
+CATEGORIES= japanese editors
+MASTER_SITES= ftp://ftp.iis.u-tokyo.ac.jp/unix/Editor/
+
+MAINTAINER= ginga@athena.club.or.jp
+
+WRKSRC= ${WRKDIR}/Ng-1.3L
+ALL_TARGET= ng
+
+post-patch:
+ @(cd ${WRKSRC}; ${LN} -s sys/bsd/Makefile . )
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/ng ${PREFIX}/bin/
+
+post-install:
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${PREFIX}/share/doc/ja/ng
+ ${INSTALL_DATA} ${WRKSRC}/Ng.doc ${PREFIX}/share/doc/ja/ng/Ng.doc.euc-jp
+ ${INSTALL_DATA} ${WRKSRC}/Ng.ref ${PREFIX}/share/doc/ja/ng/Ng.ref.euc-jp
+ ${INSTALL_DATA} ${WRKSRC}/Ng.tut ${PREFIX}/share/doc/ja/ng/Ng.tut.euc-jp
+.endif
+
+.include <bsd.port.mk>
diff --git a/japanese/ng-devel/distinfo b/japanese/ng-devel/distinfo
new file mode 100644
index 0000000..a8ec3a4
--- /dev/null
+++ b/japanese/ng-devel/distinfo
@@ -0,0 +1 @@
+MD5 (ng-1.3L.tar.gz) = d4fe1690a768f7d7b1133c1093dbcada
diff --git a/japanese/ng-devel/files/patch-aa b/japanese/ng-devel/files/patch-aa
new file mode 100644
index 0000000..5b16584
--- /dev/null
+++ b/japanese/ng-devel/files/patch-aa
@@ -0,0 +1,308 @@
+diff -cr ../complt.c ./complt.c
+*** ../complt.c Mon Jun 14 09:31:36 1993
+--- ./complt.c Wed Apr 17 04:12:07 1996
+***************
+*** 10,19 ****
+--- 10,26 ----
+ #include "complt.h"
+ #define LIST_COL 35
+
++ #ifndef __FreeBSD__
+ BUFFER *bp = NULL;
+ BUFFER *prev_bp = NULL;
+ WINDOW *prev_wp = NULL;
+ WINDOW prev_window;
++ #else
++ static BUFFER *bp = NULL;
++ static BUFFER *prev_bp = NULL;
++ static WINDOW *prev_wp = NULL;
++ static WINDOW prev_window;
++ #endif /* __FreeBSD__ */
+
+ /*
+ * do some completion.
+***************
+*** 24,32 ****
+--- 31,45 ----
+ int flags;
+ {
+ int res;
++ #ifndef __FreeBSD__
+ int complete_funcname ();
+ int complete_buffername ();
+ int complete_filename ();
++ #else
++ static int complete_funcname ();
++ static int complete_buffername ();
++ static int complete_filename ();
++ #endif /* __FreeBSD__ */
+
+ switch (flags & (EFFUNC | EFBUF | EFFILE))
+ {
+***************
+*** 256,264 ****
+--- 269,283 ----
+ int cur_row;
+ int cur_col;
+ WINDOW *wp;
++ #ifndef __FreeBSD__
+ int complete_list_funcnames ();
+ int complete_list_buffernames ();
+ int complete_list_filenames ();
++ #else
++ static int complete_list_funcnames ();
++ static int complete_list_buffernames ();
++ static int complete_list_filenames ();
++ #endif /* __FreeBSD__ */
+
+ if ((bp = bfind ("*Completions*", TRUE)) == NULL)
+ return (FALSE);
+diff -cr ../echo.c ./echo.c
+*** ../echo.c Mon Jun 14 09:31:38 1993
+--- ./echo.c Wed Apr 17 04:14:53 1996
+***************
+*** 192,199 ****
+ {
+ int cpos;
+ int c;
+! int veread_del_char ();
+! int veread_complete ();
+
+ #ifdef ADDFUNC /* 91.01.16 by S.Yoshida */
+ /* If an extra argument exists, use it. */
+--- 192,204 ----
+ {
+ int cpos;
+ int c;
+! #ifndef __FreeBSD__
+! int veread_del_char ();
+! int veread_complete ();
+! #else
+! static int veread_del_char(char *, int);
+! static int veread_complete(char *, int, int, int);
+! #endif /* __FreeBSD__ */
+
+ #ifdef ADDFUNC /* 91.01.16 by S.Yoshida */
+ /* If an extra argument exists, use it. */
+diff -cr ../extend.c ./extend.c
+*** ../extend.c Mon Jun 14 09:31:39 1993
+--- ./extend.c Wed Apr 17 04:07:48 1996
+***************
+*** 96,102 ****
+--- 96,106 ----
+ KEYMAP *mp;
+ PF *pfp;
+ MAP_ELEMENT *mep;
++ #ifndef __FreeBSD__
+ KEYMAP *realocmap(); /* 90.03.23 delete "static" by A.Shirahashi */
++ #else
++ static KEYMAP *realocmap(KEYMAP *);
++ #endif /* __FreeBSD__ */
+
+ if(ele >= &curmap->map_element[curmap->map_num] || c < ele->k_base) {
+ if(ele > &curmap->map_element[0] && (funct!=prefix ||
+***************
+*** 247,253 ****
+--- 251,261 ----
+ {
+ register KEYMAP *mp;
+ register int i;
++ #ifndef __FreeBSD__
+ VOID fixmap(); /* 90.03.23 delete "static" by A.Shirahashi */
++ #else
++ static VOID fixmap(KEYMAP *,KEYMAP *,KEYMAP *);
++ #endif /* __FreeBSD__ */
+ extern int nmaps;
+
+ if((mp = (KEYMAP *)malloc((unsigned)(sizeof(KEYMAP)+
+***************
+*** 607,614 ****
+--- 615,627 ----
+ #endif
+ PF name_function();
+ LINE *lalloc();
++ #ifndef __FreeBSD__
+ char *skipwhite(), *parsetoken(); /* 90.03.23 delete "static" */
+ /* by A.Shirahashi */
++ #else
++ static char *skipwhite(char *);
++ static char *parsetoken(char *);
++ #endif /* __FreeBSD__ */
+
+ if(macrodef || inmacro) {
+ ewprintf("Not now!");
+diff -cr ../sys/bsd/fileio.c ./sys/bsd/fileio.c
+*** ../sys/bsd/fileio.c Wed Feb 13 13:05:02 1991
+--- ./sys/bsd/fileio.c Wed Apr 17 04:26:24 1996
+***************
+*** 6,11 ****
+--- 6,15 ----
+ #include "config.h" /* 90.12.20 by S.Yoshida */
+ #include "def.h"
+
++ #ifdef __FreeBSD__
++ #include <string.h>
++ #endif /* __FreeBSD__ */
++
+ static FILE *ffp;
+ extern char *getenv(), *strncpy();
+ char *adjustname();
+***************
+*** 384,390 ****
+--- 388,398 ----
+ {
+ int pid;
+ char *eargv[3];
++ #ifndef __FreeBSD__
+ union wait status;
++ #else
++ int status;
++ #endif /* __FreeBSD__ */
+
+ #ifdef BUGFIX /* 91.01.11 by Y.Kaneko */
+ if((pid = vfork()) == 0) {
+***************
+*** 403,409 ****
+--- 411,421 ----
+ if(pid == -1) return -1;
+ #endif /* BUGFIX */
+ while(wait(&status) != pid) {}
++ #ifndef __FreeBSD__
+ return status.w_status == 0;
++ #else
++ return status == 0;
++ #endif /* __FreeBSD__ */
+ }
+
+ BUFFER *dired_(dirname)
+***************
+*** 461,472 ****
+--- 473,506 ----
+ register char *fn;
+ {
+ register char *cp;
++ #ifndef __FreeBSD__
+
+ if(llength(lp) <= 47) return ABORT;
+ (VOID) strcpy(fn, curbp->b_fname);
+ cp = fn + strlen(fn);
+ bcopy(&lp->l_text[47], cp, llength(lp) - 47);
+ cp[llength(lp) - 47] = '\0';
++ #else
++ register int sepidx, duplen;
++
++ if(llength(lp) < 47) return ABORT;
++ cp = strrchr(lp->l_text, ' ');
++ sepidx = (cp - lp->l_text) + 1;
++
++ if ( lgetc(lp, 2) == 'l' && strncmp(cp - 3, " -> " ,4) == 0 ) {
++ duplen = sepidx-4;
++ strncpy(fn, lp->l_text, duplen);
++ fn[duplen] = '\0';
++ sepidx = (strrchr(fn, ' ') - fn) + 1;
++ duplen = duplen - sepidx;
++ }
++ else duplen = llength(lp) - sepidx;
++
++ (VOID) strcpy(fn, curbp->b_fname);
++ cp = fn + strlen(fn);
++ bcopy(&lp->l_text[sepidx], cp, duplen);
++ cp[duplen] = '\0';
++ #endif
+ return lgetc(lp, 2) == 'd';
+ }
+ #endif
+diff -cr ../sys/bsd/spawn.c ./sys/bsd/spawn.c
+*** ../sys/bsd/spawn.c Wed Feb 13 13:01:41 1991
+--- ./sys/bsd/spawn.c Mon Apr 15 21:59:50 1996
+***************
+*** 39,51 ****
+--- 39,65 ----
+ */
+ /*ARGSUSED*/
+ spawncli(f, n) {
++ #ifndef __FreeBSD__
+ register int pid, wpid, (*oqsig)(), (*oisig)(), omask;
++ #else
++ register int omask;
++ register pid_t pid, wpid;
++ register sig_t oqsig, oisig;
++ #endif /* __FreeBSD__ */
+ #ifdef ADDFUNC /* 90.02.14 by S.Yoshida */
+ #ifdef SIGWINCH /* 90.02.14 by S.Yoshida */
++ #ifndef __FreeBSD__
+ register int (*owsig)();
++ #else
++ register sig_t owsig;
++ #endif /* __FreeBSD__ */
+ #endif /* SIGWINCH */
+ #endif /* ADDFUNC */
++ #ifndef __FreeBSD__
+ union wait status;
++ #else
++ int status;
++ #endif /* __FreeBSD__ */
+
+ if (shellp == NULL) {
+ shellp = getenv("SHELL");
+***************
+*** 141,148 ****
+--- 155,169 ----
+ char *tmp;
+ int ostdin, ostdout, ostderr, in, out, s;
+ extern char *mktemp();
++ #ifdef __FreeBSD__
++ static char tmpfile[] = "/tmp/ngXXXXXX";
++ #endif /* __FreeBSD__ */
+
++ #ifndef __FreeBSD__
+ if ((tmp = mktemp("/tmp/ngXXXXXX")) == NULL)
++ #else
++ if ((tmp = mktemp(tmpfile)) == NULL)
++ #endif /* __FreeBSD__ */
+ return NULL;
+ if ((in = open(input ? input : "/dev/null", 0)) < 0)
+ return NULL;
+diff -cr ../sys/bsd/ttyio.c ./sys/bsd/ttyio.c
+*** ../sys/bsd/ttyio.c Wed Feb 13 13:02:01 1991
+--- ./sys/bsd/ttyio.c Mon Apr 15 21:59:50 1996
+***************
+*** 32,38 ****
+--- 32,42 ----
+ int ncol; /* Terminal size, columns. */
+ #ifdef ADDFUNC /* 90.02.14 by S.Yoshida */
+ #ifdef SIGWINCH /* 90.02.13 by S.Yoshida */
++ #ifndef __FreeBSD__
+ int ttwinch();
++ #else
++ void ttwinch();
++ #endif /* __FreeBSD__ */
+ #endif /* SIGWINCH */
+ #endif /* ADDFUNC */
+
+***************
+*** 46,52 ****
+--- 50,58 ----
+ ttopen() {
+ register char *tv_stype;
+ char *getenv(), *tgetstr(), tcbuf[1024], err_str[72];
++ #ifndef __FreeBSD__
+ char *sprintf();
++ #endif /* __FreeBSD__ */
+
+ /* do this the REAL way */
+ if ((tv_stype = getenv("TERM")) == NULL)
+***************
+*** 256,262 ****
+--- 262,272 ----
+ /*
+ * Signal handler when window size has changed.
+ */
++ #ifndef __FreeBSD__
+ ttwinch()
++ #else
++ void ttwinch()
++ #endif /* __FreeBSD__ */
+ {
+ refresh(FFRAND, 0); /* Very easy way... */
+ }
diff --git a/japanese/ng-devel/pkg-comment b/japanese/ng-devel/pkg-comment
new file mode 100644
index 0000000..f919089
--- /dev/null
+++ b/japanese/ng-devel/pkg-comment
@@ -0,0 +1 @@
+a very light Emacs-clone with japanese support.
diff --git a/japanese/ng-devel/pkg-descr b/japanese/ng-devel/pkg-descr
new file mode 100644
index 0000000..c148f69
--- /dev/null
+++ b/japanese/ng-devel/pkg-descr
@@ -0,0 +1,11 @@
+Ng is a very light weight Emacs clone editor, written in C.
+It doesn't have Lisp(that means very limited customization
+is available). Since you can invoke it very quickly
+(compared with real GNU Emacs), it is useful in dealing with
+changing small file a bit.
+
+Ng(Nihongo Micro Gnu Emacs) is a Mg(Micro Gnu Emacs)'s
+japanese port. Ng supports EUC, JIS and SJIS code.
+Ng also have (rather simple) C-mode.
+
+It is also very useful even if you don't need Japanese support.
diff --git a/japanese/ng-devel/pkg-plist b/japanese/ng-devel/pkg-plist
new file mode 100644
index 0000000..a82961b
--- /dev/null
+++ b/japanese/ng-devel/pkg-plist
@@ -0,0 +1,5 @@
+bin/ng
+share/doc/ja/ng/Ng.doc.euc-jp
+share/doc/ja/ng/Ng.ref.euc-jp
+share/doc/ja/ng/Ng.tut.euc-jp
+@dirrm share/doc/ja/ng
diff --git a/japanese/ng/Makefile b/japanese/ng/Makefile
new file mode 100644
index 0000000..90a809c
--- /dev/null
+++ b/japanese/ng/Makefile
@@ -0,0 +1,33 @@
+# New ports collection makefile for: Ng
+# Version required: 1.3L
+# Date created: 18 November 1998
+# Whom: Kawaguti Ginga <ginga@athena.club.or.jp>
+#
+# $Id$
+#
+
+DISTNAME= ng-1.3L
+PKGNAME= ja-ng-1.3l
+CATEGORIES= japanese editors
+MASTER_SITES= ftp://ftp.iis.u-tokyo.ac.jp/unix/Editor/
+
+MAINTAINER= ginga@athena.club.or.jp
+
+WRKSRC= ${WRKDIR}/Ng-1.3L
+ALL_TARGET= ng
+
+post-patch:
+ @(cd ${WRKSRC}; ${LN} -s sys/bsd/Makefile . )
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/ng ${PREFIX}/bin/
+
+post-install:
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${PREFIX}/share/doc/ja/ng
+ ${INSTALL_DATA} ${WRKSRC}/Ng.doc ${PREFIX}/share/doc/ja/ng/Ng.doc.euc-jp
+ ${INSTALL_DATA} ${WRKSRC}/Ng.ref ${PREFIX}/share/doc/ja/ng/Ng.ref.euc-jp
+ ${INSTALL_DATA} ${WRKSRC}/Ng.tut ${PREFIX}/share/doc/ja/ng/Ng.tut.euc-jp
+.endif
+
+.include <bsd.port.mk>
diff --git a/japanese/ng/distinfo b/japanese/ng/distinfo
new file mode 100644
index 0000000..a8ec3a4
--- /dev/null
+++ b/japanese/ng/distinfo
@@ -0,0 +1 @@
+MD5 (ng-1.3L.tar.gz) = d4fe1690a768f7d7b1133c1093dbcada
diff --git a/japanese/ng/files/patch-aa b/japanese/ng/files/patch-aa
new file mode 100644
index 0000000..5b16584
--- /dev/null
+++ b/japanese/ng/files/patch-aa
@@ -0,0 +1,308 @@
+diff -cr ../complt.c ./complt.c
+*** ../complt.c Mon Jun 14 09:31:36 1993
+--- ./complt.c Wed Apr 17 04:12:07 1996
+***************
+*** 10,19 ****
+--- 10,26 ----
+ #include "complt.h"
+ #define LIST_COL 35
+
++ #ifndef __FreeBSD__
+ BUFFER *bp = NULL;
+ BUFFER *prev_bp = NULL;
+ WINDOW *prev_wp = NULL;
+ WINDOW prev_window;
++ #else
++ static BUFFER *bp = NULL;
++ static BUFFER *prev_bp = NULL;
++ static WINDOW *prev_wp = NULL;
++ static WINDOW prev_window;
++ #endif /* __FreeBSD__ */
+
+ /*
+ * do some completion.
+***************
+*** 24,32 ****
+--- 31,45 ----
+ int flags;
+ {
+ int res;
++ #ifndef __FreeBSD__
+ int complete_funcname ();
+ int complete_buffername ();
+ int complete_filename ();
++ #else
++ static int complete_funcname ();
++ static int complete_buffername ();
++ static int complete_filename ();
++ #endif /* __FreeBSD__ */
+
+ switch (flags & (EFFUNC | EFBUF | EFFILE))
+ {
+***************
+*** 256,264 ****
+--- 269,283 ----
+ int cur_row;
+ int cur_col;
+ WINDOW *wp;
++ #ifndef __FreeBSD__
+ int complete_list_funcnames ();
+ int complete_list_buffernames ();
+ int complete_list_filenames ();
++ #else
++ static int complete_list_funcnames ();
++ static int complete_list_buffernames ();
++ static int complete_list_filenames ();
++ #endif /* __FreeBSD__ */
+
+ if ((bp = bfind ("*Completions*", TRUE)) == NULL)
+ return (FALSE);
+diff -cr ../echo.c ./echo.c
+*** ../echo.c Mon Jun 14 09:31:38 1993
+--- ./echo.c Wed Apr 17 04:14:53 1996
+***************
+*** 192,199 ****
+ {
+ int cpos;
+ int c;
+! int veread_del_char ();
+! int veread_complete ();
+
+ #ifdef ADDFUNC /* 91.01.16 by S.Yoshida */
+ /* If an extra argument exists, use it. */
+--- 192,204 ----
+ {
+ int cpos;
+ int c;
+! #ifndef __FreeBSD__
+! int veread_del_char ();
+! int veread_complete ();
+! #else
+! static int veread_del_char(char *, int);
+! static int veread_complete(char *, int, int, int);
+! #endif /* __FreeBSD__ */
+
+ #ifdef ADDFUNC /* 91.01.16 by S.Yoshida */
+ /* If an extra argument exists, use it. */
+diff -cr ../extend.c ./extend.c
+*** ../extend.c Mon Jun 14 09:31:39 1993
+--- ./extend.c Wed Apr 17 04:07:48 1996
+***************
+*** 96,102 ****
+--- 96,106 ----
+ KEYMAP *mp;
+ PF *pfp;
+ MAP_ELEMENT *mep;
++ #ifndef __FreeBSD__
+ KEYMAP *realocmap(); /* 90.03.23 delete "static" by A.Shirahashi */
++ #else
++ static KEYMAP *realocmap(KEYMAP *);
++ #endif /* __FreeBSD__ */
+
+ if(ele >= &curmap->map_element[curmap->map_num] || c < ele->k_base) {
+ if(ele > &curmap->map_element[0] && (funct!=prefix ||
+***************
+*** 247,253 ****
+--- 251,261 ----
+ {
+ register KEYMAP *mp;
+ register int i;
++ #ifndef __FreeBSD__
+ VOID fixmap(); /* 90.03.23 delete "static" by A.Shirahashi */
++ #else
++ static VOID fixmap(KEYMAP *,KEYMAP *,KEYMAP *);
++ #endif /* __FreeBSD__ */
+ extern int nmaps;
+
+ if((mp = (KEYMAP *)malloc((unsigned)(sizeof(KEYMAP)+
+***************
+*** 607,614 ****
+--- 615,627 ----
+ #endif
+ PF name_function();
+ LINE *lalloc();
++ #ifndef __FreeBSD__
+ char *skipwhite(), *parsetoken(); /* 90.03.23 delete "static" */
+ /* by A.Shirahashi */
++ #else
++ static char *skipwhite(char *);
++ static char *parsetoken(char *);
++ #endif /* __FreeBSD__ */
+
+ if(macrodef || inmacro) {
+ ewprintf("Not now!");
+diff -cr ../sys/bsd/fileio.c ./sys/bsd/fileio.c
+*** ../sys/bsd/fileio.c Wed Feb 13 13:05:02 1991
+--- ./sys/bsd/fileio.c Wed Apr 17 04:26:24 1996
+***************
+*** 6,11 ****
+--- 6,15 ----
+ #include "config.h" /* 90.12.20 by S.Yoshida */
+ #include "def.h"
+
++ #ifdef __FreeBSD__
++ #include <string.h>
++ #endif /* __FreeBSD__ */
++
+ static FILE *ffp;
+ extern char *getenv(), *strncpy();
+ char *adjustname();
+***************
+*** 384,390 ****
+--- 388,398 ----
+ {
+ int pid;
+ char *eargv[3];
++ #ifndef __FreeBSD__
+ union wait status;
++ #else
++ int status;
++ #endif /* __FreeBSD__ */
+
+ #ifdef BUGFIX /* 91.01.11 by Y.Kaneko */
+ if((pid = vfork()) == 0) {
+***************
+*** 403,409 ****
+--- 411,421 ----
+ if(pid == -1) return -1;
+ #endif /* BUGFIX */
+ while(wait(&status) != pid) {}
++ #ifndef __FreeBSD__
+ return status.w_status == 0;
++ #else
++ return status == 0;
++ #endif /* __FreeBSD__ */
+ }
+
+ BUFFER *dired_(dirname)
+***************
+*** 461,472 ****
+--- 473,506 ----
+ register char *fn;
+ {
+ register char *cp;
++ #ifndef __FreeBSD__
+
+ if(llength(lp) <= 47) return ABORT;
+ (VOID) strcpy(fn, curbp->b_fname);
+ cp = fn + strlen(fn);
+ bcopy(&lp->l_text[47], cp, llength(lp) - 47);
+ cp[llength(lp) - 47] = '\0';
++ #else
++ register int sepidx, duplen;
++
++ if(llength(lp) < 47) return ABORT;
++ cp = strrchr(lp->l_text, ' ');
++ sepidx = (cp - lp->l_text) + 1;
++
++ if ( lgetc(lp, 2) == 'l' && strncmp(cp - 3, " -> " ,4) == 0 ) {
++ duplen = sepidx-4;
++ strncpy(fn, lp->l_text, duplen);
++ fn[duplen] = '\0';
++ sepidx = (strrchr(fn, ' ') - fn) + 1;
++ duplen = duplen - sepidx;
++ }
++ else duplen = llength(lp) - sepidx;
++
++ (VOID) strcpy(fn, curbp->b_fname);
++ cp = fn + strlen(fn);
++ bcopy(&lp->l_text[sepidx], cp, duplen);
++ cp[duplen] = '\0';
++ #endif
+ return lgetc(lp, 2) == 'd';
+ }
+ #endif
+diff -cr ../sys/bsd/spawn.c ./sys/bsd/spawn.c
+*** ../sys/bsd/spawn.c Wed Feb 13 13:01:41 1991
+--- ./sys/bsd/spawn.c Mon Apr 15 21:59:50 1996
+***************
+*** 39,51 ****
+--- 39,65 ----
+ */
+ /*ARGSUSED*/
+ spawncli(f, n) {
++ #ifndef __FreeBSD__
+ register int pid, wpid, (*oqsig)(), (*oisig)(), omask;
++ #else
++ register int omask;
++ register pid_t pid, wpid;
++ register sig_t oqsig, oisig;
++ #endif /* __FreeBSD__ */
+ #ifdef ADDFUNC /* 90.02.14 by S.Yoshida */
+ #ifdef SIGWINCH /* 90.02.14 by S.Yoshida */
++ #ifndef __FreeBSD__
+ register int (*owsig)();
++ #else
++ register sig_t owsig;
++ #endif /* __FreeBSD__ */
+ #endif /* SIGWINCH */
+ #endif /* ADDFUNC */
++ #ifndef __FreeBSD__
+ union wait status;
++ #else
++ int status;
++ #endif /* __FreeBSD__ */
+
+ if (shellp == NULL) {
+ shellp = getenv("SHELL");
+***************
+*** 141,148 ****
+--- 155,169 ----
+ char *tmp;
+ int ostdin, ostdout, ostderr, in, out, s;
+ extern char *mktemp();
++ #ifdef __FreeBSD__
++ static char tmpfile[] = "/tmp/ngXXXXXX";
++ #endif /* __FreeBSD__ */
+
++ #ifndef __FreeBSD__
+ if ((tmp = mktemp("/tmp/ngXXXXXX")) == NULL)
++ #else
++ if ((tmp = mktemp(tmpfile)) == NULL)
++ #endif /* __FreeBSD__ */
+ return NULL;
+ if ((in = open(input ? input : "/dev/null", 0)) < 0)
+ return NULL;
+diff -cr ../sys/bsd/ttyio.c ./sys/bsd/ttyio.c
+*** ../sys/bsd/ttyio.c Wed Feb 13 13:02:01 1991
+--- ./sys/bsd/ttyio.c Mon Apr 15 21:59:50 1996
+***************
+*** 32,38 ****
+--- 32,42 ----
+ int ncol; /* Terminal size, columns. */
+ #ifdef ADDFUNC /* 90.02.14 by S.Yoshida */
+ #ifdef SIGWINCH /* 90.02.13 by S.Yoshida */
++ #ifndef __FreeBSD__
+ int ttwinch();
++ #else
++ void ttwinch();
++ #endif /* __FreeBSD__ */
+ #endif /* SIGWINCH */
+ #endif /* ADDFUNC */
+
+***************
+*** 46,52 ****
+--- 50,58 ----
+ ttopen() {
+ register char *tv_stype;
+ char *getenv(), *tgetstr(), tcbuf[1024], err_str[72];
++ #ifndef __FreeBSD__
+ char *sprintf();
++ #endif /* __FreeBSD__ */
+
+ /* do this the REAL way */
+ if ((tv_stype = getenv("TERM")) == NULL)
+***************
+*** 256,262 ****
+--- 262,272 ----
+ /*
+ * Signal handler when window size has changed.
+ */
++ #ifndef __FreeBSD__
+ ttwinch()
++ #else
++ void ttwinch()
++ #endif /* __FreeBSD__ */
+ {
+ refresh(FFRAND, 0); /* Very easy way... */
+ }
diff --git a/japanese/ng/pkg-comment b/japanese/ng/pkg-comment
new file mode 100644
index 0000000..f919089
--- /dev/null
+++ b/japanese/ng/pkg-comment
@@ -0,0 +1 @@
+a very light Emacs-clone with japanese support.
diff --git a/japanese/ng/pkg-descr b/japanese/ng/pkg-descr
new file mode 100644
index 0000000..c148f69
--- /dev/null
+++ b/japanese/ng/pkg-descr
@@ -0,0 +1,11 @@
+Ng is a very light weight Emacs clone editor, written in C.
+It doesn't have Lisp(that means very limited customization
+is available). Since you can invoke it very quickly
+(compared with real GNU Emacs), it is useful in dealing with
+changing small file a bit.
+
+Ng(Nihongo Micro Gnu Emacs) is a Mg(Micro Gnu Emacs)'s
+japanese port. Ng supports EUC, JIS and SJIS code.
+Ng also have (rather simple) C-mode.
+
+It is also very useful even if you don't need Japanese support.
diff --git a/japanese/ng/pkg-plist b/japanese/ng/pkg-plist
new file mode 100644
index 0000000..a82961b
--- /dev/null
+++ b/japanese/ng/pkg-plist
@@ -0,0 +1,5 @@
+bin/ng
+share/doc/ja/ng/Ng.doc.euc-jp
+share/doc/ja/ng/Ng.ref.euc-jp
+share/doc/ja/ng/Ng.tut.euc-jp
+@dirrm share/doc/ja/ng
OpenPOWER on IntegriCloud