V2EX yadam
yadam

yadam

V2EX 第 76283 号会员,加入于 2014-10-08 16:57:00 +08:00
今日活跃度排名 8007
根据 yadam 的设置,主题列表只有在你登录之后才可查看
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
yadam 最近回复了
39 天前
回复了 young1 创建的主题 程序员 大模型吐 JSON
可以试试 k2, 有 token enforcer 保证可以吐对
https://gist.github.com/jialeicui/0a6f5328beb83ec525fc3e620f4be0b4
这个是我日常在 win 上用的 ahk 脚本, 大部分场景还是挺无感的
170 天前
回复了 rmrf 创建的主题 Linux Gnome 48 升级之后,字体漂亮了很多
@rmrf #33 感谢回复, 学习了
我发现我这边的问题应该是和这个 issue 有关: https://github.com/flameshot-org/flameshot/issues/564
172 天前
回复了 Frankcox 创建的主题 生活 父亲走了
节哀
172 天前
回复了 rmrf 创建的主题 Linux Gnome 48 升级之后,字体漂亮了很多
@rmrf #31 嗯, 感谢推荐, flameshot 在 48 下截图确实清晰些, 我是 2 个屏幕, 它截屏默认是把所有屏幕全截下来之后缩小, 然后再可以选 region, 不像 snipaste 那样无感

op 平时用遇到过这个问题么?
172 天前
回复了 rmrf 创建的主题 Linux Gnome 48 升级之后,字体漂亮了很多
前天虚拟机简单试了下 fedora 42 之后直接物理机安装了, 用到现在没有发现啥问题
用起来很流畅, 我 4k 显示器都是按照老经验, 之前 ubuntu24+gnome 46 的时候是用 tweaks 调字体 1.5 用的, 48 的安装完自动就是 150% 的 scale, 常用软件也都适配的挺正常
不清楚是我的老经验早就落伍了还是 gnome 48 带来的

还有一个: 配置 ulauncher 的时候使用 alt+space 的时候, 自动就把老的 binding 解除了, 这种我印象里以前也是没有的

snipaste 截图颗粒感很强, 不清楚是不是我自己的原因

总之用起来挺舒服
@hangyi #2 老哥是高手, 真是帮我大忙了.

两条都中, 关闭之后就没问题了, 没关闭的话先输入一个英文字母, 然后再输入中文就可以输入了.

想学习一下原理, 就只搜到了这个页面 https://fcitx-im.org/wiki/Hall_of_Shame_for_Linux_IME_Support
老哥有关键词可以分享一下么? 我再学习学习
我之前也有类似的想法, 但是自己能力太差放弃了.
看楼上也有很多有类似想法的, 要不要考虑搞个开源的 repo, 纯当大家一起练手
认同 #9 (除了 wezterm, 我没用过)

- kitty 目前是我的主力, 没有遇到过什么问题
- alacritty 是之前我的备用, 主要场景是要开两个 terminal, 并且希望绑定两个全局的 run or raise 的快捷键
- ghostty 感觉系统原生 UI 做的比较好, macOS 和 gnome 下都很融入系统, 有 tab, 在显示图片的时候比 kitty 分辨率高很多(类似 kitty icat 那种), 缺点是 ssh 到一台新机器的时候要把它自己的 terminfo 拷一份过去, 否则有些程序会报错. 然后 copy on select 之类的功能还不支持, 看有 issue 在讨论. 确实需要再养养, 现在它取代了 alacrity 作为我的第二终端模拟器
200 天前
回复了 yadam 创建的主题 Linux 分享一个 Linux 下的改键工具
@kuanat #4


感谢回复, 老哥太专业了, 句句直戳要害
我说一下在做这个工具的时候自己的一点儿思考, 希望老哥能够百忙之中再指导指导


关于 2:

这个真是大坑而且不太好在 remapping 的逻辑里处理完
我目前的做法是针对 ctrl 和 alt 做了特殊处理 (其实如你所说, alt 更加不好处理,我自己疏忽了没有考虑到 alt 在很多场景是不是完全的 modifier)

我对 ctrl 处理的需求是想解决按住 ctrl 打开浏览器链接的时候会强制在新 tab 打开
当前的处理逻辑是(以 ctrl 为例):
- 独立按下的时候透传一个 down 的 event
- 在 down 的状态如果还有其他键比如 C 按下并且匹配到改键逻辑, 则在发送改键 event 之前发送这个 ctrl 的 up event
- 发送修改之后的组合到 uinput
- 丢掉 src dev 后面 ctrl 和 C 的 up event

所有的 remap 的配置我都是使用当前 down 的所有 key 做匹配


关于 3:

我的初版实现是用 yaml 做配置文件的, 好处就是所有用户的逻辑可以提前知道, 性能可以做到比较好
但是只要想表达复杂逻辑 if else or and 之类的, 在 yaml 上做就很反人类

那自然想到脚本语言, 我评估了三种:

1. lua, 最开始就想到它, vim, 以及我个人比较喜欢的一个叫做 Hammerspoon 工具都用它
但是我自己不太会写 lua, 以及看到一些大佬评价 lua 的某些缺点, 就不做最优先考虑了
2. 像 AHK 一样, 有自己的脚本引擎, 这个是我最想要做的, 好处有:
- 可以做到配置特别简洁, 比如 remap 只需要两个 a::b 就行
- 脚本运行之前就能掌控所有的用户配置, 好做优化
- 支持复杂的 if else 等逻辑

缺点: 对我这样的初级开发者来讲, 实现起来太难了. 对用户来讲需要学习一个新的脚本语法
3. js, 算是综合前面所有考虑之后的妥协

另外提到全拦截, 我看到的最优雅的是 kmonad, 最开始我也实现了一个 layer 的方案, 但是后来发现对于我这样只想映射少量键的请, 要配置层多了之后每个层都要把所有键配置一下也挺烦的
最后想开了: 不要想大而全, 不要想让很多人都用, 就只做好一小部分功能就不错了
从这个角度出发, 我甚至都考虑过不开放配置, 就叫做: 让你的 linux 快捷键用起来像 macOS
我自己用的话可能就用 go 写死一个这个 [Engine]( https://github.com/jialeicui/KeySwift/blob/d21ee1e683cab0ee16862d08612ea0ccadb50327/pkg/engine/interfaces.go#L15) 的实现了


关于 4:

是我自己的强需求, 目前只实现了 gnome 相关的, 要做好确实要有好多路要走

老哥其他提到的很多知识点/名词都让我学到很多, 再次感谢!
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     941 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 11ms UTC 22:09 PVG 06:09 LAX 15:09 JFK 18:09
Do have faith in what you're doing.
ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86