如何将F#Interactive控制台的输出限制为我自己的输出?
在我当前的设置中,fsi在脚本中运行时会写入大量信息(关于数据结构的类型和内容).我试过安静的模式没有成功.
谢谢!
您可以将ShowDeclarationValues,ShowProperties和ShowIEnumerable设置为false.
您仍然可以看到类型,但不是内容(通常是输出的大部分).
#if INTERACTIVE
fsi.ShowDeclarationValues <- false
fsi.ShowProperties <- false
fsi.ShowIEnumerable <- false
#endif
Run Code Online (Sandbox Code Playgroud)
另一种非常规方法可能如下:
在脚本中
eprintfn "Testing: %n" 123
Run Code Online (Sandbox Code Playgroud)
在 FSI 窗口
Testing: 123
Run Code Online (Sandbox Code Playgroud)
任何其他但真实的错误消息输出根本不会出现在 FSI 窗口中,包括所有评估结果;同时printf,您仍然可以使用所有便利,包括熟悉的格式。
更新:我发布了一个进一步的增强功能,允许对 FSI 输出的正常和“安静”模式使用不变的输出代码。