emacs evil-matchit实现verilog配对的代码跳转

2023-11-02

背景

vim里常使用%进行跳转。遇到代码段较长的情况,跳转方便而且有助于debug。
vim 实现begin end 配对 使用matchit插件 - 岁月长河 - 博客园
http://www.cnblogs.com/air-of-code/p/4733151.html

emacs怎么搞?

emacs插件evil-matchit

spacemacs默认是支持的。不过要手动打开minor-mode(m-x evil-matchit-mode)。
evil-matchit插件默认支持verilog。
阅读evil-matchit-verilog.el代码后,可知已经实现了大部分代码的配对。

(defvar evilmi-verilog-match-tags
  '(("module" () "endmodule" "MONOGAMY")
    ("primitive" () "endprimitive" "MONOGAMY")
    ("case" () "endcase" "MONOGAMY")
    ("function" () "endfunction" "MONOGAMY")
    ("specify" () "endspecify" "MONOGAMY")
    ("table" () "endtable" "MONOGAMY")
    ("class" () "endclass" "MONOGAMY")
    ("program" () "endprogram" "MONOGAMY")
    ("clocking" () "endclocking" "MONOGAMY")
    ("property" () "endproperty" "MONOGAMY")
    ("sequence" () "endsequence" "MONOGAMY")
    ("package" () "endpackage" "MONOGAMY")
    ("covergroup" () "endgroup" "MONOGAMY")
    ("generate" () "endgenerate" "MONOGAMY")
    ("interface" () "endinterface" "MONOGAMY")
    ("task" () "endtask" "MONOGAMY")
    ("fork" () ("join" "join_any" "join_none") "MONOGAMY")
    ("begin" () "end")
    ("`ifn?def" "`else" "`endif" "MONOGAMY")
    ("`celldefine" () "`endcelldefine" "MONOGAMY")
    ))

参考文档

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

