PageRenderTime 383ms CodeModel.GetById 201ms app.highlight 3ms RepoModel.GetById 178ms app.codeStats 0ms

/Mac/Demo/example0/checktext.py

http://unladen-swallow.googlecode.com/
Python | 35 lines | 31 code | 3 blank | 1 comment | 6 complexity | e134c5d0ce429c2ce02a5b66b6a80add MD5 | raw file
 1"""checktext - Check that a text file has macintosh-style newlines"""
 2
 3import sys
 4import EasyDialogs
 5import string
 6
 7def main():
 8    pathname = EasyDialogs.AskFileForOpen(message='File to check end-of-lines in:')
 9    if not pathname:
10        sys.exit(0)
11    fp = open(pathname, 'rb')
12    try:
13        data = fp.read()
14    except MemoryError:
15        EasyDialogs.Message('Sorry, file is too big.')
16        sys.exit(0)
17    if len(data) == 0:
18        EasyDialogs.Message('File is empty.')
19        sys.exit(0)
20    number_cr = string.count(data, '\r')
21    number_lf = string.count(data, '\n')
22    if number_cr == number_lf == 0:
23        EasyDialogs.Message('File contains no lines.')
24    if number_cr == 0:
25        EasyDialogs.Message('File has unix-style line endings')
26    elif number_lf == 0:
27        EasyDialogs.Message('File has mac-style line endings')
28    elif number_cr == number_lf:
29        EasyDialogs.Message('File probably has MSDOS-style line endings')
30    else:
31        EasyDialogs.Message('File has no recognizable line endings (binary file?)')
32    sys.exit(0)
33
34if __name__ == '__main__':
35    main()