While the thread on using Unicode to type Greek is helpful, I am always surprised that no one has suggested using the shortcut assignment function in the Insert >> Symbol >> More Symbols window (at least for those who are using Microsoft Word). I've been using this method to type in other foreign languages for years, and it seems much more efficient than typing in arbitrary hexadecimal codes (unless I've misunderstood the manual coding method).
Here's a sample arrangement to show roughly what I'm talking about. Essentially, you hold down one, two, or all three of the Ctrl/Alt/Shift buttons and type a Latin letter that either has the same sound as the desired Greek letter or resembles it visually. Only theta, phi, and chi stand out as slight oddballs. Phi uses its pronunciation in modern derivatives as the clue to its base key, while theta and chi use the 'c' and 't' in their respective Latin transcriptions. By and large, however, I believe that an intuitive link of some sort or other between the Greek letter and its base key on the keyboard makes the scheme easy to learn.
I had to improvise with some of my own shortcuts, since many of the more obvious combos were already assigned to accented characters used in writing other languages (mostly with the vowels), but for those of you who only deal with Greek, something like this might work nicely.
Of course, there's still iota-subscripts and aspiration to consider, but a system like the above should at least reduce the hindrances to typing fluency presented by polytonic Greek even if it can't eliminate them entirely. Also, while I'm not sure how acceptable it would be in formal academia, for my own purposes I just leave smooth breathing unmarked and put a single open quote in front of a word with rough breathing. For iota-subscript, I tend to just type the iota normally, highlight it, open the Format window, and select "Subscript." The result doesn't look exactly like the traditional representation, but the intent is clear enough. It's still a break in the flow of typing, but probably not quite as much so as inputting a hexadecimal code is.
Anyway, this is all just an idea, if nothing else. If someone somewhere has already proposed this or I've misunderstood the usual Unicode-input method, feel free to let me know.