i18n/polib.py
changeset 44452 9d2b2df2c2ba
parent 43977 04e0e0e73892
child 48875 6000f5b25c9b
equal deleted inserted replaced
44449:ff72bd52d56a 44452:9d2b2df2c2ba
   720 
   720 
   721         ``refpot``
   721         ``refpot``
   722             object POFile, the reference catalog.
   722             object POFile, the reference catalog.
   723         """
   723         """
   724         # Store entries in dict/set for faster access
   724         # Store entries in dict/set for faster access
   725         self_entries = dict((entry.msgid, entry) for entry in self)
   725         self_entries = {entry.msgid: entry for entry in self}
   726         refpot_msgids = set(entry.msgid for entry in refpot)
   726         refpot_msgids = {entry.msgid for entry in refpot}
   727         # Merge entries that are in the refpot
   727         # Merge entries that are in the refpot
   728         for entry in refpot:
   728         for entry in refpot:
   729             e = self_entries.get(entry.msgid)
   729             e = self_entries.get(entry.msgid)
   730             if e is None:
   730             if e is None:
   731                 e = POEntry()
   731                 e = POEntry()
  1806             msgid_tokens = msgid.split(b('\0'))
  1806             msgid_tokens = msgid.split(b('\0'))
  1807             if len(msgid_tokens) > 1:
  1807             if len(msgid_tokens) > 1:
  1808                 entry = self._build_entry(
  1808                 entry = self._build_entry(
  1809                     msgid=msgid_tokens[0],
  1809                     msgid=msgid_tokens[0],
  1810                     msgid_plural=msgid_tokens[1],
  1810                     msgid_plural=msgid_tokens[1],
  1811                     msgstr_plural=dict(
  1811                     msgstr_plural={
  1812                         (k, v) for k, v in enumerate(msgstr.split(b('\0')))
  1812                         k: v for k, v in enumerate(msgstr.split(b('\0')))
  1813                     ),
  1813                     },
  1814                 )
  1814                 )
  1815             else:
  1815             else:
  1816                 entry = self._build_entry(msgid=msgid, msgstr=msgstr)
  1816                 entry = self._build_entry(msgid=msgid, msgstr=msgstr)
  1817             self.instance.append(entry)
  1817             self.instance.append(entry)
  1818         # close opened file
  1818         # close opened file