Skip to content

Instantly share code, notes, and snippets.

@chen206
Created January 18, 2017 11:02
Show Gist options
  • Save chen206/90e9ee6a87eb56a0606945a225b617af to your computer and use it in GitHub Desktop.
Save chen206/90e9ee6a87eb56a0606945a225b617af to your computer and use it in GitHub Desktop.
mkdocs支持中文搜索
  1. 替换支持中文的lunr.min.js文件
  2. 下载 https://github.com/codepiano/lunr.js/blob/37680a339bfec3785e507bb3c07e362cae66ac26/lunr.min.js
  3. 复制到 /usr/local/Cellar/mkdocs/0.16.1_1/libexec/lib/python2.7/site-packages/mkdocs/assets/search/mkdocs/js/
  4. 修改生成索引文件的函数
  5. 找到文件 /usr/local/Cellar/mkdocs/0.16.1_1/libexec/lib/python2.7/site-packages/mkdocs/search.py
  6. 修改函数generate_search_index,在json.dumps中添加一个参数:ensure_ascii=False
    def generate_search_index(self):
        """python to json conversion"""
        page_dicts = {
            'docs': self._entries,
        }
        return json.dumps(page_dicts, sort_keys=True, ensure_ascii=False, indent=4)
@Stone-wh
Copy link

按照这个修改之后,中文还是不能搜索,修改了search_index.py 以及替换了lunr.min.js,求指导。

@1049451037
Copy link

1049451037 commented Jun 3, 2018

我按照上面的操作是可以的,但是我试了一下好像只有mkdocs这个theme能行,其他的theme有可能会有问题。另外,分词好像有点问题,尝试搜索一些常见的词,应该可以搜出来。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment