aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2019-06-23 21:08:29 +0800
committerruki <waruqi@gmail.com>2019-06-23 21:08:29 +0800
commit82b1b474c8d62b8f4b25d02d61675b3790caae1e (patch)
tree0c78bb1f6b7026caa553ee4203e91d3b3acc32d0
parent5c4032ec25a6b86ef7e4c097976a13373c3f5925 (diff)
downloadxmake-docs-docsify.tar.gz
xmake-docs-docsify.zip
remove table.dump and add path.splitenvdocsify
-rw-r--r--guide/project_examples.md2
-rw-r--r--manual/builtin_modules.md59
-rw-r--r--zh-cn/guide/project_examples.md2
-rw-r--r--zh-cn/manual/builtin_modules.md37
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中的内容进行去重