Action
Smart Braces
If a selection is present, wrap the text in braces. If no selection, scan text for last braces and close it if last one was an open braces, or insert open braces if not.
Steps
-
script
// If a selection is present, wrap the text. // // If no selection, scan text for last open or close and // close it if last one was an open, or // insert open if not. const open = "{"; const close = "}"; const range = editor.getSelectedRange(); const priorText = editor.getTextInRange(0, range[0]); if (range[1] > 0) { //text selected, wrap it! editor.setSelectedText(open + editor.getSelectedText() + close); editor.setSelectedRange(range[0] + range[1] + open.length + close.length, 0); } else { // no selection, find last const lastOpen = priorText.lastIndexOf(open); const lastClose = priorText.lastIndexOf(close); if (lastOpen == -1 || lastClose > lastOpen) { // no close, use open editor.setSelectedText(open); editor.setSelectedRange(range[0]+open.length, 0); } else { // close last open editor.setSelectedText(close); editor.setSelectedRange(range[0]+close.length, 0); } }
Options
-
After Success Nothing Notification Error Log Level Error
Items available in the Drafts Directory are uploaded by community members. Use appropriate caution reviewing downloaded items before use.