【问题标题】:Manually set language for code-highlighting in visual studio在 Visual Studio 中手动设置代码高亮语言
【发布时间】:2014-02-23 20:14:59
【问题描述】:

我在 .cshtml 文件中管理我的样式声明,因此我可以动态编码值,例如我需要经常重复的颜色代码。我正在使用 MVC 的路由功能来提供带有 .css 扩展名的样式表,所以这对最终用户来说都是不透明的。

.cshtml 文件主要包含 CSS,当然,只有几十个动态传入的值,以及我编写的一些帮助程序调用,以使 CSS 更易于维护,所以我希望能够使用 CSS 代码高亮查看此文件。

问题: 是否可以使用 Visual Studio 为给定文件手动设置语法突出显示的语言?

注意:我知道使用 Notepad++ 很容易,但我更喜欢使用同一个编辑器完成所有操作。

更新:我意识到这个问题可以(我认为)归结为“CSS 源代码编辑器的可执行文件(默认) 在哪里?” .这是在 CSS 文件上选择“打开方式...”时的一个选项,但在 .cshtml 文件上选择“打开方式...”时不是一个选项,所以如果我可以使用“添加”导航到它的位置“该向导中的按钮,我的问题就解决了。但是……那个编辑器呢??!

更新 (2)我的 hack 有效,但由于它很难看,我仍然想知道如何在默认 CSS 编辑器中打开。

更新 (3):我可以真的在这里使用解决方案,而且在许多情况下,通用解决方案似乎是有益的。因此赏金。

更新 (4):好的,我的 hack 确实确实有效 - 您只需使用 VS 的 HTML 编辑器而不是 Razor 编辑器打开文件。

【问题讨论】:

  • 在下面查看我的回答,希望对您有所帮助。

标签: visual-studio


【解决方案1】:

这是我的技巧:

可以使用 Visual Studio 的 HTML 编辑器打开一个 .cshtml 文件,如果嵌套在 <style> 标记内,该编辑器将识别 CSS。但是由于<style>(或任何)标签在 .css 文件中是无效的,并且会导致样式中断,解决此问题的方法是在 razor 或 CSS cmets 中嵌入打开和关闭标签:

/*<style>*/

[my style declarations]

/*</style>*/

或者:

@*<style>*@

[my style declarations]

@*</style>*@

哎呀。但它有效。

更新确实工作——在使用“open with.. 。”

【讨论】:

  • 呃。这不再起作用了。不知何故,VS 已经“发现”了我的恶作剧——当我打开文件时,它会显示 CSS 语法高亮几秒钟,然后它就消失了。我有一段时间没有编辑我的样式表了,所以不确定是什么升级/插件/什么没有触发这个。
  • &lt;style&gt; 块中添加任何 C# 代码块会终止 CSS 突出显示。
  • 使用 /* */ 设置一些 ReSharper 警钟,尝试使用: // 感谢您的天才想法,让我的生活更轻松使用 .cshtml 作为 CSS/JS 输出
【解决方案2】:

这是在 Visual Studio 6 中的操作方法:

Setting Syntax Coloring

为自定义 HTML 变体设置语法着色

  1. \msdev\bin\ide 目录中创建一个扩展名为.hlx 的文本文件。 文件的第一行是唯一标识文件类型的签名。它包含将显示在“源文件属性”页面上的变体名称。在签名行之后,格式类似于 Windows 初始化文件的格式。行首的分号表示注释。

  2. 在文件中创建三个部分:[Elements] 部分、[Attributes] 部分和 [Entities] 部分。 每个部分都包含一个由空格、回车或换行分隔的名称列表。名称不需要按字母顺序排列。您必须指定要着色的所有元素、属性和实体。

    请参阅示例以了解 sample .hlx 文件的概要。

  3. 保存.hlx 文件。

注意:如果您在 .hlx 文件中指定的自定义变体与内置 HTML 支持同名,它将覆盖内置 HTML 支持。您指定的 HTML 变体名称不得超过 14 个字符。

【讨论】:

  • 这是针对 VS6 的——似乎不适用于 VS 2010。抱歉没有指定那个版本。
  • 这就是我在写第一个问题更新时发现的。不幸的是,VS 没有在打开 cshtml 文件的选项列表中显示 CSS 源代码编辑器。如果我可以浏览到那个编辑器,那么我可以将它添加到可用于 cshtml 的编辑器列表中。但是那个 CSS 源代码编辑器可执行文件到底在哪里???
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-30
  • 1970-01-01
相关资源
最近更新 更多