Comments (3)
Regarding options -
CSharpier provides a few basic options that affect formatting and has no plans to add more. It follows the Option Philosophy of prettier.
I had intended to keep blank lines between some groups of usings but getting the logic working correctly when usings were moving was difficult and didn't seem worth the effort.
from csharpier.
Regarding options -
CSharpier provides a few basic options that affect formatting and has no plans to add more. It follows the Option Philosophy of prettier.
I had intended to keep blank lines between some groups of usings but getting the logic working correctly when usings were moving was difficult and didn't seem worth the effort.
Prettier has a plugin prettier-plugin-sort-imports which does what I want - it sorts imports according to the importOrder config option. Maybe, it's possible to develop something similar for CSharpier? I am ready to put an effort into this thing.
from csharpier.
I'm not opposed to a plugin system, but I don't know of a good way to deal with it currently in a dotnet tool. There is this open issue proposing that microsoft add plugin support to dotnet tools. I have csproj/xml formatting mostly done in a branch and was hoping I could make that system extensible. So that other formatters could be added to csharpier.
It looks like the prettier plugin works as a preprocessor, which I assume does the sorting on the syntax tree first and then prettier does the formatting. The CSharpier using sorting happens at the same time as the formatting. That would need to go away for a preprocessor plugin to be able to sort the usings.
Another potential option is a postprocessor plugin, which modifies the syntax tree after csharpier is done with it.
from csharpier.
Related Issues (20)
- Inconsistent formatting HOT 2
- How can I make CSharpier work with Visual Studio? HOT 26
- Comment between attributes violates SA1515
- Potential new ternary formatting HOT 2
- Formatting for indexer parameters should mostly be the same as for method parameters.
- File with only file scoped namespace + comments gets extra lines HOT 1
- Incorect formatting of ternary expresion with a comment after an interpolated string
- VS 2022 "Ensure there is a csharpier process for ..."
- Switch expression single line broken when preceded by comment
- VSCode not working (probably a dup of #1260) HOT 2
- [Rider] formatting on save not working since 0.28.0
- CSharpier binary not found when dotnet-tools.json is missing, despite CSharpier installed globally
- Formatting of empty collection initializer for huge type
- Configurable indentation/levels for fluent methods
- Rider extension not recognise global csharpier again HOT 2
- Excess empty line in combination of switch expression, value tuple, and pattern matching HOT 2
- Support custom extensions in .editorconfig
- Support custom file extensions with IDE extensions HOT 2
- Bad wrapping and indentation on long switch expression branches matching on tuples
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from csharpier.