js tab in textarea

JavaScript
document.querySelector('#textarea').addEventListener('keydown', e => {
	if ( e.key === 'Tab' && !e.shiftKey ) {
		// execCommand operations are "Cmd|Ctrl+Z"-able
      	// note: execCommand is deprecated and may not work in the future
		document.execCommand('insertText', false, "\t");
		e.preventDefault();
		return false;
	}
});
Source

Also in JavaScript: