Konzisztens kódolási stílusok definiálása a Szerkesztőkonfigurációval
Ha konzisztens kódolási stílusokat szeretne kikényszeríteni a kódbázisban dolgozó összes felhasználó számára, hozzáadhat egy .editorConfig
fájlt a megoldáshoz vagy a projekthez. A EditorConfig fájlbeállításai megfelelnek a EditorConfig.orgáltal karbantartott fájlformátum-specifikációnak. Számos kódszerkesztő és alkalmazás támogatja a EditorConfig-fájlokat, például a Visual Studiót. Mivel a beállítások egy fájlban találhatók, a kódhoz tartoznak, és a Visual Studión kívül is használhatók.
A Visual Studióban az EditorConfig fájlbeállítások elsőbbséget élveznek az Eszközök>Beállítások>Szövegszerkesztő>C/C++>kódstílusalatt elérhető különböző globális szövegszerkesztő-beállításokkal szemben. A EditorConfig-fájlokkal testre szabhatja az egyes kódbázisokat az adott projekthez tartozó szövegszerkesztő-beállítások használatára.
Manuálisan feltölthet egy EditorConfig-fájlt, vagy automatikusan létrehozhatja a Visual Studióban kiválasztott kódstílus-beállítások alapján. Ha új .editorconfig
fájlt szeretne létrehozni az aktuális Visual Studio-beállítások alapján, a Visual Studio főmenüjében válassza az Eszközök>Beállítások>Szövegszerkesztő>C/C++>Kódstíluslehetőséget. Ezután válassza a beállítások menüben a.editorconfig fájl generálása opciót. Válassza ki azt a mappát, amelyben a projekt található, majd a .editorconfig
fájl mentéséhez válassza a Mappa kijelölése lehetőséget.
Szerkesztőkonfigurációs fájl használata esetén továbbra is beállíthatja saját személyes szerkesztőbeállításait a Visual Studio szövegszerkesztőjében. Ezek a szövegszerkesztő-beállítások akkor érvényesek, ha szerkesztőkonfigurációs fájl nélkül dolgozik egy kódbázisban, vagy ha a Szerkesztőkonfiguráció fájl nem bírál felül egy adott beállítást. Ilyen beállítás például az, hogy tabulátorokat vagy szóközöket használ-e a kód behúzási stílusához.
Amikor Szerkesztőkonfigurációs fájlt ad hozzá a projekthez a Visual Studióban, csak az új kódsorok lesznek formázva a Szerkesztőkonfiguráció beállításai alapján. A meglévő kód formázása csak akkor változik, ha az alábbi parancsok egyikét futtatja:
-
Válassza a Kódkarbantartó lehetőséget a Visual Studio szerkesztőjében, vagy nyomja le Ctrl+K, Ctrl+E. Ez a parancs a szóközökre vonatkozik, például a behúzási stílusra és a kijelölt kódstílus-beállításokra, például a zárójelbeállításokra.
Dokumentum formázása.
Válassza a Szerkesztés>Speciális>Dokumentum formátumalehetőséget, vagy nyomja le Ctrl+K, Ctrl+D az alapértelmezett profilban. Ez a parancs csak a szabad terület beállításaira vonatkozik, például a behúzási stílusra.
Kódkonzisztencia
A EditorConfig fájlbeállításokkal egységes kódolási stílusokat és konvenciók tarthatók fenn a kódbázisban, függetlenül attól, hogy milyen szerkesztőt vagy IDE-t használ. Egyes szabályozható kódolási stílusok a behúzási stílus, a lapszélesség, a sorvégi karakterek és a kódolás. Ha például a C#-kódbázis olyan konvencióval rendelkezik, amely öt szóköz karaktert használ, a dokumentumok UTF-8 kódolást használnak, a sorok pedig CR/LF-vel végződnek, konfigurálhat egy EditorConfig-fájlt a konvenció használatára.
A EditorConfig-fájlok akkor hasznosak, ha a személyes projekteken használt kódolási konvenciók eltérnek a csapat projektjeiben használt konvencióktól. Előfordulhat például, hogy a behúzás egy tabulátor karaktert ad hozzá a kódhoz. Az Ön csapata azonban előnyben részesítheti, hogy a behúzás négy szóközt jelentsen. Az EditorConfig fájlok úgy oldják meg ezt a problémát, hogy lehetővé teszik a konfigurációt minden forgatókönyvhöz.
Mivel a kódbázisban található .editorconfig
fájl tartalmazza a EditorConfig beállításait, a kódbázissal együtt haladnak. Ha egy EditorConfig-kompatibilis szerkesztőben nyitja meg a kódfájlt, a szövegszerkesztő beállításai aktiválódnak.
Jegyzet
A EditorConfig-fájlban beállított konvenciók nem kényszeríthetők ki a CI/CD-folyamatokban buildelési hibák vagy figyelmeztetésekként. A stíluseltérések csak a Visual Studio-szerkesztőben jelennek meg, és a Hibalistában.
Támogatott beállítások
A Visual Studio szerkesztője támogatja a EditorConfig-tulajdonságok alapvető készletét:
- indent_style
- indent_size
- tabulátor szélessége
- end_of_line
- karakterkészlet
- felesleges szóközök eltávolítása a sorvégekről
- végső sortörés beszúrása
- gyökér
Az EditorConfig az XML-támogatás szerkesztőbeállításai kivételével minden Visual Studio által támogatott nyelvet támogat.
Az EditorConfig támogatja a kódstílus konvenciókat, beleértve a nyelvi, a formázási, valamint a C# és a Visual Basic elnevezési konvenciókat.
EditorConfig-fájlok hozzáadása és eltávolítása
Amikor Szerkesztőkonfigurációs fájlt ad hozzá a projekthez vagy a kódbázishoz, a Visual Studio a Szerkesztőkonfiguráció fájlbeállításai szerint formáz minden új kódsort. A Visual Studio azonban nem konvertálja a meglévő stílusokat az újakká, amíg meg nem formázza a dokumentumot, vagy nem futtatja Kódkarbantartó. Ha például a fájl behúzásai tabulátorokkal vannak formázva, és hozzáad egy Szerkesztőkonfigurációs fájlt, amely szóközökkel formázza a behúzásokat, a behúzási karakterek nem lesznek automatikusan szóközökké konvertálva. Amikor formázza a dokumentumot (válassza a Szerkesztés>Speciális>Dokumentum formázása vagy nyomja le a Ctrl+K, Ctrl+D) billentyűkombinációt, a Szerkesztőkonfiguráció fájlban lévő szabad terület beállításai a meglévő kódsorokra lesznek alkalmazva.
Ha eltávolít egy EditorConfig-fájlt a projektből vagy a kódbázisból, be kell zárnia és újra meg kell nyitnia a globális szerkesztő beállításainak megnyitott kódfájljait az új kódsorok érvénybe léptetéséhez.
EditorConfig-fájl hozzáadása projekthez
Ha Szerkesztőkonfigurációs fájlt szeretne hozzáadni a projekthez vagy megoldáshoz, kövesse az alábbi lépéseket:
Nyisson meg egy projektet vagy megoldást a Visual Studióban. Válassza ki a megoldást vagy a projektcsomópontot attól függően, hogy a EditorConfig-beállításoknak a megoldás összes projektjére vonatkozzanak-e, vagy csak egyre. A projektben vagy megoldásban kijelölhet egy mappát is, a
.editorconfig
fájl hozzáadásához.A menüben válassza Project>Új elem hozzáadásalehetőséget, vagy nyomja le Ctrl+Shift+Abillentyűkombinációt.
Megnyílik az Új elem hozzáadása párbeszédpanel.
A keresőmezőbe írja be editorconfig.
Két szerkesztőkonfigurációs fájl elemsablon jelenik meg a keresési eredmények között.
Válassza ki a editorconfig fájl (üres) sablont, hogy hozzáadjon egy előre kitöltött EditorConfig-fájlt az üres hely, kódstílus és elnevezési konvenciók alapértelmezett beállításaival. Vagy válassza a szerkesztőkonfigurációs fájl (.NET) sablont az alapértelmezett .NET-szóközzel, kódstílussal és elnevezési konvencióval előre kitöltött EditorConfig-fájl hozzáadásához.
Megjelenik egy új
.editorconfig
fájl a Megoldáskezelőben, és új lapként nyílik meg a szerkesztőben.Igény szerint szerkessze, majd mentse a fájlt.
Szerkesztőkonfigurációs fájl hozzáadásának egyéb módjai
Többféleképpen is hozzáadhat egy EditorConfig-fájlt a projekthez:
A Visual Studio IntelliCode használatával létrehozhat egy
.editorconfig
fájlt a megoldásában. Kattintson a jobb gombbal a Megoldáskezelőben, és válassza >Új szerkesztőkonfiguráció hozzáadása (IntelliCode) a helyi menüből. Az IntelliCode for Visual Studio kikövetkezteti a kódstílusokat a meglévő kódból, majd létrehoz egy EditorConfig-fájlt az előre definiált kódstílus-beállításokkal.Automatikusan létrehoz egy EditorConfig-fájlt a kódstílus-beállításokalapján.
Fájlhierarchia és -rangsor
Amikor egy .editorconfig
fájlt ad hozzá a fájlhierarchiában lévő mappához, annak beállításai az adott szinten és alacsonyabb szinten lévő összes fájlra érvényesek. Felülbírálhatja egy adott projekt, kódbázis vagy egy kódbázis egy részének EditorConfig-beállításait is, így az a kódbázis más részeinél eltérő konvenciókra épül. Ez akkor lehet hasznos, ha máshonnan származó kódot épít be, és nem szeretné módosítani a konvencióit.
Kövesse az alábbi irányelveket:
A Szerkesztőkonfiguráció egyes beállításainak vagy mindegyikének felülbírálásához adjon hozzá egy
.editorconfig
fájlt annak a fájlhierarchiának a szintjén, amelyre a felülírt beállításokat alkalmazni szeretné. Az új EditorConfig fájlbeállítások az azonos szintű fájlokra és az alkönyvtárakban lévő fájlokra vonatkoznak.Ha felül szeretne bírálni néhányat, de nem az összes beállítást, csak ezeket a beállításokat adja meg a
.editorconfig
fájlban. Csak azokat a tulajdonságokat bírálja felül a rendszer, amelyeket kifejezetten listáz az alsó szintű.editorconfig
fájlban. A magasabb szintű.editorconfig
fájlok egyéb beállításai továbbra is érvényesek maradnak.Ha biztosítani szeretné, hogy a kódbázis ezen részére ne alkalmazzanak magasabb szintű
.editorconfig
fájlokat, adja hozzá aroot=true
tulajdonságot az alsó szintű.editorconfig
fájlhoz.# top-most EditorConfig file for this level root = true
A Szerkesztőkonfigurációs fájlok felülről lefelé olvashatók. Ha több azonos nevű tulajdonság van, akkor az azonos nevű legutóbb talált tulajdonság elsőbbséget élvez.
Szerkesztőkonfigurációs fájlok szerkesztése
A Visual Studio 2022 vizuális szerkesztőt biztosít a EditorConfig-fájlokhoz.
A EditorConfig-fájl szerkesztése után újra kell betöltenie a kódfájlokat az új beállítások érvénybe lépéséhez.
A Visual Studio intelliSense befejezési listákkal segíti a Szerkesztőkonfigurációs fájlok szerkesztését. Például:
Ha sok EditorConfig-fájlt szerkeszt, hasznos lehet a EditorConfig Language Service bővítmény. A bővítmény egyes funkciói közé tartozik a szintaxiskiemelés, a továbbfejlesztett IntelliSense, az ellenőrzés és a kódformázás.
Példa
Az alábbi példa egy C#-kódrészlet behúzási állapotát mutatja be egy EditorConfig-fájl projekthez való hozzáadása előtt és után:
Az Eszközök>Beállítások párbeszédpanelen állítsa be a Szövegszerkesztő>C#>Tabs beállításokat a Visual Studio szövegszerkesztőjében, hogy négy szóköz karaktert állítson be a Tab billentyű lenyomásakor.
A vártnak megfelelően, amikor a Tab billentyűt lenyomja a következő sorban, a sor négy szóköz karakter hozzáadva behúzódik.
Az EditorConfig segítségével állítsa át a beállítást, hogy tabulátorokat használjon.
Válassza Tabulátorok használata lehetőséget a Szerkesztőkonfiguráció fájlban.
Adjon hozzá egy
.editorconfig
nevű új fájlt a projekthez az alábbi tartalommal. A[*.cs]
jelző azt jelenti, hogy ez a változás csak a projekt C#-kódfájljaira vonatkozik.# Top-most EditorConfig file root = true # Tab indentation [*.cs] indent_style = tab
A Tab billentyű lenyomásakor szóközök helyett tabulátor karakterek jelennek meg.
A EditorConfig beállításainak hibaelhárítása
Ha egy EditorConfig-fájl a könyvtárstruktúra bármely pontján található a projekt helyén vagy felett, a Visual Studio a fájl szerkesztőbeállításait alkalmazza a szerkesztőre. Ebben az esetben az állapotsoron a következő üzenet jelenhet meg:
User preferences for this file type are overridden by this project's coding conventions.
Ez azt jelenti, hogy ha az Eszközök>Beállítások>Szövegszerkesztő (például behúzási méret és stílus, lapméret vagy kódolási konvenciók) szerkesztőbeállításai meg vannak adva egy Szerkesztőkonfigurációs fájlban a könyvtárstruktúra projektjében vagy felett, a Szerkesztőkonfiguráció fájlban lévő konvenciók felülírják Szövegszerkesztőbeállításait.
A EditorConfig hibáinak elhárításához kövesse az alábbi lépéseket:
A Visual Studio EditorConfig-támogatásának kikapcsolásához törölje a A projektkódolási konvenciók követése beállítást az Eszközök>Beállítások>Szövegszerkesztő.
A projekt szülőkönyvtáraiban található EditorConfig-fájlok megkereséséhez nyisson meg egy parancssort, és futtassa a következő parancsot a projektet tartalmazó lemez gyökeréből.
dir .editorconfig /s
A EditorConfig-konvenciók hatókörének szabályozásához állítsa be a
root=true
tulajdonságot a.editorconfig
fájlban az adattár gyökerénél vagy a projekt könyvtárában.A Visual Studio egy
.editorconfig
nevű fájlt keres a megnyitott fájl könyvtárában és minden szülőkönyvtárban. A keresés akkor fejeződik be, amikor eléri a gyökérfájl elérési utat, vagy ha.editorconfig
root=true
fájl található.