【2012-05-22 更新】TC拼音首字母搜索功能,或者说,TC本身的快速搜索功能,早就一统江湖,只是这里没有更新。新王者就是—— QuickSearch eXtended 。它相当于 Shanny 的拼音首字母搜索,加 Google 的空格/模糊搜索。
—- 以下是 2009-05-30 旧文 —
最新发布的 Total Commander 7.50 Beta 4 加上新发布的 PinYinQuickSearch插件,为中文用户带来了新的快速搜索体验:输入拼音首字母,即可定位到对应的中文目录/文件;改造之后,还可支持五笔等其他编码。这是 TC7.5 在快速搜索方面,继支持中文输入后的又一重大更新。这一过程,是TC作者与中文用户及中文化开发者良好互动的结果。当用户尊重作者、支持作者时,作者就不会忽视用户的需求。感谢这些人,让我们一起善用TC。
1. 如何体验 TC7.5 的快速搜索拼音首字母功能?
首先,请下载最新发布的 Total Commander 7.50 Beta 4(官方认可下载)并升级安装。
然后,请下载 Shanny 修正的PinYinQuickSearch_fixed_by_shanny.zip)。
接下来,请在TC中(而不要在压缩软件中)双击 PinYinQuickSearch.zip,就会自动安装此插件(如下图)。
最后,你就可以体验 QuickSearch 的拼音首字母匹配中文的功能了。如下图所示,输入hs,TC就匹配到了文件“史记汉书研究概述.htm”中的“汉书”。
1+ 补充:改造码表,让QuickSearch支持五笔首码
PinYinQuickSearch(拼音首字母快速搜索)的核心是 tcmatch.dll(功能)和 tcmatch.tbl(码表)。目前的码表是TC作者根据某汉字拼音编码制作。其实,我们完全可以修改此编码,让TC快速搜索不仅支持拼音首字母,也可以支持其他编码(比如双拼、五笔、二笔)的首字母。
以五笔为例,步骤如下:
– 下载原始码表Uni2Pinyin.Z(约97KB),用7-Zip(或其他解压软件)解压出 Uni2Pinyin (约212KB)到 TC 安装目录,并改名为 tcmatch.txt。
– 用文本编辑器打开 tcmatch.txt,可以看到前几行是文件说明,后面是数据行。
– 找到 “8BD5 shi4”(不包括引号,下同)。这一行的意思是,unicode编码8BD5(即汉字“试”)的拼音为 shi,第4声。为了支持五笔,我们要增加五笔编码。同时为了格式一致(或许程序会进行校验),在五笔编码后面也增加一个数字代表声调。
– 即,“试”字原对应“8BD5 shi4”,现改为 “8BD5 shi4 yaa4”。(注意,tab作为分割符)
– 同理,修改其他字符:
6d4b ce4 imj4 (测)
5584 shan4 uduk4(善)
7528 yong4 et4(用)
4F73 jia1 wffg1(佳)
8F6F ruan3 lqw3(软)
– 保存tcmatch.txt。
– 退出TC。
– 删除TC目录下的旧码表 tcmatch.tbl。
– 重新启动TC,并开始使用快速搜索的中文功能,此时,插件会基于新的tcmatch.txt,重新编译tcmatch.tbl。
– 新建“测试”、“善用佳软”,会发现无论键入”cs”(拼音缩写)或”iy”(五笔缩写)都能匹配“测试”,键入“wl”也能匹配“善用佳软”。
2. 更多讨论
2.1 什么是快速搜索(quick search)?
我认为quick search 译为“快速搜索”并不十分贴切。至少把“快速”换为“快捷”会更加恰当。
传统的文件搜索,是确定某文件所在的目录。而quick search则不仅是搜索,而是基于搜索实现“定位、突出、过滤”。举例来说,在 d 盘搜索 abc.txt,结果会出现在一个新窗口中,列出:
d:/folder-1/folder-2/…./abc.txt
d:/folder-x/…/folder-z/abc.txt
……
如果你需要处理这些文件,就要再在文件管理器中转到这些目录中,定位到这些文件上。
而quick search,则让“搜索”和“手工定位”合二为一。当你在quick search中键入abc.txt时,文件管理器直接显示出这些目标文件(过滤掉不匹配内容),或焦点直接跳转到该文件,并高亮显示。
quick search是现代人机交互的潮流,从我的理解,可以总结为“基于搜索,并能实时地定位、突出搜索结果,或过滤掉搜索结果之外的内容”。EverNote、Vim用户都会对此有深刻理解和体验。
2.2 Total Commander的Quick Search改进之路
TC 7.0 开始支持“文件名精确匹配(N)”模式,包括:- 开头(文件名必须以第一个输入字符开始)(B);- 结尾(文件名中句点前所有字符必须与输入字符一致)(D)。如果都不选,意味着“任意位置匹配”——这才是改进所在。
由于不支持中文,Shanny开发了 QuickSearchPro,受到了中文用户的好评。
TC 7.5 开始支持中文搜索,并且迅速推出了 PinYinQuickSearch 插件。此插件是开源方式,并且是开放架构,实际上,每种语言、每种输入法,都可以基于此,制作相应的quick search插件。
TC是经典,并不意味着它一直是领先、始创。恰恰相反,越是成熟的软件在转型期的挑战就越复杂。TC7.5 才实现了quick search完全支持中文,而Free Commander早就支持Unicode了。但之所以能成为经典,就是落后时能扎扎实实改进,领先时仍能精益求精。TC 的上述历程,以及背后的点滴故事,就是最好的注解。
2.3 致谢与论坛相关讨论
英文软件如此个性化的支持中文,要感谢这些人:
- – Ghisler:令人敬佩的TC作者。
- – Shanny:QuickSearchPro的作者。在TC未实现此功能之前,先通过独立程序帮助TC做到了这一点,在中文用户中引入了这一应用习惯。并且,得知TC官方表示引入此功能后,Shanny表示可以提供其代码或进行其他帮助。
- – cheming等网友。网友QuickSearch留言补充:
『更正一下,其实在Ghisler支持中文首字母快搜功能上,有一个人是功不可没的,那就是cheming。看看Ghisler的回复以及他们之间的对话就知道。
Sun May 31, 2009 8:28 am:Nice to hear that! Thanks very much for your useful hints, I couldn’t have added it without your help. [via]
Ghisler之前对何为拼音一窍不通,正式上面提到的cheming耐心解答才使Ghisler逐步明白此功能对中国人的意义,并受到其提供的网络资料启发,将此功能逐步完善的。』
当然,还有其他网友在官方论坛对TC beta版进行测试、bug反馈、并帮助作者理解中文、拼音、多音字…… - – 而Ghisler(瑞士)所用的中文拼音码表(Unicode Pinyin table)则是来自于Koichi Yasuoka(日本),此码表中又提到了另外4位来自德国、美国、澳大利亚、日本的朋友。看,这就是开源和开放给我们带来的好处!
水木社区:
QuickSearchPro不会再更新了
TC quicksereach pro 官方版
QuickSearch Pro 官方版修正
TC论坛:
Quick search for Chinese characters
发信人: shanny (潇风·失过业,完整了), 信区: TotalCommander
标 题: QuickSearchPro不会再更新了
发信站: 水木社区 (Wed May 27 10:24:24 2009), 站内这是坏消息,
还有一个好消息TC会内部支持类似功能,很可能在7.50b4实现,
一起期待吧
发信人: shanny (潇风·失过业,完整了), 信区: TotalCommander
标 题: Re: QuickSearchPro不会再更新了
发信站: 水木社区 (Wed May 27 11:27:59 2009), 站内没错,会添加 wcmd_chn.dll 来支持中文查找
这是最好的解决方案了,比外加的addon好得多
cjk作者都会支持的
接口公开,而且相关代码开源【 在 xuanqing (玄清|黑白猫熊@静若处子动如光) 的大作中提到: 】
: 就是说会用内置的dll之类的方法支持不同非英语言的快速查找么?
3. Total Commander 7.50 Beta 4 更新记录
官网介绍见http://www.ghisler.com/750beta4.htm。
28.05.09 Release Total Commander 7.50 Public Beta 4
28.05.09 Fixed: When a disconnected network drive was reconnected, the drive’s icon wasn’t refreshed in the drive dropdown list
27.05.09 Fixed: Shift+Cursor up/down in drive dropdown list selected file in file list
27.05.09 Fixed: Access violation in icon thread when closing TC with open separate tree (fix should also improve the general stability)
27.05.09 Fixed: Multi-rename tool, branch view: When sorting by name, keep sort order from main window (sort just by name, not by relative path+name)
27.05.09 Fixed: Function to save current selection could crash with file names longer than 511 characters (e.g. in branch view)
27.05.09 Fixed: Quick filter wasn’t removed when user opened a new tab by Ctrl+clicking on a button (or Shift+Enter in Ctrl+D menu) when command “cd xyz” was pointing to a file
27.05.09 Fixed: Yes/No button in copy to dir warning dialog not translated
26.05.09 Fixed: Mouse wheel no longer worked in Lister>
发表回复
要发表评论,您必须先登录。