Вы можете переименовать «оглавление» в боковой панели сфинкса? - PullRequest
8 голосов
/ 26 июля 2011

В целом, как вы переименовываете элементы Sphinx по умолчанию (например, Quick Search в Search)?Вы можете?

Ответы [ 2 ]

7 голосов
/ 15 августа 2011

Вот как вы можете изменить «Быстрый поиск» на что-то еще, переопределив шаблон:

  1. Создайте папку с именем templates в каталоге проекта Sphinx.

  2. Копировать <Sphinx install dir>/themes/basic/searchbox.html в templates.

  3. В conf.py добавить

    templates_path = ["templates"]
    
  4. Переименуйте «Быстрый поиск» в любое, что вам нужно, в копии searchbox.html.

Но я бы так не поступил.

Более гибкий подход заключается в создании файла gettext MO и настройке конфигурации, как описано в документации locale_dirs . Как это:

  1. Файл шаблона <Sphinx install dir>/locale/sphinx.pot содержит все строки, которые можно перевести. Скопируйте этот файл в локальный файл sphinx.po.

  2. Добавьте ваши изменения в sphinx.po.

  3. Используйте msgfmt.py для компиляции sphinx.po в sphinx.mo.

  4. Поместите sphinx.mo в соответствующий каталог (<your_locale_dir>/en/LC_MESSAGES для английского).

См. Также http://docs.python.org/library/gettext.html#internationalizing-your-programs-and-modules.

1 голос
/ 26 июля 2011

Согласно документации Sphinx , документации , вы должны иметь возможность изменить html-шаблоны или, возможно, указать Sphinx на новые шаблоны, чтобы добиться того, что вы пытаетесь сделать, работая над html-шаблонами.

Текущие шаблоны имеют поисковый заголовок, предоставленный в контексте, хотя я не уверен, что заполняет значение контекста для _ ('search'). Я хотел бы узнать, можно ли изменить его, внеся изменения в файл локали в /sphinx/sphinx/locale/sphinx.pot:

#: sphinx/themes/agogo/layout.html:49 sphinx/themes/basic/layout.html:137
#: sphinx/themes/basic/search.html:11 sphinx/themes/basic/search.html:20
msgid "Search"
msgstr ""

и скажите msgstr "My alternative search" вместо msgstr "".

...