Textmate Rails html 缩进

发布于 2024-12-13 12:11:49 字数 493 浏览 2 评论 0 原文

当我在rails html(或就此而言的html标签)中结束erb标签时,结束标签总是相对于开始标签缩进。正如下面几行所示。

<% if condition %>
    <% end %>

为什么结束标记不能正确缩进?

我最终也会想:

<div>
    </div>

我错过了什么?

编辑器在底部状态栏中显示 HTML (Rails)。

另外为什么 textmate 不自动结束 html 标签。 例如,在 Eclipse 中,如果您输入

,那么一旦您输入另一个 ,它就会自动知道您需要一个
;。 Textmate 不能这样做吗?

When I end an erb tag in rails html (or an html tag for that matter) the end tag is always indented in with respect to the start tag. As in the lines below.

<% if condition %>
    <% end %>

Why wont the end tag indent correctly?

I also end up with:

<div>
    </div>

What am I missing?

The editor says HTML (Rails) in the bottom status bar.

Also why does textmate not auto end an html tag.
For example in Eclipse if you type <div> then as soon as you type another </ it will automatically know that you need a </div>. Can Textmate not do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

总攻大人 2024-12-20 12:11:49

我不知道你的缩进问题,我不记得 TextMate 这样做过。

编辑:是的,确实如此,我不知道这些年来我是如何接受这种行为的,也不知道如何改变它。

关于问题的第二部分,TextMate 有很多方法可以帮助输入 HTML 标签,并且只需查看其菜单即可轻松找到所有这些方法。

编辑:我添加了一些说明和补充提示。

  1. 现在无处不在的带有制表符补全功能的代码片段系统:

    输入h1,然后按Tab以获得完整的一级标题。

    它适用于许多(不是全部)HTML 标记,并且非常有用。自从在 textMate 中引入以来,该系统已被许多编辑器/IDE 复制。

    我认为它在大多数情况下都会进行正确的缩进。

  2. 插入打开/关闭标记:

    1. 输入div
    2. 使用 Shift+Alt+Left 选择它,
    3. 点击Ctrl+<
    4. 将光标放在标签之间获取

    它足够聪明,可以将 br 扩展为
    ,但不足以将其扩展为
    XHTML 文档,这是一个非常糟糕的投诉。

  3. 插入结束标记:

    1. 类型
    2. 点击Alt+Cmd+
    3. 将光标放在标签之间获取

    这或多或少与 Eclipse 中的行为相同。

  4. 将选择内容包含在打开/关闭标记中:

    1. 输入内容
    2. 使用 Shift+Alt+Left 选择它,
    3. Ctrl+Shift+w
    4. 通过选择第一个 p 获取

      something

    5. p 替换为 span
    6. 看看第二个 p 在您键入时如何更新?

    奖励:您可以在键入时安全地添加属性,这些属性不会反映在关闭标记中。

提示:

  • 假设您正在创建一个表单,并且位于 处,您可以按 Alt+Esc 显示带有一堆内容的上下文菜单可能的完成情况。
  • 片段很容易自定义,点击 Ctrl+Alt+Cmd+b 打开捆绑包编辑器。玩得开心!

I have no idea about your indentation problem, I don't remember TextMate doing that.

EDIT: Yes, it does that, I don't know how I accepted this behaviour for all these years and no idea how to change it.

About the second part of your question, TextMate has many ways to help typing HTML tags and all these ways are very easy to find simply by looking at its menus.

EDIT: I've added some clarification and a supplementary hint.

  1. The now ubiquitous snippet system with tab-completion:

    Type h1 then hit Tab to obtain a complete first-level header.

    It works for many (not all) HTML tags and is unbelievably helpful. Since it was introduced in textMate this system has been copied in many editors/IDEs.

    I think it will do indentation right most of the time.

  2. Insert open/close tag:

    1. type div,
    2. select it with Shift+Alt+Left,
    3. hit Ctrl+<,
    4. obtain <div></div> with the cursor between the tags.

    It is smart enough to expand br to <br> but not enough to expand it to <br /> in XHTML documents which has been an oooooold complaint.

  3. Insert close tag:

    1. type <body>,
    2. hit Alt+Cmd+.,
    3. obtain <body></body> with the cursor between the tags.

    Which is more or less equivalent to the behaviour found in Eclipse.

  4. Wrap selection in open/close tag:

    1. type something,
    2. select it with Shift+Alt+Left,
    3. hit Ctrl+Shift+w.
    4. obtain <p>something</p> with the first p selected
    5. replace p with span
    6. see how the second p is updated as you type?

    Bonus: you can safely add attributes as you type, these won't be mirrored in the close tag.

Hints:

  • Suppose you are creating a form and are at <form, you can hit Alt+Esc to display a contextual menu with a bunch of possible completions.
  • Snippets are easy to customize, hit Ctrl+Alt+Cmd+b to open the Bundle editor. Have fun!
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文