If you are trying to move keys around, but only in emacs, then it is probably easier to use a translation keymap.
(define-key key-translation-map "[" "{")
(define-key key-translation-map "(" "[")
As far as the binding to skeleton-pair-insert-maybe
, I don't see this being setup to any key. You can use the code How can I find out in which keymap a key is bound?How can I find out in which keymap a key is bound? to find the keymap,and then use (define-key keymap "[" nil)
to unbind it from that keymap. When you want to unbind it depends on where it is being bound!