diff options
| author | ruki <waruqi@gmail.com> | 2019-06-23 21:08:29 +0800 |
|---|---|---|
| committer | ruki <waruqi@gmail.com> | 2019-06-23 21:08:29 +0800 |
| commit | 82b1b474c8d62b8f4b25d02d61675b3790caae1e (patch) | |
| tree | 0c78bb1f6b7026caa553ee4203e91d3b3acc32d0 | |
| parent | 5c4032ec25a6b86ef7e4c097976a13373c3f5925 (diff) | |
| download | xmake-docs-docsify.tar.gz xmake-docs-docsify.zip | |
remove table.dump and add path.splitenvdocsify
| -rw-r--r-- | guide/project_examples.md | 2 | ||||
| -rw-r--r-- | manual/builtin_modules.md | 59 | ||||
| -rw-r--r-- | zh-cn/guide/project_examples.md | 2 | ||||
| -rw-r--r-- | zh-cn/manual/builtin_modules.md | 37 |
4 files changed, 57 insertions, 43 deletions
diff --git a/guide/project_examples.md b/guide/project_examples.md index 385d5a5c..cdb1ca8e 100644 --- a/guide/project_examples.md +++ b/guide/project_examples.md @@ -156,7 +156,7 @@ target("cuda_console") ``` <p class="tip"> -Starting with v2.2.7, the default build will enable device-link, @see https://devblogs.nvidia.com/separate-compilation-linking-cuda-device-code/ +Starting with v2.2.7, the default build will enable device-link. (see [Separate Compilation and Linking of CUDA C++ Device Code](https://devblogs.nvidia.com/separate-compilation-linking-cuda-device-code/)) If you want to disable device-link, you can set it with `add_values("cuda.devlink", false)`. </p> diff --git a/manual/builtin_modules.md b/manual/builtin_modules.md index c46104fd..ae09cb39 100644 --- a/manual/builtin_modules.md +++ b/manual/builtin_modules.md @@ -162,7 +162,7 @@ import("core.platform.platform", {alias = "p"}) function main() -- So we can use p to call the plats interface of the platform module to get a list of all the platforms supported by xmake. - table.dump(p.plats()) + utils.dump(p.plats()) end ``` @@ -1110,7 +1110,7 @@ local data = io.load("xxx.txt") if data then -- Dump prints the contents of the entire table in the terminal, formatting the output - table.dump(data) + utils.dump(data) end ``` @@ -1210,17 +1210,18 @@ io.printf("xxx.txt", "hello %s!\n", "xmake") The path operation module implements cross-platform path operations, which is a custom module of xmake. -| Interface | Description | Supported Versions | -| ----------------------------------------------- | -------------------------------------------- | -------- | -| [path.join](#path-join) | Stitching Path | >= 2.0.1 | -| [path.translate](#path-translate) | Convert path to the path style of the current platform | >= 2.0.1 | -| [path.basename](#path-basename) | Get the file name with no suffix at the end | >= 2.0.1 | -| [path.filename](#path-filename) | Get the file name with the last suffix of the path | >= 2.0.1 | -| [path.extension](#path-extension) | Get the suffix of the path | >= 2.0.1 | -| [path.directory](#path-directory) | Get the last directory name of the path | >= 2.0.1 | -| [path.relative](#path-relative) | Convert to relative path | >= 2.0.1 | -| [path.absolute](#path-absolute) | Convert to Absolute Path | >= 2.0.1 | -| [path.is_absolute](#path-is_absolute) | Determine if it is an absolute path | >= 2.0.1 | +| Interface | Description | Supported Versions | +| ----------------------------------------------- | -------------------------------------------- | -------- | +| [path.join](#path-join) | Stitching Path | >= 2.0.1 | +| [path.translate](#path-translate) | Convert path to the path style of the current platform | >= 2.0.1 | +| [path.basename](#path-basename) | Get the file name with no suffix at the end | >= 2.0.1 | +| [path.filename](#path-filename) | Get the file name with the last suffix of the path | >= 2.0.1 | +| [path.extension](#path-extension) | Get the suffix of the path | >= 2.0.1 | +| [path.directory](#path-directory) | Get the last directory name of the path | >= 2.0.1 | +| [path.relative](#path-relative) | Convert to relative path | >= 2.0.1 | +| [path.absolute](#path-absolute) | Convert to Absolute Path | >= 2.0.1 | +| [path.is_absolute](#path-is_absolute) | Determine if it is an absolute path | >= 2.0.1 | +| [path.splitenv](#path-splitenv) | Split a envienment variable value of an array of pathes | >= 2.2.7 | #### path.join @@ -1336,6 +1337,25 @@ if path.is_absolute("/tmp/file.txt") then end ``` +###### path.splitenv + +- Split a envienment variable value of an array of pathes + +```lua +local pathes = path.splitenv(vformat("$(env PATH)")) + +-- for windows +local pathes = path.splitenv("C:\\Windows;C:\\Windows\\System32") +-- got { "C:\\Windows", "C:\\Windows\\System32" } + +-- for *nix +local pathes = path.splitenv("/usr/bin:/usr/local/bin") +-- got { "/usr/bin", "/usr/local/bin" } +``` + +The result is an array of strings, each item is a path in the input string. + + ### table Table belongs to the module provided by Lua native. For the native interface, you can refer to: [lua official document](https://www.lua.org/manual/5.1/manual.html#5.5) @@ -1346,7 +1366,6 @@ It has been extended in xmake to add some extension interfaces: | ----------------------------------------------- | -------------------------------------------- | -------- | | [table.join](#table-join) | Merge multiple tables and return | >= 2.0.1 | | [table.join2](#table-join2) | Merge multiple tables into the first table | >= 2.0.1 | -| [table.dump](#table-dump) | Output all contents of table | >= 2.0.1 | | [table.unique](#table-unique) | Deduplicate the contents of the table | >= 2.0.1 | | [table.slice](#table-slice) | Get the slice of the table | >= 2.0.1 | @@ -1383,18 +1402,6 @@ table.join2(t, {1, 2, 3}) The result is: `t = {0, 9, 1, 2, 3}` -#### table.dump - -- Output all contents of the table - -Recursively format all the contents of the printed table, generally used for debugging, for example: - -```lua -table.dump({1, 2, 3}) -``` - -The result is: `{1, 2, 3}` - #### table.unique - Deduplicate the contents of the table diff --git a/zh-cn/guide/project_examples.md b/zh-cn/guide/project_examples.md index 2f85824c..3f722f00 100644 --- a/zh-cn/guide/project_examples.md +++ b/zh-cn/guide/project_examples.md @@ -158,7 +158,7 @@ target("cuda_console") ``` <p class="tip"> -从v2.2.7版本开始,默认构建会启用device-link,@see https://devblogs.nvidia.com/separate-compilation-linking-cuda-device-code/ +从v2.2.7版本开始,默认构建会启用device-link。(参见 [Separate Compilation and Linking of CUDA C++ Device Code](https://devblogs.nvidia.com/separate-compilation-linking-cuda-device-code/)) 如果要显示禁用device-link,可以通过`add_values("cuda.devlink", false)` 来设置。 </p> diff --git a/zh-cn/manual/builtin_modules.md b/zh-cn/manual/builtin_modules.md index 8f1b2afd..a0412ffb 100644 --- a/zh-cn/manual/builtin_modules.md +++ b/zh-cn/manual/builtin_modules.md @@ -162,7 +162,7 @@ import("core.platform.platform", {alias = "p"}) function main() -- 这样我们就可以使用p来调用platform模块的plats接口,获取所有xmake支持的平台列表了 - table.dump(p.plats()) + utils.dump(p.plats()) end ``` @@ -1110,7 +1110,7 @@ local data = io.load("xxx.txt") if data then -- 在终端中dump打印整个table中内容,格式化输出 - table.dump(data) + utils.dump(data) end ``` @@ -1221,6 +1221,7 @@ io.printf("xxx.txt", "hello %s!\n", "xmake") | [path.relative](#path-relative) | 转换成相对路径 | >= 2.0.1 | | [path.absolute](#path-absolute) | 转换成绝对路径 | >= 2.0.1 | | [path.is_absolute](#path-is_absolute) | 判断是否为绝对路径 | >= 2.0.1 | +| [path.splitenv](#path-splitenv) | 分割环境变量中的路径 | >= 2.2.7 | #### path.join @@ -1338,6 +1339,25 @@ if path.is_absolute("/tmp/file.txt") then end ``` +###### path.splitenv + +- 分割环境变量中的路径 + +```lua +local pathes = path.splitenv(vformat("$(env PATH)")) + +-- for windows +local pathes = path.splitenv("C:\\Windows;C:\\Windows\\System32") +-- got { "C:\\Windows", "C:\\Windows\\System32" } + +-- for *nix +local pathes = path.splitenv("/usr/bin:/usr/local/bin") +-- got { "/usr/bin", "/usr/local/bin" } +``` + +结果为一个包含了输入字符串中路径的数组。 + + ### table table属于lua原生提供的模块,对于原生接口使用可以参考:[lua官方文档](https://www.lua.org/manual/5.1/manual.html#5.5) @@ -1348,7 +1368,6 @@ xmake中对其进行了扩展,增加了一些扩展接口: | ----------------------------------------------- | -------------------------------------------- | -------- | | [table.join](#table-join) | 合并多个table并返回 | >= 2.0.1 | | [table.join2](#table-join2) | 合并多个table到第一个table | >= 2.0.1 | -| [table.dump](#table-dump) | 输出table的所有内容 | >= 2.0.1 | | [table.unique](#table-unique) | 对table中的内容进行去重 | >= 2.0.1 | | [table.slice](#table-slice) | 获取table的切片 | >= 2.0.1 | @@ -1385,18 +1404,6 @@ table.join2(t, {1, 2, 3}) 结果为:`t = {0, 9, 1, 2, 3}` -#### table.dump - -- 输出table的所有内容 - -递归格式化打印table中的所有内容,一般用于调试, 例如: - -```lua -table.dump({1, 2, 3}) -``` - -结果为:`{1, 2, 3}` - #### table.unique - 对table中的内容进行去重 |
