2017-06-15 104 views
4

在Intellij中使用诸如'logt','logd','loge'等快捷方式轻松对Java进行日志记录......等等。但我转移到Kotlin,我注意到那些快捷键不再工作。我不知道它是否与我的配置有关,但如果没有,我该如何解决这个问题?logd快捷方式在Intellij中无法与Kotlin一起工作

回答

2

你应该创建单独的模板,使他们正常工作。
这里是一步一步的指导:

首先,复制和AndroidLog模板粘贴到科特林(只要选择它们,并使用CMD + C,CMD + V(或Ctrl + C键,Ctrl + V) 其次,你必须手动进行调整:1。 LOGD(及其他) 选择LOGD项,按 “编辑变量” enter image description here

更改表达式:kotlinMethodName() ​​

此外,从模板的末尾删除;,因为您在Kotlin中不需要它。现在

您的方法名称将被正确地显示

  • logt 这一个是有点麻烦。 解决方案1 ​​TAG =类名称。

    • 模板内容:

    私人VAL TAG = “$的className $”

    • 编辑变量 - >表达:

    groovyScript(“_ 1 .take(Math.min(23,_1。长度()));”,kotlinClassName())

  • 溶液2 TAG =文件名(可以内部伴随使用)

    • 模板文本:

      private const val TAG =“$ className $

    或:

    companion object { 
        private const val TAG = "$className$" 
    } 
    
    • 编辑变量 - >表达:

      groovyScript( “_ 1.take(Math.min(23,_1.length()));”,fileNameWithoutExtension( ))

    +0

    不错!它的工作完全谢谢 –

    +0

    不客气! –

    3

    这些在的IntelliJ提供的(在Preferences -> Editor -> Live Templates),选择AndroidLog动态模板配置,并适用专门的Java代码:AndroidLog Live Template config

    有没有什么在你的配置打破,但如果你想为Kotlin制作这些实时模板,您需要为AndroidLog添加新的实时模板并使其适用于Kotlin代码。

    https://www.jetbrains.com/help/idea/2017.1/creating-and-editing-live-templates.html

    有开放的功能要求他们添加如下默认设置:https://youtrack.jetbrains.com/issue/KT-10464

    +0

    谢谢。这工作完美。 –

    相关问题