Project Icon

swiper

Emacs迷你缓冲区的高效补全解决方案

Swiper项目集成了Ivy、Counsel和Swiper三个核心组件,为Emacs用户提供全面的迷你缓冲区补全解决方案。Ivy作为通用补全机制,Counsel增强了常用Emacs命令,而Swiper则优化了文本搜索功能。这套工具不仅提高了操作效率,还保留了极高的灵活性,使Emacs编辑体验更加流畅和智能。

构建状态

Emacs迷你缓冲区补全的灵活简单工具

本仓库包含:

Ivy,Emacs的通用补全机制。

Counsel,Ivy增强版的常用Emacs命令集合。

Swiper,Ivy增强的Isearch替代品。

Ivy

GNU-devel ELPA GNU ELPA MELPA MELPA Stable

Ivy是Emacs的通用补全机制。虽然其操作类似于其他补全方案(如icomplete-mode),但Ivy旨在更高效、更小巧、更简单、使用更流畅,同时具有高度可定制性。

要尝试Ivy,只需调用M-x ivy-mode。这将启用通用Ivy补全,包括文件和缓冲区名称的特定补全。

安装

从GNU ELPA或MELPA安装ivy包。

Debian 10(及其衍生版如Ubuntu 18.04)或更高版本的用户可以通过sudo apt install elpa-counsel安装Ivy、Counsel和Swiper。要添加Hydra支持,请执行sudo apt install elpa-ivy-hydra

文档

手册

手册可以在HTML格式查看。

从GNU ELPA或MELPA安装ivy也会在(ivy) Info节点下安装手册。

Info页面的源文件在这里

Wiki

Ivy和Swiper的wiki在这里:wiki

简单配置示例

(ivy-mode)
(setq ivy-use-virtual-buffers t)
(setq enable-recursive-minibuffers t)
;; 如果你想让 `swiper` 使用它,请启用这个
;; (setq search-default-mode #'char-fold-to-regexp)
(global-set-key "\C-s" 'swiper)
(global-set-key (kbd "C-c C-r") 'ivy-resume)
(global-set-key (kbd "<f6>") 'ivy-resume)
(global-set-key (kbd "M-x") 'counsel-M-x)
(global-set-key (kbd "C-x C-f") 'counsel-find-file)
(global-set-key (kbd "<f1> f") 'counsel-describe-function)
(global-set-key (kbd "<f1> v") 'counsel-describe-variable)
(global-set-key (kbd "<f1> o") 'counsel-describe-symbol)
(global-set-key (kbd "<f1> l") 'counsel-find-library)
(global-set-key (kbd "<f2> i") 'counsel-info-lookup-symbol)
(global-set-key (kbd "<f2> u") 'counsel-unicode-char)
(global-set-key (kbd "C-c g") 'counsel-git)
(global-set-key (kbd "C-c j") 'counsel-git-grep)
(global-set-key (kbd "C-c k") 'counsel-ag)
(global-set-key (kbd "C-x l") 'counsel-locate)
(global-set-key (kbd "C-S-o") 'counsel-rhythmbox)
(define-key minibuffer-local-map (kbd "C-r") 'counsel-minibuffer-history)

注意:此配置的部分内容可以通过使用 counsel-mode 来替代。

Counsel

GNU-devel ELPA GNU ELPA MELPA MELPA Stable

ivy-mode 确保任何使用 completing-read-function 的 Emacs 命令都会使用 ivy 进行补全。

Counsel 更进一步,提供了常用 Emacs 命令的定制版本,以最佳方式利用 Ivy。例如,counsel-find-file 有一些额外的键绑定。按 DEL 键会将你移动到父目录。

启用 counsel-mode 会重新映射那些有 counsel 替代版本的内置 Emacs 函数:

Emacs 命令Counsel 对应命令
execute-extended-commandcounsel-M-x
describe-bindingscounsel-descbinds
describe-functioncounsel-describe-function
describe-variablecounsel-describe-variable
apropos-commandcounsel-apropos
describe-facecounsel-describe-face
list-faces-displaycounsel-faces
find-filecounsel-find-file
find-librarycounsel-find-library
imenucounsel-imenu
load-librarycounsel-load-library
load-themecounsel-load-theme
yank-popcounsel-yank-pop
info-lookup-symbolcounsel-info-lookup-symbol
pop-to-mark-commandcounsel-mark-ring
bookmark-jumpcounsel-bookmark

Swiper

GNU-devel ELPA GNU ELPA MELPA MELPA Stable

Swiper 是 isearch 的一个替代品,它使用 Ivy 来显示所有匹配项的概览。

swiper.png

Swiper 的 Helm 版本也可用: swiper-helm

截图

ivy-swiper-1.png

这里还有一个十分钟的视频演示

常见问题

问:如何输入一个与候选项匹配的输入,而不是选择这个候选项?例如:在当前目录存在文件 barricade 的情况下创建一个名为 bar 的文件。

答:按 C-M-j。或者,你可以通过设置 (setq ivy-use-selectable-prompt t) 使提示行可选。

贡献

请查看指南以了解如何报告问题和提交拉取请求。

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号