Leave one and only one newline at the end of source files

Review URL: https://codereview.appspot.com/7216043

git-svn-id: http://skia.googlecode.com/svn/trunk@7398 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
rmistry@google.com 2013-01-25 18:26:58 +00:00
Родитель bbec4e6be2
Коммит 647ca8bc89
1 изменённых файлов: 7 добавлений и 7 удалений

Просмотреть файл

@ -23,7 +23,7 @@ def SanitizeFilesWithModifiers(directory, file_modifiers, line_modifiers):
directory: string - The directory which will be recursively traversed to
find source files to apply modifiers to.
file_modifiers: list - file-modification methods which should be applied to
the complete file content (Eg: EOFNewlineAdder).
the complete file content (Eg: EOFOneAndOnlyOneNewlineAdder).
line_modifiers: list - line-modification methods which should be applied to
lines in a file (Eg: TabReplacer).
"""
@ -114,11 +114,12 @@ def CopywriteChecker(file_content, unused_file_path):
return file_content
def EOFNewlineAdder(file_content, file_path):
"""Adds a LF at the end of the file if it does not have one."""
if file_content and file_content[-1] != '\n':
def EOFOneAndOnlyOneNewlineAdder(file_content, file_path):
"""Adds one and only one LF at the end of the file."""
if file_content and (file_content[-1] != '\n' or file_content[-2:-1] == '\n'):
file_content = file_content.rstrip()
file_content += '\n'
print 'Added newline to %s' % file_path
print 'Added exactly one newline to %s' % file_path
return file_content
@ -140,7 +141,7 @@ if '__main__' == __name__:
os.getcwd(),
file_modifiers=[
CopywriteChecker,
EOFNewlineAdder,
EOFOneAndOnlyOneNewlineAdder,
SvnEOLChecker,
],
line_modifiers=[
@ -149,4 +150,3 @@ if '__main__' == __name__:
TrailingWhitespaceRemover,
],
))