Git Product home page Git Product logo

Comments (3)

elpete avatar elpete commented on July 21, 2024

Additionally, it would be nice if splitting the arguments also took the max_columns into account.

from commandbox-cfformat.

jcberquist avatar jcberquist commented on July 21, 2024

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.

elpete avatar elpete commented on July 21, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.