ostinelli / SublimErl

An Erlang Plugin for Sublime Text 2, which enables code completion and allows you to run tests within the editor itself.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cannot start/install the plugin

rvangraan opened this issue · comments

I am trying to get an existing project to run. The project directory looks like this:

├── Makefile
├── lib
│ ├── alarms
│ │ ├── ebin
│ │ │ ├── alarms.app
│ │ │ ├── alarms.beam
│ │ │ ├── alarms_app.beam
│ │ │ ├── alarms_h.beam
│ │ │ └── alarms_sup.beam
│ │ ├── priv
│ │ └── src
│ │ ├── alarms.app.src
│ │ ├── alarms.erl
│ │ ├── alarms_app.erl
│ │ ├── alarms_h.erl
│ │ ├── alarms_sup.erl
│ │ └── vsn.mk
...
├── rebar.config
├── releases

At the top level, I can just type "rebar compile" and it does its thing.

I started with a new project, did an "Add Folder to Project" under the project menu and opened a one of the .erl files above. I also saved the project.

I then made a deliberate error in alarms.erl and saved. I don't see anything at all.

Nothing happened.

This is the console log:

startup, version: 2217 osx x64 channel: stable
executable: /Applications/Sublime Text 2.app/Contents/MacOS/Sublime Text 2
working dir: /
packages path: /Users/rvg/Library/Application Support/Sublime Text 2/Packages
settings path: /Users/rvg/Library/Application Support/Sublime Text 2/Settings
PackageSetup not required
catalogue loaded
found 7 files for base name Default.sublime-keymap
found 1 files for base name Default.sublime-mousemap
found 2 files for base name Main.sublime-menu
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/CSS/css_completions.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/comment.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/copy_path.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/delete_word.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/detect_indentation.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/duplicate_line.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/echo.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/exec.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/fold.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/font.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/goto_line.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/indentation.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/kill_ring.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/mark.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/new_templates.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/open_file_settings.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/open_in_browser.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/paragraph.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/save_on_focus_lost.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/scroll.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/set_unsaved_view_name.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/side_bar.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/sort.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/swap_line.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/switch_file.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/transform.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/transpose.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Default/trim_trailing_white_space.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Diff/diff.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/HTML/encode_html_entities.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/HTML/html_completions.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Package Control/Package Control.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_autocompiler.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_completion.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_core.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_formatter.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_function_search.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_man.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_tests_integration.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Vintage/vintage.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Vintage/vintage_commands.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/Vintage/vintage_motions.py
plugin init time: 2.1146
loading bindings
loading pointer bindings
found 1 files for base name Default.sublime-theme
theme loaded
app ready
pre session restore time: 2.8309
using gamma: 2 (err: 6.9282)
wrote startup cache, added files: 1 orphaned files: 0 total files: 103 cache hits: 105
startup time: 3.12516 (package setup was not run)
reloading /Users/rvg/Library/Application Support/Sublime Text 2/Packages/User/Package Control.sublime-settings
loaded 837 snippets
Package Control: No updated packages

cat evasdev-13.1.sublime-project
{
"folders":
[
{
"path": "/Users/rvg/src/evasdev/Projects/PDF/ebdc-13.1"
}
]
}

In the workspace file I noticed this:

"output.sublimerl_autocompiler":
{
    "height": 0.0
},

Can you compile with rebar if you cd to lib/alarms? This project has a non standard directory structure as you have rebar.config in root but then your main code under lib.

Is the rest of the plugin working? I'm asking since the title only states 'autocompile'.

Can you please provide a basic test project that I can download / run to see what the problems you are experiencing might be? If I cannot reproduce it, I can't fix it.

In the workspace file I noticed this:

"output.sublimerl_autocompiler":
{
"height": 0.0
},

I don't know what you are referring to.

Is the rest of the plugin working? Asking since the title only states 'autocompile'.

This is what I am trying to tell you. It is not working, I don't see any debug messages, nothing. This is why I contacted you. I need help to try and figure out if it is something I am doing wrong or because of a bug in the plugin.

  1. How do I know if the plugin is loading?
  2. Where do I see errors/debug output?

In the workspace file I noticed this:

"output.sublimerl_autocompiler":
{
"height": 0.0
},

I don't know what you are referring to.

Is the rest of the plugin working? Asking since the title only states 'autocompile'.

How should I know if the topic of my original mail was to ask you whether the plugin is working and how do I know?

If I cannot reproduce it, I can't fix it.

Sometimes, the developer should guide the user to send him debug information, so that the developer can figure it out if we are dealing with a dumb user or broken plugin before we start sending files back and forth.

I've attached a .tar file containing a project that doesn't work.

In the workspace file I noticed this:

"output.sublimerl_autocompiler":
{
"height": 0.0
},

I don't know what you are referring to.

A workspace file is a file located next to the project file:

-rw-r--r-- 1 rvg rvg 89 16 Oct 11:18 evasdev-13.1.sublime-project
-rw-r--r-- 1 rvg rvg 3034 16 Oct 11:18 evasdev-13.1.sublime-workspace

It contains lots of stuff, an among other bits the contents I included above.

I thought it is relevant, because it contains the name of your plugin. And a "heigh" of 0.0 is perhaps an indication of why I can't see any output.

Cheers,
Rudolph van Graan
e-mail rvg@me.com mobile +44 7885 296 113

On 16 Oct 2012, at 21:26, Roberto Ostinelli notifications@github.com wrote:

Is the rest of the plugin working? Asking since the title only states 'autocompile'.

If I cannot reproduce it, I can't fix it. Please provide a basic test project that I can download / run to see what the problems you are experiencing might be.

In the workspace file I noticed this:

"output.sublimerl_autocompiler":
{
"height": 0.0
},

I don't know what you are referring to.


Reply to this email directly or view it on GitHub.

  1. How do I know if the plugin is loading?

You already know: you've pasted the log here above which states:

Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_autocompiler.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_completion.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_core.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_formatter.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_function_search.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_man.py
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_tests_integration.py
  1. Where do I see errors/debug output?

In the same place where you got this above.

Sometimes, the developer should guide the user to send him debug information, so that the developer can figure it out if we are dealing with a dumb user or broken plugin before we start sending files back and forth.

This developer can only see if things are broken if he can reproduce the same things that you see. If you don't believe this is the proper way to work, I'll be more than happy to accept a pull request from you.

I've attached a .tar file containing a project that doesn't work.

You can't attach a file to github messages, so I didn't receive anything.

r.

Hallo Roberto,

Thank you for your response. I don't know how to get my message across to you, so I will have to make things very plain. Sorry if I am patronising you, but this is becoming very frustrating for me.  So let me try again.

  1. The plugin isn't working. You wrote it, so you should understand it. I don't.
  2. It doesn't give me any information about why it isn't working. This is the problem.
  3. I am either doing something very dumb (likely), because I don't understand Sublime yet OR the plugin is in fact not working. 
  4. Obviously, it works for you, which tells me that it is either my fault as per 3 above OR it is because our environments differ.
  5. It doesn't matter what file structure I am using, so it is pointless to send you an example. But I did in any case.
  6. I am not interested to modify your plugin yet. It has to first work before we get to that. 
  7. But I am interested to USE your plugin, which makes me a user in this context.
  8. You asked for testers and feedback. That means you are interested in working with people to test your module. It also means that you will have to learn how to deal with people who are working on different platforms and figure out how to ask the right questions so that you can fix issues they report.  
  9. My feedback to you is that your plugin needs more visible output, so that we can stop sending this kind of mail to each other. 
  10. If you want me to troubleshoot the issue for you, I'd appreciate that you write a few paragraphs about how it actually works, so that I don't have to go and reverse engineer it. Also, it might be a good idea to include information about why a file is NOT compiled when your plugin is called. Perhaps rebar is too new or returned something unexpected. Perhaps your parsing of file paths break over symlinks. Etc etc. 

So, after reading that and if you still want to talk to me, how would you propose we take this further? I would suggest that you add a few debugging lines to your plugin that results in information displayed in the console that will clearly state why it isn't compiling a file. The absence of that information will mean that something else is wrong and we are back to the dumb user scenario. 

Rudolph

On Oct 17, 2012, at 07:50 AM, Roberto Ostinelli notifications@github.com wrote:

How do I know if the plugin is loading?
You already know: you've pasted the log here above which states:
Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_autocompiler.py Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_completion.py Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_core.py Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_formatter.py Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_function_search.py Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_man.py Reloading plugin /Users/rvg/Library/Application Support/Sublime Text 2/Packages/SublimErl/sublimerl_tests_integration.py
Where do I see errors/debug output?
In the same place where you got this above.
Sometimes, the developer should guide the user to send him debug information, so that the developer can figure it out if we are dealing with a dumb user or broken plugin before we start sending files back and forth.
This developer can only see if things are broken if he can reproduce the same things that you see. If you don't believe this is the proper way to work, I'll be more than happy to accept a patch of yours.
I've attached a .tar file containing a project that doesn't work.
You can't attach a file to github messages, so I didn't receive anything.
r.

Reply to this email directly or view it on GitHub.

hmm.. let me get this straight:

  • you do not want to do the effort to 'reverse engineer' a few lines released in open source
  • you want me to explain to you the plugin instead, by writing some paragraphs
  • you think it's useless the way i asked you to proceed
  • but you want me to fix it in the way you want.

ok :)

i'm sorry to hear about your frustration. i've opened an issue to add more debugging visibility on plugin startup, thanks to your suggestion.

i can't do anything more if i do not get the one thing i asked from you. you'll have your additional debug info, then feel free to send me a pull request that fixes your problems.

closing this issue.