From: <ez...@us...> - 2009-04-21 00:47:33
|
Revision: 14963 http://jedit.svn.sourceforge.net/jedit/?rev=14963&view=rev Author: ezust Date: 2009-04-21 00:47:29 +0000 (Tue, 21 Apr 2009) Log Message: ----------- Bug Fix for cd not changing drives as well as directories. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/SystemShellBuiltIn.java Property Changed: ---------------- plugins/Console/trunk/ Property changes on: plugins/Console/trunk ___________________________________________________________________ Added: svn:mergeinfo + /plugins/Console/branches/ProjectViewer3:14961 Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2009-04-21 00:41:20 UTC (rev 14962) +++ plugins/Console/trunk/Console.props 2009-04-21 00:47:29 UTC (rev 14963) @@ -3,7 +3,7 @@ # We provide a custom action set, so we must be activated at startup plugin.console.ConsolePlugin.activate=startup plugin.console.ConsolePlugin.name=Console -plugin.console.ConsolePlugin.version=4.3.8 +plugin.console.ConsolePlugin.version=4.3.8.1 # new jEdit 4.3 plugin API for short description. plugin.console.ConsolePlugin.description=A command line shell and plugin interface for adding other custom shells. Modified: plugins/Console/trunk/console/SystemShellBuiltIn.java =================================================================== --- plugins/Console/trunk/console/SystemShellBuiltIn.java 2009-04-21 00:41:20 UTC (rev 14962) +++ plugins/Console/trunk/console/SystemShellBuiltIn.java 2009-04-21 00:47:29 UTC (rev 14963) @@ -345,7 +345,6 @@ { SystemShell.ConsoleState state = getConsoleState(console); - String newDir; if(args.size() == 0) { state.setCurrentDirectory(console, @@ -360,8 +359,14 @@ { state.setCurrentDirectory(console, MiscUtilities.constructPath( - state.currentDirectory, - (String)args.elementAt(0))); + state.currentDirectory, arg)); + if(OperatingSystem.isDOSDerived()) { + int colonPos = arg.indexOf(":"); + if (colonPos > 0) { + char driveLetter = arg.charAt(0); + args = state.changeDrive(driveLetter); + } + } } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2009-08-11 22:10:26
|
Revision: 15895 http://jedit.svn.sourceforge.net/jedit/?rev=15895&view=rev Author: ezust Date: 2009-08-11 22:10:15 +0000 (Tue, 11 Aug 2009) Log Message: ----------- Added a customized indicator and an un-customize menu item/action for customized commando.xml files. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/ConsolePlugin.java plugins/Console/trunk/console/commando/CommandoButton.java plugins/Console/trunk/console/commando/CommandoCommand.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2009-08-11 12:53:18 UTC (rev 15894) +++ plugins/Console/trunk/Console.props 2009-08-11 22:10:15 UTC (rev 15895) @@ -385,11 +385,13 @@ commando.copy=Copy commando.hide=Hide commando.customize=Customize - +commando.uncustomize=Un-Customize commando.xml-error.title=Parse Error commando.xml-error.message=An error occurred while parsing {0} at line {1}\n\ ({2}). - +console.commando.button.tooltiptext=Right-click for menu +console.commando.button.customized.tooltiptext=User-customized commando button +commando.uncustomize.tooltiptext=Remove custom {0}.xml from settings directory commando.bad-shell.title=Unknown Shell commando.bad-shell.message=No such shell: {0} Modified: plugins/Console/trunk/console/ConsolePlugin.java =================================================================== --- plugins/Console/trunk/console/ConsolePlugin.java 2009-08-11 12:53:18 UTC (rev 15894) +++ plugins/Console/trunk/console/ConsolePlugin.java 2009-08-11 22:10:15 UTC (rev 15895) @@ -227,9 +227,13 @@ StringList sl = StringList.split(defaultCommands, " "); for (String name: sl) { String key = "commando." + name; - if (allCommands.contains(key)) + if (allCommands.contains(key)) { + // skip over those that have user overridden versions already loaded + continue; + } + String resourceName = "/console/commands/" + name + ".xml"; // System.out.println ("GetResource: " + resourceName); URL url = Console.class.getResource(resourceName); Modified: plugins/Console/trunk/console/commando/CommandoButton.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoButton.java 2009-08-11 12:53:18 UTC (rev 15894) +++ plugins/Console/trunk/console/commando/CommandoButton.java 2009-08-11 22:10:15 UTC (rev 15895) @@ -22,6 +22,7 @@ package console.commando; // {{{ imports +import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -58,14 +59,23 @@ private JMenuItem hide; private JMenuItem customize; + + private JMenuItem unCustomize; + // }}} // {{{ ctor public CommandoButton(CommandoCommand command) { + this.command = command; + init(); + } + + void init() { + + setToolTipText(jEdit.getProperty("console.commando.button.tooltiptext")); String name = command.getLabel(); setText(name); - this.command = command; contextMenu = new JPopupMenu(); visible = jEdit.getBooleanProperty("commando.visible." + name); setVisible(visible); @@ -75,11 +85,31 @@ customize.addActionListener(this); contextMenu.add(hide); contextMenu.add(customize); + if (command.isUser()) { + setBackground(Color.GREEN); + setToolTipText(jEdit.getProperty("console.commando.button.customized.tooltiptext")); + if (command.isOverriding()) { + unCustomize = new JMenuItem(jEdit.getProperty("commando.uncustomize")); + unCustomize.setToolTipText(jEdit.getProperty("commando.uncustomize.tooltiptext", new Object[] {name})); + unCustomize.addActionListener(this); + contextMenu.add(unCustomize); + } + } setComponentPopupMenu(contextMenu); } // }}} + // {{{ unCustomize + public void unCustomize() + { + String userDir = ConsolePlugin.getUserCommandDirectory(); + String name = command.getShortLabel() + ".xml"; + File f = new File(userDir, name); + f.delete(); + ConsolePlugin.rescanCommands(); + } + // {{{ Customize public void customize() { @@ -124,6 +154,9 @@ { customize(); } + if (e.getSource() == unCustomize) { + unCustomize(); + } } // }}} Modified: plugins/Console/trunk/console/commando/CommandoCommand.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoCommand.java 2009-08-11 12:53:18 UTC (rev 15894) +++ plugins/Console/trunk/console/commando/CommandoCommand.java 2009-08-11 22:10:15 UTC (rev 15895) @@ -36,7 +36,10 @@ import org.gjt.sp.jedit.EditAction; import org.gjt.sp.jedit.View; import org.gjt.sp.jedit.jEdit; +import org.gjt.sp.util.StringList; +import console.Console; + // }}} @@ -59,6 +62,19 @@ return (url == null); } + /** + * + * @return true for user commands that override a command + * with the same name in the jar. + */ + public boolean isOverriding() + { + if (!isUser()) return false; + String defaultCommands = jEdit.getProperty("commando.default"); + StringList sl = StringList.split(defaultCommands, " "); + String cmdName = name.replace("commando.", ""); + return sl.contains(cmdName); + } // }}} // {{{ create() Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2009-08-11 12:53:18 UTC (rev 15894) +++ plugins/Console/trunk/docs/users-guide.xml 2009-08-11 22:10:15 UTC (rev 15895) @@ -1528,6 +1528,8 @@ <listitem id="ver4.4.1"><para> <emphasis role="bold">Version 4.4.1</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Report errors for processes with only one multiline error, fixing regression introduced by 2783642 in Console 4.4. </para></listitem> + <listitem><para> Added an "uncustomize" context menu item for Commando Buttons that have override commandos from the jar, to easily restore them to the previous state, as well as indicators via tooltip and color, that a button has been customized. </para></listitem> + </itemizedlist> </para></listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2009-09-07 19:51:42
|
Revision: 16173 http://jedit.svn.sourceforge.net/jedit/?rev=16173&view=rev Author: ezust Date: 2009-09-07 19:51:30 +0000 (Mon, 07 Sep 2009) Log Message: ----------- Show confirm dialog before deleting customized version of commando button. Modified Paths: -------------- plugins/Console/trunk/console/commando/CommandoButton.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/console/commando/CommandoButton.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoButton.java 2009-09-07 18:03:21 UTC (rev 16172) +++ plugins/Console/trunk/console/commando/CommandoButton.java 2009-09-07 19:51:30 UTC (rev 16173) @@ -23,6 +23,7 @@ // {{{ imports import java.awt.Color; +import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; @@ -33,10 +34,16 @@ import javax.swing.JButton; import javax.swing.JMenuItem; +import javax.swing.JOptionPane; import javax.swing.JPopupMenu; +import javax.swing.SwingUtilities; +import org.gjt.sp.jedit.GUIUtilities; import org.gjt.sp.jedit.View; import org.gjt.sp.jedit.jEdit; +import org.gjt.sp.jedit.browser.VFSBrowser; +import org.gjt.sp.jedit.gui.DockableWindowManager; +import org.gjt.sp.jedit.io.VFSFile; import console.ConsolePlugin; // }}} @@ -108,8 +115,17 @@ String userDir = ConsolePlugin.getUserCommandDirectory(); String name = command.getShortLabel() + ".xml"; File f = new File(userDir, name); - f.delete(); - ConsolePlugin.rescanCommands(); + String path = f.getPath(); + VFSFile vf = new VFSFile(path, path, path, VFSFile.FILE, 0, false); + VFSFile[] vfl = new VFSFile[1]; + vfl[0]=vf; + DockableWindowManager dwm = jEdit.getActiveView().getDockableWindowManager(); + Component comp = dwm.getDockable("vfs.browser"); + VFSBrowser browser = (VFSBrowser) comp; + if (browser == null) return; + browser.delete(vfl); + SwingUtilities.invokeLater(new Runnable() { + public void run() { ConsolePlugin.rescanCommands(); }}); } // {{{ Customize Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2009-09-07 18:03:21 UTC (rev 16172) +++ plugins/Console/trunk/docs/users-guide.xml 2009-09-07 19:51:30 UTC (rev 16173) @@ -1528,8 +1528,8 @@ <listitem id="ver4.4.1"><para> <emphasis role="bold">Version 4.4.1</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Report errors for processes with only one multiline error, fixing regression introduced by 2783642 in Console 4.4. </para></listitem> - <listitem><para> Added an "uncustomize" context menu item for Commando Buttons that have override commandos from the jar, to easily restore them to the previous state, as well as indicators via tooltip and color, that a button has been customized. </para></listitem> + <listitem><para> Added an "uncustomize" context menu item for Commando Buttons that override same-named commando.xml files from the jar, to easily restore them to the previous state, as well as indicators via tooltip and color, that a button has been customized. </para></listitem> </itemizedlist> </para></listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2009-12-29 22:59:48
|
Revision: 16784 http://jedit.svn.sourceforge.net/jedit/?rev=16784&view=rev Author: ezust Date: 2009-12-29 22:59:42 +0000 (Tue, 29 Dec 2009) Log Message: ----------- Just doc updates. Modified Paths: -------------- plugins/Console/trunk/TODO.txt plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/TODO.txt =================================================================== --- plugins/Console/trunk/TODO.txt 2009-12-29 22:07:05 UTC (rev 16783) +++ plugins/Console/trunk/TODO.txt 2009-12-29 22:59:42 UTC (rev 16784) @@ -1,20 +1,16 @@ -- Fix the "add/remove" buttons of the listview in the ErrorOptionPane +- Replace use of old objectfactory parser with one from JDK or MiscUtilities - Add a history file input and a history text input for commando dialogs. - Test alternate shells using the prefix feature - $d/.. not canonicalized - jikes warning pattern - %edit -n, -p, -s - caret color option -- default dir option - - more flexible redirection - multiple commands in system shell with ; - handle multiple consecutive command invocations correctly in console -- periodic execution feature -- globs (non-Windows only, Windows programs do their own glob expansion) - error hyperlinks - exception tracebacks handled, maybe --> use JLib for this -- cvs commandos - need <INIT> code block in commando files - notify of process exit - multiple-line env vars don't work @@ -26,8 +22,7 @@ - URL hyperlinks in output; %ls output lines open files and directories; - ${beanshell:...} syntax - file manipulation builtins - %ls, %mv, %cp, %rm, %touch, %cat? - - VFS support - - cd to a non-local directory (don't allow running commands from non - local dir, only built-ins) -- after jEdit API additions: tips of the day -- FTP plugin and Console - perhaps we want an SFTP shell? +- VFS support - Select correct shell (ssh) for non-System VFS (such as + sftp:// paths) from commando buttons. + + Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2009-12-29 22:07:05 UTC (rev 16783) +++ plugins/Console/trunk/docs/users-guide.xml 2009-12-29 22:59:42 UTC (rev 16784) @@ -1527,9 +1527,8 @@ <listitem id="ver4.4.1"><para> <emphasis role="bold">Version 4.4.1</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> - <listitem><para> Patch #2893518 - Synchronized getOutput() (Damien kog13) </para></listitem> + <listitem><para> Patch #2893518 - un-synchronized getOutput() to avoid deadlocks (Damien Radtke) </para></listitem> <listitem><para> Report errors for processes with only one multiline error, fixing regression introduced by 2783642 in Console 4.4. </para></listitem> - <listitem><para> Added an "uncustomize" context menu item for Commando Buttons that override same-named commando.xml files from the jar, to easily restore them to the previous state, as well as indicators via tooltip and color, that a button has been customized. </para></listitem> </itemizedlist> </para></listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2009-12-29 23:02:53
|
Revision: 16785 http://jedit.svn.sourceforge.net/jedit/?rev=16785&view=rev Author: ezust Date: 2009-12-29 23:02:39 +0000 (Tue, 29 Dec 2009) Log Message: ----------- Version Bump. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2009-12-29 22:59:42 UTC (rev 16784) +++ plugins/Console/trunk/Console.props 2009-12-29 23:02:39 UTC (rev 16785) @@ -3,7 +3,7 @@ # We provide a custom action set, so we must be activated at startup plugin.console.ConsolePlugin.activate=startup plugin.console.ConsolePlugin.name=Console -plugin.console.ConsolePlugin.version=4.4.1 +plugin.console.ConsolePlugin.version=4.4.2 # new jEdit 4.3 plugin API for short description. plugin.console.ConsolePlugin.description=A command line shell and plugin interface for adding other custom shells. Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2009-12-29 22:59:42 UTC (rev 16784) +++ plugins/Console/trunk/docs/users-guide.xml 2009-12-29 23:02:39 UTC (rev 16785) @@ -1525,6 +1525,13 @@ <title>Change log</title> <itemizedlist> + <listitem id="ver4.4.2"><para> + <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> + <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> + </itemizedlist> + </para> + </listitem> + <listitem id="ver4.4.1"><para> <emphasis role="bold">Version 4.4.1</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Patch #2893518 - un-synchronized getOutput() to avoid deadlocks (Damien Radtke) </para></listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-01-09 02:33:46
|
Revision: 16880 http://jedit.svn.sourceforge.net/jedit/?rev=16880&view=rev Author: ezust Date: 2010-01-09 00:17:04 +0000 (Sat, 09 Jan 2010) Log Message: ----------- get rid of com.microstar.xml dependency (#2927830) Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/build.xml plugins/Console/trunk/console/ErrorMatcher.java plugins/Console/trunk/console/commando/CommandoDialog.java plugins/Console/trunk/console/commando/CommandoHandler.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2010-01-08 22:23:18 UTC (rev 16879) +++ plugins/Console/trunk/Console.props 2010-01-09 00:17:04 UTC (rev 16880) @@ -12,7 +12,7 @@ plugin.console.ConsolePlugin.docs=index.html plugin.console.ConsolePlugin.author=Slava Pestov, Alan Ezust -plugin.console.ConsolePlugin.depend.0=jedit 04.03.16.00 +plugin.console.ConsolePlugin.depend.0=jedit 04.03.99.00 plugin.console.ConsolePlugin.depend.1=jdk 1.5 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.4 # ProjectViewer is optional because Console only listens to events from it. Modified: plugins/Console/trunk/build.xml =================================================================== --- plugins/Console/trunk/build.xml 2010-01-08 22:23:18 UTC (rev 16879) +++ plugins/Console/trunk/build.xml 2010-01-09 00:17:04 UTC (rev 16880) @@ -7,6 +7,7 @@ <property file="../build.properties" /> <property name="javadoc.packagenames" value="console.*" /> <property name="plugin.dependencies" value="ErrorList,InfoViewer,ProjectViewer" /> + <property name="docs-proc.target" value="xsltproc" /> <property name="dist.target" value="dist.complete" /> <property name="compiler.source" value="1.5" /> <property name="compiler.target" value="1.5" /> @@ -15,7 +16,7 @@ <import file="${build.support}/plugin-build.xml" /> <!-- Extra files that get put into the jar file, above and beyond - the default set (which always includes actions,dockables,services.xml, + the default set (which always includes actions,dockables,services.xml, *.props, etc --> <selector id="packageFiles"> Modified: plugins/Console/trunk/console/ErrorMatcher.java =================================================================== --- plugins/Console/trunk/console/ErrorMatcher.java 2010-01-08 22:23:18 UTC (rev 16879) +++ plugins/Console/trunk/console/ErrorMatcher.java 2010-01-09 00:17:04 UTC (rev 16880) @@ -231,7 +231,7 @@ // }}} // {{{ clone() - public Object clone() + public Object clone() { ErrorMatcher retval = new ErrorMatcher(); retval.set(this); @@ -366,7 +366,7 @@ String _filename = MiscUtilities.constructPath(directory, file); try { - return new DefaultError(errorSource, type, _filename, + return new DefaultError(errorSource, type, _filename, Math.max(0, Integer.parseInt(line) - 1), 0, 0, message); } catch (NumberFormatException nf) @@ -395,8 +395,7 @@ /** * Brings the state back from the properties. * - * @param name - * the name (which gets translated into an internal name) + * @param iname the jedit action name (gets translated into an internal name) * */ public void load(String iname) Modified: plugins/Console/trunk/console/commando/CommandoDialog.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoDialog.java 2010-01-08 22:23:18 UTC (rev 16879) +++ plugins/Console/trunk/console/commando/CommandoDialog.java 2010-01-09 00:17:04 UTC (rev 16880) @@ -4,6 +4,7 @@ * :folding=explicit:collapseFolds=1: * * Copyright (C) 2001, 2003 Slava Pestov + * Copyright (C) 2010 Eric Le Lay * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -65,8 +66,11 @@ import org.gjt.sp.jedit.bsh.This; import org.gjt.sp.jedit.bsh.UtilEvalError; -import com.microstar.xml.XmlException; -import com.microstar.xml.XmlParser; +import org.xml.sax.helpers.XMLReaderFactory; +import org.xml.sax.XMLReader; +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; +import org.xml.sax.SAXParseException; import console.Console; import console.ConsolePlugin; @@ -174,7 +178,7 @@ save(); - Vector commands = new Vector(); + Vector<CommandoHandler.Command> commands = new Vector<CommandoHandler.Command>(); for(int i = 0; i < scripts.size(); i++) { @@ -225,21 +229,24 @@ "commando"); scripts = new ArrayList<CommandoHandler.Script>(); - XmlParser parser = new XmlParser(); CommandoHandler handler = new CommandoHandler(view,command, settings,nameSpace,components,scripts); - parser.setHandler(handler); Reader in = null; try { + XMLReader parser = XMLReaderFactory.createXMLReader(); + parser.setErrorHandler(handler); + parser.setContentHandler(handler); + parser.setEntityResolver(handler); + in = command.openStream(); - parser.parse(null, null, in); + parser.parse(new InputSource(in)); } - catch(XmlException xe) + catch(SAXParseException xe) { Log.log(Log.ERROR,this,xe); - int line = xe.getLine(); + int line = xe.getLineNumber(); String message = xe.getMessage(); Object[] pp = { command.getLabel() + ".xml", Integer.valueOf(line), @@ -307,7 +314,7 @@ { for(int i = 0; i < components.size(); i++) { - This t = (This)components.get(i); + This t = components.get(i); try { t.invokeMethod("valueChanged",new Object[0]); Modified: plugins/Console/trunk/console/commando/CommandoHandler.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoHandler.java 2010-01-08 22:23:18 UTC (rev 16879) +++ plugins/Console/trunk/console/commando/CommandoHandler.java 2010-01-09 00:17:04 UTC (rev 16880) @@ -4,6 +4,7 @@ * :folding=explicit:collapseFolds=1: * * Copyright (C) 2001, 2005 Slava Pestov + * Copyright (C) 2010 Eric Le Lay * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -36,18 +37,22 @@ import org.gjt.sp.util.Log; import org.gjt.sp.jedit.bsh.NameSpace; +import org.gjt.sp.jedit.bsh.This; -import com.microstar.xml.HandlerBase; +import org.xml.sax.helpers.DefaultHandler; +import org.xml.sax.InputSource; +import org.xml.sax.Attributes; + //}}} -public class CommandoHandler extends HandlerBase +public class CommandoHandler extends DefaultHandler { //{{{ CommandoHandler constructor CommandoHandler(View view, CommandoCommand command, CommandoDialog.SettingsPane settings, NameSpace nameSpace, - List components, - List scripts) + List<This> components, + List<Script> scripts) { this.view = view; this.command = command; @@ -56,23 +61,27 @@ this.components = components; this.scripts = scripts; - stateStack = new Stack(); - options = new Vector(); + stateStack = new Stack<String>(); + options = new Vector<Option>(); } //}}} //{{{ resolveEntity() method - public Object resolveEntity(String publicId, String systemId) + @Override + public InputSource resolveEntity(String publicId, String systemId) { - if("commando.dtd".equals(systemId)) + // could have used EntityResolver2.resolveEntity(4), + // but it's not always available + if(systemId.endsWith("commando.dtd")) { - return new StringReader("<!-- -->"); + return new InputSource(new StringReader("<!-- -->")); } return null; - } //}}} + } + //}}} //{{{ attribute() method - public void attribute(String aname, String value, boolean isSpecified) + public void attribute(String aname, String value) { aname = (aname == null) ? null : aname.intern(); value = (value == null) ? null : value.intern(); @@ -97,31 +106,32 @@ shell = value; } //}}} - //{{{ doctypeDecl() method - public void doctypeDecl(String name, String publicId, - String systemId) throws Exception - { - if("COMMANDO".equals(name)) - return; - - Log.log(Log.ERROR,this,command.getLabel() - + ".xml: DOCTYPE must be COMMANDO"); - } //}}} - //{{{ charData() method - public void charData(char[] c, int off, int len) + @Override + public void characters(char[] c, int off, int len) { String tag = peekElement(); String text = new String(c, off, len); - + + //code might be passed line by line, so concatenate if(tag == "COMMAND") - code = text; + code = code == null ? text : code+text; } //}}} //{{{ startElement() method - public void startElement(String name) + @Override + public void startElement(String ns, String localName, String qName, Attributes attributes) { - pushElement(name); + // handle the attributes before pushing the element + // (this is what the old com.microstar.xml XmlParser implementation did) + for(int i=0;i<attributes.getLength();i++) + { + String aname = attributes.getLocalName(i); + String value = attributes.getValue(i); + attribute(aname, value); + } + + pushElement(localName); String tag = peekElement(); if(tag == "CAPTION") @@ -134,19 +144,20 @@ else if(tag == "CHOICE") { choiceLabel = label; - options = new Vector(); + options = new Vector<Option>(); } + } //}}} - - public void endElement(String name) + @Override + public void endElement(String ns, String localName, String qName) { - if(name == null) + if(localName == null) return; String tag = peekElement(); - if(name.equals(tag)) + if(localName.equals(tag)) { if(tag == "OPTION") { @@ -209,7 +220,7 @@ String script = "commando" + tag + "(view,pane,ns,label,var,options)"; Object value = BeanShell.eval(view, tmp, script); - components.add(value); + components.add((This)value); } catch(Exception e) { @@ -229,16 +240,10 @@ } //}}} //{{{ startDocument() method + @Override public void startDocument() { -// try - { - pushElement(null); - } -/* catch (Exception e) - { - e.printStackTrace(); - } */ + pushElement(null); } //}}} //{{{ Private members @@ -249,8 +254,8 @@ private CommandoDialog.SettingsPane settings; private CommandoDialog.SettingsPane pane; private NameSpace nameSpace; - private List components; - private List scripts; + private List<This> components; + private List<Script> scripts; private String varName; private String defaultValue; @@ -264,9 +269,9 @@ private String shell; private String code; - private Vector options; + private Vector<Option> options; - private Stack stateStack; + private Stack<String> stateStack; //}}} //{{{ pushElement() method @@ -280,13 +285,13 @@ //{{{ peekElement() method private String peekElement() { - return (String) stateStack.peek(); + return stateStack.peek(); } //}}} //{{{ popElement() method private String popElement() { - return (String) stateStack.pop(); + return stateStack.pop(); } //}}} //}}} Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-01-08 22:23:18 UTC (rev 16879) +++ plugins/Console/trunk/docs/users-guide.xml 2010-01-09 00:17:04 UTC (rev 16880) @@ -1528,6 +1528,7 @@ <listitem id="ver4.4.2"><para> <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> + <listitem><para> No longer uses objectfactory xml parser (Eric Le Lay # 2927830) </para></listitem> </itemizedlist> </para> </listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-01-17 05:00:51
|
Revision: 16941 http://jedit.svn.sourceforge.net/jedit/?rev=16941&view=rev Author: ezust Date: 2010-01-17 05:00:45 +0000 (Sun, 17 Jan 2010) Log Message: ----------- Updated changelog. Modified Paths: -------------- plugins/Console/trunk/console/ConsoleProcess.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/console/ConsoleProcess.java =================================================================== --- plugins/Console/trunk/console/ConsoleProcess.java 2010-01-17 04:57:16 UTC (rev 16940) +++ plugins/Console/trunk/console/ConsoleProcess.java 2010-01-17 05:00:45 UTC (rev 16941) @@ -319,11 +319,6 @@ jEdit.checkBufferStatus(jEdit.getActiveView()); } }); - - - - - ; } // }}} // }}} Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-01-17 04:57:16 UTC (rev 16940) +++ plugins/Console/trunk/docs/users-guide.xml 2010-01-17 05:00:45 UTC (rev 16941) @@ -1528,6 +1528,7 @@ <listitem id="ver4.4.2"><para> <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> + <listitem><para> checkBufferStatus in the EDT (# 2933468 - Dale Anson) </para></listitem> <listitem><para> No longer uses objectfactory xml parser (Eric Le Lay # 2927830) </para></listitem> </itemizedlist> </para> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-01-17 05:06:04
|
Revision: 16942 http://jedit.svn.sourceforge.net/jedit/?rev=16942&view=rev Author: ezust Date: 2010-01-17 05:05:58 +0000 (Sun, 17 Jan 2010) Log Message: ----------- get the console's view instead of the active view, unlikely to be different but still... Modified Paths: -------------- plugins/Console/trunk/console/ConsoleProcess.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/console/ConsoleProcess.java =================================================================== --- plugins/Console/trunk/console/ConsoleProcess.java 2010-01-17 05:00:45 UTC (rev 16941) +++ plugins/Console/trunk/console/ConsoleProcess.java 2010-01-17 05:05:58 UTC (rev 16942) @@ -316,7 +316,7 @@ } SwingUtilities.invokeLater(new Runnable() { public void run() { - jEdit.checkBufferStatus(jEdit.getActiveView()); + jEdit.checkBufferStatus(console.getView()); } }); } Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-01-17 05:00:45 UTC (rev 16941) +++ plugins/Console/trunk/docs/users-guide.xml 2010-01-17 05:05:58 UTC (rev 16942) @@ -1528,7 +1528,7 @@ <listitem id="ver4.4.2"><para> <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> - <listitem><para> checkBufferStatus in the EDT (# 2933468 - Dale Anson) </para></listitem> + <listitem><para> Do checkBufferStatus() in the event dispatch thread (# 2933468 - Dale Anson) </para></listitem> <listitem><para> No longer uses objectfactory xml parser (Eric Le Lay # 2927830) </para></listitem> </itemizedlist> </para> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ko...@us...> - 2010-03-24 18:26:47
|
Revision: 17525 http://jedit.svn.sourceforge.net/jedit/?rev=17525&view=rev Author: kog13 Date: 2010-03-24 18:26:40 +0000 (Wed, 24 Mar 2010) Log Message: ----------- Updated execute commando file and set it as default runner for batch and shellscript Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/commands/execute.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2010-03-23 20:21:48 UTC (rev 17524) +++ plugins/Console/trunk/Console.props 2010-03-24 18:26:40 UTC (rev 17525) @@ -431,6 +431,7 @@ ### Default compilers and interpreters +mode.batch.commando.run=execute mode.java.commando.compile=javac mode.java.commando.run=java mode.jmk.commando.compile=jmk @@ -444,5 +445,6 @@ mode.c++.commando.run=execute mode.python.commando.compile=python mode.perl.commando.compile=perl +mode.shellscript.commando.run=execute mode.makefile.commando.compile=make Modified: plugins/Console/trunk/console/commands/execute.xml =================================================================== --- plugins/Console/trunk/console/commands/execute.xml 2010-03-23 20:21:48 UTC (rev 17524) +++ plugins/Console/trunk/console/commands/execute.xml 2010-03-24 18:26:40 UTC (rev 17525) @@ -7,7 +7,7 @@ <CAPTION LABEL="Execute"> <FILE_ENTRY LABEL="Executable" VARNAME="source" - EVAL="n=buffer.getName();if (n.lastIndexOf('.') != -1) { n=n.substring(0, n.lastIndexOf('.')); };buffer.getDirectory()+n" /> + EVAL="n=buffer.getName();mode=buffer.getMode().getName();if ((mode.equals("c++") || mode.equals("c")) && n.lastIndexOf('.') != -1) { n=n.substring(0, n.lastIndexOf('.')); };buffer.getDirectory()+n" /> <ENTRY LABEL="Parameters" VARNAME="params" /> </CAPTION> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-09-10 23:10:03
|
Revision: 18552 http://jedit.svn.sourceforge.net/jedit/?rev=18552&view=rev Author: ezust Date: 2010-09-10 23:09:55 +0000 (Fri, 10 Sep 2010) Log Message: ----------- Fixed built-in pwd command. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/SystemShell.java plugins/Console/trunk/console/SystemShellBuiltIn.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2010-09-10 22:53:58 UTC (rev 18551) +++ plugins/Console/trunk/Console.props 2010-09-10 23:09:55 UTC (rev 18552) @@ -3,7 +3,7 @@ # We provide a custom action set, so we must be activated at startup plugin.console.ConsolePlugin.activate=startup plugin.console.ConsolePlugin.name=Console -plugin.console.ConsolePlugin.version=4.4.2 +plugin.console.ConsolePlugin.version=4.4.3 # new jEdit 4.3 plugin API for short description. plugin.console.ConsolePlugin.description=A command line shell and plugin interface for adding other custom shells. Modified: plugins/Console/trunk/console/SystemShell.java =================================================================== --- plugins/Console/trunk/console/SystemShell.java 2010-09-10 22:53:58 UTC (rev 18551) +++ plugins/Console/trunk/console/SystemShell.java 2010-09-10 23:09:55 UTC (rev 18552) @@ -705,7 +705,7 @@ commands.put("%kill", new SystemShellBuiltIn.kill()); commands.put("%popd", new SystemShellBuiltIn.popd()); commands.put("%pushd", new SystemShellBuiltIn.pushd()); - commands.put("%pwd", new SystemShellBuiltIn.pwd()); + commands.put("pwd", new SystemShellBuiltIn.pwd()); commands.put("%run", new SystemShellBuiltIn.run()); commands.put("%set", new SystemShellBuiltIn.set()); commands.put("%unalias", new SystemShellBuiltIn.unalias()); @@ -721,14 +721,15 @@ pr.setUpDefaultAliases(aliases); // some built-ins can be invoked without the % prefix + aliases.put("cd", "%cd"); aliases.put("pushd", "%pushd"); aliases.put("popd", "%popd"); - aliases.put("pwd", "%pwd"); + // aliases.put("pwd", "%pwd"); aliases.put("aliases", "%aliases"); aliases.put("alias", "%alias"); - aliases.put("-", "%cd -"); + aliases.put("-", "cd -"); /* run ant without adornments to make error parsing easier */ aliases.put("ant", "ant -emacs"); Modified: plugins/Console/trunk/console/SystemShellBuiltIn.java =================================================================== --- plugins/Console/trunk/console/SystemShellBuiltIn.java 2010-09-10 22:53:58 UTC (rev 18551) +++ plugins/Console/trunk/console/SystemShellBuiltIn.java 2010-09-10 23:09:55 UTC (rev 18552) @@ -625,7 +625,7 @@ { ConsoleState cs = getConsoleState(console); - output.writeAttrs(null, cs.currentDirectory + "\n"); + output.writeAttrs(null, "echo " + cs.currentDirectory + "\n"); // shell will print prompt with current working dir } } //}}} Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-09-10 22:53:58 UTC (rev 18551) +++ plugins/Console/trunk/docs/users-guide.xml 2010-09-10 23:09:55 UTC (rev 18552) @@ -1525,6 +1525,13 @@ <title>Change log</title> <itemizedlist> + <listitem id="ver4.4.3"><para> + <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.3.99.00, + JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> + <listitem><para> Fixed built-in <literal>pwd</literal> system shell command. </para></listitem> + </itemizedlist> + </para> + </listitem> <listitem id="ver4.4.2"><para> <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-09-21 22:34:21
|
Revision: 18580 http://jedit.svn.sourceforge.net/jedit/?rev=18580&view=rev Author: ezust Date: 2010-09-21 22:34:15 +0000 (Tue, 21 Sep 2010) Log Message: ----------- Brought version back down to 4.4.2 in preparation for tagging. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/bsh/changeToPvRoot.bsh plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2010-09-21 20:07:28 UTC (rev 18579) +++ plugins/Console/trunk/Console.props 2010-09-21 22:34:15 UTC (rev 18580) @@ -3,7 +3,7 @@ # We provide a custom action set, so we must be activated at startup plugin.console.ConsolePlugin.activate=startup plugin.console.ConsolePlugin.name=Console -plugin.console.ConsolePlugin.version=4.4.3 +plugin.console.ConsolePlugin.version=4.4.2 # new jEdit 4.3 plugin API for short description. plugin.console.ConsolePlugin.description=A command line shell and plugin interface for adding other custom shells. Modified: plugins/Console/trunk/console/bsh/changeToPvRoot.bsh =================================================================== --- plugins/Console/trunk/console/bsh/changeToPvRoot.bsh 2010-09-21 20:07:28 UTC (rev 18579) +++ plugins/Console/trunk/console/bsh/changeToPvRoot.bsh 2010-09-21 22:34:15 UTC (rev 18580) @@ -11,8 +11,8 @@ pv = wm.getDockable("projectviewer"); con = wm.getDockable("console"); if ((pv == null) || (con == null)) return; + wm.showDockableWindow("projectviewer"); wm.showDockableWindow("console"); - wm.showDockableWindow("projectviewer"); sysShell = console.Shell.getShell("System"); sstate = con.getShellState(sysShell); project = pv.getActiveProject(view); Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-09-21 20:07:28 UTC (rev 18579) +++ plugins/Console/trunk/docs/users-guide.xml 2010-09-21 22:34:15 UTC (rev 18580) @@ -1525,18 +1525,13 @@ <title>Change log</title> <itemizedlist> - <listitem id="ver4.4.3"><para> - <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.3.99.00, - JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> - <listitem><para> Fixed built-in <literal>pwd</literal> system shell command. </para></listitem> - </itemizedlist> - </para> - </listitem> <listitem id="ver4.4.2"><para> - <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> + <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre99, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> <listitem><para> Do checkBufferStatus() in the event dispatch thread (# 2933468 - Dale Anson) </para></listitem> <listitem><para> No longer uses objectfactory xml parser (Eric Le Lay # 2927830) </para></listitem> + <listitem><para> Fixed built-in <literal>pwd</literal> system shell command. </para></listitem> + </itemizedlist> </para> </listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-10-27 22:18:21
|
Revision: 18869 http://jedit.svn.sourceforge.net/jedit/?rev=18869&view=rev Author: ezust Date: 2010-10-27 22:18:13 +0000 (Wed, 27 Oct 2010) Log Message: ----------- Removed unused imports. Added template arguments to generic types. Un-commented the restoring of console shell variables. Removed some other warnings and deprecations. Modified Paths: -------------- plugins/Console/trunk/console/Console.java plugins/Console/trunk/console/ProjectTreeListener.java plugins/Console/trunk/console/Shell.java plugins/Console/trunk/console/SystemShell.java plugins/Console/trunk/console/SystemShellBuiltIn.java plugins/Console/trunk/console/commando/CommandoCommand.java plugins/Console/trunk/console/commando/CommandoDialog.java plugins/Console/trunk/console/commando/CommandoToolBar.java plugins/Console/trunk/console/options/ErrorsOptionPane.java plugins/Console/trunk/console/options/GeneralOptionPane.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/console/Console.java =================================================================== --- plugins/Console/trunk/console/Console.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/Console.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -159,11 +159,10 @@ listener.finalize(); } ErrorSource.unregisterErrorSource(errorSource); - - Iterator iter = shellStateMap.values().iterator(); + Iterator<ShellState> iter = shellStateMap.values().iterator(); while(iter.hasNext()) { - ShellState state = (ShellState)iter.next(); + ShellState state = iter.next(); state.shell.closeConsole(this); } animation.stop(); @@ -300,7 +299,7 @@ if(msg instanceof PropertiesChanged) propertiesChanged(); else if (msg instanceof DockableWindowUpdate) { DockableWindowUpdate dwu = (DockableWindowUpdate) msg; - if (dwu.getWhat() != null && dwu.getWhat().equals(dwu.ACTIVATED)) + if (dwu.getWhat() != null && dwu.getWhat().equals(DockableWindowUpdate.ACTIVATED)) if (dwu.getDockable().equals("console")) scrollToBottom(); } @@ -762,10 +761,10 @@ updateShellList(); - Iterator iter = shellStateMap.keySet().iterator(); + Iterator<String> iter = shellStateMap.keySet().iterator(); while(iter.hasNext()) { - String name = (String)iter.next(); + String name = iter.next(); if(Shell.getShell(name) == null) { if(this.currentShell.getName().equals(name)) Modified: plugins/Console/trunk/console/ProjectTreeListener.java =================================================================== --- plugins/Console/trunk/console/ProjectTreeListener.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/ProjectTreeListener.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -33,7 +33,6 @@ import org.gjt.sp.jedit.jEdit; import projectviewer.event.ViewerUpdate; -import projectviewer.vpt.VPTNode; import org.gjt.sp.jedit.bsh.NameSpace; // }}} @@ -88,7 +87,7 @@ catch (InterruptedException ie) { } - VPTNode n = vu.getNode(); + //VPTNode n = vu.getNode(); View view = vu.getView(); if (view == null || view != jEdit.getActiveView()) return; String code = "changeToPvRoot(view);"; Modified: plugins/Console/trunk/console/Shell.java =================================================================== --- plugins/Console/trunk/console/Shell.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/Shell.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -22,7 +22,6 @@ package console; -import java.util.*; import org.gjt.sp.jedit.*; import org.gjt.sp.jedit.gui.DockableWindowManager; import org.gjt.sp.util.Log; Modified: plugins/Console/trunk/console/SystemShell.java =================================================================== --- plugins/Console/trunk/console/SystemShell.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/SystemShell.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -29,7 +29,7 @@ * When SystemShell executes something, the process itself is started indirectly by * ProcessRunner.exec(). * @author 1999, 2005 Slava Pestov - * @author 2006, 2007 Alan Ezust + * @author 2006, 2009 Alan Ezust */ // {{{ class SystemShell public class SystemShell extends Shell @@ -770,12 +770,13 @@ variables.put("TERM", "dumb"); // load variables from properties - /* - * String varname; i = 0; while((varname = - * jEdit.getProperty("console.shell.variable." + i)) != null) { - * variables.put(varname,jEdit.getProperty("console.shell.variable." + - * i + ".value")); i++; } - */ + + String varname; + int i = 0; + while((varname = jEdit.getProperty("console.shell.variable." + i)) != null) { + variables.put(varname, jEdit.getProperty("console.shell.variable." + i + ".value")); i++; + } + } // }}} // {{{ parse() method @@ -949,7 +950,7 @@ } // }}} // {{{ getCommandCompletions() method - private List getCommandCompletions(View view, String currentDirName, String command) + private List<String> getCommandCompletions(View view, String currentDirName, String command) { StringList list = new StringList(); @@ -1165,8 +1166,7 @@ } catch (IOException ioe) { - Log.log (Log.ERROR, this, "setCurrentDirectory()", ioe); - + Log.log (Log.ERROR, this, "setCurrentDirectory()", ioe); } } } // }}} Modified: plugins/Console/trunk/console/SystemShellBuiltIn.java =================================================================== --- plugins/Console/trunk/console/SystemShellBuiltIn.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/SystemShellBuiltIn.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -31,6 +31,7 @@ import org.gjt.sp.jedit.help.HelpViewer; import org.gjt.sp.util.Log; import org.gjt.sp.util.StringList; +import org.gjt.sp.util.StandardUtilities.StringCompare; import console.SystemShell.ConsoleState; //}}} @@ -222,8 +223,8 @@ int min = getMinArguments(); int max = getMaxArguments(); - if(args.size() < getMinArguments() - || (max != -1 && args.size() > getMaxArguments())) + if(args.size() < min + || (max != -1 && args.size() > max)) { error.print(console.getErrorColor(), jEdit.getProperty("console.shell.bad-args")); @@ -291,7 +292,7 @@ returnValue.add(ent.getKey() + "=" + ent.getValue()); } - Collections.sort(returnValue, new MiscUtilities.StringICaseCompare()); + Collections.sort(returnValue, new StringCompare<String>(true)); for(int i = 0; i < returnValue.size(); i++) { output.print(null,returnValue.get(i)); @@ -315,7 +316,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { String currentDirectory = getConsoleState( console).currentDirectory; @@ -386,7 +387,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { console.clear(); } @@ -401,7 +402,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { Stack<String> directoryStack = getConsoleState(console) .directoryStack; @@ -427,7 +428,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { for(int i = 0; i < args.size(); i++) { @@ -445,7 +446,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { String currentDirectory = getConsoleState( console).currentDirectory; @@ -481,7 +482,7 @@ returnValue.add(ent.getKey() + "=" + ent.getValue()); } - Collections.sort(returnValue, new MiscUtilities.StringICaseCompare()); + Collections.sort(returnValue, new StringCompare<String>(true)); for(int i = 0; i < returnValue.size(); i++) { @@ -506,7 +507,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { if(args.size() == 1) { @@ -541,7 +542,7 @@ * @deprecated */ public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { SystemShell.ConsoleState state = getConsoleState(console); @@ -566,10 +567,10 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { SystemShell.ConsoleState state = getConsoleState(console); - Stack directoryStack = state.directoryStack; + Stack<String> directoryStack = state.directoryStack; if(directoryStack.isEmpty()) { @@ -592,7 +593,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { SystemShell.ConsoleState state = getConsoleState(console); Stack<String> directoryStack = state.directoryStack; @@ -621,7 +622,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { ConsoleState cs = getConsoleState(console); @@ -639,7 +640,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { String currentDirectory = getConsoleState( console).currentDirectory; @@ -669,9 +670,9 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { - Map variables = ConsolePlugin.getSystemShell().getVariables(); + Map<String, String> variables = ConsolePlugin.getSystemShell().getVariables(); variables.put(args.elementAt(0),args.elementAt(1)); } } //}}} @@ -690,9 +691,9 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { - Hashtable aliases = ConsolePlugin.getSystemShell().getAliases(); + Hashtable<String, String> aliases = ConsolePlugin.getSystemShell().getAliases(); aliases.remove(args.elementAt(0)); } } //}}} @@ -711,9 +712,9 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { - Map variables = ConsolePlugin.getSystemShell().getVariables(); + Map<String, String> variables = ConsolePlugin.getSystemShell().getVariables(); variables.remove(args.elementAt(0)); } } //}}} @@ -732,7 +733,7 @@ } public void execute(Console console, Output output, - Output error, Vector args, Hashtable values) + Output error, Vector<String> args, Hashtable<String, Object> values) { output.print(null,jEdit.getProperty( "plugin.console.ConsolePlugin.version")); Modified: plugins/Console/trunk/console/commando/CommandoCommand.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoCommand.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/commando/CommandoCommand.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -38,7 +38,6 @@ import org.gjt.sp.jedit.jEdit; import org.gjt.sp.util.StringList; -import console.Console; // }}} Modified: plugins/Console/trunk/console/commando/CommandoDialog.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoDialog.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/commando/CommandoDialog.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -69,7 +69,6 @@ import org.xml.sax.helpers.XMLReaderFactory; import org.xml.sax.XMLReader; import org.xml.sax.InputSource; -import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; import console.Console; Modified: plugins/Console/trunk/console/commando/CommandoToolBar.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoToolBar.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/commando/CommandoToolBar.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -76,12 +76,12 @@ /** Remove the instance from the view */ public static void remove() { - Iterator itr = smToolBarMap.keySet().iterator(); + Iterator<View> itr = smToolBarMap.keySet().iterator(); while (itr.hasNext()) { - View v = (View) itr.next(); + View v = itr.next(); if (v == null) continue; - CommandoToolBar tb =(CommandoToolBar) smToolBarMap.get(v); + CommandoToolBar tb = smToolBarMap.get(v); if (tb != null) { v.removeToolBar(tb); } Modified: plugins/Console/trunk/console/options/ErrorsOptionPane.java =================================================================== --- plugins/Console/trunk/console/options/ErrorsOptionPane.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/options/ErrorsOptionPane.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -32,7 +32,6 @@ import javax.swing.Box; import javax.swing.BoxLayout; -import javax.swing.DefaultListModel; import javax.swing.JButton; import javax.swing.JList; import javax.swing.JOptionPane; @@ -166,7 +165,7 @@ protected void _load() { - errorListModel.load(); + errorListModel = ErrorListModel.load(); } //{{{ _save() method @@ -179,14 +178,6 @@ //{{{ Private members - //{{{ createMatcherListModel() method - /** @deprecated - use ErrorListModel.load() */ - private DefaultListModel createMatcherListModel() - { - return ErrorListModel.load(); - - } //}}} - //{{{ updateButtons() method private void updateButtons() Modified: plugins/Console/trunk/console/options/GeneralOptionPane.java =================================================================== --- plugins/Console/trunk/console/options/GeneralOptionPane.java 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/console/options/GeneralOptionPane.java 2010-10-27 22:18:13 UTC (rev 18869) @@ -38,6 +38,7 @@ import org.gjt.sp.jedit.MiscUtilities; import org.gjt.sp.jedit.jEdit; import org.gjt.sp.jedit.gui.FontSelector; +import org.gjt.sp.util.StandardUtilities.StringCompare; import console.gui.Label; //}}} @@ -82,7 +83,8 @@ addComponent(jEdit.getProperty("options.console.general.font"), font); String[] encodings = MiscUtilities.getEncodings(true); - Arrays.sort(encodings,new MiscUtilities.StringICaseCompare()); + // Arrays.sort(encodings,new MiscUtilities.StringICaseCompare()); + Arrays.sort(encodings, new StringCompare<String>(true)); encoding = new JComboBox(encodings); encoding.setEditable(true); encoding.setSelectedItem(jEdit.getProperty("console.encoding")); Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-10-27 17:14:11 UTC (rev 18868) +++ plugins/Console/trunk/docs/users-guide.xml 2010-10-27 22:18:13 UTC (rev 18869) @@ -1201,12 +1201,12 @@ </chapter> - <chapter id="cvssvn"> + <chapter id="svngit"> <title> Using Console with svn or git </title> <para> When you commit via the command line versions of <literal>git</literal> or <literal>svn</literal>, the tool spawns an external editor for you to enter text with the commit log. The editor that is spawned can be specified by the <literal>VISUAL</literal> (for svn) or <literal>EDITOR</literal> (for git) environment variables. When the editor starts, you are editing a temporary file. When the editor sub-process exits, the commit tool retrieves the temporary file's contents. </para> - <para> A batch file or shellscript that runs jEdit can be used as the <literal>VISUAL</literal> and <literal>EDITOR</literal> that is called by command line programs like <literal>git</literal> and <literal>svn</literal>, even when run from inside jEdit's Console plugin. Here are some command line options that you should consider passing jEdit when it is started by another program such as cvs/svn: + <para> A batch file or shellscript that runs jEdit can be used as the <literal>VISUAL</literal> and <literal>EDITOR</literal> that is called by command line programs like <literal>git</literal> and <literal>svn</literal>, even when run from inside jEdit's Console plugin. Here are some command line options that you should consider passing jEdit when it is started by another program such as svn: </para> <itemizedlist> @@ -1228,7 +1228,7 @@ <para> I set my <literal>EDITOR</literal> and <literal>VISUAL</literal> to <literal>jeditcommit</literal> from my regular jEdit startup script, so it is used only from jEdit. </para> -<para> In summary, if your batch file includes these options, you use it as the <literal>EDITOR</literal> when you commit from the regular command line, or from jEdit's console, and cvs/svn will wait until you close the buffer before sending the log message and your changes to the repository. +<para> In summary, if your batch file includes these options, you use it as the <literal>EDITOR</literal> when you commit from the regular command line, or from jEdit's console, and svn will wait until you close the buffer before sending the log message and your changes to the repository. </para> </chapter> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2010-11-23 22:25:03
|
Revision: 19010 http://jedit.svn.sourceforge.net/jedit/?rev=19010&view=rev Author: ezust Date: 2010-11-23 22:24:56 +0000 (Tue, 23 Nov 2010) Log Message: ----------- Bumping version. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/ConsolePlugin.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2010-11-23 20:18:44 UTC (rev 19009) +++ plugins/Console/trunk/Console.props 2010-11-23 22:24:56 UTC (rev 19010) @@ -3,7 +3,7 @@ # We provide a custom action set, so we must be activated at startup plugin.console.ConsolePlugin.activate=startup plugin.console.ConsolePlugin.name=Console -plugin.console.ConsolePlugin.version=4.4.2 +plugin.console.ConsolePlugin.version=4.4.3 # new jEdit 4.3 plugin API for short description. plugin.console.ConsolePlugin.description=A command line shell and plugin interface for adding other custom shells. Modified: plugins/Console/trunk/console/ConsolePlugin.java =================================================================== --- plugins/Console/trunk/console/ConsolePlugin.java 2010-11-23 20:18:44 UTC (rev 19009) +++ plugins/Console/trunk/console/ConsolePlugin.java 2010-11-23 22:24:56 UTC (rev 19010) @@ -374,10 +374,8 @@ if (buffer.isDirty()) { Object[] args = { buffer.getName() }; - int result = GUIUtilities.confirm(view, - "commando.not-saved-compile", args, - JOptionPane.YES_NO_CANCEL_OPTION, - JOptionPane.WARNING_MESSAGE); + int result = GUIUtilities.confirm(view, "commando.not-saved-compile", args, + JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE); if (result == JOptionPane.YES_OPTION) { if (!buffer.save(view, null, true)) Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-11-23 20:18:44 UTC (rev 19009) +++ plugins/Console/trunk/docs/users-guide.xml 2010-11-23 22:24:56 UTC (rev 19010) @@ -1536,6 +1536,14 @@ <appendix id="changes"> <title>Change log</title> <itemizedlist> + + <listitem id="ver4.4.3"><para> + <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.3pre99, JDK 1.5, ErrorList 1.4, + ProjectViewer 2.9 (optional). + <itemizedlist> + <listitem><para> No longer generates hidden commandos in the dialog (available via combobox selector). </para></listitem> + </itemizedlist> </para> + </listitem> <listitem id="ver4.4.2"><para> <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre99, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ker...@us...> - 2010-11-29 18:39:17
|
Revision: 19053 http://jedit.svn.sourceforge.net/jedit/?rev=19053&view=rev Author: kerik-sf Date: 2010-11-29 18:39:11 +0000 (Mon, 29 Nov 2010) Log Message: ----------- implement Plugin Feature Request #2648110 - Console : configurable history size Console requires jEdit 4.4 Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/Console.java plugins/Console/trunk/console/options/GeneralOptionPane.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2010-11-29 18:32:42 UTC (rev 19052) +++ plugins/Console/trunk/Console.props 2010-11-29 18:39:11 UTC (rev 19053) @@ -12,7 +12,7 @@ plugin.console.ConsolePlugin.docs=index.html plugin.console.ConsolePlugin.author=Slava Pestov, Alan Ezust -plugin.console.ConsolePlugin.depend.0=jedit 04.03.99.00 +plugin.console.ConsolePlugin.depend.0=jedit 04.04.99.00 plugin.console.ConsolePlugin.depend.1=jdk 1.5 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.9 # ProjectViewer is optional because Console only listens to events from it. @@ -82,6 +82,7 @@ options.console.general.font=Font: options.console.general.encoding=Character encoding: options.console.general.charlimit=Maximum scrollback buffer size (characters): +options.console.general.historylimit=Maximum number of commands to remember: options.console.general.usejEditBgColor=Use jEdit bgColor options.console.general.bgColor=Console background: options.console.general.plainColor=Plain text: Modified: plugins/Console/trunk/console/Console.java =================================================================== --- plugins/Console/trunk/console/Console.java 2010-11-29 18:32:42 UTC (rev 19052) +++ plugins/Console/trunk/console/Console.java 2010-11-29 18:39:11 UTC (rev 19053) @@ -5,6 +5,7 @@ * * Copyright (C) 2000, 2005 Slava Pestov * parts Copyright (C) 2006 Alan Ezust + * parts Copyright (C) 2010 Eric Le Lay * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -200,7 +201,21 @@ return null; String name = shell.getName(); - text.setHistoryModel(getShellHistory(shell)); + String shellHistory = getShellHistory(shell); + String limit = jEdit.getProperty("console.historyLimit"); + if(limit != null) + { + try + { + HistoryModel.getModel(shellHistory).setSize( + Integer.parseInt(limit)); + } + catch(NumberFormatException nfe) + { + jEdit.unsetProperty("console.historyLimit"); + } + } + text.setHistoryModel(shellHistory); shellState = shellStateMap.get(name); if(shellState == null) Modified: plugins/Console/trunk/console/options/GeneralOptionPane.java =================================================================== --- plugins/Console/trunk/console/options/GeneralOptionPane.java 2010-11-29 18:32:42 UTC (rev 19052) +++ plugins/Console/trunk/console/options/GeneralOptionPane.java 2010-11-29 18:39:11 UTC (rev 19053) @@ -4,6 +4,7 @@ * :folding=explicit:collapseFolds=1: * * Copyright (C) 1999, 2004 Slava Pestov + * parts Copyright (C) 2010 Eric Le Lay * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -39,6 +40,7 @@ import org.gjt.sp.jedit.jEdit; import org.gjt.sp.jedit.gui.FontSelector; import org.gjt.sp.util.StandardUtilities.StringCompare; +import org.gjt.sp.jedit.gui.HistoryModel ; import console.gui.Label; //}}} @@ -59,6 +61,7 @@ private JButton errorColor; private JCheckBox showWelcomeMessage; private JTextField limit ; + private JTextField limitHistory ; // }}} @@ -95,6 +98,10 @@ limit = new JTextField(jEdit.getProperty("console.outputLimit")); addComponent(limitLabel, limit); + Label limitHistoryLabel = new Label("options.console.general.historylimit"); + limitHistory = new JTextField(jEdit.getProperty("console.historyLimit", + String.valueOf(HistoryModel.getDefaultMax()))); + addComponent(limitHistoryLabel, limitHistory); usejEditBgColor = new JButton("reset"); usejEditBgColor.addActionListener(this); @@ -127,6 +134,13 @@ else jEdit.unsetProperty("console.outputLimit"); + String limithist = limitHistory.getText(); + if(limithist != null && limithist.length() > 0 + && !String.valueOf(HistoryModel.getDefaultMax()).equals(limithist)) + jEdit.setProperty("console.historyLimit", limithist); + else + jEdit.unsetProperty("console.historyLimit"); + jEdit.setProperty("console.encoding", (String)encoding.getSelectedItem()); Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-11-29 18:32:42 UTC (rev 19052) +++ plugins/Console/trunk/docs/users-guide.xml 2010-11-29 18:39:11 UTC (rev 19053) @@ -1538,10 +1538,11 @@ <itemizedlist> <listitem id="ver4.4.3"><para> - <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.3pre99, JDK 1.5, ErrorList 1.4, + <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.4, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> No longer generates hidden commandos in the dialog (available via combobox selector). </para></listitem> + <listitem><para> Configurable command history size (#2648110 - Eric Le Lay). </para></listitem> </itemizedlist> </para> </listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <k_s...@us...> - 2010-12-14 17:21:17
|
Revision: 19137 http://jedit.svn.sourceforge.net/jedit/?rev=19137&view=rev Author: k_satoda Date: 2010-12-14 17:21:11 +0000 (Tue, 14 Dec 2010) Log Message: ----------- Avoided occasional performance down with large output when outputLimit is not set. Modified Paths: -------------- plugins/Console/trunk/console/Console.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/console/Console.java =================================================================== --- plugins/Console/trunk/console/Console.java 2010-12-14 16:48:05 UTC (rev 19136) +++ plugins/Console/trunk/console/Console.java 2010-12-14 17:21:11 UTC (rev 19137) @@ -1035,10 +1035,15 @@ int newLength = fb.getDocument().getLength() - length + str.length(); fb.replace(offset, length, str, attrs); - int limit = jEdit.getIntegerProperty("console.outputLimit", Integer.MAX_VALUE); + int limit = jEdit.getIntegerProperty("console.outputLimit", DEFAULT_LIMIT); if(newLength > limit) fb.remove(0, newLength - limit - 1); } //}}} + + // Not so large default limit to avoid performance down + // with large output. + // This will be sufficient to first use. + private final int DEFAULT_LIMIT = 80/*column*/ * 1000/*lines*/; } //}}} // {{{ EvalAction class Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2010-12-14 16:48:05 UTC (rev 19136) +++ plugins/Console/trunk/docs/users-guide.xml 2010-12-14 17:21:11 UTC (rev 19137) @@ -1543,6 +1543,7 @@ <itemizedlist> <listitem><para> No longer generates hidden commandos in the dialog (available via combobox selector). </para></listitem> <listitem><para> Configurable command history size (#2648110 - Eric Le Lay). </para></listitem> + <listitem><para> Avoided occasional performance down with large output when maximum scroll buffer size is not set. (Kazutoshi Satoda). </para></listitem> </itemizedlist> </para> </listitem> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-01-14 23:07:46
|
Revision: 19195 http://jedit.svn.sourceforge.net/jedit/?rev=19195&view=rev Author: ezust Date: 2011-01-14 23:07:40 +0000 (Fri, 14 Jan 2011) Log Message: ----------- File hyperlinks (#3103198 - Damien Radtke) Version req is 4.4pre1. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/Console.java plugins/Console/trunk/console/ConsolePane.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2011-01-14 22:53:48 UTC (rev 19194) +++ plugins/Console/trunk/Console.props 2011-01-14 23:07:40 UTC (rev 19195) @@ -12,7 +12,7 @@ plugin.console.ConsolePlugin.docs=index.html plugin.console.ConsolePlugin.author=Slava Pestov, Alan Ezust -plugin.console.ConsolePlugin.depend.0=jedit 04.04.99.00 +plugin.console.ConsolePlugin.depend.0=jedit 04.04.01.00 plugin.console.ConsolePlugin.depend.1=jdk 1.5 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.9 # ProjectViewer is optional because Console only listens to events from it. Modified: plugins/Console/trunk/console/Console.java =================================================================== --- plugins/Console/trunk/console/Console.java 2011-01-14 22:53:48 UTC (rev 19194) +++ plugins/Console/trunk/console/Console.java 2011-01-14 23:07:40 UTC (rev 19195) @@ -52,6 +52,7 @@ import org.gjt.sp.jedit.*; import org.gjt.sp.jedit.View; import org.gjt.sp.jedit.gui.*; +import org.gjt.sp.jedit.io.VFSManager; import org.gjt.sp.jedit.msg.DockableWindowUpdate; import org.gjt.sp.jedit.msg.VFSPathSelected; import org.gjt.sp.jedit.msg.PluginUpdate; @@ -996,12 +997,49 @@ //{{{ writeSafely() method private void writeSafely(AttributeSet attrs, String msg) { + if(attrs != null && StyleConstants.getIcon(attrs) != null) + msg = " "; try { - if(attrs != null && StyleConstants.getIcon(attrs) != null) - msg = " "; - scrollback.insertString(scrollback.getLength(), - msg,attrs); + // Rather than just print the output, this code searches through it line-by-line + // looking for a file-reference match. If it finds one, then it creates a new + // AttributeSet with underline for embedding a link to that file in the output + + // This code only supports java exceptions; it should be extended to support other + // programs as well + String[] lines = msg.split("\n"); + for (int i = 0; i<lines.length; i++) { + String token = lines[i]; + // This regular expression tests for a java exception + if (token.matches("^\\s*?at .*?\\(.*?\\.java:\\d*?\\)$")) { + // Create new attribute set with a click action + MutableAttributeSet linkAttrs = new SimpleAttributeSet(attrs); + StyleConstants.setUnderline(linkAttrs, true); + linkAttrs.addAttribute(text.Actions, new Object[] { new JavaExceptionFileReference(token) }); + + // This is probably doing it the hard way, but all this does is limit the link + // to inside the parentheses; this makes the result cleaner + int pre = token.indexOf("(")+1; + int post = token.lastIndexOf(")"); + scrollback.insertString(scrollback.getLength(), + token.substring(0, pre), attrs); + scrollback.insertString(scrollback.getLength(), + token.substring(pre, post), linkAttrs); + scrollback.insertString(scrollback.getLength(), + token.substring(post), attrs); + } else { + scrollback.insertString(scrollback.getLength(), token, attrs); + } + // A workaround to make sure that newlines get printed + if (i<(lines.length-1)) { + scrollback.insertString(scrollback.getLength(), "\n", attrs); + } + } + if (msg.endsWith("\n")) + scrollback.insertString(scrollback.getLength(), "\n", attrs); + + //scrollback.insertString(scrollback.getLength(), + // msg,attrs); } catch(BadLocationException bl) { @@ -1012,6 +1050,52 @@ } //}}} } //}}} + //{{{ JavaExceptionFileReference class + /** + * Experimental support for adding hyperlinks to files from java exceptions. + * This class should probably go somewhere else + */ + private class JavaExceptionFileReference extends AbstractAction { + + private String lineText; + + public JavaExceptionFileReference(String lineText) { + super("Go to location"); + // Trim off whitespace and the leading "at " + this.lineText = lineText.trim().substring(3); + } + + public void actionPerformed(ActionEvent e) { + // This is also probably pulling this information out the hard way, + // but it simply pulls out the class name (ignoring the method name) and + // line number. + + // The file is located by converting the class name to a + // relative file path, and checking to see if that file exists relative + // to the current working directory. + String clazz = lineText.substring(0, lineText.lastIndexOf(".", + lineText.indexOf("("))); + Integer line = Integer.valueOf(lineText.substring(lineText.lastIndexOf(":")+1, lineText.lastIndexOf(")"))); + String file = clazz.replace(".", File.separator)+".java"; + + // TODO: Support searching through the classpath + // Also add support for opening files in jar archives w/ Archive plugin + SystemShell system = (SystemShell) Shell.getShell("System"); + String workingDirectory = system.getConsoleState(Console.this).currentDirectory; + File f = new File(workingDirectory, file); + if (f.exists()) { + // Open the file, then jump to the line + Buffer buffer = jEdit.openFile(getView(), f.getPath()); + VFSManager.waitForRequests(); + // ???: Just go to the line, or select it? + getView().getTextArea().setCaretPosition(buffer.getLineStartOffset(line-1)); + getView().getTextArea().requestFocus(); + } + } + } + //}}} + + // {{{ LengthFilter class static private class LengthFilter extends DocumentFilter { Modified: plugins/Console/trunk/console/ConsolePane.java =================================================================== --- plugins/Console/trunk/console/ConsolePane.java 2011-01-14 22:53:48 UTC (rev 19194) +++ plugins/Console/trunk/console/ConsolePane.java 2011-01-14 23:07:40 UTC (rev 19195) @@ -324,7 +324,7 @@ if (actions == null || actions.length == 0) return; - if (actions.length == 0) + if (actions.length == 1) { ((Action) actions[0]).actionPerformed(new ActionEvent(this, ActionEvent.ACTION_PERFORMED, null)); Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-01-14 22:53:48 UTC (rev 19194) +++ plugins/Console/trunk/docs/users-guide.xml 2011-01-14 23:07:40 UTC (rev 19195) @@ -1542,6 +1542,7 @@ ProjectViewer 2.9 (optional). <itemizedlist> <listitem><para> No longer generates hidden commandos in the dialog (available via combobox selector). </para></listitem> + <listitem><para> File hyperlinks (#3103198 - Damien Radtke) </para></listitem> <listitem><para> Configurable command history size (#2648110 - Eric Le Lay). </para></listitem> <listitem><para> Avoided occasional performance down with large output when maximum scroll buffer size is not set. (Kazutoshi Satoda). </para></listitem> </itemizedlist> </para> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-01-21 04:55:29
|
Revision: 19239 http://jedit.svn.sourceforge.net/jedit/?rev=19239&view=rev Author: ezust Date: 2011-01-21 04:55:23 +0000 (Fri, 21 Jan 2011) Log Message: ----------- Rolling back 19195. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/Console.java plugins/Console/trunk/console/ConsolePane.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2011-01-21 03:08:07 UTC (rev 19238) +++ plugins/Console/trunk/Console.props 2011-01-21 04:55:23 UTC (rev 19239) @@ -13,7 +13,7 @@ plugin.console.ConsolePlugin.author=Slava Pestov, Alan Ezust plugin.console.ConsolePlugin.depend.0=jedit 04.04.01.00 -plugin.console.ConsolePlugin.depend.1=jdk 1.5 +plugin.console.ConsolePlugin.depend.1=jdk 1.6 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.9 # ProjectViewer is optional because Console only listens to events from it. plugin.console.ConsolePlugin.depend.3=optional plugin projectviewer.ProjectPlugin 3.0 Modified: plugins/Console/trunk/console/Console.java =================================================================== --- plugins/Console/trunk/console/Console.java 2011-01-21 03:08:07 UTC (rev 19238) +++ plugins/Console/trunk/console/Console.java 2011-01-21 04:55:23 UTC (rev 19239) @@ -52,7 +52,6 @@ import org.gjt.sp.jedit.*; import org.gjt.sp.jedit.View; import org.gjt.sp.jedit.gui.*; -import org.gjt.sp.jedit.io.VFSManager; import org.gjt.sp.jedit.msg.DockableWindowUpdate; import org.gjt.sp.jedit.msg.VFSPathSelected; import org.gjt.sp.jedit.msg.PluginUpdate; @@ -997,49 +996,12 @@ //{{{ writeSafely() method private void writeSafely(AttributeSet attrs, String msg) { - if(attrs != null && StyleConstants.getIcon(attrs) != null) - msg = " "; try { - // Rather than just print the output, this code searches through it line-by-line - // looking for a file-reference match. If it finds one, then it creates a new - // AttributeSet with underline for embedding a link to that file in the output - - // This code only supports java exceptions; it should be extended to support other - // programs as well - String[] lines = msg.split("\n"); - for (int i = 0; i<lines.length; i++) { - String token = lines[i]; - // This regular expression tests for a java exception - if (token.matches("^\\s*?at .*?\\(.*?\\.java:\\d*?\\)$")) { - // Create new attribute set with a click action - MutableAttributeSet linkAttrs = new SimpleAttributeSet(attrs); - StyleConstants.setUnderline(linkAttrs, true); - linkAttrs.addAttribute(text.Actions, new Object[] { new JavaExceptionFileReference(token) }); - - // This is probably doing it the hard way, but all this does is limit the link - // to inside the parentheses; this makes the result cleaner - int pre = token.indexOf("(")+1; - int post = token.lastIndexOf(")"); - scrollback.insertString(scrollback.getLength(), - token.substring(0, pre), attrs); - scrollback.insertString(scrollback.getLength(), - token.substring(pre, post), linkAttrs); - scrollback.insertString(scrollback.getLength(), - token.substring(post), attrs); - } else { - scrollback.insertString(scrollback.getLength(), token, attrs); - } - // A workaround to make sure that newlines get printed - if (i<(lines.length-1)) { - scrollback.insertString(scrollback.getLength(), "\n", attrs); - } - } - if (msg.endsWith("\n")) - scrollback.insertString(scrollback.getLength(), "\n", attrs); - - //scrollback.insertString(scrollback.getLength(), - // msg,attrs); + if(attrs != null && StyleConstants.getIcon(attrs) != null) + msg = " "; + scrollback.insertString(scrollback.getLength(), + msg,attrs); } catch(BadLocationException bl) { @@ -1050,52 +1012,6 @@ } //}}} } //}}} - //{{{ JavaExceptionFileReference class - /** - * Experimental support for adding hyperlinks to files from java exceptions. - * This class should probably go somewhere else - */ - private class JavaExceptionFileReference extends AbstractAction { - - private String lineText; - - public JavaExceptionFileReference(String lineText) { - super("Go to location"); - // Trim off whitespace and the leading "at " - this.lineText = lineText.trim().substring(3); - } - - public void actionPerformed(ActionEvent e) { - // This is also probably pulling this information out the hard way, - // but it simply pulls out the class name (ignoring the method name) and - // line number. - - // The file is located by converting the class name to a - // relative file path, and checking to see if that file exists relative - // to the current working directory. - String clazz = lineText.substring(0, lineText.lastIndexOf(".", - lineText.indexOf("("))); - Integer line = Integer.valueOf(lineText.substring(lineText.lastIndexOf(":")+1, lineText.lastIndexOf(")"))); - String file = clazz.replace(".", File.separator)+".java"; - - // TODO: Support searching through the classpath - // Also add support for opening files in jar archives w/ Archive plugin - SystemShell system = (SystemShell) Shell.getShell("System"); - String workingDirectory = system.getConsoleState(Console.this).currentDirectory; - File f = new File(workingDirectory, file); - if (f.exists()) { - // Open the file, then jump to the line - Buffer buffer = jEdit.openFile(getView(), f.getPath()); - VFSManager.waitForRequests(); - // ???: Just go to the line, or select it? - getView().getTextArea().setCaretPosition(buffer.getLineStartOffset(line-1)); - getView().getTextArea().requestFocus(); - } - } - } - //}}} - - // {{{ LengthFilter class static private class LengthFilter extends DocumentFilter { Modified: plugins/Console/trunk/console/ConsolePane.java =================================================================== --- plugins/Console/trunk/console/ConsolePane.java 2011-01-21 03:08:07 UTC (rev 19238) +++ plugins/Console/trunk/console/ConsolePane.java 2011-01-21 04:55:23 UTC (rev 19239) @@ -324,7 +324,7 @@ if (actions == null || actions.length == 0) return; - if (actions.length == 1) + if (actions.length == 0) { ((Action) actions[0]).actionPerformed(new ActionEvent(this, ActionEvent.ACTION_PERFORMED, null)); Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-01-21 03:08:07 UTC (rev 19238) +++ plugins/Console/trunk/docs/users-guide.xml 2011-01-21 04:55:23 UTC (rev 19239) @@ -1538,11 +1538,10 @@ <itemizedlist> <listitem id="ver4.4.3"><para> - <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.4, JDK 1.5, ErrorList 1.4, - ProjectViewer 2.9 (optional). + <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.4pre1, JDK 1.6, ErrorList 1.9, + ProjectViewer 3.0 (optional). <itemizedlist> <listitem><para> No longer generates hidden commandos in the dialog (available via combobox selector). </para></listitem> - <listitem><para> File hyperlinks (#3103198 - Damien Radtke) </para></listitem> <listitem><para> Configurable command history size (#2648110 - Eric Le Lay). </para></listitem> <listitem><para> Avoided occasional performance down with large output when maximum scroll buffer size is not set. (Kazutoshi Satoda). </para></listitem> </itemizedlist> </para> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-02-03 20:32:45
|
Revision: 19336 http://jedit.svn.sourceforge.net/jedit/?rev=19336&view=rev Author: ezust Date: 2011-02-03 20:32:38 +0000 (Thu, 03 Feb 2011) Log Message: ----------- made $pwd return correct thing. made ver print more meaningful information. Modified Paths: -------------- plugins/Console/trunk/console/SystemShell.java plugins/Console/trunk/console/SystemShellBuiltIn.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/console/SystemShell.java =================================================================== --- plugins/Console/trunk/console/SystemShell.java 2011-02-03 07:25:21 UTC (rev 19335) +++ plugins/Console/trunk/console/SystemShell.java 2011-02-03 20:32:38 UTC (rev 19336) @@ -573,6 +573,8 @@ if (view == null) return variables.get(varName); + // ick, I don't like this at all... multiple consoles/view? + ConsoleState cs = getConsoleState(ConsolePlugin.getConsole(view)); String expansion; // Expand some special variables @@ -599,6 +601,9 @@ } else if (varName.equals("f")) expansion = buffer.getPath(); + else if (varName.equalsIgnoreCase("pwd")) { + expansion = cs.currentDirectory; + } else if (varName.equals("n")) expansion = buffer.getName(); else if (varName.equals("c")) @@ -728,6 +733,7 @@ aliases.put("pwd", "%printwd"); aliases.put("aliases", "%aliases"); aliases.put("alias", "%alias"); + aliases.put("ver", "%version"); aliases.put("-", "%cd -"); Modified: plugins/Console/trunk/console/SystemShellBuiltIn.java =================================================================== --- plugins/Console/trunk/console/SystemShellBuiltIn.java 2011-02-03 07:25:21 UTC (rev 19335) +++ plugins/Console/trunk/console/SystemShellBuiltIn.java 2011-02-03 20:32:38 UTC (rev 19336) @@ -734,9 +734,9 @@ public void execute(Console console, Output output, Output error, Vector<String> args, Hashtable<String, Object> values) - { - output.print(null,jEdit.getProperty( - "plugin.console.ConsolePlugin.version")); + { + output.print(null,"jEdit " + jEdit.getBuild() + + " Console " + jEdit.getProperty("plugin.console.ConsolePlugin.version")); } } //}}} Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-02-03 07:25:21 UTC (rev 19335) +++ plugins/Console/trunk/docs/users-guide.xml 2011-02-03 20:32:38 UTC (rev 19336) @@ -1,4 +1,10 @@ -<?xml version="1.0"?> +<?xml version="1.0" encoding="UTF-8"?> +<!-- jEdit buffer-local properties: --> +<!-- maxLineLen=0:wrap=soft:indentSize=1:noTabs=true: --> +<!-- jEdit user's guide --> +<!-- (C) 1999, 2004 Slava Pestov --> +<!-- (C) 2001, 2002 John Gellene --> +<!-- (C) 2005, 2011 Alan Ezust --> <book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation='http://www.docbook.org/xsd/4.4/docbook.xsd' > <!-- Console user's guide --> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-07-30 18:31:56
|
Revision: 19717 http://jedit.svn.sourceforge.net/jedit/?rev=19717&view=rev Author: ezust Date: 2011-07-30 18:31:49 +0000 (Sat, 30 Jul 2011) Log Message: ----------- Option to set default shell, or remember last selected shell. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/Console.java plugins/Console/trunk/console/options/GeneralOptionPane.java Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2011-07-30 18:17:22 UTC (rev 19716) +++ plugins/Console/trunk/Console.props 2011-07-30 18:31:49 UTC (rev 19717) @@ -91,6 +91,7 @@ options.console.general.errorColor=Error messages: options.console.general.infoColor=Information messages: options.console.general.changedir=Tree selection options: +options.last-selected=Last Selected options.console.general.changedir.nodeselect=On VFS node select, cd to node dir options.console.general.changedir.pvchange=On Project change, cd to project root dir # options.console.general.changedir.pvselect=On ProjectViewer select node, cd to node dir Modified: plugins/Console/trunk/console/Console.java =================================================================== --- plugins/Console/trunk/console/Console.java 2011-07-30 18:17:22 UTC (rev 19716) +++ plugins/Console/trunk/console/Console.java 2011-07-30 18:31:49 UTC (rev 19717) @@ -122,7 +122,13 @@ initGUI(); propertiesChanged(); - Shell s = Shell.getShell("System"); + String defShell = jEdit.getProperty("console.shell.default", "System"); + if (defShell.equals(jEdit.getProperty("options.last-selected"))) { + defShell = jEdit.getProperty("console.shell"); + } + + Shell s = Shell.getShell(defShell); + if (s == null) s = Shell.getShell("System"); setShell(s); load(); @@ -225,7 +231,7 @@ shell.printInfoMessage(shellState); shell.printPrompt(this,shellState); } - + jEdit.setProperty("console.shell", name); text.setDocument(shellState.scrollback); if (shell != this.currentShell) { shellCombo.setSelectedItem(name); Modified: plugins/Console/trunk/console/options/GeneralOptionPane.java =================================================================== --- plugins/Console/trunk/console/options/GeneralOptionPane.java 2011-07-30 18:17:22 UTC (rev 19716) +++ plugins/Console/trunk/console/options/GeneralOptionPane.java 2011-07-30 18:31:49 UTC (rev 19717) @@ -40,8 +40,10 @@ import org.gjt.sp.jedit.jEdit; import org.gjt.sp.jedit.gui.FontSelector; import org.gjt.sp.util.StandardUtilities.StringCompare; +import org.gjt.sp.util.StringList; import org.gjt.sp.jedit.gui.HistoryModel ; +import console.Shell; import console.gui.Label; //}}} @@ -52,6 +54,7 @@ private FontSelector font; private JComboBox encoding; + private JComboBox defaultShell; private JButton bgColor; private JButton usejEditBgColor; private JButton plainColor; @@ -76,6 +79,19 @@ protected void _init() { + StringList sl = new StringList(Shell.getShellNames()); + int idx = sl.indexOf("System"); + if (idx != 0) { + String other = sl.get(0); + sl.set(idx, other); + sl.set(0, "System"); + } + sl.add(jEdit.getProperty("options.last-selected")); + defaultShell = new JComboBox(sl.toArray()); + String ds = jEdit.getProperty("console.shell.default", "System"); + defaultShell.setSelectedItem(ds); + addComponent(jEdit.getProperty("options.console.general.defaultshell", "Default Shell:"), + defaultShell); showWelcomeMessage = new JCheckBox(); showWelcomeMessage.setText(jEdit.getProperty("options.console.general.welcome")); @@ -94,6 +110,7 @@ addComponent(jEdit.getProperty("options.console.general.encoding"), encoding); + Label limitLabel = new Label("options.console.general.charlimit"); limit = new JTextField(jEdit.getProperty("console.outputLimit")); addComponent(limitLabel, limit); @@ -144,6 +161,9 @@ jEdit.setProperty("console.encoding", (String)encoding.getSelectedItem()); + jEdit.setProperty("console.shell.default", + (String)defaultShell.getSelectedItem()); + jEdit.setColorProperty("console.bgColor", bgColor.getBackground()); jEdit.setColorProperty("console.plainColor", This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-11-10 20:05:44
|
Revision: 20281 http://jedit.svn.sourceforge.net/jedit/?rev=20281&view=rev Author: ezust Date: 2011-11-10 20:05:38 +0000 (Thu, 10 Nov 2011) Log Message: ----------- Catch viewupdate.closed ebmessages and remove console from the editbus. Helps avoid a NPE on exit caused by the project tree listener, for example. Modified Paths: -------------- plugins/Console/trunk/build.xml plugins/Console/trunk/console/ConsolePlugin.java plugins/Console/trunk/console/commando/CommandoToolBar.java Modified: plugins/Console/trunk/build.xml =================================================================== --- plugins/Console/trunk/build.xml 2011-11-10 18:48:07 UTC (rev 20280) +++ plugins/Console/trunk/build.xml 2011-11-10 20:05:38 UTC (rev 20281) @@ -9,8 +9,8 @@ <property name="plugin.dependencies" value="ErrorList,InfoViewer,ProjectViewer" /> <property name="docs-proc.target" value="xsltproc" /> <property name="dist.target" value="dist.complete" /> - <property name="compiler.source" value="1.5" /> - <property name="compiler.target" value="1.5" /> + <property name="compiler.source" value="1.6" /> + <property name="compiler.target" value="1.6" /> <property name="jedit.plugins.dir" value="${install.dir}" /> <import file="${build.support}/plugin-build.xml" /> Modified: plugins/Console/trunk/console/ConsolePlugin.java =================================================================== --- plugins/Console/trunk/console/ConsolePlugin.java 2011-11-10 18:48:07 UTC (rev 20280) +++ plugins/Console/trunk/console/ConsolePlugin.java 2011-11-10 20:05:38 UTC (rev 20281) @@ -180,6 +180,12 @@ View v = vmsg.getView(); CommandoToolBar.create(v); } + if (vmsg.getWhat() == ViewUpdate.CLOSED) { + View v = vmsg.getView(); + CommandoToolBar.remove(v); + Console c = getConsole(v); + c.unload(); + } } // }}} Modified: plugins/Console/trunk/console/commando/CommandoToolBar.java =================================================================== --- plugins/Console/trunk/console/commando/CommandoToolBar.java 2011-11-10 18:48:07 UTC (rev 20280) +++ plugins/Console/trunk/console/commando/CommandoToolBar.java 2011-11-10 20:05:38 UTC (rev 20281) @@ -73,7 +73,7 @@ // }}} // {{{ remove() - /** Remove the instance from the view */ + /** Remove the instance from the all views */ public static void remove() { Iterator<View> itr = smToolBarMap.keySet().iterator(); @@ -90,6 +90,20 @@ } // }}} + /** Remove the instance from the all views */ + public static void remove(View v) + { + CommandoToolBar tb = smToolBarMap.get(v); + if (tb != null) { + v.removeToolBar(tb); + smToolBarMap.remove(v); + } + + } + // }}} + + + // {{{ CommandoToolBar constructor private CommandoToolBar(View dockable) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-11-13 17:07:58
|
Revision: 20337 http://jedit.svn.sourceforge.net/jedit/?rev=20337&view=rev Author: ezust Date: 2011-11-13 17:07:52 +0000 (Sun, 13 Nov 2011) Log Message: ----------- Added tooltip. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/options/GeneralOptionPane.java plugins/Console/trunk/docs/users-guide.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2011-11-13 16:54:43 UTC (rev 20336) +++ plugins/Console/trunk/Console.props 2011-11-13 17:07:52 UTC (rev 20337) @@ -3,7 +3,7 @@ # We provide a custom action set, so we must be activated at startup plugin.console.ConsolePlugin.activate=startup plugin.console.ConsolePlugin.name=Console -plugin.console.ConsolePlugin.version=4.4.3 +plugin.console.ConsolePlugin.version=4.4.4 # new jEdit 4.3 plugin API for short description. plugin.console.ConsolePlugin.description=A command line shell and plugin interface for adding other custom shells. @@ -12,11 +12,11 @@ plugin.console.ConsolePlugin.docs=index.html plugin.console.ConsolePlugin.author=Slava Pestov, Alan Ezust -plugin.console.ConsolePlugin.depend.0=jedit 04.04.01.00 +plugin.console.ConsolePlugin.depend.0=jedit 04.04.99.01 plugin.console.ConsolePlugin.depend.1=jdk 1.6 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.9 # ProjectViewer is optional because Console only listens to events from it. -plugin.console.ConsolePlugin.depend.3=optional plugin projectviewer.ProjectPlugin 3.0 +plugin.console.ConsolePlugin.depend.3=optional plugin projectviewer.ProjectPlugin 3.0.1 # Menu plugin.console.ConsolePlugin.menu=console run-last-console-command - \ @@ -83,7 +83,7 @@ options.console.general.encoding=Character encoding: options.console.general.charlimit=Maximum scrollback buffer size (characters): options.console.general.historylimit=Maximum number of commands to remember: -options.console.general.usejEditBgColor=Use jEdit bgColor +options.console.general.bgColor.tooltip=Ignored if jEdit's Global Apperance option: "Use TextArea colors in all components" is checked. options.console.general.bgColor=Console background: options.console.general.plainColor=Plain text: options.console.general.caretColor=Caret: Modified: plugins/Console/trunk/console/options/GeneralOptionPane.java =================================================================== --- plugins/Console/trunk/console/options/GeneralOptionPane.java 2011-11-13 16:54:43 UTC (rev 20336) +++ plugins/Console/trunk/console/options/GeneralOptionPane.java 2011-11-13 17:07:52 UTC (rev 20337) @@ -124,8 +124,10 @@ addComponent(jEdit.getProperty("options.console.general.bgColor"), bgColor = createColorButton("console.bgColor")); + bgColor.setToolTipText(jEdit.getProperty("options.console.general.bgColor.tooltip")); addComponent(jEdit.getProperty("options.console.general.plainColor"), plainColor = createColorButton("console.plainColor")); + plainColor.setToolTipText(jEdit.getProperty("options.console.general.bgColor.tooltip")); addComponent(jEdit.getProperty("options.console.general.caretColor"), caretColor = createColorButton("console.caretColor")); addComponent(jEdit.getProperty("options.console.general.infoColor"), Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-11-13 16:54:43 UTC (rev 20336) +++ plugins/Console/trunk/docs/users-guide.xml 2011-11-13 17:07:52 UTC (rev 20337) @@ -1557,6 +1557,16 @@ <title>Change log</title> <itemizedlist> + <listitem id="ver4.4.4"><para> + <emphasis role="bold">Version 4.4.4</emphasis> Requires jEdit 4.4.2, JDK 1.6, ErrorList 1.9, + ProjectViewer 3 (optional). + <itemizedlist> + <listitem><para> Respects jEdit's "use textArea colors" appearance option. </para></listitem> + + </itemizedlist> + </para></listitem> + + <listitem id="ver4.4.3"><para> <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.4pre1, JDK 1.6, ErrorList 1.9, ProjectViewer 3.0 (optional). This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-11-20 01:30:51
|
Revision: 20386 http://jedit.svn.sourceforge.net/jedit/?rev=20386&view=rev Author: ezust Date: 2011-11-20 01:30:44 +0000 (Sun, 20 Nov 2011) Log Message: ----------- 3153058 - Console Patch (w/ compilation improvements) Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/actions.xml plugins/Console/trunk/console/ConsoleMenuProvider.java plugins/Console/trunk/console/ConsolePlugin.java plugins/Console/trunk/console/options/CompileRunOptionPane.java plugins/Console/trunk/docs/users-guide.xml plugins/Console/trunk/services.xml Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/Console.props 2011-11-20 01:30:44 UTC (rev 20386) @@ -12,7 +12,7 @@ plugin.console.ConsolePlugin.docs=index.html plugin.console.ConsolePlugin.author=Slava Pestov, Alan Ezust -plugin.console.ConsolePlugin.depend.0=jedit 04.04.99.01 +plugin.console.ConsolePlugin.depend.0=jedit 04.04.99.02 plugin.console.ConsolePlugin.depend.1=jdk 1.6 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.9 # ProjectViewer is optional because Console only listens to events from it. @@ -21,16 +21,18 @@ # Menu plugin.console.ConsolePlugin.menu=console run-last-console-command - \ commando - commando-compile commando-run console-clear - \ - browse-commando-directory rescan-commands - \ - chdir-pv-selected chdir-pv-root - + browse-commando-directory rescan-commands - +#chdir-pv-selected chdir-pv-root - plugin.console.ConsolePlugin.menu.code=new console.ConsoleMenuProvider(); console.label=Console run-last-console-command.label=Run Last Command commando.label=Commando... commando-compile.label=Compile Current Buffer... commando-run.label=Run Current Buffer... -chdir-pv-selected.label=cd to ProjectViewer selected node dir -chdir-pv-root.label=cd to ProjectViewer root dir +chdir-pv-selected.label=CD to Selected Node +chdir-pv-root.label=CD to Root +project-compile.label=Compile Project +project-run.label=Run Project browse-commando-directory.label=Browse Commando Directory rescan-commands.label=Regen dynamic menus @@ -149,6 +151,20 @@ options.console.compile-run.compiler=Compiler options.console.compile-run.interpreter=Interpreter +# Because this uses a JLabel, the HTML formatting is necessary +options.console.compile-run.help=<HTML>Useful environment variables:<BLOCKQUOTE> \ + $f - full path of the current buffer<BR /> \ + $d - parent directory of the current buffer<BR /> \ + $n - name of the current buffer</BLOCKQUOTE> \ + Read the Console plugin documentation for a full list of available \ + environment variables.</HTML> + +options.pv.commands.label=Commands + +options.pv.commands.help=Commands are run relative to the project's root directory +options.pv.commands.compile=Compile Project: +options.pv.commands.run=Run Project: + ### SystemShell console.shell.info.toggle=true console.shell.info=This shell runs operating system processes.\n\ @@ -452,3 +468,10 @@ mode.shellscript.commando.run=execute mode.makefile.commando.compile=make +# Project compilation +console.pv.not-installed.title=ProjectViewer not installed +console.pv.not-installed.message=This action requires the ProjectViewer plugin. \ + Please install it and try again. +console.pv.no-active-project.title=No Active Project +console.pv.no-active-project.message=Select a project in the ProjectViewer \ + dockable and try again. Modified: plugins/Console/trunk/actions.xml =================================================================== --- plugins/Console/trunk/actions.xml 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/actions.xml 2011-11-20 01:30:44 UTC (rev 20386) @@ -30,6 +30,16 @@ console.ConsolePlugin.run(view,buffer); </CODE> </ACTION> + <ACTION NAME="project-compile"> + <CODE> + console.ConsolePlugin.compileProject(view); + </CODE> + </ACTION> + <ACTION NAME="project-run"> + <CODE> + console.ConsolePlugin.runProject(view); + </CODE> + </ACTION> <ACTION NAME="rescan-commands"> <CODE> console.ConsolePlugin.rescanCommands(); Modified: plugins/Console/trunk/console/ConsoleMenuProvider.java =================================================================== --- plugins/Console/trunk/console/ConsoleMenuProvider.java 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/console/ConsoleMenuProvider.java 2011-11-20 01:30:44 UTC (rev 20386) @@ -39,7 +39,16 @@ //{{{ update() method public void update(JMenu superMenu) { - JMenu menu = new JMenu("Commands"); + JMenu menu = new JMenu("Project"); + menu.add(GUIUtilities.loadMenuItem(jEdit.getAction("project-compile"), false)); + menu.add(GUIUtilities.loadMenuItem(jEdit.getAction("project-run"), false)); + menu.addSeparator(); + menu.add(GUIUtilities.loadMenuItem(jEdit.getAction("chdir-pv-root"), false)); + menu.add(GUIUtilities.loadMenuItem(jEdit.getAction("chdir-pv-selected"), false)); + superMenu.add(menu); + superMenu.addSeparator(); + + menu = new JMenu("Commands"); EditAction[] commands = ConsolePlugin.getCommandoCommands(); for(int i = 0; i < commands.length; i++) { Modified: plugins/Console/trunk/console/ConsolePlugin.java =================================================================== --- plugins/Console/trunk/console/ConsolePlugin.java 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/console/ConsolePlugin.java 2011-11-20 01:30:44 UTC (rev 20386) @@ -45,6 +45,7 @@ import org.gjt.sp.jedit.msg.ViewUpdate; import org.gjt.sp.util.Log; import org.gjt.sp.util.StringList; +import org.gjt.sp.util.ThreadUtilities; import console.commando.CommandoCommand; import console.commando.CommandoToolBar; @@ -362,6 +363,35 @@ // {{{ compile() method public static void compile(View view, Buffer buffer) { + SystemShell systemShell = getSystemShell(); + String mode = buffer.getMode().getName(); + + // Check for a custom compile command + if (jEdit.getBooleanProperty("mode."+mode+".compile.use-custom")) { + String command = jEdit.getProperty("mode."+mode+".compile.custom", ""); + view.getDockableWindowManager().showDockableWindow("console"); + Console console = (Console) getConsole(view); + Console.ShellState state = console.getShellState(systemShell); + + if (buffer.isDirty()) + { + Object[] args = { buffer.getName() }; + int result = GUIUtilities.confirm(view, "commando.not-saved-compile", args, + JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE); + if (result == JOptionPane.YES_OPTION) + { + if (!buffer.save(view, null, true)) + return; + } + else if (result != JOptionPane.NO_OPTION) + return; + } + + systemShell.execute(console, null, state, null, command); + return; + } + + // If it got here, run commando as normal String compiler = buffer.getStringProperty("commando.compile"); if (compiler == null || compiler.length() == 0) { @@ -405,6 +435,35 @@ // {{{ run() method public static void run(View view, Buffer buffer) { + SystemShell systemShell = getSystemShell(); + String mode = buffer.getMode().getName(); + + // Check for a custom compile command + if (jEdit.getBooleanProperty("mode."+mode+".run.use-custom")) { + String command = jEdit.getProperty("mode."+mode+".run.custom", ""); + view.getDockableWindowManager().showDockableWindow("console"); + Console console = (Console) getConsole(view); + Console.ShellState state = console.getShellState(systemShell); + + if (buffer.isDirty()) + { + Object[] args = { buffer.getName() }; + int result = GUIUtilities.confirm(view, "commando.not-saved-run", args, + JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE); + if (result == JOptionPane.YES_OPTION) + { + if (!buffer.save(view, null, true)) + return; + } + else if (result != JOptionPane.NO_OPTION) + return; + } + + systemShell.execute(console, null, state, null, command); + return; + } + + // If it got here, run commando as normal String interpreter = buffer.getStringProperty("commando.run"); if (interpreter == null || interpreter.length() == 0) { @@ -440,6 +499,54 @@ } } // }}} + // {{{ compileProject() method + public static void compileProject(View view) { + runProjectCommand(view, "compile"); + } // }}} + + // {{{ runProject() method + public static void runProject(View view) { + runProjectCommand(view, "run"); + } // }}} + + // {{{ runProjectCommand() method + private static void runProjectCommand(View view, String prop) { + if (jEdit.getPlugin("projectviewer.ProjectPlugin") == null) { + GUIUtilities.error(view, "console.pv.not-installed", null); + return; + } + + projectviewer.vpt.VPTProject project = + projectviewer.ProjectViewer.getViewer(view).getActiveProject(view); + if (project == null) { + GUIUtilities.error(view, "console.pv.no-active-project", null); + return; + } + + String cmd = project.getProperty("console."+prop); + if (cmd == null) cmd = ""; + + // Run the command in the project's root, but then return to + // the original working directory + final SystemShell systemShell = getSystemShell(); + view.getDockableWindowManager().showDockableWindow("console"); + final Console console = (Console) getConsole(view); + final Console.ShellState state = console.getShellState(systemShell); + + final String cwd = systemShell.getConsoleState(console).currentDirectory; + systemShell.execute(console, null, state, null, "cd \""+project.getRootPath()+"\""); + systemShell.waitFor(console); + console.run(systemShell, cmd); + ThreadUtilities.runInBackground(new Runnable() { + public void run() { + systemShell.waitFor(console); + systemShell.execute(console, null, state, null, + "cd \""+cwd+"\""); + systemShell.printPrompt(console, state); + } + }); + } // }}} + // {{{ getPackageName() method /** * A utility method that returns the name of the package containing the Modified: plugins/Console/trunk/console/options/CompileRunOptionPane.java =================================================================== --- plugins/Console/trunk/console/options/CompileRunOptionPane.java 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/console/options/CompileRunOptionPane.java 2011-11-20 01:30:44 UTC (rev 20386) @@ -3,7 +3,7 @@ * :tabSize=8:indentSize=8:noTabs=false: * :folding=explicit:collapseFolds=1: * - * Copyright (C) 2002 Slava Pestov + * Copyright (C) 2002 Slava Pestov, 2010 Damien Radtke * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -26,18 +26,32 @@ import java.awt.BorderLayout; import java.awt.Component; import java.awt.Dimension; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.util.ArrayList; +import javax.swing.BorderFactory; +import javax.swing.Box; +import javax.swing.BoxLayout; +import javax.swing.ButtonGroup; import javax.swing.DefaultCellEditor; import javax.swing.JComboBox; import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JTable; +import javax.swing.JComboBox; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.JTextPane; import javax.swing.border.EmptyBorder; import javax.swing.table.AbstractTableModel; import javax.swing.table.TableCellRenderer; import javax.swing.table.TableColumn; +import javax.swing.text.html.HTMLEditorKit; + import org.gjt.sp.jedit.AbstractOptionPane; import org.gjt.sp.jedit.EditAction; import org.gjt.sp.jedit.Mode; @@ -47,7 +61,7 @@ //}}} //{{{ CompileRunOptionPane class -public class CompileRunOptionPane extends AbstractOptionPane +public class CompileRunOptionPane extends AbstractOptionPane implements ActionListener { private static final long serialVersionUID = -1672963909425664168L; public static final String NONE = "none"; @@ -57,36 +71,31 @@ { super("console.compile-run"); } //}}} + + public void actionPerformed(ActionEvent e) { + Object source = e.getSource(); + if (source == modeBox) { + update(((Mode) modeBox.getSelectedItem()).getName()); + } else if (source == compilerCommando) { + compilerCommandList.setEnabled(true); + compilerCustomText.setEnabled(false); + } else if (source == compilerCustom) { + compilerCommandList.setEnabled(false); + compilerCustomText.setEnabled(true); + } else if (source == interpreterCommando) { + interpreterCommandList.setEnabled(true); + interpreterCustomText.setEnabled(false); + } else if (source == interpreterCustom) { + interpreterCommandList.setEnabled(false); + interpreterCustomText.setEnabled(true); + } + } //{{{ Protected members //{{{ _init() method protected void _init() { - setLayout(new BorderLayout()); - - JLabel label = new JLabel(jEdit.getProperty( - "options.console.compile-run.caption")); - label.setBorder(new EmptyBorder(0,0,6,0)); - add(BorderLayout.NORTH,label); - - add(BorderLayout.CENTER,createModeTableScroller()); - } //}}} - - //{{{ _save() method - protected void _save() - { - model.save(); - } //}}} - - //}}} - - //{{{ Private members - private ModeTableModel model; - - //{{{ createModeTableScroller() method - private JScrollPane createModeTableScroller() - { EditAction[] commandos = ConsolePlugin.getCommandoCommands(); String[] labels = new String[commandos.length + 1]; for(int i = 0; i < commandos.length; i++) @@ -95,207 +104,170 @@ } labels[0] = CompileRunOptionPane.NONE; + + JPanel modePanel = new JPanel(); + modePanel.setLayout(new BoxLayout(modePanel, BoxLayout.X_AXIS)); + modePanel.add(new JLabel("Set compiler/interpreter for edit mode:")); + modeBox = new JComboBox(jEdit.getModes()); + modeBox.setSelectedItem(jEdit.getActiveView().getBuffer().getMode()); + modePanel.add(modeBox); + addComponent(modePanel); + + JPanel compilerPanel = new JPanel(); + compilerPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), + "Compiler")); + compilerPanel.setLayout(new BoxLayout(compilerPanel, BoxLayout.Y_AXIS)); + JPanel compilerCommandoPanel = new JPanel(); + compilerCommandoPanel.setLayout(new BoxLayout(compilerCommandoPanel, BoxLayout.X_AXIS)); + compilerCommandoPanel.add(compilerCommando = new JRadioButton("Use command")); + compilerCommandoPanel.add(Box.createRigidArea(new Dimension(10, 0))); + compilerCommandoPanel.add(compilerCommandList = new JComboBox(labels)); + JPanel compilerCustomPanel = new JPanel(); + compilerCustomPanel.setLayout(new BoxLayout(compilerCustomPanel, BoxLayout.X_AXIS)); + compilerCustomPanel.add(compilerCustom = new JRadioButton("Use custom command")); + compilerCustomPanel.add(compilerCustomText = new JTextField(30)); + compilerPanel.add(compilerCommandoPanel); + compilerPanel.add(compilerCustomPanel); + + JPanel interpreterPanel = new JPanel(); + interpreterPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), + "Interpreter")); + interpreterPanel.setLayout(new BoxLayout(interpreterPanel, BoxLayout.Y_AXIS)); + JPanel interpreterCommandoPanel = new JPanel(); + interpreterCommandoPanel.setLayout(new BoxLayout(interpreterCommandoPanel, BoxLayout.X_AXIS)); + interpreterCommandoPanel.add(interpreterCommando = new JRadioButton("Use command")); + interpreterCommandoPanel.add(Box.createRigidArea(new Dimension(10, 0))); + interpreterCommandoPanel.add(interpreterCommandList = new JComboBox(labels)); + JPanel interpreterCustomPanel = new JPanel(); + interpreterCustomPanel.setLayout(new BoxLayout(interpreterCustomPanel, BoxLayout.X_AXIS)); + interpreterCustomPanel.add(interpreterCustom = new JRadioButton("Use custom command")); + interpreterCustomPanel.add(interpreterCustomText = new JTextField(30)); + interpreterPanel.add(interpreterCommandoPanel); + interpreterPanel.add(interpreterCustomPanel); + + JLabel help = new JLabel(); + help.setText(jEdit.getProperty("options.console.compile-run.help")); + + addComponent(compilerPanel); + addComponent(interpreterPanel); + addComponent(Box.createRigidArea(new Dimension(0, 20))); + addComponent(help); + + ButtonGroup compilerGroup = new ButtonGroup(); + ButtonGroup interpreterGroup = new ButtonGroup(); + compilerGroup.add(compilerCommando); + compilerGroup.add(compilerCustom); + interpreterGroup.add(interpreterCommando); + interpreterGroup.add(interpreterCustom); + + modeBox.addActionListener(this); + compilerCommando.addActionListener(this); + compilerCustom.addActionListener(this); + interpreterCommando.addActionListener(this); + interpreterCustom.addActionListener(this); + + update((String) null); + + /* + JLabel label = new JLabel(jEdit.getProperty( + "options.console.compile-run.caption")); + label.setBorder(new EmptyBorder(0,0,6,0)); + add(BorderLayout.NORTH,label); - model = new ModeTableModel(); - JTable table = new JTable(model); - table.getTableHeader().setReorderingAllowed(false); - table.setColumnSelectionAllowed(false); - table.setRowSelectionAllowed(false); - table.setCellSelectionEnabled(false); - - CommandoCellRenderer comboBox = new CommandoCellRenderer(labels); - comboBox.setRequestFocusEnabled(false); - table.setRowHeight(comboBox.getPreferredSize().height); - - TableColumn column = table.getColumnModel().getColumn(1); - column.setCellRenderer(comboBox); - comboBox = new CommandoCellRenderer(labels); - comboBox.setRequestFocusEnabled(false); - column.setCellEditor(new DefaultCellEditor(comboBox)); - - comboBox = new CommandoCellRenderer(labels); - comboBox.setRequestFocusEnabled(false); - column = table.getColumnModel().getColumn(2); - column.setCellRenderer(comboBox); - comboBox = new CommandoCellRenderer(labels); - comboBox.setRequestFocusEnabled(false); - column.setCellEditor(new DefaultCellEditor(comboBox)); - - Dimension d = table.getPreferredSize(); - d.height = Math.min(d.height,200); - JScrollPane scroller = new JScrollPane(table); - scroller.setPreferredSize(d); - return scroller; + add(BorderLayout.CENTER,createModeTableScroller()); + */ } //}}} - - //}}} - - //{{{ CommandoCellRenderer class - class CommandoCellRenderer extends JComboBox - implements TableCellRenderer - { - - private static final long serialVersionUID = 6013923260715257510L; - - CommandoCellRenderer(String[] labels) - { - super(labels); + + protected void update(String mode) { + if (mode == null) + mode = jEdit.getActiveView().getBuffer().getMode().getName(); + + String currentCompileCommand = jEdit.getProperty("mode."+mode+".commando.compile"); + if (currentCompileCommand != null) + compilerCommandList.setSelectedItem(currentCompileCommand); + else + compilerCommandList.setSelectedIndex(0); + + String currentInterpretCommand = jEdit.getProperty("mode."+mode+".commando.run"); + if (currentInterpretCommand != null) + interpreterCommandList.setSelectedItem(currentInterpretCommand); + else + interpreterCommandList.setSelectedIndex(0); + + compilerCustomText.setText(jEdit.getProperty("mode."+mode+".compile.custom", "")); + interpreterCustomText.setText(jEdit.getProperty("mode."+mode+".run.custom", "")); + + if (!jEdit.getBooleanProperty("mode."+mode+".compile.use-custom")) { + compilerCommando.setSelected(true); + compilerCommandList.setEnabled(true); + compilerCustomText.setEnabled(false); + } else { + compilerCustom.setSelected(true); + compilerCommandList.setEnabled(false); + compilerCustomText.setEnabled(true); } - - public Component getTableCellRendererComponent(JTable table, - Object value, boolean isSelected, boolean hasFocus, - int row, int column) - { - setSelectedItem(value); - return this; + + if (!jEdit.getBooleanProperty("mode."+mode+".run.use-custom")) { + interpreterCommando.setSelected(true); + interpreterCommandList.setEnabled(true); + interpreterCustomText.setEnabled(false); + } else { + interpreterCustom.setSelected(true); + interpreterCommandList.setEnabled(false); + interpreterCustomText.setEnabled(true); } - } //}}} -} //}}} + + } -//{{{ ModeTableModel class -class ModeTableModel extends AbstractTableModel -{ - private static final long serialVersionUID = 5314012645070764005L; - private ArrayList<Entry> modes; - - //{{{ ModeTableModel constructor - ModeTableModel() + //{{{ _save() method + protected void _save() { - Mode[] _modes = jEdit.getModes(); - - modes = new ArrayList<Entry>(_modes.length); - - for(int i = 0; i < _modes.length; i++) + //model.save(); + String mode = modeBox.getSelectedItem().toString(); + jEdit.setBooleanProperty("mode."+mode+".compile.use-custom", + compilerCustom.isSelected()); + jEdit.setBooleanProperty("mode."+mode+".run.use-custom", + interpreterCustom.isSelected()); + + if (compilerCommandList.getSelectedIndex() == 0) { - modes.add(new Entry(_modes[i].getName())); + jEdit.unsetProperty("mode."+mode+".commando.compile"); } - } //}}} - - //{{{ getColumnCount() method - public int getColumnCount() - { - return 3; - } //}}} - - //{{{ getRowCount() method - public int getRowCount() - { - return modes.size(); - } //}}} - - //{{{ getColumnClass() method - public Class getColumnClass(int col) - { - return String.class; - } //}}} - - //{{{ getValueAt() method - public Object getValueAt(int row, int col) - { - Entry mode = (Entry)modes.get(row); - switch(col) + else { - case 0: - return mode.name; - case 1: - return (mode.compiler == null ? CompileRunOptionPane.NONE - : mode.compiler); - case 2: - return (mode.interpreter == null ? CompileRunOptionPane.NONE - : mode.interpreter); - default: - throw new InternalError(); + jEdit.setProperty("mode."+mode+".commando.compile", + (String) compilerCommandList.getSelectedItem()); } - } //}}} - - //{{{ isCellEditable() method - public boolean isCellEditable(int row, int col) - { - return (col != 0); - } //}}} - - //{{{ setValueAt() method - public void setValueAt(Object value, int row, int col) - { - if(col == 0) - return; - - Entry mode = (Entry)modes.get(row); - switch(col) + + if (interpreterCommandList.getSelectedIndex() == 0) { - case 1: - mode.compiler = (String)value; - if(mode.compiler.equals(CompileRunOptionPane.NONE)) - mode.compiler = null; - break; - case 2: - mode.interpreter = (String)value; - if(mode.interpreter.equals(CompileRunOptionPane.NONE)) - mode.interpreter = null; - break; - default: - throw new InternalError(); + jEdit.unsetProperty("mode."+mode+".commando.run"); } - - fireTableRowsUpdated(row,row); - } //}}} - - //{{{ getColumnName() method - public String getColumnName(int index) - { - switch(index) + else { - case 0: - return jEdit.getProperty("options.console.compile-run.mode"); - case 1: - return jEdit.getProperty("options.console.compile-run.compiler"); - case 2: - return jEdit.getProperty("options.console.compile-run.interpreter"); - default: - throw new InternalError(); + jEdit.setProperty("mode."+mode+".commando.run", + (String) interpreterCommandList.getSelectedItem()); } + + jEdit.setProperty("mode."+mode+".compile.custom", compilerCustomText.getText()); + jEdit.setProperty("mode."+mode+".run.custom", interpreterCustomText.getText()); } //}}} - //{{{ save() method - public void save() - { - for(int i = 0; i < modes.size(); i++) - { - ((Entry)modes.get(i)).save(); - } - } //}}} + //}}} - //{{{ Entry class - static class Entry - { - String name; - String compiler; - String interpreter; + //{{{ Private members + private JComboBox modeBox; + + private JRadioButton compilerCommando; + private JComboBox compilerCommandList; + private JTextField compilerCustomText; + private JRadioButton compilerCustom; + + private JRadioButton interpreterCommando; + private JComboBox interpreterCommandList; + private JTextField interpreterCustomText; + private JRadioButton interpreterCustom; + + //}}} - Entry(String name) - { - this.name = name; - - compiler = jEdit.getProperty("mode." + name + ".commando.compile"); - interpreter = jEdit.getProperty("mode." + name + ".commando.run"); - } - - void save() - { - if(compiler != null) - { - jEdit.setProperty("mode." + name + ".commando.compile", - compiler.replace(' ','_')); - } - else - jEdit.unsetProperty("mode." + name + ".commando.compile"); - if(interpreter != null) - { - jEdit.setProperty("mode." + name + ".commando.run", - interpreter.replace(' ','_')); - } - else - jEdit.unsetProperty("mode." + name + ".commando.run"); - } - } //}}} } //}}} Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/docs/users-guide.xml 2011-11-20 01:30:44 UTC (rev 20386) @@ -1562,6 +1562,7 @@ ProjectViewer 3 (optional). <itemizedlist> <listitem><para> Respects jEdit's "use textArea colors" appearance option. </para></listitem> + <listitem><para> New ProjectViewer option pane for providing actions to build and run project. (#3153058 - Damien Radtke) </para></listitem> </itemizedlist> </para></listitem> Modified: plugins/Console/trunk/services.xml =================================================================== --- plugins/Console/trunk/services.xml 2011-11-20 01:14:30 UTC (rev 20385) +++ plugins/Console/trunk/services.xml 2011-11-20 01:30:44 UTC (rev 20386) @@ -9,4 +9,7 @@ <SERVICE CLASS="console.Shell" NAME="BeanShell"> new console.ConsoleBeanShell(); </SERVICE> + <SERVICE CLASS="projectviewer.config.OptionsService" NAME="Commands"> + new console.ProjectCommandOptionsService(); + </SERVICE> </SERVICES> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-11-20 02:23:56
|
Revision: 20390 http://jedit.svn.sourceforge.net/jedit/?rev=20390&view=rev Author: ezust Date: 2011-11-20 02:23:49 +0000 (Sun, 20 Nov 2011) Log Message: ----------- Missing files from last commit. Also added some documentation. Modified Paths: -------------- plugins/Console/trunk/docs/users-guide.xml plugins/Console/trunk/services.xml Added Paths: ----------- plugins/Console/trunk/console/ProjectCommandOptionPane.java plugins/Console/trunk/console/ProjectCommandOptionsService.java Added: plugins/Console/trunk/console/ProjectCommandOptionPane.java =================================================================== --- plugins/Console/trunk/console/ProjectCommandOptionPane.java (rev 0) +++ plugins/Console/trunk/console/ProjectCommandOptionPane.java 2011-11-20 02:23:49 UTC (rev 20390) @@ -0,0 +1,71 @@ +/* + * ProjectCommandOptionsService.java + * :tabSize=8:indentSize=8:noTabs=false: + * :folding=explicit:collapseFolds=1: + * + * Copyright (C) 2010 Damien Radtke + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +package console; + +import javax.swing.*; +import org.gjt.sp.jedit.jEdit; +import projectviewer.vpt.VPTProject; +import projectviewer.gui.OptionPaneBase; + +/** + * @author Damien Radtke + * class ProjectCommandOptionPane + * An option pane for configuring project commands + */ +public class ProjectCommandOptionPane extends OptionPaneBase { + + private VPTProject proj; + private JTextField compile; + private JTextField run; + + /* + * Constructor for ProjectCommandOptionPane + */ + public ProjectCommandOptionPane(VPTProject proj) { + super("pv.commands", "console"); + this.proj = proj; + } + + protected void _init() { + compile = new JTextField(); + run = new JTextField(); + + String _compile = proj.getProperty("console.compile"); + if (_compile != null) + compile.setText(_compile); + + String _run = proj.getProperty("console.run"); + if (_run != null) + run.setText(_run); + + addComponent(new JLabel(jEdit.getProperty("options.pv.commands.help"))); + addComponent(jEdit.getProperty("options.pv.commands.compile"), compile); + addComponent(jEdit.getProperty("options.pv.commands.run"), run); + } + + protected void _save() { + proj.setProperty("console.compile", compile.getText()); + proj.setProperty("console.run", run.getText()); + } + +} Added: plugins/Console/trunk/console/ProjectCommandOptionsService.java =================================================================== --- plugins/Console/trunk/console/ProjectCommandOptionsService.java (rev 0) +++ plugins/Console/trunk/console/ProjectCommandOptionsService.java 2011-11-20 02:23:49 UTC (rev 20390) @@ -0,0 +1,62 @@ +/* + * ProjectCommandOptionsService.java + * :tabSize=8:indentSize=8:noTabs=false: + * :folding=explicit:collapseFolds=1: + * + * Copyright (C) 2010 Damien Radtke + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +package console; + +import projectviewer.config.OptionsService; +import projectviewer.vpt.VPTProject; +import org.gjt.sp.jedit.OptionPane; +import org.gjt.sp.jedit.OptionGroup; + +/** + * @author Damien Radtke + * class ProjectCommandOptionsService + * OptionsService instance for providing configurable project commands + */ +public class ProjectCommandOptionsService implements OptionsService { + /** + * This method should return the option pane to be shown. As with + * regular jEdit option panes, the label to be shown in the dialog + * should be defined by the "option.[pane_name].label" property. + * + * @param proj The project that will be edited. + * + * @return An OptionPane instance, or null for no option pane. + */ + public OptionPane getOptionPane(VPTProject proj) { + return new ProjectCommandOptionPane(proj); + } + + + /** + * This should return an OptionGroup to be shown. As with regular + * jEdit option groups, the label to be shown in the dialog + * should be defined by the "option.[group_name].label" property. + * + * @param proj The project that will be edited. + * + * @return null for no option group. + */ + public OptionGroup getOptionGroup(VPTProject proj) { + return null; + } +} Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-11-20 02:06:38 UTC (rev 20389) +++ plugins/Console/trunk/docs/users-guide.xml 2011-11-20 02:23:49 UTC (rev 20390) @@ -19,14 +19,19 @@ </copyright> <copyright> <year>2005</year> - <year>2008</year> + <year>2011</year> <holder>Alan Ezust</holder> </copyright> <legalnotice> <title>Legal Notice</title> <para> - Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no <quote>Invariant Sections</quote>, <quote>Front-Cover Texts</quote> or <quote>Back-Cover Texts</quote>, each as defined in the license. A copy of the license can be found in the file <filename>COPYING.DOC.txt</filename> included with jEdit. + Permission is granted to copy, distribute and/or modify this document under + the terms of the GNU Free Documentation License, Version 1.1 or any later + version published by the Free Software Foundation; with no <quote>Invariant + Sections</quote>, <quote>Front-Cover Texts</quote> or <quote>Back-Cover + Texts</quote>, each as defined in the license. A copy of the license can be + found in the file <filename>COPYING.DOC.txt</filename> included with jEdit. </para> </legalnotice> </bookinfo> @@ -55,25 +60,37 @@ <para>Providing an extensible framework for other plugins that need to display streamed output.</para> </listitem> </itemizedlist> - - </chapter> <chapter id="setup"> <title> Setup/Options </title> + <bridgehead> ProjectViewer Integration </bridgehead> + <para> Console has an optional dependency on ProjectViewer. What this means is that it has some extra features which you can see if you have also installed ProjectViewer plugin. In particular they are: </para> <orderedlist> - <listitem><para> The ability to listen to node change events from the projectviewer and make changes to the System shell's current directory. </para></listitem> + <listitem><para> Actions <guimenuitem>Compile Project</guimenuitem> + and <guimenuitem>Run Project</guimenuitem> which are + configured from ProjectViewer's <guimenuitem>Commands</guimenuitem> properties pane. </para></listitem> + + <listitem><para> The ability to listen to node change events from the ProjectViewer and make changes to the System shell's current directory. </para></listitem> - <listitem><para> The ability to query the ProjectViewer for the "current root directory" to run build commands from. This is used by the Console commandos for "ant", "make", and "qmake", and perhaps others<footnote><para> If you wish to use these commando buttons without the projectviewer, right click on the commando buttons, "customize" and edit the XML file, removing the lines that refer to projectviewer. </para></footnote>. </para></listitem> + <listitem><para> The ability to query the ProjectViewer for the "current root + directory" to run build commands from. This is used by the Console commandos + for "ant", "make", and "qmake", and perhaps others<footnote><para> If you + wish to use these commando buttons without the projectviewer, right click on + the commando buttons, "customize" and edit the XML file, removing the lines + that refer to projectviewer. </para></footnote>. </para></listitem> + </orderedlist> <bridgehead> Option Panes </bridgehead> - <para> By selecting <literal>Plugin Options - Console </literal>, you will notice a number of options. It is recommended you browse through them to get a full idea of what Console (and your other plugins) can do. + <para> By selecting <literal>Plugin Options - Console </literal>, you will + notice a number of options. It is recommended you browse through them to get + a full idea of what Console (and your other plugins) can do. </para> <bridgehead> Console - General Options </bridgehead> @@ -117,12 +134,15 @@ checked, append instead of prepend the extra directories. </para></listitem> - - </itemizedlist> + <bridgehead> Toolbar Options </bridgehead> - <section id="errorpatterns"> - <title> Error Patterns Options </title> + <para> Console has an optional toolbar that displays commando commands. + The commands can be executed by keyboard shortcuts even if the toolbar is not + enabled. You can check and un-check which commands show up in the menus and + toolbars. </para> + + <bridgehead> Error Patterns Options </bridgehead> <para> This option dialog allows you fine grained control over Console's error parsing capabilities. </para> @@ -139,8 +159,14 @@ </para> </tip> -</section> +<bridgehead> Compile and Run Options </bridgehead> +<para> For each edit mode, you can choose a command that is + used to compile or run a buffer. + This can be either a commando command or a custom command. + These commands are executed in the System shell. +</para> + </chapter> <chapter id="window"> @@ -1562,7 +1588,7 @@ ProjectViewer 3 (optional). <itemizedlist> <listitem><para> Respects jEdit's "use textArea colors" appearance option. </para></listitem> - <listitem><para> New ProjectViewer option pane for providing actions to build and run project. (#3153058 - Damien Radtke) </para></listitem> + <listitem><para> New ProjectViewer option pane for defining new actions to compile and run a project. (#3153058 - Damien Radtke) </para></listitem> </itemizedlist> </para></listitem> Modified: plugins/Console/trunk/services.xml =================================================================== --- plugins/Console/trunk/services.xml 2011-11-20 02:06:38 UTC (rev 20389) +++ plugins/Console/trunk/services.xml 2011-11-20 02:23:49 UTC (rev 20390) @@ -9,7 +9,7 @@ <SERVICE CLASS="console.Shell" NAME="BeanShell"> new console.ConsoleBeanShell(); </SERVICE> - <SERVICE CLASS="projectviewer.config.OptionsService" NAME="Commands"> + <SERVICE CLASS="projectviewer.config.OptionsService" NAME="Console"> new console.ProjectCommandOptionsService(); </SERVICE> </SERVICES> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-11-27 05:04:34
|
Revision: 20430 http://jedit.svn.sourceforge.net/jedit/?rev=20430&view=rev Author: ezust Date: 2011-11-27 05:04:28 +0000 (Sun, 27 Nov 2011) Log Message: ----------- Getting rid of use of bsh variable "wm" since it seems to not always be defined. Modified Paths: -------------- plugins/Console/trunk/Console.props plugins/Console/trunk/console/bsh/changeToPvRoot.bsh plugins/Console/trunk/console/bsh/changeToPvSelected.bsh plugins/Console/trunk/console/bsh/getProjectRoot.bsh Modified: plugins/Console/trunk/Console.props =================================================================== --- plugins/Console/trunk/Console.props 2011-11-27 04:57:30 UTC (rev 20429) +++ plugins/Console/trunk/Console.props 2011-11-27 05:04:28 UTC (rev 20430) @@ -15,7 +15,6 @@ plugin.console.ConsolePlugin.depend.0=jedit 04.04.99.02 plugin.console.ConsolePlugin.depend.1=jdk 1.6 plugin.console.ConsolePlugin.depend.2=plugin errorlist.ErrorListPlugin 1.9 -# ProjectViewer is optional because Console only listens to events from it. plugin.console.ConsolePlugin.depend.3=optional plugin projectviewer.ProjectPlugin 3.0.1 # Menu Modified: plugins/Console/trunk/console/bsh/changeToPvRoot.bsh =================================================================== --- plugins/Console/trunk/console/bsh/changeToPvRoot.bsh 2011-11-27 04:57:30 UTC (rev 20429) +++ plugins/Console/trunk/console/bsh/changeToPvRoot.bsh 2011-11-27 05:04:28 UTC (rev 20430) @@ -5,15 +5,13 @@ by ezust */ -changeToPvRoot(view) { - wm = view.getDockableWindowManager(); - if (wm == null) return; - pv = wm.getDockable("projectviewer"); +changeToPvRoot(view) { + pv = view.getDockableWindowManager().getDockable("projectviewer"); if (pv == null) return; - con = wm.getDockable("console"); + con = view.getDockableWindowManager().getDockable("console"); if (con == null) return; - wm.showDockableWindow("projectviewer"); - wm.showDockableWindow("console"); + view.getDockableWindowManager().showDockableWindow("projectviewer"); + view.getDockableWindowManager().showDockableWindow("console"); sysShell = console.Shell.getShell("System"); sstate = con.getShellState(sysShell); project = pv.getActiveProject(view); Modified: plugins/Console/trunk/console/bsh/changeToPvSelected.bsh =================================================================== --- plugins/Console/trunk/console/bsh/changeToPvSelected.bsh 2011-11-27 04:57:30 UTC (rev 20429) +++ plugins/Console/trunk/console/bsh/changeToPvSelected.bsh 2011-11-27 05:04:28 UTC (rev 20430) @@ -7,14 +7,11 @@ */ changeToPvSelected(view) { - wm = view.getDockableWindowManager(); - if (wm == null) return; - pv = wm.getDockable("projectviewer"); - con = wm.getDockable("console"); - if ((pv == null) || (con == null)) return; - if (!con.isVisible()) return; -// wm.showDockableWindow("console"); -// wm.showDockableWindow("projectviewer"); + + pv = view.getDockableWindowManager().getDockable("projectviewer"); + if (pv == null) return; + con = view.getDockableWindowManager().getDockable("console"); + if ((con == null) || !con.isVisible()) return; // String shellName = con.getShell().getName(); // if (!shellName.equals("System")) return; sysShell = console.Shell.getShell("System"); Modified: plugins/Console/trunk/console/bsh/getProjectRoot.bsh =================================================================== --- plugins/Console/trunk/console/bsh/getProjectRoot.bsh 2011-11-27 04:57:30 UTC (rev 20429) +++ plugins/Console/trunk/console/bsh/getProjectRoot.bsh 2011-11-27 05:04:28 UTC (rev 20430) @@ -10,9 +10,7 @@ * if no active project can be found. */ getProjectRoot(View view, Buffer buffer) { - wm = view.getDockableWindowManager(); - if (wm == null) return "."; - pv = wm.getDockable("projectviewer"); + pv = view.getDockableWindowManager().getDockable("projectviewer"); if (pv == null) return "."; project = projectviewer.ProjectViewer.getActiveProject(view); if (project != null) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ez...@us...> - 2011-12-18 18:16:29
|
Revision: 20662 http://jedit.svn.sourceforge.net/jedit/?rev=20662&view=rev Author: ezust Date: 2011-12-18 18:16:21 +0000 (Sun, 18 Dec 2011) Log Message: ----------- Broke CHANGELOG out of xml file and into its own .txt file. Modified Paths: -------------- plugins/Console/trunk/build.xml plugins/Console/trunk/docs/users-guide.xml Added Paths: ----------- plugins/Console/trunk/docs/CHANGELOG.txt Modified: plugins/Console/trunk/build.xml =================================================================== --- plugins/Console/trunk/build.xml 2011-12-17 16:17:55 UTC (rev 20661) +++ plugins/Console/trunk/build.xml 2011-12-18 18:16:21 UTC (rev 20662) @@ -22,6 +22,7 @@ <selector id="packageFiles"> <or> <filename name="**/LICENSE" /> + <filename name="docs/CHANGELOG.txt" /> <filename name="**/README" /> <filename name="console/bsh/*.*" /> <filename name="console/**/*.xml" /> Added: plugins/Console/trunk/docs/CHANGELOG.txt =================================================================== --- plugins/Console/trunk/docs/CHANGELOG.txt (rev 0) +++ plugins/Console/trunk/docs/CHANGELOG.txt 2011-12-18 18:16:21 UTC (rev 20662) @@ -0,0 +1,302 @@ +:encoding=UTF-8:maxLineLen=80:wrap=hard:folding=indent:collapseFolds=2: +Console Changelog + + Version 4.4.4 Requires jEdit 4.4.2, JDK 1.6, ErrorList 1.9, ProjectViewer 3 + (optional). + + Respects jEdit's "use textArea colors" appearance option. + ProjectViewer option pane for defining commands to compile and run + project. (#3153058 - Damien Radtke) + Bug fixes (2360096, 2933787) + + Version 4.4.3 Requires jEdit 4.4pre1, JDK 1.6, ErrorList 1.9, ProjectViewer + 3.0 (optional). + + API fixes for compatibility with jEdit 4.5. + New general option to set favorite shell, or remember previous selected + shell. + No longer generates hidden commandos in the dialog (available via + combobox selector). + Configurable command history size (#2648110 - Eric Le Lay). + Avoided occasional performance down with large output when maximum + scroll buffer size is not set. (Kazutoshi Satoda). + + Version 4.4.2 Requires jEdit 4.3pre99, JDK 1.5, ErrorList 1.4, ProjectViewer + 2.9 (optional). + + Un-customize now works even if no FSB is shown yet. + Do checkBufferStatus() in the event dispatch thread (# 2933468 - Dale + Anson) + No longer uses objectfactory xml parser (Eric Le Lay # 2927830) + Fixed built-in pwd system shell command. + + Version 4.4.1 Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer + 2.9 (optional). + + Patch #2893518 - un-synchronized getOutput() to avoid deadlocks (Damien Radtke) + Report errors for processes with only one multiline error, fixing + regression introduced by 2783642 in Console 4.4. + Added an "uncustomize" context menu item for Commando Buttons that + override same-named commando.xml files from the jar, to easily restore + them to the previous state, as well as indicators via tooltip and color, + that a button has been customized. + + Version 4.4 Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer + 2.9 (optional). + + Updated to listen to ProjectViewer 2.9 project switch events. + Updated to use jEdit 4.2 EditBus registration technique (Shlomy + Reinstein), for compatibility with MyDoggy Plugin. + System shell built-in cd changes drives as well as directories on + windows. (Alan Ezust) + Console: Immediately report errors to ErrorList (Shlomy Reinstein - # + 2783642) + + Version 4.3.8 Requires jEdit 4.3pre13, JDK 1.5, ErrorList 1.4, ProjectViewer + 2.1.3 (optional). + + Scrolls to bottom whenever dockable is activated. (Alan Ezust) + 1928738 Fix NPEs caused by patch #1859034 - k_satoda + Updated console.bsh macros for reloacted beanshell in pre12. + Option to append (instead of prepend) subshell extra path. (Alan Ezust) + Change to PV selected node no longer causes Console to show if it is not + already showing. (Alan Ezust) + + Version 4.3.7 Requires jEdit 4.3pre13, JDK 1.5, ErrorList 1.4, ProjectViewer + 2.1.3 (optional). + + Rebuilt against 4.3pre13 for binary compatibility + getProjectRoot directory more robust from make.xml, ant.xml and + javac.xml - doesn't care if you don't have ProjectViewer or an active + project. + + Version 4.3.6 Requires jEdit 4.3pre12, JDK 1.5, ErrorList 1.4, and + ProjectViewer 2.1.3 (optional). + + New option to remember current working directory from previous sessions + (ezust) + fix bug in capture of extra line for error (1854413 - David Bernard) + Forward slashes no longer substituted and driveletters no longer + prepended in arguments except when expanding completions on MS-Windows. + (#185614 - k_satoda, ezust) + Subshell extra PATH works now (k_satoda - 1859034) + + Version 4.3.5 Requires jEdit 4.3pre12, JDK 1.5, ErrorList 1.4, and + ProjectViewer 2.1.3 (optional). + + Updated for relocated beanshell package in 4.3pre12. + runCommandToBuffer() doesn't send command to buffer (1643269 - ezust) + waitForConsole(view) should work properly on *nix systems now. + (k_satoda, ezust - #1698976) + alias ant ant -emacs to get rid of adornments when running inside System + shell (ezust). + Improved generic extra line regexp - catches javac and gcc multilines + better. Made #1 on list. (ezust). + (windows only) - driveletters work in Console the way they do in + cmd.exe, as change-directory shortcuts. Console keeps track of default + directories for each drive, as well as the default drive for the current + shell session. Also, / works as well as \ for path separators. (Alan + Ezust - bug#1511941 ) + Small changes to make the SshConsole plugin work (ezust). + + Verison 4.3.4 Requires jEdit 4.3pre11, JDK 1.5, ErrorList 1.4, and + ProjectViewer 2.1.1 (optional). + + New General Option: chdir VFS node select events. Listens to new + VFSPathSelected EBMessage (jEdit 4.3pre11). + Fixes to perl error pattern, and to the ErrorMatcher regex routine, to + allow for partial line matches (#1764455 - Shlomy Reinstein). + ErrorPatternOptionPane buttons to add/remove/up/down error patterns work + better now (#1715796 - Shlomy Reinstein). + + Version 4.3.3 Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + 1727037, 1726365 applied, handling error lines in StreamThread better. + (k_satoda) + 1700484 fixed, was not registering dynamic shortcuts on startup. + 1671430 cd to project root/node needs line break + Ctrl-P and Ctrl-N select through command history (ezust). + Paste in the panel moves caret to end of input before pasting (ezust). + + Version 4.3.2 Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + (1665849) PV CD to selected node no longer requires system shell to be + active. (Alan Ezust) + Buffered Console output is fixed, improved performance rendering command + output. (Marcelo Vanzin) + New option: Max console scrollback buffer size (Carmine Lucarelli) + + Version 4.3.1 Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + Process exited message from shell command to buffer no longer ends up in + buffer. + (#1630431) Typing in the consolepane when caret is not at bottom moves + caret to end of document first. (Alan Ezust) + + Version 4.3.0 Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + New dynamic ActionSet (Plugin: Console - Shell Switchers) generated for + switching to, or toggling the Console, combined with selecting a + specific shell. In other words, now you can bind a specific keyboard + shortcut to "Toggle Beanshell" and another for "Show Ant Shell", etc. + (Alan Ezust) + + Version 4.2.6.5 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + Bug# 1223288 - no longer buffering output of subprocesses. Some + interactive programs work in Console again. (Christopher Plant) + Ctrl-Enter is now the same as "run command to buffer" + + Version 4.2.6.4 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) (Alan Ezust) + + Added option to not show welcome message. + File completion now expands ~ as the homedir. + Ctrl-U deletes what you typed. + Bugfix with runInSystemShell - selects the correct Output now. + + Version 4.2.6.3 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + Improved LaTeX commando. + Fixed bug # 1480991 related to printing exit codes after a subprocess exits. + + Version 4.2.6.2 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + New console prefix modes: "osdefault" and "none". Both work now, and are + documented. + For bash prefix mode, fixed some quote handling bugs. + + Version 4.2.6.1 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) (Alan Ezust) + + Improved make and ant commando buttons (They grab ProjectViewer's root dir). + Fixed *nix quoting/spacing/platform issues (1468934). + Fixed 1459562 - Console.waitFor() now works. + Added checkboxes in General Option Pane: showExitStatus and mergeStreams. + Added "none" option for shell prefix (which currently does not work). + + Version 4.2.6 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + Generic error pattern handles windows pathnames now. + Improved/updated documentation. + + Version 4.2.5.2 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + Bugs fixed: 1185273, 1465602, 1450389. (Ezust) + Rewrote variable substitution code. (Ezust) + Merging stdout/stderr of subprocesses is optional and works now. (Ezust) + Rewrote the StreamThread class to use StreamReader. This means that + output and error parsing is faster now. (Marcello Vanzin) + + Version 4.2.5.1 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) (Alan Ezust) + + Bugs fixed: 1460349 1459481 1459460 1454080 1449325 1448809 + added informative label in ErrorOptionPane so people Test/Commit changes + to error paths. + feature request 1202051 - now users can prepend directories to the PATH + of child processes. + + Version 4.2.5 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) + + Bugfixes, refactoring, code cleanup. (Alan Ezust) + + Version 4.2.4 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and + ProjectViewer 2.1.1 (optional) (Alan Ezust) + + Closing one View does not remove toolbars from all other views. + Un-broke some earlier plugin-breaking changes. + Improved Perl error pattern bug# 1195354 + + Version 4.2.2 Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, + ProjectViewer 2.1.1 (optional) (Alan Ezust) + + Rewrote the Error Pattern dialog into a JPanel, embeddable in the larger + OptionPane. No more popping up of dialogs for editing an error pattern. + + Now it is possible to enable/disable individual error matchers with a + checkbox there. + + Version 4.2.1 Requires jEdit 4.2 final, ErrorList 1.3.5, and JDK 1.5. + Optional: Projectviewer 2.1.0.92 (for listening to events) (Alan Ezust) + + Rewrote command execution part to use the JDK 1.5 ProcessBuilder class. + This made it possible to merge stdout and stderr, which means that the + output of make, which sends its "entering/leaving" messages to stdout, + and its error messages to stderr, can be merged into one stream for + parsing. + + Applied encoding patch from jedit-plugin-bugs #1245860. + Context menu on commando buttons lets you hide/customize the built-in + commands with ease. + New beanshell commands bound to system shell actions: chdir to + ProjectViewer root, and chdir to ProjectViewer current. + Option to bind the above actions to new ProjectViewer Events. + Console Preferences allow you to set a prefix, so you can run each + command in an alternate shell (not working yet). + + Version 4.2 Requires jEdit 4.2 final, JDK 1.4, and ErrorList 1.3.5 + + Possibility of testing regular expressions in the Plugin Options - + Console - Error Patterns. + Rewrote to use java.util.Pattern instead of gnu.regex.RE. + Possibility of selecting which Commando buttons are shown in the toolbar. + Added some more Commando buttons (make, ant) to choose from. + Misc bugfixes - Alan Ezust + + Version 4.1.2 requires jEdit 4.2final, JDK 1.4, and ErrorList 1.3.1. + + Console caret color is now configurable (Justin Dieters). + + Version 4.1.1 requires jEdit 4.2final and the ErrorList plugin 1.3.1. + + Fixed race condition with command output to a buffer that could result + in a NullPointerException. + Commando dialog fields are saved, as long as they do not result from a + computed evaluation (for example, path names are not saved because they + are computed from the current buffer's name). + Pressing Control+Z detaches the foreground process. The process + continues running in the background, and no longer shows output in the + console. + + Version 4.1 requires jEdit 4.2final and the ErrorList plugin 1.3.1. + + Minor change to EvalAction for Factor. + Invoking %clear in the system shell would print the prompt twice. + Passing a path name that is not a directory to %cd now prints an error. + If running a command caused the current shell to be changed, output + would still go to the old shell. + Error parsing and copying of text from the console was broken on + Windows, due to incorrect line terminator handling. + Automatically check for files being changed on disk after a command + completes. + + Version 4.0.1 requires jEdit 4.2final and the ErrorList plugin 1.3.1. + + Generic error pattern was broken. + + Version 4.0 requires jEdit 4.2final and the ErrorList plugin 1.3.1. + + The separate input field is now gone; all input is done in the console + pane. + The plugin can now send standard input to processes. Press Control+D to + send an end-of-file. + Unloading the Console plugin did not hide the Commando tool bar. + Console tool bar is now gone, since the console input field component no + longer exists. + Fixed a minor flaw in the generic error pattern, add Python error + pattern (Ollie Rutherfurd). + If an error was raised by the BeanShell, opening the Console in + subsequently-created views would fail because of a rogue variable that + was set in the global namespace. + Modified: plugins/Console/trunk/docs/users-guide.xml =================================================================== --- plugins/Console/trunk/docs/users-guide.xml 2011-12-17 16:17:55 UTC (rev 20661) +++ plugins/Console/trunk/docs/users-guide.xml 2011-12-18 18:16:21 UTC (rev 20662) @@ -1,14 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- jEdit buffer-local properties: --> -<!-- maxLineLen=0:wrap=soft:indentSize=1:noTabs=true: --> -<!-- jEdit user's guide --> -<!-- (C) 1999, 2004 Slava Pestov --> -<!-- (C) 2001, 2002 John Gellene --> -<!-- (C) 2005, 2011 Alan Ezust --> +<!-- :maxLineLen=80:wrap=hard:indentSize=2:noTabs=true: --> <book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation='http://www.docbook.org/xsd/4.4/docbook.xsd' > -<!-- Console user's guide --> -<!-- (C) 2001, 2005 Slava Pestov --> <bookinfo> <title>Console plugin user's guide</title> @@ -57,35 +51,43 @@ graphical front-ends, specified using an XML file, to command-line tools.</para> </listitem> <listitem> - <para>Providing an extensible framework for other plugins that need to display streamed output.</para> + <para>Providing an extensible framework for other plugins that need to + display streamed output.</para> </listitem> </itemizedlist> - </chapter> - <chapter id="setup"> - <title> Setup/Options </title> - <bridgehead> ProjectViewer Integration </bridgehead> - + <para> Console has an optional dependency on ProjectViewer. - What this means is that it has some extra features which you can see if you have also installed ProjectViewer plugin. In particular they are: </para> + What this means is that it has some extra features which you can see if you + have also installed ProjectViewer plugin. In particular they are: </para> <orderedlist> <listitem><para> Actions <guimenuitem>Compile Project</guimenuitem> and <guimenuitem>Run Project</guimenuitem> which are - configured from ProjectViewer's <guimenuitem>Console</guimenuitem> properties pane. </para></listitem> - - <listitem><para> The ability to listen to node change events from the ProjectViewer and make changes to the System shell's current directory. </para></listitem> + configured from ProjectViewer's <guimenuitem>Console</guimenuitem> properties + pane. </para></listitem> + <listitem><para> The ability to listen to node change events from the + ProjectViewer and make changes to the System shell's current directory. + </para></listitem> + <listitem><para> The ability to query the ProjectViewer for the "current root directory" to run build commands from. This is used by the Console commandos for "ant", "make", and "qmake", and perhaps others<footnote><para> If you wish to use these commando buttons without the projectviewer, right click on the commando buttons, "customize" and edit the XML file, removing the lines that refer to projectviewer. </para></footnote>. </para></listitem> - + </orderedlist> + + </chapter> + + <chapter id="setup"> + <title> Setup/Options </title> + + <bridgehead> Option Panes </bridgehead> <para> By selecting <literal>Plugin Options - Console </literal>, you will @@ -95,10 +97,13 @@ <bridgehead> Console - General Options </bridgehead> - <para> Here, you can set general options that apply to all shells, such as showing the welcome message, character encoding to use, scrollback buffer size, colors, etc. </para> + <para> Here, you can set general options that apply to all shells, such as + showing the welcome message, character encoding to use, scrollback buffer + size, colors, etc. </para> <itemizedlist> - <listitem><para><emphasis>Show Welcome Message</emphasis> - suppress welcome message on shells. </para> + <listitem><para><emphasis>Show Welcome Message</emphasis> - suppress welcome + message on shells. </para> </listitem> <listitem><para><emphasis>Character Encoding</emphasis> - If you want to @@ -110,25 +115,39 @@ <itemizedlist> <listitem> - <para> <emphasis>Shell Prefix </emphasis> - This string is inserted before the command you type whenever a command is executed. Console itself does parse and preprocess your commands in its own way, but you have the option of having the commands subsequently evaluated by your native command line shell, which will in turn execute your command. + <para> <emphasis>Shell Prefix </emphasis> - This string is inserted before + the command you type whenever a command is executed. Console itself does + parse and preprocess your commands in its own way, but you have the option + of having the commands subsequently evaluated by your native command line + shell, which will in turn execute your command. </para> - <para> Console can choose a sensible os-specific shell prefix for you, by setting it to <literal>osdefault</literal>. If this field is blank, or if <literal>none</literal> is used, Console will execute commands directly (without a prefix). - I prefer using a native shell for its functions, aliases, and redirection, but you can try different values here to see which works best for you. + <para> Console can choose a sensible os-specific shell prefix for you, by + setting it to <literal>osdefault</literal>. If this field is blank, or if + <literal>none</literal> is used, Console will execute commands directly + (without a prefix). + I prefer using a native shell for its functions, aliases, and redirection, + but you can try different values here to see which works best for you. </para> - <para> In addition, if you like to use a different shell from the OS-default (4NT, or cygwin's bash), you can add it to this list and see if it works. </para> + <para> In addition, if you like to use a different shell from the + OS-default (4NT, or cygwin's bash), you can add it to this list and see if + it works. </para> </listitem> <listitem> <para> - <emphasis>Merge stdout and stderr</emphasis> - this option will only affect users of "make", where Console needs to merge the streams in order to resolve pathnames of files of errors inbetween "make entering..leaving" messages. + <emphasis>Merge stdout and stderr</emphasis> - this option will only + affect users of "make", where Console needs to merge the streams in + order to resolve pathnames of files of errors inbetween "make + entering..leaving" messages. </para> </listitem> <listitem><para><emphasis>Subshell extra PATH</emphasis> - This option prepends directories to the environment before spawning - subprocesses. If you want your jedit console to be able to find some files in the path, add those directories here. + subprocesses. If you want your jedit console to be able to find some + files in the path, add those directories here. </para></listitem> <listitem><para><emphasis>Append extra dirs to PATH</emphasis> - if checked, append instead of prepend the extra directories. @@ -141,30 +160,44 @@ The commands can be executed by keyboard shortcuts even if the toolbar is not enabled. You can check and un-check which commands show up in the menus and toolbars. </para> - + <bridgehead> Error Patterns Options </bridgehead> <para> This option dialog allows you fine grained control over Console's error parsing capabilities. </para> - <para> Each line of output that is generated by a program that is run in the Console <literal>System</literal> (and <literal>ssh</literal>) shells is checked against a number of error patterns to determine if the line is part of an error message. If the error message is found, pieces of information are extracted from it to get the line number and filename. This information is in turn fed into Error List to give you a convenient way to send the editor to the location of an error message. </para> + <para> Each line of output that is generated by a program that is run in the + Console <literal>System</literal> (and <literal>ssh</literal>) shells is + checked against a number of error patterns to determine if the line is part of + an error message. If the error message is found, pieces of information are + extracted from it to get the line number and filename. This information is in + turn fed into Error List to give you a convenient way to send the editor to the + location of an error message. </para> -<para> Each error pattern is a set of regular expressions. To edit, test, add, or remove error patterns from Console's output parsing module, you can select this option dialog. Keep in mind, you must "test/commit" each error pattern before clicking 'ok'. This helps avoid accidentally committing invalid regular expressions that may cause parse errors. +<para> Each error pattern is a set of regular expressions. To edit, test, add, +or remove error patterns from Console's output parsing module, you can select +this option dialog. Keep in mind, you must "test/commit" each error pattern +before clicking 'ok'. This helps avoid accidentally committing invalid regular +expressions that may cause parse errors. </para> <tip> <title> Removing unused patterns. </title> -<para> Since many of the error patterns are similar, it is possible that one of the existing patterns is getting triggered before Console sees the one you are developing. For this reason, it is suggested you remove or disable the error patterns you are not using, and place the error patterns for the tools you use most often at the top of the list. +<para> Since many of the error patterns are similar, it is possible that one of +the existing patterns is getting triggered before Console sees the one you are +developing. For this reason, it is suggested you remove or disable the error +patterns you are not using, and place the error patterns for the tools you use +most often at the top of the list. </para> </tip> <bridgehead> Compile and Run Options </bridgehead> -<para> For each edit mode, you can choose a command that is - used to compile or run a buffer. +<para> For each edit mode, you can choose a command that is + used to compile or run a buffer. This can be either a commando command or a custom command. - These commands are executed in the System shell. + These commands are executed in the System shell. </para> </chapter> @@ -172,11 +205,17 @@ <chapter id="window"> <title>The console window</title> - <para> <guimenu>Plugins</guimenu> -> <guisubmenu>Console</guisubmenu> -> <guimenuitem>Console</guimenuitem> displays the console window. This window is floating by default, but can be made to dock into the view in the <guilabel>Docking</guilabel> pane of the <guimenuitem>Global Options</guimenuitem> dialog box. + <para> <guimenu>Plugins</guimenu> -> <guisubmenu>Console</guisubmenu> -> + <guimenuitem>Console</guimenuitem> displays the console window. This window is + floating by default, but can be made to dock into the view in the + <guilabel>Docking</guilabel> pane of the <guimenuitem>Global + Options</guimenuitem> dialog box. </para> <para> - The console window consists of a popup for choosing the current <firstterm>shell</firstterm>, a series of icon buttons, and a shell input/output area that occupies the remaining space of the window. + The console window consists of a popup for choosing the current + <firstterm>shell</firstterm>, a series of icon buttons, and a shell + input/output area that occupies the remaining space of the window. </para> <para> @@ -1581,601 +1620,8 @@ <appendix id="changes"> <title>Change log</title> - <itemizedlist> + <para> Click <ulink url="docs/CHANGELOG.txt">here</ulink> to see the full + changelog. </para> + </appendix> - <listitem id="ver4.4.4"><para> - <emphasis role="bold">Version 4.4.4</emphasis> Requires jEdit 4.4.2, JDK 1.6, ErrorList 1.9, - ProjectViewer 3 (optional). - <itemizedlist> - <listitem><para> Respects jEdit's "use textArea colors" appearance option. </para></listitem> - <listitem><para> New ProjectViewer option pane for defining new actions to compile and run a project. (#3153058 - Damien Radtke) </para></listitem> - - </itemizedlist> - </para></listitem> - - - <listitem id="ver4.4.3"><para> - <emphasis role="bold">Version 4.4.3</emphasis> Requires jEdit 4.4pre1, JDK 1.6, ErrorList 1.9, - ProjectViewer 3.0 (optional). - <itemizedlist> - <listitem><para> API fixes for compatibility with jEdit 4.5. </para></listitem> - <listitem><para> New general option to set favorite shell, or remember previous selected shell. </para></listitem> - <listitem><para> No longer generates hidden commandos in the dialog (available via combobox selector). </para></listitem> - <listitem><para> Configurable command history size (#2648110 - Eric Le Lay). </para></listitem> - <listitem><para> Avoided occasional performance down with large output when maximum scroll buffer size is not set. (Kazutoshi Satoda). </para></listitem> - </itemizedlist> </para> - </listitem> - - <listitem id="ver4.4.2"><para> - <emphasis role="bold">Version 4.4.2</emphasis> Requires jEdit 4.3pre99, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> - <listitem><para> Un-customize now works even if no FSB is shown yet. </para></listitem> - <listitem><para> Do checkBufferStatus() in the event dispatch thread (# 2933468 - Dale Anson) </para></listitem> - <listitem><para> No longer uses objectfactory xml parser (Eric Le Lay # 2927830) </para></listitem> - <listitem><para> Fixed built-in <literal>pwd</literal> system shell command. </para></listitem> - - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.4.1"><para> - <emphasis role="bold">Version 4.4.1</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> - <listitem><para> Patch #2893518 - un-synchronized getOutput() to avoid deadlocks (Damien Radtke) </para></listitem> - <listitem><para> Report errors for processes with only one multiline error, fixing regression introduced by 2783642 in Console 4.4. </para></listitem> - <listitem><para> Added an "uncustomize" context menu item for Commando Buttons that override same-named commando.xml files from the jar, to easily restore them to the previous state, as well as indicators via tooltip and color, that a button has been customized. </para></listitem> - </itemizedlist> - </para></listitem> - - <listitem id="ver4.4"><para> - <emphasis role="bold">Version 4.4</emphasis> Requires jEdit 4.3pre17, JDK 1.5, ErrorList 1.4, ProjectViewer 2.9 (optional). <itemizedlist> - <listitem><para> Updated to listen to ProjectViewer 2.9 project switch events. </para></listitem> - <listitem><para> Updated to use jEdit 4.2 EditBus registration technique (Shlomy Reinstein), for compatibility with MyDoggy Plugin. </para></listitem> - <listitem><para> System shell built-in cd changes drives as well as directories on windows. (Alan Ezust) </para></listitem> - <listitem><para> Console: Immediately report errors to ErrorList (Shlomy Reinstein - # 2783642) </para></listitem> - - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.3.8"><para> - <emphasis role="bold">Version 4.3.8</emphasis> Requires jEdit 4.3pre13, JDK 1.5, ErrorList 1.4, ProjectViewer 2.1.3 (optional). <itemizedlist> - - <listitem><para> Scrolls to bottom whenever dockable is activated. (Alan Ezust) </para></listitem> - <listitem><para> 1928738 Fix NPEs caused by patch #1859034 - k_satoda </para></listitem> - <listitem><para> Updated console.bsh macros for reloacted beanshell in pre12. </para> </listitem> - <listitem><para> Option to append (instead of prepend) subshell extra path. (Alan Ezust) </para></listitem> - <listitem><para> Change to PV selected node no longer causes Console to show if it is not already showing. (Alan Ezust) - </para></listitem> - </itemizedlist> </para></listitem> - - - <listitem id="ver4.3.7"><para> - <emphasis role="bold">Version 4.3.7</emphasis> Requires jEdit 4.3pre13, JDK 1.5, ErrorList 1.4, ProjectViewer 2.1.3 (optional). <itemizedlist> - <listitem><para> Rebuilt against pre13 for binary compatibility </para></listitem> - <listitem><para> getProjectRoot directory more robust from make.xml, ant.xml and javac.xml - doesn't care if you don't have ProjectViewer or an active project. </para></listitem> - </itemizedlist> - </para></listitem> - - - <listitem id="ver4.3.6"><para> - <emphasis role="bold">Version 4.3.6</emphasis> Requires jEdit 4.3pre12, JDK 1.5, ErrorList 1.4, and ProjectViewer 2.1.3 (optional). <itemizedlist> - <listitem><para> New option to remember current working directory from previous sessions (ezust) </para></listitem> - <listitem><para> fix bug in capture of extra line for error (1854413 - David Bernard) </para></listitem> - <listitem><para> Forward slashes no longer substituted and driveletters no longer prepended in arguments except when expanding completions on MS-Windows. (#185614 - k_satoda, ezust) </para></listitem> - <listitem><para> Subshell extra PATH works now (k_satoda - 1859034) </para></listitem> - </itemizedlist> - </para></listitem> - - <listitem id="ver4.3.5"><para> - <emphasis role="bold">Version 4.3.5</emphasis> Requires jEdit 4.3pre12, JDK 1.5, ErrorList 1.4, and ProjectViewer 2.1.3 (optional). <itemizedlist> - <listitem><para> Updated for relocated beanshell package in 4.3pre12. </para></listitem> - <listitem><para> runCommandToBuffer() doesn't send command to buffer (1643269 - ezust) </para></listitem> - <listitem><para> waitForConsole(view) should work properly on *nix systems now. (k_satoda, ezust - #1698976) </para></listitem> - <listitem><para> <literal>alias ant ant -emacs</literal> to get rid of adornments when running inside System shell (ezust).</para></listitem> - <listitem><para> Improved <literal>generic</literal> extra line regexp - catches javac and gcc multilines better. Made #1 on list. (ezust). </para></listitem> - <listitem><para> (windows only) - driveletters work in Console the way they do in <literal>cmd.exe</literal>, as change-directory shortcuts. Console keeps track of default directories for each drive, as well as the default drive for the current shell session. Also, / works as well as \ for path separators. (Alan Ezust - bug#1511941 ) </para></listitem> - <listitem><para> Small changes to make the SshConsole plugin work (ezust). </para> </listitem> - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.3.4"> - <para> - <emphasis role="bold">Verison 4.3.4</emphasis> Requires jEdit 4.3pre11, JDK 1.5, ErrorList 1.4, and ProjectViewer 2.1.1 (optional). - <itemizedlist> - <listitem><para> New General Option: chdir VFS node select events. Listens to new VFSPathSelected EBMessage (jEdit 4.3pre11). - </para> </listitem> - <listitem><para> Fixes to perl error pattern, and to the ErrorMatcher regex routine, to allow for partial line matches (#1764455 - Shlomy Reinstein). </para></listitem> - <listitem><para> ErrorPatternOptionPane buttons to add/remove/up/down error patterns work better now (#1715796 - Shlomy Reinstein). </para></listitem> - </itemizedlist> - </para> - </listitem> - - - <listitem id="ver4.3.3"> - <para> - <emphasis role="bold">Version 4.3.3 </emphasis> - Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and ProjectViewer 2.1.1 (optional) - <itemizedlist> - <listitem><para> 1727037, 1726365 applied, handling error lines in StreamThread better. (k_satoda) </para></listitem> - <listitem><para> 1700484 fixed, was not registering dynamic shortcuts on startup. </para></listitem> - <listitem><para> 1671430 cd to project root/node needs line break </para></listitem> - <listitem><para> Ctrl-P and Ctrl-N select through command history (ezust). </para></listitem> - <listitem><para> Paste in the panel moves caret to end of input before pasting (ezust). </para></listitem> - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.3.2"> - <para> - <emphasis role="bold">Version 4.3.2</emphasis> - Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - <itemizedlist> - <listitem><para> (1665849) PV CD to selected node no longer requires system shell to be active. (Alan Ezust) </para></listitem> - <listitem><para> Buffered Console output is fixed, improved performance rendering command output. (Marcelo Vanzin) - </para></listitem> - <listitem><para> New option: Max console scrollback buffer size (Carmine Lucarelli) </para></listitem> - </itemizedlist> - </para> - </listitem> - - - <listitem id="ver4.3.1"> - <para> - <emphasis role="bold">Version 4.3.1</emphasis> - Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - <itemizedlist> - <listitem><para> Process exited message - from shell command to buffer no longer ends up in buffer. </para> - </listitem> - <listitem><para>(#1630431) Typing in the consolepane when caret is not at bottom moves caret to end of document first. (Alan Ezust) - </para></listitem> - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.3.0"> - - <para> - <emphasis role="bold">Version 4.3.0</emphasis> - Requires jEdit 4.3pre7, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - <itemizedlist> - <listitem><para> New dynamic ActionSet (Plugin: Console - Shell Switchers) generated for switching to, or toggling the Console, combined with selecting a specific shell. In other words, now you can bind a specific keyboard shortcut to "Toggle Beanshell" and another for "Show Ant Shell", etc. (Alan Ezust)</para> </listitem> - </itemizedlist> - </para></listitem> - - <listitem id="ver4.2.6.5"> - <para> - <emphasis role="bold">Version 4.2.6.5</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - </para> - <itemizedlist> - <listitem><para> - Bug# 1223288 - no longer buffering output of subprocesses. Some interactive programs work in Console again. (Christopher Plant) - </para></listitem> - <listitem><para> - Ctrl-Enter is now the same as "run command to buffer" </para></listitem> - - </itemizedlist> - </listitem> - - <listitem id="ver4.2.6.4"> - <para> - <emphasis role="bold">Version 4.2.6.4</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) (Alan Ezust) - </para> - <itemizedlist> - - <listitem><para> - Added option to not show welcome message. </para></listitem> - <listitem><para> - File completion now expands ~ as the homedir. </para></listitem> - <listitem><para> - Ctrl-U deletes what you typed. </para></listitem> - <listitem><para> Bugfix with runInSystemShell - selects the correct Output now. </para></listitem> - </itemizedlist> - </listitem> - - - - <listitem id="ver4.2.6.3"> - <para> - <emphasis role="bold">Version 4.2.6.3</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - </para> - <itemizedlist> - <listitem><para> Improved LaTeX commando. </para></listitem> - <listitem><para> Fixed bug # 1480991 related to printing exit codes after a subprocess exits. </para></listitem> - </itemizedlist> - - - </listitem> - <listitem id="ver4.2.6.2"> - <para> - <emphasis role="bold">Version 4.2.6.2</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - </para> - <itemizedlist> - <listitem> <para> New console prefix modes: "osdefault" and "none". Both work now, and are documented. </para></listitem> - - <listitem><para> For bash prefix mode, fixed some quote handling bugs. </para></listitem> - - </itemizedlist> - - </listitem> - <listitem id="ver4.2.6.1"> - <para> - <emphasis role="bold">Version 4.2.6.1</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) (Alan Ezust) - </para> - <itemizedlist> - <listitem> <para> - Improved <command>make</command> and <command>ant</command> commando buttons (They grab ProjectViewer's root dir). - </para> - </listitem> - <listitem> - <para> - Fixed *nix quoting/spacing/platform issues (1468934). - </para></listitem> - <listitem><para> - Fixed 1459562 - Console.waitFor() now works. </para></listitem> - <listitem><para> - Added checkboxes in General Option Pane: showExitStatus and mergeStreams. </para></listitem> - <listitem><para> - Added "none" option for shell prefix (which currently does not work). </para></listitem> - </itemizedlist> - </listitem> - <listitem id="ver4.2.6"> - <para> - <emphasis role="bold">Version 4.2.6</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - <itemizedlist> - <listitem> - <para> - Generic error pattern handles windows pathnames now. - </para></listitem> - <listitem> - <para> Improved/updated documentation. </para> </listitem> - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.2.5.2"> - <para> - <emphasis role="bold">Version 4.2.5.2</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) - <itemizedlist> - <listitem> <para> - Bugs fixed: 1185273, 1465602, 1450389. (Ezust) - </para> - </listitem> - <listitem> - <para> - Rewrote variable substitution code. (Ezust) - </para> - </listitem> - <listitem> - <para> - Merging stdout/stderr of subprocesses is optional and works now. (Ezust) - </para> - </listitem> - <listitem> - <para> - Rewrote the StreamThread class to use StreamReader. - This means that output and error parsing is faster now. (Marcello Vanzin) </para> - </listitem> - </itemizedlist> - </para></listitem> - - <listitem id="ver4.2.5.1"> - <para> - <emphasis role="bold">Version 4.2.5.1</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) (Alan Ezust) - <itemizedlist> - <listitem> <para> - Bugs fixed: 1460349 1459481 1459460 1454080 1449325 1448809 - </para> - </listitem> - <listitem> - <para> - added informative label in <classname>ErrorOptionPane</classname> so people Test/Commit changes to error paths. - </para> - </listitem> - <listitem> - <para> - feature request 1202051 - now users can prepend directories to the <envar>PATH</envar> of child processes. - </para> - </listitem> - </itemizedlist> - </para> - - </listitem> - - <listitem id="ver4.2.5"> - <para> - <emphasis role="bold">Version 4.2.5</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) </para> - <para> - Bugfixes, refactoring, code cleanup. (Alan Ezust) - </para> - </listitem> - - - <listitem id="ver4.2.4"> - <para> - <emphasis role="bold">Version 4.2.4</emphasis> - - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, and - ProjectViewer 2.1.1 (optional) (Alan Ezust) </para> - <itemizedlist> - <listitem> - <para> - Closing one View does not remove toolbars from all other views.</para> - </listitem> - <listitem> - <para> Un-broke some earlier plugin-breaking - changes. - </para> - </listitem> - <listitem> - <para> - Improved Perl error pattern bug# 1195354 - </para> - </listitem> - </itemizedlist> - </listitem> - - <listitem id="ver4.2.2"> - <para> - <emphasis role="bold">Version 4.2.2</emphasis> - Requires jEdit 4.2 final, JDK 1.5, ErrorList 1.3.5, - ProjectViewer 2.1.1 (optional) (Alan Ezust) - </para> - - <itemizedlist> - <listitem> - <para> - Rewrote the Error Pattern dialog into a JPanel, embeddable in the - larger OptionPane. No more popping up of dialogs for editing an error - pattern. </para> - <para> - Now it is possible to enable/disable individual error matchers with - a checkbox there. </para> - </listitem> - </itemizedlist> - </listitem> - - <listitem id="ver4.2.1"> - <para> - <emphasis role="bold">Version 4.2.1</emphasis> - Requires jEdit 4.2 final, ErrorList 1.3.5, and <emphasis role="bold">JDK 1.5</emphasis>. - Optional: Projectviewer 2.1.0.92 (for listening to events) (Alan Ezust) - <itemizedlist> - <listitem> - <para> - Rewrote command execution part to use the JDK 1.5 - <literal>ProcessBuilder</literal> class. This made it possible to - merge <literal>stdout</literal> and <literal>stderr</literal>, - which means that the output of <literal>make</literal>, which - sends its "entering/leaving" messages to stdout, and its error - messages to stderr, can be merged into one stream for parsing. </para> - </listitem> - - <listitem> - <para> - Applied encoding patch from jedit-plugin-bugs #1245860. - </para> - </listitem> - - <listitem> - <para> Context menu on commando buttons lets you hide/customize the - built-in commands with ease. </para> - </listitem> - - <listitem> - <para>New beanshell commands bound to system shell actions: chdir to - ProjectViewer root, and chdir to ProjectViewer current. - </para> - </listitem> - - <listitem> - <para>Option to bind the above actions to new ProjectViewer - Events. </para> - </listitem> - - <listitem> - <para> Console Preferences allow you to set a prefix, so you can - run each command in an alternate shell (not working yet). </para> - - - </listitem> - </itemizedlist> - </para> - </listitem> - - <listitem id="ver4.2"> - <para> - <emphasis role="bold">Version 4.2</emphasis> - Requires jEdit 4.2 final, JDK 1.4, and ErrorList 1.3.5 </para> - - <itemizedlist> - <listitem> - <para> - Possibility of testing regular expressions in the - Plugin Options - Console - Error Patterns. </para> - </listitem> - - <listitem> - <para> Rewrote to use <classname>java.util.Pattern</classname> - instead of <classname>gnu.regex.RE</classname>. </para> - </listitem> - - <listitem> - <para> - Possibility of selecting which Commando buttons are shown in the - toolbar. - </para> - </listitem> - <listitem> - <para>Added some more Commando buttons (make, ant) to choose from. </para> - </listitem> - <listitem> - <para>Misc bugfixes - Alan Ezust</para> - </listitem> - </itemizedlist> - </listitem> - - - <listitem id="ver4.1.2"> - <para> - <emphasis role="bold">Version 4.1.2</emphasis> - requires jEdit 4.2final, JDK 1.4, and ErrorList 1.3.1.</para> - - <itemizedlist> - <listitem> - <para>Console caret color is now configurable (Justin Dieters). - </para> - </listitem> - </itemizedlist> - </listitem> - - <listitem id="ver4.1.1"> - <para> - <emphasis role="bold">Version 4.1.1</emphasis> - requires jEdit 4.2final and the ErrorList plugin 1.3.1.</para> - - <itemizedlist> - <listitem> - <para>Fixed race condition with command output to a buffer that - could result in a <classname>NullPointerException</classname>. - </para> - </listitem> - <listitem> - <para>Commando dialog fields are saved, as long as they do not - result from a computed evaluation (for example, path names are not saved - because they are computed from the current buffer's name). - </para> - </listitem> - <listitem> - <para>Pressing <keycombo><keycap>Control</keycap> - <keycap>Z</keycap> - </keycombo> - detaches the foreground process. The process continues running in the background, and no longer shows - output in the console. - </para> - </listitem> - </itemizedlist> - - </listitem> - - - <listitem> - <para> - <emphasis role="bold">Version 4.1</emphasis> - requires jEdit 4.2final and the ErrorList plugin 1.3.1.</para> - - <itemizedlist> - <listitem> - <para>Minor change to <classname>EvalAction</classname> for Factor. - </para> - </listitem> - <listitem> - <para>Invoking <function>%clear</function> in the system shell would - print the prompt twice. - </para> - </listitem> - <listitem> - <para>Passing a path name that is not a directory to <function>%cd</function> - now prints an error. - </para> - </listitem> - <listitem> - <para>If running a command caused the current shell to be changed, output would - still go to the old shell. - </para> - </listitem> - <listitem> - <para>Error parsing and copying of text from the console - was broken on Windows, due to incorrect line terminator - handling. - </para> - </listitem> - <listitem> - <para>Automatically check for files being changed on disk after a command completes. - </para> - </listitem> - </itemizedlist> - </listitem> - - <listitem> - <para> - <emphasis role="bold">Version 4.0.1</emphasis> - requires jEdit 4.2final and the ErrorList plugin 1.3.1.</para> - - <itemizedlist> - <listitem> - <para>Generic error pattern was broken. - </para> - </listitem> - </itemizedlist> - </listitem> - - <listitem> - <para> - <emphasis role="bold">Version 4.0</emphasis> - requires jEdit 4.2final and the ErrorList plugin 1.3.1.</para> - - <itemizedlist> - <listitem> - <para>The separate input field is now gone; all input is done - in the console pane. - </para> - </listitem> - <listitem> - <para>The plugin can now send standard input to processes. Press - <keycombo><keycap>Control</keycap> - <keycap>D</keycap> - </keycombo> to send - an end-of-file. - </para> - </listitem> - <listitem> - <para>Unloading the Console plugin did not hide the Commando - tool bar. - </para> - </listitem> - <listitem> - <para>Console tool bar is now gone, since the console input field - component no longer exists. - </para> - </listitem> - <listitem> - <para>Fixed a minor flaw in the generic error pattern, add Python - error pattern (Ollie Rutherfurd). - </para> - </listitem> - <listitem> - <para>If an error was raised by the BeanShell, opening the Console - in subsequently-created views would fail because of a rogue variable that - was set in the global namespace. - </para> - </listitem> - </itemizedlist> - </listitem> - - </itemizedlist> - - </appendix> - </book> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |