本人在win10下折腾sdcv.el的查词典功能,想通过cygwin下编译的sdcv查词典,现在遇到以下问题,请各位大神指点:调用sdcv-search-input函数时,跳出”‘LANG’ 不是内部或外部命令,也不是可运行的程序或批处理文件。“的错误, 我查询到sdcv.el中关于LANG的使用共两处, (format “LANG=en_US.UTF-8 %s --list-dicts --data-dir=%s” sdcv-program sdcv-dictionary-data-dir))) 以及 (format “LANG=en_US.UTF-8 %s -n %s %s --data-dir=%s”,上网查了下,了解到这个LANG应该是linux下定义的环境变量,那么现在在windows的cygwin下,该如何解决这一问题,设置环境变量么?该怎么设置?
如果Windows设置环境变量的方法找到后, 可以给我发补丁, 我可以合并到 sdcv.el diamante中.
我又看了下代码,突然明白问题应该不是环境变量的问题,而是shell中执行命令的问题,我对linux中的命令不熟悉,猜测LANG=en_US.UTF-8这一句是用命令的方式设置字符编码为utf-8,在windows中却没有这样的命令,但如果不使用这一命令,又会导致代码为乱码,从而使得shell无法执行这一命令,不知道是不是这样
你只需要研究怎么让 Elisp 可以在Windows设置字符编码, 然后我就可以在 sdcv.el Windows 平台分支加代码修复这个问题.
我不用Windows很多年, 要靠你自己了.
我只是个小菜鸟一枚,只能尽力而为啦
把LANG=en_US.UTF-8去掉试试
如果有cygwin或msys2,可以用env LANG=en_US.UTF-8
纯cmd的不是很清楚,也许是set LANG=en_US.UTF-8 &……