爲了描述一些C++類並提供操作方法,我們成功地使用了一個基於MediaWiki的wiki多年。記錄的類通常在C++名稱空間中定義,因此我們使用以cppnamespace::classname
慣例命名的wiki頁。Semantic MediaWiki和C++命名空間語法之間的碰撞
一年前,wiki的Semantic MediaWiki(SMW)擴展已啓用。
今天,我開始瀏覽wiki統計信息,並發現一些可疑屬性「使用但未定義」。正如我所發現的那樣,這些問題是由特殊含義的碰撞造成的,這些特殊含義適用於C++命名空間分隔符::
,導致維基頁面上的問題出現鏈接到由完全限定類命名的頁面。 SMW總是將名稱縮短爲類名稱。 [1]
如果我在維基文本編寫,
[[MyNamespace::MyClass]]
[[MyNamespace::MyClass|MyNamespace::MyClass]]
[[MyClass|MyNamespace::MyClass]]
...呈現的wiki頁面會顯示,
MyClass的MyClass的MyClass的
.. 。並且鏈接到的頁面在每種情況下都是MyClass。
我通常會通過引入一個新的MediaWiki模板來處理這類問題[2]。但我不確定在這種特殊情況下的最佳解決方案,因爲有很多頁面會受到影響。所以我對以前的經驗感興趣。 (谷歌和SO都沒有幫助到目前爲止)
如果你有同樣的問題,你找到了什麼解決方案?
- [1]增加:版本信息:鏈接到MediaWiki 1.23.4與Semantik鏈接到MediaWiki 2.0
- [2]增加:我發現通過嘗試,即建立一個MediaWiki模板爲此目的很難,如果不是不可能...
這個問題似乎是離題,因爲屬於http://webmasters.stackexchange.com/ – 2014-10-29 12:16:30
@CaptainObvlious你說得對,如果它不是一個維基問題。 Wikis,特別是基於MediaWiki時,儘可能向所有人開放。 (例如,我不是網站管理員) – Wolf 2014-10-29 12:25:19
正在使用''標籤嗎? –
leo
2014-10-29 14:50:57