Skip to content

Instantly share code, notes, and snippets.

@VacuumBreather
Last active June 24, 2024 14:44
Show Gist options
  • Save VacuumBreather/672ca1c8005deb0de94d77cfc944cb17 to your computer and use it in GitHub Desktop.
Save VacuumBreather/672ca1c8005deb0de94d77cfc944cb17 to your computer and use it in GitHub Desktop.
Resharper/Rider C# File Layout
<?xml version="1.0" encoding="utf-16"?>
<Patterns xmlns="urn:schemas-jetbrains-com:member-reordering-patterns">
<!-- Non-reorderable types -->
<TypePattern DisplayName="Non-reorderable types">
<TypePattern.Match>
<Or>
<And>
<Kind Is="Interface" />
<Or>
<HasAttribute Name="System.Runtime.InteropServices.InterfaceTypeAttribute" />
<HasAttribute Name="System.Runtime.InteropServices.ComImport" />
</Or>
</And>
<Kind Is="Struct" />
<HasAttribute Name="JetBrains.Annotations.NoReorderAttribute" />
<HasAttribute Name="JetBrains.Annotations.NoReorder" />
</Or>
</TypePattern.Match>
</TypePattern>
<!-- xUnit.net Test Classes -->
<TypePattern DisplayName="xUnit.net Test Classes" RemoveRegions="All">
<TypePattern.Match>
<And>
<Kind Is="Class" />
<HasMember>
<And>
<Kind Is="Method" />
<HasAttribute Name="Xunit.FactAttribute" Inherited="True" />
<HasAttribute Name="Xunit.TheoryAttribute" Inherited="True" />
</And>
</HasMember>
</And>
</TypePattern.Match>
<Entry DisplayName="Setup/Teardown Methods">
<Entry.Match>
<Or>
<Kind Is="Constructor" />
<And>
<Kind Is="Method" />
<ImplementsInterface Name="System.IDisposable" />
</And>
</Or>
</Entry.Match>
<Entry.SortBy>
<Kind>
<Kind.Order>
<DeclarationKind>Constructor</DeclarationKind>
</Kind.Order>
</Kind>
</Entry.SortBy>
</Entry>
<Entry DisplayName="All other members" />
<Entry DisplayName="Test Methods" Priority="100">
<Entry.Match>
<And>
<Kind Is="Method" />
<HasAttribute Name="Xunit.FactAttribute" Inherited="false" />
<HasAttribute Name="Xunit.TheoryAttribute" Inherited="false" />
</And>
</Entry.Match>
<Entry.SortBy>
<Name />
</Entry.SortBy>
</Entry>
</TypePattern>
<!-- NUnit Test Fixtures -->
<TypePattern DisplayName="NUnit Test Fixtures" RemoveRegions="All">
<TypePattern.Match>
<And>
<Kind Is="Class" />
<Or>
<HasAttribute Name="NUnit.Framework.TestFixtureAttribute" Inherited="true" />
<HasAttribute Name="NUnit.Framework.TestFixtureSourceAttribute" Inherited="true" />
<HasMember>
<And>
<Kind Is="Method" />
<HasAttribute Name="NUnit.Framework.TestAttribute" Inherited="false" />
<HasAttribute Name="NUnit.Framework.TestCaseAttribute" Inherited="false" />
<HasAttribute Name="NUnit.Framework.TestCaseSourceAttribute" Inherited="false" />
</And>
</HasMember>
</Or>
</And>
</TypePattern.Match>
<Entry DisplayName="Setup/Teardown Methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<HasAttribute Name="NUnit.Framework.SetUpAttribute" Inherited="true" />
<HasAttribute Name="NUnit.Framework.TearDownAttribute" Inherited="true" />
<HasAttribute Name="NUnit.Framework.TestFixtureSetUpAttribute" Inherited="true" />
<HasAttribute Name="NUnit.Framework.TestFixtureTearDownAttribute" Inherited="true" />
<HasAttribute Name="NUnit.Framework.OneTimeSetUpAttribute" Inherited="true" />
<HasAttribute Name="NUnit.Framework.OneTimeTearDownAttribute" Inherited="true" />
</Or>
</And>
</Entry.Match>
</Entry>
<Entry DisplayName="All other members" />
<Entry DisplayName="Test Methods" Priority="100">
<Entry.Match>
<And>
<Kind Is="Method" />
<HasAttribute Name="NUnit.Framework.TestAttribute" Inherited="false" />
<HasAttribute Name="NUnit.Framework.TestCaseAttribute" Inherited="false" />
<HasAttribute Name="NUnit.Framework.TestCaseSourceAttribute" Inherited="false" />
</And>
</Entry.Match>
<Entry.SortBy>
<Name />
</Entry.SortBy>
</Entry>
</TypePattern>
<!-- StyleCop Interfaces Layout -->
<TypePattern DisplayName="StyleCop Interfaces Layout" RemoveRegions="All" Priority="25">
<TypePattern.Match>
<Or>
<Kind Is="Interface" />
<And>
<Or>
<Kind Is="Class" />
<Kind Is="Struct" />
</Or>
<Not>
<Or>
<Access Is="Public" />
<Access Is="Internal" />
</Or>
</Not>
</And>
</Or>
</TypePattern.Match>
<Entry DisplayName="Constants">
<Entry.Match>
<Kind Is="Constant" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Static fields">
<Entry.Match>
<And>
<Kind Is="Field" />
<Static />
</And>
</Entry.Match>
<Entry.SortBy>
<Kind Order="Constant Field" />
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Readonly />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Fields">
<Entry.Match>
<Kind Is="Field" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Readonly />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Constructors and destructors">
<Entry.Match>
<Or>
<Kind Is="Constructor" />
<Kind Is="Destructor" />
</Or>
</Entry.Match>
<Entry.SortBy>
<Static />
<Kind Order="Constructor Destructor" />
<Access Order="Public Internal ProtectedInternal Protected Private" />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Delegates">
<Entry.Match>
<Kind Is="Delegate" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public events">
<Entry.Match>
<And>
<Kind Is="Event" />
<Access Is="Public" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Interface events">
<Entry.Match>
<And>
<Kind Is="Event" />
<ImplementsInterface />
</And>
</Entry.Match>
<Entry.SortBy>
<ImplementsInterface Immediate="True" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Other events">
<Entry.Match>
<Kind Is="Event" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Enums">
<Entry.Match>
<Kind Is="Enum" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Interfaces">
<Entry.Match>
<Kind Is="Interface" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public properties">
<Entry.Match>
<And>
<Kind Is="Property" />
<Access Is="Public" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Interface properties">
<Entry.Match>
<And>
<Kind Is="Property" />
<ImplementsInterface />
</And>
</Entry.Match>
<Entry.SortBy>
<ImplementsInterface Immediate="True" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Other properties">
<Entry.Match>
<Kind Is="Property" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public indexers">
<Entry.Match>
<And>
<Kind Is="Indexer" />
<Access Is="Public" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Interface indexers" Priority="100">
<Entry.Match>
<And>
<Kind Is="Indexer" />
<ImplementsInterface />
</And>
</Entry.Match>
<Entry.SortBy>
<ImplementsInterface Immediate="True" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Other indexers">
<Entry.Match>
<Kind Is="Indexer" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Setup/Teardown Methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<HasAttribute Name="NUnit.Framework.SetUpAttribute" Inherited="True" />
<HasAttribute Name="NUnit.Framework.TearDownAttribute" Inherited="True" />
<HasAttribute Name="NUnit.Framework.FixtureSetUpAttribute" Inherited="True" />
<HasAttribute Name="NUnit.Framework.FixtureTearDownAttribute" Inherited="True" />
</Or>
</And>
</Entry.Match>
</Entry>
<Entry DisplayName="Test Methods" Priority="100">
<Entry.Match>
<And>
<Kind Is="Method" />
<HasAttribute Name="NUnit.Framework.TestAttribute" />
</And>
</Entry.Match>
<Entry.SortBy>
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public operators">
<Entry.Match>
<And>
<Kind Is="Operator" />
<Or>
<Access Is="Public" />
<Access Is="Internal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<Access Is="Public" />
<Access Is="Internal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Interface methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<ImplementsInterface />
</And>
</Entry.Match>
<Entry.SortBy>
<ImplementsInterface Immediate="True" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected Operators">
<Entry.Match>
<And>
<Kind Is="Operator" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected Methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Event handlers">
<Entry.Match>
<And>
<Kind Is="Method" />
<Access Is="Private" />
<HandlesEvent />
</And>
</Entry.Match>
<Entry.SortBy>
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Private operators">
<Entry.Match>
<And>
<Kind Is="Operator" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Private methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Nested structs">
<Entry.Match>
<Kind Is="Struct" />
</Entry.Match>
<Entry.SortBy>
<Static />
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Nested classes">
<Entry.Match>
<Kind Is="Class" />
</Entry.Match>
<Entry.SortBy>
<Static />
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="All other members" />
</TypePattern>
<!-- StyleCop Layout -->
<TypePattern DisplayName="StyleCop Layout" RemoveRegions="All" Priority="25">
<TypePattern.Match>
<Or>
<Kind Is="Class" />
<Kind Is="Struct" />
</Or>
</TypePattern.Match>
<Entry DisplayName="Constants">
<Entry.Match>
<Kind Is="Constant" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Static fields">
<Entry.Match>
<And>
<Kind Is="Field" />
<Static />
</And>
</Entry.Match>
<Entry.SortBy>
<Kind Order="Constant Field" />
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Readonly />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Fields">
<Entry.Match>
<Kind Is="Field" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Readonly />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Constructors and destructors">
<Entry.Match>
<Or>
<Kind Is="Constructor" />
<Kind Is="Destructor" />
</Or>
</Entry.Match>
<Entry.SortBy>
<Static />
<Kind Order="Constructor Destructor" />
<Access Order="Public Internal ProtectedInternal Protected Private" />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Delegates">
<Entry.Match>
<Kind Is="Delegate" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public events">
<Entry.Match>
<And>
<Kind Is="Event" />
<Access Is="Public" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected events">
<Entry.Match>
<And>
<Kind Is="Event" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
</Entry>
<Entry DisplayName="Private events">
<Entry.Match>
<And>
<Kind Is="Event" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Enums">
<Entry.Match>
<Kind Is="Enum" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Interfaces">
<Entry.Match>
<Kind Is="Interface" />
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public properties">
<Entry.Match>
<And>
<Kind Is="Property" />
<Access Is="Public" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected properties">
<Entry.Match>
<And>
<Kind Is="Property" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
</Entry>
<Entry DisplayName="Private properties">
<Entry.Match>
<And>
<Kind Is="Property" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public indexers">
<Entry.Match>
<And>
<Kind Is="Indexer" />
<Access Is="Public" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected indexers">
<Entry.Match>
<And>
<Kind Is="Indexer" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
</Entry>
<Entry DisplayName="Private indexers">
<Entry.Match>
<And>
<Kind Is="Indexer" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Setup/Teardown Methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<HasAttribute Name="NUnit.Framework.SetUpAttribute" Inherited="True" />
<HasAttribute Name="NUnit.Framework.TearDownAttribute" Inherited="True" />
<HasAttribute Name="NUnit.Framework.FixtureSetUpAttribute" Inherited="True" />
<HasAttribute Name="NUnit.Framework.FixtureTearDownAttribute" Inherited="True" />
</Or>
</And>
</Entry.Match>
</Entry>
<Entry DisplayName="Test Methods" Priority="100">
<Entry.Match>
<And>
<Kind Is="Method" />
<HasAttribute Name="NUnit.Framework.TestAttribute" />
</And>
</Entry.Match>
<Entry.SortBy>
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public operators">
<Entry.Match>
<And>
<Kind Is="Operator" />
<Or>
<Access Is="Public" />
<Access Is="Internal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Public methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<Access Is="Public" />
<Access Is="Internal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected Operators">
<Entry.Match>
<And>
<Kind Is="Operator" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Protected Methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Or>
<Access Is="Protected" />
<Access Is="ProtectedInternal" />
</Or>
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Virtual />
<Override />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Event handlers">
<Entry.Match>
<And>
<Kind Is="Method" />
<Access Is="Private" />
<HandlesEvent />
</And>
</Entry.Match>
<Entry.SortBy>
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Private operators">
<Entry.Match>
<And>
<Kind Is="Operator" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Private methods">
<Entry.Match>
<And>
<Kind Is="Method" />
<Access Is="Private" />
</And>
</Entry.Match>
<Entry.SortBy>
<Access />
<Static />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Nested structs">
<Entry.Match>
<Kind Is="Struct" />
</Entry.Match>
<Entry.SortBy>
<Static />
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="Nested classes">
<Entry.Match>
<Kind Is="Class" />
</Entry.Match>
<Entry.SortBy>
<Static />
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name />
</Entry.SortBy>
</Entry>
<Entry DisplayName="All other members" />
</TypePattern>
</Patterns>
@maor365scores
Copy link

Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment