Visual Studio 2010 可以做“.inc”文件语法高亮吗?
Posted
技术标签:
【中文标题】Visual Studio 2010 可以做“.inc”文件语法高亮吗?【英文标题】:Can Visual Studio 2010 do ".inc" file syntax highlighting? 【发布时间】:2011-02-24 18:02:15 【问题描述】:能否将 Visual Studio 2010 配置为对“.inc”文件进行语法高亮显示?我们有许多大型项目,其中包含大量“.inc”文件(asp 文件),因此无法将文件扩展名更改为“.asp”。我希望 Visual Studio 2010 做的只是在语法高亮方面将这些“.inc”文件视为“.asp”文件。
我尝试了“打开方式...”并选择了 html 编辑器,这是默认的“.asp”,但这不起作用。我尝试了列表中的所有其他编辑器,但都没有工作。
我知道 Notepad++(以及其他)可以做到这一点,但我更希望在 Visual Studio 2010 中完成 - 使用另一个 IDE 或文本编辑器不是我在这里寻找的答案。
【问题讨论】:
您找到解决方案了吗?这似乎很奇怪,比如不能使用大的 inc 文件,然后在当天晚些时候就可以使用文件。还尝试了注册表项技巧。 【参考方案1】:使用文件扩展名、文本编辑器、选项对话框。 http://msdn.microsoft.com/en-us/library/4k7w5e5s.aspx
-更新-
我看到了同样的行为 :-( 如果我发现任何东西会通知你。
作为一种解决方法,您能否将所有 .inc 文件重命名为 .asp?
这有一个额外的好处,如果直接请求 inc 文件(极不可能但可能;假设您在 web 目录中有 incs),您的代码将被暴露,不像 .asp 那样处理它并渲染。
【讨论】:
我很欣赏 Raj 的快速响应,但是,这个解决方案并不像我想要的那样工作。当我输入“.inc”并使用 HTML 编辑器打开它时,它是默认的“.asp”文件,它会突出显示代码分隔符和 html,但代码分隔符之间的任何内容都不会突出显示 - 关键字(Dim,如果,然后,其他等),字符串等。我知道它似乎应该可以工作,但是如果您自己测试它,您会发现它不会像 asp 文件一样突出显示语法 - 就像 HTML 编辑器被硬编码为区别对待 asp 文件。【参考方案2】:在 Visual Studio 中...转到选项 -> 文本编辑器 -> 文件扩展名。输入“inc”作为扩展名,输入编辑器作为“Web 表单编辑器”。您可能需要关闭然后重新打开当前打开的 .Inc 页面...希望这会有所帮助
【讨论】:
【参考方案3】:Antonio 的解决方案对我有用。我确实必须关闭并重新打开文件,但是在我重新打开它们之后,突出显示是可见的。谢谢!
选项 -> 文本编辑器 -> 文件扩展名。 键入“inc”作为扩展名并将编辑器设置为“Web 表单编辑器”。 关闭并重新打开任何“.inc”文件,突出显示应该可见。
顺便说一句,这也适用于 Visual Studio 2005。
【讨论】:
这对我有用。不幸的是,Visual Studio 似乎没有给您提供理想的灵活性.. 例如,我想将cs.pp
文件编辑为 C#,将 cshtml.pp
文件编辑为 Web 窗体,但它没有考虑cs.pp
或 cshtml.pp
是有效的扩展。我只需要使用pp
并选择其中一个:-(【参考方案4】:
我发现“Web 表单编辑器”和“HTML 编辑器”都不适合我。两者似乎都突出了 HTML ok 的语法,但 VBScript 关键字与其他所有内容都保留在标准黑色文本中。
虽然不理想,但我遵循了其他答案中的说明,但将 Visual Basic 替换为编辑器类型,这更符合我的喜好(因为它们是包含文件,其中几乎没有 HTML)。
选项 -> 文本编辑器 -> 文件 扩展。键入“inc”作为扩展名并将编辑器设置为“Visual Basic”。 关闭并重新打开所有“.inc”文件,突出显示应该可见。
【讨论】:
【参考方案5】:我真的很想添加评论,因为这不是直接的答案,但显然你需要 50 声望。
我发现在 Visual Studio 2005 中(同样,在工具 -> 选项 -> 文本编辑器 -> 文件扩展名中),“Web 表单编辑器”和“用户控件编辑器”都突出显示 HTML 和 VBScript。
Amadiere 提到“Web 表单编辑器”在 2010 年没有突出显示 VBScript,但如果在 2010 年可以选择“用户控件编辑器”,那么也许值得尝试一下。
【讨论】:
【参考方案6】:在 Visual Studio 2010 和 2012 Express 中,当我对 .inc 文件使用“Microsoft Visual Basic”时,它最适合我。尽管如此,它仍然与 .asp 文件不同,因为 .inc 文件没有自动完成功能或 IntelliSense(Ctrl+Space、Ctrl+Shift+Space 等)。
应该可以定义 .inc 文件将被视为 .asp 文件。
【讨论】:
【参考方案7】:您不应将包含 ASP 代码的文件命名为 .inc
。这是一个安全风险。任何知道/猜到文件名的人都可以在浏览器中打开它并查看文件中的实际代码。
【讨论】:
你可以告诉你的服务器不要公开提供你喜欢的任何文件类型,所以这不是真的。 @jblasco:当您可以简单地使用 .asp 扩展名时,请给我一个依赖服务器配置(并对其进行调整)的充分理由。 为了在语义上表明该文件不是一个可公开访问的 ASP 页面,而是一个包含文件。然后,您还可以完全阻止对 .inc 文件的访问,而如果它保留了 .asp 扩展名,如果直接点击其 URL,是否仍会提供服务? 可以在保留.asp
扩展名的同时命名在语义上有意义的文件。我也用 php 编码,其他人也用过,我从未使用过或见过有人使用 *.inc
来指示包含文件。
是的,但是用户仍然可以猜测文件名并直接打开.asp
页面...如果您的服务器能够解析,我真的看不出使用.asp
的好处.inc
作为 ASP,不公开提供。【参考方案8】:
我同意 Purple Coder:
您不应将包含 ASP 代码的文件命名为 .inc。这是一个安全风险。任何知道/猜到文件名的人都可以在浏览器中打开它并查看文件中的实际代码。
但是,首先,在我的情况下,这是一个 Intranet 页面,因此风险不大,因为那里的大多数人无论如何都会以某种方式在服务器上找到文件。我也不确定这个命名约定是从哪里来的。在我开始之前它就在那里。这是在 Visual Studio 6 上启动的。
但是,为了避免这种风险,有一个简单的解决方案:在 IIS 的应用程序映射中添加 .inc,方法与 .asp 相同。
【讨论】:
以上是关于Visual Studio 2010 可以做“.inc”文件语法高亮吗?的主要内容,如果未能解决你的问题,请参考以下文章
visual studio 2010 如何导入3ds模型进行ArcGIS的二次开发?
Visual Studio 2010 里面的水晶报表怎么弄?
Visual Studio 2017 中的 Visual Studio 2010
如何在 Visual Studio 2008 或 Visual Studio 2010 中设置 JavaScript 断点