Pracuję nad kilkoma różnymi rzeczami i niektórzy używają kart, niektórzy używają 2 spacji na wcięcia, inni użytkownicy 4 spacje na wcięcia itp.
Opcja ustawienia tego w programie Visual Studio znajduje się w Tools-> Options-> Text Editor-> <language> -> Tabs
Czy istnieje sposób na zastąpienie tych ustawień w ramach poszczególnych rozwiązań?
visual-studio-2008
indentation
Ognisty Lancer
źródło
źródło
Odpowiedzi:
Oto jeden (wprawdzie zepsuty) sposób na osiągnięcie tego, czego szukasz:
1) utwórz makro zmieniające wcięcie ( źródło )
2) Połącz to z ładowaniem rozwiązania: w eksploratorze makr wybierz
EnvironmentEvents
, wybierzSolutionEvents
w pierwszym menu rozwijanym,Opened
w drugim. Masz teraz makro, które będzie wyzwalane za każdym razem, gdy otworzysz rozwiązanie. Wystarczy zmapować swoje rozwiązania do wymaganego wcięcia.źródło
AKTUALIZACJA: VS 2017 obsługuje EditorConfig natywnie: https://blogs.msdn.microsoft.com/dotnet/2016/12/15/code-style-configuration-in-the-vs2017-rc-update/
W VS 2010 i nowszych istnieje rozszerzenie, które ustawia wcięcia na podstawie pliku .editorconfig w katalogu głównym rozwiązania / projektu:
http://visualstudiogallery.msdn.microsoft.com/c8bccfe2-650c-4b42-bc5c-845e21f96328
Istnieje również podobne rozszerzenie dla Visual Studio Code .
źródło
.sln
plikiem), tylko w każdym folderze projektu. Czy to obsługujeindent_brace_style
?indent_brace_style
jeszcze - mam otwarty problem dla niego.Jest też inny dodatek o nazwie „Rebracer” teraz ... łącze jest tutaj: http://visualstudiogallery.msdn.microsoft.com/410e9b9f-65f3-4495-b68e-15567e543c58
źródło
Z witryny internetowej EditorConfig rozszerzenia VS ( http://visualstudiogallery.msdn.microsoft.com/c8bccfe2-650c-4b42-bc5c-845e21f96328 ):
(podkreślenie moje)
Pełne ujawnienie: nie mogłem go osobiście przetestować (ponieważ ReSharper przejmuje kontrolę).
źródło
W VS2017 RC dodano obsługę formatu .editorconfig.
źródło
Możesz ustawić ustawienie Wstaw tabulatory / spacje za pomocą
props.Item("InsertTabs") = bool
Sprawdź to: https://github.com/jamesfoster/VS-Whitespace-Macros
źródło
AKTUALIZACJA: wygląda na to, że Resharper nie zarządza wcięciami, więc ta odpowiedź w rzeczywistości nie dotyczy konkretnego pytania. Jednak ma to zastosowanie ogólnie; tj. „Visual Studio, ustawienia rozwiązania” na wypadek, gdyby ktoś się tutaj potknął, szukając tego.
Jeśli używasz Resharper , możesz zapisać ustawienia formatowania (naprawdę dowolne ustawienia) tylko dla rozwiązania. Możesz dokładniej określić, czy tylko dla Ciebie (tj. Nie zobowiązałeś się do kontroli źródła), czy ustawienia specyficzne dla wspólnego rozwiązania (tj. Zdecyduj się na kontrolę źródła).
Następnie w dolnej części okna pod
Save To
wybierz „Rozwiązanie XYZ osobiste” (lub wspólne, w zależności od celu).Spowoduje to utworzenie pliku xml
YOURSOLUTION.sln.DotSettings.user
z wartościami takimi jak:źródło
CTRL+Q
) i wpisać „Tabs”, aby przejść od razu do wszystkich dostępnych ustawień językowych.Tak więc przyjęte rozwiązanie mówi: „Musisz tylko zmapować swoje rozwiązania do wymaganego wcięcia”, co jest świetne, z wyjątkiem tego, jak to zrobić? Po tracić dużo czasu staramy się zorientować, że obecnie, znalazłem sposób wolę tutaj . Ta metoda ładuje dowolną liczbę wyeksportowanych ustawień, które mogą być różne dla każdego rozwiązania. Ustawienia mogą obejmować wszystko, od wcięć po kolory, a nawet układ okien (tak mi się wydaje).
Kod do obsługi zdarzenia SolutionEvents.Opened jest dodawany automatycznie. Zmień ten kod na następujący:
Zapisz makro.
Jeśli makro nie działa, może to być spowodowane poprawką zabezpieczeń MS. Na tej podstawie dodaj następujący ciąg:
Pod tagiem <runtime> w następujących trzech plikach:
Pamiętaj, aby uruchomić edytor, którego używasz do edycji tych plików z uprawnieniami administratora (tj. Kliknij prawym przyciskiem Notatnik i wybierz „Uruchom jako administrator”).
Znalazłem również wtyczkę, która ma robić to samo, co sugerowane powyżej makro, ale z jakiegoś powodu nic nie zrobiła po uruchomieniu jej instalatora.
źródło
clang-format zapewnia dość zaawansowane opcje formatowania kodu źródłowego.
Wtyczka Visual Studio jest dość prymitywna, tj. Nie działa automatycznie, ale dobrze wykonuje swoje zadanie (to znaczy po ręcznym wywołaniu).
http://llvm.org/builds/
źródło