Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # python 3
- # bf_format - format brainfuck code listings using nested indentation
- # updated 2019-05-26-09:23 comment out the lf insertion for ']'
- # I think it looks better this way, also results in shorter listing
- ilv = -1
- ich = " " # indent character - four regular spaces
- prog = "" # store the whole program in a variable
- command_set = "><+-,.[]"
- f = open(input("bf file: "), 'r')
- # read file
- while True:
- nextch = f.read(1)
- if(not nextch):
- f.close()
- break
- if(nextch in command_set):
- prog += (nextch)
- # format
- for i in range(len(prog)):
- if(prog[i] == "["):
- print()
- ilv += 1
- print(ich * ilv, end = "")
- if(prog[i] == "]"):
- # print() # remove lf after ']'
- # print(ich * ilv, end = "")
- ilv -= 1
- print(prog[i], end = "")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement