站点日志

来自Wikioe
Eijux讨论 | 贡献2021年12月21日 (二) 07:52的版本 →‎系统更新
跳到导航 跳到搜索


关于

以下,用于记录:站点的安装、更新,扩展安装,以及功能调整 等操作,并列出记录相关操作。

系统更新

2020/09/06:MediaWiki-1.35.0-rc.3

站点更新(安装):Mediawiki-1.35.0-rc.3版本。

2021/12/21 MediaWiki-1.37.1

站点升级:MediaWiki-1.37.1版本。

设置调整

2021/12/03:设置“在不重新加载页面的情况下显示预览”

设置位置:“特殊页面#用户组与权限”->“参数设置#编辑#预览#在不重新加载页面的情况下显示预览”

扩展安装

2020/09/02:扩展“VisualEditor”

安装扩展“VisualEditor”。

  • 【2021/10/08 20:48:57】使用可视化编辑时,发现保存过程异常旧,编辑页面可能出现“服务器没有在预期时间内响应。”的提示,这样看似没能保存,重新打开该页面查看内容也没变化,但多刷新内容页面几次就看到更改了,说明保存过程实在太久,且后台修改不能及时反馈。
    • 【可能是页面内容太多?啥时候更新到新版本看看有没有优化】
    • 【或者:在“可视化编辑”页修改之后,切换“源代码编辑”页面复制修改过的内容,用来修改保存。不知道可不可行】

2021/05/16:编辑框自定义标签

添加编辑框自定义标签功能。

  1. 安装扩展“Gadgets”、“CharInsert”。所以可以配合使用???
  2. 修改以下内容:【均是新建】
    1. http://wiki.eijux.com/MediaWiki:Common.css |-Common.css
    2. http://wiki.eijux.com/MediaWiki:Edittools |自定义标签
    3. http://wiki.eijux.com/MediaWiki:Gadgets-definition |-Gadgets-definition
    4. http://wiki.eijux.com/MediaWiki:Gadget-Edittools.js |-Gadget-Edittools.js
    5. http://wiki.eijux.com/MediaWiki:Gadget-charinsert-core.js |-Gadget-charinsert-core.js
    6. http://wiki.eijux.com/MediaWiki:Gadget-charinsert-styles.css |-Gadget-charinsert-styles.css
    7. http://wiki.eijux.com/MediaWiki:Gadget-charinsert.js |-Gadget-charinsert.js
    8. http://wiki.eijux.com/MediaWiki:Gadget-charinsert |-Gadget-charinsert

【2021/05/16 2:01:19】但是还不知道如何将两个配合使用。(所以先注释了 Edittools 中的内容)

Edittools 定义的标签显示在页面底部(编辑时不方便),而 Gadget-charinsert-core.js 中定义的标签在编辑框底部(自定义标签时不方便);
Gadget-charinsert-core.js 中说“// Please make any changes to [[MediaWiki:Edittools]] as well, however, instead of using the ␥ symbol, use {{#ifeq:{{NAMESPACE}}|{{ns:0}}| | ”。

【2021/05/22 22:02:06】终于把 Gadget-charinsert-core.js 的设置方式试出来了:

  • 用“\”分隔一些不能直接保存的标签。如:“<br/>”写为“<br\/>”,“<syntaxhighlight”写为“<\syntaxhighlight”;
  • 用“.”代替标签中的空格。如:“<syntaxhighlight lang="xml" inline>”写为“<syntaxhighlight.lang="xml".inline>”;
  • 用“+”表示光标位置。如:“<code></code>”写为“<code>+</code>”
  • 可以使用诸如“\n”的转移字符。如:“<pre></pre>”写为“<pre>\n+\n</pre>”
  • 注意 js 中不能写入中文字符(空格等的字符不能是中文)。
  • 修改之后需要无缓存刷新(ctrl+F5)才能显示效果。
  • 如果遇到“修改之后直接不能加载自定义标签框,且改回原来内容仍然不能加载”的情况,可以通过重新提交该 js 的历史版本来解决。
顺手记一下几个特殊字符:
几个Unicode特殊字符
符号 Unicode码(Hex) 名字
U+2610 BALLOT BOX (方格)
U+2713 CHECK MARK(勾号)
U+2714 HEAVY CHECK MARK(粗勾号)
U+2611 BALLOT BOX WITH CHECK(打勾方格)
U+2717 BALLOT X (交叉)
U+2718 HEAVY BALLOT X (粗体交叉)
U+2612 BALLOT BOX WITH X (带交叉方格)
U+25CB WHITE CIRCLE
U+25CF BLACK CIRCLE
U+25EF LARGE CIRCLE

