--- sepia-0.992.orig/Makefile.old +++ sepia-0.992/Makefile.old @@ -0,0 +1,847 @@ +# This Makefile is for the Sepia extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.57_05 (Revision: 65705) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: (q[INSTALLDIRS=vendor]) +# + +# MakeMaker Parameters: + +# ABSTRACT => q[Simple Emacs-Perl InterAction] +# AUTHOR => [q[Sean O'Rourke ]] +# BUILD_REQUIRES => { } +# EXE_FILES => [q[sepl]] +# NAME => q[Sepia] +# PREREQ_PM => { Scalar::Util=>q[0], Data::Dumper=>q[0] } +# VERSION_FROM => q[lib/Sepia.pm] +# clean => { FILES=>q[*.elc] } + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -O2 -g -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 2.6.32-5-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = Sepia +NAME_SYM = Sepia +VERSION = 0.992 +VERSION_MACRO = VERSION +VERSION_SYM = 0_992 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.992 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = blib/arch +INST_SCRIPT = blib/script +INST_BIN = blib/bin +INST_LIB = blib/lib +INST_MAN1DIR = blib/man1 +INST_MAN3DIR = blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = vendor +DESTDIR = +PREFIX = /usr +PERLPREFIX = $(PREFIX) +SITEPREFIX = $(PREFIX)/local +VENDORPREFIX = $(PREFIX) +INSTALLPRIVLIB = $(PERLPREFIX)/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = $(SITEPREFIX)/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = $(VENDORPREFIX)/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = $(PERLPREFIX)/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = $(SITEPREFIX)/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = $(VENDORPREFIX)/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = $(PERLPREFIX)/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = $(SITEPREFIX)/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = $(VENDORPREFIX)/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = $(PERLPREFIX)/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = $(SITEPREFIX)/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = $(VENDORPREFIX)/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = $(PERLPREFIX)/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = $(SITEPREFIX)/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = $(VENDORPREFIX)/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = $(PERLPREFIX)/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = $(SITEPREFIX)/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = $(VENDORPREFIX)/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/share/perl/5.14/ExtUtils/MakeMaker.pm +MM_VERSION = 6.57_05 +MM_REVISION = 65705 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = Sepia +BASEEXT = Sepia +PARENT_NAME = +DLBASE = $(BASEEXT) +VERSION_FROM = lib/Sepia.pm +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = sepl +MAN3PODS = lib/Sepia.pm \ + lib/Sepia/Xref.pm + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB) +INST_ARCHLIBDIR = $(INST_ARCHLIB) + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = +INST_DYNAMIC = +INST_BOOT = + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = lib/Sepia.pm \ + lib/Sepia/CPAN.pm \ + lib/Sepia/Debug.pm \ + lib/Sepia/ReadLine.pm \ + lib/Sepia/Xref.pm + +PM_TO_BLIB = lib/Sepia/CPAN.pm \ + blib/lib/Sepia/CPAN.pm \ + lib/Sepia/ReadLine.pm \ + blib/lib/Sepia/ReadLine.pm \ + lib/Sepia/Xref.pm \ + blib/lib/Sepia/Xref.pm \ + lib/Sepia.pm \ + blib/lib/Sepia.pm \ + lib/Sepia/Debug.pm \ + blib/lib/Sepia/Debug.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.57_05 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section: +TAR = tar +TARFLAGS = cvf +ZIP = zip +ZIPFLAGS = -r +COMPRESS = gzip --best +SUFFIX = .gz +SHAR = shar +PREOP = $(NOECHO) $(NOOP) +POSTOP = $(NOECHO) $(NOOP) +TO_UNIX = $(NOECHO) $(NOOP) +CI = ci -u +RCS_LABEL = rcs -Nv$(VERSION_SYM): -q +DIST_CP = best +DIST_DEFAULT = tardist +DISTNAME = Sepia +DISTVNAME = Sepia-0.992 + + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + + +# --- MakeMaker const_loadlibs section: + + +# --- MakeMaker const_cccmd section: + + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + PREFIX="$(PREFIX)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + + +# --- MakeMaker xs_c section: + + +# --- MakeMaker xs_o section: + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(INST_DYNAMIC) $(INST_BOOT) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_bs section: + +BOOTSTRAP = + + +# --- MakeMaker dynamic_lib section: + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all \ + sepl \ + lib/Sepia/Xref.pm \ + lib/Sepia.pm + $(NOECHO) $(POD2MAN) --section=$(MAN1EXT) --perm_rw=$(PERM_RW) \ + sepl $(INST_MAN1DIR)/sepl.$(MAN1EXT) + $(NOECHO) $(POD2MAN) --section=$(MAN3EXT) --perm_rw=$(PERM_RW) \ + lib/Sepia/Xref.pm $(INST_MAN3DIR)/Sepia::Xref.$(MAN3EXT) \ + lib/Sepia.pm $(INST_MAN3DIR)/Sepia.$(MAN3EXT) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + +EXE_FILES = sepl + +pure_all :: $(INST_SCRIPT)/sepl + $(NOECHO) $(NOOP) + +realclean :: + $(RM_F) \ + $(INST_SCRIPT)/sepl + +$(INST_SCRIPT)/sepl : sepl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists + $(NOECHO) $(RM_F) $(INST_SCRIPT)/sepl + $(CP) sepl $(INST_SCRIPT)/sepl + $(FIXIN) $(INST_SCRIPT)/sepl + -$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/sepl + + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + *$(LIB_EXT) core \ + core.[0-9] $(INST_ARCHAUTODIR)/extralibs.all \ + core.[0-9][0-9] $(BASEEXT).bso \ + pm_to_blib.ts core.[0-9][0-9][0-9][0-9] \ + MYMETA.yml $(BASEEXT).x \ + $(BOOTSTRAP) perl$(EXE_EXT) \ + tmon.out *$(OBJ_EXT) \ + pm_to_blib $(INST_ARCHAUTODIR)/extralibs.ld \ + blibdirs.ts core.[0-9][0-9][0-9][0-9][0-9] \ + *perl.core core.*perl.*.? \ + $(MAKE_APERL_FILE) perl \ + $(BASEEXT).def core.[0-9][0-9][0-9] \ + mon.out lib$(BASEEXT).def \ + perlmain.c perl.exe \ + so_locations $(BASEEXT).exp + - $(RM_RF) \ + *.elc blib + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(MAKEFILE_OLD) $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '--- #YAML:1.0' > META_new.yml + $(NOECHO) $(ECHO) 'name: Sepia' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.992' >> META_new.yml + $(NOECHO) $(ECHO) 'abstract: Simple Emacs-Perl InterAction' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - Sean O'\''Rourke ' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'distribution_type: module' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' Data::Dumper: 0' >> META_new.yml + $(NOECHO) $(ECHO) ' Scalar::Util: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: ExtUtils::MakeMaker version 6.57_05' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section: +distclean :: realclean distcheck + $(NOECHO) $(NOOP) + +distcheck : + $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck + +skipcheck : + $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck + +manifest : + $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest + +veryclean : realclean + $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old + + + +# --- MakeMaker dist_core section: + +dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) + $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ + -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- + +tardist : $(DISTVNAME).tar$(SUFFIX) + $(NOECHO) $(NOOP) + +uutardist : $(DISTVNAME).tar$(SUFFIX) + uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu + +$(DISTVNAME).tar$(SUFFIX) : distdir + $(PREOP) + $(TO_UNIX) + $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(COMPRESS) $(DISTVNAME).tar + $(POSTOP) + +zipdist : $(DISTVNAME).zip + $(NOECHO) $(NOOP) + +$(DISTVNAME).zip : distdir + $(PREOP) + $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(POSTOP) + +shdist : distdir + $(PREOP) + $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar + $(RM_RF) $(DISTVNAME) + $(POSTOP) + + +# --- MakeMaker distdir section: +create_distdir : + $(RM_RF) $(DISTVNAME) + $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ + -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" + +distdir : create_distdir distmeta + $(NOECHO) $(NOOP) + + + +# --- MakeMaker dist_test section: +disttest : distdir + cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL "INSTALLDIRS=vendor" + cd $(DISTVNAME) && $(MAKE) $(PASTHRU) + cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) + + + +# --- MakeMaker dist_ci section: + +ci : + $(PERLRUN) "-MExtUtils::Manifest=maniread" \ + -e "@all = keys %{ maniread() };" \ + -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ + -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" + + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{META.yml} => q{Module meta-data (added by MakeMaker)}}) } ' \ + -e ' or print "Could not add META.yml to MANIFEST: $${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) } ' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section: + +install :: pure_install doc_install + $(NOECHO) $(NOOP) + +install_perl :: pure_perl_install doc_perl_install + $(NOECHO) $(NOOP) + +install_site :: pure_site_install doc_site_install + $(NOECHO) $(NOOP) + +install_vendor :: pure_vendor_install doc_vendor_install + $(NOECHO) $(NOOP) + +pure_install :: pure_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +doc_install :: doc_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +pure__install : pure_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +doc__install : doc_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +pure_perl_install :: all + $(NOECHO) umask 022; $(MOD_INSTALL) \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(SITEARCHEXP)/auto/$(FULLEXT) + + +pure_site_install :: all + $(NOECHO) umask 02; $(MOD_INSTALL) \ + read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLSITELIB) \ + $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ + $(INST_BIN) $(DESTINSTALLSITEBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(PERL_ARCHLIB)/auto/$(FULLEXT) + +pure_vendor_install :: all + $(NOECHO) umask 022; $(MOD_INSTALL) \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ + $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + +doc_perl_install :: all + +doc_site_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLSITEARCH)/perllocal.pod + -$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLSITEARCH) + -$(NOECHO) umask 02; $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLSITELIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLSITEARCH)/perllocal.pod + +doc_vendor_install :: all + + +uninstall :: uninstall_from_$(INSTALLDIRS)dirs + $(NOECHO) $(NOOP) + +uninstall_from_perldirs :: + +uninstall_from_sitedirs :: + $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist + +uninstall_from_vendordirs :: + + + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: +# We take a very conservative approach here, but it's worth it. +# We move Makefile to Makefile.old here to avoid gnu make looping. +$(FIRST_MAKEFILE) : Makefile.PL $(CONFIGDEP) + $(NOECHO) $(ECHO) "Makefile out-of-date with respect to $?" + $(NOECHO) $(ECHO) "Cleaning current config before rebuilding Makefile..." + -$(NOECHO) $(RM_F) $(MAKEFILE_OLD) + -$(NOECHO) $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) + - $(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) clean $(DEV_NULL) + $(PERLRUN) Makefile.PL "INSTALLDIRS=vendor" + $(NOECHO) $(ECHO) "==> Your Makefile has been rebuilt. <==" + $(NOECHO) $(ECHO) "==> Please rerun the $(MAKE) command. <==" + $(FALSE) + + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = perl +FULLPERL = /usr/bin/perl + +$(MAP_TARGET) :: static $(MAKE_APERL_FILE) + $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ + +$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib + $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) + $(NOECHO) $(PERLRUNINST) \ + Makefile.PL DIR= \ + MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ + MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= \ + INSTALLDIRS=vendor + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = t/*.t +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + +test_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) "-MExtUtils::Command::MM" "-e" "test_harness($(TEST_VERBOSE), '$(INST_LIB)', '$(INST_ARCHLIB)')" $(TEST_FILES) + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: test_dynamic +testdb_static :: testdb_dynamic + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' Simple Emacs-Perl InterAction' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' Sean O'\''Rourke <seano@cpan.org>' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + lib/Sepia/CPAN.pm blib/lib/Sepia/CPAN.pm \ + lib/Sepia/ReadLine.pm blib/lib/Sepia/ReadLine.pm \ + lib/Sepia/Xref.pm blib/lib/Sepia/Xref.pm \ + lib/Sepia.pm blib/lib/Sepia.pm \ + lib/Sepia/Debug.pm blib/lib/Sepia/Debug.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: +all :: Sepia.html sepia.info + +Sepia.html : sepia.texi + makeinfo --no-split --no-headers --html sepia.texi -o Sepia.html + +sepia.info : sepia.texi + makeinfo --no-split -o sepia.info sepia.texi + +install :: + install -d -m755 $(DESTDIR)/usr/share/info + install -m644 sepia.info $(DESTDIR)/usr/share/info + install-info $(DESTDIR)/usr/share/info/sepia.info $(DESTDIR)/usr/share/info/dir + + install -d -m755 $(DESTDIR)/usr/share/emacs/site-lisp/sepia + install -m644 *.el $(DESTDIR)/usr/share/emacs/site-lisp/sepia + + +# End. --- sepia-0.992.orig/Makefile.PL +++ sepia-0.992/Makefile.PL @@ -48,11 +48,7 @@ sub prompt_for_emacs { # try to compile and install Elisp files, but don't die if we can't. - my ($sysemacs) = grep { defined && -x } - $ENV{EMACS}, glob '/usr/bin{/local,}/emacs'; - $sysemacs ||= q{emacs}; - - my $emacs = prompt("Where is your emacs? ", $sysemacs); + my $emacs = prompt("Where is your emacs? "); # Make sure emacs is a valid string/program path... return undef unless $emacs; --- sepia-0.992.orig/snippet.el +++ sepia-0.992/snippet.el @@ -0,0 +1,633 @@ +;;; snippet.el -- insert snippets of text into a buffer + +;; Copyright (C) 2005 Pete Kazmier + +;; Version: 0.2 +;; Author: Pete Kazmier + +;; This file is not part of GNU Emacs, but it is distributed under +;; the same terms as GNU Emacs. + +;; GNU Emacs 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; either version 2, or (at your +;; option) any later version. + +;; GNU Emacs 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 GNU Emacs; see the file COPYING. If not, write to the +;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, +;; Boston, MA 02111-1307, USA. + +;;; Description: + +;; A quick stab at providing a simple template facility like the one +;; present in TextMate (an OSX editor). The general idea is that a +;; snippet of text (called a template) is inserted into a buffer +;; (perhaps triggered by an abbrev), and while the point is within the +;; snippet, a special keymap is active to permit the user to cycle the +;; point to any of the defined fields (placeholders) within the +;; template via `snippet-next-field' and `snippet-prev-field'. + +;; For example, the following template might be a useful while editing +;; HTML: + +;; $$ + +;; This template might be useful for python developers. In this +;; example, reasonable defaults have been supplied: + +;; for $${element} in $${sequence}: +;; match = $${regexp}.search($${element}) + +;; When a template is inserted into a buffer (could be triggered by an +;; abbrev expansion, or simply bound to some key), point is moved to +;; the first field denoted by the "$$" characters (configurable via +;; `snippet-field-identifier'). The optional default for a field is +;; specified by the "{default}" (the delimiters are configurable via +;; `snippet-field-default-beg-char' and `snippet-field-defaul-end-char'. + +;; If present, the default will be inserted and highlighted. The user +;; then has the option of accepting the default by simply tabbing over +;; to the next field (any other key bound to `snippet-next-field' in +;; `snippet-map' can be used). Alternatively, the user can start +;; typing their own value for the field which will cause the default +;; to be immediately replaced with the user's own input. If two or +;; more fields have the same default value, they are linked together +;; (changing one will change the other dynamically as you type). + +;; `snippet-next-field' (bound to by default) moves the point to +;; the next field. `snippet-prev-field' (bound to by default) +;; moves the point to the previous field. When the snippet has been +;; completed, the user simply tabs past the last field which causes +;; the snippet to revert to plain text in a buffer. The idea is that +;; snippets should get out of a user's way as soon as they have been +;; filled and completed. + +;; After tabbing past all of the fields, point is moved to the end of +;; the snippet, unless the user has specified a place within the +;; template with the `snippet-exit-identifier' ("$." by default). For +;; example: + +;; if ($${test} { +;; $. +;; } + +;; Indentation can be controlled on a per line basis by including the +;; `snippet-indent' string within the template. Most often one would +;; include this at the beginning of a line; however, there are times +;; when indentation is better performed in other parts of the line. +;; The following shows how to use the functionality: + +;; if ($${test}) { +;; $>this line would be indented +;; this line will be indented after being inserted$> +;; } + +;;; Usage: + +;; Snippets are inserted with the `snippet-insert' function. This +;; function inserts the snippet into the current buffer. It expects a +;; single argument which is the template that is to be inserted. For +;; example: + +;; (snippet-insert "for $${element} in $${sequence}:") + +;; `snippet-insert' can be called interactively in which case the user +;; is prompted for the template to insert. This is hardly useful at +;; all unless you are testing the functionality of this code. + +;; Snippets are much more effective when they are bound to expansions +;; for abbreviations. When binding a snippet to an abbreviation, it +;; is important that you disable the insertion of the character that +;; triggered the expansion (typically some form of whitespace). For +;; example, this is what you should NOT do: + +;; (define-abbrev python-mode-abbrev-table ; abbrev table +;; "for" ; name +;; "" ; expansion +;; '(lambda () ; expansion hook +;; (snippet-insert +;; "for $${element} in $${sequence}:"))) + +;; The above example does not work as expected because after the +;; expansion hook is called, the snippet is inserted, and the point is +;; moved to the first field. The problem occurs because when the user +;; typed "f o r ", the "" character is inserted after the +;; snippet has been inserted. The point happens to be located at the +;; first field and thus the "" will delete any field default that +;; was present. + +;; Fortunately, this is easy to fix. According to the documentation +;; for `define-abbrev', if the hook function is a symbol whose +;; `no-self-insert' property is non-nil, then hook can control whether +;; or not the insertion of the character that triggered the abbrev +;; expansion is inserted. `insert-snippet' returns non-nil and thus +;; the proper way of defining the abbrev is as follows: + +;; (defun python-foo-expansion () +;; (snippet-insert "for $${element} in $${sequence}:")) + +;; (put 'python-foo-expansion 'no-self-insert t) + +;; (define-abbrev python-mode-abbrev-table ; abbrev table +;; "for" ; name +;; "" ; expansion +;; 'python-foo-expansion) ; expansion hook + +;; Unfortunately, this is a lot of work to define what should be a +;; simple abbrev. For convenience, this package provides a macro +;; `snippet-abbrev' that can be used with much less effort: + +;; (snippet-abbrev 'python-mode-abbrev-table ; table +;; "for" ; name +;; "for $${element} in $${sequence}:") ; template + +;; For even more convevience, when defining a lot of abbrevs in a +;; particular abbrev table, the package provides another macro +;; `snippet-with-abbrev-table': + +;; (snippet-with-abbrev-table 'python-mode-abbrev-table +;; ("for" . "for $${element} in $${sequence}:") +;; ("im" . "import $$") +;; ("if" . "if $${True}:") +;; ("wh" . "while $${True}:")) + +;; Be sure that the appropriate abbrev-table is loaded before using +;; the above otherwise you'll get an error. I use the above in my +;; python-mode-hook. + +;; Finally, for those running a recent version of Emacs, you can +;; disable snippet expansion in various parts of the buffer. I use +;; this to disable the above "for" expansion while typing comments in +;; my python code. Add the following line to your python-mode hook: + +;; (add-hook 'pre-abbrev-expand-hook +;; (lambda () +;; (setq local-abbrev-table +;; (if (inside-comment-p) +;; text-mode-abbrev-table +;; python-mode-abbrev-table))) +;; nil t))) + +;;; Implementation Notes: + +;; This is my first significant chunk of elisp code. I have very +;; little experience coding with elisp; however, I have tried to +;; document the code for anyone trying to follow along. Here are some +;; brief notes on the implementation. + +;; When a snippet is inserted, the entire template of text has an +;; overlay applied. This overlay is referred to as the "bound" +;; overlay in the code. It is used to bold-face the snippet as well +;; as provide the keymap that is used while the point is located +;; within the snippet (so users can tab between fields). This overlay +;; is actually one character longer than the template. The reason is +;; to make sure that our local keymap is still in effect when a user +;; is typing in a field that happens to be at the end of the +;; template. + +;; In addition, for each field (denoted by snippet-field-identifier), +;; an overlay is created. These overlays are used to provide the +;; highlighting of the field values, the location of where the point +;; should move when tab is pressed (the start of the overlay is used +;; for this purpose), as well as the hooks to delete the default value +;; if a user starts to type their own value (the modification hooks of +;; the overlay are used for this purpose). + +;; Once the user has tabbed out of the snippet, all overlays are +;; deleted and the snippet then becomes normal text. Moving the +;; cursor back into the snippet has no affect (the snippet is not +;; activated again). The idea is that the snippet concept should get +;; out of the users way as quickly as possible. + +;;; Comparisons to Other Packages + +;; tempo.el +;; - Template definition is very lispy (although powerful). In +;; contrast, snippets are simple strings with minimal syntax. +;; - Template parameters can be prompted via minibuffer. In +;; contrast, snippets use overlays to visually cue the user for +;; parameters. +;; + Templates can be wrapped around regions of text. +;; + +;;; Known Limitations: + +;; - When one uses something like `dabbrev-expand', when the text is +;; inserted, it blows away a lot of the snippet. Not sure why yet. +;; - Using 'indent-according-to-mode' does not seem to behave well +;; with Python mode. I have no idea why, the overlays end up +;; getting shifted around incorrectly. + +;;; Code: + +(require 'cl) + +(defgroup snippet nil + "Insert a template with fields that con contain optional defaults." + :prefix "snippet-" + :group 'abbrev + :group 'convenience) + +(defcustom snippet-bound-face 'bold + "*Face used for the body of the snippet." + :type 'face + :group 'snippet) + +(defcustom snippet-field-face 'highlight + "*Face used for the fields' default values." + :type 'face + :group 'snippet) + +(defcustom snippet-field-identifier "$$" + "*String used to identify field placeholders." + :type 'string + :group 'snippet) + +(defcustom snippet-exit-identifier "$." + "*String used to identify the exit point of the snippet." + :type 'string + :group 'snippet) + +(defcustom snippet-field-default-beg-char ?{ + "*Character used to identify the start of a field's default value." + :type 'character + :group 'snippet) + +(defcustom snippet-field-default-end-char ?} + "*Character used to identify the stop of a field's default value." + :type 'character + :group 'snippet) + +(defcustom snippet-indent "$>" + "*String used to indicate that a line is to be indented." + :type 'character + :group 'snippet) + +(defcustom snippet-line-terminator "\n" + "*String used to indicate the end of line in a snippet template." + :type 'string + :group 'snippet) + +(defvar snippet-map (make-sparse-keymap) + "Keymap used while the point is located within a snippet.") + +;; Default key bindings +(define-key snippet-map (kbd "TAB") 'snippet-next-field) +(define-key snippet-map (kbd "") 'snippet-prev-field) +(define-key snippet-map (kbd "") 'snippet-prev-field) + +(defstruct snippet + "Structure containing the overlays used to display a snippet. + +The BOUND slot contains an overlay to bound the entire text of the +template. This overlay is used to provide a different face +configurable via `snippet-bound-face' as well as the keymap that +enables tabbing between fields. + +The FIELDS slot contains a list of overlays used to indicate the +position of each field. In addition, if a field has a default, the +field overlay is used to provide a different face configurable via +`snippet-field-face'. + +The EXIT-MARKER slot contains a marker where point should be placed +after the user has cycled through all available fields." + bound fields exit-marker) + +(defvar snippet nil + "Snippet in the current buffer. +There is no more than one snippet per buffer. This variable is buffer +local.") + +(make-variable-buffer-local 'snippet) + +(defun snippet-make-bound-overlay () + "Create an overlay to bound a snippet. +Add the appropriate properties for the overlay to provide: a face used +to display the snippet, the keymap to use while within the snippet, +and the modification hooks to clean up the overlay in the event it is +deleted." + (let ((bound (make-overlay (point) (point) (current-buffer) nil nil))) + (overlay-put bound 'keymap snippet-map) + (overlay-put bound 'face snippet-bound-face) + (overlay-put bound 'modification-hooks '(snippet-bound-modified)) + bound)) + +(defun snippet-make-field-overlay (&optional name) + "Create an overlay for a field in a snippet. +Add the appropriate properties for the overlay to provide: a face used +to display a field's default value, and modification hooks to remove +the default text if the user starts typing." + (let ((field (make-overlay (point) (point) (current-buffer) nil t))) + (overlay-put field 'face snippet-field-face) + (overlay-put field 'insert-in-front-hooks '(snippet-field-insert + snippet-field-update)) + (overlay-put field 'insert-behind-hooks '(snippet-field-modified + snippet-field-update)) + (overlay-put field 'modification-hooks '(snippet-field-modified + snippet-field-update)) + (overlay-put field 'name (when name (intern name))) + field)) + +(defun snippet-fields-with-name (name) + "Return a list of fields whose name property is equal to NAME." + (loop for field in (snippet-fields snippet) + when (eq name (overlay-get field 'name)) + collect field)) + +(defun snippet-bound-modified (bound after beg end &optional change) + "Ensure the overlay that bounds a snippet is cleaned up. +This modification hook is triggered when the overlay that bounds the +snippet is modified. It runs after the change has been made and +ensures that if the snippet has been deleted by the user, the +appropriate cleanup occurs." + (when (and after (> 2 (- (overlay-end bound) (overlay-start bound)))) + (snippet-cleanup))) + +(defun snippet-field-insert (field after beg end &optional change) + "Delete the default field value. +This insertion hook is triggered when a user starts to type when the +point is positioned at the beginning of a field (this occurs when the +user chooses to replace the field default). In this case, the hook +deletes the field default." + (let ((inhibit-modification-hooks t)) + (when (not after) + (delete-region (overlay-start field) (overlay-end field))))) + +(defun snippet-field-modified (field after beg end &optional change) + "Shrink the field overlay. +This modification hook is triggered when a user starts to type when +the point is positioned in the middle or at the end of a field (this +occurs when the user chooses to edit the field default). It is used +to ensure that the bound overlay always covers the entirety of all +field overlays, if not, its extends the bound overlay appropriately." + (let ((bound (snippet-bound snippet))) + (when (and after bound (> (overlay-end field) (overlay-end bound))) + (move-overlay bound (overlay-start bound) (overlay-end field))))) + +(defun snippet-field-update (field after beg end &optional change) + "Update all fields that have the same name. +This modificition hook is triggered when a user edits any field and is +responsible for updating all other fields that share a common name." + (let ((name (overlay-get field 'name)) + (value (buffer-substring (overlay-start field) (overlay-end field))) + (inhibit-modification-hooks t)) + (when (and name after) + (save-excursion + (dolist (like-field (set-difference (snippet-fields-with-name name) + (list field))) + (goto-char (overlay-start like-field)) + (delete-region (overlay-start like-field) + (overlay-end like-field)) + (insert value)))))) + +(defun snippet-exit-snippet () + "Move point to `snippet-exit-identifier' or end of bound. +If the snippet has defined `snippet-exit-identifier' in the template, +move the point to that location. Otherwise, move it to the end of the +snippet." + (goto-char (snippet-exit-marker snippet)) + (snippet-cleanup)) + +(defun snippet-next-field () + "Move point forward to the next field in the `snippet'. +If there are no more fields in the snippet, point is moved to the end +of the snippet or the location specified by `snippet-exit-identifier', +and the snippet reverts to normal text." + (interactive) + (let* ((bound (snippet-bound snippet)) + (fields (snippet-fields snippet)) + (exit (snippet-exit-marker snippet)) + (next-pos (loop for field in fields + for start = (overlay-start field) + when (< (point) start) return start))) + (if (not (null next-pos)) + (goto-char next-pos) + (goto-char exit) + (snippet-cleanup)))) + +(defun snippet-prev-field () + "Move point backward to the previous field in the `snippet'. +If there are no more fields in the snippet, point is moved to the end +of the snippet or the location specified by `snippet-exit-identifier', +and the snippet reverts to normal text." + (interactive) + (let* ((bound (snippet-bound snippet)) + (fields (snippet-fields snippet)) + (exit (snippet-exit-marker snippet)) + (prev-pos (loop for field in (reverse fields) + for start = (overlay-start field) + when (> (point) start) return start))) + (if (not (null prev-pos)) + (goto-char prev-pos) + (goto-char exit) + (snippet-cleanup)))) + +(defun snippet-cleanup () + "Delete all overlays associated with `snippet'. +This effectively reverts the snippet to normal text in the buffer." + (when snippet + (when (snippet-bound snippet) + (delete-overlay (snippet-bound snippet))) + (dolist (field (snippet-fields snippet)) + (delete-overlay field)) + (setq snippet nil))) + +(defun snippet-field-regexp () + "Return a regexp that is used to search for fields within a template." + (let ((beg (char-to-string snippet-field-default-beg-char)) + (end (char-to-string snippet-field-default-end-char))) + (concat (regexp-quote snippet-field-identifier) + "\\(" + (regexp-quote beg) + "\\([^" + (regexp-quote end) + "]+\\)" + (regexp-quote end) + "\\)?"))) + +(defun snippet-split-string (string &optional separators include-separators-p) + "Split STRING into substrings and separators at SEPARATORS. +Return a list of substrings and optional include the separators in the +list if INCLUDE-SEPARATORS-P is non-nil." + (let ((start 0) (list '())) + (while (string-match (or separators snippet-line-terminator) string start) + (when (< start (match-beginning 0)) + (push (substring string start (match-beginning 0)) list)) + (when include-separators-p + (push (substring string (match-beginning 0) (match-end 0)) list)) + (setq start (match-end 0))) + (when (< start (length string)) + (push (substring string start) list)) + (nreverse list))) + +(defun snippet-split-regexp () + "Return a regexp to split the template into component parts." + (concat (regexp-quote snippet-line-terminator) + "\\|" + (regexp-quote snippet-indent))) + +(defun snippet-insert (template) + "Insert a snippet into the current buffer at point. +TEMPLATE is a string that may optionally contain fields which are +specified by `snippet-field-identifier'. Fields may optionally also +include default values delimited by `snippet-field-default-beg-char' +and `snippet-field-default-end-char'. + +For example, the following template specifies two fields which have +the default values of \"element\" and \"sequence\": + + \"for $${element} in $${sequence}:\" + +In the next example, only one field is specified and no default has +been provided: + + \"import $$\" + +This function may be called interactively, in which case, the TEMPLATE +is prompted for. However, users do not typically invoke this function +interactively, rather it is most often called as part of an abbrev +expansion. See `snippet-abbrev' and `snippet-with-abbrev-table' for +more information." + (interactive "sSnippet template: ") + + ;; Step 1: Ensure only one snippet exists at a time + (snippet-cleanup) + + ;; Step 2: Create a new snippet and add the overlay to bound the + ;; template body. It should be noted that the bounded overlay is + ;; sized to be one character larger than the template body text. + ;; This enables our keymap to be active when a field happens to be + ;; the last item in a template. We disable abbrev mode to prevent + ;; our template from triggering another abbrev expansion (I do not + ;; know if the use of `insert' will actually trigger abbrevs). + (let ((abbrev-mode nil)) + (setq snippet (make-snippet :bound (snippet-make-bound-overlay))) + (let ((start (point)) + (count 0)) + (dolist (line (snippet-split-string template (snippet-split-regexp) t)) + (cond ((string-equal snippet-line-terminator line) + (insert "\n")) + ((string-equal snippet-indent line) + (indent-according-to-mode)) + (t + (insert line)))) + (move-overlay (snippet-bound snippet) start (1+ (point)))) + + + ;; Step 3: Insert the exit marker so we know where to move point + ;; to when user is done with snippet. If they did not specify + ;; where point should land, set the exit marker to the end of the + ;; snippet. + (goto-char (overlay-start (snippet-bound snippet))) + (while (re-search-forward (regexp-quote snippet-exit-identifier) + (overlay-end (snippet-bound snippet)) + t) + (replace-match "") + (setf (snippet-exit-marker snippet) (point-marker))) + + (unless (snippet-exit-marker snippet) + (let ((end (overlay-end (snippet-bound snippet)))) + (goto-char (if (= end (point-max)) end (1- end)))) + (setf (snippet-exit-marker snippet) (point-marker))) + + (set-marker-insertion-type (snippet-exit-marker snippet) t) + + ;; Step 4: Create field overlays for each field and insert any + ;; default values for the field. + (goto-char (overlay-start (snippet-bound snippet))) + (while (re-search-forward (snippet-field-regexp) + (overlay-end (snippet-bound snippet)) + t) + (let ((field (snippet-make-field-overlay (match-string 2))) + (start (match-beginning 0))) + (push field (snippet-fields snippet)) + (replace-match (if (match-beginning 2) "\\2" "")) + (move-overlay field start (point)))) + + ;; These are reversed so they are in order of how they appeared in + ;; the template as we index into this list when cycling field to + ;; field. + (setf (snippet-fields snippet) (reverse (snippet-fields snippet)))) + + ;; Step 5: Position the point at the first field or the end of the + ;; template body if no fields are present. We need to take into + ;; consideration the special case where the first field is at the + ;; start of the snippet (otherwise the call to snippet-next-field + ;; will go past it). + (let ((bound (snippet-bound snippet)) + (first (car (snippet-fields snippet)))) + (if (and first (= (overlay-start bound) (overlay-start first))) + (goto-char (overlay-start first)) + (goto-char (overlay-start (snippet-bound snippet))) + (snippet-next-field)))) + +(defun snippet-strip-abbrev-table-suffix (str) + "Strip a suffix of \"-abbrev-table\" if one is present." + (if (string-match "^\\(.*\\)-abbrev-table$" str) + (match-string 1 str) + str)) + +(defun snippet-make-abbrev-expansion-hook (abbrev-table abbrev-name template) + "Define a function with the `no-self-insert' property set non-nil. +The function name is composed of \"snippet-abbrev-\", the abbrev table +name, and the name of the abbrev. If the abbrev table name ends in +\"-abbrev-table\", it is stripped." + (let ((abbrev-expansion (intern + (concat "snippet-abbrev-" + (snippet-strip-abbrev-table-suffix + (symbol-name abbrev-table)) + "-" + abbrev-name)))) + (fset abbrev-expansion + `(lambda () + ,(format (concat "Abbrev expansion hook for \"%s\".\n" + "Expands to the following snippet:\n\n%s") + abbrev-name + template) + (snippet-insert ,template))) + (put abbrev-expansion 'no-self-insert t) + abbrev-expansion)) + +(defmacro snippet-abbrev (abbrev-table abbrev-name template) + "Establish an abbrev for a snippet template. +Set up an abbreviation called ABBREV-NAME in the ABBREV-TABLE (note +that ABBREV-TABLE must be quoted) that expands into a snippet using +the specified TEMPLATE string. + +This macro facilitates the creation of a function for the expansion +hook to be used in `define-abbrev'. In addition, it also sets the +`no-self-insert' property on the function to prevent `abbrev-mode' +from inserting the character that triggered the expansion (typically +whitespace) which would otherwise interfere with the first field of a +snippet." + (let ((name (gensym)) + (table (gensym))) + `(let ((,name ,abbrev-name) + (,table ,abbrev-table)) + (define-abbrev (symbol-value ,table) ,name "" + (snippet-make-abbrev-expansion-hook ,table ,name ,template))))) + +(defmacro snippet-with-abbrev-table (abbrev-table &rest snippet-alist) + "Establish a set of abbrevs for snippet templates. +Set up a series of snippet abbreviations in the ABBREV-TABLE (note +that ABBREV-TABLE must be quoted. The abbrevs are specified in +SNIPPET-ALIST. For example: + + (snippet-with-abbrev-table 'python-mode-abbrev-table + (\"for\" . \"for $${element} in $${sequence}:\") + (\"im\" . \"import $$\")) + +See also `snippet-abbrev." + (let ((table (gensym))) + `(let ((,table ,abbrev-table)) + (progn + ,@(loop for (name . template) in snippet-alist + collect (list 'snippet-abbrev table name template)))))) + +(provide 'snippet) --- sepia-0.992.orig/lib/Sepia/Xref.pm +++ sepia-0.992/lib/Sepia/Xref.pm @@ -119,6 +119,8 @@ =head2 Functions +=over 4 + =item C XXX: it turns out that rooting around trying to figure out the file --- sepia-0.992.orig/debian/watch +++ sepia-0.992/debian/watch @@ -0,0 +1,3 @@ +version=3 + +http://www.cpan.org/modules/by-module/Sepia/Sepia-(.*)\.tar\.gz --- sepia-0.992.orig/debian/compat +++ sepia-0.992/debian/compat @@ -0,0 +1 @@ +5 --- sepia-0.992.orig/debian/changelog +++ sepia-0.992/debian/changelog @@ -0,0 +1,179 @@ +sepia (0.992-3) unstable; urgency=low + + * Sepia also works with emacs24 + + -- Hilko Bengen Sun, 28 Oct 2012 20:22:38 +0100 + +sepia (0.992-2) unstable; urgency=low + + * Added build-dependency for install-info (Closes: #689701) + + -- Hilko Bengen Fri, 05 Oct 2012 12:20:08 +0200 + +sepia (0.992-1) unstable; urgency=low + + * Imported Upstream version 0.992 + * Updated dependencies, Standards-Version + * Added sepia-scratch to autoloads + * No longer remove info file in clean target + * Added symlinks to .el files in the directory containing .elc files + which should result in a link to the source file being added to the + help window provided by M-x describe-function. Thanks to Kevin Ryde + for pointing this out. Closes: #653789 + * Removed default mechanism for emacs from Makefile.PL + * Added build-arch, build-indep targets to debian/rules, as suggested by + Lintian + + -- Hilko Bengen Sat, 31 Dec 2011 15:19:48 +0100 + +sepia (0.991.05-1) unstable; urgency=low + + * New upstream version (Closes: #577515) + * Bumped Standards-Version + + -- Hilko Bengen Sat, 19 Mar 2011 18:23:08 +0100 + +sepia (0.98-3) unstable; urgency=low + + * Change emacs-w3m dependency, thanks to Kevin Ryde. Closes: #561181 + * Use debian-pkg-add-load-path-item in startup script, as demanded by + Debian Emacs policy. Also thanks to Kevin Ryde for spotting this. + Closes: #582333 + * Bumped Standards-Version, switched emacs22 and 23 dependency, thanks + to Lintian. + + -- Hilko Bengen Thu, 20 May 2010 22:57:41 +0200 + +sepia (0.98-2) unstable; urgency=low + + * Make sepia installable on emacs > 22. + * Bumped Standards-Version + - Use new info file handling + * Add ${misc:Depends} for debhelper + + -- Hilko Bengen Fri, 11 Dec 2009 11:46:58 +0100 + +sepia (0.98-1) unstable; urgency=low + + * New upstream version + * Bumped Standards-Version (no changes necessary) + + -- Hilko Bengen Mon, 18 May 2009 00:33:36 +0200 + +sepia (0.97-3) unstable; urgency=high + + * Add w3m source directory to load-path for byte-compiling, preventing + breakage on emacs upgrades that involve recompiling all Elisp code. + (Closes: #492602) + + -- Hilko Bengen Sun, 27 Jul 2008 21:34:09 +0200 + +sepia (0.97-2) unstable; urgency=high + + * Imported change from upstream's git repository that works around a + segfault in the Perl interpreter. This fixes an issue where entering + ",size" at the REPL prompt crashed the Perl interpreter. + + -- Hilko Bengen Fri, 04 Jul 2008 19:37:01 +0200 + +sepia (0.97-1) unstable; urgency=low + + * New Upstream version + * Dropped Emacs21 compatibility + * Depend on w3m-el; needed for compilation of sepia-w3m.el. + + -- Hilko Bengen Mon, 23 Jun 2008 22:44:44 +0200 + +sepia (0.96-2.1) unstable; urgency=low + + * Non-maintainer upload. + * Fix FTBFS with Perl 5.10. Closes: #468196 + * Add Build-Dependencies to prevent the build system from falling back + to using CPAN interactively during build + + -- Mark Hymers Sat, 05 Apr 2008 13:34:38 +0100 + +sepia (0.96-2) unstable; urgency=low + + * Added snippet.el (Closes: #457195) + + -- Hilko Bengen Thu, 20 Dec 2007 19:04:07 +0100 + +sepia (0.96-1) unstable; urgency=low + + * New upstream version + + -- Hilko Bengen Wed, 19 Dec 2007 15:23:24 +0100 + +sepia (0.92-2) unstable; urgency=low + + * Fixed build-dependency: s/makeinfo/texinfo/ (Closes: #433741) + + -- Hilko Bengen Tue, 24 Jul 2007 21:40:02 +0200 + +sepia (0.92-1) unstable; urgency=low + + * New upstream release + * First public release of the Debian package (Closes: #431734) + + -- Hilko Bengen Wed, 04 Jul 2007 16:59:07 +0200 + +sepia (0.76-1) unstable; urgency=low + + * New upstream release + * Made requirement on w3m-perldoc error-tolerant + * Added emacs22 dependencies + + -- Hilko Bengen Wed, 30 May 2007 16:09:38 +0200 + +sepia (0.74-2) unstable; urgency=low + + * Added w3m-el to dependencies + * Added tree-widget.el from the GNU Emacs CVS repository + + -- Hilko Bengen Tue, 29 May 2007 16:10:18 +0200 + +sepia (0.74-1) unstable; urgency=low + + * New upstream version + + -- Hilko Bengen Mon, 28 May 2007 01:09:41 +0200 + +sepia (0.73-2) unstable; urgency=low + + * Upstream fix for autocompletion (in general and for scalars in + particular) + + -- Hilko Bengen Sat, 26 May 2007 16:22:31 +0200 + +sepia (0.73-1) unstable; urgency=low + + * New upstream release + + -- Hilko Bengen Thu, 24 May 2007 22:28:14 +0200 + +sepia (0.72-2) unstable; urgency=low + + * Fix for deep recursion when trying to autocomplete empty symbol + * Change keybinding for sepia-indent-or-complete to M-TAB + + -- Hilko Bengen Thu, 17 May 2007 09:42:12 +0200 + +sepia (0.72-1) unstable; urgency=low + + * New upstream release + + -- Hilko Bengen Tue, 15 May 2007 23:07:50 +0200 + +sepia (0.70-1) unstable; urgency=low + + * New upstream release + + -- Hilko Bengen Thu, 26 Apr 2007 09:30:15 +0200 + +sepia (0.69-1) unstable; urgency=low + + * Initial (non-public) package. + + -- Hilko Bengen Tue, 24 Apr 2007 00:03:57 +0200 + --- sepia-0.992.orig/debian/copyright +++ sepia-0.992/debian/copyright @@ -0,0 +1,30 @@ +This is the debian package for the Sepia module. downloaded from CPAN + + +It was created by Hilko Bengen using dh-make-perl. + +The upstream author is: Sean O'Rourke . + + Copyright (C) 2004-2007 by Sean O'Rourke + + This library is free software; you can redistribute it and/or + modify it under the same terms as Perl itself. + +As of version 0.96, this package includes snippet.el. + +snippet.el is + + Copyright (C) 2005 Pete Kazmier + + This file is not part of GNU Emacs, but it is distributed under + the same terms as GNU Emacs. + + GNU Emacs 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; either version 2, or (at your + option) any later version. + +Perl is distributed under your choice of the GNU General Public License or +the Artistic License. On Debian GNU/Linux systems, the complete text of the +GNU General Public License can be found in `/usr/share/common-licenses/GPL' +and the Artistic Licence in `/usr/share/common-licenses/Artistic'. --- sepia-0.992.orig/debian/rules +++ sepia-0.992/debian/rules @@ -0,0 +1,91 @@ +#!/usr/bin/make -f +# This debian/rules file is provided as a template for normal perl +# packages. It was created by Marc Brockschmidt for +# the Debian Perl Group (http://pkg-perl.alioth.debian.org/) but may +# be used freely wherever it is useful. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# If set to a true value then MakeMaker's prompt function will +# always return the default without waiting for user input. +export PERL_MM_USE_DEFAULT=1 + +PACKAGE=$(shell dh_listpackages) + +ifndef PERL +PERL = /usr/bin/perl +endif + +TMP =$(CURDIR)/debian/$(PACKAGE) + +build: build-arch build-indep +build-arch: build-stamp +build-indep: build-stamp +build-stamp: + dh_testdir + + # Add commands to compile the package here + $(PERL) Makefile.PL \ + --lisp=/usr/share/emacs/site-lisp/sepia \ + --info=/usr/share/info \ + INSTALLDIRS=vendor + $(MAKE) OPTIMIZE="-Wall -O2 -g" + + makeinfo sepia.texi + + touch build-stamp + +clean: + dh_testdir + dh_testroot + + # Add commands to clean up after the build process here + [ ! -f Makefile ] || $(MAKE) realclean + + dh_clean build-stamp install-stamp + +install: build install-stamp +install-stamp: + dh_testdir + dh_testroot + dh_clean -k + + # Add commands to install the package into debian/$PACKAGE_NAME here + $(MAKE) test + $(MAKE) install DESTDIR=$(TMP) + + # As this is a architecture independent package, we are not + # supposed to install stuff to /usr/lib. MakeMaker creates + # the dirs, we delete them from the deb: + [ ! -d $(TMP)/usr/lib/perl5 ] || rmdir --ignore-fail-on-non-empty --parents $(TMP)/usr/lib/perl5 + + -rm -f $(TMP)/usr/share/info/dir + + touch install-stamp + +binary-arch: +# We have nothing to do by default. + +binary-indep: build install + dh_testdir + dh_testroot + dh_installdocs README + dh_installchangelogs ChangeLog + dh_installemacsen + dh_installinfo sepia.info + dh_link + dh_strip + dh_compress + dh_fixperms + dh_perl + dh_installdeb + dh_gencontrol + dh_md5sums + dh_builddeb + +source diff: + @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary --- sepia-0.992.orig/debian/emacsen-remove +++ sepia-0.992/debian/emacsen-remove @@ -0,0 +1,24 @@ +#!/bin/sh -e +# /usr/lib/emacsen-common/packages/remove/#PACKAGE# + +FLAVOR=$1 +PACKAGE=sepia + +case ${FLAVOR} in + emacs2[2-9]*) + echo install/${PACKAGE}: Handling remove for emacsen flavor ${FLAVOR} + ;; + *) + echo install/${PACKAGE}: Ignoring emacsen flavor ${FLAVOR} + + exit 0 + ;; +esac + +if test -x /usr/sbin/install-info-altdir; then + echo remove/${PACKAGE}: removing Info links for ${FLAVOR} + install-info-altdir --quiet --remove --dirname=${FLAVOR} /usr/info/#PACKAGE#.info.gz +fi + +echo remove/${PACKAGE}: purging byte-compiled files for ${FLAVOR} +rm -rf /usr/share/${FLAVOR}/site-lisp/${PACKAGE} --- sepia-0.992.orig/debian/control +++ sepia-0.992/debian/control @@ -0,0 +1,47 @@ +Source: sepia +Section: perl +Priority: optional +Build-Depends: debhelper (>= 5.0.0) +Build-Depends-Indep: texinfo, perl (>= 5.8.8-7), + libio-stringy-perl, + libpadwalker-perl, + libmodule-info-perl, + libscope-upper-perl, + libdevel-lexalias-perl, + libmodule-corelist-perl, + libwww-perl, + libdata-dump-perl, + libdevel-size-perl, + libbsd-resource-perl, + libtest-expect-perl, + install-info, +Maintainer: Hilko Bengen +Standards-Version: 3.9.2 + +Package: sepia +Architecture: all +Depends: ${perl:Depends}, ${misc:Depends}, + dpkg (>= 1.15.4) | install-info, + emacs24 | emacs23 | emacs22, + w3m-el (>= 1.4.5) | w3m-el-snapshot, + libio-stringy-perl, + libpadwalker-perl, + libmodule-info-perl, + libscope-upper-perl, + libdevel-lexalias-perl, + libmodule-corelist-perl, + libwww-perl, + libdata-dump-perl, + libdevel-size-perl, + libbsd-resource-perl +Recommends: perl-doc +Description: Simple Emacs-Perl InterAction + Sepia is a set of features to make Emacs a better tool for Perl + development, including: + . + * an interactive prompt (REPL) for evaluating code; + * cross-referencing to find and navigate between function and + variable definitions and uses; + * variable- and function-name completion. + * eldoc support to echo function arguments in the minibuffer + * functions to simplify POD browsing with Emacs-w3m --- sepia-0.992.orig/debian/emacsen-install +++ sepia-0.992/debian/emacsen-install @@ -0,0 +1,52 @@ +#! /bin/sh -e +# /usr/lib/emacsen-common/packages/install/#PACKAGE# + +# Written by Jim Van Zandt , borrowing heavily +# from the install scripts for gettext by Santiago Vila +# and octave by Dirk Eddelbuettel . + +FLAVOR=$1 +PACKAGE=sepia + +case ${FLAVOR} in + emacs2[2-9]*) + echo install/${PACKAGE}: Handling install for emacsen flavor ${FLAVOR} + ;; + *) + echo install/${PACKAGE}: Ignoring emacsen flavor ${FLAVOR} + + exit 0 + ;; +esac + +#FLAVORTEST=`echo $FLAVOR | cut -c-6` +#if [ ${FLAVORTEST} = xemacs ] ; then +# SITEFLAG="-no-site-file" +#else +# SITEFLAG="--no-site-file" +#fi +FLAGS="${SITEFLAG} -q -batch -l path.el -f batch-byte-compile" + +ELDIR=/usr/share/emacs/site-lisp/${PACKAGE} +ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE} + +# Install-info-altdir does not actually exist. +# Maybe somebody will write it. +if test -x /usr/sbin/install-info-altdir; then + echo install/${PACKAGE}: install Info links for ${FLAVOR} + install-info-altdir --quiet --section "" "" --dirname=${FLAVOR} /usr/info/${PACKAGE}.info.gz +fi + +install -m 755 -d ${ELCDIR} +cd ${ELDIR} +FILES=`echo *.el` +cd ${ELCDIR} +ln -sf ${ELDIR}/*.el . + +cat << EOF > path.el +(setq load-path (append '("." "/usr/share/emacs/site-lisp/w3m") load-path) byte-compile-warnings nil) +EOF +${FLAVOR} ${FLAGS} ${FILES} +rm -f path.el + +exit 0 --- sepia-0.992.orig/debian/emacsen-startup +++ sepia-0.992/debian/emacsen-startup @@ -0,0 +1,13 @@ +;; -*-emacs-lisp-*- +(let ((package-dir (concat "/usr/share/" + (symbol-name flavor) + "/site-lisp/sepia"))) + + ;; If package-dir does not exist, the sepia package must have + ;; removed but not purged, and we should skip the setup. + (when (file-directory-p package-dir) + (debian-pkg-add-load-path-item package-dir) + (autoload 'sepia-repl "sepia" + "Start the Sepia REPL." t) + (autoload 'sepia-scratch "sepia" + "Switch to the sepia scratchpad." t)))