1
0
mirror of https://github.com/gryf/snipmate.vim.git synced 2025-12-20 04:47:59 +01:00

made convertSnip.py a bit easier to read by using raw strings

This commit is contained in:
Michael Sanders
2009-03-23 01:29:56 -04:00
parent aa854cb971
commit d78fb50bde

View File

@@ -1,5 +1,5 @@
#!/usr/bin/python #!/usr/bin/python
# Converts command-based snippet to new file-based snippet syntax # Converts command-based snippets to new file-based snippet syntax
# NOTE: This is only meant to help, it is not perfect! Check the file # NOTE: This is only meant to help, it is not perfect! Check the file
# afterwards to make sure it's correct. # afterwards to make sure it's correct.
@@ -9,9 +9,9 @@ import os
def Usage(): def Usage():
print """\ print """\
Usage: convertSnip.py -h or --help Print this help and exit Usage: convertSnips.py -h or --help Print this help and exit
or: convertSnip.py inputfile Print .snippets file or: convertSnips.py inputfile Print .snippets file
or: convertSnip.py inputfile outputfile Output to file""" or: convertSnips.py inputfile outputfile Output to file"""
def FindSnippet(line): def FindSnippet(line):
"""\ """\
@@ -24,7 +24,7 @@ def FindSnippet(line):
text = "\t" + snippet.group(4) text = "\t" + snippet.group(4)
if snippet.group(2): # Process multi-snippet if snippet.group(2): # Process multi-snippet
endSnip = re.search('\s*\\\\"(.*?)\\\\"\s*(.*)', text) endSnip = re.search(r'\s*\\"(.*?)\\"\s*(.*)', text)
if not endSnip: if not endSnip:
endSnip = re.search('\s*"(.*?)"\s*(.*)', text) endSnip = re.search('\s*"(.*?)"\s*(.*)', text)
@@ -55,16 +55,16 @@ def Output(lines, file = None):
outputLines = '' outputLines = ''
for snippet in lines: for snippet in lines:
for line in snippet.split("\\n"): for line in snippet.split("\\n"):
line = re.sub('\\\\t', "\t", line) line = re.sub(r'\\t', '\t', line)
line = re.sub('\\\\\\\\', '\\\\', line) line = re.sub(r'\\\\', r'\\', line)
if not re.match('^(\#|snippet)', line): if not re.match('^(\#|snippet)', line):
line = "\t" + line line = "\t" + line
outputLines += line + "\n" outputLines += line + "\n"
if file: if file:
try: try:
output = open(file, 'w') output = open(file, 'w')
except IOError, error: except IOError, e:
raise SystemExit('convertSnip.py: %s' % error) raise SystemExit('convertSnips.py: %s' % e)
output.write(outputLines) output.write(outputLines)
else: else:
print outputLines, print outputLines,
@@ -77,17 +77,17 @@ def main(argv = None):
try: try:
input = open(argv[0], 'r') input = open(argv[0], 'r')
except IOError, error: except IOError, e:
raise SystemExit('convertSnip.py: %s' % error) raise SystemExit('convertSnips.py: %s' % e)
snippet = -1 snippet = -1
for line in input.readlines(): for line in input.readlines():
if snippet == -1: if snippet == -1:
snippet = ProcessLine(line) snippet = ProcessLine(line)
else: else:
concat = re.search("^\s+(\\\\\s*)?(\.\s*)?['\"](.*)['\"]", line) concat = re.search(r"^\s+(\\\s*)?(\.\s*)?['\"](.*)['\"]", line)
if concat: if concat:
newLines[-1] += "\\n" + concat.group(3) # Add concatenated lines newLines[-1] += "\n" + concat.group(3) # Add concatenated lines
else: else:
snippet = ProcessLine(line) snippet = ProcessLine(line)