gpt4 book ai didi

unicode - 如何在 Lisp(sbcl+slime) 中打开名称包含 unicode 代码的文件?

转载 作者:行者123 更新时间:2023-12-03 20:56:49 26 4
gpt4 key购买 nike

(with-open-file (s "~/例子.txt"
:external-format :utf-8)
(print s))

结果:
NIL c-string encoding error:
the character with code 20363 cannot be encoded.
[Condition of type SB-INT:C-STRING-ENCODING-ERROR]

例子:

在带有最新史莱姆和 sbcl2.0.2 的 Aquamacs 3.5 中:
in Aquamacs3.5 with slime & sbcl

iterm2 中的 sbcl 可以做到:

in iterm2

Aquamacs 本身也可以正确打开和写入包含 utf-8 的文件名。

我试图添加
(setq slime-net-coding-system 'utf-8-unix)
(set-language-environment "UTF-8")

在我的 aquamacs 配置文件中,但它不起作用。
请帮忙!

更新:
我终于找到了原因。
在 Iterm2 中,命令
locale

给出这个输出:
enter image description here

在 Aquamacs 中从 ui 打开时,在 eshell 中它给出:

Result from eshell

在我添加后:
(setenv "LANG" "en_US.UTF-8")

到我的 Aquamacs 配置,它有效!
感谢所有回答我问题的人!
以下是对我有帮助的链接。

What the question exactly is

Resolutions to the question

How to set locale for Emacs open from UI

最佳答案

添加如下内容:

(setenv "LANG" "en_US.UTF-8")

到您的 emacs 配置。
解释在上面。

关于unicode - 如何在 Lisp(sbcl+slime) 中打开名称包含 unicode 代码的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60621647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com