annotate Mac/Demo/example0/checktext.py @ 54294:dba767bc3155 legacy-trunk

remove mention of old ctypes version
author Benjamin Peterson <benjamin@python.org>
date Sat, 23 May 2009 20:59:09 +0000
parents c3a096bfbd6b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3751
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
1 """checktext - Check that a text file has macintosh-style newlines"""
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
2
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
3 import sys
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
4 import EasyDialogs
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
5 import string
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
6
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
7 def main():
32736
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
8 pathname = EasyDialogs.AskFileForOpen(message='File to check end-of-lines in:')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
9 if not pathname:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
10 sys.exit(0)
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
11 fp = open(pathname, 'rb')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
12 try:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
13 data = fp.read()
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
14 except MemoryError:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
15 EasyDialogs.Message('Sorry, file is too big.')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
16 sys.exit(0)
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
17 if len(data) == 0:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
18 EasyDialogs.Message('File is empty.')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
19 sys.exit(0)
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
20 number_cr = string.count(data, '\r')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
21 number_lf = string.count(data, '\n')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
22 if number_cr == number_lf == 0:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
23 EasyDialogs.Message('File contains no lines.')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
24 if number_cr == 0:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
25 EasyDialogs.Message('File has unix-style line endings')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
26 elif number_lf == 0:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
27 EasyDialogs.Message('File has mac-style line endings')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
28 elif number_cr == number_lf:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
29 EasyDialogs.Message('File probably has MSDOS-style line endings')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
30 else:
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
31 EasyDialogs.Message('File has no recognizable line endings (binary file?)')
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
32 sys.exit(0)
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
33
3751
2db6363459ca - Added a file dialog example
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
34 if __name__ == '__main__':
32736
c3a096bfbd6b Whitespace normalization, via reindent.py.
Tim Peters <tim.peters@gmail.com>
parents: 27404
diff changeset
35 main()