I think the trick to staying disciplined is to cut yourself allowances for not being disciplined all the time. For instance, I rarely overeat now, but once in a while I will take down half a big bag of peanut M&M's, and that's totally alright. I kind of encourage it in a sense. Sometimes, I don't study my Indonesian before bed, but that's cool, I'll just resume the next day, and not try to do a double lesson or anything. If I don't feel like reading graphics papers at the moment, I'll go for a walk in the sun and hit the papers up later.
I'm like a leaky dam, and I don't have enough fingers to plug all the holes. So I plug what I can, and then plug new holes even while the old ones spring a leak.