Skip to content

Commit

Permalink
V2.0.3
Browse files Browse the repository at this point in the history
  • Loading branch information
SanderSade committed Nov 29, 2023
1 parent a9530c4 commit 5bfb1ba
Show file tree
Hide file tree
Showing 7 changed files with 199 additions and 59 deletions.
233 changes: 184 additions & 49 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,90 +1,225 @@
root=true
# EditorConfig - http://EditorConfig.org. This file comes from Roslyn - https://github.com/dotnet/roslyn/blob/master/.editorconfig, edited

# top-most EditorConfig file
root = true

# Don't use tabs for indentation.
[*.cs]
# RCS1123: Add parentheses when necessary
dotnet_diagnostic.rcs1123.severity=none
# RCS1036: Remove redundant empty line
dotnet_diagnostic.rcs1036.severity=none
# RCS1063: Avoid usage of do statement to create an infinite loop
dotnet_diagnostic.rcs1063.severity=none
# RCS1197: Optimize StringBuilder.Append/AppendLine call
dotnet_diagnostic.rcs1197.severity=none
# IDE0066: Use 'switch' expression
dotnet_diagnostic.ide0066.severity=none
# IDE0063: Use simple 'using' statement
dotnet_diagnostic.ide0063.severity=none
# RCS1079: Throwing of new NotImplementedException.
dotnet_diagnostic.rcs1079.severity=none
# CA2254: Use the LoggerMessage delegates -- bad analyzer rule, see https://github.com/dotnet/roslyn-analyzers/issues/5626
dotnet_diagnostic.ca2254.severity=none
# CA1068: CancellationToken parameters must come last - broken analyzer, documentation says "The compiler requires that all optional parameters are defined after all the non-optional parameters."
dotnet_diagnostic.CA1068.severity = none
# Use tabs for indentation.
[*]
indent_style = tab
trim_trailing_whitespace = true
end_of_line = crlf
indent_style=tab
trim_trailing_whitespace=true
indent_size=tab
tab_width=4

# Microsoft .NET properties
csharp_new_line_before_members_in_object_initializers=false
csharp_preferred_modifier_order=public, private, protected, internal, new, static, abstract, virtual, sealed, readonly, override, extern, unsafe, volatile, async:suggestion
csharp_style_expression_bodied_accessors=true:suggestion
csharp_style_expression_bodied_constructors=false:suggestion
csharp_style_expression_bodied_methods=false:suggestion
csharp_style_expression_bodied_properties=true:suggestion
csharp_style_var_elsewhere=true:suggestion
csharp_style_var_for_built_in_types=true:suggestion
csharp_style_var_when_type_is_apparent=true:suggestion
dotnet_style_parentheses_in_arithmetic_binary_operators=never_if_unnecessary:none
dotnet_style_parentheses_in_other_binary_operators=never_if_unnecessary:none
dotnet_style_parentheses_in_relational_binary_operators=never_if_unnecessary:none
dotnet_style_predefined_type_for_locals_parameters_members=true:suggestion
dotnet_style_predefined_type_for_member_access=true:suggestion
dotnet_style_qualification_for_event=false:suggestion
dotnet_style_qualification_for_field=false:suggestion
dotnet_style_qualification_for_method=false:suggestion
dotnet_style_qualification_for_property=false:suggestion
dotnet_style_require_accessibility_modifiers=for_non_interface_members:suggestion

# ReSharper properties
resharper_blank_lines_after_control_transfer_statements=1
resharper_blank_lines_after_multiline_statements=1
resharper_blank_lines_around_single_line_local_method=1
resharper_blank_lines_around_single_line_property=1
resharper_braces_for_for=required
resharper_braces_for_foreach=required
resharper_braces_for_ifelse=required
resharper_braces_for_while=required
resharper_csharp_blank_lines_around_invocable=2
resharper_csharp_blank_lines_around_single_line_invocable=2
resharper_csharp_max_line_length=160
resharper_csharp_wrap_for_stmt_header_style=wrap_if_long
resharper_indent_nested_fixed_stmt=true
resharper_indent_nested_foreach_stmt=true
resharper_indent_nested_for_stmt=true
resharper_indent_nested_lock_stmt=true
resharper_indent_nested_usings_stmt=true
resharper_indent_nested_while_stmt=true
resharper_keep_existing_attribute_arrangement=true
resharper_max_initializer_elements_on_line=1
resharper_method_or_operator_body=expression_body
resharper_place_attribute_on_same_line=false
resharper_place_simple_embedded_statement_on_same_line=false
resharper_wrap_object_and_collection_initializer_style=chop_always

