PageRenderTime 41ms CodeModel.GetById 20ms app.highlight 1ms RepoModel.GetById 19ms app.codeStats 0ms

/jEdit/tags/jedit-4-3-pre5/macros/Text/Insert_Tag.bsh

#
Unknown | 62 lines | 55 code | 7 blank | 0 comment | 0 complexity | a89821a3db2cdc3c67cccd8057a2a98a MD5 | raw file
 1/*
 2 * Insert_Tag.bsh - a BeanShell macro script for the
 3 * jEdit text editor - inserts opening and closing tags
 4 * around selected text
 5 * Copyright (C) 2001 John Gellene
 6 * jgellene@nyc.rr.com
 7 * http://community.jedit.org
 8 *
 9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * as published by the Free Software Foundation; either version 2
12 * of the License, or any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with the jEdit program; if not, write to the Free Software
21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
22 *
23 * $Id: Insert_Tag.bsh 4988 2004-03-08 04:29:12Z spestov $
24 */
25
26
27void insertTag()
28{
29	caret = textArea.getCaretPosition();
30	tag = Macros.input(view, "Enter name of tag:");
31	if( tag == null || tag.length() == 0) return;
32	text = textArea.getSelectedText();
33	if(text == null) text = "";
34	sb = new StringBuffer();
35	sb.append("<").append(tag).append(">");
36	sb.append(text);
37	sb.append("</").append(tag).append(">");
38	textArea.setSelectedText(sb.toString());
39	//if no selected text, put the caret between the tags
40	if(text.length() == 0)
41		textArea.setCaretPosition(caret + tag.length() + 2);
42}
43
44if(buffer.isReadOnly())
45	Macros.error(view, "Buffer is read-only.");
46else
47	insertTag();
48
49/*
50	Macro index data (in DocBook format)
51
52<listitem>
53    <para><filename>Insert_Tag.bsh</filename></para>
54    <abstract><para>
55        Inserts a balanced pair of markup tags as supplied in a i
56		nput dialog.
57    </para></abstract>
58</listitem>
59
60*/
61
62// end Insert_Tag.bsh