首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Emacs:如何跳转到.el文件中的函数定义?

关于Emacs中跳转到.el文件中的函数定义,可以使用以下几种方法:

  1. 使用find-function命令:

在Emacs中,可以使用find-function命令来跳转到.el文件中的函数定义。具体操作如下:

  • 按下M-x(即按下Alt键和x键)
  • 输入find-function并按回车键
  • 输入函数名称并按回车键

这样,Emacs会自动跳转到对应函数的定义处。

  1. 使用imenu插件:

imenu是一个Emacs的插件,可以帮助用户快速跳转到.el文件中的函数定义。使用imenu的方法如下:

  • 在Emacs中安装imenu插件(可以使用package.el或者straight.el等插件管理工具)
  • 在Emacs配置文件中添加以下代码:
代码语言:txt
复制
(require 'imenu)
(setq imenu-auto-rescan t)
(setq imenu-use-popup-menu t)
(setq imenu-max-item-length 80)
(setq imenu-sort-function 'imenu--sort-by-name)
(add-hook 'emacs-lisp-mode-hook
          (lambda ()
            (imenu-add-to-menubar "Functions")))
  • 重新加载配置文件

这样,在Emacs中打开.el文件时,就可以使用imenu插件快速跳转到函数定义处了。

  1. 使用xref插件:

xref是一个Emacs的插件,可以帮助用户快速跳转到.el文件中的函数定义。使用xref的方法如下:

  • 在Emacs中安装xref插件(可以使用package.el或者straight.el等插件管理工具)
  • 在Emacs配置文件中添加以下代码:
代码语言:txt
复制
(require 'xref)
(define-key emacs-lisp-mode-map (kbd "M-.") 'xref-find-definitions)
(define-key emacs-lisp-mode-map (kbd "M-,") 'xref-pop-marker-stack)
  • 重新加载配置文件

这样,在Emacs中打开.el文件时,就可以使用xref插件快速跳转到函数定义处了。

总之,Emacs中跳转到.el文件中的函数定义有多种方法,可以根据自己的需求选择合适的方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • emacs配置文件3

    ;;普通设置 (setq inhibit-startup-message t);关闭起动时闪屏 (setq visible-bell t);关闭出错时的提示声 (show-paren-mode t);显示括号匹配 ;(set-default-font "-adobe-courier-medium-r-normal--14-100-100-100-m-90-iso10646-1");;字体设置 (column-number-mode t);显示列号 (setq frame-title-format "%n%F/%b");在窗口的标题栏上显示文件名称 (mouse-avoidance-mode 'animate);光标靠近鼠标指针时,让鼠标指针自动让开 (setq default-frame-alist '((height . 25) (width . 80) (menu-bar-lines . 80) (tool-bar-lines . 80)));设置窗口启动大小 (fset 'yes-or-no-p 'y-or-n-p);以 y/n代表 yes/no (setq-default make-backup-files nil);;不要生成临时文件 (setq x-select-enable-clipboard t);;允许emacs和外部其他程序的粘贴 (setq mouse-yank-at-point t);支持中键粘贴 ;(show-paren-mode 't); 高亮显示匹配括号 ;;自动插入匹配的括号 ;; enable skeleton-pair insert globally (setq skeleton-pair t) (global-set-key (kbd "(") 'skeleton-pair-insert-maybe) (global-set-key (kbd "[") 'skeleton-pair-insert-maybe) (global-set-key (kbd "{") 'skeleton-pair-insert-maybe) ;;热键设置 (global-set-key [f9] 'delete-window);F9 关闭d当前窗口 (global-set-key [f8] 'other-window);F8窗口间跳转 (global-set-key [(f2)] 'ansi-term);F2 切换到shell模式 ;(global-set-key [f3] 'split-window-vertically);F3分割窗口 (global-set-key [f12] 'my-fullscreen);F12 全屏 (global-set-key [(f4)] 'compile);编译 (global-set-key [f5] 'gdb);启动gdb (global-set-key [(f6)] 'gdb-many-windows);启动窗口gdb (global-set-key [f1] 'goto-line);设置M-g为goto-line ;(global-set-key [f7] 'other-frame);跳到其它窗格 (global-set-key [(f3)] 'speedbar);打开speedbar ;;显示行号 (load-file "~/dos/emacs/display-line-number.el") ;;(autoload `display-line-number-mode-on "display-line-number" "display mode" t) (require 'display-line-number) (global-display-line-number-mode t) ;;鼠标滚轮,默认的滚动太快,这里改为3行 (defun up-slightly () (interactive) (scroll-up 3)) (defun down-slightly () (interactive) (scroll-down 3)) (global-set-key [mouse-4] 'down-slightly) (global-set-key [mouse-5] 'up-slightly) ;;代码折 (add-hook 'c-mode-hook 'hs-minor-mode) (add-hook 'c++-mode-hook 'hs-minor-mode)   ;全屏 (defun my-fullscreen ()   (interactive)   (x-send-client-message    nil 0 nil "_NET_WM_STATE" 32    '(

    03
    领券