Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
api:non-standard-lua-libs:zh [2023/11/28 10:32]
hfsr [输入输出功能]
api:non-standard-lua-libs:zh [2023/12/10 14:52] (current)
hfsr [基本函数]
Line 9: Line 9:
 基本函数 基本函数
 --------------- ---------------
-库中的[原函数](http://​www.lua.org/​manual/​5.3/​manual.html#​6.1)是可用的,但有以下不同:+库中的[原函数](http://​www.lua.org/​manual/​5.3/​manual.html#​6.1)是可用的,但有以下不同:
  
 - `collectgarbage`**不可用**. - `collectgarbage`**不可用**.
Line 139: Line 139:
 操作系统功能 操作系统功能
 --------------------------- ---------------------------
-`os` 库内的[原函数](http://​www.lua.org/​manual/​5.2/​manual.html#​6.9)已经被部分重新实现。+`os`库内的[原函数](http://​www.lua.org/​manual/​5.2/​manual.html#​6.9)已经被部分重新实现。
  
-- `os.clock` 被重新实现为返回一个近似的 CPU 时间,也就是计算机在一个执行器线程中实际运行的时间。这与计算机运行时间**一样,获取此时间请参见[[api:​computer:​zh|computer.uptime]]。 +- `os.clock`被重新实现为返回近似CPU时间,也就是计算机在一个执行器线程中实际运行的时间。这与计算机运行时间**一样**,获取此时间请参见[[api:​computer:​zh|computer.uptime]]。 ​  
-- `os.date` 被重新实现为游戏中的时间,并支持大多数格式。 +\\ 
-- `os.execute` 被重新实现,相当于从已挂载的文件系统中通过 `shell.execute` 启动程序。传入的字符串相当于在 shell 内输入的命令。 +- `os.date`被重新实现为使用游戏时间,并支持大多数格式。 ​  
-- `os.exit` 抛出一个错误并试图终止当前的 ​coroutine。 +\\ 
-- `os.setenv` 添加 Lua shell 的环境变量。 +- `os.execute`被重新实现,相当于从已挂载的文件系统中通过`shell.execute`启动程序。传入的字符串相当于在 shell 内输入的命令。 ​  
-- `os.remove` 是 `filesystem.remove` 的别名。 +\\ 
-- `os.rename` 是 `filesystem.rename` 的别名。 +- `os.exit`抛出一个错误并试图终止当前的协程。   
-- `os.setlocale` **可用。+\\ 
 +- `os.setenv`添加Lua shell的环境变量。 ​  
 +\\ 
 +- `os.remove`是`filesystem.remove`的别名。 ​  
 +\\ 
 +- `os.rename`是`filesystem.rename`的别名。 ​  
 +\\ 
 +- `os.setlocale`**可用**。   
 +\\
 - `os.time` 被重新实现为返回自世界创建以来的游戏时间。 - `os.time` 被重新实现为返回自世界创建以来的游戏时间。
-  注意这个时间是以“游戏内秒”为单位的。要获得世界创建起的时间刻(tick,需要将其乘以 `1000/​60/​60` (因为一天有24000个时间刻) 然后减去 6000。这个 6000 的偏移量不是随便设的,它可以确保早上 6 点确实是那个时候。Minecraft莫名其妙地认为早上六点是零,可能是因为那是一个新游戏开始的时间……+  注意这个时间是以“游戏内秒”为单位的。要获得世界创建起的tick,需要将其乘以 `1000/​60/​60`(因为一天有24000个时间刻)然后减去6000。这个6000的偏移量不是随便设的,它可以确保早上6点确实是早上6点。Minecraft莫名其妙地认为早上六点是零,可能是因为那是新游戏开始的时间…… ​  
 +\\
 - `os.tmpname` 已被重新实现,可以创建一个未使用的名字挂载到 `/tmp` 下。 - `os.tmpname` 已被重新实现,可以创建一个未使用的名字挂载到 `/tmp` 下。
  
 额外增加了一个函数: 额外增加了一个函数:
  
-- `os.sleep(seconds:​ number)` 允许在指定的时间内暂停脚本。`os.sleep` 消耗事件,但注册的处理函数和线程在休眠时仍会接收事件。换句话说,在睡眠状态下,信号仍然会被处理函数处理,也就是说你无法在睡眠结束后拉取睡眠期间堆积的信号,因为没有信号会留在队列中(或者说至少不是全部信号)。+- `os.sleep(seconds:​ number)`允许暂停脚本指定时间长度。`os.sleep`消耗事件,但注册的处理函数和线程在休眠时仍会接收事件。换句话说,在睡眠状态下,信号仍然会被处理函数处理,也就是说你无法在睡眠结束后拉取睡眠期间堆积的信号,因为没有信号会留在队列中(或者说至少不是全部信号)。
  
-[[api:​computer:​zh|computer(电脑) API]] 提供了一些类似这个类别的函数+此类别的一些新函数可以在[[api:​computer:​zh|computer(电脑) API]]中找到
  
 调试 调试
 ----- -----
-只实现了 `debug.traceback` 和 `debug.getinfo` ​(1.5.9 起)后者仅限被动信息。+只实现了`debug.traceback`和`debug.getinfo`1.5.9起,仅限被动信息。
  
 目录 目录
 ----------- -----------
 {{page>​api:​contents:​zh&​noheader&​noeditbutton&​nouser&​nofooter}} {{page>​api:​contents:​zh&​noheader&​noeditbutton&​nouser&​nofooter}}