Большинство ответов на ваши вопросы здесь:
Range, TextRange и Selection.
По событию mouseup документа, получаете объект-выделение (selection), проверяет схлопнуто (collapsed) ли оно, если нет, то создаете ссылку для помещения выделенного текст в textarea.
Для получения координат события mouseup прочитайте
Свойства объекта событие: Координаты мыши