でTab文字を入力可能にするBookmarklet作ったよ。

HTMLTextAreaElementのselectionStartメソッドとselectionEndメソッドでカーソル位置を取得して、前後のテキストで\tを挟んでvalueプロパティにセット。
selectionStartメソッドで取得したほうの位置+1をsetSelectionRangeメソッドにセットすればOK。preventDefaltでデフォルトの動作を無効にしておくのも忘れずに。

元のコード。

javascript:
void(window.addEventListener('keydown',function(e,a,v,i){
	if(/textarea/i.test((a=e.target).nodeName)&&e.keyCode==9){
		v=a.value;
		a.value=v.substr(0,i=a.selectionStart)+"\t"+v.substr(a.selectionEnd);
		a.setSelectionRange(i+1,i+1);
		e.preventDefault();
	}
},true))

1行にまとめたもの。

javascript:void(window.addEventListener('keydown',function(e,a,v,i){if(/textarea/i.test((a=e.target).nodeName)&&e.keyCode==9){v=a.value;a.value=v.substr(0,i=a.selectionStart)+"\t"+v.substr(a.selectionEnd);a.setSelectionRange(i+1,i+1);e.preventDefault();}},true))

動作確認: Google Chrome 3.0.195.33