Аналитика Telegram-канала
Подписчики
968
Охват за 24 ч
54
ER за 24 ч
5,58%
Публикаций
1 923
Динамика подписчиков
7 дней
30 дней
6 месяцев
Больше
23 окт26 окт29 окт
Показаны последние 7 дней
Больше истории →
Охваты публикаций
27.1028.1028.1028.1028.1028.10
7
Средний охват
14
Лучший результат
Показаны 6 публикаций — последние в канале
Больше статистики →
Упоминания
7
Упоминаний
3
Из них репостов
5
Каналов
436
Упоминаний
376
Из них репостов
92
Каналов
Последние посты
3 из 1 923 2 из 1 923#tool PATTERN='omp|Complete|Claude' bash ~/bin/agi.sh &
#!/usr/bin/env bash
# 监听 DBus 通知,匹配后让 KDE Connect 设备响铃并复制内容到剪贴板
set -uo pipefail
PATTERN="${PATTERN:-ALERT:|CODE:|OTP|验证码}" DEVICE_ID="${DEVICE_ID:-}" DEVICE_NAME="${DEVICE_NAME:-}" COPY_FULL="${COPY_FULL:-true}"
clip() { [[ -n $1 ]] || return 0; if command -v wl-copy &>/dev/null; then printf %s "$1" | wl-copy; elif command -v xclip &>/dev/null; then printf %s "$1" | xclip -sel c; elif command -v xsel &>/dev/null; then printf %s "$1" | xsel -bi; else qdbus org.kde.klipper /klipper setClipboardContents "$1" &>/dev/null || true; fi; }
ring() { local id=$DEVICE_ID n=$DEVICE_NAME; [[ -z $id$n ]] && id=$(kdeconnect-cli -a --id-only 2>/dev/null | head -n1); if [[ -n $id ]]; then kdeconnect-cli --ring -d "$id" &>/dev/null & elif [[ -n $n ]]; then kdeconnect-cli --ring -n "$n" &>/dev/null & else echo "警告: 未找到可用的 KDE Connect 设备" >&2; fi; }
echo "监听系统通知,匹配模式: $PATTERN (Ctrl+C 退出)"
dbus-monitor --session "type='method_call',interface='org.freedesktop.Notifications',member='Notify'" |
awk '/^method call/{c=0;a=s=b=""} /string "/{c++;if(match($0,/".*"/)){v=substr($0,RSTART+1,RLENGTH-2);if(c==1)a=v;else if(c==3)s=v;else if(c==4)b=v}} /^[[:space:]]*int32/&&a s b!=""{print a"\t"s"\t"b;fflush();a=s=b=""}' |
while IFS=$'\t' read -r app sum body; do
grep -qEi -- "$PATTERN" <<<"$app $sum $body" || continue
printf '[%(%T)T] %s | %s | %s\n' -1 "$app" "$sum" "$body"
[[ $COPY_FULL == true ]] && body="$sum${sum:+$'\n'}$body"
ring; clip "$body"; echo " → 已响铃并复制"
done
# 用于在手机上 Tailscale IP连接这台设备,当 Code Agent 完工时,打过去让手机闹钟
kdeconnect-cli --ping-msg "$sum" -d "$id" # 温和:一条带振动的通知
kdeconnect-cli --share-text "$body" -d "$id" # 直接推一条可复制的通知
(( $(date +%H) >= 23 || $(date +%H) < 8 )) && mode=ping || mode=ring
KDE Connect 的「运行命令」插件可以让手机远程触发电脑命令。配一个 tmux send-keys -t agent "继续" Enter
😅 不知道是【班味】Or【松弛感】,取决于怎么用。 打游戏用这个是【高效休闲】,熬夜用是神经闹钟
ещё
3
0
28 окт, 18:52
#ai探讨
试着写10个短片段,包含视觉上较好的甜点区,与比较js不如的灾难区
1. GUI/配置链
A gui.add(p,'speed',0,10).step(0.5).name('速度').listen();
B gui.(add p "speed" 0 10).(step .5).(name "速度").(listen)
2. 批量状态赋值
A state.x = 0; state.y = 0; state.vx = -1; state.dragging = false;
B new state, ..{ -x 0 -y 0 -vx -1 -dragging_ NO }
3. 下标/切片
A const last = xs[xs.length-1], mid = xs.slice(2, -2);
B - last xs.[-1]
- mid xs.[2:-2]
4. 非空守卫 + with-scope
A if (ctx) { ctx.clearRect(0,0,w,h); ctx.fillStyle = '#000'; ctx.fillRect(0,0,w,h); }
B ctx?.{
clearRect 0 0 w h
new u, ..{-fillStyle "#000"}
fillRect 0 0 w h
}
最后这个绝了
> 😓 我决定把 ... 和 new 换掉。 这些可能会影响LLM的默认理解,尽管在体系里读的自然。但你有具体引用吗?
…… 好的。我现在决定用 ==> 替类结束 ---,用 __ 替函数末尾,用 now 替代new,用 pin 替代set(override)
- c (Counter)..{-start 10}.(inc).(inc n 5)
- mid Vec2.(lerp $(Vec2 0) $(Vec2)..{-x 4 -y 2} .5)
- s (Store)..{-name "todos"}
- off s.(on).{ \(ev)> imp.console.(log ev)}
~> (print hi) ""
- good "bohy"
- hip hi
#< 给人一种【节省了token】的体感
OK `${hip}!`
...
row Timer ..{-ms_ 1000} vars { -id_ NO ; -ticks 0 ; - alive (Var).{id_ != NO} }
===
⌐> (start cb)
now -id_ setInterval F.(n1).{ \(tick)>
set u, {-ticks ()> u+1}
(cb ticks)
} ms_
OK u
__
⌐> (stop)
clearInterval id_
now -id_ NO
OK u
__
==>
row LRU ..{-cap_ 100} vars { -map {}.(inc) ; - full (Var).{map.size >= cap_} }
===
⌐> (get k)
(OK NO) if isnt (map k)
- v map k
map k NO; map k v
OK v
__
⌐> (put k v)
(map k)?.{ map k NO }
full?.{ map $(map.(keys).(next).value) NO }
map k v
OK u
__
==>
其他吐槽也说明白了
A const d = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2) * scale + offset;
B - d Math.(sqrt (x2-x1)**2+(y2-y1)**2)*scale+offset
G - d sqrt $(offset + 1 scale ((p2 - p1).x@2 + (p2 - p1).y@2))
标准库有vec2,配合多项式语法
A items.sort((a,b) => a.w - b.w).map(i => i.id)
B items.(sort (a b){a.w-b.w}).(map (i){i.id}) # 猜的写法
G items.(sort).(2)> { A.w-B.w }.(map).{ u.id }
相当于 js function{}
A const data = await (await fetch(url)).json();
B - data await (await $(fetch url)).(json)
G - data (fetch_ url).(json_)
约定优于配置。另一个 py _private 的胜利
A if (dx < -1 || dy < -1) return;
B dx<-1||dy<-1? return
G OK() if dx < -1 Or dy < -1
结合性有设计,不是bash风格
A const { width = 300, height = width } = opts ?? {};
B ~> f()..{-w_ 300 -h_ w -isWtf_}
直接在声明侧解决,有kwarg和kwflag。
把 a at: 1 put: x 和 a.(add p "x" 5) 归为一类恰恰说明你没有用眼睛来看代码,而这直觉差异是什么训练都优化不了的
lambda 在 demo 里没出现过,你按 (a b){…} ,但其实它是另一个home run,而且是与Runtime结合的,是项目Logo \(^_^)> 的来由,相当于Haskell的>>=
- f (fname x)> x+1 是作为变量的函数。而Toplevel是只能有OK 语句和声明,比如直接写 (f x) { OK x+1 }
(f x).{ what } 则相当于do block,单个(u)>参数即this参数。global使用 imp.(alert "") 调用,大写规则同Ruby
项目Logo \(^_^)> 的来由并不是另一个晦涩的类型系统或IO,而是面向断点编程。 我们假设pid不会退出,只是存读档,而且可以通过初次顺利运行,确认函数体本身
{-x -99 -y -99} 没有问题。这是按pair结构来的,而-t 有 -1t 的多项式写法
$ 不是纯噪音。 mul A (sub B u.(get "C")) 会与C-like撞车
两套对象字面量是用 ..{} {} 区分的,你自己没看
new 的反转是有逗号的,而构造器统一只是函数。(onpointerdown ev) 只是缩进
..{} 会向内层传染。函数体在"..."结束,如果误解太大,我可以把类结尾的 --- 交换到函数上
关于"对 Codex 更友好" —— 如果并非如此,语言也提供读取工具,可以按py或js展开等价。
😅 现在的编程语言就像QWERTY一样没什么好处,你也说了,基本上不可能有新语言纯粹凭语法更加AI友好。 ⌐> ~> 的区分(类vs函数)更多是为了grep,不会单独为AI做功能
模型读的是 js/py 展开形,写的也不一定是我的语法。 语言可以只是repr,错误跟踪都是1:1到等价形式的
💭 把 a at: 1 put: x 和 a.(add p "x" 5) 归为一类恰恰说明你没有用眼睛来看代码,而这是什么训练都优化不了的
无论AI怎么看缩进和es6的const, java public和分号,它们对人类绝对是反直觉、缺乏视觉边界设计的。
> "对 Codex 友好"这句在设计稿里其实可以删掉,留着只会引来我上一轮那种追问
你对人类有错误估计: 我当然知道BPE不会被空格和tab诱导,但绝大多数人不会。 1格或2格缩进无所谓,重要的是人类怎么看
至于那少数懂 BPE 的人,像Lisp、兼容pyjs interop ,这已经足够独一无二,不需要这么消极
一开始是绑架pyjs,最终却并不一定失败。 Kotlin就是这样替代java的,圈子的代码质量和内容寻址依赖也很重要。可能LLM没那么在乎视觉上的对齐或低噪声,但仅仅从语法词法上讲,编程语言也是有阶层的。BASIC和Smalltalk(objc)属于最低的一档
🔮 #ai : 不适合创新。 代码质量高的AI,对灵感的理解不一定好
很多东西要解释很多遍,还不如自己一步一步走扎实
ещё
10
0
28 окт, 16:42
😅 又开始刷屏了。 这几条都算 #lisp
ещё
1
0
28 окт, 15:36
Продолжить анализ этого канала
- История роста подписчиков
- Просмотры и охваты публикаций
- Кто упоминает канал и кого упоминает он
- Похожие каналы и подбор для рекламы
Открыть аналитику
Демо до 14 дней