# ReSharper inspection severities
resharper_arrange_method_or_operator_body_highlighting=hint
resharper_arrange_object_creation_when_type_not_evident_highlighting=suggestion
resharper_arrange_redundant_parentheses_highlighting=hint
resharper_arrange_this_qualifier_highlighting=hint
resharper_arrange_type_member_modifiers_highlighting=hint
resharper_arrange_type_modifiers_highlighting=hint
resharper_assignment_is_fully_discarded_highlighting=hint
resharper_built_in_type_reference_style_for_member_access_highlighting=hint
resharper_built_in_type_reference_style_highlighting=hint
resharper_comment_typo_highlighting=none
resharper_convert_to_null_coalescing_compound_assignment_highlighting=hint
resharper_convert_to_using_declaration_highlighting=none
resharper_css_browser_compatibility_highlighting=hint
resharper_enforce_do_while_statement_braces_highlighting=warning
resharper_enforce_fixed_statement_braces_highlighting=warning
resharper_enforce_foreach_statement_braces_highlighting=warning
resharper_enforce_for_statement_braces_highlighting=warning
resharper_enforce_lock_statement_braces_highlighting=warning
resharper_enforce_while_statement_braces_highlighting=warning
resharper_inheritdoc_invalid_usage_highlighting=none
resharper_localizable_element_highlighting=none
resharper_parameter_type_can_be_enumerable_local_highlighting=none
resharper_redundant_base_qualifier_highlighting=warning
resharper_suggest_base_type_for_parameter_highlighting=none
resharper_suggest_var_or_type_built_in_types_highlighting=hint
resharper_suggest_var_or_type_elsewhere_highlighting=hint
resharper_suggest_var_or_type_simple_types_highlighting=hint

# Standard properties

# Code files
[*.{cs,csx,vb,vbx,ps1}]
indent_size = 4
insert_final_newline = true
charset = utf-8-bom


indent_size=4
insert_final_newline=true
charset=utf-8-bom

# Xml project files
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,projitems,shproj,xml}]
indent_size = 2

indent_size=2
max_line_length=off
indent_style=tab
charset=utf-8
trim_trailing_whitespace=true
indent_size=2

# Xml config files
[*.{props,targets,ruleset,config,nuspec,resx,vsixmanifest,vsct,cscfg,csdef}]
indent_size = 2
indent_size=2

# JSON files
[*.json]
indent_size = 2
indent_size=2

# Dotnet code style settings:
[*.{cs,vb}]
# Sort using and Import directives with System.* appearing first
dotnet_sort_system_directives_first = true
dotnet_sort_system_directives_first=true
# Avoid "this." and "Me." if not necessary
dotnet_style_qualification_for_field = false:suggestion
dotnet_style_qualification_for_property = false:suggestion
dotnet_style_qualification_for_method = false:suggestion
dotnet_style_qualification_for_event = false:suggestion
dotnet_style_qualification_for_field=false:suggestion
dotnet_style_qualification_for_property=false:suggestion
dotnet_style_qualification_for_method=false:suggestion
dotnet_style_qualification_for_event=false:suggestion

# Use language keywords instead of framework type names for type references
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion
dotnet_style_predefined_type_for_member_access = true:suggestion
dotnet_style_predefined_type_for_locals_parameters_members=true:suggestion
dotnet_style_predefined_type_for_member_access=true:suggestion

# Suggest more modern language features when available
dotnet_style_object_initializer = true:suggestion
dotnet_style_collection_initializer = true:suggestion
dotnet_style_coalesce_expression = true:suggestion
dotnet_style_null_propagation = true:suggestion
dotnet_style_explicit_tuple_names = true:suggestion
dotnet_style_object_initializer=true:suggestion
dotnet_style_collection_initializer=true:suggestion
dotnet_style_coalesce_expression=true:suggestion
dotnet_style_null_propagation=true:suggestion
dotnet_style_explicit_tuple_names=true:suggestion

