注销

你好!欢迎来到你的个人维基!!

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界面创建/更新文件。其他维基非常注重在浏览器中创建和编辑页面,但由于我一直都在不间断地打开我可靠的代码编辑器,我现在更喜欢手动更新我的文件。

-在文件中搜索

特别感谢:

Editing is enabled. Use the "Save changes" button below the editor to commit modifications to this file.