@script("Sort Lines (No Duplicates)", "Text") def SortLinesNoDuplicates(): """ Sort Lines, Remove Duplicates (Modified by jumpfroggy from wischeese's "SortLines" script) """ editor = scintilla.Scintilla(pn.CurrentDoc()) editor.BeginUndoAction() lsSelection = editor.GetTextRange(editor.SelectionStart, editor.SelectionEnd) laLines = lsSelection.splitlines(0) laLines.sort() # Filter out duplicate lines laLines2 = [] for line in laLines: if line not in laLines2: laLines2.append(line) lsReplace = string.join(laLines2, '\r\n' ) editor.ReplaceSel(lsReplace) editor.EndUndoAction()