Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Jan 1999 21:42:55 +0900 (JST)
From:      shige@kuis.kyoto-u.ac.jp
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Cc:        shige@kuis.kyoto-u.ac.jp
Subject:   ports/9635: New port: textproc/psgml-emacs
Message-ID:  <19990123214255X.shige@kuis.kyoto-u.ac.jp>

next in thread | raw e-mail | index | archive | help

>Number:         9635
>Category:       ports
>Synopsis:       New port: textproc/psgml-emacs
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Jan 23 04:50:00 PST 1999
>Closed-Date:
>Last-Modified:
>Originator:     Shigeyuki FUKUSHIMA
>Release:        FreeBSD 3.0-CURRENT i386
>Organization:
Dept. of Information Science, Kyoto Univ., JAPAN
>Environment:

	FreeBSD 2.2.8-RELEASE i386
	FreeBSD 3.0-RELEASE i386
	FreeBSD 3.0-CURRENT i386

>Description:

New port: textproc/psgml-emacs

   PSGML is a major mode for editing SGML and XML documents.  It works
with GNU Emacs 19.34, 20.3 and later or with XEmacs 19.9 and later.
PSGML contains a simple SGML parser and can work with any DTD.
Functions provided includes menus and commands for inserting tags with
only the contextually valid tags, identification of structural errors,
editing of attribute values in a separate window with information about
types and defaults, and structure based editing.

This package/port depends on textproc/catalogs port.

Thank you.
---shige

>How-To-Repeat:

