alb wrote: [...] > For all the above reasons I'm writing snippets of pure latex in my rst > doc, but I'm having issues with the escape characters: > > i = '\ref{fig:abc}'
Since \r is an escape character, that will give you carriage return followed by "ef{fig:abc". The solution to that is to either escape the backslash: i = '\\ref{fig:abc}' or use a raw string: i = r'\\ref{fig:abc}' Oh, by the way, "i" is normally a terrible variable name for a string. Not only doesn't it explain what the variable is for, but there is a very strong convention in programming circles (not just Python, but hundreds of languages) that "i" is a generic variable name for an integer. Not a string. > print pypandoc.convert(i, 'latex', format='rst') > ef\{fig:abc\} > > because of the \r that is interpreted by python as special character. > > If I try to escape with '\' I don't seem to find a way out... Can you show what you are doing? Escaping the backslash with another backslash does work: py> for c in '\\ref': ... print(c, ord(c)) ... \ 92 r 114 e 101 f 102 so either you are doing something wrong, or the error lies elsewhere. -- Steven -- https://mail.python.org/mailman/listinfo/python-list