# CSharp code style settings:
[*.cs]
csharp_indent_case_contents = true
csharp_indent_switch_labels = true
csharp_space_after_cast = false
csharp_indent_case_contents=true
csharp_indent_switch_labels=true
csharp_space_after_cast=false


# Prefer "var" everywhere
csharp_style_var_for_built_in_types = true:suggestion
csharp_style_var_when_type_is_apparent = true:suggestion
csharp_style_var_elsewhere = true:suggestion
csharp_style_var_for_built_in_types=true:suggestion
csharp_style_var_when_type_is_apparent=true:suggestion
csharp_style_var_elsewhere=true:suggestion


# Prefer method-like constructs to have a block body
csharp_style_expression_bodied_methods = false:suggestion
csharp_style_expression_bodied_constructors = false:suggestion
csharp_style_expression_bodied_operators = false:suggestion
csharp_style_expression_bodied_methods=false:suggestion
csharp_style_expression_bodied_constructors=false:suggestion
csharp_style_expression_bodied_operators=false:suggestion

# Prefer property-like constructs to have an expression-body
csharp_style_expression_bodied_properties = true:suggestion
csharp_style_expression_bodied_indexers = true:suggestion
csharp_style_expression_bodied_accessors = true:suggestion
csharp_style_expression_bodied_properties=true:suggestion
csharp_style_expression_bodied_indexers=true:suggestion
csharp_style_expression_bodied_accessors=true:suggestion

# Suggest more modern language features when available
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion
csharp_style_inlined_variable_declaration = true:suggestion
csharp_style_throw_expression = true:suggestion
csharp_style_conditional_delegate_call = true:suggestion
csharp_style_pattern_matching_over_is_with_cast_check=true:suggestion
csharp_style_pattern_matching_over_as_with_null_check=true:suggestion
csharp_style_inlined_variable_declaration=true:suggestion
csharp_style_throw_expression=true:suggestion
csharp_style_conditional_delegate_call=true:suggestion

# Newline settings
csharp_new_line_before_open_brace = all
csharp_new_line_before_else = true
csharp_new_line_before_catch = true
csharp_new_line_before_finally = true
csharp_new_line_before_members_in_object_initializers = true
csharp_new_line_before_members_in_anonymous_types = true
csharp_new_line_before_open_brace=all
csharp_new_line_before_else=true
csharp_new_line_before_catch=true
csharp_new_line_before_finally=true
csharp_new_line_before_members_in_object_initializers=true
csharp_new_line_before_members_in_anonymous_types=true

[*.{cs,cshtml,htm,html,jsx,proto,razor}]
indent_style=tab
indent_size=tab
tab_width=4

[*.{asax,ascx,aspx,css,js,master,skin,ts,tsx,vb,xaml,xamlx,xoml}]
indent_style=space
indent_size=4
tab_width=4

[*.{appxmanifest,build,config,csproj,dbml,discomap,dtd,json,jsproj,lsproj,njsproj,nuspec,proj,props,resjson,resw,resx,StyleCop,targets,tasks,vbproj,xml,xsd}]
indent_style=tab
indent_size=tab
tab_width=2

[*.{appxmanifest,asax,ascx,aspx,build,config,cs,cshtml,csproj,css,dbml,discomap,dtd,htm,html,js,json,jsproj,jsx,lsproj,master,njsproj,nuspec,proj,props,proto,razor,resjson,resw,resx,skin,StyleCop,targets,tasks,ts,tsx,vb,vbproj,xaml,xamlx,xml,xoml,xsd}]
indent_style=tab
indent_size=tab
tab_width=4

[*.{appxmanifest,axml,build,config,csproj,dbml,discomap,dtd,json,jsproj,lsproj,njsproj,nuspec,proj,props,resjson,resw,resx,StyleCop,targets,tasks,vbproj,xml,xsd}]
indent_style=tab
indent_size=tab
tab_width=2

[*.{cs,proto}]
indent_style=tab
indent_size=tab
tab_width=4

[*.{asax,ascx,aspx,axaml,cshtml,css,htm,html,js,jsx,master,paml,razor,skin,ts,tsx,vb,xaml,xamlx,xoml}]
indent_style=space
indent_size=4
tab_width=4
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,15 @@ txt2html is a program to convert plain text files to the hypertext markup langua
* Also available as a NuGet package - https://www.nuget.org/packages/Sander.txt2html

