   for selection in editor.getSelections()
     swrap(selection).saveProperties()
 
+swrap.clearProperties = (editor) ->
+  for selection in editor.getSelections()
+    swrap(selection).clearProperties()
+
 swrap.complementGoalColumn = (editor) ->
   for selection in editor.getSelections()
     swrap(selection).complementGoalColumn()

  for selection in editor.getSelections()
    swrap(selection).applyWise(value)

swrap.clearProperties = (editor) ->
  for selection in editor.getSelections()
    swrap(selection).clearProperties()

swrap.fixPropertiesForLinewise = (editor) ->
  for selection in editor.getSelections()
    swrap(selection).fixPropertiesForLinewise()

  saveProperties: ->
    properties = @captureProperties()
    unless @selection.isEmpty()
      # We selectRight-ed in visual-mode, this translation de-effect select-right-effect
      # So that we can activate-visual-mode without special translation after restoreing properties.
      endPoint = @getBufferRange().end.translate([0, -1])
      endPoint = @selection.editor.clipBufferPosition(endPoint)
      if @selection.isReversed()
        properties.tail = endPoint
