Build personal Wiki with Wikitten and MDwiki Wednesday March 16th, 2016 Uranus Zhou PHP, Learning inspiration Sorry, this entry is only available in 中文. No related posts.
请问,wikitten如何能显示中文目录名呢?我的library目录中如果添加一个中文目录,左侧tree区域显示的就是乱码,不知道你的演示程序是怎么做到显示正确的中文目录名? 第二个就是,config.php中library如何自定义为其他目录呢?我换成别的,都报错。 Reply
嗯。我的是windows环境。windows环境下新建目录名,如何用utf-8编码呢? config.php的library我用绝对路径也不行,如:E:\www\wiki\wikitten\doc,\www\wiki\wikitten\doc,/www/wiki/wikitten/doc,这些都不行。愁人~~ Reply
Windows上可以用一些工具建UTF-8的目录名,但这样在资源管理器里又是乱码了,倒也可以改wikitten代码转换编码,估计原作者就没考虑Windows需求 ::>_<:: LIBRARY那做了转义吧?如果在wikitten当前目录下也可以直接改php代码把library改成你要用的doc目录 Reply
我就用的 MediaWiki =w= 多年的使用经历表明它安装简便、好用,稳定可靠。当然装扩展得手动一个个地装比较烦(Arch 源/AUR 里没有包)。另外就是用一些测试性的特性时容易出问题(比如 PostgreSQL)。 Reply
你是用的 MDwiki 还是 Wikitten? MDwiki 的话左侧显示的是页面里的 Markdown h2 二级标题; 如果是 Wikitten,那估计是中文目录名不是 UTF-8 编码的,你的服务器是用 Windows 的? Reply
是的,windows 2008r2的,今天早上我测试下不同的环境,用wnmp3.0.1来运行居然显示正常,如果使用wnmp3.1.0和wamp3.0.6是不正常的,会出现乱码,这个会和环境配置有关嘛?不知有没有解决方法?谢谢 Reply
还有个问题就是,看了下你这篇全文搜索文章,有点疑惑,如果我在windows环境下该如何实现?也是需要安装node.js吗?那个搜索索引文件search_index.json是自动生成的还是得手动用命令执行一次的? Reply
Windows 环境也需要 node.js 支持的,可惜 Windows 2008 不支持 WSL Linux 子系统,不然安装 node.js 倒挺简单的。 search_index.json 文件是手工生成的,如果要支持自动生成,有的编辑器可以设置文档目录修改之后自动执行相应的命令。 Reply
对了,我是用wikitten,我似乎找到原因了,我把php替换成高于7.1以上的版本就显示正常。但还不清楚到底是因为那个参数或者函数的原因。之前我测试wnmp3.1.0版本时可能没有配置好,今晚测试的时候是正常的。 目前就差全文搜索了,还是上面疑问,windows下是否需要安装node.js?基本步骤是否为安装node.js,配置nginx参数,命令生成search_index.json?请指点下,谢谢。 Reply
Wikitten 在 Windows 上是会有问题的,主要文件名默认都是用的 UTF-8 编码,PHP 7.1 开始支持在 Windows 上使用 UTF-8 的文件和路径名了: PHP 7.1 更新说明 Reply
谢谢你,我已经解决了,我没让它直接访问外部目录而是通过一个符号链接访问过去的,但是这样还是需要改nginx关于cgi的配置。不知道这样会不会带来安全问题……不过我目前只是个人使用,暂时全站都需要http验证。 感觉wikitten的代码结构确实挺简单的,还有很多可以魔改得更顺心的地方,可惜作者多年不开发了。目前我正在研究怎么让文件树里不显示特定文件夹,把图片藏进去^_^。 Reply
我的需求和你很像耶。^_^ 我本地通过typora写.md文件,通过同步工具syncthing直接同步到项目library下,确实很方便。 但是发现一个问题,wikitten使用的是michelf的php-markdown渲染器,本地typora支持Github的GFM语法,传上去效果不好。现在比较好的PHP markdown渲染器是parsedown,搞了半天没成功。 不知博主有没兴趣研究一下替换渲染器成parsedown? Reply
GitHub 项目主页上好像很早就有人提过更换渲染引擎,最近俺估计也没空改这个咯。 看 Wikitten 代码结构,你修改 renderers 里的渲染代码有什么问题?可以在 GitHub 里提 issue 描述下问题让作者也协助看看呢。 Reply
初步尝试替换 Wikitten 渲染引擎为 Parsedown,似乎也比较简单: 下载发布版本的 Parsedown.php 放到 renderers/Markdown 目录, 修改 renderers/Markdown.php 文件先注释原来的代码,再增加: require_once dirname(__FILE__) . '/Markdown/Parsedown.php'; 修改 wiki.php 文件,将 \Michelf\MarkdownExtra::defaultTransform 替换成 Parsedown::instance()->text 就可以了。 感觉表格渲染效果也一般,可能还要改一下相关的 CSS。 Reply
感谢,根据你给的方法更换了渲染引擎,修改了一些CSS代码,我制作了docker镜像,部署在我的黑群晖里面,文件用Drive 同步到本地,本地使用Typora编辑!舒服,哈哈,可以抛弃网易云笔记了! 这个是截图: 有需要的朋友,docker镜像:https://hub.docker.com/r/leonyff/wikitten Reply
又遇到点问题,来请教下,我对php不熟悉,我在wikitten中添加了中添加了一些代码片段文件,可能是应为编码的问题,在网页显示中代码片段中的中文注释部分都是乱码!请教下,这个要怎么解决呢? https://i.loli.net/2019/10/31/vdCoqgUH8P1KGuO.png Reply
哥tiddlywiki有桌面端,https://github.com/Jermolene/TiddlyDesktop 不过tiddly已弃,没有mdwiki灵活
这竟然是个专门给TiddlyWiki搞的浏览器~~~
没有转载,感觉不合适^~^
Wiki文档内容是直接转载别人的文章?这个估计得找一些网页转markdown的工具,或者偷懒点里面html内嵌别人网址,哈哈
开始关注这个东西才发现还是有蛮多个人在用耶 ?
看来我是真的要找时间研究研究。
现在嫌Evernote有点慢准备把笔记用Markdown导到这个Wiki系统里,
私人点的信息现在就临时记录到Google Keep咯
请问你怎么讲evernote的笔记转过来的。evernote只能导出成html格式,谢谢!
这个还真没研究过,网上一些通过 Pandoc 这种工具将 html 转为 markdown 的方法。
哈哈,我还是手动更新index,可以在首页里随便加点简介。你这脚本用来发布博客很合适啊。
我手机里也有一套,通过ksweb就能用浏览器打开了
写这个脚本主要还是因为懒 ^_^,我建了好多子目录,实在不想哪天加了一篇Markdown文章就去修改index.md~~~
请问,wikitten如何能显示中文目录名呢?我的library目录中如果添加一个中文目录,左侧tree区域显示的就是乱码,不知道你的演示程序是怎么做到显示正确的中文目录名?
第二个就是,config.php中library如何自定义为其他目录呢?我换成别的,都报错。
估计是要UTF-8编码的,我都用的Linux环境,你那中文目录不行是不是在Windows下测试的?
config.php中的LIBRARY用绝对路径就可以了
嗯。我的是windows环境。windows环境下新建目录名,如何用utf-8编码呢?
config.php的library我用绝对路径也不行,如:E:\www\wiki\wikitten\doc,\www\wiki\wikitten\doc,/www/wiki/wikitten/doc,这些都不行。愁人~~
Windows上可以用一些工具建UTF-8的目录名,但这样在资源管理器里又是乱码了,倒也可以改wikitten代码转换编码,估计原作者就没考虑Windows需求 ::>_<::
LIBRARY那做了转义吧?如果在wikitten当前目录下也可以直接改php代码把library改成你要用的doc目录
我就用的 MediaWiki =w=
多年的使用经历表明它安装简便、好用,稳定可靠。当然装扩展得手动一个个地装比较烦(Arch 源/AUR 里没有包)。另外就是用一些测试性的特性时容易出问题(比如 PostgreSQL)。
MediaWiki 毕竟还算是久经考验的 Wiki 系统哈,我搞 MDwiki 这种主要还是想直接用目录树形式管理内容不想搞数据库咯
嗯。有兴趣你也可以试试 gitit,纯文本 + git,支持多种标记语言的。
gitit还真是开始就看过呢,嫌配置稍微复杂了点,其实主要还是因为不熟悉Haskell ╮(╯_╰)╭
请问下你是用的哪款支持markdown的软件来更新wiki呢?既是如何线下更新wikitten。
每新建一个page都要手动上传到ftp吗?
望指教 谢谢!~
我想到一个办法就是用 dropbox或者btsync同步本地和vps的libarary文件夹,不知道博主是不是这种方法?
我是用btsync同步到VPS的,
另外也用 Zed 编辑器,这个在VPS上运行一个程序之后就可以直接远程编辑
请问如何使用bittorrent sync与VPS同步?
VPS和客户端上都安装BTSync,在VPS上共享一个目录后就可以用了,还是比较简单的
为啥不保留 mdwiki 的 Toc 啊,内容长的时候不是更方便吗
这边倒没改现在就支持的呢,左边菜单会自动显示Markdown目录,不过好像默认只支持到 h2,再下层就不显示了
请问手机方便访问编辑这个wiki系统吗?谢谢!
手机可以访问,编辑只能用Markdown编辑器之后通过BTSync之类的工具进行同步了。
正在部署mdwiki,navigation.md怎么写,在doc上面没有找到说明,想请教下
https://github.com/Dynalon/mdwiki/issues/250
找到啦,自答一下
是这个,我修改的 mdwiki 就是在 navigation.md 里加了个搜索功能。
你好,我想请教个问题,页面能显示出来了,标题和页面内容的中文能正确显示,只有左侧栏的中文目录名是乱码,这是什么原因导致的?网上查了好久没找到.
你是用的 MDwiki 还是 Wikitten?
MDwiki 的话左侧显示的是页面里的 Markdown h2 二级标题;
如果是 Wikitten,那估计是中文目录名不是 UTF-8 编码的,你的服务器是用 Windows 的?
是的,windows 2008r2的,今天早上我测试下不同的环境,用wnmp3.0.1来运行居然显示正常,如果使用wnmp3.1.0和wamp3.0.6是不正常的,会出现乱码,这个会和环境配置有关嘛?不知有没有解决方法?谢谢
还有个问题就是,看了下你这篇全文搜索文章,有点疑惑,如果我在windows环境下该如何实现?也是需要安装node.js吗?那个搜索索引文件search_index.json是自动生成的还是得手动用命令执行一次的?
Windows 环境也需要 node.js 支持的,可惜 Windows 2008 不支持 WSL Linux 子系统,不然安装 node.js 倒挺简单的。
search_index.json 文件是手工生成的,如果要支持自动生成,有的编辑器可以设置文档目录修改之后自动执行相应的命令。
对了,我是用wikitten,我似乎找到原因了,我把php替换成高于7.1以上的版本就显示正常。但还不清楚到底是因为那个参数或者函数的原因。之前我测试wnmp3.1.0版本时可能没有配置好,今晚测试的时候是正常的。
目前就差全文搜索了,还是上面疑问,windows下是否需要安装node.js?基本步骤是否为安装node.js,配置nginx参数,命令生成search_index.json?请指点下,谢谢。
Wikitten 在 Windows 上是会有问题的,主要文件名默认都是用的 UTF-8 编码,PHP 7.1 开始支持在 Windows 上使用 UTF-8 的文件和路径名了:
PHP 7.1 更新说明
正在配置,有一个很愁的疑问不知道怎么解决。我是用nginx配置的,不知道怎么修改能让wikitten的library设置到网页根目录以外。现在只能设置到根目录以内,否则无法访问。
这个不行哦,是 nginx web 服务器的安全限制,不然能直接访问外面目录就太不安全咯。
谢谢你,我已经解决了,我没让它直接访问外部目录而是通过一个符号链接访问过去的,但是这样还是需要改nginx关于cgi的配置。不知道这样会不会带来安全问题……不过我目前只是个人使用,暂时全站都需要http验证。
感觉wikitten的代码结构确实挺简单的,还有很多可以魔改得更顺心的地方,可惜作者多年不开发了。目前我正在研究怎么让文件树里不显示特定文件夹,把图片藏进去^_^。
符号链接一般服务器默认应该也不允许;
wikitten 不复杂,改起来还是比较简单的。
我的需求和你很像耶。^_^
我本地通过typora写.md文件,通过同步工具syncthing直接同步到项目library下,确实很方便。
但是发现一个问题,wikitten使用的是michelf的php-markdown渲染器,本地typora支持Github的GFM语法,传上去效果不好。现在比较好的PHP markdown渲染器是parsedown,搞了半天没成功。
不知博主有没兴趣研究一下替换渲染器成parsedown?
GitHub 项目主页上好像很早就有人提过更换渲染引擎,最近俺估计也没空改这个咯。
看 Wikitten 代码结构,你修改 renderers 里的渲染代码有什么问题?可以在 GitHub 里提 issue 描述下问题让作者也协助看看呢。
看起来似乎只要把 renderers 里的调用换掉就行,我有空试试看。
简单替换 Parsedown 的修改步骤我贴在下面了,可以参考一下,显示效果可能还需要改一下。
搜索Wiki工具时找到这里,是我想要的简洁干净的个人知识管理工具,感谢!
大佬,渲染引擎更换成功了么?我这这边也是用typora写同步过去,默认的渲染引擎表格渲染效果不太好!
初步尝试替换 Wikitten 渲染引擎为 Parsedown,似乎也比较简单:
require_once dirname(__FILE__) . '/Markdown/Parsedown.php';
\Michelf\MarkdownExtra::defaultTransform
替换成Parsedown::instance()->text
就可以了。感觉表格渲染效果也一般,可能还要改一下相关的 CSS。
感谢,根据你给的方法更换了渲染引擎,修改了一些CSS代码,我制作了docker镜像,部署在我的黑群晖里面,文件用Drive 同步到本地,本地使用Typora编辑!舒服,哈哈,可以抛弃网易云笔记了!
这个是截图:
有需要的朋友,docker镜像:https://hub.docker.com/r/leonyff/wikitten
截图没出来!
![image.png](https://i.loli.net/2019/10/19/UFn8CZzDtXqLEk5.png)
看起来确实改了 CSS 比 Wikiteen 自带的好看多了 ^_^
又遇到点问题,来请教下,我对php不熟悉,我在wikitten中添加了中添加了一些代码片段文件,可能是应为编码的问题,在网页显示中代码片段中的中文注释部分都是乱码!请教下,这个要怎么解决呢?
https://i.loli.net/2019/10/31/vdCoqgUH8P1KGuO.png
这个估计是因为 Windows bat 脚本很少使用 UTF-8 编码的原因吧?很多都是 GB2312 的。
可以用文本编辑器把 bat 另存为 UTF-8 编码看看了。