equal
deleted
inserted
replaced
271 case Some(buffer) if offset > 0 => |
271 case Some(buffer) if offset > 0 => |
272 val pos = |
272 val pos = |
273 JEdit_Lib.buffer_lock(buffer) { |
273 JEdit_Lib.buffer_lock(buffer) { |
274 (Line.Position.zero /: |
274 (Line.Position.zero /: |
275 (Symbol.iterator(JEdit_Lib.buffer_text(buffer)). |
275 (Symbol.iterator(JEdit_Lib.buffer_text(buffer)). |
276 zipWithIndex.takeWhile(p => p._2 < offset - 1).map(_._1)))(_.advance_symbols(_)) |
276 zipWithIndex.takeWhile(p => p._2 < offset - 1).map(_._1)))(_.advance(_)) |
277 } |
277 } |
278 Some(hyperlink_file(focus, name, pos.line1, pos.column1)) |
278 Some(hyperlink_file(focus, name, pos.line1, pos.column1)) |
279 case _ => Some(hyperlink_file(focus, name, line)) |
279 case _ => Some(hyperlink_file(focus, name, line)) |
280 } |
280 } |
281 case None => None |
281 case None => None |
294 val file_name = command.node_name.node |
294 val file_name = command.node_name.node |
295 val sources_iterator = |
295 val sources_iterator = |
296 node.commands.iterator.takeWhile(_ != command).map(_.source) ++ |
296 node.commands.iterator.takeWhile(_ != command).map(_.source) ++ |
297 (if (offset == 0) Iterator.empty |
297 (if (offset == 0) Iterator.empty |
298 else Iterator.single(command.source(Text.Range(0, command.chunk.decode(offset))))) |
298 else Iterator.single(command.source(Text.Range(0, command.chunk.decode(offset))))) |
299 val pos = (Line.Position.zero /: sources_iterator)(_.advance_symbols(_)) |
299 val pos = (Line.Position.zero /: sources_iterator)(_.advance(_)) |
300 Some(hyperlink_file(focus, file_name, pos.line1, pos.column1)) |
300 Some(hyperlink_file(focus, file_name, pos.line1, pos.column1)) |
301 } |
301 } |
302 } |
302 } |
303 } |
303 } |
304 |
304 |