void insertModeline() { HEADER = "_____edit rules______________________________________________________http://jedit.org"; String[] PROPS = {"mode","tabSize","indentSize","noTabs","encoding","wrap","maxLineLen"}; void writeHeader() { textArea.insertEnterAndIndent(); buffer.insert(buffer.getLength(), HEADER); } void writeJeditModeline() { textArea.insertEnterAndIndent(); buffer.insert(buffer.getLength(), ":"); for (i = 0; i < PROPS.length; i++) { buffer.insert(buffer.getLength(),PROPS[i]+"="+buffer.getProperty(PROPS[i])+":"); } } void commentModeline() { textArea.extendSelection(modelineStart+1, modelineEnd); textArea.lineComment(); } caretPosition = textArea.getCaretPosition(); modelineStart = buffer.getLength(); buffer.beginCompoundEdit(); textArea.setCaretPosition(modelineStart); writeHeader(); writeJeditModeline(); modelineEnd = buffer.getLength(); commentModeline(); buffer.endCompoundEdit(); textArea.setCaretPosition(caretPosition); } insertModeline();