1834_emacs_ivy以及counsel的常用功能

Grey

全部学习汇总: GitHub - GreyZhang/editors_skills: Summary for some common editor skills I used.

emacs ivy以及counsel的常用功能

主要功能

ivy主要是实现一些emacs的minibuffer的操作增强功能的。如果不进行类似的增强扩展,在进行这方面相关操作的时候就会觉得信息非常拥堵。因为默认情况下的minibuffer能够提供的显示以及操控范围及方法非常有限。当使用spacemacs久了之后,可能会发现类似的操作不好容忍。
前面,我简单小结了一下如何用counsel-M-x替代掉原来的命令调用方式。其实,也是希望通过这种功能扩充交互的信息便捷性。这一次的内容梳理,其实基本上不涉及到什么新的插件探索,而是对我自己的配置中现有的插件功能进行更深入一点的发掘。

成熟的emacs配置中让我依赖的操作模式

为什么会有这样的一个探索过程呢?其实,还是尝试过的几种emacs的较为流行的配置带给我的印象过于深刻。除了功能之外,在交互的方式上也已经被灌入了他们的方式以及理念。那么,关于这次讨论的几个功能,我之前觉得哪些功能让我欲罢不能呢?这里做一个简单的整理。

  • minibuffer中find-file 比较好的功能不仅会提供一个信息展示充分的交互buffer,而且会提供模糊搜索,选择清单等功能。
  • 最近的文件查找 有时候,这个功能是我在各个文件中切换的一个很好的辅助功能。但是,emacs默认的recentf提供的功能以及交互的方式实在是有限。而且,与前面的这些描述的方式有些格格不入。更重要的一点是,在之前的使用经验中,我已经很习惯于minibuffer中依然能够一个类似find-file的模糊搜索功能了。这样,类似的功能就得进行改善革新。
  • M-x 这个不做过多的说明了,之前已经单独做了一个整理。这个其实是一种快速的功能调用方式,习惯了之后,我甚至少用快捷键直接用这种命令交互模式来处理我的工作。而且,最好这个能够提供一些最近的使用记录,并把使用次数作为权重。这样,会对整个的工作效率有很大的推进。
  • grep或者ag或者rg搜索 其实,这几个功能差不多,但是我尤其钟爱于ag。自然,rg现在的口碑不错,可能是习惯性问题,我觉得ag不错而且已经习惯了。这样的搜索,可以提供一个对目录内所有文件的内容检索。之后,给出结果候选操作清单。
  • 单文件的文字搜索 emacs内置的search可以,evil的模拟功能也可以。但是,更令我习惯的还是spacemacs中提供的swiper。这个功能把多种操作整合到了一起,一个操作基本上覆盖了大部分的需求。

常用的功能解决方案

序号

功能

实现方式

说明

1

minibuffer

helm或者ivy

处于轻量化的考虑,我现在用ivy

2

文件打开创建以及查找

counsel-find-file

3

最近文件查找搜索

counsel-recentf

4

M-x

counsel-M-x

5

多文件内容偶素所

counsel-ag

6

文件内搜索

swiper


这些插件之间都有一定的依赖关系,我其实是安装了一个counsel-etags之后获得了所有的插件包。

个人emacs的配置效果

  • 打开或者创建文件
  • 查看最近文件
  • M-x
  • swiper
  • ag searcher

小结

现在看上去虽然还有一些不完美,尤其是最后的乱码显示。但是,一般的工程开发,尤其是我这种嵌入式的软件开发已经有了很好的基础环境了。或许,后面再修改一下,结果会更加完美。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/263289.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于加密解密,加签验签那些事

面对MD5、SHA、DES、AES、RSA等等这些名词你是否有很多问号?这些名词都是什么?还有什么公钥加密、私钥解密、私钥加签、公钥验签。这些都什么鬼?或许在你日常工作没有听说过这些名词,但是一旦你要设计一个对外访问的接口&#xff…

MySQL进阶学习--day02

存储引擎介绍 1. InnoDB1.1 介绍1.2 特点1.3 文件1.4 逻辑存储结构 2. MyISAM2.1 介绍2.2 特点2.3 文件 3. Memory3.1 介绍3.2 特点3.3 文件 4. 区别及特点5. 存储引擎选择6. InnoDB引擎与MyISAM引擎的区别 ? 上篇文章我们介绍了什么是存储引擎,以及如何在建表时如…

