all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Daniel Bastos <dbastos@toledo.com>
To: help-gnu-emacs@gnu.org
Subject: Re: on eshell's encoding
Date: Tue, 02 Aug 2016 10:24:32 -0300	[thread overview]
Message-ID: <8637mnwbfz.fsf@toledo.com> (raw)
In-Reply-To: mailman.2119.1469636078.26859.help-gnu-emacs@gnu.org

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Daniel Bastos <dbastos@toledo.com>
>> Date: Wed, 27 Jul 2016 08:56:31 -0300
>> 
>> >> You're right.  This is MS-Windows.  But I thought MS-Windows would not
>> >> interfere here.  Why does it interfere?  I thought the messages would go
>> >> straight into git's ARGV.
>> >
>> > How can it go "straight"?  
>> 
>> I meant not being messed with.  I don't know anything about MS-Windows.
>> In UNIX the creation of a new process by a shell is likely to call
>> execve, which won't touch the caller strings passed in through the
>> argv-argument.
>
> Like I said, Eshell is not a shell, it just pretends to be one.  It
> will eventually cause execve, or something like it, to be called, but
> before it, the command-line arguments will be encoded in the locale's
> encoding, since that's what execve expects.  This is true on Windows
> and on Unix alike.  

That's true of EMACS.  You're saying EMACS always encodes the command
line arguments.  But what I said about UNIX is that whatever execve
receives in argv[] will remain as such, which apparently is not the
MS-Windows behavior.

Precisely: if on UNIX I use EMACS to call /program/ with argv[] encoded
in X, then /program/ will definitely receive its argv[] as prepared by
EMACS.  That does not happen on MS-Windows.  EMACS encodes the command
line in utf-8, but /program/ receives it in another encoding.

This surprises me.  MS-Windows should not care what a program puts in
argv[].  I think it violates an important principle: an operating system
should help programs to communicate, but it should not care what they're
saying to each other.  That's an important principle UNIX has given us.

Even if I'm not totally correct now, I'm certainly better educated.
Thank you.


  parent reply	other threads:[~2016-08-02 13:24 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-26 14:25 on eshell's encoding Daniel Bastos
2016-07-26 15:05 ` Eli Zaretskii
     [not found] ` <mailman.2058.1469545530.26859.help-gnu-emacs@gnu.org>
2016-07-26 16:49   ` Daniel Bastos
2016-07-26 17:17     ` Eli Zaretskii
2016-07-26 18:26       ` Yuri Khan
2016-07-26 18:35         ` Eli Zaretskii
     [not found]     ` <mailman.2074.1469553449.26859.help-gnu-emacs@gnu.org>
2016-07-27 11:56       ` Daniel Bastos
2016-07-27 13:15         ` Yuri Khan
2016-07-27 16:22           ` Eli Zaretskii
2016-07-27 16:47             ` Yuri Khan
2016-07-27 17:12               ` Eli Zaretskii
2016-07-27 16:14         ` Eli Zaretskii
     [not found]         ` <mailman.2119.1469636078.26859.help-gnu-emacs@gnu.org>
2016-08-02 13:24           ` Daniel Bastos [this message]
2016-08-02 15:12             ` Eli Zaretskii

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=8637mnwbfz.fsf@toledo.com \
    --to=dbastos@toledo.com \
    --cc=help-gnu-emacs@gnu.org \
    /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.