>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	psgml-emacs
#	psgml-emacs/files
#	psgml-emacs/files/md5
#	psgml-emacs/files/psgml-setup.el.in
#	psgml-emacs/pkg
#	psgml-emacs/pkg/COMMENT
#	psgml-emacs/pkg/DESCR
#	psgml-emacs/pkg/PLIST
#	psgml-emacs/patches
#	psgml-emacs/patches/patch-aa
#	psgml-emacs/patches/patch-ab
#	psgml-emacs/patches/patch-ac
#	psgml-emacs/patches/patch-ad
#	psgml-emacs/patches/patch-ae
#	psgml-emacs/patches/patch-af
#	psgml-emacs/patches/patch-ag
#	psgml-emacs/scripts
#	psgml-emacs/scripts/configure
#	psgml-emacs/Makefile
#
echo c - psgml-emacs
mkdir -p psgml-emacs > /dev/null 2>&1
echo c - psgml-emacs/files
mkdir -p psgml-emacs/files > /dev/null 2>&1
echo x - psgml-emacs/files/md5
sed 's/^X//' >psgml-emacs/files/md5 << 'END-of-psgml-emacs/files/md5'
XMD5 (psgml-1.1.6.tar.gz) = 0736a2aee7d41dcfad16140354a929d4
END-of-psgml-emacs/files/md5
echo x - psgml-emacs/files/psgml-setup.el.in
sed 's/^X//' >psgml-emacs/files/psgml-setup.el.in << 'END-of-psgml-emacs/files/psgml-setup.el.in'
X;;
X;; @(#)psgml-setup.el -- psgml emacs load-path setup elisp file.
X;;                                            --  by shige@kuis.kyoto-u.ac.jp
X
X(setq load-path (append '(
X	"@@PREFIX@@/@@EMACS_LIBDIR@@/site-lisp/psgml"
X ) load-path))
X(provide 'psgml-setup)
END-of-psgml-emacs/files/psgml-setup.el.in
echo c - psgml-emacs/pkg
mkdir -p psgml-emacs/pkg > /dev/null 2>&1
echo x - psgml-emacs/pkg/COMMENT
sed 's/^X//' >psgml-emacs/pkg/COMMENT << 'END-of-psgml-emacs/pkg/COMMENT'
XPSGML: a major mode for editing SGML and XML documents for emacs.
END-of-psgml-emacs/pkg/COMMENT
echo x - psgml-emacs/pkg/DESCR
sed 's/^X//' >psgml-emacs/pkg/DESCR << 'END-of-psgml-emacs/pkg/DESCR'
XPSGML: a major mode for editing SGML and XML documents for emacs.
X
X--- Emacs Library Porting
X
X   PSGML is a major mode for editing SGML and XML documents.  It works
Xwith GNU Emacs 19.34, 20.3 and later or with XEmacs 19.9 and later.
XPSGML contains a simple SGML parser and can work with any DTD.
XFunctions provided includes menus and commands for inserting tags with
Xonly the contextually valid tags, identification of structural errors,
Xediting of attribute values in a separate window with information about
Xtypes and defaults, and structure based editing.
X
X  PSGML is installed the following directory tree:
X	${PREFIX}/share/emacs/site-lisp/psgml/
X
XTo use psgml, put the following setup into your ~/.emacs:
X
X	(require 'psml-setup)
X
X--- Porting by shige <shige@kuis.kyoto-u.ac.jp>
END-of-psgml-emacs/pkg/DESCR
echo x - psgml-emacs/pkg/PLIST
sed 's/^X//' >psgml-emacs/pkg/PLIST << 'END-of-psgml-emacs/pkg/PLIST'
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-api.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-api.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-charent.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-charent.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-dtd.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-dtd.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-edit.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-edit.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-info.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-info.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-lucid.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-other.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-other.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-parse.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml-parse.elc
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml.el
X%%EMACS_LIBDIR%%/site-lisp/psgml/psgml.elc
X@dirrm %%EMACS_LIBDIR%%/site-lisp/psgml
X@unexec install-info --delete %D/info/psgml.info %D/info/dir
X@unexec install-info --delete %D/info/psgml-api.info %D/info/dir
Xinfo/psgml.info
Xinfo/psgml-api.info
X@exec [ -f %D/info/dir ] || sed -ne '1,/Menu:/p' /usr/share/info/dir > %D/info/dir
X@exec install-info %D/info/psgml.info %D/info/dir
X@exec install-info %D/info/psgml-api.info %D/info/dir
END-of-psgml-emacs/pkg/PLIST
echo c - psgml-emacs/patches
mkdir -p psgml-emacs/patches > /dev/null 2>&1
echo x - psgml-emacs/patches/patch-aa
sed 's/^X//' >psgml-emacs/patches/patch-aa << 'END-of-psgml-emacs/patches/patch-aa'
X--- configure.in.orig	Mon Nov 16 06:45:07 1998
X+++ configure.in	Sat Jan 23 19:20:48 1999
X@@ -3,7 +3,7 @@
X dnl 	autoconf
X dnl in the directory containing this script.
X AC_PREREQ(2.9)dnl
X-AC_INIT(psgml.el)
X+AC_INIT(psgml.el.in)
X 
X PACKAGE=psgml
X VERSION=1.1.6
X@@ -56,6 +56,6 @@
X ke_PATH_LISPDIR
X 
X AC_SUBST(EMACS)
X-AC_OUTPUT(Makefile)
X+AC_OUTPUT(Makefile psgml.el psgml.texi)
X 
X dnl configure.in ends here
END-of-psgml-emacs/patches/patch-aa
echo x - psgml-emacs/patches/patch-ab
sed 's/^X//' >psgml-emacs/patches/patch-ab << 'END-of-psgml-emacs/patches/patch-ab'
X--- configure.orig	Sat Jan 23 19:18:47 1999
X+++ configure	Sat Jan 23 19:20:50 1999
X@@ -455,7 +455,7 @@
X 
X # A filename unique to this package, relative to the directory that
X # configure is in, which we can look for to find out if srcdir is correct.
X-ac_unique_file=psgml.el
X+ac_unique_file=psgml.el.in
X 
X # Find the source files, if location was not specified.
X if test -z "$srcdir"; then
X@@ -861,7 +861,7 @@
X ac_given_srcdir=$srcdir
X ac_given_INSTALL="$INSTALL"
X 
X-trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
X+trap 'rm -fr `echo "Makefile psgml.el psgml.texi" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
X EOF
X cat >> $CONFIG_STATUS <<EOF
X 
X@@ -940,7 +940,7 @@
X 
X cat >> $CONFIG_STATUS <<EOF
X 
X-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
X+CONFIG_FILES=\${CONFIG_FILES-"Makefile psgml.el psgml.texi"}
X EOF
X cat >> $CONFIG_STATUS <<\EOF
X for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
END-of-psgml-emacs/patches/patch-ab
echo x - psgml-emacs/patches/patch-ac
sed 's/^X//' >psgml-emacs/patches/patch-ac << 'END-of-psgml-emacs/patches/patch-ac'
X--- psgml.el.orig	Mon Nov 16 06:45:03 1998
X+++ psgml.el	Sat Jan 23 19:14:44 1999
X@@ -335,7 +335,7 @@
X (put 'sgml-system-path 'sgml-type 'file-list)
X 
X (defvar sgml-public-map (or (sgml-parse-colon-path (getenv "SGML_PATH"))
X-			    '("%S" "/usr/local/lib/sgml/%o/%c/%d" ))
X+			    '("%S" "@prefix@/share/sgml/%o/%c/%d" ))
X   "*Mapping from public identifiers to file names.
X This is a list of possible file names.  To find the file for a public
X identifier the elements of the list are used one at the time from the
X@@ -361,13 +361,13 @@
X (defvar sgml-catalog-files (or (delete nil
X 				       (sgml-parse-colon-path
X 					(getenv "SGML_CATALOG_FILES")))
X-			       '("catalog" "/usr/local/lib/sgml/catalog"))
X+			       '("catalog" "@prefix@/share/sgml/catalog"))
X   "*List of catalog entry files.
X The files are in the format defined in the SGML Open Draft Technical
X Resolution on Entity Management.")
X (put 'sgml-catalog-files 'sgml-type 'file-list)
X 
X-(defvar sgml-ecat-files '("ECAT" "~/sgml/ECAT" "/usr/local/lib/sgml/ECAT")
X+(defvar sgml-ecat-files '("ECAT" "~/sgml/ECAT" "@prefix@/share/sgml/ECAT")
X   "*List of catalog files for PSGML.")
X (put 'sgml-ecat-files 'sgml-type 'file-list)
X 
END-of-psgml-emacs/patches/patch-ac
echo x - psgml-emacs/patches/patch-ad
sed 's/^X//' >psgml-emacs/patches/patch-ad << 'END-of-psgml-emacs/patches/patch-ad'
X--- Makefile.in.orig	Sat Jan 23 20:58:07 1999
X+++ Makefile.in	Sat Jan 23 20:58:55 1999
X@@ -81,8 +81,8 @@
X 	$(INSTALL_DATA) psgml-api.info $(infodir)
X 	if $(SHELL) -c 'install-info --version' \
X 		>/dev/null 2>&1; then \
X-		install-info --info-dir=$(infodir) psgml.info; \
X-		install-info --info-dir=$(infodir) psgml-api.info; \
X+		install-info $(infodir)/psgml.info $(infodir)/dir; \
X+		install-info $(infodir)/psgml-api.info $(infodir)/dir; \
X 	else true; fi
X 
X 
END-of-psgml-emacs/patches/patch-ad
echo x - psgml-emacs/patches/patch-ae
sed 's/^X//' >psgml-emacs/patches/patch-ae << 'END-of-psgml-emacs/patches/patch-ae'
X--- psgml.texi.orig	Mon Nov 16 06:45:07 1998
X+++ psgml.texi	Sat Jan 23 21:10:21 1999
X@@ -10,11 +10,10 @@
X @c $Id: psgml.texi,v 2.2 1998/10/31 21:18:29 lenst Exp $
X 
X @ifinfo
X-@format
X-START-INFO-DIR-ENTRY
X+@dircategory The Emacs editor and associated tools
X+@direntry
X * PSGML: (psgml).          PSGML, a major mode for SGML documents.
X-END-INFO-DIR-ENTRY
X-@end format
X+@end direntry
X @end ifinfo
X 
X @ifinfo
X@@ -401,10 +400,10 @@
X @code{SGML_PATH}.
X 
X Given the public identifier above and the file name template 
X-@samp{/usr/local/lib/sgml/%o/%c/%d}, the resulting file name is
X+@samp{@prefix@/share/sgml/%o/%c/%d}, the resulting file name is
X 
X @example
X-/usr/local/lib/sgml/ISO_8879:1986/entities/Added_Latin_1
X+@prefix@/share/sgml/ISO_8879:1986/entities/Added_Latin_1
X @end example
X 
X Note: blanks are transliterated to @samp{_} (and also @samp{/} to
X@@ -420,7 +419,7 @@
X is undefined the default is
X 
X @lisp
X-("CATALOG" "/usr/local/lib/sgml/CATALOG")
X+("catalog" "@prefix@/share/sgml/catalog")
X @end lisp
X @end defopt
X 
X@@ -448,7 +447,7 @@
X environment variable is undefined the default is
X 
X @lisp
X-("%S" "/usr/local/lib/sgml/%o/%c/%d")
X+("%S" "@prefix@/share/sgml/%o/%c/%d")
X @end lisp
X @c Mapping from public identifiers to file names.
X @end defopt
END-of-psgml-emacs/patches/patch-ae
echo x - psgml-emacs/patches/patch-af
sed 's/^X//' >psgml-emacs/patches/patch-af << 'END-of-psgml-emacs/patches/patch-af'
X--- psgml-api.texi.orig	Mon Nov 16 06:45:06 1998
X+++ psgml-api.texi	Sat Jan 23 21:11:18 1999
X@@ -7,11 +7,10 @@
X @c $Id: psgml-api.texi,v 2.1 1998/06/30 19:55:58 lenst Exp $
X 
X @ifinfo
X-@format
X-START-INFO-DIR-ENTRY
X+@dircategory The Emacs editor and associated tools
X+@direntry
X * PSGML-API: (psgml-api).  PSGML, the API documentation.
X-END-INFO-DIR-ENTRY
X-@end format
X+@end direntry
X @end ifinfo
X 
X @ifinfo
END-of-psgml-emacs/patches/patch-af
echo x - psgml-emacs/patches/patch-ag
sed 's/^X//' >psgml-emacs/patches/patch-ag << 'END-of-psgml-emacs/patches/patch-ag'
X--- psgml-parse.el.orig	Mon Nov 16 06:45:04 1998
X+++ psgml-parse.el	Sat Jan 23 20:28:15 1999
X@@ -1217,6 +1217,11 @@
X     (sgml-check-dtd-subset)
X     (sgml-pop-entity)
X     (erase-buffer)
X+    ;; For Mule
X+    (if (string-match "Emacs 20\." (emacs-version))
X+	(set-buffer-file-coding-system 'binary)
X+      (if (boundp 'MULE)
X+	  (set-file-coding-system *noconv*)))
X     (sgml-write-dtd sgml-dtd-info to-file)
X     t))
X 
X@@ -1244,6 +1249,10 @@
X   "Merge the binary coded dtd in the current buffer with the current dtd.
X The current dtd is the variable sgml-dtd-info.  Return t if mereged
X was successfull or nil if failed."
X+  (if (string-match "Emacs 20\." (emacs-version))
X+      (set-buffer-file-coding-system 'binary)
X+    (if (boundp 'MULE)
X+	(set-file-coding-system *noconv*)))
X   (goto-char (point-min))
X   (sgml-read-sexp)			; skip filev
X   (let ((dependencies (sgml-read-sexp))
X@@ -2461,7 +2470,12 @@
X     (set-buffer sgml-scratch-buffer)
X     ;; For MULE to not misinterpret binary data set the mc-flag
X     ;; (reported by Jeffrey Friedl <jfriedl@nff.ncl.omron.co.jp>)
X-    (set 'mc-flag nil)			
X+    (set 'mc-flag nil)
X+    ;; For MULE/Emacs 20 to not misinterpret binary data
X+    (if (string-match "Emacs 20\." (emacs-version))
X+	(set-buffer-file-coding-system 'binary)
X+       (if (boundp 'MULE)
X+	   (set-file-coding-system *noconv*)))
X     (when (eq sgml-scratch-buffer (default-value 'sgml-scratch-buffer))
X       (make-local-variable 'sgml-scratch-buffer)
X       (setq sgml-scratch-buffer nil))
END-of-psgml-emacs/patches/patch-ag
echo c - psgml-emacs/scripts
mkdir -p psgml-emacs/scripts > /dev/null 2>&1
echo x - psgml-emacs/scripts/configure
sed 's/^X//' >psgml-emacs/scripts/configure << 'END-of-psgml-emacs/scripts/configure'
X#!/bin/sh
X
XTARGETS=${INFILES}
X
Xfor i in ${TARGETS}
Xdo
X	cat ${WRKDIR}/${i}.in | /usr/bin/sed \
X		-e "s;@@PREFIX@@;${PREFIX};g" \
X		-e "s;@@EMACS_LIBDIR@@;${EMACS_LIBDIR};g" \
X		-e "s;@@EMACS_VER@@;${EMACS_VER};g" \
X	> ${WRKDIR}/${i}
Xdone
END-of-psgml-emacs/scripts/configure
echo x - psgml-emacs/Makefile
sed 's/^X//' >psgml-emacs/Makefile << 'END-of-psgml-emacs/Makefile'
X# New ports collection makefile for:	psgml for emacs
X# Version required:	1.1.6
X# Date created:		23 January 1999
X# Whom:			shige
X#
X# $Id$
X#
X
XDISTNAME=	psgml-1.1.6
XCATEGORIES=	editors elisp
XMASTER_SITES=	ftp://ftp.lysator.liu.se/pub/sgml/ALPHA/
X
XMAINTAINER?=	shige@kuis.kyoto-u.ac.jp
X
X# distfile version
XPSGML_VER=	1.1.6
XPSGML_SETUPEL=  psgml-setup.el
XCATALOG=	${PREFIX}/share/sgml/catalog
XINFILES=	${PSGML_SETUPEL}
X
X# This is a master port.
XPORTCLASS?=	master
X
X.if (${PORTCLASS} == "master")
XEMACS_NAME=	emacs
XEMACS_PORT=	emacs
XEMACS_VER=	19.34
XEMACS_LIBDIR=	share/${EMACS_NAME}
XREQUIRE_SETUPEL=  YES
X.endif
X
X# if RUN_DEPENDS emacs port name has the suffix `-common'
X.if !defined(HAVE_COMMON_PORT)
XHAVE_COMMON_PORT=	NO
X.endif
X# if RUN_DEPENDS emacs needs setup elisp
X.if !defined(REQUIRE_SETUPEL)
XREQUIRE_SETUPEL=	NO
X.endif
X
X#
X# emacs ports setup
X#
X.if defined(EMACS_PORT)
XPKGNAME=	psgml-${EMACS_PORT}-${PSGML_VER}
XEMACS_CMD=	${PREFIX}/bin/${EMACS_NAME}-${EMACS_VER}
XBUILD_DEPENDS=	${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
X.if defined(HAVE_COMMON_PORT) && (${HAVE_COMMON_PORT} == "YES")
XRUN_DEPENDS=	${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}-common
X.else
XRUN_DEPENDS=	${EMACS_CMD}:${PORTSDIR}/editors/${EMACS_PORT}
X.endif
XCONFIGURE_ENV=	EMACS=${EMACS_CMD}
XMAKE_FLAGS=	EMACS=${EMACS_CMD}
XSCRIPTS_ENV=	INFILES=${INFILES} \
X		EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER}
XPLIST_SUB=	EMACS_LIBDIR=${EMACS_LIBDIR} EMACS_VER=${EMACS_VER}
X.else
X.BEGIN:
X	@${ECHO} "Error: Bad port."
X	@${ECHO} "You must define EMACS_NAME, EMACS_PORT, EMACS_VER, EMACS_LIBDIR."
X	@${FALSE}
X.endif
X
X#
X# main configurations
X#
XGNU_CONFIGURE=	yes
XCONFIGURE_ARGS=	--with-emacs="${EMACS_CMD}"
XRUN_DEPENDS+=	${CATALOG}:${PORTSDIR}/textproc/catalogs
X
Xpre-configure:
X	(cd ${WRKSRC} ; \
X	  for i in psgml.el psgml.texi ; do \
X	      ${RM} -f $${i}.in ; \
X	      ${MV} $${i} $${i}.in ; \
X	  done)
X.if (${REQUIRE_SETUPEL} == "YES")
X	${CP} ${FILESDIR}/${PSGML_SETUPEL}.in ${WRKDIR}
X.endif
X
Xpre-build:
X	@${RM} -f ${WRKSRC}/psgml.info ${WRKSRC}/psgml-api.info
X
Xpost-install:
X.if (${REQUIRE_SETUPEL} == "YES")
X	@${INSTALL_DATA} ${WRKDIR}/${PSGML_SETUPEL} \
X			${PREFIX}/${EMACS_LIBDIR}/site-lisp
X.endif
X
X.include <bsd.port.mk>
END-of-psgml-emacs/Makefile
exit

>Release-Note:
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990123214255X.shige>