What should you eat before training?

Short answer
Eat a normal meal with carbohydrates and protein 2–4 hours before training. For sessions longer than 60 minutes, guidelines give 1–4 g of carbohydrate per kg in the 1–4 hours beforehand. For a typical lifting session, a normal meal is enough.
Figures
- 1–4 g/kg · carbs 1–4 h before long sessions
- 3–5 g/kg · per day at light training load
- 5–7 g/kg · per day at about 1 h of training daily
Why carbohydrates
Carbohydrates fill glycogen stores in muscle and liver. Lifting uses glycogen but does not empty the stores in a normal session. That makes the daily total more important than the meal right before.
The daily amount
Guidelines scale by training load: 3–5 g/kg for light load, 5–7 g/kg for about an hour a day. They give no separate value for lifting; most lifters sit in the lower band.
When it matters more
The pre-training meal matters more for long sessions, two sessions a day or fasted morning training. If you train well fasted, that is fine for a short lifting session.
Sources
Summaries by SetCtl, not medical advice.