anchor.diff:  
           Debug.WriteLine(sprintf "Result: Crack symbol text at %d:%d (offset %d - %d)\nIdentifier: %A (Current: %s) \nLine string: %s"  
                                 line col currentLine.Offset currentLine.EndOffset identIsland currentIdent lineStr)
  -
  -        let token = Parser.tagOfToken(Parser.token.IDENT("")) 
  +        
           match identIsland with
           | [] | [ "" ] -> None
  -        | _ -> Some (line,col,lineStr,identIsland,currentIdent,token)
  +        //if the ident is a symbol, spool along to the end of the current definition
  +        | _ -> let col = if Parsing.stringIsValidSymbol currentIdent then col + nextIdent.Length else col
  +               Some (line,col,lineStr,identIsland,currentIdent,token)
           
       /// Crack the info prior to a '(' or ',' once the method tip trigger '(' shows
       let crackSymbolTextAtGetMethodsTrigger (offset:int, doc:Mono.TextEditor.TextDocument) = 
  
positive.code: /// of the current cursor location etc.)
  module Parsing = 
    open FSharp.Parser
    
    /// Parses F# short-identifier (i.e. not including '.'); also ignores active patterns
    let parseIdent =  
      many (sat PrettyNaming.IsIdentifierPartCharacter) |> map String.ofSeq
  
    let fsharpIdentCharacter = sat PrettyNaming.IsIdentifierPartCharacter
    /// Parse F# short-identifier and reverse the resulting string
  
negative.code: 
      let preCrack (offset, doc:Mono.TextEditor.TextDocument) = 
          let loc  = doc.OffsetToLocation(offset)
          let line, col = max (loc.Line - 1) 0, loc.Column-1
          let currentLine = doc.Lines |> Seq.nth line
          let lineStr = doc.Text.Substring(currentLine.Offset, currentLine.EndOffset - currentLine.Offset)
          (loc, line, col, currentLine, lineStr)
  