【2021/05/22 22:49:36】追加几点内容,并保存个效果:

  • 可以在 charinsert 的组中使用 标签说明(就是不可点击的说明字符):
    • 前面两个空格、后面一个空格,用于与 charinsert 分隔;
    • 多个单词用“_”连接;
    • 不能用中文;
  • 可以对 charinsert 换行展示:使用“\n”,注意前后用空格分隔;
示例:
editTools = {
        ...
        charinsert: {
            'Commonly':' [\[category:+]] :.+ #+ *+ #:.+ *:.+ <\syntaxhighlight.lang="bash".highlight="">\n+\n<\/syntaxhighlight> \n  Label: <br\/>\n+ <!--.+_--> <s>+</s> <code>+</code> <pre>\n+\n</pre> <blockquote>\n+\n</blockquote> <\syntaxhighlight.lang="xml".inline>+<\/syntaxhighlight> \n  Tabulation: style="width:100%;".|.+ rowspan="2".|.+ colspan="2".|.+ .wikitable .mw-collapsible .mw-collapsed .sortable \n  Special: ☐ ✓ ✗ ✔ ✘ ☑ ☒ ○ ● ◯',
            ...
        },
效果:
MediaWiki:Gadget-charinsert-core.js配置效果示例.png

2021/05/17:文章浮动目录【未完成】

想要修改文章目录为浮动目录,没搞好。想要实现三效果如:BioHos生命健康创投百科

【2021/05/17 02:38:48】但还没弄好,好像是“JsonConfig”的配置有问题,相关模板页错误:“Lua错误 在模块:TNT的第159行:Missing JsonConfig extension; Cannot load https://commons.wikimedia.org/wiki/Data:I18n/Documentation.tab”。
网上类似问题链接:
https://www.mediawiki.org/wiki/Topic:Vbvr1uv3rw3qi8a4
https://www.mediawiki.org/wiki/Topic:V8zt7msvlfps3c8d
https://www.mediawiki.org/w/index.php?title=Topic:Vdtgrltwf1e5bmdx&topic_showPostId=vdtqrdm22gn9kidl#flow-post-vdtqrdm22gn9kidl
  1. 从 mediawiki.org 导入了:Template:TOC、Template:TOC-nopadding、Template:TOCright。
    • (跨wiki前缀写的是“mediawiki.org”不知道对不对。改为“commons”重新上传一次还是不好使)
  2. 安装扩展“Scribunto”、“TemplateStyles”、“JsonConfig”。
  3. 修改配置文件:
    # by Eijux, 2021/05/16 22:07:01
    # To import Template:TOC etc from mediawiki.org.
    wfLoadExtension( 'Scribunto' );
    wfLoadExtension( 'TemplateStyles' );
    wfLoadExtension( 'JsonConfig' );
    #
    #$wgJsonConfigEnableLuaSupport = true;
    # JsonConfig uses a very flexible (and a bit complicated) settings system. Both Commons wiki and all other wikis will need this code block to set up a cross-wiki shareable storage:
    #$wgJsonConfigModels['Tabular.JsonConfig'] = 'JsonConfig\JCTabularContent';
    #$wgJsonConfigs['Tabular.JsonConfig'] = array(
    #	'namespace' => 486, // === NS_DATA, but the constant is not defined yet
    #	'nsName' => 'Data',
    #	'isLocal' => false,
    #	'pattern' => '/.\.tab$/'
    #);
    # Commons wiki will need to specify that data should be stored locally:
    #$wgJsonConfigs['Tabular.JsonConfig']['store'] = true;
    # Other wikis will need to set how to access remote data:
    #$wgJsonConfigs['Tabular.JsonConfig']['remote'] = 'https://commons.wikimedia.org/w/api.php';
    if ( $wmgEnableJsonConfigDataMode ) {
    	// Safety: before extension.json, these values were initialized by JsonConfig.php
    	if ( !isset( $wgJsonConfigModels ) ) {
    		$wgJsonConfigModels = [];
    	}
    	if ( !isset( $wgJsonConfigs ) ) {
    		$wgJsonConfigs = [];
    	}
    
    	$wgJsonConfigEnableLuaSupport = true;
    
    	// https://www.mediawiki.org/wiki/Extension:JsonConfig#Configuration
    
    	$wgJsonConfigModels['Tabular.JsonConfig'] = 'JsonConfig\JCTabularContent';
    	$wgJsonConfigs['Tabular.JsonConfig'] = [
    		'namespace' => 486,
    		'nsName' => 'Data',
    		// page name must end in ".tab", and contain at least one symbol
    		'pattern' => '/.\.tab$/',
    		'license' => 'CC0-1.0',
    		'isLocal' => false,
    	];
    
    	$wgJsonConfigModels['Map.JsonConfig'] = 'JsonConfig\JCMapDataContent';
    	$wgJsonConfigs['Map.JsonConfig'] = [
    		'namespace' => 486,
    		'nsName' => 'Data',
    		// page name must end in ".map", and contain at least one symbol
    		'pattern' => '/.\.map$/',
    		'license' => 'CC0-1.0',
    		'isLocal' => false,
    	];
    
    	// Enable Tabular data namespace on Commons - T148745
    	// Enable Map (GeoJSON) data namespace on Commons - T149548
    	// TODO: Consider whether this hard-coding to Commons is appropriate
    	if ( $wgDBname === 'commonswiki' ) {
    		// Ensure we have a stable cross-wiki title resolution
    		// See JCSingleton::parseTitle()
    		$wgJsonConfigInterwikiPrefix = "meta";
    
    		$wgJsonConfigs['Tabular.JsonConfig']['store'] = true;
    		$wgJsonConfigs['Map.JsonConfig']['store'] = true;
    	} else {
    		$wgJsonConfigInterwikiPrefix = "commons";
    
    		$wgJsonConfigs['Tabular.JsonConfig']['remote'] = [
    			'url' => 'https://commons.wikimedia.org/w/api.php'
    		];
    		$wgJsonConfigs['Map.JsonConfig']['remote'] = [
    			'url' => 'https://commons.wikimedia.org/w/api.php'
    		];
    	}
    }
    
    
    
    # Scribunto Configuration
    $wgScribuntoDefaultEngine = 'luastandalone';
    # Integrating extensions: Then in your LocalSettings.php after all the extension registrations, add:
    $wgScribuntoUseGeSHi = true;
    $wgScribuntoUseCodeEditor = true;
    

2021/05/29:扩展“PDFEmbed”【未完成】

安装扩展“PDFEmbed”,以允许 PDF 文件(上传到Wiki)可以使用<pdf></pdf>标签嵌入到Wiki页面中。 修改内容:

  1. 下载并上传“PDFEmbed”插件(注意更改权限、所有者及所有者组)
  2. 修改“LocalSettings.php”:
    1. 允许上传 PDF 文件;
    2. 禁用“PdfHandler”扩展;
    3. 启用“PDFEmbed”扩展;
    4. 配置“PDFEmbed”扩展;
    . . .
    
    $wgFileExtensions[] = pdf;
    
    . . .
    
    #-------------------------------------------------------
    # by Eijux, 2021/05/29 02:17:18
    # 允许上传 PDF 文件
    $wgFileExtensions[] = 'pdf';
    # 以上内容中已注释“PdfHandler”插件
    # 添加 ‘PDFEmbed’扩展
    wfLoadExtension( 'PDFEmbed' );
    # 配置 pdfEmbed,支持pdf:
    # 1、默认的插入pdf页面的宽
    $wgPdfEmbed[ 'width' ] = 800;
    # 2、默认的插入pdf页面的高
    $wgPdfEmbed[ 'height' ] = 1090;
    # 3、允许上传的用户组
    $wgGroupPermissions[ '*' ][ 'embed_pdf' ] = true;
    

【备注】使用“PDFEmbed”扩展:

  • 可以用侧边栏中的“上传文件”页面来上传 pdf 文件;
  • 通过<pdf>File命名空间:文件名</pdf>嵌入到条目页面中:
    <pdf>File:Example.pdf</pdf>
    
    
    <!-- 具有可选的宽度和高度 -->
    <pdf width=”500″ height=”300″>File:Example.pdf</pdf>
    
    <!-- 呈现文档后滚动到第10页 -->
    <pdf page=”10″>File:Example.pdf</pdf>
    
    • 也可以通过链接的方式在新页面打开 pdf 文件:
      [[media:filename.pdf]]
      


【2021/05/29 03:11:48】

使用“<pdf>”标签会出现错误,如“[6ea655d74ad7d372e024748e] 2021-05-28 19:12:05: 类型“Error”的致命例外”,还没搞清楚原因,先用“[[media:filename.pdf]]”标签吧。

【2021/05/29 03:41:23】

我以为上述错误是由于需要“Widgets”扩展导致,所以我又安装了该扩展:(参见:MediaWiki:Widgets插件
  1. 下载“Widgets”
  2. 下载最新版“Smarty”
  3. 在“Widgets”中创建文件夹“smarty”,并将“Smarty/libs”文件夹移动到“Widgets/smarty”中;
  4. 修改“LocalSettings.php”:
    # 添加 Widgets 扩展
    wfLoadExtension( 'Widgets' );
    

但是好像还是不好使。会不会是权限问题呢?【mmp,不管了,烦得很】