The big problem with keyboard shortcuts is finding combinations that are not taken by the OS or browser itself. But it would be easier if TAB completion were triggered by something other than TAB.
ctrl+space is actually a default shortcut in many IDEs for tab completion, as well as in codemirror:
so let's go with ctrl+space and be done with this issue. And implement TAB maybe later, or maybe never.
I vote for TAB working.
I agree that I want TAB to work, but I am not sure that is going to be easy to pull off as there are multiple meanings for TAB even without using it for completion. Browsers use it to TAB between elements in the page and code/text editor elemets use it for inserting a tab stop (4 spaces). That is already a lot for a single key.
If you eventually want to use codemirror for syntax highlighting of code cells, it might be best to implement ctrl+space for now. So +0 for ctrl+space.
Done in the htmlnotebook branch.
Cool! I will give it a shot soon, and I'll update Qsnake with the latest ipython + htmlnotebook branch.