I came across a post, which was basically gibberish like "hsuheuduehuhfuheufhufe". Originally I marked it as spam, but it was not accepted. Why? It should have been marked at rude and abusive. Perhaps a new feature could be to separate the 2, so that such a post, which is definitely abusive, but not rude? Thanks.
Rude and abusive are (to some extent) the same thing. You've already known that you should flag gibberish as rude or abusive. That's a good start. You should also know that gibberish adds no value to the sites. It actively harms the overall quality of user-generated content on Stack Exchange, thus abusive.
Flags are meant to report specifically bad posts or behavior on Stack Exchange, so use them accordingly. Flag real spam as spam, and flag offensive (with bad words) or garbage posts as rude or abusive.
On Stack Exchange, the term "spam" specifically means "unsolicited commercial advertising". Don't confuse it with that "spam" you see in social media.