Brings all the docs relating to the init file up to date.
* PROBLEMS: Update section on user-init-file
* configure.ac (package-prefix): Use "user's home directory"
instead of "~/.sxemacs".
* etc/sample.init.el: Update comments.
* etc/sxemacs.1: Update Files section regarding init.el.
* info/lispref/os.texi (Start-up Summary): Update locations for
init.el.
* info/lispref/os.texi (Init File): Describe user-init-directory.
* info/new-users-guide/custom1.texi: s/Emacs/SXEmacs/
* info/new-users-guide/custom1.texi (Customization Basics): Cross
reference `Init File'.
* info/lispref/postgresql.texi
(Building SXEmacs with PostgreSQL support): Comment out silly
nonsence about "binary kits" and ftp sites. :)
* info/sxemacs-faq.texi (Q1.0.2): Update.
* info/sxemacs-faq.texi (Q1.0.3): Sources are at
http://downloads.sxemacs.org/, not ftp. And snapshots are on the
web too.
* info/sxemacs-faq.texi (Q1.4.1): Update and cross-ref `Init
File'. Remove talk of "migrating old .emacs". We've never done
that.
* info/sxemacs/cmdargs.texi (Command Switches): Update.
s/Emacs/SXEmacs/
* info/sxemacs/custom.texi (Init File): Update. Mention
user-init-directory, cross-ref to lispref "Init File".
* info/sxemacs/sxemacs.texi (Distrib): Point folks to
http://downloads.sxemacs.org
* lisp/ffi/ffi-magic.el: doc update example
* lisp/files.el (user-init-file): Update doc.
* lisp/info.el (Info-annotate): Ditto.
* lisp/issue-tracker.el (report-sxemacs-bug-help): Ditto.
* lisp/menubar-items.el (default-menubar): Don't hard-code
"~/.sxemacs/init.el".
* lisp/package-admin.el (package-admin-get-install-dir): comment update.
* info/lispref/display.texi (Warnings): update.
Signed-off-by: Steve Youngs <steve@sxemacs.org>
** User init file (C-h v user-init-file)
-SXEmacs searches for its init file in `~/.sxemacs/init.el'.
-Symlinking your old ~/.xemacs directory should be enough to get you up
-and running.
+SXEmacs looks for user init files in `user-init-directory'. The
+preferred directory is: ${XDG_CONFIG_HOME}/sxemacs but it can fall
+back to the old ~/.sxemacs directory.
- $ ln -s ~/.xemacs ~/.sxemacs RET
+The search order is:
+
+ ${XDG_CONFIG_HOME}/sxemacs
+ ${HOME}/.config/sxemacs # if $XDG_CONFIG_HOME is not set
+ ${HOME}/.sxemacs # if other dirs don't exist
+
+You can also force the use of ~/.sxemacs regardless of the existence
+of the XDG dir/var by setting $SXE_USE_LEGACY environment variable to
+a non-nil value.
+
+If you're coming from XEmacs, symlinking your old ~/.xemacs directory
+to a SXEmacs location should be enough to get you up and running:
+
+ $ ln -svfn ${HOME}/.xemacs ${XDG_CONFIG_HOME}/sxemacs
BTW, unlike XEmacs, SXEmacs doesn't attempt to "migrate" your old init
file or Gnu/Emacs .emacs file.
AS_HELP_STRING([--with-package-prefix=PATH],
[What to use as a prefix to the system-wide package
directories. It doesn't affect the package directories
- under ~/.sxemacs, and is totally ignored if
+ under the user's home directory, and is totally ignored if
--with-package-path is set.
Normally, you would not need to set this.]),
[none], [None], [og_any],
;; (sxemacs)Entering Emacs, and in (custom), then point to them
;; instead of going into detail here.
-;;; This is a sample init file. It can be used without modification as
-;;; your init.el. In SXEmacs, this file is located in the ~/.sxemacs/
-;;; subdirectory and is called init.el. Other files are also located
-;;; here, such as custom-${USER}.el (the auto-generated file containing
-;;; Customization options that you saved when using
-;;; Options->Save Options).
+;;; This is a sample init file. It can be used without modification
+;;; as your init.el. In SXEmacs, this file, called `init.el', is
+;;; located in the directory defined in the `user-init-directory'
+;;; variable. It normally defaults to `${XDG_CONFIG_HOME}/sxemacs',
+;;; or `${HOME}/.config/sxemacs' if the XDG environment isn't set.
+;;; Historically, this file was located in `~/.sxemacs', and indeed,
+;;; that directory is still supported.
+
+;;; To find out exactly where your SXEmacs would look for your init.el
+;;; file, do...
+;;;
+;;; M-: user-init-directory RET
+
+;;; Other files are also located here, such as custom-${USER}.el (the
+;;; auto-generated file containing Customization options that you
+;;; saved when using Options->Save Options).
;;; Changes to your init.el file will not take effect until the next
;;; time you start up SXEmacs, unless you load it explicitly with
;;;
-;;; M-x load-file RET ~/.sxemacs/init.el RET
+;;; M-x load-file RET
+;;;
+;;; You'll then be prompted for a file name, give it the full path
+;;; to your init.el and hit `RET'
;;; The language that this file (and most other SXEmacs init files) is
;;; written in is called "Emacs Lisp" or more commonly "elisp".
;; 1. It runs the normal hook `before-init-hook'.
;; 2. It loads the library `site-start' (by default `site-start.el').
-;; 3. It loads the init file (by default `~/.sxemacs/init.el').
-;; 4. It loads the custom file (by default `~/.sxemacs/custom-${USER}.el').
+;; 3. It loads the init file (by default `${XDG_CONFIG_HOME}/sxemacs/init.el').
+;; 4. It loads the custom file (by default `${XDG_CONFIG_HOME}/sxemacs/custom-${USER}.el').
;; 5. It loads the library `default' (by default `default.el').
;; 6. It runs the normal hook `after-init-hook'.
.ti -\w'CTRL-SHIFT-middle'u+4n
META-left Make a rectangular selection.
.SH FILES
-Lisp code is read at startup from the user's init file,
-\fB$HOME/.sxemacs/init.el\fP.
+Lisp code is read at startup from the user's init file, which can be
+one of:
+
+\fB${XDG_CONFIG_HOME}/sxemacs/init.el\fP
+
+\fB${HOME}/.config/sxemacs/init.el\fP
+
+\fB${HOME}/.sxemacs/init.el\fP
/usr/local/share/info - files for the Info documentation browser
(a subsystem of
A possibly out-of-date version is also accessible through the Info system
inside of \fISXEmacs\fP.
.PP
-The latest version of \fISXEmacs\fP can be downloaded using anonymous
-FTP from
+The latest version of \fISXEmacs\fP can be downloaded from
.PP
-ftp://ftp.sxemacs.org/pub/sxemacs/
+http://downloads.sxemacs.org/
across several lines. Here is an example of how a warning is displayed:
@example
-(1) (initialization/error) An error has occurred while loading ~/.sxemacs/init.el:
+(1) (initialization/error) An error has occurred while loading ~/.config/sxemacs/init.el:
Symbol's value as variable is void: bogus-variable
@cindex @file{site-start.el}
@item
-It loads the file @file{~/.sxemacs/init.el} unless @samp{-q} was
-specified on the command line. This is not done in @samp{-batch} mode,
-though. The @samp{-u} option can specify the user name whose home
-directory should be used instead of @file{~}.
-
-If the directory @file{~/.sxemacs} or @file{init.el} in there does not
-exist, SXEmacs tries to read @file{init.el} in @file{~/.xemacs}.
-If this also fails, it looks for a @file{~/.emacs}.
+It loads the file @file{$XDG_CONFIG_HOME/sxemacs/init.el} unless
+@samp{-q} was specified on the command line. This is not done in
+@samp{-batch} mode, though. The @samp{-u} option can specify the
+user name whose @file{init.el} should be loaded instead@footnote{Note
+that file and directory permissions may very well hamper the use of
+@samp{-u}.}.
+
+If the environment variable, @var{XDG_CONFIG_HOME}, is not set,
+SXEmacs will try @file{~/.config/sxemacs}, and if that directory
+does not exist, try @file{~/.sxemacs}.
@cindex @file{init.el}
@item
@cindex @file{init.el}
When you start SXEmacs, it normally attempts to load the file
-@file{init.el} from your @file{.sxemacs} directory in your home
-directory. This file, if it exists, must contain Lisp code. It is
-called your @dfn{init file}. The command line switches @samp{-q} and
-@samp{-u} affect the use of the init file; @samp{-q} says not to load an
-init file, and @samp{-u} says to load a specified user's init file
-instead of yours.
+@file{init.el} from the directory set in @code{user-init-directory}.
+This file, if it exists, must contain Lisp code. It is called your
+@dfn{init file}. The command line switches @samp{-q} and @samp{-u}
+affect the use of the init file; @samp{-q} says not to load an init
+file, and @samp{-u} says to load a specified user's init file instead of
+yours.
@xref{Entering SXEmacs,,,sxemacs, The SXEmacs User's Manual}.
+@cindex init directory
+@defvar user-init-directory
+This variable contains the name of the directory where a user's init
+files and customisations are stored. In the past, this was hard-coded
+to @file{~/.sxemacs}, but today the default is normally
+@file{$XDG_CONFIG_HOME/sxemacs}, or @file{~/.config/sxemacs} if the
+environment variable, @var{XDG_CONFIG_HOME} is not set. If neither,
+@file{$XDG_CONFIG_HOME/sxemacs}, nor @file{~/.config/sxemacs} exists,
+and @file{~/.sxemacs} does exist, then @file{~/.sxemacs} will be used.
+
+If no candidates for @code{user-init-directory} exist SXEmacs will
+create a new directory at @file{$XDG_CONFIG_HOME/sxemacs}, or
+@file{~/.config/sxemacs} if @var{XDG_CONFIG_HOME} is unset.
+@end defvar
+
+The location of the init directory can be overridden through one of
+two methods@enddots{}
+
+@enumerate
+@item
+Using the @samp{-user-init-directory} command line option, which
+allows the user to set the init directory to any location, providing
+that file and directory permissions allow access.
+@item
+Setting the environment variable, @var{SXE_USE_LEGACY}, which forces
+SXEmacs to use the legacy init directory, @file{~/.sxemacs} regardless
+of the existence of a @var{XDG_CONFIG_HOME} based init directory.
+@end enumerate
+
+
@cindex default init file
A site may have a @dfn{default init file}, which is the library named
@file{default.el}. SXEmacs finds the @file{default.el} file through the
/usr/local/pgsql/bin/psql test
@end example
-
+@c LOL, maybe one day. Oh, and we don't have ftp. --SY
+@ignore
If you have installed SXEmacs from one of the binary kits on
(@url{ftp://ftp.sxemacs.org/}), or are using an SXEmacs binary from
your favourite distributor, you may have SXEmacs PostgreSQL support
by default. @code{M-x describe-installation} will tell you if you do.
+@end ignore
If you are building SXEmacs from source, you need to install PostgreSQL
first (see above example). On some systems, PostgreSQL will come
@cindex customize
@findex eval-region
-When you start Emacs, it reads the file @file{~/.sxemacs/init.el} in the
-@file{.sxemacs/} subdirectory of your home directory. You can use this
-file to initialize and customize Emacs to your liking. This file should
-contain lisp-code. You can customize your @file{init.el} file to create
-new menus, disable menus, change key bindings, enable a minor mode,
-etc. Any kind of customization affects only a particular Emacs job that
-you do them in. If you want to save your customizations `permanently'
+When you start SXEmacs, it reads the file @file{init.el} in the
+@code{user-init-directory} (@pxref{Init File,,,lispref,SXEmacs Lisp Reference
+Manual}). You can use this file to initialize and customize SXEmacs to
+your liking. This file should contain lisp-code. You can customize
+your @file{init.el} file to create new menus, disable menus, change
+key bindings, enable a minor mode, etc. Any kind of customization
+affects only a particular SXEmacs job that you do them in. If you want
+to save your customizations `permanently'
i.e. for future use also, you have to put it in your @samp{init.el}
file. After you make changes to your @file{init.el} file and save it, the
-changes will be effective only after you start Emacs again i.e. for a
-new Emacs process. To try out some of the examples in this section,
+changes will be effective only after you start SXEmacs again i.e. for a
+new SXEmacs process. To try out some of the examples in this section,
highlight that region and evaluate the region by giving the command
@kbd{M-x eval-region}. You will be able to see the results of your
-customizations in that Emacs session only (@pxref{Lisp
+customizations in that SXEmacs session only (@pxref{Lisp
Eval,,,sxemacs,SXEmacs User's Manual}).
@comment node-name, next, previous, up
@cindex key bindings
@cindex keystrokes
- Most of Emacs commands use key
+ Most of SXEmacs commands use key
sequences. @xref{Keystrokes,,,sxemacs,SXEmacs User's Manual}, for more
-information about Keys and Commands. In Emacs, the keys themselves carry
+information about Keys and Commands. In SXEmacs, the keys themselves carry
no meaning unless they are bound to a function. For example, @kbd{C-n}
moves the cursor to the next line because its bound to the function
@b{next-line}. Similarly, @kbd{C-p} moves to the previous line because
which means disable a command or turn off a feature. If you want to
enable a command or turn on a particular feature use @samp{t}
which stands for @samp{true}. For example, if you do not wish @kbd{C-x
-C-c} to @samp{Exit Emacs} you can type the following expression in your
+C-c} to @samp{Exit SXEmacs} you can type the following expression in your
@file{init.el} file:
@example
@noindent
You might want to have this statement in your @file{init.el} file because
its easy to hit this command by mistake and it could be annoying to exit
-Emacs unintentionally. There is an @b{Exit Emacs} option in the @b{File
+Emacs unintentionally. There is an @b{Exit SXEmacs} option in the @b{File
menu} which you might want to use instead. To make a particular key
undefined you can also use:
@noindent
@b{Replace String} will now execute the function
-@code{replace-string}. Select this menu item. Emacs will prompt you for
+@code{replace-string}. Select this menu item. SXEmacs will prompt you for
a string name to be replaced. Type a
string and hit @key{RET}. Now type a new string to replace the old
string and hit @key{RET}. All occurrences of the old string will be
@node Q1.0.2
@unnumberedsec Q1.0.2: What is the current version of SXEmacs?
-SXEmacs 22.1.4 is the latest released version.
-The current development line will become 22.1.5.
+SXEmacs 22.1.15 is the latest released version.
+The current development line will become 22.1.16.
@node Q1.0.3
@unnumberedsec Q1.0.3: Where can I find it?
-The canonical source can be found via anonymous FTP at:
+The canonical source can be found on the web at:
@example
-@uref{ftp://ftp.sxemacs.org/sxemacs/}
+@uref{http://downloads.sxemacs.org/}
@end example
-There are also snapshots of the current development line available.
-However, the preferred method to obtain such ``snapshots'' is via tla
-(GNU arch):
+Occasionally there are also snapshots of the current development line
+available. These can be found at:
@example
-tla register-archive http://arch.sxemacs.org/2006
-tla get steve@@sxemacs.org--2006/sxemacs--main--22.1.5 sxemacs
+@uref{http://downloads.sxemacs.org/snapshots/}
@end example
HTML and Postscript versions of SXEmacs manuals are available from the
SXEmacs web site at @uref{http://www.sxemacs.org}.
@c are they?
-
+@c HTML are, but they may be a little out of date. --SY
@node Q1.1.1
@unnumberedsec 1.1: Policies
@unnumberedsec 1.4: Getting Started, Backing up & Recovery
@unnumberedsec Q1.4.1: What is an @file{init.el} or @file{.emacs} and is there a sample one?
-The @file{init.el} or @file{.emacs} file is used to customise SXEmacs
-to your tastes. The preferred location for the init
-file is @file{~/.sxemacs/init.el}. We still accept the older location
-@file{~/.emacs}, but the first time you run it, it will ask to migrate
-your file to the new location.
-If you answer yes, the file will be moved, and a "compatibility"
-@file{.emacs} file will be placed in the old location so that you can
-still run older versions of XEmacs, or versions of GNU Emacs, which
-expect the old location. The @file{.emacs} file present is just a
-stub that loads the real file in @file{~/.sxemacs/init.el}.
+The @file{init.el} file is used to customise SXEmacs to your tastes.
+The preferred location for the init file is
+@file{$XDG_CONFIG_HOME/sxemacs/init.el} (@pxref{Init File,,,lispref,SXEmacs
+Lisp Reference Manual}).
No two init files are alike, nor are they expected to be alike, but
that's the point. The SXEmacs distribution contains an excellent
starter example in the @file{etc/} directory called
@file{sample.init.el}. Copy this file from there to
-@file{~/.sxemacs/init.el}, where @samp{~} means your home directory,
-of course. Then edit it to suit.
+@file{$XDG_CONFIG_HOME/sxemacs/init.el}, then edit it to suit.
You may bring the @file{sample.init.el} file into a SXEmacs buffer
from the menubar. The menu entry is always under the @samp{Samples}
@cindex arguments (from shell)
SXEmacs supports command line arguments you can use to request
-various actions when invoking Emacs. The commands are for compatibility
+various actions when invoking SXEmacs. The commands are for compatibility
with other editors and for sophisticated activities. If you are using
SXEmacs under the X window system, you can also use a number of
standard Xt command line arguments. Command line arguments are not usually
-needed for editing with Emacs; new users can skip this section.
+needed for editing with SXEmacs; new users can skip this section.
Many editors are designed to be started afresh each time you want to
edit. You start the editor to edit one file; then exit the editor. The
command line argument to say which file to edit.
The recommended way to use SXEmacs is to start it only once, just
-after you log in, and do all your editing in the same Emacs process.
+after you log in, and do all your editing in the same SXEmacs process.
Each time you want to edit a file, you visit it using the existing
-Emacs. Emacs creates a new buffer for each file, and (unless you kill
-some of the buffers) Emacs eventually has many files in it ready for
-editing. Usually you do not kill the Emacs process until you are about
-to log out. Since you usually read files by typing commands to Emacs,
-command line arguments for specifying a file when Emacs is started are seldom
+SXEmacs. SXEmacs creates a new buffer for each file, and (unless you kill
+some of the buffers) SXEmacs eventually has many files in it ready for
+editing. Usually you do not kill the SXEmacs process until you are about
+to log out. Since you usually read files by typing commands to SXEmacs,
+command line arguments for specifying a file when SXEmacs is started are seldom
needed.
- Emacs accepts command-line arguments that specify files to visit,
+ SXEmacs accepts command-line arguments that specify files to visit,
functions to call, and other activities and operating modes. If you
are running SXEmacs under the X window system, a number of standard Xt
command line arguments are available, as well as a few X parameters
what @kbd{M-x insert-buffer} does; @xref{Misc File Ops}.
@item -kill
-Exit from Emacs without asking for confirmation. Always the last
+Exit from SXEmacs without asking for confirmation. Always the last
argument processed, no matter where it appears in the command line.
@item -version
@cindex batch mode
@item -batch
-Run Emacs in @dfn{batch mode}, which means that the text being edited is
+Run SXEmacs in @dfn{batch mode}, which means that the text being edited is
not displayed and the standard Unix interrupt characters such as
-@kbd{C-z} and @kbd{C-c} continue to have their normal effect. Emacs in
+@kbd{C-z} and @kbd{C-c} continue to have their normal effect. SXEmacs in
batch mode outputs to @code{stderr} only what would normally be printed
in the echo area under program control.
-Batch mode is used for running programs written in Emacs Lisp from shell
+Batch mode is used for running programs written in SXEmacs Lisp from shell
scripts, makefiles, and so on. Normally the @samp{-l} switch or
@samp{-f} switch will be used as well, to invoke a Lisp program to do
the batch processing.
@samp{-batch} implies @samp{-q} (do not load an init file). It also
-causes Emacs to kill itself after all command switches have been
+causes SXEmacs to kill itself after all command switches have been
processed. In addition, auto-saving is not done except in buffers for
which it has been explicitly requested.
@item -no-init-file
@itemx -q
-Do not load your Emacs init file. @xref{Init File}.
+Do not load your SXEmacs init file. @xref{Init File}.
@item -no-site-file
Do not load the site-specific init file @file{lisp/site-start.el}.
This is equivalent to @samp{-q -no-site-file -no-early-packages}.
@item -user-init-file @var{file}
-Load @var{file} as your Emacs init file instead of
-@file{~/.sxemacs/init.el}.
+Load @var{file} as your SXEmacs init file instead of the default
+@file{$XDG_CONFIG_HOME/sxemacs/init.el}.
@item -user-init-directory @var{directory}
-Use @var{directory} as the location of your early package hierarchies
-and the various user-specific initialization files.
+Use @var{directory} as the location of your initialization files.
@item -user @var{user}
@itemx -u @var{user}
-Equivalent to @samp{-user-init-file ~@var{user}/.sxemacs/init.el
--user-init-directory ~@var{user}/.sxemacs}, or @samp{-user-init-file
-~@var{user}/.emacs -user-init-directory ~@var{user}/.sxemacs}, whichever
-init file comes first. @xref{Init File}.
+Attempt to load @var{user} init instead of your own. There is no
+privilege escalation going on, the SXEmacs process is still owned by
+you, not @var{user}. In fact, using this option is often hindered by
+file and directory permissions. YMMV. @xref{Init File}.
@end table
@end example
@noindent
-passes each @code{.c} file as a separate argument to Emacs, so that
+passes each @code{.c} file as a separate argument to SXEmacs, so that
Emacs visits each file (@pxref{Visiting}).
Here is an advanced example that assumes you have a Lisp program file
@end example
@noindent
-Here Emacs is told to visit @file{foo.c}, load @file{hack-c-program.el}
+Here SXEmacs is told to visit @file{foo.c}, load @file{hack-c-program.el}
(which makes changes in the visited file), save @file{foo.c} (note that
@code{save-buffer} is the function that @kbd{C-x C-s} is bound to), and
then exit to the shell from which the command was executed. @samp{-batch}
guarantees there will be no problem redirecting output to @file{log},
-because Emacs will not assume that it has a display terminal to work
+because SXEmacs will not assume that it has a display terminal to work
with.
@subsection Command Line Arguments (for SXEmacs Under X)
Start up iconified.
@item -rv
-Bring up Emacs in reverse video.
+Bring up SXEmacs in reverse video.
@item -name @var{name}
Use the resource manager resources specified by @var{name}.
the resource manager name.
@item -xrm
-Read something into the resource database for this invocation of Emacs only.
+Read something into the resource database for this invocation of SXEmacs only.
@end table
@node Init File
@section The Init File
@cindex init file
+@cindex init directory
@cindex Emacs initialization file
@cindex key rebinding, permanent
@cindex rebinding keys, permanently
- When you start SXEmacs, it normally loads @file{.sxemacs/init.el}
-in your home directory. This file, if it exists, should contain Lisp
-code. It is called your initialization file or @dfn{init file}. Use
-the command line switch @samp{-q} to tell SXEmacs whether to load an init
-file (@pxref{Entering Emacs}). Use the command line switch
-@samp{-user-init-file} (@pxref{Command Switches}) to tell Emacs to load
-a different file instead of @file{~/.sxemacs/init.el}.
+ When you start SXEmacs, it normally loads @file{init.el}
+in your @code{user-init-directory} (@pxref{Init File,,,lispref,SXEmacs
+Lisp Reference Manual}). This file, if it exists, should contain
+Lisp code. It is called your initialization file or @dfn{init file}.
+Use the command line switch @samp{-q} to tell SXEmacs whether to load
+an init file (@pxref{Entering Emacs}). Use the command line switch
+@samp{-user-init-file} (@pxref{Command Switches}) to tell Emacs to
+load a different file instead.
When the init file is read, the variable @code{user-init-file} says
which init file was loaded.
@file{default} is not loaded.
If you have a large amount of code in your init file, you should
-byte-compile it to @file{~/.sxemacs/init.elc}.
+byte-compile it to @file{init.elc}.
@menu
* Init Syntax:: Syntax of constants in Emacs Lisp.
+@c FIXME -- some of the paths here are out of date and wrong.
@node Startup Paths, Packages, Command Switches, Top
@comment node-name, next, previous, up
@section How SXEmacs finds Directories and Files
it.
If you have access to the Internet, you can get the latest version of
-SXEmacs from the anonymous FTP server @file{ftp.sxemacs.org} in the directory
-@file{/pub/sxemacs}. It can also be found at numerous other archive
-sites around the world; check the file @file{etc/DISTRIB} in an SXEmacs
-distribution for the latest known list.
+SXEmacs from our download site at @uref{http://downloads.sxemacs.org}.
@unnumberedsec Getting Other Versions of Emacs
;; and single-minded. It will only use the default magic db and
;; doesn't allow use of any of file(1)'s options.
;;
-;; (magic:file-type "~/.sxemacs/init.el")
-;; => "Lisp/Scheme program text"
+;; (magic:file-type (expand-file-name "about.el" lisp-directory))
+;; => "Lisp/Scheme program, ISO-8859 text"
;;; Todo:
;;
nil ; set by command-line
"File name including directory of user's initialization file.
-This normally defaults to \"~/.sxemacs/init.el\", if you are a XEmacs
-user you can get up and running quickly by symlinking \"~/.sxemacs\"
-to your old \"~/.xemacs\" directory.")
+This normally defaults to \"${XDG_CONFIG_HOME}/sxemacs/init.el\", if
+you are a XEmacs user you can get up and running quickly by symlinking
+your old \"~/.xemacs\" directory.")
(defun set-auto-mode (&optional just-from-file-name)
"Select major mode appropriate for current buffer.
(defun Info-annotate (arg)
"Add a personal annotation to the current Info node.
Only you will be able to see this annotation. Annotations are stored
-in the file \"~/.sxemacs/info.notes\" by default. If point is inside
-an existing annotation, edit that annotation. A prefix argument
-specifies which annotations file (from `Info-annotations-path') is to
-be edited; default is 1."
+in the file \"info.notes\" in your `user-init-directory' by default. If
+point is inside an existing annotation, edit that annotation. A prefix
+argument specifies which annotations file (from `Info-annotations-path')
+is to be edited; default is 1."
(interactive "p")
(setq arg (1- arg))
(if (or (< arg 0) (not (nth arg Info-annotations-path)))
\t \(setq report-sxemacs-bug-no-explanations t\)
-To your ~/.sxemacs/init.el")
+To your `user-init-file'")
(defun report-sxemacs-bug-help ()
"Display the help buffer for `report-sxemacs-bug'."
["Edit I%_nit File"
;; #### there should be something that holds the name that the init
;; file should be created as, when it's not present.
- (progn (find-file (or user-init-file "~/.sxemacs/init.el"))
+ (progn (find-file (or user-init-file
+ (expand-file-name "init.el" user-init-directory)))
(or (eq major-mode 'emacs-lisp-mode)
(emacs-lisp-mode)))]
["%_Save Options to Custom File" customize-save-customized]
(if (and pkg-dir
(file-writable-p (directory-file-name pkg-dir)))
pkg-dir
- ;; If the user want her packages under ~/.sxemacs/, do so.
+ ;; If the user want her packages in her $HOME, do so. Currently,
+ ;; that means in `user-init-directory'.
(let ((type (package-get-info package 'category)))
(if package-get-install-to-user-init-directory
(progn
dnl -------------------------------------------------------------------------
AC_PREREQ(2.59)
-AC_INIT([SXEmacs modules], [22.1.6],[http://issues.sxemacs.org/])
+AC_INIT([SXEmacs modules], [22.1.15],[http://issues.sxemacs.org/])
AC_CONFIG_HEADERS([config.emods.h])
AC_LANG(C)