/jEdit/tags/jedit-4-0-pre3/macros/Text/Insert_Tag.bsh

# · Unknown · 61 lines · 54 code · 7 blank · 0 comment · 0 complexity · 9b8e32d17e6b31432b0b811ea1fa56f3 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 3866 2001-11-06 15:04:21Z jgellene $
  24. *
  25. * Checked for jEdit 4.0 API
  26. */
  27. void 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. insertTag();
  44. /*
  45. Macro index data (in DocBook format)
  46. <listitem>
  47. <para><filename>Insert_Tag.bsh</filename></para>
  48. <abstract><para>
  49. Inserts a balanced pair of markup tags as supplied in a i
  50. nput dialog.
  51. </para></abstract>
  52. </listitem>
  53. */
  54. // end Insert_Tag.bsh