github 地址: https://github.com/aihy/jEverything
基于 Java Swing 的文件快速搜索软件
jEverything 索引文件列表,保存到 sqlite 中,搜索时直接搜索 sqlite
我手边没有 Windows 电脑,因此没有对 Windows 操作系统做适配,部分功能只在 macOS 下可用
而且 Windows 上已经有Everything了,完全没必要用我这玩意
^
、$
标记匹配路径开头或结尾/System/Library/CoreServices/JavaLauncher.app
加入完全磁盘访问权限
^/Users/xxx/Downloads .pdf$ book
可以搜索出/Users/xxx/Downloads
目录下,路径中带有book
的所有 pdf 文件。/System/Library/CoreServices/JavaLauncher.app
加入完全磁盘访问权限
打开系统设置
->隐私与安全性
->完全磁盘访问权限
。点击加号,按command + shift + G
,输入/System/Library/CoreServices/JavaLauncher.app
,按回车并选择打开
jEverything.jar
并打开 1
NouveauNom 2023-02-21 16:04:43 +08:00
已 Star
|
2
NouveauNom 2023-02-21 16:06:13 +08:00
文件新增后还需要手动重新索引吗
|
3
rock123 2023-02-21 16:39:39 +08:00
刚好以前写过一点 swing ,swing 是单线程模型。在子线程中更新 UI 是有问题的,了解下 SwingUtilities.invokeLater 这个方法的使用,在子线程里操作 UI 都用这个包装下,
还有重建索引按钮,禁用操作是写在新线程内部,可能不会马上执行到,如果不小心连续点击多次,可能会出现多个重新索引线程同时运行 |
4
smallyu 2023-02-21 16:47:27 +08:00
这个比 Finder 自带的搜索快多少?
|
5
pxiphx891 OP @NouveauNom 需要的
|
7
pxiphx891 OP @rock123 感谢指点。另外请教下,从我点击 jar 包到窗口显示出来往往需要等 3 秒甚至更久,怎样可以优化下吗?我想让窗口秒出
|
8
Asimov01 2023-02-21 17:28:39 +08:00
搜文件确实很快!就是 UI 略简陋,好好包装下可以上架卖钱!
|
9
zengmingyang96 2023-02-21 17:47:32 +08:00
为啥不用 fzf
|
10
pxiphx891 OP @zengmingyang96 fzf 不能拖拽文件,也不能多选,也不能预览
|
12
rock123 2023-02-21 19:17:18 +08:00
@pxiphx891 #7 使用 java -jar -verbose jEverything-1.0.jar 命令运行程序,日志里能看到启动慢是在加载一大堆 swing 相关类,我也不清楚咋优化这里。 试试用其他语言简单做个启动器,显示个 loading 界面,后台启动 java 程序,启动起来后,不要关闭程序,保持后台运行,体验会好一些
|
14
haoxuexiaoyao 2023-02-21 21:51:09 +08:00
大佬 做一个 raycast 插件呗
|
15
pxiphx891 OP @haoxuexiaoyao 目前没这个打算...我只用过 Alfred
|
16
devliu1 2023-02-21 22:11:46 +08:00
可以的,不过代码有一些乱
可以通过 fsevent 更新索引 |
17
crazyweeds 2023-02-21 22:33:22 +08:00
以前一直想写的一个东西,但只有想法,没有行动。作者加油。
|
18
546L5LiK6ZOt 2023-02-22 00:14:11 +08:00
swing 的界面会不会有点丑,为啥不用 javafx 呢
|
19
jaylong 2023-02-22 13:35:41 +08:00
Mac 下一直用免费的 easyfind
|
20
NouveauNom 2023-02-22 16:21:21 +08:00
从昨天下午开始索引,然后索引到现在还是有的文件搜不出来,索引也不继续运行了
https://imgur.com/a/WrLYs9A |
21
pxiphx891 OP @NouveauNom 只索引主目录,这个文件在主目录下吗?你的主目录是不是挂载了外置机械硬盘?固态硬盘应该还挺快的
|
22
leonidas10086 2023-02-23 12:59:41 +08:00
功能挺好,不过,可以再完善一下,比如做成一个目录结构:
app/ bin config data 把软件需要的东西都这样放,归纳到一起,目前就一个 jar ,然后 db 在~/.jEverything/db.sqlite 我刚打开索引建立了一下我就关了,发现这个 db 有 80MB 。 清理机制不太好。 |
23
NouveauNom 2023-02-25 11:48:59 +08:00
@pxiphx891 这个文件是在下载目录,没有挂载外置硬盘。可能是文件太多或者哪个地方卡主了不继续索引了
|