summaryrefslogtreecommitdiff
path: root/lisp/eshell/em-basic.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-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-01-27Support setting umask symbolically in EshellJim Porter
* lisp/eshell/em-basic.el (eshell/umask): Handle setting umask symbolically, and make setting umask take precedence over "-S". * test/lisp/eshell/em-basic-tests.el (em-basic-test/umask-print-numeric, em-basic-test/umask-read-symbolic, em-basic-test/umask-set): Rename to... (em-basic-test/umask/print-numeric) (em-basic-test/umask/print-symbolic, em-basic-test/umask/set-numeric): ... these. (em-basic-test/umask/set-symbolic, em-basic-test/umask/set-with-S): New tests. * etc/NEWS: Announce this change.
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-08-31Add debug instrumentation for Eshell process managementJim Porter
* lisp/eshell/esh-util.el (eshell-debug-command) * lisp/eshell/em-basic.el (eshell/eshell-debug) (pcomplete/eshell-mode/eshell-debug): Add 'process' type. * lisp/eshell/esh-proc.el (eshell-gather-process-output) (eshell-interactive-process-filter, eshell-insertion-filter) (eshell-sentinel): Call 'eshell-debug-command'. * test/lisp/eshell/eshell-tests-helpers.el (with-temp-eshell): Add 'process' to 'eshell-debug-command' (eshell-get-debug-logs): New function... (eshell-match-command-output, eshell-command-result-equal): ... use it. * doc/misc/eshell.texi (Built-ins): Mention "process" debug type.
2023-08-31Fix handling of Eshell debug modesJim Porter
Previously, these were enabled/disabled at byte-compilation time, but we want to control them at runtime. * lisp/eshell/esh-cmd.el (eshell-eval-command): Call 'eshell-debug-command-start'. (eshell-manipulate): Check 'eshell-debug-command' at runtime. Update callers. (eshell-debug-command): Move to "esh-util.el". (eshell/eshell-debug, pcomplate/eshell-mode/eshell-debug): Move to "em-basic.el". (eshell-debug-show-parsed-args): Update implementation. * lisp/eshell/esh-util.el (eshell-debug-command): Move from "esh-cmd.el" and convert to a list. (eshell-debug-command-buffer): New variable. (eshell-condition-case): Check 'eshell-handle-errors' at runtime. (eshell-debug-command-start): New function. (eshell-debug-command): Move from "esh-cmd.el" and convert to a macro. * lisp/eshell/em-basic.el (eshell/eshell-debug) (pcomplete/eshell-mode/eshell-debug): Move from "esh-cmd.el" and reimplement. * lisp/eshell/eshell.el (eshell-command): Pass the original input to 'eshell-eval-command'. * doc/misc/eshell.texi (Built-ins): Update documentation for 'eshell-debug'.
2023-02-15; Don't require 'eshell' in other Eshell filesJim Porter
This isn't necessary and just makes unloading Eshell harder. * lisp/eshell/em-banner.el: * lisp/eshell/em-basic.el: * lisp/eshell/em-cmpl.el: * lisp/eshell/em-glob.el: * lisp/eshell/em-prompt.el: * lisp/eshell/em-rebind.el: * lisp/eshell/em-smart.el: * lisp/eshell/em-term.el: * lisp/eshell/em-tramp.el: * lisp/eshell/em-xtra.el: Stop requiring 'eshell', and instead require specific subcomponents. * lisp/eshell/em-hist.el: Stop requiring 'eshell' and 'em-pred' (extension modules shouldn't require each other so they can be independent). (eshell-hist-parse-modifier): Ensure this can only be called when 'em-pred' is in use, and declare the relevant function. * lisp/eshell/eshell.el (eshell-non-interactive-p): Move from here... * lisp/eshell/esh-mode.el (eshell-non-interactive-p): ... to here.
2023-01-18Use proper types for Eshell warningsJim Porter
* lisp/eshell/esh-var.el (eshell-get-variable): * lisp/eshell/em-basic (eshell/echo): Don't use ':warning'; that's a warning level, not a warning type.
2023-01-01; Add 2023 to copyright years.Eli Zaretskii
2022-03-29Don't use 'eshell-convert' when all we want is a numberJim Porter
* lisp/eshell/em-hist.el (eshell/history): Use 'string-to-number' instead of 'eshell-convert'. * lisp/eshell/em-basic.el (eshell/umask): Simplify implementation and be more careful about parsing numeric umasks to set.
2022-01-21Raise an error from 'eval-eval-using-options' for unknown optionsJim Porter
* lisp/eshell/em-basic.el (eshell/echo): Add -E option. * lisp/eshell/esh-opt.el (eshell--process-option): Raise an error if an unknown option is encountered, even when :external is nil. * test/lisp/eshell/esh-opt-tests.el (esh-opt-process-args-test) (test-eshell-eval-using-options): Add test cases for this.
2022-01-20In Eshell, allow "-n" to suppress the trailing newline for "plain" echoJim Porter
* doc/misc/eshell.texi (Built-in commands): Expand on the documentation of echo (bug#27361). * lisp/eshell/em-basic.el (eshell-echo): Respect OUTPUT-NEWLINE even when 'eshell-plain-echo-behavior' is non-nil. (eshell/echo): Add "-N" option and recommend its use over "-n" in Lisp-friendly echo. (eshell/printnl): Simplify; 'eshell-stringify' is equivalent to calling 'eshell-echo' here.
2022-01-01; Add 2022 to copyright years.Eli Zaretskii
2021-09-14; More minor docfixes 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)".
2018-12-31Merge from origin/emacs-26Paul Eggert
2fcf2df Fix copyright years by hand 26bed8b Update copyright year to 2019 2814292 Fix value of default frame height. (Bug#33921)
2019-01-01Update copyright year to 2019Paul Eggert
Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
2018-12-17New function flatten-treeAlex Branham
Co-authored-by: Basil L. Contovounesios <contovob@tcd.ie> * doc/lispref/lists.texi: Document `flatten-tree'. * lisp/progmodes/js.el (js--maybe-join): * lisp/printing.el (pr-switches): * lisp/lpr.el (lpr-print-region): * lisp/gnus/nnimap.el (nnimap-find-wanted-parts): * lisp/gnus/message.el (message-talkative-question): * lisp/gnus/gnus-sum.el (gnus-remove-thread) (gnus-thread-highest-number, gnus-thread-latest-date): * lisp/eshell/esh-util.el (eshell-flatten-and-stringify): * lisp/eshell/esh-opt.el (eshell-eval-using-options): * lisp/eshell/esh-ext.el (eshell-external-command): * lisp/eshell/em-xtra.el (eshell/expr): * lisp/eshell/em-unix.el (eshell/rm, eshell-mvcpln-template) (eshell/cat, eshell/make, eshell-poor-mans-grep, eshell-grep) (eshell/du, eshell/time, eshell/diff, eshell/locate): * lisp/eshell/em-tramp.el (eshell/su, eshell/sudo): * lisp/eshell/em-term.el (eshell-exec-visual): * lisp/eshell/em-dirs.el (eshell-dirs-substitute-cd, eshell/cd): * lisp/eshell/em-basic.el (eshell/printnl): Use new flatten-tree. * lisp/progmodes/js.el (js--flatten-list): * lisp/lpr.el (lpr-flatten-list): * lisp/gnus/message.el (message-flatten-list): * lisp/eshell/esh-util.el (eshell-flatten-list): Obsolete in favor of Emacs-wide `flatten-tree'. * lisp/subr.el (flatten-list): Alias to `flatten-tree' for discoverability. * lisp/subr.el (flatten-tree): New defun. * test/lisp/subr-tests.el (subr-tests-flatten-tree): New test.
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.
2017-06-19; * lisp/eshell/em-basic.el: Fix commentary.Glenn Morris
This file has never provided any such "version" command.
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-05-22Silence many eshell compilation warningsGlenn Morris
* lisp/eshell/em-tramp.el: Adjust requires. (eshell-parse-command): Autoload. * lisp/eshell/em-xtra.el: Adjust requires. (eshell-parse-command): Autoload. * lisp/eshell/esh-ext.el: Adjust requires. (eshell-parse-command, eshell-close-handles): Autoload. * lisp/eshell/esh-io.el: Adjust requires. (eshell-output-filter): Autoload. * lisp/eshell/esh-util.el: No need to load tramp when compiling. (tramp-file-name-structure, ange-ftp-ls, ange-ftp-file-modtime): Declare. (eshell-parse-ange-ls): Require ange-ftp and tramp. * lisp/eshell/em-alias.el, lisp/eshell/em-banner.el, lisp/eshell/em-basic.el: * lisp/eshell/em-cmpl.el, lisp/eshell/em-glob.el, lisp/eshell/em-pred.el: * lisp/eshell/em-prompt.el, lisp/eshell/em-rebind.el, lisp/eshell/em-smart.el: * lisp/eshell/em-term.el, lisp/eshell/esh-arg.el, lisp/eshell/esh-mode.el: * lisp/eshell/esh-opt.el, lisp/eshell/esh-proc.el: * lisp/eshell/esh-var.el: Adjust requires. * lisp/eshell/eshell.el: Do not require esh-util twice. (eshell-add-input-to-history): Declare. (eshell-command): Check history module is active before using it.
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-01-24Convert consecutive FSF copyright years to ranges.Glenn Morris
2011-01-15Nuke arch-tags.Glenn Morris
2011-01-14Merge from emacs-23Stefan Monnier
2011-01-02Add 2011 to FSF/AIST copyright years.Glenn Morris
2010-09-25Cosmetic doc fixes for eshell.Glenn Morris
* eshell/em-alias.el, eshell/em-banner.el, eshell/em-basic.el: * eshell/em-cmpl.el, eshell/em-dirs.el, eshell/em-glob.el: * eshell/em-hist.el, eshell/em-ls.el, eshell/em-pred.el: * eshell/em-prompt.el, eshell/em-rebind.el, eshell/em-script.el: * eshell/em-smart.el, eshell/em-term.el, eshell/em-unix.el: * eshell/esh-cmd.el, eshell/esh-ext.el, eshell/esh-io.el: * eshell/esh-mode.el, eshell/esh-proc.el, eshell/esh-test.el: * eshell/esh-util.el, eshell/esh-var.el: Remove leading `*' from docs of faces and defcustoms.
2010-03-22Fix typos in docstrings.Juanma Barranquero
* image-dired.el (image-dired-display-thumbs): Fix typo in docstring. (image-dired-read-comment): Doc fix. * json.el (json-object-type, json-array-type, json-key-type, json-false) (json-null, json-read-number): * minibuffer.el (completion-in-region-functions): * calendar/cal-tex.el (cal-tex-daily-end, cal-tex-number-weeks) (cal-tex-cursor-week): * emacs-lisp/trace.el (trace-function): * eshell/em-basic.el (eshell/printnl): * eshell/em-dirs.el (eshell-last-dir-ring, eshell-parse-drive-letter) (eshell-read-last-dir-ring, eshell-write-last-dir-ring): * obsolete/levents.el (allocate-event, event-key, event-object) (event-point, event-process, event-timestamp, event-to-character) (event-window, event-x, event-x-pixel, event-y, event-y-pixel): * textmodes/reftex-vars.el (reftex-index-macros-builtin) (reftex-section-levels, reftex-auto-recenter-toc, reftex-toc-mode-hook) (reftex-cite-punctuation, reftex-search-unrecursed-path-first) (reftex-highlight-selection): Fix typos in docstrings.
2010-01-13Add 2010 to copyright years.Glenn Morris
2009-01-05Add 2009 to copyright years.Glenn Morris
2008-05-21Require eshell, for eshell-defgroup.Glenn Morris
Use eshell-defgroup rather than defgroup. Autoload the custom group. Set generated-autoload-file.
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. Move provide statement to end. Move any commentary to start. (print-func): No need to define for compiler.
2007-07-25Switch license to GPLv3 or later.Glenn Morris
2007-01-21Add 2007 to copyright years.Glenn Morris