Comments (3)
Additionally, it would be nice if splitting the arguments also took the max_columns
into account.
from commandbox-cfformat.
min_length
is a confusing setting. Basically I added it because by default if you have more than 3 elements in a struct/array/function parameters/function call arguments they will get printed on multiple lines. Every now and again you might get in a situation where you have something like:
a = [1,2,3,4,5,6,7,8];
I wanted a way to keep that on one line as splitting it over 8 lines seemed a bit ridiculous to me. So I added the min_length
setting to say that if you can print all the elements inline in 40 columns or less (inner size of an inline print), then keep them together, no matter how many there are. So this setting would not apply to your example above, as
struct attributes = {}, boolean ignoreNonExistentAttributes = false, sssssssssss = "s"
is well over 40 columns, and is only three elements anyways. The only thing that ought to make it split out, is when the max_columns
setting is exceeded. In this case, it would not be an "inner" size, but rather the measure from the start of the line to the end of the function parameters. Now this is ideally the case; as we have touched on in Slack, I think some of the column measurements are probably off, or not respected in all cases. It is something I need to dig into.
That said, the max_columns
setting is functioning in your example above, as you say:
add one more character to the argument list up there and it will split.
that would be due to the max_columns setting - possibly inaccurately applied 😄 , though it looks to me like the last character of the function parameters (a space) is right at 120 columns, so I think it is correct there.
from commandbox-cfformat.
That makes a lot more sense. Thanks for explaining.
Also, I feel really foolish. I had my editor ruler at 80 and just expected cfformat to match. Once I configured it correctly it works as expected. Thanks!
from commandbox-cfformat.
Related Issues (20)
- Subsequent lines of a multiline statement should be indented. HOT 2
- cfformat check doesn't handle Unicode with BOM files HOT 1
- Forgebox installation is broken HOT 1
- DocBox commenting formatting HOT 6
- struct element alignment HOT 5
- Tag type comments converted to script comments erroneously HOT 2
- annotation with a `:` is adding a space HOT 2
- Latest version removing indendations on Comments HOT 1
- Latest version removing comments HOT 1
- CommandBox no longer reloads on module installation HOT 8
- preserve case in doc-block? HOT 2
- Indent content between cfscript tags HOT 3
- Ignoring blocks/tags via settings vs comment HOT 2
- Property alignment incorrect when the number of attributes differs
- annotation with a - is adding a space
- tag-check and single tags that are not self-closing HOT 3
- abstract component modifier injects spaces
- Lines are improperly outdented
- Method Multiline formatting/highlighting when inital element is not a method HOT 1
- CSS styles
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 commandbox-cfformat.