Question: This feels like it should be simple but it's been driving me crazy. I've got a function `indent-or-expand` that I'd like to remap to `tab` but I simply can't get it to work (Emacs v24, OS X). The only help I've been able to get from Emacs itself is:

> 
> error "To bind the key TAB, use \"\\t\", not [TAB]"
> 
> 
> 

Doing `(global-set-key [\"\\t\"] 'indent-or-expand)` binds the function to `<"\t">` apparently (whatever that is), and every combination I've tried of `\`, `"`, `[``]`, and `(``)` has failed.

I DID manage to bind the function to `t`, though...

Answer: 
In addition to what others have told you:

1. The Emacs error message you cite told you to use "\t", and if you use that you should be OK:

(global-set-key "\t" 'indent-or-expand)
2. Be aware also that `TAB` is one thing and `<tab>` might be another thing. IOW, it depends what code your physical keyboard `Tab` key actually sends to Emacs. `TAB` is the tab character, and it i the same as ACSCII control character `C-i`, that is, `Control` + `i`, which has decimal integer value 9. `<tab>` is (in Emacs) a pseudo function key. (Most likely `TAB` is what you want. Use `C-h k` to see what your physical `Tab` key does.)
Use the `kbd` function, i.e.:

```
(global-set-key (kbd "TAB") ...)

```