在脚本中使用维基百科 lua 模块

Using wikipedia lua modules in a script

好的,所以,首先让我澄清一下,我不知道 Lua 是如何工作的,从来没有在其中编写超过 10 行的代码,而且我通常对 MediaWiki + 的工作方式感到困惑Scribunto + Lua 作品...

所以...

我有这个维基词典module/template:

https://en.wiktionary.org/w/index.php?title=Module:pl-IPA&action=edit

在我看来它是完全有效的 lua 代码。

当我尝试 运行 一些简单的例子(例如调用函数 export.convert_to_IPA("something"))时,Lua 似乎抱怨它不知道 mw 是什么.

据我所知,mw 代表 MediaWiki,是对 Scribunto 模块的引用。

问题是...我如何在一个简单的 Lua 脚本 运行ning 中从终端找到并导入此 mw 模块...使用 Lua 口译员,关于 Mac?

一般来说,没有 MediaWiki,您不能在独立的 Lua 中使用 mw。它提供的几乎所有功能都是对 MediaWiki 的 PHP 的回调。但是,看起来您只想使用 convert_to_IPA 而不是 template_IPA,而前者对 mw 的唯一用法是这一行:for ch in mw.ustring.gmatch(mw.ustring.lower(word), ".") do。你很幸运:mw.ustring 是规则的例外,它确实有一个纯 Lua 实现:https://github.com/wikimedia/mediawiki-extensions-Scribunto/tree/master/includes/engines/LuaCommon/lualib/ustring

这是一个如何使用它的示例(假设您的当前目录同时包含 pl-IPA.lua 和我链接的 ustring 目录):

$ lua5.1
Lua 5.1.5  Copyright (C) 1994-2012 Lua.org, PUC-Rio
> mw = {ustring = require 'ustring/ustring'}
> export = require 'pl-IPA'
> =export.convert_to_IPA("something")
sɔˈmɛt.xʲink
>