diff options
| author | Thibaut Horel <thibaut.horel@gmail.com> | 2016-02-04 21:44:18 -0500 |
|---|---|---|
| committer | Thibaut Horel <thibaut.horel@gmail.com> | 2016-02-04 21:44:18 -0500 |
| commit | 2f94281f983f86b23f8e5bcdc790fd4e032a0a2d (patch) | |
| tree | a6094f5232663c8b983c9a6122014af34783b122 /BibTeX.py | |
| parent | 59dfd23bc8abc331b44c5f87e6a1b5dae3dc1036 (diff) | |
| download | anonbib-2f94281f983f86b23f8e5bcdc790fd4e032a0a2d.tar.gz | |
Modernizing Python style
Diffstat (limited to 'BibTeX.py')
| -rw-r--r-- | BibTeX.py | 18 |
1 files changed, 12 insertions, 6 deletions
@@ -33,7 +33,7 @@ class BibTeX: if k.lower() in self.entries: print >> sys.stderr, "Already have an entry named %s" % k return - self.entries[k.lower()] = ent + self[k] = ent def __contains__(self, key): return key.lower() in self.entries @@ -41,6 +41,12 @@ class BibTeX: def __getitem__(self, key): return self.entries[key.lower()] + def __setitem__(self, key, v): + self.entries[key.lower()] = v + + def __delitem__(self, key): + del self.entries[key.lower()] + def __iter__(self): return iter(self.entries.values()) @@ -51,7 +57,7 @@ class BibTeX: seen.clear() while ent.get('crossref'): try: - cr = self.entries[ent['crossref'].lower()] + cr = self[ent['crossref']] except KeyError: print "No such crossref: %s" % ent['crossref'] break @@ -63,8 +69,8 @@ class BibTeX: if cr.entryLine < ent.entryLine: print "Warning: crossref %s used after declaration" % cr.key - for k in cr.entries.keys(): - if ent.entries.has_key(k): + for k in cr: + if k in ent: print "ERROR: %s defined both in %s and in %s" % ( k, ent.key, cr.key) else: @@ -78,9 +84,9 @@ class BibTeX: rk = "title" for ent in self: - if ent.type in config.OMIT_ENTRIES or not ent.has_key(rk): + if ent.type in config.OMIT_ENTRIES or rk not in ent: ent.check() - del self.entries[ent.key.lower()] + del self[ent.key] class FileIter: |
