Listary

**Listary**是一款用于Windows的文件搜索、定位的辅助软件。它提供了便捷、人性化的文件（夹）定位方式，改善Windows传统低效的文件打开/保存对话框，同时改善了常见文件管理器中文件夹切换的效率。

## 源起

Listary从标准列表控件搜索辅助工具的最初定位到目前成为文件浏览增强工具，是一个受用户驱动而转型的过程。

作者在使用Windows标准列表控件的简单搜索——通过输入开头几个字母快速定位一个条目的功能时，因“看不到自己输入的内容”、“输错后无法修改”和“必须快速输入，否则会被清除，需重新开始”等感到诸多不便，于是开发了Listary的最初版本——一个列表搜索辅助工具。无论是什么程序，只要采用了Windows标准的列表控件，就都可以用Listary搜索定位（例如任务管理器的任务列表、注册表编辑器右侧的键值列表）。

发布后，作者在与用户交流中发现，大多数用户只用资源管理器长长的文件列表定位文件，感受到用户在这方面的强烈需求，便逐步增加了文件管理和搜索定位等相关功能。

Windows系统发展了几十年，版本更新了数代，但系统中文件打开/保存对话框的操作方式却没有多少改善，浏览文件的方式依然繁琐、低效，一直为大多数用户所诟病。系统其他组件，比如记事本和Internet Explorer，可以很方便找到许多强大的替代程序，但传统打开/保存对话框的替代工具很少。Listary的出现很好地弥补了这点，它增加了热键支持的快速文件（夹）定位方式，使用方便、高效且人性化，因此很快受到广大用户的欢迎。

## 主要功能

免费版具有以下功能：

* **随打即找**：无需目标文件/文件夹的完整名称，只需根据自己的记忆输入，无论是文件名的前缀、后缀或其他任意部分，结果即时呈现。在大量文件中寻找某个文件或寻找很久以前名称以及已模糊的文件时，很有用。
* **磁盘搜索**：Listary使用了与Everything类似的原理，因此可快速访问磁盘中各个角落的文件，无论硬盘多大，文件所在目录有多深。这种特性非常适合于如今大容量硬盘、系统中常常包含几十上百万甚至更多文件的情况。
* **快速切换**：在文件管理器或文件打开/保存对话框中浏览时，可直接跳到任何文件夹，无论它们在其他驱动器或哪个位置，具体包括：
** 在文件对话框中，按可立即跳转到文件管理器中正在浏览的文件夹。
** 在文件对话框中，切换到文件管理器并切换回来（无论以何种方式），对话框中会自动切换为刚才文件管理器中浏览的文件夹。
** 在文件对话框中，按可直接打开之前在文件管理器中选择的文件。
** 在智能菜单中列出所有文件管理器中已打开的文件，方便快速访问。
* **收藏和历史**：可收藏文件夹及自动保存文件夹访问历史，通过Listary工具栏快速访问收藏文件夹、资源管理器中的最近文件夹和最近打开的文件。
* **智能命令**：包括了许多有用命令的集合，只需使用按键或单键点击鼠标即可访问，如打开命令行（以当前路径）、复制当前文件夹、显示隐藏文件等。提供了比资源管理器处理文件更好的方式。这里定义了许多快捷键供快速访问，用户也可根据情况自定义。
* **随心访问**：可在任意位置、通过各种方式快速访问文件和文件夹，如在桌面、文件管理器、打开/保存对话框的空白处双击鼠标左键或点击中键打开菜单，或通过热键调用菜单。
* **Total Commander集成**：使用Total Commander可完全代替文件对话框浏览功能，具体操作如下：
*# 在文件对话框中，首先像平常那样选择文件类型过滤器，接着按；
*# Listary会在TC中的新标签页中打开当前文件夹并应用过滤器（必须确保TC在运行中）；
*# 在TC中结束操作后再次按，这样之前的文件对话框就会打开刚才在TC中选择的文件（未选择文件或者这是文件夹对话框则会切换到TC中浏览的文件夹）。
** 此外，同样支持**快速切换**包含的功能，并会自动添加TC的常用文件夹到Listary中的收藏夹中。

