emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Codepages and shell function on w32


From: Lennart Borgman (gmail)
Subject: Re: Codepages and shell function on w32
Date: Tue, 02 Jan 2007 16:39:14 +0100
User-agent: Thunderbird 1.5.0.9 (Windows/20061207)

Eli Zaretskii wrote:
Date: Mon, 01 Jan 2007 15:20:47 +0100
From: "Lennart Borgman (gmail)" <address@hidden>
CC: Jason Rumney <address@hidden>,  address@hidden

      (shell-mode)
      (when (eq system-type 'windows-nt)
        (let* ((shell-file-name prog)
               (proc (get-buffer-process (current-buffer)))
               (fullprog (executable-find prog))
               (cp-out (read (format "cp%s" (w32-get-console-output-codepage))))
               (cp-out-dos (coding-system-change-eol-conversion cp-out 'dos))
               (cp-out-unix (coding-system-change-eol-conversion cp-out 'unix))
               (cp-in  (read (format "cp%s" (w32-get-console-codepage))))
               (cp-in-dos (coding-system-change-eol-conversion cp-in 'dos))
               (cp-in-unix (coding-system-change-eol-conversion cp-in 'unix)))
          (cond
           ((w32-shell-dos-semantics)
            (set-process-coding-system proc cp-out-dos cp-in-unix))
           ((string-match "/msys/" fullprog)
            (message "think it is MSYS...")
            (set-process-coding-system proc cp-out-dos 'undecided-unix))
           ((string-match "/cygwin/" fullprog)
            (message "think it is Cygwin...")
            (set-process-coding-system proc cp-out-dos 'undecided-unix))
           (t
            (message "unrecognized shell program: %s" fullprog))
           )))))
  buffer)

Is this what you meant Eli?

Something like that, but I doubt that using cp-out with MSYS and
Cygwin is a good idea, since they don't support that.

The only reason to use cp-out-dos for MSYS and Cygwin is that this makes the output correct for w32 console programs they may run. However I do not know if it creates some problems since I do not know the char tables very well. Maybe it is better to just leave the coding system for MSYS and Cygwin as before?.

Do we agree about the cmdproxy part? How about installing that?






reply via email to

[Prev in Thread] Current Thread [Next in Thread]