1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-22 14:52:34 -07:00
emacs/lisp
Glenn Morris aa8f82773f Stop message.el from loading about 40 libraries it doesn't always need.
The general approach is to autoload rather than require, and to
require in the specific functions rather than the file.  (Bug#5642)

* url/url.el: Move mailcap require earlier in the file.

* gnus/gmm-utils.el: Don't require wid-edit.
(widget-create-child-value, widget-convert, widget-default-get):
Autoload.

* gnus/gnus-util.el: Don't require time-date, netrc.
(message-fetch-field, gnus-group-name-decode): Declare rather than
autoloading.
(gnus-fetch-field): Require message.
(gnus-decode-newsgroups): Require gnus-group.

* gnus/ietf-drums.el: Don't require time-date.

* gnus/message.el: Don't require hashcash, canlock, ecomplete.
Do require mail-utils.  Require nnheader only when compiling.
(smtpmail-default-smtp-server): Remove declaration.
(message-send-mail-function): Check smtpmail-default-smtp-server
is bound rather than requiring smtpmail.
(message-auto-save-directory, message-insert-signature): Use
expand-file-name rather than nnheader-concat.
(nnheader-insert-file-contents): Autoload.
(hashcash-wait-async): Declare.
(message-send-mail): Only call gnus-setup-posting-charset if
gnus-group-posting-charset-alist is bound.  Require hashcash if needed.
(message-send-mail-with-sendmail): Require sendmail.
(canlock-password, canlock-password-for-verify): Declare.
(message-canlock-password): Require canlock.
(nnheader-get-report): Autoload.
(gnus-setup-posting-charset): Declare.
(message-send-news): Require gnus-msg.
(message-make-references, message-make-in-reply-to): Use mail-header-id
rather than the alias mail-header-message-id.
(ecomplete-add-item, ecomplete-save): Declare.
(message-put-addresses-in-ecomplete): Require ecomplete.
(ecomplete-display-matches): Autoload.

* gnus/mm-decode.el: Don't require mailcap, gnus-util.
(gnus-map-function, gnus-replace-in-string, gnus-read-shell-command)
(message-fetch-field, mailcap-parse-mailcaps, mailcap-mime-info):
Autoload.
(mailcap-mime-extensions): Declare.

* gnus/mm-encode.el: Don't require mailcap.
(mailcap-extension-to-mime): Autoload.

* gnus/mml-sec.el: Don't require password-cache.

* gnus/mml.el (gnus-setup-posting-charset): Declare rather than autoload.
(mailcap-parse-mimetypes, mailcap-mime-types): Declare.
(mml-minibuffer-read-type): Require mailcap.
(mml-preview): Require gnus-msg.

* gnus/mml1991.el: Require password-cache.
(password-cache-expiry): Remove declaration.

* gnus/mml2015.el: Require password-cache.
(password-cache-expiry): Remove declaration.

* gnus/nneething.el (mailcap): Require mailcap.

* gnus/nnheader.el: (declare-function): Add compatibility stub.
(message-remove-header): Declare rather than autoload.
(nnheader-replace-header): Require message.

* gnus/nnimap.el (declare-function): Add compatibility stub.
(netrc-parse, netrc-machine-user-or-password): Declare.
(nnimap-open-connection): Require netrc.

* gnus/nntp.el (declare-function): Add compatibility stub.
(netrc-parse, netrc-machine, netrc-get): Declare.
(nntp-send-authinfo): Require netrc.

* gnus/rfc2047.el: Don't require qp.
(quoted-printable-encode-region, quoted-printable-decode-string):
Autoload.

* gnus/sieve-mode.el: Don't require easymenu.
(easy-menu-add-item): Autoload it.

* gnus/spam-stat.el (time-to-number-of-days): Autoload it.

* password-cache.el (password-cache, password-cache-expiry):
Autoload.
2010-03-18 19:55:37 -07:00
..
calc
calendar
cedet
emacs-lisp
emulation
erc
eshell
gnus
international
language
mail
mh-e
net
nxml
obsolete
org
play
progmodes
term
textmodes
url
.arch-inventory
.gitignore
abbrev.el
abbrevlist.el
add-log.el
align.el
allout.el
ansi-color.el
apropos.el
arc-mode.el
array.el
autoarg.el
autoinsert.el
autorevert.el
avoid.el
battery.el
bindings.el
bookmark.el
bs.el
buff-menu.el
button.el
calculator.el
case-table.el
cdl.el
ChangeLog
ChangeLog.1
ChangeLog.2
ChangeLog.3
ChangeLog.4
ChangeLog.5
ChangeLog.6
ChangeLog.7
ChangeLog.8
ChangeLog.9
ChangeLog.10
ChangeLog.11
ChangeLog.12
ChangeLog.13
ChangeLog.14
chistory.el
cmuscheme.el
comint.el
compare-w.el
complete.el
completion.el
composite.el
COPYING
cus-dep.el
cus-edit.el
cus-face.el
cus-start.el
cus-theme.el
custom.el
cvs-status.el
dabbrev.el
delim-col.el
delsel.el
descr-text.el
desktop.el
dframe.el
diff-mode.el
diff.el
dired-aux.el
dired-x.el
dired.el
dirtrack.el
disp-table.el
dnd.el
doc-view.el
dos-fns.el
dos-vars.el
dos-w32.el
double.el
ebuff-menu.el
echistory.el
ediff-diff.el
ediff-help.el
ediff-hook.el
ediff-init.el
ediff-merg.el
ediff-mult.el
ediff-ptch.el
ediff-util.el
ediff-vers.el
ediff-wind.el
ediff.el
edmacro.el
ehelp.el
electric.el
elide-head.el
emacs-lock.el
emerge.el
env.el
epa-dired.el
epa-file.el
epa-hook.el
epa-mail.el
epa.el
epg-config.el
epg.el
expand.el
ezimage.el
face-remap.el
facemenu.el
faces.el
ffap.el
filecache.el
files-x.el
files.el
filesets.el
find-cmd.el
find-dired.el
find-file.el
find-lisp.el
finder.el
flow-ctrl.el
foldout.el
follow.el
font-core.el
font-lock.el
font-setting.el
format-spec.el
format.el
forms-d2.el
forms-pass.el
forms.el
frame.el
fringe.el
generic-x.el
gs.el
help-at-pt.el
help-fns.el
help-macro.el
help-mode.el
help.el
hex-util.el
hexl.el
hfy-cmap.el
hi-lock.el
hilit-chg.el
hippie-exp.el
hl-line.el
htmlfontify.el
ibuf-ext.el
ibuf-macs.el
ibuffer.el
icomplete.el
ido.el
ielm.el
iimage.el
image-dired.el
image-file.el
image-mode.el
image.el
imenu.el
indent.el
info-look.el
info-xref.el
info.el
informat.el
isearch.el
isearchb.el
iswitchb.el
jit-lock.el
jka-cmpr-hook.el
jka-compr.el
json.el
kermit.el
kmacro.el
ldefs-boot.el
ledit.el
linum.el
loadhist.el
loadup.el
locate.el
log-edit.el
log-view.el
longlines.el
lpr.el
ls-lisp.el
macros.el
Makefile.in
makefile.w32-in
makesum.el
man.el
master.el
mb-depth.el
md4.el
menu-bar.el
midnight.el
minibuf-eldef.el
minibuffer.el
misc.el
misearch.el
mouse-copy.el
mouse-drag.el
mouse-sel.el
mouse.el
mpc.el
msb.el
mwheel.el
newcomment.el
novice.el
outline.el
paren.el
password-cache.el
patcomp.el
paths.el
pcmpl-cvs.el
pcmpl-gnu.el
pcmpl-linux.el
pcmpl-rpm.el
pcmpl-unix.el
pcomplete.el
pcvs-defs.el
pcvs-info.el
pcvs-parse.el
pcvs-util.el
pcvs.el
pgg-def.el
pgg-gpg.el
pgg-parse.el
pgg-pgp.el
pgg-pgp5.el
pgg.el
printing.el
proced.el
ps-bdf.el
ps-def.el
ps-mule.el
ps-print.el
ps-samp.el
README
recentf.el
rect.el
register.el
repeat.el
replace.el
reposition.el
reveal.el
rfn-eshadow.el
rot13.el
ruler-mode.el
s-region.el
savehist.el
saveplace.el
sb-image.el
scroll-all.el
scroll-bar.el
scroll-lock.el
select.el
server.el
ses.el
sha1.el
shadowfile.el
shell.el
simple.el
skeleton.el
smerge-mode.el
sort.el
soundex.el
speedbar.el
startup.el
strokes.el
subr.el
t-mouse.el
tabify.el
talk.el
tar-mode.el
tempo.el
term.el
terminal.el
thingatpt.el
thumbs.el
time-stamp.el
time.el
timezone.el
tmm.el
tool-bar.el
tooltip.el
tree-widget.el
tutorial.el
type-break.el
uniquify.el
userlock.el
vc-annotate.el
vc-arch.el
vc-bzr.el
vc-cvs.el
vc-dav.el
vc-dir.el
vc-dispatcher.el
vc-git.el
vc-hg.el
vc-hooks.el
vc-mtn.el
vc-rcs.el
vc-sccs.el
vc-svn.el
vc.el
vcursor.el
version.el
view.el
vt-control.el
vt100-led.el
w32-fns.el
w32-vars.el
wdired.el
whitespace.el
wid-browse.el
wid-edit.el
widget.el
windmove.el
window.el
winner.el
woman.el
x-dnd.el
xml.el
xt-mouse.el

This directory contains source code for the parts of Emacs that are
written in Emacs Lisp.  *.el files are Emacs Lisp source, and the
corresponding *.elc files are byte-compiled versions.  Byte-compiled
files are architecture-independent.

The term subdirectory contains Lisp files that customize Emacs for
certain terminal types.  When Emacs starts, it checks the TERM
environment variable to get the terminal type and loads
`term/${TERM}.el' if it exists.

The other subdirectories hold Lisp packages grouped by their general
purpose.