Menu

Eclipse editor problems

Help
AlanD
2006-07-30
2013-05-20
  • AlanD

    AlanD - 2006-07-30

    I use Eclipse on WinXP Home. I have the EPIC Perl plugin. I use ActivePerl-5.8.8.817

    Sometimes the editor behaves strangely. The error message is "Unable to create this part due to an internal error." In these cases, the only cure is to delete the file and start again.

    The file can be opened using right-click, "Open With Text Editor". The script runs successfully. This proves that it's an editor problem.

    Please advise.

    Alan

     
    • Jae Gangemi

      Jae Gangemi - 2006-07-30

      can you post what the contents of the editor look like? my initial guess would be that the source parser is barfing on something it doesn't understand.

      i notice the same behavior trying to open a script that uses perl format syntax. see https://sourceforge.net/tracker/index.php?func=detail&aid=1515251&group_id=75859&atid=545274

       
    • Wolfgang Baron

      Wolfgang Baron - 2006-07-31

      Yes, it must be the parser, it seems to be very alpha. It crashes on simple lines like:

      print $^O;

       
    • AlanD

      AlanD - 2006-07-31

      I have narrowed the problem down to the use of "$" in the first line in the file, if this line is pasted from another text file:

      $in = "web-client.xml";

      1) There is no problem if this line is typed into Eclipse, rather than pasted.

      2) When I paste it from another file, I get the error: "Paste did not complete normally".

      3) It does not matter whether I paste only that line, or as part of a group of lines, or in the middle of a group of lines, or at the end of a group of lines. I always get the "Paste" error.

      4) If I do not inlcude the "$" as part of the paste, there is no error (although of course Eclipse shows the error icon):

      in = "web-client.xml";

      5) When the editor is in this error mode caused by the paste, typing a "$" at the start of any line causes strange behaviour. The "$" is displayed, but the cursor remains before the "$. If I move the cursor after the "$", and type another character, that character is displayed, but again the cursor is before the character.

      6) If I type a "$" anywhere else except the start of a line, there is no problem.

       
      • Jan Ploski

        Jan Ploski - 2006-08-01

        The key question is: which version of EPIC are you using? I cannot reproduce any of these problems with epic-devel (using Linux, Eclipse 3.1, though).

         
        • Jae Gangemi

          Jae Gangemi - 2006-08-01

          i'm using 3.2 - and the sample scripts in the bug i posted reproduce the problem each time.

          in the case of the "OutOfMemory" exception, i debugged down into the parser, and it seems like it's getting stuck in some kind of loop.

          i believe the SWT error occurs b/c the parser goes too far and includes more code then is part of the current subroutine it may be parsing, and when the text is styles, the location values passed to it are incorrect.

          in my case, i think the bug would be fixed by telling the parser that "format" is a special kind of subroutine that ends when it finds a single "." on a line, but i don't know enough about lexical grammers to add that in.

           
    • AlanD

      AlanD - 2006-07-31

      It's not only the "$" that won't paste. "@" has the same problems when I try to paste the line:

      my @values = split(',', $data);

      Removing the "$" before pasting did not prevent the paste error. Also removing "@" now prevents the paste error.

       
    • Anonymous

      Anonymous - 2006-08-01

      I am getting this problem too. But in my case it is none of the specified reasons. This is quite frustrating because the error message does not seem to indicate what the problem actually is and there is nothing that would help me avoid or work around the problem (if that is possible at all).

      Here is the complete error message:
      java.lang.IllegalArgumentException: Argument not valid
          at org.eclipse.swt.SWT.error(SWT.java:3358)
          at org.eclipse.swt.SWT.error(SWT.java:3297)
          at org.eclipse.swt.SWT.error(SWT.java:3268)
          at org.eclipse.swt.custom.StyledText.setStyleRanges(StyledText.java:7697)
          at org.eclipse.swt.custom.StyledText.setStyleRanges(StyledText.java:7791)
          at org.eclipse.jface.text.TextViewer.applyTextPresentation(TextViewer.java:4235)
          at org.eclipse.jface.text.TextViewer.changeTextPresentation(TextViewer.java:4287)
          at org.eclipse.jface.text.presentation.PresentationReconciler.applyTextRegionCollection(PresentationReconciler.java:573)
          at org.eclipse.jface.text.presentation.PresentationReconciler.processDamage(PresentationReconciler.java:562)
          at org.eclipse.jface.text.presentation.PresentationReconciler.access$3(PresentationReconciler.java:558)
          at org.eclipse.jface.text.presentation.PresentationReconciler$InternalListener.inputDocumentChanged(PresentationReconciler.java:118)
          at org.eclipse.jface.text.TextViewer.fireInputDocumentChanged(TextViewer.java:2458)
          at org.eclipse.jface.text.TextViewer.setDocument(TextViewer.java:2507)
          at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:521)
          at org.eclipse.jface.text.source.projection.ProjectionViewer.setDocument(ProjectionViewer.java:370)
          at org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:453)
          at org.epic.perleditor.editors.PerlEditor.createActions(PerlEditor.java:128)
          at org.eclipse.ui.texteditor.AbstractTextEditor.createPartControl(AbstractTextEditor.java:2682)
          at org.eclipse.ui.texteditor.StatusTextEditor.createPartControl(StatusTextEditor.java:53)
          at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor.createPartControl(AbstractDecoratedTextEditor.java:367)
          at org.epic.perleditor.editors.PerlEditor.createPartControl(PerlEditor.java:605)
          at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:596)
          at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:372)
          at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566)
          at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:214)
          at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2588)
          at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2521)
          at org.eclipse.ui.internal.WorkbenchPage.access$10(WorkbenchPage.java:2513)
          at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2498)
          at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
          at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2493)
          at org.eclipse.ui.actions.OpenWithMenu$3.handleEvent(OpenWithMenu.java:317)
          at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
          at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1085)
          at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3164)
          at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2840)
          at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
          at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
          at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
          at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
          at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
          at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
          at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92)
          at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68)
          at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
          at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:585)
          at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336)
          at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
          at org.eclipse.core.launcher.Main.run(Main.java:977)
          at org.eclipse.core.launcher.Main.main(Main.java:952)

       
      • Jae Gangemi

        Jae Gangemi - 2006-08-01

        this is also a problem caused by the perl parser not knowing what to do w/ some of the perl code.

        at the moment, there is no work around other then to open the file in the regular text editor.

        is it possible for you to attach the perl script to the posted bug report, or a sample script that causes the problem to occur.

         
    • AlanD

      AlanD - 2006-08-01

      EPIC version is one week old: 0.3.0

      Eclipse: 3.2.0

      My Java error message is identical to jopeli's, even although jopeli says "in my case it is none of the specified reasons."

       
    • Olivier M

      Olivier M - 2006-08-04

      Hello,
      I am very newbye in Eclipse and EPIC PerlEditor. I have the same message, and Problem.
      In my point of view, this not a question of code form the file we want to open, because even if I try to open an empty file, I recieved the same message.
      .
      My point of view is that Eclipse tries to launch an binary file, that contains error, or illegal arguement.
      (Config i have : Perl 5.8.17, All lwp and xml packages, Java SE 1.5, eclipse 3.2 with EPIC Perl, C/C++ calisto)

      Cheers, Olivier

       
    • Olivier M

      Olivier M - 2006-08-04

      Hello Again,
      I have personnaly updated EPIC version to 0.40, and now the error message does not occur.
      The perlEditor can be used in my installation...

      Hope that will work to your platform ...
      Cheers,
      Olivier

       

Log in to post a comment.

MongoDB Logo MongoDB