首先是内置文档,也是我自己的代码。
具体来说,我希望获得类似于python的信息,你可以在方法或对象上调用help()来获取有关打印到repl中的对象的信息。
答案 0 :(得分:21)
Scaladocs是以HTML格式生成的,因此您不希望它们出现在REPL窗口中。但是,您可能希望从REPL在浏览器中加载文档。您可以通过创建自己的方法来实现这一点(这个方法需要一个实例;如果您愿意,可以使用Class[A]
的实例):
def viewdoc[A](a: A) {
val name = a.asInstanceOf[AnyRef].getClass.getName
val url = "http://www.scala-lang.org/api/current/index.html#"+name
val pb = new ProcessBuilder("firefox",url)
val p = pb.start
p.waitFor
}
如果你想变得更聪明,你可以解析名称,将Web浏览器指向Javadocs for java classes,Scaladocs指向Scala类,以及你的类文档。您可能还想使用本地来源file:///my/path/to/docs/index.html#
而不是来自网络的API。但是我用这个你可以试试
scala> viewdoc(Some(1))