Code Monkey home page Code Monkey logo

esearch's Introduction

eSearch

(中文 | English)

LOGO

license release-date release aur aur1

简介

eSearch 是Information-portal的:electron:重写版(顺便加了亿些功能)

主要是想在 Linux 上(win 和 mac 上也能用)实现锤子大爆炸小米传送门这样的屏幕搜索功能,当然也是一款方便的截屏软件

经过数次版本迭代,eSearch 的功能愈加丰富

即拥有 截屏+OCR+搜索+翻译+贴图+以图搜图+录屏

截屏界面

字体是FiraCode,字体可在设置里设置

识别文字主页面

下载安装

到网站eSearch下载

或在右侧 releases 打开标签,选择符合你系统的包并下载安装

国内快速下载链接:Releases · xushengfeng/eSearch · fastgit

ArchLinux 可在 AUR 查找安装 e-searche-search-git

winget winget install esearch

OCR 服务

软件不附带本地 OCR 核心服务,但在启动时会提示下载。

本地 OCR 由PaddleOCR提供支持,在eSearch-OCR中发布编译好的服务。

默认启用本地 OCR 服务,若想使用在线 OCR,目前提供了百度在线 OCR,需要依据教程获取API KEY 以及 Secret KEY,截止 2022 年 1 月,百度 OCR 还是可以免费领取服务。将获取到的API KEYSecret KEY 以及相应的你选择的文字识别服务URL 填入软件设置,去掉离线 OCR 的勾选即可使用在线 OCR。

源码运行&编译

编译需要pythonC++环境,Windows 下编译需要 pythonvisual studio(安装 C++)

git clone https://github.com/xushengfeng/eSearch.git
cd eSearch
npm install
# 运行
npx electron .
# 编译
npm run rebuild
npm run dist
# 将在build目录生产安装包和解压的目录

修改已安装的程序

先按下Ctrl+Shift+I,或在菜单栏-识图-开发者工具 打开开发者工具进行调试。修改调试知道满意后,在对源码进行修改。

# 安装asar
npm install -g asar
asar e [设置里提示的运行位置]
# 解压后在app目录修改
# 打包
asar p app app.asar
# 重启软件即可

启动

在你的启动器打开 eSearch,他将出现在托盘。Gnome 用户需要安装appindicator插件

默认快捷键为 Alt+C(你也可以在设置里设置快捷键)

Linux 下的快捷键

大多数 Linux 桌面环境支持自定义快捷键,eSearch支持 cli,这也意味着你可以进行系统级设置快捷键

esearch (若找不到,请尝试e-search)
	-a # 自动搜索
	-c # 截屏搜索
	-s # 选中搜索
	-b # 剪贴板搜索
	-q # 快速截屏

不建议在终端进行自动或选中搜索,否则eSearch会执行Ctrl+C,从而导致终止终端程序

功能

已经勾选的功能是开发过程最新功能,但可能还没发布在最新版本

  • 截屏
    • 框选裁切
    • 框选大小位置可调整(支持方向键或 WASD)
    • 框选大小栏可输入四则运算式调整
    • 取色器
    • 放大镜
    • 画笔(自由画笔)
    • 几何形状(边框填充支持调节)
    • 高级画板设置(使用 Fabric.js 的 api)
    • 图像滤镜(支持局部马赛克模糊和色彩调节)
    • 自定义框选松开后的操作
    • 快速截取全屏到剪贴板或自定义的目录
    • 截屏历史记录
    • 窗口和控件选择(使用 OpenCV 边缘识别)
    • 长截屏
    • 多屏幕
  • 录屏
    • 录制全屏
    • 自定义大小
    • 按键提示
    • 光标位置提示
    • 录制栏
    • 流写入
    • 录音
    • 录制摄像头
    • 自定义比特率
  • 保存(可选保存为 SVG 可编辑文件)
  • 其他应用打开
  • 复制到剪贴板
  • 钉在屏幕上
    • 滚轮缩放
    • 恢复默认大小位置
    • 透明度
    • 鼠标穿透
  • 二维码识别
  • OCR 识别
    • 离线 OCR(基于 C++ 或 Python 实现,eSearch-OCR
    • 自定义离线 OCR 模型和字典
    • 其他在线 OCR
    • 在线公式识别
    • 支持自己申请秘钥
    • 表格识别
  • 以图搜图
  • 托盘
  • 划词句来搜索
  • 识别展示
    • 自动搜索翻译
    • 搜索
    • 翻译
    • 自定义搜索翻译引擎
    • 自定义搜索翻译引擎(POST 模式,可用 Api)
    • 软件自带浏览器打开
    • 跟随关闭、失焦关闭
    • 系统浏览器打开
    • 链接识别
    • 历史记录
    • 自动删除换行(用于自动排版)
    • 查找替换(支持正则匹配)
    • 其他编辑器编辑(支持自动重载)
    • 行号
    • 拼写检查
  • Wayland 桌面
1.mp4

截屏,自由调整框选大小(视频约 2.6MB)

3.mp4

取色器(视频约 1MB)

2.mp4

Ding 在屏幕上,透明度调节、归位以及鼠标操作(视频约 1.8MB)

3

绘图界面

4.mp4

主页面搜索和其他应用编辑(视频约 1.6MB)

3

主页面查找替换(支持正则)

国际化

大多数按钮使用图标,简少了不必要的翻译

  • 简体中文
  • 繁体中文
  • 世界语
  • 西班牙语
  • 阿拉伯语
  • 英语
  • 法语
  • 俄语

测试

在 ArchLinux,KDE plasma,Xorg 下测试通过

Windows10 和 Windows11 测试通过

macOS Catalina 测试通过

Wayland 桌面环境暂时不支持

开发原因

我在用 Windows 时一直用这个好用的截屏软件:Snipaste - 截图 + 贴图,但我现在切换到 Linux,Snipaste 不支持,所以我选择了Flameshot,很可惜它没有直观的取色器。

促使我开发 eSearch 的另一个契机是我很享受在手机上使用锤子大爆炸小米传送门这样的即时信息搜索工具,但我没有找到电脑上类似的代替品。

所以我干脆自己开发一个“截屏+OCR+搜索+贴图”的软件。最开始用 python+pyqt 开发出Information-portal,但因为我不熟悉 pyqt,所以我转战:electron:,开发出本软件。😄

License

GPL-3.0 © xushengfeng

esearch's People

Contributors

xushengfeng avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.