必须开启"auto_find_in_selection": true,否则Ctrl+F仍全局搜索;F3/Alt+F3仅匹配选中内容,需双击选中完整标识符;局部替换须先选区再Ctrl+H,Replace All前先Find All验证。

必须开启 "auto_find_in_selection": true,否则选中后按 Ctrl+F 仍会全局搜——这是最常被忽略的配置项。
为什么选中文字后 Ctrl+F 还是搜全文件?
Sublime 默认不启用“仅在选区搜索”,哪怕你用鼠标拖出一块文本,Ctrl+F 调出的搜索框依然作用于整个文件。这不是 bug,是默认行为。
- 打开
Preferences → Settings,在右侧用户设置中添加一行:"auto_find_in_selection": true - 保存后重启搜索面板(关掉再开),或直接按
Ctrl+F输入内容,它会自动限制在当前选区内 - 该设置只影响标准查找(
Ctrl+F),不影响F3或Alt+F3的行为 - 若已开启但无效,检查是否被插件覆盖:打开
Preferences → Key Bindings – User,删掉可能冲突的ctrl+f绑定
F3 和 Alt+F3 的“选区依赖”怎么用才稳?
F3 和 Alt+F3 本身不依赖配置,但强依赖你“有没有真正选中一段非空、无歧义的文本”。它们不是从光标位置开始搜,而是拿你选中的内容当关键字去匹配。
- 双击变量名(如
userToken)再按F3,才能跳到下一个同名标识符;只放光标在词尾,F3实际搜的是空字符串 -
Alt+F3全选所有匹配项,但只匹配你选中的**字面内容**:选中log就不会避开logging,想整词必须先按Alt+W开启Whole Word - 驼峰命名如
isMounted,务必双击选中整个词,否则Alt+F3可能爆破出所有is子串 - JS 中字符串或注释内的相同文本默认不匹配——这是语法 scope 保护,不是失效,无需关掉
局部替换怎么避免误改?
局部替换的核心是“范围可控 + 意图明确”,不能靠直觉点 Replace All。
- 先确保已开启
"auto_find_in_selection": true,再选中目标区域(比如一个函数块或某段 HTML) - 按
Ctrl+H打开替换面板,输入查找和替换内容,此时搜索自动限于选区 - 别急着点
Replace All:先点Find All看高亮数量,确认没漏掉或包进不该动的地方 - 如果要批量重命名变量,优先用
Ctrl+D逐个加选(比Alt+F3更可控),再统一编辑 - 替换后文件不会自动标记为已修改,必须手动
Ctrl+S或Ctrl+K → Ctrl+S保存全部
真正卡住人的从来不是功能找不到,而是 "auto_find_in_selection" 没开、Where 框填错路径、或者以为 F3 能从光标起搜——它只认选区,不认光标位置。


