专业版在免费版基础上增加以下功能并提供多项服务：

* **项目管理**：将频繁访问的文件夹添加到项目（即设置访问关键字）后，可在任何位置通过该关键字搜索该文件夹及其子文件夹中的所有内容。这样排除了未使用关键字限定文件夹进行搜索时得到的许多无关结果。
* **快捷操作**：在选择文件/文件夹后按右方向键，即可像搜索文件那样快捷定位并执行上下文菜单中的各种操作。在该菜单中除了包含资源管理器上下文菜单中的功能外，还包含了许多常用的默认命令，如打开文件或复制路径等。
* **模糊导航**：无需记得文件名中空格位置、甚至不输入空格或仅输入文件名的几个残缺部分，如搜索“photoshop”时输入“ptshp”；或
* **更多**：使用子菜单组织收藏夹、自动选择上次打开/保存的文件、增加自定义命令等。

## 软件特色

* **极速体验**：媲美Everything的速度，索引和搜索执行非常快，占用资源低，能实时更新搜索结果。
* **渐进式搜索**：输入文件名的一部分后，若结果较多，则可按空格后接着输入文件名的另一部分，此时会在已有结果中搜索。
* **智能排序**：自动记忆输入过的搜索关键字，并根据搜索历史对结果排序，因此使用越多，结果越准确。
* **键盘化操作**：几乎所有操作都可通过键盘完成，例如选择文件后按右方向键将出现操作菜单，此时可像定位文件一样定位命令来执行操作。
* **拼音首字母支持**：可使用文件名汉字的拼音首字母定位，且同样可应用于过滤命令，这是中文用户的一大福音。
* **无缝集成**：Listary与系统各方面及相关程序融合为一体，它默默出现在需要打开/保存文件、打开/切换目录或过滤列表等环境中，主要指文件（夹）打开/保存对话框（支持标准及常见的非标准对话框）和ListView控件，具体包括标准的打开/保存文件对话框、打开文件夹对话框、资源管理器、任务管理器、桌面及后面众多的常用程序：WinRAR、7zip、FileZilla、Total Commander、、xplorer2、、Free Commander XE等，这样可以方便的为这些程序定位所需文件、切换目录或执行其他相关命令。

## 其他情况
### 原理与局限

与Everything类似，Listary依赖NTFS文件系统，它通过主文件表快速建立并利用USN日志实时更新索引，因此具有下列局限性：
***需要管理权限**：这样才能读取USN日志，由此带来了安全上的问题。
***仅支持NTFS卷**：不支持目前移动设备中广泛使用的FAT文件系统，也不支持除Windows外的其他操作系统中常见的文件系统。
***仅支持文件名**：在搜索时仅能根据路径和文件名进行过滤，而不支持传统搜索工具通常支持的其他文件特性，如文件日期、大小和属性等。
***多用户安全**：Listary通过服务（*ListaryService.exe*）建立和更新索引使得可通过普通权限执行主程序（*Listary.exe*），这样避免了多用户环境中普通用户权限提升的问题，但它无法根据当前用户凭据过滤搜索结果而导致用户可列出其他用户的私有文件，可能出现隐私泄漏问题。

### 与Everything比较

许多用户都将Listary与Everything进行比较甚至视为同类软件，实际上从前面的功能说明可以看出它们只是建立索引的方法相似，其他地方几乎没有共同点。例如两者的定位：Everything的定位为本地搜索工具，如Google桌面，Listary则为基于搜索的文件定位与操作和文件夹切换辅助工具。

## 相关条目
* Everything
* 桌面搜索

## 参考文献

## 外部链接
* 
* Listary作者访谈：自然成长，朴实幸福