all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Noam Postavsky <npostavs@users.sourceforge.net>
To: 28568@debbugs.gnu.org
Cc: Tobias Zawada <i_inbox@tn-home.de>,
	Jay Kamat <jaygkamat@gmail.com>,
	Michael Albinus <michael.albinus@gmx.de>
Subject: bug#28568: 26.0.60; [eshell] Incompatible change in alias argument handling
Date: Sat, 23 Sep 2017 09:21:47 -0400	[thread overview]
Message-ID: <87a81lo8ic.fsf_-_@users.sourceforge.net> (raw)
In-Reply-To: <87r2uxlt6o.fsf@gmx.de> (Michael Albinus's message of "Sat, 23 Sep 2017 10:23:27 +0200")


> Jay Kamat <jaygkamat@gmail.com> writes:
>
>> It seems that the fix to
>> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27954 (commit
>> e66e81679c3c91d6bf8f62c7abcd968430b4d1fe) caused this issue. I had an
>> eshell alias defined as
>>
>> alias sudo eshell/sudo $*
>>
>> Which seems to no longer work (with the error described).

Right.  The problem is that the arguments are now getting submitted twice.

sudo ls -> {{eshell/sudo $*}} ls -> eshell/sudo ls ls

I'm thinking we should probably revert the fix for Bug#27954; the
comments at the top of em-alias.el explicitly say using '$*' (and '$1',
'$2') in the alias definition is the supported way to handle arguments.

;;;_* Creating aliases
;;
;; The user interface is simple: type 'alias' followed by the command
;; name followed by the definition.  Argument references are made
;; using '$1', '$2', etc., or '$*'.  For example:
;;
;;   alias ll 'ls -l $*'
;;
;; This will cause the command 'll NEWS' to be replaced by 'ls -l
;; NEWS'.  This is then passed back to the command parser for
;; reparsing.{Only the command text specified in the alias definition
;; will be reparsed.  Argument references (such as '$*') are handled
;; using variable values, which means that the expansion will not be
;; reparsed, but used directly.}

The manual is a bit inconsistent about it, with `(eshell) Built-ins'
suggesting

    alias sudo '*sudo $*'

and `(eshell) Aliases' suggesting

    alias ll ls -l

I think this just means we should correct the `(eshell) Aliases' page.


Michael Albinus <michael.albinus@gmx.de> writes:

> There's also bug#28320, which seems to report the same problem.

No, that is a different problem, I've opened a new bug for this one.





  reply	other threads:[~2017-09-23 13:21 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-22  6:59 Possible Eshell/Tramp Bug in Emacs 26 Jay Kamat
2017-09-22 20:17 ` Jay Kamat
2017-09-23  8:23   ` bug#28320: " Michael Albinus
2017-09-23 13:21     ` Noam Postavsky [this message]
2017-09-23 14:55     ` bug#28568: 26.0.60; [eshell] Incompatible change in alias argument handling (Was: Possible Eshell/Tramp Bug in Emacs 26) Noam Postavsky
2017-09-27  4:28       ` bug#28568: 26.0.60; [eshell] Incompatible change in alias argument handling Jay Kamat
2017-09-27 12:55         ` Noam Postavsky
2017-09-30  1:45           ` Noam Postavsky
2017-09-30  8:06             ` Eli Zaretskii
2017-10-01  0:12               ` Noam Postavsky

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87a81lo8ic.fsf_-_@users.sourceforge.net \
    --to=npostavs@users.sourceforge.net \
    --cc=28568@debbugs.gnu.org \
    --cc=i_inbox@tn-home.de \
    --cc=jaygkamat@gmail.com \
    --cc=michael.albinus@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.