Emacs之解决:C-x C-f无法获取正确目录问题(一百四十一)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!

优质专栏:Audio工程师进阶系列原创干货持续更新中……】🚀
优质专栏:多媒体系统工程师系列原创干货持续更新中……】🚀
优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门实战课原创干货持续更新中……】🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

🌻1.前言

本篇目的:当我在emacs中使用counsel执行C-x C-f时,总是显示固定的目录路径,修改此bug。

🌻2.Emacs之C-x C-f命令介绍

  • Emacs是一款功能强大的文本编辑器,它拥有丰富的命令和快捷键,可以帮助用户高效地进行文本编辑。在Emacs中,C-x C-f是一个非常重要的命令,它用于打开或创建一个文件。
  • C-x C-f是Emacs中的一个快捷键,其中C代表Ctrl键,x和f分别代表键盘上的x和f键。在使用C-x C-f命令时,首先需要按住Ctrl键,然后依次按下x和f键。这时,Emacs会在屏幕底部显示一个提示符,等待用户输入文件名。
  • 当用户输入文件名并按下回车键后,Emacs会尝试打开或创建该文件。如果文件已经存在,Emacs会将文件内容加载到编辑器中,让用户进行编辑。如果文件不存在,Emacs会创建一个新文件,并将其显示在编辑器中。此时,用户可以开始输入文本内容。
  • C-x C-f命令不仅可以打开或创建单个文件,还可以打开或创建多个文件。当用户需要打开多个文件时,可以在输入文件名时使用空格分隔不同的文件名。例如,如果用户想要同时打开file1.txt和file2.txt两个文件,可以在提示符下输入"file1.txt file2.txt",然后按下回车键。Emacs会打开这两个文件,并将它们显示在编辑器的不同窗口中。
  • 除了打开或创建文件外,C-x C-f命令还可以用于打开或创建远程文件。当用户需要编辑一个位于远程服务器上的文件时,可以在提示符下输入文件的远程路径,例如"/ssh:user@remote-server:/path/to/file"。Emacs会通过SSH协议连接到远程服务器,并打开或创建指定的文件。
  • C-x C-f命令还可以用于打开或创建目录。当用户输入一个目录名并按下回车键时,Emacs会打开该目录,并在编辑器中显示目录下的文件列表。此时,用户可以选择其中一个文件进行编辑,或者继续使用C-x C-f命令打开或创建其他文件。
  • C-x C-f是Emacs中一个非常重要的命令,它用于打开或创建文件。通过使用C-x C-f命令,用户可以高效地进行文本编辑,同时还可以打开或创建远程文件和目录。掌握C-x C-f命令的使用,可以提高Emacs的使用效率,使文本编辑工作更加便捷。

🌻3.解决方案

🐓3.1 修改代码

  • counsel.el
(defun counsel-find-file (&optional initial-input initial-directory)
  "Forward to `find-file'.
When INITIAL-INPUT is non-nil, use it in the minibuffer during completion."
  (interactive)
  (defvar tramp-archive-enabled)
    (let ((tramp-archive-enabled nil)
        (default-directory (or initial-directory default-directory))
        )
    (counsel--find-file-1 "Find file: " initial-input
                          #'counsel-find-file-action
                          'counsel-find-file))
  )

修改为:

(defun counsel-find-file (&optional initial-input initial-directory)
  "Forward to `find-file'.
When INITIAL-INPUT is non-nil, use it in the minibuffer during completion."
  (interactive)
  (defvar tramp-archive-enabled)
  (let ((tramp-archive-enabled nil)
        (default-directory (file-name-directory (buffer-file-name)))
        )
    (counsel--find-file-1 "Find file: " initial-input
                          #'counsel-find-file-action
                          'counsel-find-file))
  )
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Android系统攻城狮

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值