将代码从Mathematica复制到其他平台的已知问题?

| 我只是注意到,如果您在MMA(8.0.1 / win7-64)中具有此功能:    然后将其复制到SO(仅ctrl-c ctrl-v),您将得到以下信息:
(maxY - minY)/stepy/(maxX - minX)/stepx  
这在数学上不是等效的。应该是这样的:
((maxY - minY)/stepy)/((maxX - minX)/stepx)
或这个(上面的
InputForm
):
((maxY - minY)*stepx)/((maxX - minX)*stepy)
这不是由StackOverflow内部造成的,与复制到NotePad的情况相同。 还有更多应注意的问题(尤其是在使用SO时,但一般而言)? 是什么原因造成的,可以将它固定在我们这边吗?如果没有,最好的解决方法是什么?     
已邀请:
将Mathematica代码复制到Usenet Mathematica组有时会在您的代码中分散各种奇怪的字符(您永远不知道什么时候会发生这种情况)。解决方法是:
Cell > Convert To > InputForm
,然后复制
Edit > Copy As > Plain Text
Input Text
在这种情况下,后者不起作用。从数学上来说,这仍然是不正确的转换。前者似乎确实起作用。 更新资料 如果您在Mathematica新闻组的帖子中遇到过奇怪的字符(例如,如此处所示),则以下函数将对其进行解码(在我测试过的所有情况下)。
translateQuotedPrintable[str_String] := 
  StringReplace[str, {\"=\" ~~ c1:HexadecimalCharacter~~c2:HexadecimalCharacter :> 
    FromCharacterCode[FromDigits[c1 <> c2, 16], \"Math1\"],\"=\" ~~ EndOfLine -> \"\"}]
只需将整个帖子粘贴在ѭ8中的引号之间,帖子就会被清理。 出于好奇:您可能会在这些Usenet帖子中看到的编码称为Quoted Printable。它用于将不同于标准7位ASCII设置的字符编码转换为ASCII。如果以前未通过
InputForm
cs转换为ASCII,则许多常见的MMA符号(如规则符号)都将以这种方式进行编码。要解码代码,需要知道原始字符集,因为QP仅产生字符集中的十六进制位置。在MMA的情况下,这通常是Math1。     
将示例复制到电子邮件还失败了,并且,如果它可以继承到其他示例,则对于Mathgroup,SO和任何其他基于文本的讨论论坛来说,这似乎非常糟糕。 “复制为”>“纯文本”和“复制为”>“输入表单”都可以正常工作,但是我已经以数千次简单的方式完成了此操作,并且从未知道它不会以这种方式失败,而没有奇怪的十六进制字符。     
这是一个很好的例子,说明如何设置MMA来解决排版中引入的数学歧义。 (+1) 失败的原因是您尚未评估原始表达式。在评估时,Mathematica会正确解析两个块之间的\“ / \”,并且可以复制并粘贴输出(正确)。 也许WRI应该这样做,以便'Copy'强制解析机制在剪切表达式之前进行,即某种'soft'评估。有什么想法吗?     

要回复问题请先登录注册