Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Reorganise more files into subdirectories and add CPAN support via Mo…

…dule::Build
  • Loading branch information...
commit 58625800eed76e9d4a5c6d003ef0c16d5b8dbb83 1 parent 382ad5c
Adam Spiers authored
View
58 Build.PL
@@ -0,0 +1,58 @@
+use strict;
+use warnings;
+
+use Module::Build;
+
+# These are required by the test suite.
+use lib "t";
+use lib "bin";
+
+my $build = Module::Build->new(
+ module_name => 'Stow',
+ keywords => [ qw/stow symlink software package management install/ ],
+ license => 'gpl',
+
+ # Module::Build forces us to use v1.4 of the CPAN Meta Spec:
+ # https://rt.cpan.org/Ticket/Display.html?id=71502
+ # 'meta-spec' => {
+ # version => '2.0',
+ # url => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
+ # },
+ meta_add => {
+ resources => {
+ license => 'http://www.gnu.org/licenses/gpl-2.0.html' ,
+ homepage => 'https://savannah.gnu.org/projects/stow',
+
+ # Module::Build forces us to use v1.4 of the CPAN Meta Spec:
+ # https://rt.cpan.org/Ticket/Display.html?id=71502
+ # bugtracker => {
+ # web => 'http://rt.cpan.org/Public/Dist/Display.html?Name=Stow',
+ # mailto => 'mysqldiff@adamspiers.org',
+ # },
+ #bugtracker => 'http://rt.cpan.org/Public/Dist/Display.html?Name=Stow',
+
+ # Module::Build forces us to use v1.4 of the CPAN Meta Spec:
+ # https://rt.cpan.org/Ticket/Display.html?id=71502
+ # repository => {
+ # url => 'git:github.com/aspiers/stow.git',
+ # web => 'http://github.com/aspiers/stow',
+ # type => 'git',
+ # },
+ repository => 'http://github.com/aspiers/stow',
+ #repository => 'https://savannah.gnu.org/git/?group=stow',
+ },
+ },
+ requires => {
+ 'perl' => '5.006',
+ 'Carp' => 0,
+ 'File::Slurp' => 0,
+ 'IO::File' => 0,
+ },
+ script_files => [ 'bin/stow' ],
+ all_from => 'lib/Stow.pm',
+ configure_requires => {
+ 'Module::Build' => 0,
+ },
+);
+
+$build->create_build_script();
View
46 MANIFEST
@@ -0,0 +1,46 @@
+aclocal.m4
+AUTHORS
+automake/install-sh
+automake/mdate-sh
+automake/missing
+automake/stamp-vti
+bin/chkstow
+bin/chkstow.in
+bin/stow
+bin/stow.in
+Build.PL
+ChangeLog
+configure
+configure.ac
+COPYING
+doc/stow.8
+doc/stow.info
+doc/stow.texi
+doc/texinfo.tex
+doc/version.texi
+INSTALL
+lib/Stow.pm
+lib/Stow.pm.in
+lib/Stow/Util.pm
+Makefile.am
+Makefile.in
+MANIFEST This list of files
+NEWS
+README
+t/chkstow.t
+t/cleanup_invalid_links.t
+t/defer.t
+t/examples.t
+t/find_stowed_path.t
+t/foldable.t
+t/join_paths.t
+t/parent.t
+t/stow.t
+t/stow_contents.t
+t/testutil.pm
+t/unstow_contents.t
+t/unstow_contents_orig.t
+THANKS
+TODO
+META.yml
+META.json
View
78 MANIFEST.SKIP
@@ -0,0 +1,78 @@
+
+#!start included /usr/share/perl5/ExtUtils/MANIFEST.SKIP
+# Avoid version control files.
+\bRCS\b
+\bCVS\b
+\bSCCS\b
+,v$
+\B\.svn\b
+\B\.git\b
+\B\.gitignore\b
+\b_darcs\b
+\B\.cvsignore$
+
+# Avoid VMS specific MakeMaker generated files
+\bDescrip.MMS$
+\bDESCRIP.MMS$
+\bdescrip.mms$
+
+# Avoid Makemaker generated and utility files.
+\bMANIFEST\.bak
+\bMakefile$
+\bblib/
+\bMakeMaker-\d
+\bpm_to_blib\.ts$
+\bpm_to_blib$
+\bblibdirs\.ts$ # 6.18 through 6.25 generated this
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\b_build/
+\bBuild.bat$
+\bBuild.COM$
+\bBUILD.COM$
+\bbuild.com$
+
+# Avoid temp and backup files.
+~$
+\.old$
+\#$
+\b\.#
+\.bak$
+\.tmp$
+\.#
+\.rej$
+
+# Avoid OS-specific files/dirs
+# Mac OSX metadata
+\B\.DS_Store
+# Mac OSX SMB mount metadata files
+\B\._
+
+# Avoid Devel::Cover files.
+\bcover_db\b
+#!end included /usr/share/perl5/ExtUtils/MANIFEST.SKIP
+
+# Avoid configuration metadata file
+^MYMETA\.
+
+# Avoid Module::Build generated and utility files.
+\bBuild$
+\bBuild.bat$
+\b_build
+\bBuild.COM$
+\bBUILD.COM$
+\bbuild.com$
+^MANIFEST\.SKIP
+
+# Avoid archives of this distribution
+\bStow-[\d\.\_]+
+
+# Avoid autotools stuff
+^autom4te\.cache/.+$
+^config\.(log|status)$
+^doc/\.dirstamp$
+^doc/stamp-vti$
+
+# Avoid test files
+^t/(stow|target)/.+$
View
52 META.json
@@ -0,0 +1,52 @@
+{
+ "abstract" : "manage the installation of multiple software packages",
+ "author" : [
+ "unknown"
+ ],
+ "dynamic_config" : 1,
+ "generated_by" : "Module::Build version 0.38, CPAN::Meta::Converter version 2.112621",
+ "license" : [
+ "open_source"
+ ],
+ "meta-spec" : {
+ "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+ "version" : "2"
+ },
+ "name" : "Stow",
+ "prereqs" : {
+ "configure" : {
+ "requires" : {
+ "Module::Build" : 0
+ }
+ },
+ "runtime" : {
+ "requires" : {
+ "Carp" : 0,
+ "File::Slurp" : 0,
+ "IO::File" : 0,
+ "perl" : "5.006"
+ }
+ }
+ },
+ "provides" : {
+ "Stow" : {
+ "file" : "lib/Stow.pm",
+ "version" : "v2.0.2"
+ },
+ "Stow::Util" : {
+ "file" : "lib/Stow/Util.pm",
+ "version" : 0
+ }
+ },
+ "release_status" : "stable",
+ "resources" : {
+ "homepage" : "https://savannah.gnu.org/projects/stow",
+ "license" : [
+ "http://www.gnu.org/licenses/gpl-2.0.html"
+ ],
+ "repository" : {
+ "url" : "http://github.com/aspiers/stow"
+ }
+ },
+ "version" : "v2.0.2"
+}
View
31 META.yml
@@ -0,0 +1,31 @@
+---
+abstract: 'manage the installation of multiple software packages'
+author:
+ - unknown
+build_requires: {}
+configure_requires:
+ Module::Build: 0
+dynamic_config: 1
+generated_by: 'Module::Build version 0.38, CPAN::Meta::Converter version 2.112621'
+license: open_source
+meta-spec:
+ url: http://module-build.sourceforge.net/META-spec-v1.4.html
+ version: 1.4
+name: Stow
+provides:
+ Stow:
+ file: lib/Stow.pm
+ version: v2.0.2
+ Stow::Util:
+ file: lib/Stow/Util.pm
+ version: 0
+requires:
+ Carp: 0
+ File::Slurp: 0
+ IO::File: 0
+ perl: 5.006
+resources:
+ homepage: https://savannah.gnu.org/projects/stow
+ license: http://www.gnu.org/licenses/gpl-2.0.html
+ repository: http://github.com/aspiers/stow
+version: v2.0.2
View
30 Makefile.am
@@ -1,11 +1,14 @@
## Process this file with Automake to produce Makefile.in
-bin_SCRIPTS = stow chkstow
-info_TEXINFOS = stow.texi
-dist_man_MANS = stow.8
+dist_bin_SCRIPTS = bin/stow bin/chkstow
+info_TEXINFOS = doc/stow.texi
+TEXINFO_TEX = doc/texinfo.tex
+dist_man_MANS = doc/stow.8
dist_doc_DATA = README
pmdir = $(libdir)/perl5
-pm_DATA = lib/Stow.pm lib/Stow/Util.pm
+dist_pm_DATA = lib/Stow.pm
+pmstowdir = $(pmdir)/Stow
+dist_pmstow_DATA = lib/Stow/Util.pm
TESTS_ENVIRONMENT=$(PERL) -I $(top_srcdir)
TESTS = \
@@ -23,8 +26,13 @@ TESTS = \
t/chkstow.t
AUTOMAKE_OPTIONS = dist-shar
-EXTRA_DIST = $(TESTS) t/testutil.pm
-CLEANFILES = $(bin_SCRIPTS)
+CPAN_FILES = MANIFEST MANIFEST.SKIP Build.PL META.yml META.json
+EXTRA_DIST = \
+ bin/stow.in bin/chkstow.in lib/Stow.pm.in \
+ $(TESTS) t/testutil.pm \
+ $(TEXINFO_TEX) \
+ $(CPAN_FILES)
+CLEANFILES = $(bin_SCRIPTS) $(dist_pm_DATA)
# clean up files left behind by test suite
clean-local:
@@ -34,11 +42,11 @@ clean-local:
edit = sed -e 's|[@]PERL[@]|$(PERL)|g' \
-e 's|[@]VERSION[@]|$(VERSION)|g'
-stow: stow.in Makefile
+bin/stow: bin/stow.in Makefile
$(edit) < $< > $@
chmod +x $@
-chkstow: chkstow.in Makefile
+bin/chkstow: bin/chkstow.in Makefile
$(edit) < $< > $@
chmod +x $@
@@ -47,15 +55,15 @@ lib/Stow.pm: lib/Stow.pm.in
# The rules for manual.html and manual.texi are only used by
# the developer
-manual.html: manual.texi
+doc/manual.html: doc/manual.texi
-rm -f $@
texi2html -expandinfo -menu -monolithic -verbose $<
-manual.texi: stow.texi
+doc/manual.texi: doc/stow.texi
-rm -f $@
cp $< $@
MODULES = lib/Stow.pm lib/Stow/Util.pm
-test: stow chkstow $(MODULES)
+test: bin/stow bin/chkstow $(MODULES)
perl -MTest::Harness -Ilib -It -Ibin -e 'runtests(@ARGV)' t/*.t
View
0  install-sh → automake/install-sh
File renamed without changes
View
0  mdate-sh → automake/mdate-sh
File renamed without changes
View
0  missing → automake/missing
File renamed without changes
View
12 chkstow.in → bin/chkstow.in
@@ -37,11 +37,11 @@ sub usage {
print <<"EOT";
USAGE: chkstow [options]
-Options:
+Options:
-b, --badlinks Report symlinks that point to non-existant files.
-a, --aliens Report non-symlinks in the target directory.
-l, --list List packages in the target directory.
- -t DIR, --target=DIR Set the target directory to DIR (default
+ -t DIR, --target=DIR Set the target directory to DIR (default
is /usr/local)
EOT
exit(0);
@@ -51,7 +51,7 @@ sub check_stow {
#my ($Target, $Wanted) = @_;
my (%options) = (
- wanted => $Wanted,
+ wanted => $Wanted,
preprocess => \&skip_dirs,
);
@@ -81,12 +81,12 @@ sub skip_dirs {
# checking for files that do not link to anything
sub bad_links {
- -l && !-e && print "Bogus link: $File::Find::name\n";
+ -l && !-e && print "Bogus link: $File::Find::name\n";
}
# checking for files that are not owned by stow
-sub aliens {
- !-l && !-d && print "Unstowed file: $File::Find::name\n";
+sub aliens {
+ !-l && !-d && print "Unstowed file: $File::Find::name\n";
}
# just list the packages in the the target directory
View
26 stow.in → bin/stow.in
@@ -87,34 +87,34 @@ sub process_options {
'version|V', 'compat|p', 'dir|d=s', 'target|t=s',
# clean and pre-compile any regex's at parse time
- 'ignore=s' =>
+ 'ignore=s' =>
sub {
# FIXME: do we really need strip_quotes here?
my $regex = strip_quotes($_[1]);
push @{$options{'ignore'}}, qr($regex\z);
},
- 'override=s' =>
- sub {
+ 'override=s' =>
+ sub {
my $regex = strip_quotes($_[1]);
push @{$options{'override'}}, qr(\A$regex);
},
- 'defer=s' =>
- sub {
+ 'defer=s' =>
+ sub {
my $regex = strip_quotes($_[1]);
push @{$options{'defer'}}, qr(\A$regex);
},
# a little craziness so we can do different actions on the same line:
- # a -D, -S, or -R changes the action that will be performed on the
+ # a -D, -S, or -R changes the action that will be performed on the
# package arguments that follow it.
'D|delete' => sub { $action = 'unstow' },
'S|stow' => sub { $action = 'stow' },
'R|restow' => sub { $action = 'restow' },
# Handler for non-option arguments
- '<>' =>
+ '<>' =>
sub {
if ($action eq 'restow') {
push @pkgs_to_unstow, $_[0];
@@ -146,7 +146,7 @@ sub sanitize_path_options {
$options->{'dir'} =~ s/ +\z//;
}
else {
- $options->{'dir'} = exists $ENV{STOW_DIR} ? $ENV{STOW_DIR} : getcwd();
+ $options->{'dir'} = exists $ENV{STOW_DIR} ? $ENV{STOW_DIR} : getcwd();
}
if (exists $options->{'target'}) {
@@ -176,7 +176,7 @@ sub check_packages {
#===== SUBROUTINE ============================================================
-# Name : get_config_file_options()
+# Name : get_config_file_options()
# Purpose : search for default settings in any .stowrc files
# Parameters: none
# Returns : a list of default options
@@ -190,7 +190,7 @@ sub get_config_file_options {
for my $file ("$ENV{'HOME'}/.stowrc", '.stowrc') {
if (-r $file) {
warn "Loading defaults from $file\n";
- open my $FILE, '<', $file
+ open my $FILE, '<', $file
or die "Could not open $file for reading\n";
while (my $line = <$FILE>){
chomp $line;
@@ -200,13 +200,13 @@ sub get_config_file_options {
}
}
return @defaults;
-}
+}
#===== SUBROUTINE ===========================================================
# Name : usage()
# Purpose : print program usage message and exit
# Parameters: $msg => string to prepend to the usage message
-# Returns : n/a
+# Returns : n/a
# Throws : n/a
# Comments : if 'msg' is given, then exit with non-zero status
#============================================================================
@@ -255,7 +255,7 @@ sub version {
}
#===== METHOD ================================================================
-# Name : strip_quotes
+# Name : strip_quotes
# Purpose : remove matching outer quotes from the given string
# Parameters: none
# Returns : n/a
View
1  configure.ac
@@ -2,6 +2,7 @@ dnl Process this file with Autoconf to produce configure dnl
AC_INIT([stow], [2.0.2], [bug-stow@gnu.org])
AC_PREREQ([2.61])
+AC_CONFIG_AUX_DIR([automake])
AM_INIT_AUTOMAKE([-Wall -Werror])
AC_PROG_INSTALL
View
2  stow.8 → doc/stow.8
@@ -146,7 +146,7 @@ The target of a relative symlink is
computed starting from the symlink's own directory. Stow only creates
relative symlinks.
.SH OPTIONS
-The stow directory is assumed to be the value of the 'STOW_DIR' environment
+The stow directory is assumed to be the value of the 'STOW_DIR' environment
variable or if unset the current directory, and the
target directory is assumed to be the parent of the current directory
(so it is typical to execute
View
40 stow.texi → doc/stow.texi
@@ -129,7 +129,7 @@ remove files in independent packages without confusing them with other
files sharing the same file system space. For instance, it is common to
install Perl and Emacs in @file{/usr/local}. When one does so, one
winds up with the following files@footnote{As of Perl 4.036 and Emacs
-19.22.} in @file{/usr/local/man/man1}:
+19.22.} in @file{/usr/local/man/man1}:
@example
a2p.1
@@ -138,7 +138,7 @@ emacs.1
etags.1
h2ph.1
perl.1
-s2p.1
+s2p.1
@end example
@noindent
@@ -269,7 +269,7 @@ given perl regular expression. For example, using the options
@end example
@noindent
-will cause stow to ignore emacs and CVS backup files.
+will cause stow to ignore emacs and CVS backup files.
Note that the regular expression is anchored to the end of the filename,
because this is what you will want to do most of the time.
@@ -299,7 +299,7 @@ a Perl regex.
Note that the regular expression is anchored to the beginning of the path
relative to the target directory, because this is what you will want to do most
-of the time.
+of the time.
@item --override='<regex>'
This (repeatable) option forces any file matching the regular expression to be
@@ -312,7 +312,7 @@ the following options
@noindent
will permit stow to overwrite links that point to pre-existing man and info
-pages that are owned by stow and would otherwise cause a conflict.
+pages that are owned by stow and would otherwise cause a conflict.
The regular expression is anchored to the beginning of the path relative to
the target directory, because this is what you will want to do most of the time.
@@ -321,7 +321,7 @@ the target directory, because this is what you will want to do most of the time.
@itemx --no
@itemx --simulate
Do not perform any operations that modify the file system; in combination with
-@samp{-v} can be used to merely show what would happen.
+@samp{-v} can be used to merely show what would happen.
@item -v
@itemx --verbose[=@var{n}]
@@ -335,8 +335,8 @@ doing. Verbosity levels are 0, 1, 2, and 3; 0 is the default. Using
Scan the whole target tree when unstowing. By default, only directories
specified in the @dfn{installation image} are scanned during an unstow
operation. Scanning the whole tree can be prohibitive if your target tree is
-very large. This option restores the legacy behaviour; however, the
-@samp{--badlinks} option may be a better way of ensuring that your
+very large. This option restores the legacy behaviour; however, the
+@samp{--badlinks} option may be a better way of ensuring that your
installation does not have any dangling symlinks.
@item -V
@@ -377,7 +377,7 @@ The following options are useful for cleaning up your target tree:
@item -b
@itemx --badlinks
Checks target directory for bogus symbolic links. That is, links that point to
-non-existent files.
+non-existent files.
@item -a
@itemx --aliens
@@ -387,7 +387,7 @@ contain a @file{.stow} file.
@item -l
@itemx --list
-Will display the target package for every symbolic link in the stow target
+Will display the target package for every symbolic link in the stow target
directory.
The following options are deprecated:
@end table
@@ -398,9 +398,9 @@ The following options are deprecated as of Stow version 2:
@itemx --conflicts
Print any conflicts that are encountered. This option
implies @samp{-n}, and is used to search for all conflicts that might
-arise from an actual Stow operation.
+arise from an actual Stow operation.
-This option is deprecated as conflicts are now printed by default and no
+This option is deprecated as conflicts are now printed by default and no
operations will be performed if any conflicts are detected.
@end table
@@ -460,8 +460,8 @@ tree-folding symlink.
@cindex unfolding trees
The time often comes when a tree-folding symlink has to be undone
because another package uses one or more of the folded subdirectories in
-its installation image. This operation is called @dfn{splitting open} or
-@dfn{unfolding} a folded tree. It involves removing the original symlink from
+its installation image. This operation is called @dfn{splitting open} or
+@dfn{unfolding} a folded tree. It involves removing the original symlink from
the target tree, creating a true directory in its place, and then populating the
new directory with symlinks to the newly-installed package @emph{and} to
the old package that used the old symlink. For example, suppose that
@@ -561,7 +561,7 @@ un-populatable symlink.
For complex packages, scanning the stow and target trees in tandem, and
deciding whether to make directories or links, split-open or fold directories,
-can actually take a long time (a number of seconds). Moreover, an accurate
+can actually take a long time (a number of seconds). Moreover, an accurate
analysis of potential conflicts requires us to take into account all of
these operations.
@@ -585,7 +585,7 @@ stow -D emacs-21.3 -S emacs-21.4a
@end example
@noindent
-which will replace emacs-21.3 with emacs-21.4a using a single invocation.
+which will replace emacs-21.3 with emacs-21.4a using a single invocation.
This is much faster and cleaner than performing two separate invocations of
stow, because redundant folding/unfolding operations can be factored out. In
@@ -593,7 +593,7 @@ addition, all the operations are calculated and merged before being executed
@pxref{Deferred Operation}, so the amount of of time in which GNU Emacs is
unavailable is minimised.
-You can mix and match any number of actions, for example,
+You can mix and match any number of actions, for example,
@example
stow -S pkg1 pkg2 -D pkg3 pkg4 -S pkg5 -R pkg6
@@ -631,7 +631,7 @@ symlink, and thus cannot remove it).
@chapter Target Maintenance
From time to time you will need to clean up your target tree.
-Stow includes three operational modes that performs checks that
+Stow includes three operational modes that performs checks that
would generally be too expensive to performed during normal stow
execution.
@@ -1020,8 +1020,8 @@ the output from the command (preferably verbose output, obtained by
adding @samp{--verbose=3} to the Stow command line).
@end itemize
-If you are really keen, consider developing a minimal test case and creating a
-new test. See the @file{t/} for lots of examples.
+If you are really keen, consider developing a minimal test case and
+creating a new test. See the @file{t/} for lots of examples.
Before reporting a bug, please read the manual carefully, especially
@ref{Known Bugs}, to see whether you're encountering
View
88 texinfo.tex → doc/texinfo.tex
@@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2006-10-04.17}
+\def\texinfoversion{2011-11-21.13}
%
% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free
@@ -310,7 +310,7 @@
% We don't want .vr (or whatever) entries like this:
% \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}}
% "\acronym" won't work when it's read back in;
- % it needs to be
+ % it needs to be
% {\code {{\tt \backslashcurfont }acronym}
\shipout\vbox{%
% Do this early so pdf references go to the beginning of the page.
@@ -661,7 +661,7 @@
\def\?{?\spacefactor=\endofsentencespacefactor\space}
% @frenchspacing on|off says whether to put extra space after punctuation.
-%
+%
\def\onword{on}
\def\offword{off}
%
@@ -1216,7 +1216,7 @@
% that's what we do).
% double active backslashes.
-%
+%
{\catcode`\@=0 \catcode`\\=\active
@gdef@activebackslashdouble{%
@catcode`@\=@active
@@ -1227,11 +1227,11 @@
% not active characters. hyperref.dtx (which has the same problem as
% us) handles it with this amazing macro to replace tokens. I've
% tinkered with it a little for texinfo, but it's definitely from there.
-%
+%
% #1 is the tokens to replace.
% #2 is the replacement.
% #3 is the control sequence with the string.
-%
+%
\def\HyPsdSubst#1#2#3{%
\def\HyPsdReplace##1#1##2\END{%
##1%
@@ -1420,7 +1420,7 @@
% tried to figure out what each command should do in the context
% of @url. for now, just make @/ a no-op, that's the only one
% people have actually reported a problem with.
- %
+ %
\normalturnoffactive
\def\@{@}%
\let\/=\empty
@@ -1547,7 +1547,7 @@
% Definitions for a main text size of 11pt. This is the default in
% Texinfo.
-%
+%
\def\definetextfontsizexi{
% Text fonts (11.2pt, magstep1).
\def\textnominalsize{11pt}
@@ -1672,7 +1672,7 @@
% section, chapter, etc., sizes following suit. This is for the GNU
% Press printing of the Emacs 22 manual. Maybe other manuals in the
% future. Used with @smallbook, which sets the leading to 12pt.
-%
+%
\def\definetextfontsizex{%
% Text fonts (10pt).
\def\textnominalsize{10pt}
@@ -1758,7 +1758,7 @@
\setfont\secsf\sfbshape{12}{1000}
\let\secbf\secrm
\setfont\secsc\scbshape{10}{\magstep1}
-\font\seci=cmmi12
+\font\seci=cmmi12
\font\secsy=cmsy10 scaled \magstep1
% Subsection fonts (10pt).
@@ -1799,7 +1799,7 @@
% We provide the user-level command
% @fonttextsize 10
% (or 11) to redefine the text font size. pt is assumed.
-%
+%
\def\xword{10}
\def\xiword{11}
%
@@ -1809,7 +1809,7 @@
%
% Set \globaldefs so that documents can use this inside @tex, since
% makeinfo 4.8 does not support it, but we need it nonetheless.
- %
+ %
\begingroup \globaldefs=1
\ifx\textsizearg\xword \definetextfontsizex
\else \ifx\textsizearg\xiword \definetextfontsizexi
@@ -2094,7 +2094,7 @@
% each of the four underscores in __typeof__. This is undesirable in
% some manuals, especially if they don't have long identifiers in
% general. @allowcodebreaks provides a way to control this.
-%
+%
\newif\ifallowcodebreaks \allowcodebreakstrue
\def\keywordtrue{true}
@@ -2225,7 +2225,7 @@
% @acronym for "FBI", "NATO", and the like.
% We print this one point size smaller, since it's intended for
% all-uppercase.
-%
+%
\def\acronym#1{\doacronym #1,,\finish}
\def\doacronym#1,#2,#3\finish{%
{\selectfonts\lsize #1}%
@@ -2237,7 +2237,7 @@
% @abbr for "Comput. J." and the like.
% No font change, but don't do end-of-sentence spacing.
-%
+%
\def\abbr#1{\doabbr #1,,\finish}
\def\doabbr#1,#2,#3\finish{%
{\plainfrenchspacing #1}%
@@ -2256,43 +2256,43 @@
% Theiling, which support regular, slanted, bold and bold slanted (and
% "outlined" (blackboard board, sort of) versions, which we don't need).
% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
-%
+%
% Although only regular is the truly official Euro symbol, we ignore
% that. The Euro is designed to be slightly taller than the regular
% font height.
-%
+%
% feymr - regular
% feymo - slanted
% feybr - bold
% feybo - bold slanted
-%
+%
% There is no good (free) typewriter version, to my knowledge.
% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
% Hmm.
-%
+%
% Also doesn't work in math. Do we need to do math with euro symbols?
% Hope not.
-%
-%
+%
+%
\def\euro{{\eurofont e}}
\def\eurofont{%
% We set the font at each command, rather than predefining it in
% \textfonts and the other font-switching commands, so that
% installations which never need the symbol don't have to have the
% font installed.
- %
+ %
% There is only one designed size (nominal 10pt), so we always scale
% that to the current nominal size.
- %
+ %
% By the way, simply using "at 1em" works for cmr10 and the like, but
% does not work for cmbx10 and other extended/shrunken fonts.
- %
+ %
\def\eurosize{\csname\curfontsize nominalsize\endcsname}%
%
- \ifx\curfontstyle\bfstylename
+ \ifx\curfontstyle\bfstylename
% bold:
\font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
- \else
+ \else
% regular:
\font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
\fi
@@ -2316,7 +2316,7 @@
% Laurent Siebenmann reports \Orb undefined with:
% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38
% so we'll define it if necessary.
-%
+%
\ifx\Orb\undefined
\def\Orb{\mathhexbox20D}
\fi
@@ -2632,7 +2632,7 @@
% cause the example and the item to crash together. So we use this
% bizarre value of 10001 as a signal to \aboveenvbreak to insert
% \parskip glue after all. Section titles are handled this way also.
- %
+ %
\penalty 10001
\endgroup
\itemxneedsnegativevskipfalse
@@ -3428,7 +3428,7 @@
% processing continues to some further point. On the other hand, it
% seems \endinput does not hurt in the printed index arg, since that
% is still getting written without apparent harm.
- %
+ %
% Sample source (mac-idx3.tex, reported by Graham Percival to
% help-texinfo, 22may06):
% @macro funindex {WORD}
@@ -3436,12 +3436,12 @@
% @end macro
% ...
% @funindex commtest
- %
+ %
% The above is not enough to reproduce the bug, but it gives the flavor.
- %
+ %
% Sample whatsit resulting:
% .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}}
- %
+ %
% So:
\let\endinput = \empty
%
@@ -3677,11 +3677,11 @@
% makeinfo does not expand macros in the argument to @deffn, which ends up
% writing an index entry, and texindex isn't prepared for an index sort entry
% that starts with \.
- %
+ %
% Since macro invocations are followed by braces, we can just redefine them
% to take a single TeX argument. The case of a macro invocation that
% goes to end-of-line is not handled.
- %
+ %
\macrolist
}
@@ -3807,7 +3807,7 @@
% to re-insert the same penalty (values >10000 are used for various
% signals); since we just inserted a non-discardable item, any
% following glue (such as a \parskip) would be a breakpoint. For example:
- %
+ %
% @deffn deffn-whatever
% @vindex index-whatever
% Description.
@@ -4759,11 +4759,11 @@
% glue accumulate. (Not a breakpoint because it's preceded by a
% discardable item.)
\vskip-\parskip
- %
+ %
% This is purely so the last item on the list is a known \penalty >
% 10000. This is so \startdefun can avoid allowing breakpoints after
% section headings. Otherwise, it would insert a valid breakpoint between:
- %
+ %
% @section sec-whatever
% @deffn def-whatever
\penalty 10001
@@ -4821,7 +4821,7 @@
% These characters do not print properly in the Computer Modern roman
% fonts, so we must take special care. This is more or less redundant
% with the Texinfo input format setup at the end of this file.
-%
+%
\def\activecatcodes{%
\catcode`\"=\active
\catcode`\$=\active
@@ -5416,8 +5416,8 @@
% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it
% the default, but it works for pasting with more pdf viewers (at least
% evince), the lilypond developers report. xpdf does work with the
-% regular 0x27.
-%
+% regular 0x27.
+%
\def\codequoteright{%
\expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
'%
@@ -5429,7 +5429,7 @@
% and a similar option for the left quote char vs. a grave accent.
% Modern fonts display ASCII 0x60 as a grave accent, so some people like
% the code environments to do likewise.
-%
+%
\def\codequoteleft{%
\expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
`%
@@ -5572,7 +5572,7 @@
% by \defargscommonending, instead of 10000, since the sectioning
% commands also insert a nobreak penalty, and we don't want to allow
% a break between a section heading and a defun.
- %
+ %
\ifnum\lastpenalty=10002 \penalty2000 \fi
%
% Similarly, after a section heading, do not allow a break.
@@ -5950,7 +5950,7 @@
% This does \let #1 = #2, with \csnames; that is,
% \let \csname#1\endcsname = \csname#2\endcsname
% (except of course we have to play expansion games).
-%
+%
\def\cslet#1#2{%
\expandafter\let
\csname#1\expandafter\endcsname
@@ -7420,7 +7420,7 @@
% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
% the literal character `\'.
-%
+%
@def@normalturnoffactive{%
@let\=@normalbackslash
@let"=@normaldoublequote
Please sign in to comment.
Something went wrong with that request. Please try again.