跳转到主要内容

将TiddlyWeb URL映射到您自己的自定义URL

项目描述

tiddlywebplugins.urls

此插件可以让您

  • 将自定义URL映射到默认的TiddlyWeb URL。

  • 将自定义URL映射到任何其他URL,用作URL缩短器

它使用自定义URL的选择器语法(http://lukearno.com/projects/selector/

配置

此插件是一个“系统”和“twanager”插件。在命令行中输入twanager usage。您的tiddlywebconfig.py应类似于以下配置

config = {
'system_plugins': ['tiddlywebwiki', 'tiddlywebplugins.urls' ],
'secret': 'XXXXXXXX',
'twanager_plugins': ['tiddlywebwiki', 'tiddlywebplugins.urls'],

# the tiddlywebwiki.friendlywiki function doesn't work with urls plugin,

# it needs to be disabled.
'tiddlywebwiki.friendlywiki': False,

#'url_bag':'__urls',
}

注意:所有URL默认存储在名为“urls”的包中。

此包的名称可以通过向tiddlywebconfig.py添加“urls_bag”来更改,但包中的所有tiddlers必须是描述格式的“url tiddlers”。如果此包尚未存在,它将自动创建。

重写URL

要在/default上启动tiddlywiki,创建一个如下所示的tiddler

title:
/default

text:
/recipes/default/tiddlers.wiki

此配置创建了一个链接,例如:http://example.com/default,否则将是:http://example.com/recipes/default/tiddlers.wiki,这仍然是有效的。请确保存在名为“default”的配方!

灵活版本

使用上述格式,您需要为每个配方创建一个tiddler。这并不非常“用户友好”。因此,我们需要更灵活一些,使用“占位符”来定义关系。现在我们希望映射用户可能输入的每个recipe_name,例如:/wiki/anyRecipeName

title:
/wiki/{recipe_name:segment}

text:
/recipes/{{ recipe_name }}/tiddlers.wiki

一个URL http://example.com/wiki/myWiki 将加载 http://example.com/recipes/myWiki/tiddlers.wiki

重定向URL

重定向到内部URL

如果您想重定向而不是重写到内部URL,可以添加“redirect”标签

title:
/wiki/{user:segment}

tags:
redirect

text:
/recipes/{{ user }}/tiddlers.wiki

请注意,添加用户不会自动添加用户配方。所以如果您需要,您需要创建它。

重定向到外部URL

要创建指向google.com的短链接,您可能需要执行以下操作。不需要“redirect”标签

title:
/google

text:
http://www.google.com

实验性

如果我们创建一个包含包的tiddlywiki,例如:/bags/{{ bag_name }}/tiddlers.wiki,它将被加载为TiddlyWiki表示,但它不可保存

title:
/test/{bag_name:segment}

text:
/recipes/experiment/tiddlers.wiki

实验配方需要看起来像这样(在生产中您将需要访问权限!)

desc: some description text ...
policy: {"read": [], "create": [], "manage": [R:ADMIN], "write": [], "owner": null, "delete": []}

/bags/system/tiddlers
/bags/{{ bag_name }}/tiddlers

其中bag_name可以是任何变量名。

请注意,这不支持PUTs,您无法将PUT发送到配方(除非您为bag_name提供默认值)。此版本需要客户端插件才能与PUTs一起工作。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

由以下机构支持