def lines_to_latex(linelist, baselevel=0, startstr='\\begin{itemize}'): """Convert a list of pyp_parser.lines into latex code, accounting for the possiblity that the lines may contain nested lists (itemize).""" line_parser = env_popper.pyp_env_popper(linelist, def_level=0) line_parser.Execute() outlist = pytexutils.objlist_to_latex(line_parser.objlist, \ Document_mapper, baselevel=baselevel, \ startstr=startstr) return outlist
def to_latex(self, baselevel=1): reveal = self.reveal part1 = '\\begin{frame}%[label=current]' if self.fragile: part1 = '\\begin{frame}[fragile]%,label=current]' startstr = '\\begin{itemize}' if reveal: startstr += '[<+-| alert@+>]' outlist = [part1,'\\frametitle{%s}'%self.title] if self.verb: list2 = [item.string for item in self.body_lines] outlist += list2 else: mainlist = pytexutils.objlist_to_latex(self.objlist, \ Beamer_slide_mapper, \ baselevel=baselevel, \ startstr=startstr) outlist.extend(mainlist) ## prev_level = 1 ## for item in self.objlist:#body_lines: ## cur_ws = ws*(item.level-1) ## if item.level < prev_level and (prev_level > 1): ## prev_ws = ws*(prev_level-1) ## close_list = [prev_ws+'\\end{itemize}']*(prev_level-item.level) ## outlist.extend(close_list) ## if item.level <= 1: ## if Beamer_slide_mapper.has_key(type(item)): ## my_class = Beamer_slide_mapper[type(item)] ## my_instance = my_class(item) ## outlist.extend(my_instance.to_latex()) ## else: ## outlist.append(item.string) ## if item.level > prev_level: ## outlist.append(cur_ws+startstr) ## if item.level >=2: ## outlist.append(cur_ws+'\\item '+item.string) ## prev_level = item.level ## #close any open itemize's: ## if prev_level != 0: ## num_to_close = prev_level-1 ## for n in range(num_to_close): ## cur_ws = (num_to_close-n)*ws ## outlist.append(cur_ws+'\\end{itemize}') outlist.append('\\end{frame}') outlist.extend(['']*2) return outlist
def to_latex(self): mylist = pytexutils.objlist_to_latex(self.objlist, \ Beamer_slide_mapper, \ baselevel=self.baselevel, \ startstr=self.startstr) return mylist