@antora/expand-path-helper

中文文档
3.0.0发布于 2024/11/27MPL-2.0CommonJS零依赖近 30 天下载 20.7万

提供一个帮助器函数来扩展一条通往正态绝对路径的路径. 此函数在用作第一个路径段时还会扩展出"点","tilde"和"tilde+".

中文使用文档
文档目录6 节
  1. 安装
  2. API 密码
  3. 使用量
  4. *没有
  5. 窗口
  6. 版权和许可证

@antora/ 扩展路径帮助器

一个节点(Node.js)模块,提供辅助功能来扩展一条通向正态绝对路径的路径. 此函数在用作第一个路径段时也会扩展以下短手表达式: dot (.),平面(平面~),或平面加(~+) (中文(简体) ). 扩展路径是系统依赖的. 开发用于安多拉.

安装

$ npm i @antora/expand-path-helper

API 密码

function expandPath (path[, context])

将指定的路径扩展为正态的绝对路径. 这一职能的主要目的是扩大路径和正常化.

  • path < string> - 要扩展的路径 . 需要这个参数 . 如果路径已经绝对,则路径会正常化并返回.
  • context <Object> - 控制路径解析方法的命名参数. 所有被命名的参数都是可选的. 此参数也可以被指定为字符串,在这种情况下,它被用作基准上下文参数. 默认 : {}。 。 。 .
    • base < string> - 用来解决相对路径而不是工作目录的基础目录. 默认 : ~+
    • cwd < string> - 要用作工作目录而不是当前工作目录的绝对目录. 如果没有指定,则使用当前工作目录. 默认 : undefined
    • dot < string > - 用于替换一主要点的值(.) 部分. 如果值是 .,该数值 base 则使用上下文参数. 默认 : .

如果路径参数的第一部分,基上下文参数,或点上下文参数是 ~ 或者说 ~+,该值将分别扩展至用户主目录或当前工作目录. 如果路径参数的第一部分是 .,该值在点上下文参数被扩展后被点上下文参数所取代.

使用量

产出 expandPath 取决于其运行的系统(具体取决于 path.sep 数值).

*没有

const expandPath = require('@antora/expand-path-helper')

expandPath('/absolute/path')
//=> /absolute/path

expandPath('/absolute/./path/..')
//=> /absolute

expandPath('foo/bar')
//=> $PWD/foo/bar

expandPath('./foo/bar')
//=> $PWD/foo/bar

expandPath('~/foo/bar')
//=> $HOME/foo/bar

expandPath('~+/foo/bar')
//=> $PWD/foo/bar

expandPath('~+/foo/bar', { cwd: '/working/dir' })
//=> /working/dir/foo/bar

expandPath('foo/bar', '/base/dir')
//=> /base/dir/foo/bar

expandPath('foo/bar', { base: '/base/dir' })
//=> /base/dir/foo/bar

expandPath('./foo/bar', { base: '/base/dir' })
//=> /base/dir/foo/bar

expandPath('./foo/bar', { dot: '/dot/dir' })
//=> /dot/dir/foo/bar

窗口

const expandPath = require('@antora/expand-path-helper')

expandPath('C:\\absolute\\path')
//=> C:\absolute\path

expandPath('C:/absolute/path')
//=> C:\absolute\path

expandPath('C:\\absolute\\.\\path\\..')
//=> C:\absolute

expandPath('foo\\bar')
//=> C:\current\directory\foo\bar

expandPath('.\\foo\\bar')
//=> C:\current\directory\foo\bar

expandPath('~\\foo\\bar')
//=> C:\Users\user\foo\bar

expandPath('~+\\foo\\bar')
//=> C:\current\directory\foo\bar

expandPath('~+\\foo\\bar', { cwd: 'C:\\working\\dir' })
//=> C:\working\dir\foo\bar

expandPath('foo\\bar', 'C:\\base\\dir')
//=> C:\base\dir\foo\bar

expandPath('foo\\bar', { base: 'C:\\base\\dir' })
//=> C:\base\dir\foo\bar

expandPath('.\\foo\\bar', { base: 'C:\\base\\dir' })
//=> C:\base\dir\foo\bar

expandPath('.\\foo\\bar', { dot: 'C:\\dot\\dir' })
//=> C:\dot\dir\foo\bar

在Windows上,输入路径可能使用前向鞭打,但被扩展的路径总是有后向鞭打.

版权(C)2018年-由OpenDevise Inc. 和Antora的个人贡献者提供.

该软件的使用按照下列规定进行: Mozilla 公共许可版本 2.0 (MPL-2.0) (中文(简体) ).

版本与发布记录

@antora/expand-path-helper 共发布 6 个版本,首次发布于 2018/02/22;过去 12 个月发布了 0 个版本。

版本发布日期距今
3.0.0latest2024/11/271.9 年前
2.0.02021/07/175 年前
1.0.02018/02/288 年前
1.0.0-rc.32018/02/248 年前
1.0.0-rc.22018/02/238 年前
1.0.0-rc.12018/02/228 年前

关于 @antora/expand-path-helper 的常见问题

@antora/expand-path-helper 是什么?

提供一个帮助器函数来扩展一条通往正态绝对路径的路径. 此函数在用作第一个路径段时还会扩展出"点","tilde"和"tilde+".

如何安装 @antora/expand-path-helper?

在项目目录运行 npm install @antora/expand-path-helper,或使用 pnpm add / yarn add / bun add。

@antora/expand-path-helper 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/antora__expand-path-helper 是否存在。

@antora/expand-path-helper 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@antora/expand-path-helper 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=16.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@antora/expand-path-helper 可以商用吗?

@antora/expand-path-helper 使用 MPL-2.0 许可。弱 Copyleft:可以商用,也可以和闭源代码一起使用;但如果分发时修改了 MPL 授权的文件,这些文件的修改需以 MPL 开源。以上为概括,不构成法律意见,请以许可原文为准。

@antora/expand-path-helper 的下载量有多少?

根据 npm 官方下载统计,@antora/expand-path-helper 在 2026/10/06 – 2026/11/04 这 30 天内被下载 207,203 次,日均约 6,907 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@antora/expand-path-helper 还在维护吗?

最新版本 3.0.0 发布于 2024/11/27(1.9 年前);至今共发布 6 个版本,其中过去 12 个月发布了 0 个;首次发布于 2018/02/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。