diff --git a/Flow.Launcher.Localization.Analyzers/AnalyzerReleases.Unshipped.md b/Flow.Launcher.Localization.Analyzers/AnalyzerReleases.Unshipped.md
deleted file mode 100644
index d5f177c..0000000
--- a/Flow.Launcher.Localization.Analyzers/AnalyzerReleases.Unshipped.md
+++ /dev/null
@@ -1,11 +0,0 @@
-; Unshipped analyzer release
-; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
-### New Rules
-
-Rule ID | Category | Severity | Notes
---------|----------|----------|-------
-FLAN0001 | Localization | Warning | FLAN0001_OldLocalizationApiUsed
-FLAN0002 | Localization | Error | FLAN0002_ContextIsAField
-FLAN0003 | Localization | Error | FLAN0003_ContextIsNotStatic
-FLAN0004 | Localization | Error | FLAN0004_ContextAccessIsTooRestrictive
-FLAN0005 | Localization | Error | FLAN0005_ContextIsNotDeclared
diff --git a/Flow.Launcher.Localization.Analyzers/Flow.Launcher.Localization.Analyzers.csproj b/Flow.Launcher.Localization.Analyzers/Flow.Launcher.Localization.Analyzers.csproj
deleted file mode 100644
index b22e7a5..0000000
--- a/Flow.Launcher.Localization.Analyzers/Flow.Launcher.Localization.Analyzers.csproj
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
- 1.0.0
- netstandard2.0
- true
- Flow.Launcher.Localization.Analyzers
-
-
-
-
- all
- runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
-
-
-
diff --git a/Flow.Launcher.Localization.SourceGenerators/AnalyzerReleases.Shipped.md b/Flow.Launcher.Localization.SourceGenerators/AnalyzerReleases.Shipped.md
deleted file mode 100644
index 5ccc9f0..0000000
--- a/Flow.Launcher.Localization.SourceGenerators/AnalyzerReleases.Shipped.md
+++ /dev/null
@@ -1,2 +0,0 @@
-; Shipped analyzer releases
-; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
diff --git a/Flow.Launcher.Localization.SourceGenerators/Flow.Launcher.Localization.SourceGenerators.csproj b/Flow.Launcher.Localization.SourceGenerators/Flow.Launcher.Localization.SourceGenerators.csproj
deleted file mode 100644
index 784d8fc..0000000
--- a/Flow.Launcher.Localization.SourceGenerators/Flow.Launcher.Localization.SourceGenerators.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- 1.0.0
- netstandard2.0
- true
- Flow.Launcher.Localization.SourceGenerators
-
-
-
-
- all
- runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
-
-
diff --git a/Flow.Launcher.Localization.slnx b/Flow.Launcher.Localization.slnx
index dc9bd15..3a90736 100644
--- a/Flow.Launcher.Localization.slnx
+++ b/Flow.Launcher.Localization.slnx
@@ -1,5 +1,3 @@
-
-
diff --git a/Flow.Launcher.Localization.Analyzers/AnalyzerReleases.Shipped.md b/Flow.Launcher.Localization/AnalyzerReleases.Shipped.md
similarity index 100%
rename from Flow.Launcher.Localization.Analyzers/AnalyzerReleases.Shipped.md
rename to Flow.Launcher.Localization/AnalyzerReleases.Shipped.md
diff --git a/Flow.Launcher.Localization.SourceGenerators/AnalyzerReleases.Unshipped.md b/Flow.Launcher.Localization/AnalyzerReleases.Unshipped.md
similarity index 66%
rename from Flow.Launcher.Localization.SourceGenerators/AnalyzerReleases.Unshipped.md
rename to Flow.Launcher.Localization/AnalyzerReleases.Unshipped.md
index f60d258..72be87c 100644
--- a/Flow.Launcher.Localization.SourceGenerators/AnalyzerReleases.Unshipped.md
+++ b/Flow.Launcher.Localization/AnalyzerReleases.Unshipped.md
@@ -1,9 +1,15 @@
-; Shipped analyzer releases
+; Unshipped analyzer release
; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
+
### New Rules
Rule ID | Category | Severity | Notes
--------|----------|----------|-------
+FLAN0001 | Localization | Warning | FLAN0001_OldLocalizationApiUsed
+FLAN0002 | Localization | Error | FLAN0002_ContextIsAField
+FLAN0003 | Localization | Error | FLAN0003_ContextIsNotStatic
+FLAN0004 | Localization | Error | FLAN0004_ContextAccessIsTooRestrictive
+FLAN0005 | Localization | Error | FLAN0005_ContextIsNotDeclared
FLSG0001 | Localization | Warning | FLSG0001_CouldNotFindResourceDictionaries
FLSG0002 | Localization | Warning | FLSG0002_CouldNotFindPluginEntryClass
FLSG0003 | Localization | Warning | FLSG0003_CouldNotFindContextProperty
diff --git a/Flow.Launcher.Localization.Analyzers/Localize/ContextAvailabilityAnalyzer.cs b/Flow.Launcher.Localization/Analyzers/ContextAvailabilityAnalyzer.cs
similarity index 97%
rename from Flow.Launcher.Localization.Analyzers/Localize/ContextAvailabilityAnalyzer.cs
rename to Flow.Launcher.Localization/Analyzers/ContextAvailabilityAnalyzer.cs
index 8123d25..9e94325 100644
--- a/Flow.Launcher.Localization.Analyzers/Localize/ContextAvailabilityAnalyzer.cs
+++ b/Flow.Launcher.Localization/Analyzers/ContextAvailabilityAnalyzer.cs
@@ -1,11 +1,12 @@
using System.Collections.Immutable;
using System.Linq;
+using Flow.Launcher.Localization.Diagnostics;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Diagnostics;
-namespace Flow.Launcher.Localization.Analyzers.Localize
+namespace Flow.Launcher.Localization.Analyzers
{
[DiagnosticAnalyzer(LanguageNames.CSharp)]
public class ContextAvailabilityAnalyzer : DiagnosticAnalyzer
diff --git a/Flow.Launcher.Localization.Analyzers/Localize/ContextAvailabilityAnalyzerCodeFixProvider.cs b/Flow.Launcher.Localization/Analyzers/ContextAvailabilityAnalyzerCodeFixProvider.cs
similarity index 98%
rename from Flow.Launcher.Localization.Analyzers/Localize/ContextAvailabilityAnalyzerCodeFixProvider.cs
rename to Flow.Launcher.Localization/Analyzers/ContextAvailabilityAnalyzerCodeFixProvider.cs
index e009c03..ce13373 100644
--- a/Flow.Launcher.Localization.Analyzers/Localize/ContextAvailabilityAnalyzerCodeFixProvider.cs
+++ b/Flow.Launcher.Localization/Analyzers/ContextAvailabilityAnalyzerCodeFixProvider.cs
@@ -2,6 +2,7 @@
using System.Composition;
using System.Linq;
using System.Threading.Tasks;
+using Flow.Launcher.Localization.Diagnostics;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CodeActions;
using Microsoft.CodeAnalysis.CodeFixes;
@@ -11,7 +12,7 @@
using Microsoft.CodeAnalysis.Simplification;
using Microsoft.CodeAnalysis.Text;
-namespace Flow.Launcher.Localization.Analyzers.Localize
+namespace Flow.Launcher.Localization.Analyzers
{
[ExportCodeFixProvider(LanguageNames.CSharp, Name = nameof(ContextAvailabilityAnalyzerCodeFixProvider)), Shared]
public class ContextAvailabilityAnalyzerCodeFixProvider : CodeFixProvider
diff --git a/Flow.Launcher.Localization.Analyzers/Localize/OldGetTranslateAnalyzer.cs b/Flow.Launcher.Localization/Analyzers/OldGetTranslateAnalyzer.cs
similarity index 98%
rename from Flow.Launcher.Localization.Analyzers/Localize/OldGetTranslateAnalyzer.cs
rename to Flow.Launcher.Localization/Analyzers/OldGetTranslateAnalyzer.cs
index f845b98..7538bc4 100644
--- a/Flow.Launcher.Localization.Analyzers/Localize/OldGetTranslateAnalyzer.cs
+++ b/Flow.Launcher.Localization/Analyzers/OldGetTranslateAnalyzer.cs
@@ -1,11 +1,12 @@
using System.Collections.Immutable;
using System.Linq;
+using Flow.Launcher.Localization.Diagnostics;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Diagnostics;
-namespace Flow.Launcher.Localization.Analyzers.Localize
+namespace Flow.Launcher.Localization.Analyzers
{
[DiagnosticAnalyzer(LanguageNames.CSharp)]
public class OldGetTranslateAnalyzer : DiagnosticAnalyzer
diff --git a/Flow.Launcher.Localization.Analyzers/Localize/OldGetTranslateAnalyzerCodeFixProvider.cs b/Flow.Launcher.Localization/Analyzers/OldGetTranslateAnalyzerCodeFixProvider.cs
similarity index 95%
rename from Flow.Launcher.Localization.Analyzers/Localize/OldGetTranslateAnalyzerCodeFixProvider.cs
rename to Flow.Launcher.Localization/Analyzers/OldGetTranslateAnalyzerCodeFixProvider.cs
index 37552ce..162fef9 100644
--- a/Flow.Launcher.Localization.Analyzers/Localize/OldGetTranslateAnalyzerCodeFixProvider.cs
+++ b/Flow.Launcher.Localization/Analyzers/OldGetTranslateAnalyzerCodeFixProvider.cs
@@ -2,13 +2,14 @@
using System.Composition;
using System.Linq;
using System.Threading.Tasks;
+using Flow.Launcher.Localization.Diagnostics;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CodeActions;
using Microsoft.CodeAnalysis.CodeFixes;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
-namespace Flow.Launcher.Localization.Analyzers.Localize
+namespace Flow.Launcher.Localization.Analyzers
{
[ExportCodeFixProvider(LanguageNames.CSharp, Name = nameof(OldGetTranslateAnalyzerCodeFixProvider)), Shared]
public class OldGetTranslateAnalyzerCodeFixProvider : CodeFixProvider
@@ -60,7 +61,6 @@ private static Document FixOldTranslation(CodeFixContext context, SyntaxNode roo
return context.Document;
}
-
private static string GetTranslationKey(ExpressionSyntax syntax)
{
if (
@@ -72,8 +72,8 @@ literalExpressionSyntax.Token.Value is string translationKey
}
private static Document FixOldTranslationWithoutStringFormat(
- CodeFixContext context, string translationKey, SyntaxNode root, InvocationExpressionSyntax invocationExpr
- ) {
+ CodeFixContext context, string translationKey, SyntaxNode root, InvocationExpressionSyntax invocationExpr)
+ {
var newInvocationExpr = SyntaxFactory.ParseExpression(
$"Localize.{translationKey}()"
);
@@ -101,14 +101,13 @@ private static Document FixOldTranslationWithStringFormat(
SeparatedSyntaxList argumentList,
string translationKey2,
SyntaxNode root,
- InvocationExpressionSyntax invocationExpr
- ) {
+ InvocationExpressionSyntax invocationExpr)
+ {
var newArguments = string.Join(", ", argumentList.Skip(1).Select(a => a.Expression));
var newInnerInvocationExpr = SyntaxFactory.ParseExpression($"Localize.{translationKey2}({newArguments})");
var newRoot = root.ReplaceNode(invocationExpr, newInnerInvocationExpr);
return context.Document.WithSyntaxRoot(newRoot);
}
-
}
}
diff --git a/Flow.Launcher.Localization.Analyzers/AnalyzerDiagnostics.cs b/Flow.Launcher.Localization/Diagnostics/AnalyzerDiagnostics.cs
similarity index 97%
rename from Flow.Launcher.Localization.Analyzers/AnalyzerDiagnostics.cs
rename to Flow.Launcher.Localization/Diagnostics/AnalyzerDiagnostics.cs
index 2f910d3..6d6e993 100644
--- a/Flow.Launcher.Localization.Analyzers/AnalyzerDiagnostics.cs
+++ b/Flow.Launcher.Localization/Diagnostics/AnalyzerDiagnostics.cs
@@ -1,6 +1,6 @@
using Microsoft.CodeAnalysis;
-namespace Flow.Launcher.Localization.Analyzers
+namespace Flow.Launcher.Localization.Diagnostics
{
public static class AnalyzerDiagnostics
{
diff --git a/Flow.Launcher.Localization.SourceGenerators/SourceGeneratorDiagnostics.cs b/Flow.Launcher.Localization/Diagnostics/SourceGeneratorDiagnostics.cs
similarity index 98%
rename from Flow.Launcher.Localization.SourceGenerators/SourceGeneratorDiagnostics.cs
rename to Flow.Launcher.Localization/Diagnostics/SourceGeneratorDiagnostics.cs
index 710600d..7f0d3b4 100644
--- a/Flow.Launcher.Localization.SourceGenerators/SourceGeneratorDiagnostics.cs
+++ b/Flow.Launcher.Localization/Diagnostics/SourceGeneratorDiagnostics.cs
@@ -1,6 +1,6 @@
using Microsoft.CodeAnalysis;
-namespace Flow.Launcher.Localization.SourceGenerators
+namespace Flow.Launcher.Localization.Diagnostics
{
public static class SourceGeneratorDiagnostics
{
diff --git a/Flow.Launcher.Localization/Flow.Launcher.Localization.csproj b/Flow.Launcher.Localization/Flow.Launcher.Localization.csproj
index e572c05..a0c4cca 100644
--- a/Flow.Launcher.Localization/Flow.Launcher.Localization.csproj
+++ b/Flow.Launcher.Localization/Flow.Launcher.Localization.csproj
@@ -1,15 +1,19 @@
- 1.0.0
+ 0.0.1
netstandard2.0
true
Flow.Launcher.Localization
-
-
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
diff --git a/Flow.Launcher.Localization.SourceGenerators/Localize/LocalizeSourceGenerator.cs b/Flow.Launcher.Localization/Generators/LocalizeSourceGenerator.cs
similarity index 99%
rename from Flow.Launcher.Localization.SourceGenerators/Localize/LocalizeSourceGenerator.cs
rename to Flow.Launcher.Localization/Generators/LocalizeSourceGenerator.cs
index 4c97db5..634d91b 100644
--- a/Flow.Launcher.Localization.SourceGenerators/Localize/LocalizeSourceGenerator.cs
+++ b/Flow.Launcher.Localization/Generators/LocalizeSourceGenerator.cs
@@ -4,12 +4,13 @@
using System.Text;
using System.Text.RegularExpressions;
using System.Xml.Linq;
+using Flow.Launcher.Localization.Diagnostics;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.Text;
-namespace Flow.Launcher.Localization.SourceGenerators.Localize
+namespace Flow.Launcher.Localization.Generators
{
[Generator]
public partial class LocalizeSourceGenerator : ISourceGenerator