例如有:
<div> <span></span> </div>
当把第一个<div>
修改为<p>
时,</div>
也会自动改为</p>
,结果为:
<p> <span></span> </p>
我之前一直用 AndrewRadev/tagalong.vim 插件实现此功能,但我发现这个插件有一个 bug 。
bug 表现为:
当我用 y 命令复制一些内容后,如果我在使用 p 命令之前先按下 i 进入插入模式,输入一个空格,再按 Esc ,然后此时按下 p 会粘贴一堆乱码。
所以,有没有其他类似的替代品?
谢谢!
![]() | 1 sdjl OP 什么贵? 我写的 html 标签去哪里了? |
![]() | 2 sdjl OP 好吧,第一写 html 标签,需要用``包裹 html 代码才能正常显示~ |
![]() | 3 wangtian2020 2023-02-23 16:56:13 +08:00 替代品是指替代软件吗,vscode 一直是自动修改匹配的标签对的 |
![]() | 4 sdjl OP |
![]() | 5 yuhangch 2023-02-23 17:04:18 +08:00 |
6 ViriF 2023-02-23 17:12:37 +08:00 ![]() tpope/vim-surround cst< #自动弹出 prompt :p<CR> |
![]() | 7 sdjl OP |
9 N9f8Pmek6m8iRWYe 2023-02-23 17:38:33 +08:00 idea 可以自动编辑标签对,可以试试 |
10 yuancoder 2023-02-23 17:49:31 +08:00 ![]() surround 插件 : cst 修改标签 |
11 wangjw 2023-02-23 17:51:53 +08:00 vscode 有个 "auto rename tag" 插件可以试试 |
12 wangjw 2023-02-23 17:53:24 +08:00 sorry ,没看到 'vim',请忽略 |
![]() | 13 yuuko 2023-02-23 18:05:07 +08:00 装个 html lsp ,只要你用的 lsp 客户端支持 linked editing ,修改标签会帮你自动修改 |
14 acdfjelxe 2023-02-24 01:07:20 +08:00 ![]() vim -> neovim -> https://github.com/windwp/nvim-ts-autotag |
16 justgodlike1993 2023-02-24 11:29:00 +08:00 ![]() mattn/emmet-vim <C-y>u |
![]() | 17 sdjl OP |
![]() | 18 dragondove 2023-02-24 13:53:29 +08:00 @acdfjelxe 这个插件不支持 x/p 之类的操作比较难受,treesitter 目前也有性能问题 |
![]() | 19 tool2d 2023-02-24 13:57:04 +08:00 ![]() 如果是低频修改 html ,有没有 auto rename 功能,对效率影响并不大。也可以用 vscode 修改。 如果是高频使用,你可以用</auto>来进行关键词自动推导。或者用 yaml 这种没有结尾符的格式,动态编译成 html 。 |
![]() | 20 fannheyward 2023-02-24 14:23:59 +08:00 ![]() LSP 的 Linked Editing ,直接 `cw` 就是。 |