anchor.diff:  
   /// Make a range from (startLine, startCol) to (endLine, endCol) to select some text
   let makeRange startLine startCol endLine endCol =
  -    mkRange "/tmp.fs" (mkPos startLine startCol) (mkPos endLine endCol)
  +    mkRange "/tmp.fsx" (mkPos startLine startCol) (mkPos endLine endCol)
   
   /// Get first non-whitespace line
   let rec internal getStartLine (lines : _ []) i =
  
positive.code:         elif r.StartLine = r.EndLine then (sel, NoPatch)
          else (new String(' ', startCol) + sel, NoPatch)
  
      let post = 
          if finish + 1 < s.Length && s.[finish + 1] = '\n' then "\r" + s.[finish + 1..] 
          elif finish + 1 < s.Length then s.[finish + 1..]
          else ""
  
      Debug.WriteLine("pre:\n{0}", pre)
  
negative.code:         if startWithMember sel then
             (sprintf "type T = \n%s" (new String(' ', startCol) + sel), TypeMember)
          elif sel.StartsWith("and") then
              let p = getPatch startCol lines.[..r.StartLine-1]
              let pattern = Regex("and")
              let replacement = 
                  match p with
  