繁体   English   中英

崇高的文字3自动缩进tcl和python

[英]sublime text 3 auto indent tcl and python

我最近开始使用Sublime Text 3,我非常喜欢它。 我主要将其用于tcl,python,CMake,脚本(sh,bat),偶尔用于MATLAB和某些c ++(我想用它代替eclipse,但到目前为止我一直没有成功)。 ST是我发现的第一个对我使用的所有语言均具有良好支持的编辑器,并且是少数突出显示并自动完成tcl的语言之一。 但是,我在使用自动缩进功能时遇到了一些问题(我喜欢自动缩进,我是一个惰性格式化程序...)。 ST3似乎对tcl和python都缩进了错误。 我的搜索没有找到任何解决方案,所以我在这里问。

我已经设置(在用户设置和键盘映射中):

"indent_to_bracket": false,
"translate_tabs_to_spaces": true

{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} }

这是tcl中的一个示例(好的接着是坏的)

proc hello { args } {
    set var 0
    if { $var } {
        puts "$var again"
    } {
        puts "NO VAR!"
    }
}
proc helloagain { args } {
    puts "hello again"
}

自动缩进后:

proc hello { args } {
    set var 0
    if { $var } {
        puts "$var again"
        } {
            puts "NO VAR!"
        }
    }
    proc helloagain { args } {
        puts "hello again"
    }

蟒蛇:

def hello(number):
    num = int(number)
    if num == 0:
        print "Number is nil!"
    else:
        print "number is "+str(num)
    print "now im quitting"

def hello(number):
    num = int(number)
    if num == 0:
        print "Number is nil!"
    else:
        print "number is "+str(num)
        print "now im quitting"

python自动缩进对我来说很有意义,因为解释器(或自动缩进的其他功能)无法知道语句何时完成,因此我一直在使用#将缩进设置为python中的正确位置。 但是,这在tcl中不起作用,而且tcl解释器会计算注释块(注释中不能有未关闭的{)。 毕竟,我使用大括号指定了块的开始和结束之后,自动格式化似乎应该具有正确格式化tcl的必要信息。 我知道此功能是一种奢侈,但我很想让它在这些语言下正常工作。

-Jameson

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM