Giter Site home page Giter Site logo

gfm_viewer's People

Contributors

kaloyan-raev avatar lpmi-13 avatar paulvi avatar satyagraha avatar upeuker avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gfm_viewer's Issues

Does not handle multiple Eclipse workbench windows properly

Via menu Window -> New, Eclipse supports multiple workbench windows, and in each workbench one should be able to have a GFM view with each separate view monitoring different markdown files. However, although the view creation does work, only a single update appears to be tracked and its updates are applied to every GFM view.

3 NPE when switching to Debug Perspective

Steps to reproduce
0. Install Node.js http://www.nodejs.org/download/

  1. Download latest Eclipse Kepler 4.3.1 http://www.eclipse.org/downloads/
  2. Install Nodeclipse http://www.nodeclipse.org/
  3. Switch to Node perspective
  4. open GFM View
  5. Create new Node project
  6. Right-click hello-word-server.js -> Debug as -> Node.js app
  7. When switched, Dialog with 3 Null Pointer Exceptions is shown.

error-1341-gfmview2istrackable

eclipse.buildId=4.3.0.I20130605-2000
java.version=1.7.0_25
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32
Framework arguments:  -product org.eclipse.epp.package.dsl.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.dsl.product

Error
Tue Oct 01 13:39:41 CST 2013
Problems occurred when invoking code from plug-in: "org.eclipse.ui.workbench".

java.lang.NullPointerException
    at code.satyagraha.gfm.viewer.views.GfmView$2.isTrackableFile(GfmView.java:88)
    at code.satyagraha.gfm.viewer.views.EditorTracker.checkIfTrackable(EditorTracker.java:111)
    at code.satyagraha.gfm.viewer.views.EditorTracker.partActivated(EditorTracker.java:62)
    at org.eclipse.ui.internal.PartService$6.run(PartService.java:131)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.PartService.partActivated(PartService.java:129)
    at org.eclipse.ui.internal.WorkbenchPage$15.run(WorkbenchPage.java:4798)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.WorkbenchPage.firePartActivated(WorkbenchPage.java:4796)
    at org.eclipse.ui.internal.WorkbenchPage.access$16(WorkbenchPage.java:4776)
    at org.eclipse.ui.internal.WorkbenchPage$E4PartListener.partActivated(WorkbenchPage.java:195)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$2.run(PartServiceImpl.java:183)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.firePartActivated(PartServiceImpl.java:181)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:595)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:539)
    at org.eclipse.e4.ui.internal.workbench.swt.AbstractPartRenderer.activate(AbstractPartRenderer.java:104)
    at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer$1.handleEvent(ContributedPartRenderer.java:59)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
    at org.eclipse.swt.widgets.Shell.setActiveControl(Shell.java:1453)
    at org.eclipse.swt.widgets.Shell.WM_MOUSEACTIVATE(Shell.java:2334)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4655)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340)
    at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1627)
    at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2075)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544)
    at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:80)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4706)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
    at org.eclipse.swt.internal.win32.OS.PeekMessageW(Native Method)
    at org.eclipse.swt.internal.win32.OS.PeekMessage(OS.java:3141)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)

GFM Viewer on Ubuntu

I have install the extension via Update URL, but it is not possible to use the view.
I get the message Unhandled event loop exception No more handles [Unknown Mozilla path (MOZILLA_FIVE_HOME not set)]

Thanks for your time.

[queston] How to .gitignore

Currently temp html files get . in the beginning. That is good, because Eclipse by default don't show such files.
Those files should never be committed into git repository, so I added /.* to .gitignore. However .gitignore also starts with . (dot), so how to commit .gitignore now?
I maybe just don't know some EGit or git way to do that.

Still not so nice when network is unstable (SocketTimeoutException)

As of 1.7.0 a Dialog is displayed.
This is great for 1 time, but when network is known to be unstable and and dialog appears every other time, it is a bit annoying.

What if Eclipse Console is used, there is option not to show those dialogs.

Not so critical. I just explored PhoneGap with npm install phonegap and it has a lot of README.md inside

com.sun.jersey.api.client.ClientHandlerException: java.net.SocketTimeoutException: Read timed out
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:151)
    at com.sun.jersey.api.client.filter.LoggingFilter.handle(LoggingFilter.java:183)
    at com.sun.jersey.api.client.Client.handle(Client.java:648)
    at com.sun.jersey.api.client.WebResource.handle(WebResource.java:680)
    at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74)
    at com.sun.jersey.api.client.WebResource$Builder.post(WebResource.java:558)
    at code.satyagraha.gfm.support.impl.WebServiceClientDefault.transform(WebServiceClientDefault.java:71)
    at code.satyagraha.gfm.support.impl.TransformerDefault.transformMarkdownText(TransformerDefault.java:90)
    at code.satyagraha.gfm.support.impl.TransformerDefault.transformMarkdownFile(TransformerDefault.java:75)
    at code.satyagraha.gfm.ui.impl.SchedulerDefault$2.run(SchedulerDefault.java:62)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
Caused by: java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:152)
    at java.net.SocketInputStream.read(SocketInputStream.java:122)
    at sun.security.ssl.InputRecord.readFully(InputRecord.java:442)
    at sun.security.ssl.InputRecord.read(InputRecord.java:480)
    at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)
    at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:884)
    at sun.security.ssl.AppInputStream.read(AppInputStream.java:102)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
    at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
    at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)
    at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1323)
    at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:249)
    at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:149)
    ... 10 more

NPE while debugging (GFM View in Node, not Debug perspective)

This is very similar to #20

NPE happens in 1.5.0 when switching into Debugging perspective

java.lang.NullPointerException
    at code.satyagraha.gfm.viewer.views.impl.MarkdownView$2.isTrackableFile(MarkdownView.java:85)
    at code.satyagraha.gfm.viewer.views.impl.MarkdownEditorTracker.editorShown(MarkdownEditorTracker.java:68)
    at code.satyagraha.gfm.ui.impl.PageEditorTrackerDefault.checkShown(PageEditorTrackerDefault.java:106)
    at code.satyagraha.gfm.ui.impl.PageEditorTrackerDefault.partActivated(PageEditorTrackerDefault.java:59)
    at org.eclipse.ui.internal.WorkbenchPage$15.run(WorkbenchPage.java:4798)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.WorkbenchPage.firePartActivated(WorkbenchPage.java:4796)
    at org.eclipse.ui.internal.WorkbenchPage.access$16(WorkbenchPage.java:4776)
    at org.eclipse.ui.internal.WorkbenchPage$E4PartListener.partActivated(WorkbenchPage.java:195)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$2.run(PartServiceImpl.java:183)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.firePartActivated(PartServiceImpl.java:181)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:595)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:539)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:528)
    at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:316)
    at org.eclipse.ui.internal.WorkbenchPage.bringToTop(WorkbenchPage.java:964)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.JavaEditor.doSelectionChanged(JavaEditor.java:2022)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.JavaEditor$OutlineSelectionChangedListener.selectionChanged(JavaEditor.java:273)
    at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:888)
    at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
    at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
    at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
    at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:886)
    at org.eclipse.jface.viewers.StructuredViewer.handleInvalidSelection(StructuredViewer.java:1177)
    at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1456)
    at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:403)
    at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1404)
    at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:1525)
    at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:280)
    at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1690)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.JavaOutlinePage.setInput(JavaOutlinePage.java:1203)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.JavaEditor.setOutlinePageInput(JavaEditor.java:1564)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.JavaEditor.internalDoSetInput(JavaEditor.java:2186)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.JavaEditor.doSetInput(JavaEditor.java:2160)
    at org.eclipse.wst.jsdt.internal.ui.javaeditor.CompilationUnitEditor.doSetInput(CompilationUnitEditor.java:1306)
    at org.eclipse.ui.texteditor.AbstractTextEditor.setInputWithNotify(AbstractTextEditor.java:4289)
    at org.eclipse.ui.texteditor.AbstractTextEditor.setInput(AbstractTextEditor.java:4311)
    at org.eclipse.ui.internal.WorkbenchPage.reuseEditor(WorkbenchPage.java:2958)
    at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.openEditor(SourceLookupFacility.java:280)
    at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.display(SourceLookupFacility.java:219)
    at org.eclipse.debug.ui.DebugUITools.displaySource(DebugUITools.java:998)
    at org.eclipse.debug.internal.ui.elements.adapters.StackFrameSourceDisplayAdapter$SourceDisplayJob.runInUIThread(StackFrameSourceDisplayAdapter.java:157)
    at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:95)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4145)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3762)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:138)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:610)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1426)

on/off-line, was: Still does not use local files

In #18

When Markdown Editor opens (or GFM View is activated),
if .md.html already exists, show it in the View, whatever current mode is (Linked or not)

I have README.md and .README.md.html,
README is from library (that is not edited),
I just want to see it, so I select Show in GFM VIew

Then I just see error Dialog (due to network problem or because I am offline)

Consider to publish stable mature version and look around

A thought came when I was about to answer #35 ...

I think the GFMV is very close to perfect.

Personally I believe a lot of project became worse because of too much code. In other words sometimes it is about writing less code and scrub old code or just stop for a while.

Daniel Winderstein has given me access write to repository https://github.com/winterstein/Eclipse-Markdown-Editor-Plugin that I don't have immediate plans to use
(maybe just small refresh release as 1.0 because ,in fact, it has been stable for long time). But the reason is that Daniel is not putting some time aside for the project.

Nodeclipse https://github.com/nodeclipse/nodeclipse-1/ added simple (Run As) support for Nashorn jjs, PhantomJS, MongoDB Shell JavaScript. I just was blown away, now the scope became all server-side JavaScript.
The feature set for 0.7 is ready but keep it as 0.6 was released just on Oct 6th.

For long I wanted to talk about what are the motives we do all those projects.

GFMV 2.0

Though contrary to #37 , here is new idea that worth 2.0 as it would have distinctive difference.

In my use case with Node.js, where almost all documentation is README.md coming from GitHub. I usually double-click to open editor. And then if Markdown markup is used a lot I want to switch to GFMV. That is actually not so quick, as by default the View will appear on area below, that is small. The better place is Editor area, or half of Editor area, for example in #29

But I think most users even don't know that they can drag-an-drop the View around.
(TODO GFMV should suggest that)

But I think, the most convenient would be [detachable] tab inside Markdown Editor, like Preview in HTML Editor.

I am not sure if it is possible in Eclipse 4
to have Part that can be inside tab and as View/Editor.

[feature request] show existing .md.html

When Markdown Editor opens (or GFM View is activated),
if .md.html already exists, show it in the View, whatever current mode is (Linked or not)

In Linked mode,
if .md.html file date is newer that .md file, no need to call transformation

Duplicate Keys not allowed. Duplicate for 'class code.satyagraha.gfm.viewer.views.MarkdownBrowserDefault'

Installed GFM 1.8.0 into Eclipse Kepler 4.3 SR1.

Steps:

  1. Start eclipse
  2. Open .md file
  3. Show view
  4. Close view
  5. Open view

Trace:
org.picocontainer.PicoCompositionException: Duplicate Keys not allowed. Duplicate for 'class code.satyagraha.gfm.viewer.views.MarkdownBrowserDefault'
at org.picocontainer.DefaultPicoContainer.addAdapterInternal(DefaultPicoContainer.java:437)
at org.picocontainer.DefaultPicoContainer.addAdapter(DefaultPicoContainer.java:458)
at org.picocontainer.DefaultPicoContainer.addComponent(DefaultPicoContainer.java:555)
at org.picocontainer.DefaultPicoContainer.addComponent(DefaultPicoContainer.java:500)
at org.picocontainer.DefaultPicoContainer.addComponent(DefaultPicoContainer.java:487)
at code.satyagraha.gfm.di.InjectorImpl.addInstance(InjectorImpl.java:54)
at code.satyagraha.gfm.viewer.views.MarkdownViewDefault.createPartControl(MarkdownViewDefault.java:32)

Changes not visible after saving

Once a file has been shown in the GFM Viewer, further edits aren’t shown. The Reload button and the option Always generate HTML have no effect. Changing the temp. dir option, making an edit and saving sometimes refresh the view (I haven’t looked very thoroughly to see when this happens).

This bug affects Eclipse Kepler (Service Release 1 Build id: 20130919-0819). Is this an unsupported version at the moment?

no rendering for non-project files opened by File > Open File...

Thanks very much for sharing your fine work.

This message concerns a possible issue, but may instead reflect my ignorance of Eclipse: should the viewer render the md when I use Eclipse's File > Open File to open the md file?

Immediately after installing the Winterstein Eclipse-Markdown-Editor-Plugin and your viewer, I opened a tiny md file via Eclipse's File > Open File menu. The Winterstein viewer rendered the Markdown as if it were standard Markdown, but the GFM viewer pane was empty. No html files were created.

I eventually tried creating a project that contains the md file, and the GFM viewer immediately rendered the Markdown as expected. I should add that I don't understand the distinction that Eclipse makes in some other areas between files that are -- versus are not -- part of a project.

I wouldn't have bothered you by opening an issue for this, but it does give me an opportunity to convey my thanks.

Failure to not install from marketplace

when i try to install this plugin from the eclipse marketplace i get this error.
Same goes for the drag and drop icon with this url.
http://marketplace.eclipse.org/marketplace-client-intro?mpc_install=900708

An error occurred while collecting items to be installed session context was (profile=DefaultProfile, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=). No artifact repository available. noArtifactRepositoriesAvailable

I am on eclipse 3.8.2

Error informing

satyagraha wrote in #7

Certainly pop-ups should be avoided, I think exceptions should be caught in the background job and simply posted to the error log.

FYI, if PDE is not installed, then there is no Error Log View.

Currently GFMV may be too silent, when network related error happens.

Manual update mode

An alternative solution to the offline issue #7 and #8 would be to provide a manual update mode. The idea is that instead of the plugin trying to update the view automatically, there would be a "refresh" button which the user would press when they wanted the view updated by running the background job. So they would only get network traffic when it suited them. There also would be a checkbox button on the view to switch between manual and automatic mode, and the default setting would be defined in plugin preferences.

I think this would be easier to get right than view visible/hidden state tracking.

[feature request] configurable result filename mask

Related to #13

GitHub lets define links to other page as [page2](page2) , where page2.md will be page2.html

However as current mask is .*.md.html, those links between pages will not work.

I think .*.md.html should stay default, as it has benefits discuss before. However for some cases or for some users *.html could be better.

Disappearing cursor problem?

Has anyone observed that their input cursor located at the edit point in their .md file sometimes disappears after saving and previewing the file? And that you then need to click somewhere else in the windows to get it to reappear?

The current code aims to show a "busy" mouse cursor over the web browser window while the background formatting job is executing, and restore a normal pointer cursor on completion. I have a suspicion that something isn't quite right in this area...

option "Always save .html"

As Always Generate in #47 has some other meaning, could there be Always save .html that would save all viewed HTML.

This will eliminate need to generate them.

[question] offline usage

I have noticed that the plugin works only online. While most of developers have broadband, some have unstable or slow Internet connection.

Is the option to work offline?

[question] code snippets into 1 line in generated HTML -> update Help how to reference templates

https://github.com/mranney/node_redis#usage

The code snippet below is transformed into 1 line in IE or Chrome

This will display:

mjr:~/work/node_redis (master)$ node example.js
Reply: OK
Reply: 0
Reply: 0
2 replies:
    0: hashtest 1
    1: hashtest 2
mjr:~/work/node_redis (master)$

->

in-one-line

However when copy-paste from browser into here I saw it is OK:

This will display:

mjr:/work/node_redis (master)$ node example.js
Reply: OK
Reply: 0
Reply: 0
2 replies:
0: hashtest 1
1: hashtest 2
mjr:
/work/node_redis (master)$

Looking into generated HTML with Hex Viewer, I see that the problem is line endings in <pre> elements. GitHub gives only one char CR x0A

00000019B4: 70 3E 54 68 69 73 20 77 │ 69 6C 6C 20 64 69 73 70  p>This will disp
00000019C4: 6C 61 79 3A 3C 2F 70 3E │ 20 0A 3C 70 72 65 3E 3C  lay:</p> 
<pre><
00000019D4: 63 6F 64 65 3E 6D 6A 72 │ 3A 7E 2F 77 6F 72 6B 2F  code>mjr:~/work/
00000019E4: 6E 6F 64 65 5F 72 65 64 │ 69 73 20 28 6D 61 73 74  node_redis (mast
00000019F4: 65 72 29 24 20 6E 6F 64 │ 65 20 65 78 61 6D 70 6C  er)$ node exampl
0000001A04: 65 2E 6A 73 0A 52 65 70 │ 6C 79 3A 20 4F 4B 0A 52  e.js
Reply: OK
R
0000001A14: 65 70 6C 79 3A 20 30 0A │ 52 65 70 6C 79 3A 20 30  eply: 0
Reply: 0
0000001A24: 0A 32 20 72 65 70 6C 69 │ 65 73 3A 0A 20 20 20 20  
2 replies:

0000001A34: 30 3A 20 68 61 73 68 74 │ 65 73 74 20 31 0A 20 20  0: hashtest 1

0000001A44: 20 20 31 3A 20 68 61 73 │ 68 74 65 73 74 20 32 0A    1: hashtest 2

0000001A54: 6D 6A 72 3A 7E 2F 77 6F │ 72 6B 2F 6E 6F 64 65 5F  mjr:~/work/node_
0000001A64: 72 65 64 69 73 20 28 6D │ 61 73 74 65 72 29 24 0A  redis (master)$

0000001A74: 3C 2F 63 6F 64 65 3E 3C │ 2F 70 72 65 3E 20 0A 3C  </code></pre> 
<

Question: what to do? Is it bug for GitHub service? Where should it be raised?

Update Navigator folder view with generated HTML files

The plugin typically writes .filename.md.html files alongside the original filename.md files. However since it does not use the Eclipse Workspace API to write the HTML files, these files not appear in the Navigator folder view immediately after creation. The user needs to press F5 (or context menu Refresh) on the parent folder to see them. See also: http://wiki.eclipse.org/FAQ_When_should_I_use_refreshLocal%3F

Therefore, there are several possible approaches to this issue;

  1. Use the IFile.create() API to write the file
  2. Use the IFile.refreshLocal() API to refresh the parent folder
  3. Do nothing as at present as these files are really of little interest to most users

There are two major complications to a solution:

  • This plugin offers the option to have HTML files stored in an external temp folder outside the project, rather than alongside the markdown file, so both options must be correctly supported
  • My recollection from earlier experiments with the refreshLocal API was that calling it seemed to force a complete rebuild of the whole parent project: with a large Java or Scala project this can take a long time and would be very intrusive to the user. So creation and updating of these files should not force a rebuild if possible.

expose API for .html file generation

(Maybe only me will be using this)

expose API for .html file generation from other plugins like

Promise renderMarkdown(IFile file)

or

Promise renderMarkdown(IFolder folder, boolean recursive)

line ending issue (CRLF) inside repository

Continue subtopic in #19 as separate issue

I wrote a program to investigate the line ending issues, and it appears there are a mixture of Linux- and Windows- style endings in the project. Things start to go wrong when merges are attempted AFAICS. This issue is a can of worms and I'm not sure really the right way forward, and I don't see any concensus on the net, .e.g. http://stackoverflow.com/questions/2825428/why-should-i-use-core-autocrlf-true-in-git

I don't remember about the value for core.autocrlf, I just remmeber that

  • on git server line ending should be Linux style
  • on Windows PC line ending should be Windows style

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.