增强命令参数输出的颜色显示,添加变量自动补全提示功能
This commit is contained in:
@@ -239,6 +239,22 @@ bool vset_option_cp(sh_t *sh_hdl, int argc, const char *argv[], bool flag, const
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief 对应 SET_VAR 所设置的变量的可用自动补全函数,默认补全一个 '?' 号
|
||||
*
|
||||
* @param sh_hdl 原参数
|
||||
* @param argc 原参数
|
||||
* @param argv 原参数指针值,可能被更新
|
||||
* @param flag 原参数
|
||||
*/
|
||||
void vset_cp_hint(sh_t *sh_hdl, int argc, const char *argv[], bool flag)
|
||||
{
|
||||
if (argc + flag == 1)
|
||||
{
|
||||
sh_completion_resource(sh_hdl, NULL, "? ", NULL);
|
||||
}
|
||||
}
|
||||
|
||||
int vset_unsigned(void *dest, __type_attr_t attr, vset_cb cb, const char *argv[], unsigned int low, unsigned int high)
|
||||
{
|
||||
SYS_ASSERT(s_sh_hdl, "未使用 vset_init() 初始化");
|
||||
@@ -971,7 +987,6 @@ static int _set_dest_string(void *dest, __type_attr_t attr, vset_cb cb, const ch
|
||||
switch (attr)
|
||||
{
|
||||
case __TYPE_ATTR_STR:
|
||||
memset(dest, 0, bufsize);
|
||||
if (memcmp(dest, str, str_size))
|
||||
{
|
||||
if (cb)
|
||||
@@ -981,6 +996,7 @@ static int _set_dest_string(void *dest, __type_attr_t attr, vset_cb cb, const ch
|
||||
memcpy(value, str, str_size);
|
||||
_PARAM_CB();
|
||||
}
|
||||
memset(dest, 0, bufsize);
|
||||
memcpy(dest, str, str_size);
|
||||
global_cb = s_global_cb;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user