编程语言里面statement长了,为了保持可读性,需要拆分,但是又要不影响逻辑,就需要一些“修饰符”。
举个python的例子(因为python依靠indent来划分scope)
if number > 5 and number < 15:
print "1"
可以这样断句子:
if (number > 5 and
number < 15):
print "1"
# 用括号
也可以这样
if number > 5 and \
number < 15:
print "1"
# 用backslash
Emacs有没有功能能做到这个呢(不同语言style guide不一样)
里面也提到了其它工具。
An example of the type of formatting that YAPF can do, it will take this ugly code:
x = { 'a':37,'b':42,
'c':927}
y = 'hello ''world'
z = 'hello '+'world'
a = 'hello {}'.format('world')
class foo ( object ):
def f (self ):
return 37*-+2
def g(self, x,y=42):
return y
def f ( a ) :
return 37+-+a[42-x : y**3]
and reformat it into:
x = {'a': 37, 'b': 42, 'c': 927}
y = 'hello ' 'world'
z = 'hello ' + 'world'
a = 'hello {}'.format('world')
class foo(object):
def f(self):
return 37 * -+2
def g(self, x, y=42):
return y
def f(a):
return 37 + -+a[42 - x:y**3]
1 个赞