Yo es que para hacer el mío utilicé la librería elEditor.js de nuestro amigo caricatos de este foro.
http://www.caricatos.net/editor/index.php
Esta librería detecta un rango de selección en el textarea para aplicarle luego lo que tú quieras. En principio con esto y conocimientos básicos de JS ya tendrías uno hecho.
Sino, basta que busques un poco en google, que tus resultados serán iguales a los míos y no voy a hacerlo, mientras google sea gratis todo el mundo puede hacerlo por sí solo.