V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
minilei
V2EX  ›  macOS

我一直弄不明白一个 finder 的操作逻辑,求大佬解惑

  •  
  •   minilei · 2022-08-25 20:44:39 +08:00 · 2096 次点击
    这是一个创建于 581 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在 windows 资源管理器里键盘按文件名首字母就能在相应文件上依次循环定位文件或文件夹,但在 finder 上这一操作就很迷,感觉完全没有规律,有没有大佬能讲讲这个操作的罗辑. 比如 b 开头的文件有 4 个,我按一次 b finder 定位到第一个 b 开头的文件,按第二次 b finder 就定位到了第 3 个 b 开头的文件,跳过了第 2 个,然后不管再按多少次 b finder 依然是定位到第三个文件不动.

    16 条回复    2022-08-27 16:10:53 +08:00
    forelegance
        1
    forelegance  
       2022-08-25 21:00:16 +08:00   ❤️ 7
    逻辑应该是,你敲一串字符,finder 找到匹配这一串字符的文件项;例如,你敲了“p”,匹配第一个项;你接着敲了‘pp’,则匹配的是文件名包含了“pp”的项,如果没有这个项,则会一直停留在之前匹配的项(即选中状态)。

    我一般直接敲整个单词,例如我的 Documents 文件夹下有很多“project#”开头的文件夹,我每次只敲#后面的三个字母,就会匹配到这个项目文件夹,例如"pmp", "scripts"。
    wu67
        2
    wu67  
       2022-08-25 21:00:54 +08:00   ❤️ 1
    试了一下, 乱七八糟的, 比你描述的更复杂. 怕是根本没经过测试就丢出来了
    F798
        3
    F798  
       2022-08-25 21:05:53 +08:00 via iPhone
    可以想象有一个搜索框,你可以输入完整单词
    5966
        4
    5966  
       2022-08-25 21:11:59 +08:00 via iPhone
    题外话,我喜欢 mac 会根据文件大小使用对应的单位显示,Windows 总是以 kb 为单位。
    yingbo
        5
    yingbo  
       2022-08-25 21:18:01 +08:00
    一楼正解
    bs10081
        6
    bs10081  
       2022-08-25 21:25:06 +08:00
    一樓正解
    jheroy
        7
    jheroy  
       2022-08-26 09:04:49 +08:00
    短时间连续输入会匹配整个输入的串, 如果间隔一段时间输入会当成两次搜索.
    sillydaddy
        8
    sillydaddy  
       2022-08-26 09:34:29 +08:00
    我建了一个 test 文件夹,里面新建
    d0
    d1
    d2
    d3
    d4
    这么 5 个文件夹,

    我用键盘输入 d ,不论快慢,只会匹配 d0 ,d4 。输入快的时候,会匹配 d4 ,那么意思应该是 dd 会匹配 d4 ?
    这与“如果没有这个项,则会一直停留在之前匹配的项”不符合啊。 @forelegance
    jheroy
        9
    jheroy  
       2022-08-26 10:08:59 +08:00
    @sillydaddy 匹配的逻辑是优先精确匹配, 如果没有精确匹配的项就按字符最近的匹配, dd 距离 d4 最近, 如果你还有个 d5 那么 dd 就会匹配 d5.
    sillydaddy
        10
    sillydaddy  
       2022-08-26 11:03:09 +08:00
    @jheroy @forelegance

    我又试验了一下,在原来基础上又新建了
    da
    dc
    dg
    dz
    这 4 个文件夹,然后快速输入 dd ,匹配的并不是 dc ,而是 dg 。

    这怎么解释原来的 dd 匹配 d4 呢?
    sillydaddy
        11
    sillydaddy  
       2022-08-26 11:04:17 +08:00
    一个输入匹配,逻辑要搞得这么复杂,就是设计的失败。
    jheroy
        12
    jheroy  
       2022-08-26 11:23:11 +08:00
    @sillydaddy 最近的的查找方式是当前字母先顺序往后找, 没找到再反向往前找.
    sillydaddy
        13
    sillydaddy  
       2022-08-26 12:17:59 +08:00
    @jheroy
    应该是这样。按照这个逻辑,1#楼的说法就不成立了,应该是每次输入都重新匹配,停留不动只是因为当前项就已经是最佳匹配项了。而且我试了也复现不了 1#楼所说的 project#的用法。
    minilei
        14
    minilei  
    OP
       2022-08-26 20:07:03 +08:00
    @sillydaddy 完全摸不懂这个逻辑,真实情况比我描述的更复杂,比如我按 D 前两次可能会在 D 开头的文件上循环选择,多按几次就停着不动了, 有时候按 X 他又选择了 Y 开头的文件,明明文件夹里有 X 开头的文件.
    xy90321
        15
    xy90321  
       2022-08-27 01:06:03 +08:00 via iPhone
    Windows 资源管理器也不是单纯首字母,连续输入的话是匹配完整词组的
    macOS 麻烦的点可能在于不一定是从文件名开头开始匹配

    Windows:keywords%
    macOS:%keywords%

    的感觉(因为没有官方文档或者开源代码做支撑,纯黑盒经验描述)
    sillydaddy
        16
    sillydaddy  
       2022-08-27 16:10:53 +08:00
    @minilei
    我试了下,按 x 选择 y 开头的,可能是如#10 楼和#12 楼所说的情况,比如有 4 个文件夹
    xabc
    xdef
    yabc
    ydef

    那么连续输入 xe ,或者 xf 等等,它会匹配 yabc 这个文件夹,因为「按当前字母先顺序往后找, 没找到再反向往前找」,xe 按照字符串排序往后找,最接近的是 yabc ,而不是 xdef ,因为 xd 在 xe 的前面。不光是输入 xe 如此,即使输入 xdf ,也是一样匹配 yabc 。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   951 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 21:05 · PVG 05:05 · LAX 14:05 · JFK 17:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.