在ColdFusion中管理线宽

时间:2010-02-24 16:32:36

标签: vim coldfusion coding-style whitespace

如果您使用ColdFusion,您可能习惯于换行或水平滚动。不经常,这并不是那么糟糕,但是当现有代码库中的四行中有三行被包装时,有时两次,这将成为一个巨大的可读性障碍。

诸如......之类的行

<cffunction name="v_multiple_item" access="public" output="false" returntype="query">

可以很容易地将HTML分解为

<cffunction name       = "v_multiple_item" 
            access     = "public" 
            output     = "false"
            returntype = "query" 
            >

使用良好的编辑器中的宏自动化相当容易。我更关心的是散布的ColdFusion和HTML,如下所示:

<cffunction..>
    <cfif..>
        <cfif..>
            <form..>
                <div..>
                    <table..>
                        <tr..>
                            <td..>
                                <cfif..>
                                    <select..>
                                        <cfoutput>
                                            <option>#stuff#</option>
                                        </cfoutput>

在空白期间,我看到使用8-sp标签的代码行,这些代码行是

减少标签宽度还不够。代码库太大,无法重写/框架化。左对齐一切吗?

是否有一个简单的,成功的策略,可以将线宽减小到可管理的水平而不会进一步损害可读性?

2 个答案:

答案 0 :(得分:6)

我不想在这里遇到“标签与空格”问题,但您可以做的一件事就是在IDE中调整标签。如果使用Tab键,则总是可以将制表符设置为2或3个空格而不是8个(或更多)。这将减少不必要的空白,至少在视觉上。

在Eclipse中,您可以在Preferences&gt;下执行此操作。一般&gt;编辑&gt;文字编辑。有一个“显示的标签宽度”,您可以减少心脏的内容。

然而,真正的答案是,这只是野兽的本质。如果您要将CF与HTML混合,并且想要清晰,那么您将缩进代码。

编辑:想想看,CFInclude刚刚浮现在脑海中。当然,这也可以导致意大利面条代码,但是这样的事情通常是通过CFInclude处理的。您可以将CF代码的可重用部分分解为cfm模板并包含这些部分。对于带有标题的情况,有许多嵌套的div和CF逻辑混合在一起,你最好还是使用cfinclude。因此,看起来像您的示例的index.cfm页面可能看起来更像是这样:

<cfinclude template="header.cfm">

<div>Some Content Here</div>

<cfinclude template="footer.cfm">

您的所有包装都包含在header.cfm或footer.cfm中。您甚至可以在这些模板中包含这些模板,同时将导航内容保持在单独的cfm页面中。

我并不是主张你使用包含hogwild,但它是在ColdFusion中处理可重复使用的HTML / CFML片段的标准方法,并将其分解为概念块,以便更容易找到您要查找的内容

答案 1 :(得分:2)

IMO,这不是ColdFusion的具体问题,这与代码可读性有关。

我的解决方案?我有一台28英寸的显示器。:)