private void appendRawLine(String line) {
		final int oldValue = this.history.getHorizontalScrollBar().getValue();
		Matcher matcher = urlPattern.matcher(line);
		while (matcher.find()) {
			String found = matcher.group();
			line = line.replaceFirst(found, "<a href='" + found + "'>" + found + "</a>");
		}
		line = "<div align=\"left\">" + line + "</div></br>";
		HTMLDocument doc = (HTMLDocument) this.messages.getDocument();
		try {
			doc.insertBeforeEnd(doc.getElement(doc.getDefaultRootElement(),
					StyleConstants.NameAttribute, HTML.Tag.BODY), line);
		} catch (BadLocationException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		this.messages.setDocument(doc);
		this.messages.setCaretPosition(doc.getLength());
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				ChannelFrame.this.history.getHorizontalScrollBar().setValue(
						oldValue);
			}
		});
		reshape();
	}