是否有可能在mediawiki开箱即用的情况下给出相同部分的多个名称(非常喜欢),或者我是否需要编写自己的钩子/扩展/插件(如果是的话,还有关于如何做到这一点的技巧)?
在我的例子中,我在单个编译页面上有示例代码,我希望通过每一篇文章的名称链接到多个单独的文章。例如,我希望类似于下面的工作。
页面:中断代码示例
===(EIMSK|EICRA)===
void interrupt01_init(void)
{
EICRA = 0X0F; // in binary, 1111. That is, the rising edge of INT1 and INT0 generate an interrupt request.
EIMSK = 0X03; // in binary, 0011. Enables INT0 and INT1 interrupts.
}
以下两项内容都链接到同一节,但每一页的名称都是适当的:
页面: EICRA:
[[Interrupts Code Examples#{{PAGENAME}}]]
页面: EIMSK:
[[Interrupts Code Examples#{{PAGENAME}}]]
有关完整上下文,请参见示例页http://narwhaledu.com/AVRwiki/index.php?title=PCMSK0。
也许我可以使用类似mediawiki: is there a way to automatically create redirect pages that redirect to the current page?的东西,但是是否可以为节而不是页编写它呢?此外,虽然可以接受,但我不希望允许的别名是页面上的所有部分;例如,在Examples上,我有一个"about“部分。
编辑:如果不清楚,最好是当用户访问
页面:中断代码Examples#PAGENAME
他们看到一个适当填充的章节标题,而不是"EIMSK或EICRA示例代码“(因为代码示例可能有很多别名)。
==={{{PAGENAME}}}===
void interrupt01_init(void)
{
EICRA = 0X0F; // in binary, 1111. That is, the rising edge of INT1 and INT0 generate an interrupt request.
EIMSK = 0X03; // in binary, 0011. Enables INT0 and INT1 interrupts.
}
我可以得到结论工作,但没有链接。
页面:模板:中断代码示例
=={{#ifexist: {{{pagename}}} | [[{{{pagename}}}]] | External Interrupts Example Code One}}==
{{Template:ExampleCode~PCMSK0, PCMSK1, PCMSK2, PCICR, PCINT0_vect, PCINT1_vect}}
我的理想语法是
[[ Template:Interrupts Code Examples|pagename={{PAGENAME}} ]]
但是很明显,这会产生一个指向不存在的页面pagename=Name_of_Register
的链接,而不是链接到Interrupts Code Examples
和传递参数{{PAGENAME}}
,这样我就可以用{{{pagename}}}
在Interrupts Code Examples
中引用它,从而生成我的节头。
这将使编译页面保持干净(只有两个代码示例,而不是将每个别名(当前解决方案)的每个代码示例复制5x ),但我相信,只有在转换时才能将参数传递给模板,而不是链接到模板。这是真的吗?
我可能只是使用“示例代码一”来获取wiki标记的可读性,因为这开始破坏我的大脑.
发布于 2014-01-13 13:06:36
任何HTML锚都将作为节链接工作。因此,如果您有<span id="foo">
,可以使用[Bla#foo]跳转到span。每个ID需要一个HTML元素,但我认为这仍然是可行的。
https://stackoverflow.com/questions/21085676
复制相似问题