~widelands-dev/widelands-website/trunk

« back to all changes in this revision

Viewing changes to _ops/fix_formatting.py

  • Committer: franku
  • Date: 2019-04-09 06:34:51 UTC
  • mfrom: (530.1.5 mv_main_files)
  • Revision ID: somal@arcor.de-20190409063451-orglu7d2oda37ej9
moved files stored in folder widelands to folder widelands/mainpage

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/env python
 
2
# -*- coding: utf-8 -*-
 
3
 
 
4
 
 
5
"""This script runs pyformat over the code base."""
 
6
 
 
7
import argparse
 
8
import os
 
9
import re
 
10
import sys
 
11
from subprocess import call
 
12
 
 
13
 
 
14
def parse_args():
 
15
    p = argparse.ArgumentParser(
 
16
        description='Run pyformat over the code base.'
 
17
        ' Recurses over all relevant files.')
 
18
    return p.parse_args()
 
19
 
 
20
 
 
21
def find_files(startpath, extensions):
 
22
    for (dirpath, _, filenames) in os.walk(startpath):
 
23
        for filename in filenames:
 
24
            if os.path.splitext(filename)[-1].lower() in extensions:
 
25
                yield os.path.join(dirpath, filename)
 
26
 
 
27
 
 
28
def main():
 
29
    parse_args()
 
30
 
 
31
    if not os.path.isdir('pybb') or not os.path.isdir('_ops'):
 
32
        print('CWD is not the root of the repository.')
 
33
        return 1
 
34
 
 
35
    sys.stdout.write('\nFormatting Python code ')
 
36
    for filename in find_files('.', ['.py']):
 
37
        sys.stdout.write('.')
 
38
        sys.stdout.flush()
 
39
        call(['pyformat', '-i', filename])
 
40
    print(' done.')
 
41
 
 
42
    print('Formatting finished.')
 
43
    return 0
 
44
 
 
45
if __name__ == '__main__':
 
46
    sys.exit(main())