4

我正在考虑在当前项目中同时支持TextileMarkdown 。我宁愿不强迫用户选择其中一个。有没有办法自动检测用户正在使用哪个?你会怎么做?我想查找/开发 JavaScript 和 PHP 解决方案,以便我可以提供实时预览以及在服务器端处理用户输入。

4

3 回答 3

7

考虑到用户可能只在帖子中使用一个特定的语法元素,因此您必须检查所有内容。寻找“h1”。显然只有在用户完全使用该元素时才有效。

使用 headers 之类的东西非常容易,但请考虑 markdown 格式*this*as<em>this</em>和 Textile 会将其转换为<strong>this</strong>。所以你会有模棱两可的语法结构,会在每种语言中产生不同的结果。

我建议使用用户选择。尝试找出您的用户(或您)通常首选的语法,为那些想要其他选择的人提供“使用 x 而不是 y”复选框。

于 2008-09-26T09:55:54.427 回答
3

这真的不应该那么难。Markdown 不支持以下语法;

h1. Header

p. Paragraph

...所以您只需扫描它以检查它是否是纺织品。非常简单的正则表达式让您开始使用 PHP 代码(扫描以 hX. 或 p. 开头的行):

if (preg_match('/^(p|h[1-6])\. /m', $subject)) 
{
    // Successful match
} else 
{
    // Match attempt failed
}

您可能可以编写自己的正则表达式来扫描 Markdown。

于 2008-09-26T09:38:22.330 回答
1

自动检测,我不知道,两者都是基于“自然”打字。
也许您可以要求用户选择一种格式,带有一对单选按钮或其他东西。

于 2008-09-26T07:57:31.403 回答