From c11d71c3cd63269cb2f443851ae7027d76e564eb Mon Sep 17 00:00:00 2001 From: Lonami Exo Date: Sat, 26 Jan 2019 12:46:13 +0100 Subject: [PATCH] Fix docs generation on Windows and search bar --- telethon_generator/docswriter.py | 10 ++++++---- telethon_generator/generators/docs.py | 6 ++++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/telethon_generator/docswriter.py b/telethon_generator/docswriter.py index 482fe3bf..c3945b28 100644 --- a/telethon_generator/docswriter.py +++ b/telethon_generator/docswriter.py @@ -35,7 +35,8 @@ class DocsWriter: Get the relative path for the given path from the current file by working around https://bugs.python.org/issue20012. """ - return os.path.relpath(str(path), self._parent) + return os.path.relpath( + str(path), self._parent).replace(os.path.sep, '/') # High level writing def write_head(self, title, css_path, default_css): @@ -253,9 +254,10 @@ class DocsWriter: self.write('' .format(text_to_copy, text)) - def add_script(self, src='', relative_src=None): - if relative_src: - self._script += ''.format(relative_src) + def add_script(self, src='', path=None): + if path: + self._script += ''.format( + self._rel(path)) elif src: self._script += ''.format(src) diff --git a/telethon_generator/generators/docs.py b/telethon_generator/generators/docs.py index b013f290..77fd05c9 100755 --- a/telethon_generator/generators/docs.py +++ b/telethon_generator/generators/docs.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 import functools +import os import re import shutil from collections import defaultdict @@ -401,7 +402,7 @@ def _write_html_pages(root, tlobjects, methods, layer, input_res): depth = '../' * (2 if tlobject.namespace else 1) docs.add_script(src='prependPath = "{}";'.format(depth)) - docs.add_script(relative_src=paths['search.js']) + docs.add_script(path=paths['search.js']) docs.end_body() # Find all the available types (which are not the same as the constructors) @@ -567,7 +568,8 @@ def _write_html_pages(root, tlobjects, methods, layer, input_res): constructor_names = fmt(cs) def fmt(xs, formatter): - return ', '.join('"{}"'.format(formatter(x)) for x in xs) + return ', '.join('"{}"'.format( + formatter(x)).replace(os.path.sep, '/') for x in xs) type_names = fmt(types, formatter=lambda x: x)