Pandoc Lua 过滤器 - pandoc.path 模块
用于文件路径操作的模块。
Fields
separator
目录分隔符。( string
)
search_path_separator
环境变量 PATH
中用于分隔各条目的字符。( string
)
Functions
directory
directory (filepath)
获取目录名,即从给定路径中删除最后一个目录分隔符及其后面的内容。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:直到最后一个目录分隔符之前的文件路径。(
string
)
自版本 2.12 开始
filename
filename (filepath)
获取文件名。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:输入路径中的文件名部分。(
string
)
自版本 2.12 开始
is_absolute
is_absolute (filepath)
检查路径是否是绝对路径,即不固定到根目录。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:如果
filepath
是绝对路径,则返回true
;否则返回false
。(boolean
)
自版本 2.12 开始
is_relative
is_relative (filepath)
检查路径是否是相对路径或固定到根目录。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:如果
filepath
是相对路径,则返回true
;否则返回false
。(boolean
)
自版本 2.12 开始
join
join (filepaths)
通过目录分隔符将路径元素组合在一起。
参数 | 描述 |
---|---|
filepaths |
路径组件( {string, ... } ) |
- 返回值:组合后的路径。(
string
)
自版本 2.12 开始
make_relative
make_relative (path, root[, unsafe])
根据相对路径缩短文件名。注意结果路径不会引入 ..
路径,因为符号链接的存在意味着 ../b
可能无法从 a/c
到达 a/b
。详情请参阅 这篇博客文章。
参数 | 描述 |
---|---|
path |
需要转换为相对路径的路径( string ) |
root |
根路径( string ) |
unsafe |
是否允许结果中包含 .. 。( boolean ) |
- 返回值:缩短后的文件名。(
string
)
自版本 2.12 开始
normalize
normalize (filepath)
规范化路径。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:规范化的路径。(
string
)
规范化规则如下:
//
只有作为(Windows)网络驱动器的一部分才有意义;在其他情况下,多个斜杠将被简化为一个平台相关的path.separator
。/
将变为平台相关的path.separator
。./
将被删除。- 空路径将变为
.
。
自版本 2.12 开始
split
split (filepath)
按目录分隔符拆分路径。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:所有路径组件组成的列表。(
{string, ...}
)
自版本 2.12 开始
split_extension
split_extension (filepath)
从文件路径中分离出最后一个扩展名,并返回其余部分和扩展名。如果存在扩展名,它将包含前导分隔符;如果路径没有扩展名,则返回空字符串作为扩展名。
参数 | 描述 |
---|---|
filepath |
路径( string ) |
- 返回值:
- 文件路径(无扩展名)(
string
) - 扩展名或空字符串(
string
)
- 文件路径(无扩展名)(
自版本 2.12 开始
split_search_path
split_search_path (search_path)
将字符串按照 search_path_separator
字符进行分割。在 Windows 上忽略空白项,在 Posix 上将空白项转换为 .
。在 Windows 上,路径元素会去除引号。
参数 | 描述 |
---|---|
search_path |
平台特定的搜索路径( string ) |
- 返回值:搜索路径中的目录列表。(
{string, ...}
)
自版本 2.12 开始
treat_strings_as_paths
treat_strings_as_paths ()
增强字符串模块,使得字符串可以作为路径对象使用。
自版本 2.12 开始