emacs - 为什么emacs缩进包含'%'符号的字符串?
问题描述
我在为我的工作定制的文件类型上使用 Emacs 的 VHDL 主要模式。代码看起来很像普通的 VHDL,但使用一些后处理来简化重复的块并清理端口映射和 IO 列表。我使用这个内置的循环函数,看起来像这样
%foreach a(0,1,2)
signal%(a) <= %(a);
%end
这会生成 3 行,其中 %(a) 被替换为许多其他语言中 for 循环所期望的数字。
当我使用这种样式时,我希望某些给定的多行函数的缩进看起来像这样
my_signal <= (unit%(a) and some_signal) OR
(unit%(a) and not some_other_signal);
但是“智能标签”让它看起来像这样
my_signal <= (unit%(a) and some_signal) OR
(unit%(a) and not some_other_signal);
然后,此行为将复合其他行。普通 VHDL 模式允许这样做,但是当添加“%”字符时,它不会与分配后的第一个字符对齐。我已经尝试设置自定义制表位,而所有其他设置 shtat 可能会影响这一切都没有运气。在这一点上,我会满足于能够可靠地缩进上一行中任何单词的开头,但是这个功能似乎被 VHDL 主要模式覆盖了。
有谁知道我怎样才能让它工作?
解决方案
推荐阅读
- python - Python eval 函数和传递参数?
- php - PHP中字符串比较的奇怪结果
- scapy - 如何在重传时更改数据包的有效负载?
- android - 如何在使用 android 上传之前压缩图像?
- c# - 如何在 Redis 中对键的值部分进行范围查询搜索?
- python - Snakemake 如何忽略一个 RuntimeWarning?
- javascript - eslint 使用配置了路径映射的 jsconfig.json 解决导入错误
- html - 使用 CSS-Grid 的页脚行不会在移动设备视图中停留在底部
- excel - 如何遍历创建范围的行并在此范围内循环并在值更改时重新开始
- python - 将 Perl 中的多维哈希转换为 Python dict