Tab 2 spaces convertor (for markdown)
A lot of the code in your while loop can be replaced with a for loop using enumerate() and a toggled boolean.

You should be able to replace your code from c = len(lines) (line 21) down through your entire while loop with:



skip = False
for index, line in enumerate(lines):
    if line.startswith("```"):
        skip = not skip
    else:
        if not skip:
            if line.startswith("\t"):
                lines[index] = line.replace("\t", _TAB_2_SPACE)




I can't test this right now, so please let me know if you run in to any problems with this implementation.