Jestem purystą kodu i preferuję własny styl formatowania kodu w przeciwieństwie do domyślnych ustawień programu Visual Studio. Wyłączyłem opcje automatycznego formatowania w Narzędziach / opcjach. W większości przypadków to działa.
Po użyciu któregokolwiek z wbudowanych refaktoryzacji, program Visual Studio zbija moje ustawienia z ustawieniami domyślnymi. Jak powstrzymać VS przed zrobieniem tego?
Odpowiedzi:
Miałem ten problem podczas pisania VB na
aspx
stronie.Rozwiązaniem było przejście do „Narzędzia> Opcje> Edytor tekstu> Podstawowe> Specyficzne dla VB” i wyłączenie „Ładnej listy”.
Uwaga - w programie Visual Studio 2015 można to znaleźć pod adresem:
Narzędzia> Opcje> Edytor tekstu> Podstawowe> Zaawansowane
źródło
text editor -> basic -> advanced
„o tak, chcesz sekcji zaawansowanej”? To jest podstawowebasic
jest to nazwa języka, a nie sekcja opcji, ponieważ jest tam również wymieniony C #.Wyłącz ładną listę. Jest to opcja, która zmienia format tego, co robisz. Miałem z tym ten sam dyskomfort i po zrobieniu tego mój kod pozostaje taki, jak chcę i nie wraca do poprzednich ustawień.
źródło
W moim przypadku był to ReSharper.
Sprawdź, czy ReSharper
StackOverflow: Jak wyłączyć ReSharper w programie Visual Studio i włączyć go ponownie?
Zapobiegaj ponownemu formatowaniu kodu przez program ReSharper
StackOverflow: Czy istnieje sposób, aby oznaczyć kod, aby powiedzieć ReSharper, aby go nie formatował?
Aktualizacja
W końcu był to ReSharper:
źródło
Mogłeś mieć zainstalowane narzędzie Power Tool .
W takim przypadku możesz go wyłączyć w „Narzędzia> Opcje> Produktywność Narzędzia elektryczne> PowerCommands> Ogólne”
źródło
Jak sugeruje @TheMatrixRecoder zajęło mi to trochę poszukiwania, więc może to pomoże komuś innemu.
Wybierz jedną z tych opcji, aby zapobiec irytującemu automatycznemu formatowaniu po umieszczeniu średnika lub naciśnięciu klawisza powrotu na końcu wiersza.
źródło
W VS2017 możesz to zmienić po wybraniu języka kodowania w menu ustawień. W podmenu „Formatowanie” znajduje się opcja o nazwie „nowe linie”.
źródło
Wątpię, czy można wyłączyć ponowne formatowanie po refaktoryzacji. Refaktoryzacja zmienia kod, a ponieważ jest to tylko tekst, wątpię, czy chcesz, aby po prostu zrzucał niesformatowany tekst do źródła. Czy nie byłoby trochę łatwiej po prostu ustawić styl kodu, do którego VS dostosowuje się do stylu, który lubisz i naśladujesz?
źródło
Nie można wyłączyć ponownego formatowania średnikiem ani nawiasem zamykającym. Uważam, że irytujące, że Microsoft miałby czelność mówić komukolwiek, jak formatować kod; najbardziej nieczytelny kod, jaki kiedykolwiek widziałem, był podczas pracy.
Chcę, aby sąsiednie przypisania były wyrównane w pionie; VS przeformatowuje je do jednego spacji po obu stronach znaku równości, niezależnie od długości zmiennej po lewej stronie. To jest nie do zniesienia. Wyłączenie go w opcjach edytora jest ignorowane; biorąc pod uwagę komentarze, takie jak otwieracz powyżej, jestem pewien, że jest to celowe.
Konsekwencja jest cnotą tylko wtedy, gdy prowadzi do pożądanych rezultatów. To nie jest jeden.
źródło
Ustawienia VS2015, które pomogły mi zapobiec automatycznemu formatowaniu:
(i Narzędzia> Opcje> Edytor tekstu> Podstawowe> Zaawansowane, tak jak sugeruje Tango91 )
źródło
Podążaj za NARZĘDZIAMI-> OPCJE-> Edytor tekstu-> CSS-> Formatowanie Wybierz „Reguły kompaktowe” i odznacz „Wcięcie hiearerchical”
źródło
Może tak być w przypadku formatu Clang. Wcześniej cały plik jest automatycznie formatowany przy zapisywaniu pliku, co doprowadzało mnie do szału (w przypadku repozytoriów, w których Clang Format nie jest włączony).
Takie zachowanie zniknęło po zmianie „Narzędzia -> Opcja -> LLVM / Clang -> ClangFormat -> Formatuj przy zapisywaniu -> Włącz” na Fałsz.
źródło
Możesz dostosować ustawienia formatowania kodu. Zawsze wyłączam wszystkie dodatkowe podziały wierszy, a wtedy działa dobrze, jak formatuję kod.
Jeśli dostosujesz ustawienia tak blisko, jak to tylko możliwe, do swoich preferencji, powinno to pozostawić ci minimalną pracę za każdym razem, gdy używasz refaktoryzacji.
źródło
Oprócz odpowiedzi Tango na rzeczywiste rozwiązanie, mogą istnieć ludzie, którzy chcą być na bieżąco z formatami automatycznymi, ale nie chcą zepsuć odpowiednich zmian. Sugerowałbym, aby zmodyfikować plik, aby aktywować automatyczne formatowanie, sprawdzić te zmiany, a następnie przejść do rzeczywistych zmian, które chcesz wprowadzić.
W ten sposób Twój kod będzie aktualny, ale Twoje zameldowanie będzie odpowiednie.
źródło
Spróbuj wyłączyć rozszerzenie Bundler & Minifier
źródło