diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..6b5b0f9 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,42 @@ +# This file is the top-most EditorConfig file +root = true + +# All Files +[*] +indent_style = space +indent_size = 4 +end_of_line = lf +charset = utf-8 +insert_final_newline = true +trim_trailing_whitespace = true + +# CSharp formatting settings: +[*.cs] +csharp_new_line_before_open_brace = none +csharp_new_line_before_else = false +csharp_new_line_before_catch = false +csharp_new_line_before_finally = false +csharp_new_line_before_members_in_object_initializers = false +csharp_new_line_before_members_in_anonymous_types = false +csharp_new_line_between_query_expression_clauses = false + +csharp_indent_case_contents = true +csharp_indent_switch_labels = false +csharp_indent_labels = no_change + +csharp_space_after_cast = false +csharp_space_after_keywords_in_control_flow_statements = true +csharp_space_between_method_declaration_parameter_list_parentheses = false +csharp_space_between_method_call_parameter_list_parentheses = false +csharp_space_between_parentheses = false +csharp_space_before_colon_in_inheritance_clause = true +csharp_space_after_colon_in_inheritance_clause = true +csharp_space_around_binary_operators = before_and_after +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +csharp_space_between_method_call_name_and_opening_parenthesis = false +csharp_space_between_method_call_empty_parameter_list_parentheses = false +csharp_space_after_comma = true +csharp_space_after_dot = false + +csharp_preserve_single_line_statements = true +csharp_preserve_single_line_blocks = true diff --git a/.gitignore b/.gitignore index 8af868e..85c9d3f 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,7 @@ # /[Aa]ssets/AssetStoreTools* # Autogenerated Jetbrains Rider plugin +.idea/ [Aa]ssets/Plugins/Editor/JetBrains* # Visual Studio cache directory diff --git a/Assets/Scenes.meta b/Assets/AsmdefHelper.meta similarity index 77% rename from Assets/Scenes.meta rename to Assets/AsmdefHelper.meta index 4a334a8..799e566 100644 --- a/Assets/Scenes.meta +++ b/Assets/AsmdefHelper.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: b97a05875e33e924fa32dff70bc0cff7 +guid: 9be64d16812f0684c98bc813d0fab6fd folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/AsmdefGraph.meta b/Assets/AsmdefHelper/DependencyGraph.meta similarity index 100% rename from Assets/AsmdefGraph.meta rename to Assets/AsmdefHelper/DependencyGraph.meta diff --git a/Assets/AsmdefGraph/Editor.meta b/Assets/AsmdefHelper/DependencyGraph/Editor.meta similarity index 100% rename from Assets/AsmdefGraph/Editor.meta rename to Assets/AsmdefHelper/DependencyGraph/Editor.meta diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefDependency.cs b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefDependency.cs similarity index 87% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefDependency.cs rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefDependency.cs index d2eec00..daeaad0 100644 --- a/Assets/AsmdefGraph/Editor/Scripts/AsmdefDependency.cs +++ b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefDependency.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; -namespace AsmdefGraph.Editor { +namespace AsmdefHelper.DependencyGraph.Editor { public class AsmdefDependency { public string DependsFrom { get; } public IEnumerable DependsTo { get; } diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefDependency.cs.meta b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefDependency.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefDependency.cs.meta rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefDependency.cs.meta diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphEditorWindow.cs b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphEditorWindow.cs similarity index 78% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphEditorWindow.cs rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphEditorWindow.cs index ed9d1c9..045efde 100644 --- a/Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphEditorWindow.cs +++ b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphEditorWindow.cs @@ -3,11 +3,11 @@ using System.Linq; using UnityEditor; using UnityEditor.Compilation; -namespace AsmdefGraph.Editor { +namespace AsmdefHelper.DependencyGraph.Editor { public class AsmdefGraphEditorWindow : EditorWindow { - [MenuItem("Window/Open Asmdef Graph Window")] + [MenuItem("Window/Asmdef Helper/Open DependencyGraph", priority = 2000)] public static void Open() { - GetWindow("AsmdefGraphWindow"); + GetWindow("Asmdef Dependency"); } void OnEnable() { @@ -17,7 +17,7 @@ namespace AsmdefGraph.Editor { foreach (var asmdef in asmdefs) { allDependencies.Add( new AsmdefDependency( - asmdef.name, + asmdef.name, asmdef.assemblyReferences?.Select(x => x.name) ?? new string[0]) ); } diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphEditorWindow.cs.meta b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphEditorWindow.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphEditorWindow.cs.meta rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphEditorWindow.cs.meta diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphView.cs b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphView.cs similarity index 97% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphView.cs rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphView.cs index de9391e..1a79c87 100644 --- a/Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphView.cs +++ b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphView.cs @@ -1,9 +1,8 @@ using System.Collections.Generic; -using System.Linq; using UnityEditor.Experimental.GraphView; using UnityEngine.UIElements; -namespace AsmdefGraph.Editor { +namespace AsmdefHelper.DependencyGraph.Editor { public class AsmdefGraphView : GraphView { public AsmdefGraphView(IEnumerable asmdefs) : base() { // zoom可能に diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphView.cs.meta b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphView.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefGraphView.cs.meta rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefGraphView.cs.meta diff --git a/Assets/AsmdefGraph/Editor/AsmdefGraph.Editor.asmdef b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefHelper.DependencyGraph.Editor.asmdef similarity index 86% rename from Assets/AsmdefGraph/Editor/AsmdefGraph.Editor.asmdef rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefHelper.DependencyGraph.Editor.asmdef index c80e858..aa26b5e 100644 --- a/Assets/AsmdefGraph/Editor/AsmdefGraph.Editor.asmdef +++ b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefHelper.DependencyGraph.Editor.asmdef @@ -1,5 +1,5 @@ { - "name": "AsmdefGraph.Editor", + "name": "AsmdefHelper.DependencyGraph.Editor", "references": [], "includePlatforms": [ "Editor" diff --git a/Assets/AsmdefGraph/Editor/AsmdefGraph.Editor.asmdef.meta b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefHelper.DependencyGraph.Editor.asmdef.meta similarity index 100% rename from Assets/AsmdefGraph/Editor/AsmdefGraph.Editor.asmdef.meta rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefHelper.DependencyGraph.Editor.asmdef.meta diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefNode.cs b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefNode.cs similarity index 93% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefNode.cs rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefNode.cs index f07b2b4..af9deb8 100644 --- a/Assets/AsmdefGraph/Editor/Scripts/AsmdefNode.cs +++ b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefNode.cs @@ -1,6 +1,6 @@ using UnityEditor.Experimental.GraphView; -namespace AsmdefGraph.Editor { +namespace AsmdefHelper.DependencyGraph.Editor { public class AsmdefNode : Node { public readonly Port LeftPort; public readonly Port RightPort; diff --git a/Assets/AsmdefGraph/Editor/Scripts/AsmdefNode.cs.meta b/Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefNode.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Editor/Scripts/AsmdefNode.cs.meta rename to Assets/AsmdefHelper/DependencyGraph/Editor/AsmdefNode.cs.meta diff --git a/Assets/AsmdefGraph/Example.meta b/Assets/AsmdefHelper/Example.meta similarity index 100% rename from Assets/AsmdefGraph/Example.meta rename to Assets/AsmdefHelper/Example.meta diff --git a/Assets/AsmdefGraph/Example/AsmdefGraph.Example.asmdef b/Assets/AsmdefHelper/Example/AsmdefHelper.Example.asmdef similarity index 71% rename from Assets/AsmdefGraph/Example/AsmdefGraph.Example.asmdef rename to Assets/AsmdefHelper/Example/AsmdefHelper.Example.asmdef index 36d25ec..54688f3 100644 --- a/Assets/AsmdefGraph/Example/AsmdefGraph.Example.asmdef +++ b/Assets/AsmdefHelper/Example/AsmdefHelper.Example.asmdef @@ -1,8 +1,6 @@ { - "name": "AsmdefGraph.Example", - "references": [ - "GUID:2bafac87e7f4b9b418d9448d219b01ab" - ], + "name": "AsmdefHelper.Example", + "references": [], "includePlatforms": [], "excludePlatforms": [], "allowUnsafeCode": false, diff --git a/Assets/AsmdefGraph/Example/AsmdefGraph.Example.asmdef.meta b/Assets/AsmdefHelper/Example/AsmdefHelper.Example.asmdef.meta similarity index 100% rename from Assets/AsmdefGraph/Example/AsmdefGraph.Example.asmdef.meta rename to Assets/AsmdefHelper/Example/AsmdefHelper.Example.asmdef.meta diff --git a/Assets/Scenes/SampleScene.unity b/Assets/AsmdefHelper/Example/AsmdefHelperSampleScene.unity similarity index 100% rename from Assets/Scenes/SampleScene.unity rename to Assets/AsmdefHelper/Example/AsmdefHelperSampleScene.unity diff --git a/Assets/Scenes/SampleScene.unity.meta b/Assets/AsmdefHelper/Example/AsmdefHelperSampleScene.unity.meta similarity index 100% rename from Assets/Scenes/SampleScene.unity.meta rename to Assets/AsmdefHelper/Example/AsmdefHelperSampleScene.unity.meta diff --git a/Assets/AsmdefGraph/Example/Fuga.meta b/Assets/AsmdefHelper/Example/Fuga.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Fuga.meta rename to Assets/AsmdefHelper/Example/Fuga.meta diff --git a/Assets/AsmdefGraph/Example/Fuga/AsmdefGraph.Example.Fuga.asmdef b/Assets/AsmdefHelper/Example/Fuga/AsmdefHelper.Example.Fuga.asmdef similarity index 90% rename from Assets/AsmdefGraph/Example/Fuga/AsmdefGraph.Example.Fuga.asmdef rename to Assets/AsmdefHelper/Example/Fuga/AsmdefHelper.Example.Fuga.asmdef index 218e791..8685fc3 100644 --- a/Assets/AsmdefGraph/Example/Fuga/AsmdefGraph.Example.Fuga.asmdef +++ b/Assets/AsmdefHelper/Example/Fuga/AsmdefHelper.Example.Fuga.asmdef @@ -1,5 +1,5 @@ { - "name": "AsmdefGraph.Example.Fuga", + "name": "AsmdefHelper.Example.Fuga", "references": [ "GUID:4326ab8b7972b7c4abe4e28df1a1c005", "GUID:119b4cf3f63d4c84d920ceae3917f02c" diff --git a/Assets/AsmdefGraph/Example/Fuga/AsmdefGraph.Example.Fuga.asmdef.meta b/Assets/AsmdefHelper/Example/Fuga/AsmdefHelper.Example.Fuga.asmdef.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Fuga/AsmdefGraph.Example.Fuga.asmdef.meta rename to Assets/AsmdefHelper/Example/Fuga/AsmdefHelper.Example.Fuga.asmdef.meta diff --git a/Assets/AsmdefGraph/Example/Fuga/NewBehaviourScript.cs b/Assets/AsmdefHelper/Example/Fuga/NewBehaviourScript.cs similarity index 89% rename from Assets/AsmdefGraph/Example/Fuga/NewBehaviourScript.cs rename to Assets/AsmdefHelper/Example/Fuga/NewBehaviourScript.cs index 3f0ce2b..4dfbd09 100644 --- a/Assets/AsmdefGraph/Example/Fuga/NewBehaviourScript.cs +++ b/Assets/AsmdefHelper/Example/Fuga/NewBehaviourScript.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace AsmdefGraph.Example.Fuga { +namespace AsmdefHelper.Example.Fuga { public class NewBehaviourScript : MonoBehaviour { // Start is called before the first frame update void Start() { diff --git a/Assets/AsmdefGraph/Example/Fuga/NewBehaviourScript.cs.meta b/Assets/AsmdefHelper/Example/Fuga/NewBehaviourScript.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Fuga/NewBehaviourScript.cs.meta rename to Assets/AsmdefHelper/Example/Fuga/NewBehaviourScript.cs.meta diff --git a/Assets/AsmdefGraph/Example/Hoge.meta b/Assets/AsmdefHelper/Example/Hoge.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Hoge.meta rename to Assets/AsmdefHelper/Example/Hoge.meta diff --git a/Assets/AsmdefGraph/Example/Hoge/AsmdefGraph.Example.Hoge.asmdef b/Assets/AsmdefHelper/Example/Hoge/AsmdefHelper.Example.Hoge.asmdef similarity index 89% rename from Assets/AsmdefGraph/Example/Hoge/AsmdefGraph.Example.Hoge.asmdef rename to Assets/AsmdefHelper/Example/Hoge/AsmdefHelper.Example.Hoge.asmdef index 8192d19..99e4fd8 100644 --- a/Assets/AsmdefGraph/Example/Hoge/AsmdefGraph.Example.Hoge.asmdef +++ b/Assets/AsmdefHelper/Example/Hoge/AsmdefHelper.Example.Hoge.asmdef @@ -1,5 +1,5 @@ { - "name": "AsmdefGraph.Example.Hoge", + "name": "AsmdefHelper.Example.Hoge", "references": [ "GUID:4326ab8b7972b7c4abe4e28df1a1c005" ], diff --git a/Assets/AsmdefGraph/Example/Hoge/AsmdefGraph.Example.Hoge.asmdef.meta b/Assets/AsmdefHelper/Example/Hoge/AsmdefHelper.Example.Hoge.asmdef.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Hoge/AsmdefGraph.Example.Hoge.asmdef.meta rename to Assets/AsmdefHelper/Example/Hoge/AsmdefHelper.Example.Hoge.asmdef.meta diff --git a/Assets/AsmdefGraph/Example/Hoge/NewBehaviourScript.cs b/Assets/AsmdefHelper/Example/Hoge/NewBehaviourScript.cs similarity index 89% rename from Assets/AsmdefGraph/Example/Hoge/NewBehaviourScript.cs rename to Assets/AsmdefHelper/Example/Hoge/NewBehaviourScript.cs index 3c8a0b3..f7470c5 100644 --- a/Assets/AsmdefGraph/Example/Hoge/NewBehaviourScript.cs +++ b/Assets/AsmdefHelper/Example/Hoge/NewBehaviourScript.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace AsmdefGraph.Example.Hoge { +namespace AsmdefHelper.Example.Hoge { public class NewBehaviourScript : MonoBehaviour { // Start is called before the first frame update void Start() { diff --git a/Assets/AsmdefGraph/Example/Hoge/NewBehaviourScript.cs.meta b/Assets/AsmdefHelper/Example/Hoge/NewBehaviourScript.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Hoge/NewBehaviourScript.cs.meta rename to Assets/AsmdefHelper/Example/Hoge/NewBehaviourScript.cs.meta diff --git a/Assets/AsmdefGraph/Example/NewBehaviourScript.cs b/Assets/AsmdefHelper/Example/NewBehaviourScript.cs similarity index 90% rename from Assets/AsmdefGraph/Example/NewBehaviourScript.cs rename to Assets/AsmdefHelper/Example/NewBehaviourScript.cs index dd6ece2..b1c35ee 100644 --- a/Assets/AsmdefGraph/Example/NewBehaviourScript.cs +++ b/Assets/AsmdefHelper/Example/NewBehaviourScript.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace AsmdefGraph.Example { +namespace AsmdefHelper.Example { public class NewBehaviourScript : MonoBehaviour { // Start is called before the first frame update void Start() { diff --git a/Assets/AsmdefGraph/Example/NewBehaviourScript.cs.meta b/Assets/AsmdefHelper/Example/NewBehaviourScript.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Example/NewBehaviourScript.cs.meta rename to Assets/AsmdefHelper/Example/NewBehaviourScript.cs.meta diff --git a/Assets/AsmdefGraph/Example/Piyo.meta b/Assets/AsmdefHelper/Example/Piyo.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Piyo.meta rename to Assets/AsmdefHelper/Example/Piyo.meta diff --git a/Assets/AsmdefGraph/Example/Piyo/AsmdefGraph.Example.Piyo.asmdef b/Assets/AsmdefHelper/Example/Piyo/AsmdefHelper.Example.Piyo.asmdef similarity index 91% rename from Assets/AsmdefGraph/Example/Piyo/AsmdefGraph.Example.Piyo.asmdef rename to Assets/AsmdefHelper/Example/Piyo/AsmdefHelper.Example.Piyo.asmdef index 7b9f81f..05064ff 100644 --- a/Assets/AsmdefGraph/Example/Piyo/AsmdefGraph.Example.Piyo.asmdef +++ b/Assets/AsmdefHelper/Example/Piyo/AsmdefHelper.Example.Piyo.asmdef @@ -1,5 +1,5 @@ { - "name": "AsmdefGraph.Example.Piyo", + "name": "AsmdefHelper.Example.Piyo", "references": [ "GUID:4326ab8b7972b7c4abe4e28df1a1c005", "GUID:119b4cf3f63d4c84d920ceae3917f02c", diff --git a/Assets/AsmdefGraph/Example/Piyo/AsmdefGraph.Example.Piyo.asmdef.meta b/Assets/AsmdefHelper/Example/Piyo/AsmdefHelper.Example.Piyo.asmdef.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Piyo/AsmdefGraph.Example.Piyo.asmdef.meta rename to Assets/AsmdefHelper/Example/Piyo/AsmdefHelper.Example.Piyo.asmdef.meta diff --git a/Assets/AsmdefGraph/Example/Piyo/NewBehaviourScript.cs b/Assets/AsmdefHelper/Example/Piyo/NewBehaviourScript.cs similarity index 89% rename from Assets/AsmdefGraph/Example/Piyo/NewBehaviourScript.cs rename to Assets/AsmdefHelper/Example/Piyo/NewBehaviourScript.cs index 9cadcba..9b6362a 100644 --- a/Assets/AsmdefGraph/Example/Piyo/NewBehaviourScript.cs +++ b/Assets/AsmdefHelper/Example/Piyo/NewBehaviourScript.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using UnityEngine; -namespace AsmdefGraph.Example.Piyo { +namespace AsmdefHelper.Example.Piyo { public class NewBehaviourScript : MonoBehaviour { // Start is called before the first frame update void Start() { diff --git a/Assets/AsmdefGraph/Example/Piyo/NewBehaviourScript.cs.meta b/Assets/AsmdefHelper/Example/Piyo/NewBehaviourScript.cs.meta similarity index 100% rename from Assets/AsmdefGraph/Example/Piyo/NewBehaviourScript.cs.meta rename to Assets/AsmdefHelper/Example/Piyo/NewBehaviourScript.cs.meta diff --git a/Assets/AsmdefGraph/Editor/Scripts.meta b/Assets/AsmdefHelper/MultipleEdit.meta similarity index 77% rename from Assets/AsmdefGraph/Editor/Scripts.meta rename to Assets/AsmdefHelper/MultipleEdit.meta index c4e498d..5f1bc56 100644 --- a/Assets/AsmdefGraph/Editor/Scripts.meta +++ b/Assets/AsmdefHelper/MultipleEdit.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 44786ea3be4b7284ea613b1e7aafc4ad +guid: a9325e20a8831bf43b94e22a406c4e67 folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/AsmdefHelper/MultipleEdit/Editor.meta b/Assets/AsmdefHelper/MultipleEdit/Editor.meta new file mode 100644 index 0000000..01db1b0 --- /dev/null +++ b/Assets/AsmdefHelper/MultipleEdit/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9a6f1c1bda271a541b230a51a05a677c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefHelper.MultipleEdit.Editor.asmdef b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefHelper.MultipleEdit.Editor.asmdef new file mode 100644 index 0000000..db44666 --- /dev/null +++ b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefHelper.MultipleEdit.Editor.asmdef @@ -0,0 +1,17 @@ +{ + "name": "AsmdefHelper.MultipleEdit.Editor", + "references": [ + "GUID:211243abc45174c45b3a6c275ea126b9" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefHelper.MultipleEdit.Editor.asmdef.meta b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefHelper.MultipleEdit.Editor.asmdef.meta new file mode 100644 index 0000000..d707cb9 --- /dev/null +++ b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefHelper.MultipleEdit.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ddba71eed1843ba40a83179bf71e2848 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefMultiEditWindow.cs b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefMultiEditWindow.cs new file mode 100644 index 0000000..aa4c00e --- /dev/null +++ b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefMultiEditWindow.cs @@ -0,0 +1,55 @@ +using System.Collections.Generic; +using System.Linq; +using AsmdefHelper.UnityInternal; +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +namespace AsmdefHelper.MultipleEdit.Editor { + public class AsmdefMultiEditWindow : EditorWindow { + static IList windows = new List(); + + [MenuItem("Window/Asmdef Helper/Find all asmdef in project")] + public static void Search() { + var browser = CreateInstance(); + browser.GetProjectBrowser(); + browser.SetSearch("t:AssemblyDefinitionAsset"); + } + + [MenuItem("Window/Asmdef Helper/Open selected asmdef inspector view")] + [MenuItem("Assets/Asmdef Helper/Open selected asmdef inspector view")] + public static void Open() { + var asmdefs = Selection.GetFiltered(typeof(AssemblyDefinitionAsset), SelectionMode.TopLevel); + if (!asmdefs.Any()) { + Debug.Log("no AssemblyDefinitionAsset"); + return; + } + + CloseWindows(); + foreach (var adf in asmdefs) { + Selection.objects = new[] { adf }; + var w = CreateInstance(); + w.GetInspectorWindow(); + // LockすることでInspectorWindowの表示を固定する + w.Lock(true); + windows.Add(w); + } + } + + [MenuItem("Window/Asmdef Helper/Apply all asmdef and close")] + public static void Apply() { + foreach (var w in windows) { + w.AllApply(); + w.CloseInspectorWindow(); + } + windows.Clear(); + } + + static void CloseWindows() { + foreach (var w in windows) { + w.CloseInspectorWindow(); + } + windows.Clear(); + } + } +} diff --git a/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefMultiEditWindow.cs.meta b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefMultiEditWindow.cs.meta new file mode 100644 index 0000000..2037852 --- /dev/null +++ b/Assets/AsmdefHelper/MultipleEdit/Editor/AsmdefMultiEditWindow.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 06fa8aa0de8ea5442b6454c3a8edfdc6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/SyncSolution.meta b/Assets/AsmdefHelper/SyncSolution.meta new file mode 100644 index 0000000..3919f83 --- /dev/null +++ b/Assets/AsmdefHelper/SyncSolution.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3343c43624a31f447a1961156a2cac6e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/SyncSolution/Editor.meta b/Assets/AsmdefHelper/SyncSolution/Editor.meta new file mode 100644 index 0000000..4d4a92a --- /dev/null +++ b/Assets/AsmdefHelper/SyncSolution/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 07e92c78d576a8a458ce4a298eeb512d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/SyncSolution/Editor/AsmdefHelper.SyncSolution.Editor.asmdef b/Assets/AsmdefHelper/SyncSolution/Editor/AsmdefHelper.SyncSolution.Editor.asmdef new file mode 100644 index 0000000..602a998 --- /dev/null +++ b/Assets/AsmdefHelper/SyncSolution/Editor/AsmdefHelper.SyncSolution.Editor.asmdef @@ -0,0 +1,17 @@ +{ + "name": "AsmdefHelper.SyncSolution.Editor", + "references": [ + "GUID:211243abc45174c45b3a6c275ea126b9" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/AsmdefHelper/SyncSolution/Editor/AsmdefHelper.SyncSolution.Editor.asmdef.meta b/Assets/AsmdefHelper/SyncSolution/Editor/AsmdefHelper.SyncSolution.Editor.asmdef.meta new file mode 100644 index 0000000..fec76e6 --- /dev/null +++ b/Assets/AsmdefHelper/SyncSolution/Editor/AsmdefHelper.SyncSolution.Editor.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: dcfd308825181f346bc76cac8ae79330 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/SyncSolution/Editor/SyncSolutionUtilities.cs b/Assets/AsmdefHelper/SyncSolution/Editor/SyncSolutionUtilities.cs new file mode 100644 index 0000000..d6fc933 --- /dev/null +++ b/Assets/AsmdefHelper/SyncSolution/Editor/SyncSolutionUtilities.cs @@ -0,0 +1,57 @@ +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEngine; +using AsmdefHelper.UnityInternal; + +// https://forum.unity.com/threads/solved-unity-not-generating-sln-file-from-assets-open-c-project.538487/ +// Thank you Flexford! +namespace AsmdefHelper.SyncSolution.Editor { + public static class SyncSolutionUtilities { + + [MenuItem("Window/Asmdef Helper/Sync C# Solution", priority = 3000)] + public static void Sync() { + Sync(true); + } + + static void Sync(bool logsEnabled) { + CleanOldFiles(logsEnabled); + Call_SyncSolution(logsEnabled); + Call_SynchronizerSync(logsEnabled); + } + + static void CleanOldFiles(bool logsEnabled) { + var assetsDirectoryInfo = new DirectoryInfo(Application.dataPath); + var projectDirectoryInfo = assetsDirectoryInfo.Parent; + + var files = GetFilesByExtensions(projectDirectoryInfo, "*.sln", "*.csproj"); + foreach (var file in files) { + if (logsEnabled) { + Debug.Log($"Remove old solution file: {file.Name}"); + } + file.Delete(); + } + } + + static void Call_SyncSolution(bool logsEnabled) { + if (logsEnabled) { + Debug.Log($"Coll method: SyncVS.Sync()"); + } + SolutionSynchronizerWrapper.SyncSolution(); + } + + static void Call_SynchronizerSync(bool logsEnabled) { + if (logsEnabled) { + Debug.Log($"Coll method: SyncVS.Synchronizer.Sync()"); + } + SolutionSynchronizerWrapper.SynchronizerSync(); + } + + static IEnumerable GetFilesByExtensions(DirectoryInfo dir, params string[] extensions) { + extensions = extensions ?? new[] { "*" }; + var files = Enumerable.Empty(); + return extensions.Aggregate(files, (current, ext) => current.Concat(dir.GetFiles(ext))); + } + } +} diff --git a/Assets/AsmdefHelper/SyncSolution/Editor/SyncSolutionUtilities.cs.meta b/Assets/AsmdefHelper/SyncSolution/Editor/SyncSolutionUtilities.cs.meta new file mode 100644 index 0000000..fa31055 --- /dev/null +++ b/Assets/AsmdefHelper/SyncSolution/Editor/SyncSolutionUtilities.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e5785f4c5d9ed634799d54e96aabf408 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001.meta b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001.meta new file mode 100644 index 0000000..3516e45 --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0fce674912e7f8e4994f6f9d4e457d36 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/InspectorWindowWrapper.cs b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/InspectorWindowWrapper.cs new file mode 100644 index 0000000..d74770c --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/InspectorWindowWrapper.cs @@ -0,0 +1,34 @@ +using UnityEditor; +using UnityEditor.Experimental.AssetImporters; + +namespace AsmdefHelper.UnityInternal { + public class InspectorWindowWrapper : EditorWindow{ + InspectorWindow inspectorWindow; + + public void GetInspectorWindow() { + inspectorWindow = CreateWindow(); + } + + public void Lock(bool isLock) { + if (inspectorWindow != null) { + inspectorWindow.isLocked = isLock; + } + } + + public void AllApply() { + foreach (var editor in inspectorWindow.tracker.activeEditors) { + var assetImporterEditor = editor as AssetImporterEditor; + + if (assetImporterEditor != null && assetImporterEditor.HasModified()) { + assetImporterEditor.ApplyAndImport(); + } + } + } + + public void CloseInspectorWindow() { + if (inspectorWindow != null) { + inspectorWindow.Close(); + } + } + } +} diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/InspectorWindowWrapper.cs.meta b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/InspectorWindowWrapper.cs.meta new file mode 100644 index 0000000..5ec763e --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/InspectorWindowWrapper.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ab307b553b134091996ec036836c42b8 +timeCreated: 1586954046 \ No newline at end of file diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/ProjectBrowserWrapper.cs b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/ProjectBrowserWrapper.cs new file mode 100644 index 0000000..122dfef --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/ProjectBrowserWrapper.cs @@ -0,0 +1,17 @@ +using UnityEditor; + +namespace AsmdefHelper.UnityInternal { + public class ProjectBrowserWrapper : EditorWindow { + ProjectBrowser projectBrowser; + + public void GetProjectBrowser() { + projectBrowser = GetWindow(); + } + + public void SetSearch(string searchText) { + if (projectBrowser != null) { + projectBrowser.SetSearch(searchText); + } + } + } +} diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/ProjectBrowserWrapper.cs.meta b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/ProjectBrowserWrapper.cs.meta new file mode 100644 index 0000000..8f3fe7a --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/ProjectBrowserWrapper.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 78b9d6d4797040088ab730c9be37c6b9 +timeCreated: 1586952941 \ No newline at end of file diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/SolutionSynchronizerWrapper.cs b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/SolutionSynchronizerWrapper.cs new file mode 100644 index 0000000..c66c13d --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/SolutionSynchronizerWrapper.cs @@ -0,0 +1,22 @@ +using UnityEditor; +using UnityEditor.VisualStudioIntegration; + +namespace AsmdefHelper.UnityInternal { + public static class SolutionSynchronizerWrapper { + + static readonly SolutionSynchronizer synchronizer; + + static SolutionSynchronizerWrapper() { + synchronizer = SyncVS.Synchronizer; + } + + public static void SyncSolution() { + SyncVS.SyncSolution(); + } + + + public static void SynchronizerSync() { + synchronizer?.Sync(); + } + } +} diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/SolutionSynchronizerWrapper.cs.meta b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/SolutionSynchronizerWrapper.cs.meta new file mode 100644 index 0000000..c3db60a --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/SolutionSynchronizerWrapper.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: aeb995b6396143f58028eb4aa639c7c4 +timeCreated: 1586952223 \ No newline at end of file diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/Unity.InternalAPIEditorBridgeDev.001.asmdef b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/Unity.InternalAPIEditorBridgeDev.001.asmdef new file mode 100644 index 0000000..e375a8d --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/Unity.InternalAPIEditorBridgeDev.001.asmdef @@ -0,0 +1,15 @@ +{ + "name": "Unity.InternalAPIEditorBridgeDev.001", + "references": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [], + "versionDefines": [], + "noEngineReferences": false +} \ No newline at end of file diff --git a/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/Unity.InternalAPIEditorBridgeDev.001.asmdef.meta b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/Unity.InternalAPIEditorBridgeDev.001.asmdef.meta new file mode 100644 index 0000000..1905bdb --- /dev/null +++ b/Assets/AsmdefHelper/Unity.InternalAPIEditorBridgeDev.001/Unity.InternalAPIEditorBridgeDev.001.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 211243abc45174c45b3a6c275ea126b9 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/LICENSE b/LICENSE index 7bf7969..650ee44 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2019 Nakano Yosuke +Copyright (c) 2020 Nakano Yosuke Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Packages/manifest.json b/Packages/manifest.json index 2258d36..0af487a 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,5 +1,7 @@ { "dependencies": { + "com.unity.ide.rider": "1.1.4", + "com.unity.test-framework": "1.1.13", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 9b0e50b..77fa359 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2019.3.0f1 -m_EditorVersionWithRevision: 2019.3.0f1 (ffacea4b84e7) +m_EditorVersion: 2019.3.4f1 +m_EditorVersionWithRevision: 2019.3.4f1 (4f139db2fdbd) diff --git a/README.md b/README.md index a836eb9..f5a64f5 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,53 @@ -# AsmdefGraph -unity assembly definition viewer +# Asmdef Helper -## How to use + -[Window] > [Open Asemdef Graph Window] +Unity assembly definition utilities. - +This library solve inconvenience of assembly definition on unity. + +## Dependency Graph + +Unity assembly definition viewer. + +[Window] > [Asmdef Helper] > [Open DependencyGraph] Show assembly definition referances in your project like this. - - + You need to organize the nodes by yourself. +## Multiple Edit + +Open multiple assembly definition inspector views for parallel editing. + +1. [Window] > [Asmdef Helper] > [Find all asmdef in project] +2. All asmdef will appear in project browser. +3. Pick up asmdef to edit. +4. [Window] > [Asmdef Helper] > [Open selected asmdef inspector view] +5. Open asmdef inspector views and edit asmdef. + + + +## Sync Solution + +Refresh .sln/.csproj in your project. + +[Window] > [Asmdef Helper] > [Sync C# Solution] + +I referred to this: [[SOLVED] Unity not generating .sln file from Assets > Open C# Project +](https://forum.unity.com/threads/solved-unity-not-generating-sln-file-from-assets-open-c-project.538487/) + +___ + +## Environment +Unity 2019.3.4f1 + +This library use unity internal class, so may be not work (or couse build error) depending your unity vresion. + +I referred to this: [【Unity, C#】internalな型やメンバにアクセスするには、多分これが一番早いと思います](https://qiita.com/mob-sakai/items/f3bbc0c45abc31ea7ac0) + ## License MIT