def get_items(self, names):
env = self.state.document.settings.env<EOL>prefixes = get_import_prefixes_from_env(env)<EOL>items = []<EOL>max_item_chars = <NUM_LIT:50><EOL>for name in names:<EOL><INDENT>display_name = name<EOL>if name.startswith('<STR_LIT>'):<EOL><INDENT>name = name[<NUM_LIT:1>:]<EOL>display_name = name.split('<STR_LIT:.>')[-<NUM_LIT:1>]<EOL><DEDENT>try:<EOL><INDENT>real_name, obj, parent = import_by_name(name, prefixes=prefixes)<EOL><DEDENT>except ImportError:<EOL><INDENT>self.warn('<STR_LIT>' % name)<EOL>items.append((name, '<STR_LIT>', '<STR_LIT>', name))<EOL>continue<EOL><DEDENT>documenter = get_documenter(obj, parent)(self, real_name)<EOL>if not documenter.parse_name():<EOL><INDENT>self.warn('<STR_LIT>' % real_name)<EOL>items.append((display_name, '<STR_LIT>', '<STR_LIT>', real_name))<EOL>continue<EOL><DEDENT>if not documenter.import_object():<EOL><INDENT>self.warn('<STR_LIT>' % real_name)<EOL>items.append((display_name, '<STR_LIT>', '<STR_LIT>', real_name))<EOL>continue<EOL><DEDENT>sig = documenter.format_signature()<EOL>if not sig:<EOL><INDENT>sig = '<STR_LIT>'<EOL><DEDENT>else:<EOL><INDENT>max_chars = max(<NUM_LIT:10>, max_item_chars - len(display_name))<EOL>sig = mangle_signature(sig, max_chars=max_chars)<EOL>sig = sig.replace('<STR_LIT:*>', r'<STR_LIT>')<EOL><DEDENT>doc = list(documenter.process_doc(documenter.get_doc()))<EOL>while doc and not doc[<NUM_LIT:0>].strip():<EOL><INDENT>doc.pop(<NUM_LIT:0>)<EOL><DEDENT>m = re.search(r"<STR_LIT>", "<STR_LIT:U+0020>".join(doc).strip())<EOL>if m:<EOL><INDENT>summary = m.group(<NUM_LIT:1>).strip()<EOL><DEDENT>elif doc:<EOL><INDENT>summary = doc[<NUM_LIT:0>].strip()<EOL><DEDENT>else:<EOL><INDENT>summary = '<STR_LIT>'<EOL><DEDENT>items.append((display_name, sig, summary, real_name))<EOL><DEDENT>return items<EOL>
Try to import the given names, and return a list of
        ``[(name, signature, summary_string, real_name), ...]``.