你好!欢迎来到你的个人维基!!
Wikitten 是我制作的一个小型、快速的PHP wiki,因为我真的需要一个地方来存储我的笔记、片段、想法等等。过去我尝试过很多个人维基和笔记应用程序,但由于我有特殊的需求,没有一个真正适合我,所以我推出了自己的。
您现在看到的页面是实际wiki的一部分,并且是使用Markdown语法编写的。如果您不熟悉Markdown,请按右上角的Toggle source按钮,或者查看侧边栏中的示例文档。顺便说一下,如果你正在阅读源代码,注意到我是如何链接到wiki中的另一个页面的吗?
您现在看到的页面是实际wiki的一部分,使用 Markdown语法。如果您不熟悉Markdown,请按 切换源 按钮,或查看 样本文件 在侧边栏。顺便说一下,如果你正在阅读源代码,注意到我是如何链接到wiki中的另一个页面的吗?
现在,还有其他以降价为动力的维基,我也尝试过其中一些,但我也想用一些东西来存储我的代码片段,所以语法高亮显示是必须的。展开侧栏中的Code snippets文件夹,查看一些受支持的文件类型。我还需要一些轻到可以在Dropbox上同步的东西,因为我可以在多台机器上访问我的笔记和片段。
要求
- PHP
5.3+ - Apache web服务器(具有
mod_rewrite)
或
- PHP
5.4 - 内置Web服务器
php -S 0.0.0.0:8000 routing.php
或
- PHP
7.0+ - 内置Web服务器
php -S 0.0.0.0:8000 routing.php
安装
- 下载 最新版本或克隆 GitHub上的存储库
- 提取归档文件后,将文件放在DocumentRoot中的某个位置,或者制作一个单独的Apache 虚拟主机.
- 就这样。安装文件夹中有一个“library”目录。你在那里放置的所有内容都将由wiki呈现。如果有索引的话。md文件(比如你现在正在阅读的那个)在该文件夹中,在访问wiki时,默认情况下会提供该文件。
Docker
您还可以使用 Docker
配置Wikitten
您可以使用配置文件来配置Wikitten。
首先,复制config.php。例如到配置。php您已经准备好更改设置了。
有些选项会被注释禁用,但可以通过从选项行删除“/”来启用。
define('APP_NAME', 'My Wiki');- 设置Wiki标题define('DEFAULT_FILE', 'index.md');- 选择应加载为主页的文件,该文件必须位于库文件夹中define('LIBRARY', '/path/to/wiki/library');- 设置库的自定义路径define('ENABLE_EDITING', true);- 启用任何文件的页内编辑define('USE_PAGE_METADATA', true);- 启用JSON前端(元数据),详见下文define('USE_DARK_THEME', true);- 启用黑暗主题(请参见下面的屏幕截图)define('USE_WIKITTEN_LOGO', false);- 禁用左下角的Wikitten徽标define('ACCESS_USER', 'Wikitten');- 需要登录才能查看文档define('ACCESS_PASSWORD', 'Wikitten');- 需要登录才能查看文档define('EXTERNAL_LINK_TARGET', '_blank');- 将target=“_blank”附加到降价文档中的所有外部链接。如果要禁用此功能,只需将值更改为self。define('INTERNAL_WIKI_LINK', true);- 将更改标记链接,使其行为类似于wiki,因此如果单击指向另一个标记文档的链接,它将在Wikitten中以其真实路径打开。
JSON前端(元数据)
Wikitten内容也可以使用一个简单但功能强大的JSON前端系统进行标记,类似于Jekyll's YAML Front Matter. 定义自定义标题、标记或其他
特定页面的相关数据只需在文件开头添加一个特殊的标题,如下所示:
---
"title": "My Custom Page Title",
"tags": ["my", "custom", "tags"],
"author": "Bob"
---
# Hello, world!
This is my cool wiki page.
Wikitten将智能地抓取这些数据,并将其用于元关键字之类的事情
页面标题,也许最终会搜索索引。本文提供的所有信息
标头按原样传递给视图,因此未来的组件和插件也可以使用它。
注: JSON头应该是一个JSON哈希,但为了简化,Wikitten允许您省略开头和结尾的{}括号。JSON语法中的所有其他内容仍然适用:
-字符串(即:title必须写在双引号内:title)
-值必须用逗号分隔,即使它是一行中的唯一值。
黑暗主题
如果你工作到午夜,看着明亮的白色背景可能会很痛苦。这就是为什么Wikitten提供了一个可以在配置中启用的黑暗主题。带有define('USE_DARK_THEME',true);的php文件选项
看起来是这样的:

Customize CSS
通过在static/css/custom styles/文件夹中创建自定义文件,可以添加新的标记样式。
css必须指向“#render”元素,如static/css/custom styles/github中所示。css文件。
你可以使用static/css/custom styles/github。css文件作为创建新的自定义文件的基础。
拥有自定义文件后,编辑config.php并在custom_MARKDOWN_STYLESHEET中定义自定义文件名。
// Enable a custom stylesheet
define('CUSTOM_MARKDOWN_STYLESHEET', 'github.css');
注意!!! 不要使用文件的完整路径。只使用文件名。
路线图
我计划下一步实现的一些功能:
- Pastebin API集成。我认为在Pastebin(或类似的服务)上只需点击一下就可以分享片段,这会很酷
-直接通过web界面创建/更新文件。其他维基非常注重在浏览器中创建和编辑页面,但由于我一直都在不间断地打开我可靠的代码编辑器,我现在更喜欢手动更新我的文件。
-在文件中搜索
特别感谢:
- Michel Fortin, 对于 PHP Markdown parser.
- Marijn Haverbeke, 对于 CodeMirror,JavaScript代码编辑器。
- Twitter, 对于 Bootstrap CSS 框架 。
- 所有向量,用于free cat vector 我在制作标识时使用的剪影。
- Sindre Sorhus 对于Github口味的 Markdown Style.