src/Tools/jEdit/src/isabelle.scala
changeset 66183 c67933ea9234
parent 66182 1a4b6ae5e72b
child 66469 a6ec0172211a
equal deleted inserted replaced
66182:1a4b6ae5e72b 66183:c67933ea9234
   255     val line = text_area.getCaretLine
   255     val line = text_area.getCaretLine
   256     val caret = text_area.getCaretPosition
   256     val caret = text_area.getCaretPosition
   257 
   257 
   258     if (text_area.isEditable && indent_enabled(buffer, "jedit_indent_input")) {
   258     if (text_area.isEditable && indent_enabled(buffer, "jedit_indent_input")) {
   259       buffer_syntax(buffer) match {
   259       buffer_syntax(buffer) match {
   260         case Some(syntax) if buffer.isInstanceOf[Buffer] =>
   260         case Some(syntax) =>
   261           val nav = new Text_Structure.Navigator(syntax, buffer.asInstanceOf[Buffer], true)
   261           val nav = new Text_Structure.Navigator(syntax, buffer, true)
   262           nav.iterator(line, 1).toStream.headOption match {
   262           nav.iterator(line, 1).toStream.headOption match {
   263             case Some(Text.Info(range, tok))
   263             case Some(Text.Info(range, tok))
   264             if range.stop == caret && syntax.keywords.is_indent_command(tok) =>
   264             if range.stop == caret && syntax.keywords.is_indent_command(tok) =>
   265               buffer.indentLine(line, true)
   265               buffer.indentLine(line, true)
   266             case _ =>
   266             case _ =>
   267           }
   267           }
   268         case _ =>
   268         case None =>
   269       }
   269       }
   270     }
   270     }
   271   }
   271   }
   272 
   272 
   273   def newline(text_area: TextArea)
   273   def newline(text_area: TextArea)