Lazlo does that very weird cry before he vomits too. We FREAKED the first time it happened - and we were new to cats then to begin with, because he's done it since he was a kitten, and he was our first rescue!
When he throws up clear liquid, we know (now) he has hairballs. What happens is if they get a bunch in their tummies they haven't passed, they eat, the kibble expands - but doesn't have enough room, so they throw up barely digested kibble, or if he didn't eat so much, just some foam. We get out the hairball meds. When his tummy is that full of hairballs, it usually takes a little over a week to get them all out.
Now we don't wait until they have hairballs - they're all old enough now that we just give them stuff preventatively every few days. It seems to have cut down on the problem.