2010-05-27 2 views
16

Может ли Visual Studio 2010 настроить подсветку синтаксиса на «.inc» файлы? У нас есть множество крупных проектов с тоннами этих «.inc» файлов (asp-файлов), и поэтому изменение расширения файла на «.asp» не является вариантом. Все, что я хочу, чтобы Visual Studio 2010 делать, - это обработать эти «.inc» файлы так же, как «.asp», когда дело касается подсветки синтаксиса.Может ли Visual Studio 2010 сделать подсветку синтаксиса файла .inc "?

Я пробовал «Открыть с ...» и выбрал Редактор HTML, который является «.asp» по умолчанию, но это не сработало. Я пробовал обо всех других редакторах в списке, и никто из них не работал.

Я знаю, что Notepad ++ (среди прочих) может это сделать, но я бы предпочел, чтобы это было сделано в Visual Studio 2010 - использование другой IDE или текстового редактора - это не тот ответ, который я ищу здесь.

+0

Вы нашли решение для этого, которое работает надежно? Кажется, это странно, так как не работает с большими файлами inc, а затем в тот же день, когда файл работает. Также попробовал трюк реестра. – Jules

ответ

2

Используйте расширение файла, текстовый редактор, диалоговое окно параметров. http://msdn.microsoft.com/en-us/library/4k7w5e5s.aspx

-update-

я вижу такое же поведение :-(даст вам знать, если я найду что-нибудь.

В качестве временного решения, могли бы вы переименовать все ваши .inc файлы в ASP-?

Это имеет дополнительное преимущество в том, что если запрос сделан для файла inc напрямую (крайне маловероятно, но возможно, и если у вас есть инк в веб-каталоге), ваш код будет открыт в отличие от .asp, где он обрабатывается и оказанные.

+2

Я ценю быстрый ответ Raj, однако это решение не работает, как я хотел. Когда я помещаю «.inc» и открываю его с помощью редактора HTML, который является файлом «.asp» по умолчанию, он будет выделять разделители кода и html, но ничего не выделяется между разделителями кода - ключевые слова (Dim , If, Then, Else и т. Д.), Строки и т. Д. Я знаю, что похоже, что он должен работать, но если вы проверите его сами, вы увидите, что он не выделяет синтаксис точно так же, как asp-файлы - это похоже на HTML Редактор жестко запрограммирован для обработки asp-файлов по-разному. – MarkMRM

17

В Visual Studio ... перейдите в Options -> Text Editor -> Расширение файла. Введите «inc» как расширение и редактор как «Редактор веб-форм». Возможно, вам придется закрыть, а затем повторно открыть ваши открытые в настоящее время. INc-страницы ... Надеюсь, это поможет

4

Решение Antonio для меня работало. Мне приходилось закрывать и открывать файлы, но после того, как я снова открыл их, подсветка была видна. Благодаря!

Опции -> Текстовый редактор -> Расширение файла.
Введите «inc» в качестве расширения и установите редактор как «Редактор веб-форм».
Закройте и снова откройте все файлы .inc, и выделение должно быть видимым.

Кстати, это также работает в Visual Studio 2005.

+0

Это сработало для меня. К сожалению, похоже, что Visual Studio не дает вам такой гибкости, как это было бы идеально. Например, я хотел редактировать файлы 'cs.pp' как файлы C# и' cshtml.pp' в виде веб-формы, но это не рассматривает 'cs.pp' или' cshtml.pp' действительные расширения. Мне просто нужно было использовать 'pp' и выбрать один или другой :-( – Pandincus

9

Я нашел как 'Web Form Editor' и 'Редактор HTML', чтобы быть меньше, чем идеально подходит для меня. Оба они, как представляется, выделяют синтаксис HTML ok, но ключевые слова VBScript остались в стандартном черном тексте вместе со всем остальным.

В то время как я не был идеальным, я следовал инструкциям из других ответов, но подстрока Visual Basic как тип редактора и работала гораздо больше по душе (поскольку они включали файлы, в них мало HTML).

  • Параметры -> Текстовый редактор -> Файл
  • Extension. Введите «inc» в качестве расширения и установите редактор как «Visual Basic».
  • Закройте и откройте все «.inc» файлы, и подсветка должна быть видимой.
1

Я действительно хотел бы добавить комментарий, потому что это не является прямым ответом, но, видимо, вам нужно 50 репутации для этого.

Я нашел, что в Visual Studio 2005 (опять же, в Инструменты -> Параметры -> Текстовый редактор -> Расширение файла), как «Редактор веб-форм», так и «Редактор пользовательского управления» выделяют как HTML, так и VBScript ,

Amadiere отметил, что «Web Form Editor» не выделяет VBScript в 2010 году, но, возможно, стоит попробовать «User Control Editor», если это вариант в 2010 году

0

В Visual Studio 2010 и 2012 Экспресс это лучше всего работает для меня, когда я использую «Microsoft Visual Basic» с моими .inc-файлами. Тем не менее, это все еще не то же самое, что и с .asp-файлами, так как нет. Autocomplete или IntelliSense (Ctrl + Space, Ctrl + Shift + Space и т. Д.) С .inc файлами.

Должно быть возможным определить, что файлы .inc должны обрабатываться как файлы .asp.

-2

Не следует указывать файлы, содержащие код ASP, как .inc. Это риск для безопасности. Любой, кто знает/может угадать имя файла, может открыть его в браузере и посмотреть фактический код внутри файла.

+0

Вы можете сказать, что ваш сервер не публично обслуживает любой тип файла, который вам нравится, так что это не так. – justis

+0

@jblasco: Дайте мне одну вескую причину полагаться (и его настройку), когда вы можете просто использовать расширение .asp. –

+2

В целях семантического указания того, что файл не предназначен для публично доступной страницы ASP, а включает файл include. Вы также можете полностью заблокировать доступ к файлам .inc, тогда как если бы он сохранил расширение .asp, не было бы ли оно еще обслуживаться, если оно попало прямо по его URL? – justis

0

Я согласен с пурпурной Coder:

Вы не должны назвать файлы, содержащие ASP код, .inc. Это риск для безопасности. Любой, кто знает/может угадать имя файла, может открыть его в браузере и просмотреть фактический код внутри файла.

Но, прежде всего, в моем случае это страница интранета и поэтому не очень рискованно, так как большинство людей не было бы каким-то образом найти файлы на сервере в любом случае. Я также не знаю, откуда взялось это соглашение об именах. Это было там, прежде чем я начал. Это было начато на Visual Studio 6.

Но, чтобы избежать этого риска, есть простое решение: добавьте .inc в Сопоставление приложений IIS так же, как и .asp.

Смежные вопросы