Jump-throw binds were a community workaround, then officially supported
For years pros used a +jump;-attack;-attack2 bind to throw smoke lineups consistently. Valve officially added a jump-throw command (`+jumpthrow`) and made the input timing more forgiving in CS2.