由于Modelica3.2 (2010年3月发布)允许在注释、描述字符串和/或注释中使用任意Unicode字符。
但是,由于某些原因,我在代码方面遇到了问题,如:
within ;
model ENCO_testing "code for investigating Dymola encoding problems"
Real TempC "Temperature in °C";
parameter Real someNumber "description string german üöäß";
Integer greekInt=4 "description string greek αβδεηζμθ";
// a comment with math symbols: °²³~µ
equation
TempC = if greekInt > 3 then someNumber*5 else someNumber/3;
end ENCO_testing;要重现我的问题,请尝试以下UTF-8往返:
有人能告诉我怎么保存这个文件吗?它到处看起来都很好吗?还是我期望太高了?有什么需要修复的,在哪里?
发布于 2015-05-21 14:06:29
在最新的Dymola (Linux)中测试UTF-8,似乎Dymola不再将编码更改为ISO-8859-1 (据我的记忆,它曾经改变了这一点)。但是,它看起来不太好,因为它的显示方式好像UTF-8文本是ISO的。
要让它在任何地方看起来都很好,最简单的方法是使用HTML实体。这在OMEdit的模拟结果浏览器中似乎没有正确显示,但在Dymola中却显示正确:
Real TempC "<html>Temperature in °C<html>";发布于 2015-05-21 14:07:52
是的,这绝对是戴莫拉缺乏UTF8支持的一个问题(甚至2016年)。那该怎么办呢?对于描述字符串,您可以使用html实体来解决Dymola缺乏UTF8支持的问题。
例如,
Real TempC "<html>Temperature in °C</html>";
parameter Real someNumber
"<html>description string german üöäß</html>";不是很好,但很好;-)
PS:啊,向DS抱怨这个早就该发布的功能了。
发布于 2015-11-25 17:05:15
在Dymola 2016 FD01 (字面意思是刚刚发布),您可以设置Advanced.PreferWritingLatin1=false;以避免编写iso-拉丁文1文件。
要获得支持,您应该使用http://www.3ds.com/support和/或与您的分销商联系;地址Dymola.support@3ds.com已经退役。
https://stackoverflow.com/questions/30372814
复制相似问题