kotlin REPL 有代码补全吗?

Does the kotlin REPL have code completion?

我刚刚打开 kotlinc(显然默认为 kotlin-jvm?)并放入一些 hello-world 类型代码:

data class Person(val name: String, val age: Int) {
   val isAdult get() = age >= 20
}

让我们创建一个实例:

val p = Person("ab", 10)

希望 repl 将通过 tab 键向我们提供属性.. ?

p.<tab>

每个 tab repl 哔哔声 而不是提供 Person 实例的属性。 "Just in case" 我 :quit 并明确打开 kotlinc-jvm - 并得到相同的行为。是否可以相信没有 code completion 可用?我是否缺少启动 kotlinc 的选项?

更新:JetBrains 现已发布 ki,它支持自动完成(以及更多)。

kotlin repl 目前不支持tab 补全。有关详细信息,请参阅官方错误跟踪器: https://youtrack.jetbrains.com/issue/KT-14177, https://youtrack.jetbrains.com/issue/KT-23036

如果您使用 IntelliJ,您可能想试用临时文件。它们适用于少量代码并支持代码完成。

Intellij Kotlin-REPL 确实有代码完成。使用来自语言 JetBrains.

的创造者的 IDE 非常有意义