SpaceManiac / SpacemanDMM

A BYOND language smartness provider, map renderer, and more.
https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient
GNU General Public License v3.0
83 stars 83 forks source link

Fails to compile #10

Closed SaphireLattice closed 6 years ago

SaphireLattice commented 6 years ago

Fails to compile with no such file or directory at https://github.com/SpaceManiac/SpacemanDMM/blob/master/src/qt-extras/glium_widget.rs#L134

Additonally, after adding include() and using cpp_build::Config in build.rs, there are multiple include errors as Qt doesn't have .h suffix on header files. After that, build fails with...

error[E0277]: the trait bound `widgets::opengl_widget::OpenGLWidget: cpp_utils::StaticCast<widgets::opengl_widget::OpenGLWidget>` is not satisfied
  --> src/qt-extras/glium_widget.rs:44:21
   |
44 |         CppBox::new(::cpp_utils::static_cast_mut(GliumWidget_new(Box::into_raw(boxed))))
   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `cpp_utils::StaticCast<widgets::opengl_widget::OpenGLWidget>` is not implemented for `widgets::opengl_widget::OpenGLWidget`
   |
   = help: the following implementations were found:
             <widgets::opengl_widget::OpenGLWidget as cpp_utils::StaticCast<widgets::<unnamed>::paint_device::PaintDevice>>
             <widgets::opengl_widget::OpenGLWidget as cpp_utils::StaticCast<widgets::<unnamed>::object::Object>>
             <widgets::opengl_widget::OpenGLWidget as cpp_utils::StaticCast<widgets::widget::Widget>>
   = note: required because of the requirements on the impl of `cpp_utils::StaticCast<widgets::opengl_widget::OpenGLWidget>` for `glium_widget::GliumWidget`
   = note: required by `cpp_utils::static_cast_mut`
SpaceManiac commented 6 years ago

I'll look into this soon, though the editor is not really usable right now so you're not missing much.

Run cargo build -p cli to build the dmm-tools (map renderer) executable, or cargo build -p dm-langserver to build the language server executable.

SaphireLattice commented 6 years ago

Well, I did pretty much that. Also, what can langserver do?

On Sun, 18 Mar 2018, 10:31 Tad Hardesty, notifications@github.com wrote:

I'll look into this soon, though the editor is not really usable right now so you're not missing much.

Run cargo build -p cli to build the dmm-tools (map renderer) executable, or cargo build -p dm-langserver to build the language server executable.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/SpaceManiac/SpacemanDMM/issues/10#issuecomment-373970235, or mute the thread https://github.com/notifications/unsubscribe-auth/AEFMuPjfGlwb2N_ioGNlihAeLqF9APClks5tfdUMgaJpZM4Sul-Y .

SpaceManiac commented 6 years ago

Provides symbol lookup support, with more to come. Currently powers this VS Code extension.

SaphireLattice commented 6 years ago

Hmm, so it's for tab-bing? No formatting support I suspect (harhar, in an indent based language..). Can langservers do syntax highlight?

On Sun, 18 Mar 2018, 14:00 Tad Hardesty, notifications@github.com wrote:

Provides symbol lookup support https://github.com/SpaceManiac/SpacemanDMM/tree/master/src/langserver#readme, with more to come. Currently powers this VS Code extension https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient .

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/SpaceManiac/SpacemanDMM/issues/10#issuecomment-373977145, or mute the thread https://github.com/notifications/unsubscribe-auth/AEFMuO6pYDvwmehDGaETX0a2zh546fviks5tfgYZgaJpZM4Sul-Y .

SpaceManiac commented 6 years ago

I use another extension for syntax highlighting, it's not perfect but it's pretty good. Formatting support is ways off, but I don't think impossible.

SpaceManiac commented 6 years ago

Disabled the broken packages in f7b14de9e33669a57778a8b07c8181669bb16982. Kind of a hack fix but I'm not maintaining these components and they're not useful yet even if they did compile so it's better to keep things simple.