emacs evil-matchit实现verilog配对的代码跳转 的相关文章

  • 在 Emacs 中自动完成 Bibtex 文件中的 Pandoc 风格引文

    Pandoc 风格的引文 Pandoc http www johnmacfarlane net pandoc 使用 Markdown 格式 支持使用 BibTeX 文件中的键自动引用 该格式的一些示例如下 Blah blah doe99 B
  • 如何配置 Firefox 在某些链接上运行 emacsclientw?

    我有一个 Perl 脚本 它会在一堆日志文件中查找 有趣 的行 以获取一些有趣的定义 它生成一个 HTML 文件 其中包含一个表 该表的列是时间戳 文件名 行号引用和 有趣 位 我想做的是让文件名 行号成为一个实际的链接 它将在 emacs
  • Emacs 23.1.50.1 在 Windows XP 上随机挂起 6-8 秒

    我的 Windows XP 机器上有 EmacsW32 23 1 50 1 emacs 运行 它随机挂起 5 到 8 秒 非常令人沮丧 有人有解决办法吗 我什至尝试使用来自 gnu ftp 站点的 emacs win32 二进制文件 23
  • 如何使用 emacs prettify-symbols-mode?

    我有 emacs 版本 25 0 我启用prettify symbols mode 然后输入 lambda t 但它并不能美化 我该如何使用这个模式 还有哪些符号可用以及如何配置它 任何参考都值得赞赏 Edit 什么也没发生在scratch
  • Verilog 双向握手示例

    我正在完成一个项目 要求是处理器内部功能单元之间的双向握手 我知道它是什么 但是有没有任何 标准 或一个简单的例子 我唯一能想到的就是两个单元之间 当它们之间有一条数据线并且当 X 发送到 Y 时 会给出一个单独的 发送 信号 当 Y 接收
  • 让 Emacs ansiterm 和 Zsh 更好地发挥作用

    我一直在尝试在 emacs 会话中使用 Zsh 而无需 emacs 重新映射所有 Zsh 键 我发现 ansi term 对此非常有效 但是我仍然遇到一些问题 我输出了很多垃圾字符 我可以用以下方法修复它 Setup proper term
  • 设置 Emacs 进行 Erlang 编程

    Emacs 是 Erlang 编程的首选 IDE 有很多好的模式 distel erlware mode 默认的 erlang 模式 但是您对设置 Emacs 进行专业 Erlang 开发有何建议 按照中所述设置 erlang mode自述
  • 如何在 emacs lua-mode 中配置缩进?

    完整的 emacs 新手在这里 我在 Ubuntu 上使用 emacs 23 1 1emacs 入门套件 https github com technomancy emacs starter kit 我主要在 lua 模式下工作 安装了pa
  • “swank-clojure”到底是做什么的,我们有“swank-SOMETHING_ELSE”吗?

    我的肤浅理解是 swank clojure 使 M x slime connect 成为可能 我的意思是 它提供了与 clojure 服务器的连接 例如 lein swank 我的理解正确吗 如果不是 那swank的目的是什么 那么 是否有
  • 如何让 clangd 转向 c++20

    当没有其他信息时 如何让 clangd 回退到 c 20 例如 在第一次构建之前 cmake 可以生成一个 这是在带有最新 LLVM 的 Arch Linux 上 这是通过 Emacs LSP 运行的 但这应该没有什么区别 你可以加 Com
  • 在 Emacs 中,如何根据缓冲区名称自动启用次要模式?

    我有一个 Emacs 扩展 它创建一个名为 erl output 该缓冲区仅由以下内容创建fundamental mode默认情况下 有什么办法可以自动启用compilation minor mode在那个缓冲区上 要自动更改主要模式 您可
  • emacs 是否有类似 vims 的 NERDtree 之类的东西

    对于 vim 有一个名为 NERDtree 的文件系统浏览器 https github com scrooloose nerdtree https github com scrooloose nerdtree Emacs 确实存在替代或更好
  • 将 python2.7 与 Emacs 24.3 和 python-mode.el 一起使用

    我是 Emacs 新手 我正在尝试设置我的 python 环境 到目前为止 我已经了解到在 python 缓冲区中使用 python mode el C c C c将当前缓冲区的内容加载到交互式 python shell 中 显然使用了什么
  • Emacs如何自动完成C上包含文件的单词?

    如何使 Emacs 完成 C 包含文件中的单词 include
  • 如何使用Emacs运行方案?

    我跟着这个tutorial http jeffcjensen net scheme 并成功安装了Emacs STk Quack 问题是我怎样才能像在 Racket 中那样加载我的程序 在 Racket 中 我可以在上方窗口中编辑代码 输入一
  • Mac OS High Sierra 下无法打开 pty

    我的问题的本质是 用户程序如何在 Mac OS High Sierra 上打开 pty 例如 dev ptyp0 设备名称的标准 open 似乎不起作用 尽管它的保护是 crw rw rw 上下文是在 Mac OS 下运行 Emacs 在
  • 永久启用所有禁用的命令

    我想启用 Emacs 中所有禁用的命令 例如downcase region 也就是说 当调用时 它们不会要求用户确认 不幸的是 Emacs 手册的 48 3 11 禁用命令 部分没有提及启用all禁用命令永久 Emacs版本 24 0 95
  • 模块不是任务或 void 函数

    我正在尝试在 Verilog 中创建一个用于进位选择加法器的模块 除了以下部分导致编译错误之外 一切正常 module csa a b s cout input 15 0 a b output 15 0 s output cout wire
  • 使用 emacs24 通过 smtp 使用 gnutls 和额外参数发送电子邮件

    我在使用 posteo 电子邮件帐户从 emacs24 发送电子邮件时遇到了一个相当奇怪的问题 但使用 gmail 和 gmx 似乎一切正常 这是我当前 emacs 配置的相关部分 感觉就像我将其排列了一百万次 结果始终相同 require
  • Elisp 获取函数数量?

    我希望能够做到 function arity intern expt 我用谷歌搜索了这个解决方案https github com emacsmirror parser blob master parser fn el https githu

随机推荐

  • 八皇后问题(Java代码实现)

    什么是八皇后问题 八皇后问题 是一个古老而著名的问题 是回溯算法的典型案例 该问题是国际西洋棋棋手马克斯 贝瑟尔于1848年提出 在8 8格的国际象棋上摆放八个皇后 使其不能互相攻击 即 任意两个皇后都不能处于同一行 同一列或同一斜线上 问
  • 东北大学暑期acm夏令营 算法进阶第八天(图论专题)

    部分内容参考 点我 第一题 include
  • 《机器人学中的状态估计》学习笔记

    第一章 引言 机器人的状态 是指一组完整描述它随时间运动的物理量 比如位置 角度 速度等 状态估计简史 早在4000年前 航海家们就面临着一个状态估计问题 如何判断船只在大海中的位置 状态估计理论的起源 亦可追溯至早期的天文学 估计理论的里
  • C++ Deque(双端队列)

    什么Deque 双端队列表示双端队列 它概括了队列数据结构 即可以从前端或后端的两端进行插入和删除 Deque和vector区别 vector对于头部的插入和删除效率低 数据量越大 效率越低 deque相对而言 对头部的插入删除速度比vec
  • windows 杀掉进程 端口

    2 查找所有运行的端口 输入命令 netstat ano 该命令列出所有端口的使用情况 在列表中我们观察被占用的端口 比如是 1224 首先找到它 3 查看被占用端口对应的 PID 输入命令 netstat aon findstr 8081
  • 医学检验专业职业生涯

    1 医院检验科或血液科 检验科之间的收入差距比较大 越大医院的检验科在整个医院中地位越高 优点是大三甲医院待遇高平台好工作环境比较好 缺点是工作强度相对大 高学历人才集中所以晋升机会小 大多数人都是平平凡凡工作一辈子 工资加奖金10k 15
  • Vicuna模型权重合成及模型部署

    第一式 Vicuna模型部署 1 环境搭建 1 1 构建虚拟环境 1 2 安装FastChat 1 2 1 利用pip直接安装 1 2 2 从github下载repository然后安装 2 Vicuna Weights合成 2 1 下载v
  • mmdetection【2.3.0】RuntimeError: Error compiling objects for extension

    解决方案 vim bashrc 添加export CUDA HOME usr local cuda 10 0 source bashrc 错误 No module named mmcv ext 解决方案 pip uninstall mmcv
  • centos7安装mongodb3.4、卸载(彻底卸载)、更改root密码(最完整、最小白的教程)

    本教程通过yum安装 环境为centos7 先升级下curl yum update curl y 否则会在安装过程中报错 升级下又不会怀孕 一 创建yum文件 vi etc yum repos d mongodb org 3 4 repo
  • Python之Numpy学习(4)

    使用数组进行文件输入和输出 主要介绍三个文件文件操作函数 numpy save numpy savez 和numpy save numpy save file arr 存储的文件是以 npy为后缀 通过notepad无法打开 与该函数对应的
  • Ansible自动化运维工具之playbook剧本编写含lnmp

    1 playbook的相关知识 1 1 playbook 的简介 playbook是 一个不同于使用Ansible命令行执行方式的模式 其功能更强大灵活 简单来说 playbook是一个非常简单的配置管理和多主机部署系统 不同于任何已经存在
  • GAN与CycleGAN的结构解析

    原文链接 当下神经网络三大主流子领域 CNN RNN和GAN 今天咱们主要分享一下生成对抗网络 GAN的一些核心思想 并以CycleGAN为例进行阐述 借自 https github com eriklindernoren Keras GA
  • epoll及总结

    使用方法 基本与poll相同 生成对象改为epoll 将所有事件类型改为EPOLL类型 epll特点 epoll 效率比select poll要高 epoll监控数量比select 要多 epoll的触发方式比pollduo EPOLLET
  • RK3288:LINUX 系统编译报“recipe for target '_all' failed” 处理办法

    make Entering directory home xuzui 3288 linux buildroot GEN home xuzui 3288 linux buildroot output rockchip rk3288 Makef
  • 深入探索前端之道:JavaScript深拷贝与浅拷贝的解析与实现

    引言 前端开发中 数据的复制是一个常见的操作 尤其是在处理对象和数组时 我们需要考虑的是一个浅拷贝还是深拷贝 那么 什么是深拷贝和浅拷贝 它们在前端开发中有什么作用 如何实现这两种拷贝 这是我们在本文将讨论的问题 浅拷贝 浅拷贝是一种数据复
  • shiro和thymealeaf整合

    shiro和thymealeaf整合 一 加入依赖
  • 服务器Raid5磁盘阵列数据恢复步骤和数据恢复方法

    磁盘阵列数据恢复故障描述 客户的一台HP DL380 G4服务器 服务器使用hp smart array控制器挂载了一台国产磁盘阵列 磁盘阵列由14块146G SCSI硬盘组成一组RAID5 操作系统为LINUX 构建了NFS FTP 作为
  • Android DataBing详解

    转载于http blog csdn net qdjdeveloper article details 62236309 前几天小试牛刀写了一篇 Android DataBinding 初探 只是简单的介绍了一下 DataBinding 的几
  • 解决在谷歌浏览器上倍速播放视频适用B站 慕课MOOC 百度网盘(弃用) 谷歌内置播放器最高16倍速

    方法一 代码 1 百度网盘 已失效 videojs getPlayers video player html5player tech setPlaybackRate 2 0 2 B站 MOOC慕课 通用 document querySele
  • emacs evil-matchit实现verilog配对的代码跳转

    背景 emacs插件evil matchit 参考文档 背景 vim里常使用 进行跳转 遇到代码段较长的情况 跳转方便而且有助于debug vim 实现begin end 配对 使用matchit插件 岁月长河 博客园 http www c