View difference between Paste ID: eHjWaDsN and kUyFAE0X
SHOW: | | - or go back to the newest paste.
1
#!/usr/bin/python3
2
3
import re
4
import sys
5
#import pdb
6
7
8
def main():
9
    #pdb.set_trace()
10
    pattern = re.compile(r"\s*((ALTER_ME_IN_THE_NEW_FILE.*),.*\);)");
11-
        line_list = []
11+
    replacement = r"#ifdef F1\n" \
12
                  "\1\n" \
13-
            for line in fhandle:
13+
                  "#else\n" \
14-
                if "ALTER_ME_IN_THE NEW_FILE" in line:
14+
                  "\2);\n" \
15-
                    new_line_to_insert = re.sub(",.*", ");", line)
15+
                  "#endif"
16-
                    newlines = (
16+
17-
                        "#ifdef F1\n",
17+
18-
                        line,
18+
19-
                        "#else\n",
19+
            orig = fhandle.read()
20-
                        new_line_to_insert,
20+
            repl, changed = re.subn(pattern, replacement, orig)
21-
                        "#endif\n",
21+
            if changed:
22-
                    )
22+
                fhandle.seek(0)
23-
                    line_list.extend(newlines)
23+
                fhandle.write(repl)
24-
                else:
24+
25-
                    line_list.append(line)
25+
26-
            fhandle.seek(0)
26+
27-
            fhandle.writelines(line_list)
27+
28
if __name__ == '__main__':
29
    main()