# shinypress / shinypress / pango.py

  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 def replace_all(s, o, n): while o in s: s = s.replace(o, n) return s def latexify(content): """ Turn Pango markup into latex code. Warning: does not check validity of markup! Warning: this also allows LaTeX code straight through (this is an intentional bug?) """ replacements = { '#': r'\#', '': r'\textsc{', '': '}', '': r'\textsuperscript{', '': '}', '': r'\texttt{', '': '}', '': r'\emph{', '': '}', '': r'\uline{', '': '}', '': r'\textbf{', '': '}', } # replace all line breaks with LaTeX line breaks content = content.replace('\n', r'\\') content = content.replace('
', r'\\') # replace paragraphs with LaTeX paragraph breaks content = content.replace(r'

', '\n\n') # remove line breaks next to paragraph breaks content = replace_all(content, r'\\''\n', '\n') content = replace_all(content, '\n'r'\\', '\n') # prettify line breaks content = content.replace(r'\\', r'\\''\n') for old, new in replacements.items(): content = content.replace(old, new) return content 

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.