Can "treat" be used as a generic term for junk food, drinks or sweets?
I'm looking for the shortest word that can capture the idea of guilty pleasure, limited to the products we consume (it doesn't have to be extended to activities).
For example, you would say "no xxx for me today" when you resist an impulse or desire for products like junk food, drinks, sweets, or maybe even cigarettes.
Ideally, this would include any activity involving the consumption of a product that gives you pleasure but that you consider bad for some personal reason (health, environment, finances...).
The best I could come up with is "treat".
These things may be too ordinary to be considered treats, but I think that's only because they've become very affordable in recent years. You still "treat yourself" a little bit when you give yourself one, and part of the guilt comes from the fact that you give yourself one without deserving it. Or is it just my perception?
Maybe vice
A vice is a habit that is regarded as a weakness in someone's character, but not usually as a serious fault.
Or while longer, indulgence can be similar in meaning as well
a pleasure, habit, etc, indulged in; extravagance fur coats are an indulgence
I would use the slightly pompous gourmandise (Collins):
a love of and taste for good food
which would add a spicy little self-irony to the statement
No gourmandise for me today!
or
No gourmet food for me today!
Another word referring to the activity involving the consumption of a product that gives you pleasure
would be:
Fine-dining
I agree that these words rather emphasise the rarity and exquisite quality of the food, but guilty pleasure goes with it and the word you gave, treat, directed me this way.
PS: You do know that there is such a phrase as guilty pleasure foods? Chewing gum is on top of the list of the most unhealthy ones.
Addition: Just thought you might be able to use delicacy, or even better the very simple and unpretentious goody that says it all:
No goodies for me today!