Use fileinput instead of sed.

This commit is contained in:
Anthony Sottile 2014-12-23 12:04:19 -08:00
parent 25e50df1e5
commit e3312c773e

View file

@ -1,12 +1,18 @@
from __future__ import print_function from __future__ import print_function
import argparse import argparse
import fileinput
import sys import sys
from plumbum import local from plumbum import local
from pre_commit_hooks.util import entry from pre_commit_hooks.util import entry
def _fix_file(filename):
for line in fileinput.input([filename], inplace=True):
print(line.rstrip())
@entry @entry
def fix_trailing_whitespace(argv): def fix_trailing_whitespace(argv):
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser()
@ -20,7 +26,7 @@ def fix_trailing_whitespace(argv):
if bad_whitespace_files: if bad_whitespace_files:
for bad_whitespace_file in bad_whitespace_files: for bad_whitespace_file in bad_whitespace_files:
print('Fixing {0}'.format(bad_whitespace_file)) print('Fixing {0}'.format(bad_whitespace_file))
local['sed']['-i', '-e', 's/[[:space:]]*$//', bad_whitespace_file]() _fix_file(bad_whitespace_file)
return 1 return 1
else: else:
return 0 return 0