浏览代码

fix(tool): 摸鱼每轮重新生成内容+移除状态行粘连

- 每轮循环前重新 gen_random_content(文件模式除外),消除内容固定反复重复
- 移除 \r\033[K 假状态行覆盖机制(非TTY/真实终端会与内容粘连),改为纯内容输出
- 验证:20轮无裸数字行/无粘连/单轮无重复
b 5 天之前
父节点
当前提交
7633122e30
共有 1 个文件被更改,包括 5 次插入20 次删除
  1. 5 20
      tool-moyu.sh

+ 5 - 20
tool-moyu.sh

@@ -167,8 +167,10 @@ gen_random_content() {
 
 # 内容来源:文件参数 > 随机生成
 CONTENT="${1:-}"
+FILE_MODE=0
 if [ -n "$CONTENT" ] && [ -f "$CONTENT" ]; then
 	mapfile -t LINES < "$CONTENT"
+	FILE_MODE=1
 elif [ -n "$CONTENT" ] && [ "$CONTENT" != "-" ]; then
 	echo "File not found: $CONTENT, falling back to random content." >&2
 	gen_random_content
@@ -183,28 +185,9 @@ rand_delay() {
 	else sleep "$(awk -v lo=80 -v hi=400 'BEGIN{srand(); printf "%.3f", (lo+int(rand()*(hi-lo+1)))/1000}')"; fi
 }
 
-# 假 AI 状态行(随机挑一个)
-STATUS=(
-	"analyzing..."
-	"thinking..."
-	"summarizing decisions..."
-	"generating summary..."
-	"searching graph..."
-	"optimizing implementation..."
-	"writing docs..."
-	"checking code quality..."
-	"syncing progress..."
-	"preparing next steps..."
-)
-
 run_once() {
-	local idx=0 total="${#LINES[@]}"
+	local line
 	for line in "${LINES[@]}"; do
-		idx=$((idx+1))
-		[ "$SILENT" = "0" ] && [ $((RANDOM % 6)) -eq 0 ] && {
-			printf "\r\033[K%s" "${STATUS[$((RANDOM % ${#STATUS[@]}))]}"
-			rand_delay
-		}
 		if [ "$TYPE_EFFECT" = "1" ]; then
 			local i
 			for ((i=0; i<${#line}; i++)); do printf "%s" "${line:i:1}"; rand_delay; done
@@ -220,6 +203,8 @@ run_once() {
 n=0
 while [ "$LOOP_TIMES" -eq 0 ] || [ "$n" -lt "$LOOP_TIMES" ]; do
 	n=$((n+1))
+	# 每轮重新生成随机内容(避免内容固定导致反复重复);文件模式则用固定内容
+	[ "$FILE_MODE" = "0" ] && gen_random_content
 	run_once
 done
 exit 0