Without wait commands it's not possible to make a script that lets you just to c-tap jump with a single button and makes it completely fail save, but I made a script that makes it A LOT easier:
bind "mouse2" "+ct"
alias "+ct" "+duck; bind mouse1 +ct2"
alias "-ct" "-duck; bind mouse1 +attack; -jump; -attack"
alias "+ct2" "-duck; +attack; +jump"
alias "-ct2" "+duck; -attack; -jump; bind mouse1 +ct3"
alias "+ct3" "+duck; +jump; +attack"
alias "-ct3" "-jump; -attack"
It's basically the same as above, I just have a 3rd alias to make it so that you'll crouch right after the jump and you can keep pressing your c-tap key (mouse2 in this case) to stay crouched in the air and chain further jumps (pogos, walljumps) after the c-tap real easily by just pressing mouse1 again.
Like I said, this script makes c-taps a lot easier. The timing with regular c-taps needs to be close to perfect and is really hard to master to a point where even with practice you'll mess it up sometimes.
But with this script the timing is super forgiving. Even if you mess up the timing a little you'll still get a higher than regular jump instead of a super weak jump like when you mess up a normal c-tap.
Took me like 2 or 3 tries after making this script to do a perfect c-tap and never messed it up since and using c-tap jumps all the time.
Edit: mouse2 still functions as a regular crouch button outside of c-taps btw, so you don't need a extra key for this.
Also, I'm not sure if I agree with all this "you'll never learn to rocket jump properly if you use scripts" talk.
I use scripts for regular rocket jumps as well as c-taps and I'm pretty sure there's not a single kind of jump that can't be done with those scripts and binds I'm using. Rocket jumping is mostly about where you're aiming, the timing of when you shoot a rocket and what you do with your WASD keys. Those are the things that need practice. Scripts don't do any of those things for you. They only change if you have to press 1, 2 or 3 keys at the same time.
It's not like it's hard to just press 3 keys at the same time and you need to practice and keep practicing it to be good at it. I can rocket jump with 3 keys just fine, it's just more convenient to just use 1 instead...
And yes, I never learned to do regular c-taps, because I'm using a script for it.
But the thing is: I don't have to. I can c-tap just as good as the next guy (probably more consistent than most) with my script and there's no downside to using it. A c-tap jump is a c-tap jump.