Giter VIP home page Giter VIP logo

Comments (6)

matejak avatar matejak commented on June 6, 2024 2

Hello, yes, it is deffinitelly planned. Stay tuned for updates!

from argbash.

matejak avatar matejak commented on June 6, 2024 1

Good point, (any) code should read like a prose, so letting ARG_OPTIONAL_SWITCH_OFF(video, v) to create the --no-video option while saving the result to _arg_video should do the trick. There could be an option to set the prefix (default would be no-, people may be interested in disable- for --disable-video etc.).

from argbash.

edannenberg avatar edannenberg commented on June 6, 2024

After re-reading, so the only point of ARG_OPTIONAL_BOOL generating the negating option is overriding a possible previous occurence in the current args?

I can see the code being a bit cleaner using the proposed ARG_OPTIONAL_SWITCH_XXX behavior, but maybe not that intuitive to use. I would probably expect ARG_OPTIONAL_SWITCH_OFF(no-video, v) resulting in a _arg_no_video var.

from argbash.

0x5c avatar 0x5c commented on June 6, 2024

Hello!
Is this still in the plans? The milestone is 2.7.0, but 2.8.0 got released a month ago.
It's what would make argbash perfect for me.

from argbash.

cconnert avatar cconnert commented on June 6, 2024

@matejak: Hi, will this issue be resolved? Seems like you got pretty far on your draft. Thanks

from argbash.

ShamrockLee avatar ShamrockLee commented on June 6, 2024

It would also be very helpful to have a way to integrate with arithmetic condition (( expression )) in modern Bash, which returns successfully (status 0) when expression evaluates to nonzero, or else returns failure (status 1).

Something like ARG_OPTIONAL_BOOL_NUM, ARG_SWITCH_YES_NUM, ARG_SWITCH_NO_NUM would be great.

Here's the behavior of Bash arithmetic conditional construct:

$ if (( 1 )); then echo yes; else echo no; fi
yes
$ if (( 0 )); then echo yes; else echo no; fi
no
$ if (( "" )); then echo yes; else echo no; fi
no
$ if (( )); then echo yes; else echo no; fi
no
$ unset foo; if (( foo )); then echo yes; else echo no; fi
no
$ foo=2; if (( foo )); then echo yes; else echo no; fi
yes
$ foo=2; if (( $foo )); then echo yes; else echo no; fi
yes
$ foo=2; if (( "$foo" )); then echo yes; else echo no; fi
yes

from argbash.

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.