I'm not a vegetarian, and with the sad state of vegetarian cooking in a lot of restaurants, I'll probably not be for a while. Here's some tips for doing it right.
Basic Assumption For This Essay
A single piece of meat inherently tastes better than a single vegetable.
Use A Mix Of Items
Vegetables can't win a one-on-one battle against meat. But they can team up, unlike meat.
Meat doesn't really enhance other meat. If you don't believe me, eat turducken and note how all the flavors blend together into this bland mass after a while.
Vegetables, however, actually benefit from being mixed together. Vegetables even taste good with meat, like steak and onions.
Some combinations I like are tomatoes with cilantro, mushrooms with spinach, and kale with garlic.
(I realize tomatoes and mushrooms are not vegetables, but they are vegetarian.)
Variety is the spice of life, but so are actual spices. They add a lot of variety to food, and vegetarian cooking needs that variety to find its own voice, to borrow a metaphor from writing.
Avoid Watery Veggies
Lettuce is an abomination. It has no nutrition or flavor, the two main points of eating. If you want crunch, use something that has flavor of its own. Celery also falls in this category.
Avoid Mushy Vegetables
Making canned spinach could be considered a crime in future generations.
Don't Imitate Meat
That's degrading and misses the point.