summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2020-02-27 22:48:24 +0800
committerruki <[email protected]>2020-02-27 10:50:25 +0800
commit8516f21d34672ef38f30890c1da41846a7f3a4e8 (patch)
tree746ec3c526af85dbd97d0951e43604d766380002
parentf26c0edb8b74cd48a27d833bc75a0cd0ecf6a0a1 (diff)
add xmake service plugin
-rw-r--r--xmake/core/base/option.lua8
-rw-r--r--xmake/plugins/service/main.lua28
-rw-r--r--xmake/plugins/service/xmake.lua44
3 files changed, 76 insertions, 4 deletions
diff --git a/xmake/core/base/option.lua b/xmake/core/base/option.lua
index 36ed4b657..4b8157906 100644
--- a/xmake/core/base/option.lua
+++ b/xmake/core/base/option.lua
@@ -569,7 +569,7 @@ function option.show_menu(task)
-- print description
if taskmenu.description then
io.print("")
- io.print(taskmenu.description)
+ io.print(colors.translate(taskmenu.description))
end
-- print options
@@ -611,7 +611,7 @@ function option.show_main()
-- print description
if main.description then
io.print("")
- io.print(main.description)
+ io.print(colors.translate(main.description))
end
-- print tasks
@@ -664,7 +664,7 @@ function option.show_main()
local taskline = string.format(narrow and " %s%s" or " %s%s",
taskinfo.shortname and (taskinfo.shortname .. ", ") or " ",
taskname)
- table.insert(tablecontent, {taskline, taskinfo.description or ""})
+ table.insert(tablecontent, {taskline, colors.translate(taskinfo.description or "")})
end
end
@@ -784,7 +784,7 @@ function option.show_options(options, taskname)
v = v()
end
if type(v) == "string" then
- table.insert(desp_strs, v)
+ table.insert(desp_strs, colors.translate(v))
elseif type(v) == "table" then
table.move(v, 1, #v, #desp_strs + 1, desp_strs)
end
diff --git a/xmake/plugins/service/main.lua b/xmake/plugins/service/main.lua
new file mode 100644
index 000000000..62b2564aa
--- /dev/null
+++ b/xmake/plugins/service/main.lua
@@ -0,0 +1,28 @@
+--!A cross-platform build utility based on Lua
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+-- http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+-- Copyright (C) 2015-2020, TBOOX Open Source Group.
+--
+-- @author ruki
+-- @file main.lua
+--
+
+-- imports
+import("core.base.option")
+
+-- main
+function main()
+ cprint("${color.warning}Experimental, still in development!")
+end
+
diff --git a/xmake/plugins/service/xmake.lua b/xmake/plugins/service/xmake.lua
new file mode 100644
index 000000000..182fe7d0b
--- /dev/null
+++ b/xmake/plugins/service/xmake.lua
@@ -0,0 +1,44 @@
+--!A cross-platform build utility based on Lua
+--
+-- Licensed under the Apache License, Version 2.0 (the "License");
+-- you may not use this file except in compliance with the License.
+-- You may obtain a copy of the License at
+--
+-- http://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS,
+-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-- See the License for the specific language governing permissions and
+-- limitations under the License.
+--
+-- Copyright (C) 2015-2020, TBOOX Open Source Group.
+--
+-- @author ruki
+-- @file service.lua
+--
+
+-- define task
+task("service")
+
+ -- set category
+ set_category("plugin")
+
+ -- on run
+ on_run("main")
+
+ -- set menu
+ set_menu {
+ -- usage
+ usage = "xmake service [options]"
+
+ -- description
+ , description = "Start service for remote or distributed compilation and etc. ${color.warning}(Experimental, still in development)"
+
+ -- options
+ , options =
+ {
+ {'d', "daemon", "k", nil, "Run service as daemon." }
+ , {nil, "status", "k", nil, "Show service status if the daemon service has been started." }
+ }
+ }