### Installing
To install, just extract all files from the archive to any folder and double-click on txt2html.exe to start using the program.
To install, just extract all files from the archive to any folder and double-click on txt2htmlUI.exe to start using the program. The commandline version of txt2html is txt2html.exe

### Uninstalling
Delete all files

### Command-line options
```
Optional arguments are in parentheses []:
txthtml.console.exe "<input file>" [-o:"<output file>"] [-t:"<title>"] [-css:"<css file>"] [-bold] [-italic] [-urls] [-entities] [-fixparagraphs:<minimum line length>]
txthtml.exe "<input file>" [-o:"<output file>"] [-t:"<title>"] [-css:"<css file>"] [-bold] [-italic] [-urls] [-entities] [-fixparagraphs:<minimum line length>]
Input file -- just name or full path to the input text file
-o:<output file> -- Optional, if omitted input file with the .html extension will be used. Can have a full path. WARNING: output file will be overwritten if it exists!
Expand Down Expand Up @@ -78,3 +78,8 @@ txt2html is licensed under [Mozilla Public License](https://github.com/SanderSad
* Fixed issue with UTF-8 vs default encoding ([Issue #3](https://github.com/SanderSade/txt2html/issues/3)) - thanks to [tigros](https://github.com/tigros) for reporting it!
* Updated Newtonsoft.Json (used by tests).
* Code cleanup.
* 2.0.3
* Renamed txt2html.exe (UI) to txt2htmlUI.exe to avoid confusion with the commandline txt2html.exe ([Issue #6](https://github.com/SanderSade/txt2html/issues/6) - thanks to [Owned67](https://github.com/Owned67) for reporting it!)
* Re-include the commandline txt2html to release, as it was accidentaly omitted in 2.0.2.
* Very minor code cleanup, new .editorConfig.
* NOTE: this will most likely be the last release on .NET Framework, and the future releases will target .NET 6 or higher.
2 changes: 1 addition & 1 deletion Tests/text2html.test/ConsoleAppTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ public void ArgumentParser_ParseParagraphFix()
{
var settings = ArgumentParser.Parse("t8.shakespeare.txt", "fixparagraphs:22");
Write(settings);
Assert.IsTrue(22 == settings.ConversionSettings.MinimumLineLength);
Assert.IsTrue(settings.ConversionSettings.MinimumLineLength == 22);
}


Expand Down
4 changes: 2 additions & 2 deletions txt2html.UI/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.0.2.0")]
[assembly: AssemblyFileVersion("2.0.2.0")]
[assembly: AssemblyVersion("2.0.3.0")]
[assembly: AssemblyFileVersion("2.0.3.0")]
2 changes: 1 addition & 1 deletion txt2html.UI/txt2html.UI.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Sander.txt2html.UI</RootNamespace>
<AssemblyName>txt2html</AssemblyName>
<AssemblyName>txt2htmlUI</AssemblyName>
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
Expand Down
4 changes: 2 additions & 2 deletions txt2html/ArgumentParser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ internal static ConversionArguments Parse(params string[] args)

private static string GetSplitValue(List<string> arguments, string key)
{
var argument = arguments.FirstOrDefault(x => x.StartsWith(key, StringComparison.OrdinalIgnoreCase));
var argument = arguments.Find(x => x.StartsWith(key, StringComparison.OrdinalIgnoreCase));
if (argument == null)
{
return null;
Expand All @@ -86,7 +86,7 @@ private static string GetSplitValue(List<string> arguments, string key)

private static bool GetSimpleKeyExists(List<string> arguments, string key)
{
return arguments.Any(x => string.Compare(x, key, StringComparison.OrdinalIgnoreCase) == 0);
return arguments.Any(x => string.Equals(x, key, StringComparison.OrdinalIgnoreCase));
}


Expand Down
4 changes: 2 additions & 2 deletions txt2html/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,6 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.0.2.0")]
[assembly: AssemblyFileVersion("2.0.2.0")]
[assembly: AssemblyVersion("2.0.3.0")]
[assembly: AssemblyFileVersion("2.0.3.0")]
[assembly: InternalsVisibleTo("text2html.test")]

0 comments on commit 5bfb1ba

Please sign in to comment.