如何配置命令提示符以正确显示法语?


5

遵守以下代码片段:

PS Z:\dev\windows\nc\NC.ProtoBuf> hg help qimport
hg qimport [-e] [-n NOM] [-f] [-g] [-P] [-r REV]... FICHIER...

importe un patch

    Le patch est insÚrÚ dans la sÚrie Ó la suite du dernier patch appliquÚ. Si
    aucun patch n'a encore ÚtÚ appliquÚ, le patch sera ajoutÚ en tÛte de
    sÚrie.

    Le patch portera le mÛme nom que le fichier dont il provient, Ó moins
    qu'un autre nom ne soit spÚcifiÚ Ó l'aide de -n/--name.

    Vous pouvez enregistrer un patch dÚjÓ prÚsent dans le rÚpertoire de patchs
    Ó l'aide de l'option -e/--existing.

可以看到输出在此法语输出中被破坏了。例如,dÚjÓ应该是déjà。我同时使用cmd.exe和PowerShell-结果是相同的。

有什么方法可以配置命令提示符以正确渲染法语口音?

编辑

遵循https://superuser.com/users/52492/redgrittybrick的建议,我尝试使用PowerShell ISE-仍然没有爱:

_____________________________________________________________________________________
PS Z:\> hg help qimport
hg qimport [-e] [-n NOM] [-f] [-g] [-P] [-r REV]... FICHIER...

importe un patch

    Le patch est insÚrÚ dans la sÚrie Ó la suite du dernier patch appliquÚ.
    Si aucun patch n'a encore ÚtÚ appliquÚ, le patch sera ajoutÚ en tÛte de
    sÚrie.

    Le patch portera le mÛme nom que le fichier dont il provient, Ó moins
    qu'un autre nom ne soit spÚcifiÚ Ó l'aide de -n/--name.

    Vous pouvez enregistrer un patch dÚjÓ prÚsent dans le rÚpertoire de
    patchs Ó l'aide de l'option -e/--existing.

    Avec -f/--force, un patch dÚjÓ prÚsent du mÛme nom sera ÚcrasÚ.

编辑2

我非常确定,hg本身没有问题,因为当我将hg help qimport的输出重定向到文件并在编辑器中打开后者时,我会看到:

hg qimport [-e] [-n NOM] [-f] [-g] [-P] [-r REV]... FICHIER...

importe un patch

    Le patch est inséré dans la série à la suite du dernier patch appliqué.
    Si aucun patch n'a encore été appliqué, le patch sera ajouté en tête de
    série.

    Le patch portera le même nom que le fichier dont il provient, à moins
    qu'un autre nom ne soit spécifié à l'aide de -n/--name.

    Vous pouvez enregistrer un patch déjà présent dans le répertoire de
    patchs à l'aide de l'option -e/--existing.

    Avec -f/--force, un patch déjà présent du même nom sera écrasé.

这是完美的。


不是DOS提示。DOS是一个操作系统。
用户未知

看起来使用CP 852字体显示的8859-1(或CP 1252,未显示任何字符,但看不到字符,但是hg代码可能是ISO 8859-1)数据。
AProgrammer 2011年

@AProgrammer-我尝试了CP 1252和CP 852,结果均不令人满意。
标记

Answers:


4

尝试使用“ PowerShell ISE”而不是“ PowerShell”-它可以理解UTF-8和其他字符集。

在此处输入图片说明


更新:

问题

您看到的是Ú而不是é

分析

é在ISO 8859-1 Latin-1(和几种类似的编码)
中的代码点0xE9处Ú在代码页850的代码点0xE9处

因此,您的应用程序使用Latin-1编码发出文本。但是,您的控制台设置为代码页850。

使用chcp更改控制台编码,再加上适当编码的字体,最有可能解决该问题。


我可以重现该问题并通过更改命令提示符属性以将字体从“光栅”更改为“ Lucida Console”来解决。Raster字体具有Microsoft称为OEM编码的字体。

之前

后


我修改了我的帖子-仍然没有爱。
标记

看到修改后的答案,我知道您已经尝试过chcp,但是答案必须在那儿。
RedGrittyBrick 2011年

2
当然,将字体更改为Lucida并将代码页更改为1252可以达到目的。非常感谢你。
标记

3

尝试使用chcp命令更改代码页。例如:

C:\ chcp 1252

我说1252是因为这个家伙似乎在显示法语字符方面很成功。

如果可行,则还有另一个步骤,因为在每个命令提示符窗口中都会将其重置。我尚未对此进行测试,但是根据此站点,它将更改以后所有命令提示符窗口的代码页。

Start->Run->regedit
Go to [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
And change the "OEMCP" value to "1252"

ComputerHope.com上找到chcp命令


信息的+1,但是,更改为1252不能解决问题。
标记

也许您应该尝试其他一些代码。有人用852以上建议
罗伯特·

0

这不起作用:

@echo off
start "" "C:\Users\dmb3419\Documents\dev\ééééééééé"

这有效:

@echo off
chcp 1252
start "" "C:\Users\dmb3419\Documents\dev\ééééééééé"
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.