欧拉回路欧拉路【详解】

1.引入 2.概念 3.解决方法 4.例题 5.回顾 1.引入 经典的七桥问题 哥尼斯堡是位于普累格河上的一座城市,它包含两个岛屿及连接它们的七座桥,如下图所示。 可否走过这样的七座桥,而且每桥只走过一次? 你怎样证明?…

2023-12-05 Qt学习总结8

点击 <C 语言编程核心突破> 快速C语言入门 Qt学习总结 前言二十三 QSqlDatabase数据库二十四 cmake工程管理文件总结 前言 要解决问题: 学习qt最核心知识, 多一个都不学. 二十三 QSqlDatabase数据库 QSqlDatabase 是 Qt 框架中关于数据库的统一封装&#xff0c;它支持…

Kubernetes(K8s 1.27.x) 快速上手+实践,无废话纯享版(视频笔记)

视频源&#xff1a;1.03-k8s是什么&#xff1f;_哔哩哔哩_bilibili 1 基础知识 1.1 K8s 有用么&#xff1f; K8s有没有用 K8s要不要学&#xff1f; 参考资料: https://www.infoq.com/articles/devops-and-cloud-trends-2022/?itm_sourcearticles_about_InfoQ-trends-report…

PyQt下使用OpenCV实现人脸检测与识别

背景&#xff1a; 一 数字图像处理与识别警务应用模型 基于前期所学知识&#xff0c;与公安实践相结合&#xff0c;综合设计数字图像处理与识别警务应用模型,从下列4个研究课题中选择2个进行实验实现&#xff1a;图像增强与复原、人脸检测与识别、虹膜内外圆检测与分割、车牌…

Javascript-面向对象与原型

1. 编程思想 面向过程就是分析出解决问题所需要的步骤&#xff0c;然后用函数把这些步骤一步一步实现&#xff0c;使用的时候再一个一个调用面向对象是把食物分解成一个一个对象&#xff0c;然后由对象之间分工合作 面向对象编程 1.1 面向对象与面向过程对比 2. 构造函数 3. …

想学编程,但不知道从哪里学起,应该怎么办?

怎样学习任何一种编程语言 我将教你怎样学习任何一种你将来可能要学习的编程语言。本书的章节是基于我和很多程序员学习编程的经历组织的&#xff0c;下面是我通常遵循的流程。 1&#xff0e;找到关于这种编程语言的书或介绍性读物。 2&#xff0e;通读这本书&#xff0c;把…

基于以太坊的智能合约开发Solidity(事件日志篇)

//声明版本号&#xff08;程序中的版本号要和编译器版本号一致&#xff09; pragma solidity ^0.5.17; //合约 contract EventTest {//状态变量uint public Variable;//构造函数constructor() public{Variable 100;}event ValueChanged(uint newValue); //事件声明event Log(…

java--Date、SimpleDateFormat时间类,JDK8之前的

1.Date 代表的是日期和时间 2.SimpleDateFormat 代表简单日期格式化&#xff0c;可以用来把日期对象、时间毫秒值格式化成我们想要的形式。 3.时间格式常见符号 4.SimpleDateFormat解析字符串时间成为日期对象

Matlab数学建模算法之小波神经网络详解

&#x1f517; 运行环境&#xff1a;Matlab &#x1f6a9; 撰写作者&#xff1a;左手の明天 &#x1f947; 精选专栏&#xff1a;《python》 &#x1f525; 推荐专栏&#xff1a;《算法研究》 &#x1f510;#### 防伪水印——左手の明天 ####&#x1f510; &#x1f497; 大家…

NR Channel raster和Sync raster

NR中&#xff0c;由于信道带宽可能非常大&#xff0c;如果UE按照channel Raster进行同步信号搜索&#xff0c;需要的时间很长&#xff0c;且非常耗电&#xff1b;因而NR引入了Synchronization raster的概念&#xff0c;同步信号按照Sync Raster放置。 ARFCN 频点号对应Channel…