annotate man/xemacs/startup.texi @ 5307:c096d8051f89

Have NATNUMP give t for positive bignums; check limits appropriately. src/ChangeLog addition: 2010-11-20 Aidan Kehoe <kehoea@parhasard.net> * abbrev.c (Fexpand_abbrev): * alloc.c: * alloc.c (Fmake_list): * alloc.c (Fmake_vector): * alloc.c (Fmake_bit_vector): * alloc.c (Fmake_byte_code): * alloc.c (Fmake_string): * alloc.c (vars_of_alloc): * bytecode.c (UNUSED): * bytecode.c (Fbyte_code): * chartab.c (decode_char_table_range): * cmds.c (Fself_insert_command): * data.c (check_integer_range): * data.c (Fnatnump): * data.c (Fnonnegativep): * data.c (Fstring_to_number): * elhash.c (hash_table_size_validate): * elhash.c (decode_hash_table_size): * eval.c (Fbacktrace_frame): * event-stream.c (lisp_number_to_milliseconds): * event-stream.c (Faccept_process_output): * event-stream.c (Frecent_keys): * event-stream.c (Fdispatch_event): * events.c (Fmake_event): * events.c (Fevent_timestamp): * events.c (Fevent_timestamp_lessp): * events.h: * events.h (struct command_builder): * file-coding.c (gzip_putprop): * fns.c: * fns.c (check_sequence_range): * fns.c (Frandom): * fns.c (Fnthcdr): * fns.c (Flast): * fns.c (Fnbutlast): * fns.c (Fbutlast): * fns.c (Fmember): * fns.c (Ffill): * fns.c (Freduce): * fns.c (replace_string_range_1): * fns.c (Freplace): * font-mgr.c (Ffc_pattern_get): * frame-msw.c (msprinter_set_frame_properties): * glyphs.c (check_valid_xbm_inline): * indent.c (Fmove_to_column): * intl-win32.c (mswindows_multibyte_to_unicode_putprop): * lisp.h: * lisp.h (ARRAY_DIMENSION_LIMIT): * lread.c (decode_mode_1): * mule-ccl.c (ccl_get_compiled_code): * number.h: * process-unix.c (unix_open_multicast_group): * process.c (Fset_process_window_size): * profile.c (Fstart_profiling): * unicode.c (Funicode_to_char): Change NATNUMP to return 1 for positive bignums; changes uses of it and of CHECK_NATNUM appropriately, usually by checking for an integer in an appropriate range. Add array-dimension-limit and use it in #'make-vector, #'make-string. Add array-total-size-limit, array-rank-limit while we're at it, for the sake of any Common Lisp-oriented code that uses these limits. Rename check_int_range to check_integer_range, have it take Lisp_Objects (and thus bignums) instead. Remove bignum_butlast(), just set int_n to an appropriately large integer if N is a bignum. Accept bignums in check_sequence_range(), change the functions that use check_sequence_range() appropriately. Move the definition of NATNUMP() to number.h; document why it's a reasonable name, contradicting an old comment. tests/ChangeLog addition: 2010-11-20 Aidan Kehoe <kehoea@parhasard.net> * automated/lisp-tests.el: * automated/lisp-tests.el (featurep): * automated/lisp-tests.el (wrong-type-argument): * automated/mule-tests.el (featurep): Check for args-out-of-range errors instead of wrong-type-argument errors in various places when code is handed a large bignum instead of a fixnum. Also check for the wrong-type-argument errors when giving the same code a non-integer value.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 20 Nov 2010 16:49:11 +0000
parents 9c4bf82eaac2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
444
576fb035e263 Import from CVS: tag r21-2-37
cvs
parents: 442
diff changeset
1 @node Startup Paths, Packages, Command Switches, Top
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2 @comment node-name, next, previous, up
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 @section How XEmacs finds Directories and Files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 @cindex startup paths
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 @cindex directories
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 XEmacs deals with a multitude of files during operation. These files
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 are spread over many directories, and XEmacs determines the location of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 most of these directories at startup and organizes them into various
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11 paths. (A @dfn{path},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 @cindex path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 for the purposes of this section, is simply a list of directories which
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 XEmacs searches successively in order to locate a file.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 @subsection XEmacs Directory Hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 @cindex hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 @cindex directory hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 Many of the files XEmacs looks for are located within the XEmacs
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 installation itself. However, there are several views of what actually
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 constitutes the "XEmacs installation": XEmacs may be run from the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 compilation directory, it may be installed into arbitrary directories,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 spread over several directories unrelated to each other. Moreover, it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 may subsequently be moved to a different place. (This last case is not
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26 as uncommon as it sounds. Binary kits work this way.) Consequently,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 XEmacs has quite complex procedures in place to find directories, no
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 matter where they may be hidden.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 XEmacs will always respect directory options passed to @code{configure}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 However, if it cannot locate a directory at the configured place, it
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 will initiate a search for the directory in any of a number of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 @dfn{hierarchies} rooted under a directory which XEmacs assumes contain
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 parts of the XEmacs installation; it may locate several such hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 and search across them. (Typically, there are just one or two
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 hierarchies: the hierarchy where XEmacs was or will be installed, and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37 the one where it is being built.) Such a directory containing a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 hierarchy is called a @dfn{root}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39 @cindex root of a hierarchy
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 Whenever this section refers to a directory using the shorthand
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41 @code{<root>}, it means that XEmacs searches for it under all
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 432
diff changeset
42 hierarchies XEmacs was able to scrounge up. In a
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43 running XEmacs, the hierarchy roots are stored in the variable
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 @code{emacs-roots}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 @vindex emacs-roots
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47 @subsection Package Hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 @cindex package hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 Many relevant directories and files XEmacs uses are actually not part of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 the core installation. They are part of any of the many packages
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 usually installed on top of an XEmacs installation. (@xref{Packages}.)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
53 Hence, they play a prominent role in the various paths XEmacs sets up.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
54
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
55 XEmacs locates packages in any of a number of package hierarchies.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
56 Package hierarchies fall into three groups: @dfn{early}, @dfn{late},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
57 and @dfn{last},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58 @cindex early package hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
59 @cindex late package hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
60 @cindex last package hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
61 according to the relative location at which they show
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
62 up in the various XEmacs paths. Early package hierarchies are at the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
63 very front, late ones somewhere in the middle, and last hierarchies are
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
64 (you guessed it) last.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
65
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 432
diff changeset
66 By default, XEmacs expects an early package hierarchy in the
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 432
diff changeset
67 subdirectory @file{.xemacs/xemacs-packages} of the user's home
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 432
diff changeset
68 directory.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
69
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
70 Moreover, XEmacs expects late hierarchies in the subdirectories
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
71 @file{site-packages}, @file{mule-packages}, and @file{xemacs-packages}
5148
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
72 (in that order) of the @file{<root>/share/xemacs} subdirectory of one of
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
73 the installation hierarchies. (If you run in-place, these are direct
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
74 subdirectories of the build directory.) Furthermore, XEmacs will also
5148
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
75 search these subdirectories in the @file{<root>/share/xemacs-<VERSION>}
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
76 subdirectory and prefer directories found there.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
77
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
78 By default, XEmacs does not have a pre-configured last package
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
79 hierarchy. Last hierarchies are primarily for using package hierarchies
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
80 of outdated versions of XEmacs as a fallback option. For example, it is
442
abe6d1db359e Import from CVS: tag r21-2-36
cvs
parents: 432
diff changeset
81 possible to run XEmacs 21 with the 20.4 package hierarchy as a last
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
82 hierarchy.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
83
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
84 It is possible to specify at configure-time the location of the various
3179
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
85 package directories with the @code{--with-user-packages} (an alias for
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
86 @samp{--with-early-packages}), @code{--with-system-packages} (an alias
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
87 for @samp{--with-late-packages}), and @code{--with-legacy-packages} (an
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
88 alias for @samp{--with-last-packages}) options to configure.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
89 @cindex package path
3179
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
90 At run time, the package directories may also be specified via the
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
91 @code{EMACSEARLYPACKAGES}, @code{EMACSLATEPACKAGES}, and
15139dbf89f4 [xemacs-hg @ 2005-12-27 18:50:47 by michaels]
michaels
parents: 1258
diff changeset
92 @code{EMACSLASTPACKAGES} environment variables.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
93
1183
c1553814932e [xemacs-hg @ 2003-01-03 12:12:30 by stephent]
stephent
parents: 444
diff changeset
94 An XEmacs package hierarchy is laid out just like a normal installed
1258
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
95 XEmacs directory. It may have @file{lisp}, @file{etc}, @file{info}, and
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
96 @file{lib-src} subdirectories. (The @file{lib-src} subdirectory
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
97 contains architecture-independent general-purpose scripts interpreted by
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
98 the shell or Perl. Java is also being widely used, but Java programs
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
99 are generally found under @file{etc}, because they are specific to
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
100 particular packages such as @file{JDE} and @file{xslt}.) XEmacs adds
473e76fb6d95 [xemacs-hg @ 2003-02-05 08:18:55 by stephent]
stephent
parents: 1183
diff changeset
101 these at appropriate places within the various system-wide paths.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
102
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
103 There may be any number of package hierarchy directories.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
104
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
105 @subsection Directories and Paths
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
106 @cindex paths
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
107
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
108 Here is a list of the various directories and paths XEmacs tries to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
109 locate during startup. XEmacs distinguishes between directories and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
110 paths specific to @dfn{version}, @dfn{site}, and @dfn{architecture}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
111 when looking for them.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
112
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
113 @table @code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
114 @item version-specific
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
115 @cindex version-specific directories
5148
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
116 directories (such as @file{etc}, the @file{info} of the installed XEmacs
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
117 and its Lisp files in @file{lisp}) are specific to the version of XEmacs
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
118 they belong to and typically reside under
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
119 @file{<root>/share/xemacs-<VERSION>}.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
120 @item site-specific
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
121 @cindex site-specific directories
5148
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
122 directories are independent of the version of XEmacs and
9c4bf82eaac2 Reflect change from `lib' to `share' in docs.
Mike Sperber <sperber@deinprogramm.de>
parents: 3179
diff changeset
123 typically reside under @file{<root>/share/xemacs}.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
124 @item architecture-specific
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
125 @cindex architecture-specific directories
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
126 directories are specific both to the version of XEmacs and the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
127 architecture it runs on and typically reside under
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
128 @file{<root>/lib/xemacs-<VERSION>/<ARCHITECTURE>}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
129 @end table
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
130
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
131 During installation, all of these directories may also reside directly
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
132 under @file{<root>}, because that is where they are in the XEmacs tarball.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
133
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
134 If XEmacs runs with the @code{-debug-paths} option (@pxref{Command
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
135 Switches}), it will print the values of these variables, hopefully
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
136 aiding in debugging any problems which come up.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
137
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
138 @table @code
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
139
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
140 @item lisp-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
141 @vindex lisp-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
142 Contains the version-specific location of the Lisp files that come with
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
143 the core distribution of XEmacs. XEmacs will search it recursively to a
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
144 depth of 1 when setting up @code{load-path}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
145
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
146 @item load-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
147 @vindex load-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
148 Is where XEmacs searches for XEmacs Lisp files with commands like
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
149 @code{load-library}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
150 @findex load-library
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
151 It contains the package lisp directories (see further down) and the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
152 version-specific core Lisp directories. If the environment variable
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
153 @code{EMACSLOADPATH} is set at startup, its directories are prepended to
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
154 @code{load-path}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
155 @vindex EMACSLOADPATH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
156
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
157 @item Info-directory-list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
158 @vindex Info-directory-list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
159 Contains the location of info files. (See @ref{(info)}.) It contains
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
160 the package info directories and the version-specific core
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
161 documentation. Moreover, XEmacs will add @file{/usr/info},
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
162 @file{/usr/local/info} as well as the directories of the environment
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
163 variable @code{INFOPATH}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
164 @vindex INFOPATH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
165 to @code{Info-directory-list}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
166
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
167 @item exec-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
168 @vindex exec-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
169 Is the directory of architecture-dependent files that come with XEmacs,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
170 especially executable programs intended for XEmacs to invoke.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
171
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
172 @item exec-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
173 @vindex exec-path
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
174 Is the path for executables which XEmacs may want to start. It contains
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
175 the package executable paths as well as @code{exec-directory}, and the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
176 directories of the environment variables @code{PATH}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
177 @vindex PATH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
178 and @code{EMACSPATH}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
179 @vindex EMACSPATH
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
180
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
181 @item doc-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
182 @vindex doc-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
183 Is the directory containing the architecture-specific @file{DOC} file
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
184 that contains documentation for XEmacs' commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
185
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
186 @item data-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
187 @vindex data-directory
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
188 Is the version-specific directory that contains core data files XEmacs uses.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
189 It may be initialized from the @code{EMACSDATA}
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
190 @vindex EMACSDATA
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
191 environment variable.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
192
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
193 @item data-directory-list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
194 @vindex data-directory-list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
195 Is the path where XEmacs looks for data files. It contains package data
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
196 directories as well as @code{data-directory}.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
197
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
198 @end table
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
199
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
200