The theme vowels a, e, and i in infinitives are long. But, in other forms of those verbs, they can be short. But when, exactly? What are the rules for this? And how about the suppletive vowels used after a consonant stem: are they always short?
Whether or not this is how the forms really developed, this is how I organize it in my head. And it has proven quite efficient, so I consider it a good description of what classical Latin conjugation is even if it fails to describe where it comes from.
First, the theme vowels in conjugations 1, 2, and 4 are long: ā, ē, ī. The vowel i in conjugation 3 is short (whether part of the stem or not). The question then is, what can shorten the vowel? Nothing can cause the third conjugation one to become long.
These cause the preceding long vowel to become short:
- word-final t
- the clusters nt and nd
- another vowel (eg. audĕō, audĭēns)
In addition, the theme vowel is completely lost in conjugation 1 before ō.
These rules also apply to vowels added after the stem, for example in present participles and gerundives. Just imagine that the ē added is long at first and becomes short before nt and nd. The suppletive vowels in personal forms are always short — they always come before nt unless I forget something. (Perhaps sumus could be a counterexample, but one can't really expect esse to follow standard morphology in all respects.)
This seems to work perfectly for regular verbs. I don't promise that it works for irregular ones, but the same guidelines help get at least most of the vowel lengths right. There are some edge cases one has to learn separately, but surprisingly few.