我已经得到Fsi.exe在Mono的Mac OS X(雪豹)上按预期工作。我只是注意到剪切和粘贴的一些奇怪的行为,我想知道是否有人看到这一点。复制/粘贴到FSI的奇怪行为在Mac上
我已经定义了以下别名FSI:
alias fsi='ledit mono ~/FSharp-1.9.7.8_2/bin/fsi.exe --gui-'
ledit是Ocaml程序编写工具,它似乎正确地使键盘输入工作 - 没有它,FSI只是似乎永远不会读取输入。要明白我的意思,尽量不Fsi.exe和ledit进入
let square x = x * x;;
没有ledit,它只是似乎永远不会解析输入。我的意思是,输入字符串后,它永远不会回到“>”提示符。使用ledit,“>”提示立即返回。
当然的--gui-保持FSI从显示有关System.Drawing中缺乏等
所以,这一切似乎工作的所有消息。奇怪的是,当我将代码复制并粘贴到FSI中时,某些字符似乎一遍又一遍地重复。它似乎受到我粘贴的缓冲区大小的限制。当我粘贴小片段时,似乎没有问题。但是,如果我粘贴更大的块,这是奇怪的。
如果我做到以下几点:
open System.IO;;
然后粘贴在FSI这个代码片段:
let buildFileList basepath filespec =
seq {
yield! Directory.GetFiles(basepath, filespec, System.IO.SearchOption.AllDirectories)
}
这工作正常。但是,如果我复制并粘贴一个更大的代码块,它会重复该部分,直到收益率!一遍又一遍地。它似乎与fsi试图在代码被粘贴时解析代码有关,因为粘贴相同的代码会导致解析错误(如FS0010),当它粘贴到一个长块的末尾时,但不会导致错误它是孤立的。
如果我#加载整个文件,它解析正确,所以我认为我的代码是好的。
复制/粘贴中的这种奇怪现象似乎在命令行上有或没有ledit的情况下发生。我不介意自己研究这个问题,但我对我应该从哪里开始处理这件事感到困惑。我从GVim复制,如果这有所作为,但任何人有任何想法,我可以继续试图隔离这种奇怪的行为的原因?我想我可以先采取额外的步骤复制到TextEdit,然后尝试复制到fsi,但除此之外的任何想法?
至此底线:是否有人看到过这种奇怪的行为?如果没有,对于我如何着手试图隔离这种奇怪行为的原因有什么建议?
在http:// cs。hubfs.net/forums/thread/12999.aspx – Brian 2010-01-30 18:34:25
谢谢Brian。我意识到这是一个狭窄的问题,但我在两个地方张贴,希望得到我接下来可能检查的一些想法。这有点烦人,但不是世界末日。 – 2010-01-30 20:32:58