summaryrefslogtreecommitdiff
path: root/lisp/eshell/esh-module.el
AgeCommit message (Collapse)Author
2026-01-01; Add 2026 to copyright years.Sean Whitton
2025-01-01Update copyright year to 2025Paul Eggert
Run "TZ=UTC0 admin/update-copyright".
2024-07-08Checkdoc fixes in `eshell/*.el`Stefan Kangas
* lisp/eshell/em-elecslash.el: * lisp/eshell/em-extpipe.el: * lisp/eshell/em-pred.el (eshell-get-delimited-modifier-argument): * lisp/eshell/esh-cmd.el (eshell--unmark-deferrable) (eshell-named-command-hook): * lisp/eshell/esh-module.el (eshell-module--feature-name): * lisp/eshell/esh-util.el (eshell-find-delimiter): Checkdoc fixes.
2024-05-29Use 'esh-module-autoload' for Eshell modules' defgroupsJim Porter
This will let modules define their own, regular autoloads, independent of the core Eshell machinery for defining modules. * lisp/eshell/em-alias.el (em-alias): * lisp/eshell/em-banner.el (em-banner): * lisp/eshell/em-basic.el (em-basic): * lisp/eshell/em-cmpl.el (em-cmpl): * lisp/eshell/em-dirs.el (em-dirs): * lisp/eshell/em-elecslash.el (em-elecslash): * lisp/eshell/em-extpipe.el: * lisp/eshell/em-glob.el (em-glob): * lisp/eshell/em-hist.el (em-hist): * lisp/eshell/em-ls.el (em-ls): * lisp/eshell/em-pred.el (em-pred): * lisp/eshell/em-prompt.el (em-prompt): * lisp/eshell/em-rebind.el (em-rebind): * lisp/eshell/em-script.el (em-script): * lisp/eshell/em-smart.el (em-smart): * lisp/eshell/em-term.el (em-term): * lisp/eshell/em-tramp.el (em-tramp): * lisp/eshell/em-unix.el (em-unix): * lisp/eshell/em-xtra.el (em-xtra): Use 'esh-module-autoload'. * lisp/eshell/esh-module.el ("esh-module-loaddefs"): Load this instead of "esh-groups". * .gitignore: Change esh-groups.el to esh-module-loaddefs.el
2024-05-29Consolidate Eshell module loading/unloading codeJim Porter
This also adds the ability to suppress module loading/unloading messages, which will be necessary to support running Eshell scripts as batch scripts. * lisp/eshell/esh-mode.el (eshell-mode): Move module loading/initialization to... * lisp/eshell/esh-module.el (eshell-load-modules) (eshell-initialize-modules): ... here. (eshell-module-loading-messages): New option. (eshell-module--feature-name): Improve docstring. (eshell-unload-modules): Display a real warning if unable to unload a module. * test/lisp/eshell/eshell-tests-helpers.el (with-temp-eshell) (eshell-command-result-equal): * test/lisp/eshell/eshell-tests-unload.el (load-eshell): Silence Eshell loading messages.
2024-01-02Merge from savannah/emacs-29Po Lu
dc4e6b13296 ; Update copyright years in more files 64b37776318 ; Run set-copyright from admin.el 8e1c56ae467 ; Add 2024 to copyright years # Conflicts: # doc/misc/modus-themes.org # doc/misc/texinfo.tex # etc/NEWS # etc/refcards/ru-refcard.tex # etc/themes/modus-operandi-theme.el # etc/themes/modus-themes.el # etc/themes/modus-vivendi-theme.el # lib/alloca.in.h # lib/binary-io.h # lib/c-ctype.h # lib/c-strcasecmp.c # lib/c-strncasecmp.c # lib/careadlinkat.c # lib/cloexec.c # lib/close-stream.c # lib/diffseq.h # lib/dup2.c # lib/filemode.h # lib/fpending.c # lib/fpending.h # lib/fsusage.c # lib/getgroups.c # lib/getloadavg.c # lib/gettext.h # lib/gettime.c # lib/gettimeofday.c # lib/group-member.c # lib/malloc.c # lib/md5-stream.c # lib/md5.c # lib/md5.h # lib/memmem.c # lib/memrchr.c # lib/nanosleep.c # lib/save-cwd.h # lib/sha1.c # lib/sig2str.c # lib/stdlib.in.h # lib/strtoimax.c # lib/strtol.c # lib/strtoll.c # lib/time_r.c # lib/xalloc-oversized.h # lisp/auth-source-pass.el # lisp/emacs-lisp/lisp-mnt.el # lisp/emacs-lisp/timer.el # lisp/info-look.el # lisp/jit-lock.el # lisp/loadhist.el # lisp/mail/rmail.el # lisp/net/ntlm.el # lisp/net/webjump.el # lisp/progmodes/asm-mode.el # lisp/progmodes/project.el # lisp/progmodes/sh-script.el # lisp/textmodes/flyspell.el # lisp/textmodes/reftex-toc.el # lisp/textmodes/reftex.el # lisp/textmodes/tex-mode.el # lisp/url/url-gw.el # m4/alloca.m4 # m4/clock_time.m4 # m4/d-type.m4 # m4/dirent_h.m4 # m4/dup2.m4 # m4/euidaccess.m4 # m4/fchmodat.m4 # m4/filemode.m4 # m4/fsusage.m4 # m4/getgroups.m4 # m4/getloadavg.m4 # m4/getrandom.m4 # m4/gettime.m4 # m4/gettimeofday.m4 # m4/gnulib-common.m4 # m4/group-member.m4 # m4/inttypes.m4 # m4/malloc.m4 # m4/manywarnings.m4 # m4/mempcpy.m4 # m4/memrchr.m4 # m4/mkostemp.m4 # m4/mktime.m4 # m4/nproc.m4 # m4/nstrftime.m4 # m4/pathmax.m4 # m4/pipe2.m4 # m4/pselect.m4 # m4/pthread_sigmask.m4 # m4/readlink.m4 # m4/realloc.m4 # m4/sig2str.m4 # m4/ssize_t.m4 # m4/stat-time.m4 # m4/stddef_h.m4 # m4/stdint.m4 # m4/stdio_h.m4 # m4/stdlib_h.m4 # m4/stpcpy.m4 # m4/strnlen.m4 # m4/strtoimax.m4 # m4/strtoll.m4 # m4/time_h.m4 # m4/timegm.m4 # m4/timer_time.m4 # m4/timespec.m4 # m4/unistd_h.m4 # m4/warnings.m4 # nt/configure.bat # nt/preprep.c # test/lisp/register-tests.el
2024-01-02; Add 2024 to copyright yearsPo Lu
2023-02-15Allow unloading EshellJim Porter
* lisp/eshell/em-extpipe.el (eshell-extpipe): * lisp/eshell/esh-opt.el (eshell-opt): New groups. Eshell uses these to identify modules to unload. * lisp/eshell/em-hist.el (eshell-hist-unload-hook): * lisp/eshell/em-ls.el (eshell-ls-unload-hook): * lisp/eshell/em-smart.el (eshell-smart-unload-hook): * lisp/eshell/eshell.el (eshell-unload-hook): Make obsolete and move to... * lisp/eshell/em-smart.el (em-smart-unload-function): * lisp/eshell/em-hist.el (em-hist-unload-function): * lisp/eshell/em-ls.el (em-ls-unload-function): * lisp/eshell/eshell.el (eshell-unload-function): ... these. * lisp/eshell/esh-mode.el (eshell-mode-unload-hook): * lisp/eshell/esh-module.el (eshell-module-unload-hook): Make obsolete. * lisp/eshell/em-ls (eshell-ls-enable-in-dired, eshell-ls-disable-in-dired): New functions... (eshell-ls-use-in-dired): ... use them. * lisp/eshell/esh-module.el (eshell-module--feature-name, eshell-unload-modules): New functions. (eshell-unload-extension-modules): Use 'eshell-unload-modules'. * lisp/eshell/eshell.el (eshell-unload-all-modules): Remove. * test/lisp/eshell/eshell-tests-unload.el: New file. * doc/misc/eshell.texi (Bugs and ideas): Remove item about unloading Eshell not working. * etc/NEWS: Announce this change (bug#61501).
2023-01-01; Add 2023 to copyright years.Eli Zaretskii
2022-01-24Add Eshell syntax to more easily bypass Eshell's own pipeliningSean Whitton
* etc/NEWS: * doc/misc/eshell.texi (Input/Output): Document the new syntax. * lisp/eshell/em-extpipe.el: New module (Bug#46351). * test/lisp/eshell/em-extpipe-tests.el: New tests. * lisp/eshell/esh-module.el (eshell-modules-list): Add `eshell-extpipe'.
2022-01-01; Add 2022 to copyright years.Eli Zaretskii
2021-09-19; Stylistic docfixes in eshell/*.el found by checkdocStefan Kangas
2021-01-01Update copyright year to 2021Paul Eggert
Run "TZ=UTC0 admin/update-copyright".
2020-11-16Don't quote lambdas in eshell/*.elStefan Kangas
* lisp/eshell/em-basic.el (eshell-echo): * lisp/eshell/em-cmpl.el (eshell-command-completion-function) (eshell-default-completion-function, eshell-cmpl-initialize) (eshell-complete-parse-arguments, eshell-complete-commands-list): * lisp/eshell/em-dirs.el (eshell-complete-user-reference): * lisp/eshell/em-hist.el (eshell-hist-unload-hook) (eshell-hist-initialize): * lisp/eshell/em-ls.el (eshell-ls-sort-entries): * lisp/eshell/em-pred.el (eshell-modifier-alist) (eshell-display-predicate-help, eshell-display-modifier-help) (eshell-pred-substitute, eshell-split-members): * lisp/eshell/em-prompt.el (eshell-prompt-function): * lisp/eshell/em-smart.el (eshell-smart-unload-hook) (eshell-smart-initialize, eshell-refresh-windows): * lisp/eshell/em-unix.el (eshell-shuffle-files): * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): * lisp/eshell/esh-cmd.el (eshell-cmd-initialize) (eshell-parse-command): * lisp/eshell/esh-mode.el (eshell-preinput-scroll-to-bottom) (eshell-postoutput-scroll-to-bottom): * lisp/eshell/esh-module.el (eshell-modules-list): * lisp/eshell/esh-proc.el (eshell-read-process-name) (eshell-round-robin-kill): * lisp/eshell/esh-var.el (eshell-envvar-names) (eshell-variables-list): Don't quote lambdas.
2020-01-01Update copyright year to 2020Paul Eggert
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2019-04-08Eshell: Try to untangle the dependencies; move 'provide's to the endStefan Monnier
* lisp/eshell/esh-arg.el: Move defsubst and vars before first use. Don't require `esh-mode but esh-util instead. * lisp/eshell/esh-cmd.el: Require esh-module and esh-io. * lisp/eshell/esh-ext.el: Don't require esh-proc nor esh-cmd. (eshell-external-command): Require esh-proc for eshell-gather-process-output. * lisp/eshell/esh-mode.el: Don't require esh-io nor esh-var, but require esh-arg. (eshell-directory-name): Move from eshell.el. * lisp/eshell/esh-module.el: Don't require eshell. * lisp/eshell/esh-opt.el: Don't require esh-ext at top-level. (eshell--do-opts, eshell-show-usage): Require it here instead. * lisp/eshell/esh-proc.el: Don't require esh-cmd, but require esh-io. (eshell-reset-after-proc, eshell-record-process-object) (eshell-gather-process-output, eshell-send-eof-to-process): Require esh-mode and esh-var here. * lisp/eshell/esh-var.el: Require esh-module, esh-arg, and esh-io. * lisp/eshell/eshell.el: Require esh-module, esh-proc, esh-io, and esh-cmd. But don't require esh-mode. (eshell-directory-name): Move to esh-mode. (eshell-return-exits-minibuffer): Don't bind 'return' and 'M-return' since we already bind RET and M-RET.
2019-01-01Update copyright year to 2019Paul Eggert
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2018-01-01Update copyright year to 2018Paul Eggert
Run admin/update-copyright.
2017-09-13Prefer HTTPS to FTP and HTTP in documentationPaul Eggert
Most of this change is to boilerplate commentary such as license URLs. This change was prompted by ftp://ftp.gnu.org's going-away party, planned for November. Change these FTP URLs to https://ftp.gnu.org instead. Make similar changes for URLs to other organizations moving away from FTP. Also, change HTTP to HTTPS for URLs to gnu.org and fsf.org when this works, as this will further help defend against man-in-the-middle attacks (for this part I omitted the MS-DOS and MS-Windows sources and the test tarballs to keep the workload down). HTTPS is not fully working to lists.gnu.org so I left those URLs alone for now.
2016-12-31Update copyright year to 2017Paul Eggert
Run admin/update-copyright.
2016-01-01Update copyright year to 2016Paul Eggert
Run admin/update-copyright.
2015-01-01Update copyright year to 2015Paul Eggert
Run admin/update-copyright.
2014-01-01Update copyright year to 2014 by running admin/update-copyright.Paul Eggert
2013-09-12* lisp/eshell/*.el: Use lexical-binding.Stefan Monnier
* test/automated/eshell.el: Move from test/eshell.el. (eshell-test/for-loop, eshell-test/for-name-loop): New tests. Fixes: debbugs:15231
2013-01-01Update copyright notices for 2013.Paul Eggert
2012-06-27Replace eshell-defgroup with plain defgroupGlenn Morris
Borrowing a trick from vc-sccs.el, wrap the defgroup in a progn so that the whole thing ends up in the generated autoload file, esh-groups.el. * em-alias.el, em-banner.el, em-basic.el, em-cmpl.el, em-dirs.el: * em-glob.el, em-hist.el, em-ls.el, em-pred.el, em-prompt.el: * em-rebind.el, em-script.el, em-smart.el, em-term.el, em-unix.el: * em-xtra.el: Replace eshell-defgroup with (progn (defgroup. * eshell.el (eshell-defgroup): Remove alias.
2012-01-05Add 2012 to FSF copyright years for Emacs filesGlenn Morris
2011-03-04esh-module doc fixes.Glenn Morris
* lisp/eshell/esh-module.el (eshell-module-unload-hook) (eshell-modules-list): Remove leading * from defcustom docs.
2011-03-04Make eshell-for obsolete (replaced by dolist)Glenn Morris
* eshell/esh-util.el (eshell-for): Make it obsolete. * eshell/em-alias.el (eshell/alias, eshell-alias-completions): * eshell/em-dirs.el (eshell-save-some-last-dir): * eshell/em-hist.el (eshell-save-some-history, eshell-hist-parse-modifier): * eshell/em-ls.el (eshell-ls-dir, eshell-ls-files, eshell-ls-entries): * eshell/em-unix.el (eshell/cat, eshell/du, eshell/su): * eshell/esh-cmd.el (eshell-invoke-directly, eshell-do-eval, eshell/which): * eshell/esh-ext.el (eshell-find-interpreter): * eshell/esh-mode.el (eshell-mode): * eshell/esh-module.el (eshell-unload-extension-modules): * eshell/esh-proc.el (eshell-process-interact): * eshell/esh-test.el (eshell-test): * eshell/esh-util.el (eshell-flatten-list, eshell-winnow-list): * eshell/esh-var.el (eshell/env, eshell-environment-variables) (eshell-variables-list): * eshell/eshell.el (eshell-unload-all-modules): Replace eshell-for with dolist.
2011-01-24Convert consecutive FSF copyright years to ranges.Glenn Morris
2011-01-15Nuke arch-tags.Glenn Morris
2011-01-02Add 2011 to FSF/AIST copyright years.Glenn Morris
2010-01-13Add 2010 to copyright years.Glenn Morris
2009-11-04* calendar/calendar.el (cal-loaddefs):Juanma Barranquero
* calendar/diary-lib.el (diary-loaddefs): * calendar/holidays.el (hol-loaddefs): * eshell/esh-module.el (esh-groups): * mh/mh-e.el (mh-loaddefs): Load rather than require.
2009-01-05Add 2009 to copyright years.Glenn Morris
2008-05-21No need for cl when compiling.Glenn Morris
Require eshell, for eshell-defgroup. (eshell-load-defgroups): Remove. Require esh-groups rather than loading it.
2008-05-06Switch to recommended form of GPLv3 permissions notice.Glenn Morris
2008-04-10Fix up comment convention on the arch-tag lines.Stefan Monnier
2008-01-08Merge from emacs--rel--22Miles Bader
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-987
2008-01-07Add 2008 to copyright years.Glenn Morris
2007-12-05Require individual files if needed when compiling, rather thanGlenn Morris
esh-maint. Collect any require statements. Leave provide at start. Move any commentary to start. (eshell-load-defgroups): Eval and compile.
2007-11-17(eshell-load-defgroups): Don't make backups when saving esh-groups.el.Eli Zaretskii
2007-07-25Switch license to GPLv3 or later.Glenn Morris
2007-01-21Add 2007 to copyright years.Glenn Morris
2006-02-06Update years in copyright notice; nfc.Thien-Thi Nguyen
2005-08-01Update years in copyright notice; nfc.Thien-Thi Nguyen
2005-07-04Update FSF's address.Lute Kamstra
2004-06-11Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-397Miles Bader
Work around vc-arch problems when building eshell 2004-06-10 Miles Bader <miles@gnu.ai.mit.edu> * lisp/eshell/esh-module.el (eshell-load-defgroups): Bind `vc-handled-backends' to nil when opening files.
2003-09-01Add arch taglinesMiles Bader
2002-10-01Add "no-byte-compile: t" to subdirs.el.Juanma Barranquero