mirror of
https://github.com/RubyMetric/chsrc
synced 2026-03-03 12:10:29 +08:00
ls 输出 scope 信息
This commit is contained in:
@@ -303,25 +303,69 @@ cli_print_target_features (Target_t *target, const char *input_target_name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
char *msg = CHINESE ? " Scope: 换源作用域 "
|
char *scope_msg = NULL;
|
||||||
: " Scope: scope of the recipe";
|
|
||||||
char *scope_msg = xy_strcat (3, msg, "| chsrc set -scope=default|project|user|system ", input_target_name);
|
|
||||||
|
|
||||||
switch (target->cap_local)
|
for (int i=0; i<NumberOfScopeType; i++)
|
||||||
{
|
{
|
||||||
case CanNot:
|
ScopeCapability_t cap = target->scope_caps[i];
|
||||||
printf (" %s%s\n", bdred(NoMark), scope_msg);br();
|
char *scope_name;
|
||||||
break;
|
if (i == 0)
|
||||||
case FullyCan:
|
{
|
||||||
printf (" %s%s\n", bdgreen(YesMark), purple(scope_msg));br();
|
scope_name = CHINESE ? " 项目级换源" : " project scope";
|
||||||
break;
|
scope_msg = xy_strcat (3, scope_name, " | chsrc set -scope=project ", input_target_name);
|
||||||
case PartiallyCan:
|
}
|
||||||
printf (" %s%s\n\n %s\n", bdgreen(HalfYesMark), purple(scope_msg),
|
else if (i == 1)
|
||||||
target->cap_local_explain ? target->cap_local_explain : "");br();
|
{
|
||||||
break;
|
scope_name = CHINESE ? " 用户级换源" : " user scope";
|
||||||
default:
|
scope_msg = xy_strcat (3, scope_name, " | chsrc set -scope=user ", input_target_name);
|
||||||
xy_unreached();
|
}
|
||||||
|
else if (i == 2)
|
||||||
|
{
|
||||||
|
scope_name = CHINESE ? " 系统级换源" : " system scope";
|
||||||
|
scope_msg = xy_strcat (3, scope_name, " | chsrc set -scope=system ", input_target_name);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
xy_unreached();
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (cap)
|
||||||
|
{
|
||||||
|
case ScopeCap_Unknown:
|
||||||
|
printf (" %s%s (%s)\n", bdred(NoMark), purple(scope_msg), "是否支持该作用域尚不了解,欢迎贡献");
|
||||||
|
break;
|
||||||
|
case ScopeCap_Unable:
|
||||||
|
printf (" %s%s (%s)\n", bdred(NoMark), purple(scope_msg), "不支持的作用域");
|
||||||
|
break;
|
||||||
|
case ScopeCap_Able_But_Not_Implemented:
|
||||||
|
printf (" %s%s (%s)\n", bdyellow(HalfYesMark), purple(scope_msg), "支持但未实现");
|
||||||
|
break;
|
||||||
|
case ScopeCap_Able_And_Implemented:
|
||||||
|
printf (" %s%s (%s)\n", bdgreen(YesMark), purple(scope_msg), "支持且已实现");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
xy_unreached();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Scope_t default_scope = target->default_scope;
|
||||||
|
char *default_scope_name = NULL;
|
||||||
|
switch (default_scope)
|
||||||
|
{
|
||||||
|
case ProjectScope:
|
||||||
|
default_scope_name = CHINESE ? "项目级" : "Project Scope";
|
||||||
|
break;
|
||||||
|
case UserScope:
|
||||||
|
default_scope_name = CHINESE ? "用户级" : "User Scope";
|
||||||
|
break;
|
||||||
|
case SystemScope:
|
||||||
|
default_scope_name = CHINESE ? "系统级" : "System Scope";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
xy_unreached();
|
||||||
|
}
|
||||||
|
print (bdblue (" = "));
|
||||||
|
printf ("默认作用域 | chsrc set -scope=default %s (= %s)\n", input_target_name, default_scope_name);
|
||||||
|
br();
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
* Contributors : @livelycode36
|
* Contributors : @livelycode36
|
||||||
* |
|
* |
|
||||||
* Created On : <2023-08-29>
|
* Created On : <2023-08-29>
|
||||||
* Last Modified : <2026-02-22>
|
* Last Modified : <2026-02-24>
|
||||||
*
|
*
|
||||||
* chsrc struct
|
* chsrc struct
|
||||||
* ------------------------------------------------------------*/
|
* ------------------------------------------------------------*/
|
||||||
@@ -107,12 +107,14 @@ typedef enum Scope_t
|
|||||||
}
|
}
|
||||||
Scope_t;
|
Scope_t;
|
||||||
|
|
||||||
|
#define NumberOfScopeType 3
|
||||||
|
|
||||||
typedef enum ScopeCapability_t
|
typedef enum ScopeCapability_t
|
||||||
{
|
{
|
||||||
ScopeCap_Unknown, /* 未知,缺乏对该 target 的细致了解 */
|
ScopeCap_Unknown, /* 未知,缺乏对该 target 的细致了解 */
|
||||||
ScopeCap_Unable, /* 不支持该作用域 */
|
ScopeCap_Unable, /* 不支持该作用域 */
|
||||||
ScopeCap_Able_But_NotImplemented, /* 支持但chsrc尚未实现 */
|
ScopeCap_Able_But_Not_Implemented, /* 支持但chsrc尚未实现 */
|
||||||
ScopeCap_Able_And_Implemented /* 支持且chsrc已经实现 */
|
ScopeCap_Able_And_Implemented /* 支持且chsrc已经实现 */
|
||||||
}
|
}
|
||||||
ScopeCapability_t;
|
ScopeCapability_t;
|
||||||
|
|
||||||
@@ -162,8 +164,14 @@ typedef struct Target_t
|
|||||||
Capability_t cap_local; /* 是否支持 local mode */
|
Capability_t cap_local; /* 是否支持 local mode */
|
||||||
char *cap_local_explain; /* local mode 的说明 */
|
char *cap_local_explain; /* local mode 的说明 */
|
||||||
|
|
||||||
Scope_t default_scope; /* 默认作用域 */
|
/**
|
||||||
ScopeCapability_t scope_caps[3]; /* 各作用域的支持情况 */
|
* 各作用域的支持情况
|
||||||
|
* 0: project scope
|
||||||
|
* 1: user scope
|
||||||
|
* 2: system scope
|
||||||
|
*/
|
||||||
|
ScopeCapability_t scope_caps[NumberOfScopeType];
|
||||||
|
Scope_t default_scope; /* 默认作用域 */
|
||||||
|
|
||||||
char *note; /* 备注 */
|
char *note; /* 备注 */
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user