2013-08-01 8 views
10

Używam VS2012 i jestem z tego całkiem zadowolony. Ale problem polega na tym, że kiedy koduję w C++, podświetlanie składni znowu się wyłącza. Czasami podświetlanie jest wyłączone i muszę ponownie załadować plik. Ponadto podkreślanie jest dość powolne.Visual Studio 2012: Podświetlanie składni jest wyłączane i na

Czy ktoś wie, jak to naprawić?

+0

Używam również VS 2012 (wersja 11.0.60610.01 aktualizacja 3) i nigdy nie miałem tego problemu. Ale ostatnio wolę używać qtcreatora dla C++ (może używać msvc jako kompilatora). –

+0

Co jest warte, nie miałem takiego problemu z VS2012 (również w aktualizacji 3). Zakreślacz jest dość szybki, nawet na dużych plikach. Jedyny problem, jaki widziałem, dotyczy rozszerzeń (szczególnie w niektórych scenariuszach sprawdzania pisowni). Możesz spróbować wyłączyć wszystkie rozszerzenia, aby sprawdzić, czy możesz zidentyfikować problematyczny ... – mark

Odpowiedz

3

Edytuj: W tej odpowiedzi zakładam, że Twój opis problemu jest poprawny. Innymi słowy zakładam, że czasami podświetlanie w C++ działa, a innym razem tekst pojawia się jako zwykły tekst: całkowicie czarno-biały.

Zgaduję, że używasz rozszerzenia, które modyfikuje lub zastępuje sposób, w jaki Visual Studio wyróżnia kod C++. Spróbuj tymczasowo wyłączyć wszystkie rozszerzenia i sprawdź ponownie, czy edytor działa. Niektóre rozszerzenia mogą mieć wyłączony przycisk Wyłącz; w takim przypadku musisz odinstalować rozszerzenie tego testu (prawdopodobnie za pomocą Panelu sterowania → Programy i funkcje).

Jako przykład jednego wspólnego rozszerzenia całkowicie zastępującego wyróżnienie C++ to Visual Assist. Jednak ja osobiście nie używam tego produktu i nie słyszałem o żadnych szczególnych problemach z tym rodzajem. Wspominam tylko o tym jako przykładzie rozszerzenia, które całkowicie zmienia zachowanie Visual Studio w odniesieniu do podświetlania składni kodu C++.

+0

Dzięki za pomysł, mam zainstalowany CodeMaid. Wyłączenie rozszerzenia i ponowne uruchomienie VS rozwiązało problem. –

1

Jeśli używasz tylko Intellisense, można przejść do Edit-> Intellisense-> Przełącz tryb Zakończenie (lub uderzyć Ctrl + Alt + Spacja), bawić się z nim i sprawdzić, czy to działa (może cię wciskałem tę kombinację klawiszy przez przypadek).

Zainstalowałem także aktualizację 3 i od tego czasu nie miałem żadnych problemów. Kto wie ..

0

Zainstalowałem wczoraj Visual Studio 2012 Update 3 i zacząłem doświadczać dokładnie takiego samego zachowania opisanego w oryginalnym poście. Na podstawie sugestii w tym wątku przyjrzałem się moim rozszerzeniom, a wyłączenie AllMargins naprawiło problem. Od tego czasu ponownie włączam AllMargins i wszystko działa tak, jak powinno.

Spróbuj wyłączyć i ponownie włączyć dowolne rozszerzenie; Mam nadzieję, że to rozwiąże problem.

15

wiem, że to jakiś czas temu, ale miałem ten sam problem pojawiający się losowo aż do teraz.

Zostałaby wyłączona, gdy ostatnia linia w pliku była komentarzem pojedynczego wiersza. (// bla bla). Jak tylko usunąłem, podświetlanie tekstu znów działało!

+0

Tak, zrobiłem to dla mnie. – GILGAMESH

+0

Podobny problem dla mnie, ale w moim przypadku był to komentarz jednoliniowy jako pierwszy wiersz treści metody. Oznaczało to, że podświetlanie składni zniknęło w połowie pliku. – aboy021

+0

100% dla mnie działa! – dns

1

Miałem ten sam problem. Wyłączenie rozszerzeń niestety nie sprawdziło się u mnie.
Po przeszukiwaniu i zorientowaniu się, że stało się to tylko w przypadku większych plików,
udało mi się go uruchomić, wyłączając akcelerację harware.

Narzędzia-> Opcje ...-> Środowisko-> Ogólne
* Automatyczna regulacja [...] (off)
* Użyj sprzętowej akceleracji graficznej (wyłączone)

3

Podkreślam, że zawsze przestaje działać, gdy pierwsza widoczna linia w edytorze zaczyna się od znaków "//", a ja w jaki sposób się wyregu- luję (CTRL + S na przykład).

Podświetlanie zawsze działa poprawnie, gdy pierwsza widoczna linia w edytorze zaczyna się od czegokolwiek innego, nawet z białym znakiem, i jakoś wyzwalam.

Mogę wgrać wszystkie moje uwagi i nigdy nie doświadczyć tego problemu, ale teraz, kiedy już o tym wiem, nie jest już tak denerwujący, więc pozwoliłem, aby tak było.

0

W moim przypadku okazało się, że duży blok kodu (metoda 200+ liniowa) został oznaczony jako // począwszy od pierwszej kolumny, co powodowało, że kolorowanie składni nie działało. Zmieniono opis komentarza na /* ... */ dla tej metody i naprawiono wszystkie kolory składni.

1

Osobiście uważam, że takie rzeczy jak:

#if 0// bla-bla 

bałagan podświetlanie składni źle. Rozwiązaniem, które działa, jest wstawienie spacji przed komentarzem, na przykład:

#if 0 // bla-bla 
Powiązane problemy