halohalospecial / atom-elmjutsu Goto Github PK
View Code? Open in Web Editor NEWA bag of tricks for developing with Elm. (Atom package)
Home Page: https://atom.io/packages/elmjutsu
License: MIT License
A bag of tricks for developing with Elm. (Atom package)
Home Page: https://atom.io/packages/elmjutsu
License: MIT License
Atom recently deprecated Shadow DOM, it looks like some styles in elmjutsu are still using this kind of styles, so it shows up in the deprecation cop. This should be easy to fix, I can make a PR if you need.
I'm seeing an issue where all of the results of Packages -> Elmjutsu -> Find Usages are doubled in the results pane. e.g.
File 1 Usage 1
File 1 Usage 2
File 1 Usage 1
File 1 Usage 2
File 2 Usage 1
File 2 Usage 1
Can you think of any reason this might be happening? Would another plugin interfere?
Thanks.
Lift to let works fine the first time. the next time it does not and throws this error. Undoing the lift operation and re applying in the exact same scenario makes it happen, so it just seems to be throwing in all cases the second time, the code does not matter.
Atom Version: 1.13.0
Electron Version: 1.3.13
System: Microsoft Windows 10 Pro
Thrown From: elmjutsu package, v3.1.0
Uncaught TypeError: Cannot read property 'add' of null
At C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:872
TypeError: Cannot read property 'add' of null
at ActOnSelection.handleEndOfAct (file:///C:/Users/andrew/.atom/packages/elmjutsu/lib/act-on-selection.js:30:23)
at file:///C:/Users/andrew/.atom/packages/elmjutsu/lib/act-on-selection.js:190:14
at TextBuffer.module.exports.TextBuffer.transact (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:867:18)
at TextEditor.module.exports.TextEditor.transact (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\text-editor.js:1566:26)
at ActOnSelection.liftToLetCommand (file:///C:/Users/andrew/.atom/packages/elmjutsu/lib/act-on-selection.js:71:14)
at atom-text-editor.elmjutsuLiftToLet (file:///C:/Users/andrew/.atom/packages/elmjutsu/lib/main.js:39:57)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\command-registry.js:259:29)
at C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\command-registry.js:3:59
at CommandPaletteView.module.exports.CommandPaletteView.confirmed (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\command-palette\lib\command-palette-view.js:210:32)
at CommandPaletteView.module.exports.SelectListView.confirmSelection (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\atom-space-pen-views\lib\select-list-view.js:338:21)
at space-pen-div.atom.commands.add.core:confirm (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\atom-space-pen-views\lib\select-list-view.js:109:19)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\command-registry.js:259:29)
at C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\command-registry.js:3:59
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\atom-keymap\lib\keymap-manager.js:587:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\node_modules\atom-keymap\lib\keymap-manager.js:382:22)
at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\window-event-handler.js:106:36)
at HTMLDocument.<anonymous> (C:\Users\andrew\AppData\Local\atom\app-1.13.0\resources\app.asar\src\window-event-handler.js:3:59)
A lot of the core functions have a LOT of documentation, so the sidekick suddenly appears and it is HUGE. Hard to cope with on a laptop.
I know we could mess with the size and try to tweak it so that it just right, but it would be better I think if the sidekick only showed the type and first line of the description - this is 90% of the time all you care about. There could be a button to expand it to show the full docs, including examples etc temporarily.
I think out of the box the default is to show everything, so you do get blasted all the time with the documentation for '|>' and other core functions!
The completion from type annotation is really useful, but when you are piping in the last parameter, you have to just delete that part of the auto completion
[] |> Lists.Extra.Find (a -> Bool) List a
You don't really want the last 'List a'
Not sure how feasible it is, but would be nice
edit:
Also may be worth looking at some of the other operators like <|, >> << and infix functions
Documentation comments {-| doc comment place before function -}
in the current project would be awesome to see in the sidekick. I have a few functions in one of my modules that I like to see the doc of to see how to format certain parts of the input but the sidekick only displays, for example SomeApp.SimpleHelpers.flagsContain : List String -> String -> Bool
instead of the documentation comment associated with it as well.
After updating, sidekick is not working for public packages. Sidekick still works for local functions. Uninstall + reinstall of the package and changing the cache directory did nothing.
It would be great to have something like http://klaftertief.github.io/elm-search/ available for the current project and dependencies.
Greetings, first see this image https://overminddl1.com/screenshots/work/elmjutsu-report0.gif:
{
and the entire first argument to the record of init
(of which the end part of ( model, Platform.Cmd.Cmd msg )
got oddly changed to remove the first parenthesis to become model, Platform.Cmd.Cmd msg )
, and view and subscriptions somehow got its ->
vanished.The type of Navigation.programWithFlags as per the sidekick is:
Navigation.programWithFlags : Navigation.Parser data -> { init : flags -> data -> ( model, Platform.Cmd.Cmd msg ) , update : msg -> model -> ( model, Platform.Cmd.Cmd msg ) , urlUpdate : data -> model -> ( model, Platform.Cmd.Cmd msg ) , view : model -> Html.Html msg , subscriptions : model -> Platform.Sub.Sub msg } -> Platform.Program flags
And yet the auto-complete selection of programWithFlags is:
Navigation.programWithFlags (Navigation.Parser data -> { init : flags -> data -> model, Platform.Cmd.Cmd msg ) ( , update : msg -> model -> model, Platform.Cmd.Cmd msg ) ( , urlUpdate : data -> model -> model, Platform.Cmd.Cmd msg ) , view : model Html.Html msg , subscriptions : model Platform.Sub.Sub msg }
Which does not seem to match at all. There are many spurious parenthesis (out of order with { and such too), when what should probably happen is it output this (with the things inside of brackets <
>
being tabbable and everything else skipped:
Navigation.programWithFlags < Navigation.Parser data >
{ init = < flags -> data -> ( model, Platform.Cmd.Cmd msg ) >
, update = < msg -> model -> ( model, Platform.Cmd.Cmd msg ) >
, urlUpdate = < data -> model -> ( model, Platform.Cmd.Cmd msg ) >
, view = < model -> Html.Html msg >
, subscriptions = < model -> Platform.Sub.Sub msg >
}
Appropriately indented of course. Or perhaps this should be the auto-completed result (notice only two arguments within <
>
, one is the parser and the other is the record):
Navigation.programWithFlags < Navigation.Parser data > < { init = flags -> data -> ( model, Platform.Cmd.Cmd msg ) , update = msg -> model -> ( model, Platform.Cmd.Cmd msg ) , urlUpdate = data -> model -> ( model, Platform.Cmd.Cmd msg ) , view = model -> Html.Html msg , subscriptions = model -> Platform.Sub.Sub msg }>
Regardless, the current method results in very broken tabbing. :-)
[Enter steps to reproduce below:]
Atom Version: 1.13.0
Electron Version: 1.3.13
System: Ubuntu 16.04.1
Thrown From: elmjutsu package, v2.18.0
Uncaught Error: Trying to send an unexpected type of value through port fileContentsChangedSub
:
Expecting an object with a field named name
at _[2].values.values[3] but instead got: {"args":["url"]}
At /home/paul/.atom/packages/elmjutsu/elm/indexer.js:3528
Error: Trying to send an unexpected type of value through port `fileContentsChangedSub`:
Expecting an object with a field named `name` at _[2].values.values[3] but instead got: {"args":["url"]}
at postInitSend (/home/paul/.atom/packages/elmjutsu/elm/indexer.js:3528:10)
at Object.send (/home/paul/.atom/packages/elmjutsu/elm/indexer.js:3542:3)
at /home/paul/.atom/packages/elmjutsu/lib/indexing.js:98:48
-1:42.7.0 command-palette:toggle (atom-pane.pane.active)
-1:41.1.0 core:confirm (input.hidden-input)
-1:41.1.0 settings-view:open (atom-pane.pane.active)
{
"core": {
"disabledPackages": [
"activate-power-mode"
]
},
"elmjutsu": {
"cacheDirectory": "/tmp/elmjutsu21570BgtwbKN9XIHA"
}
}
# User
activate-power-mode, v1.0.2 (inactive)
atom-typescript, v10.1.12 (active)
elmjutsu, v2.18.0 (active)
emmet, v2.4.3 (active)
hyperclick, v0.0.39 (active)
keyboard-localization, v1.4.18 (active)
language-elm, v1.5.0 (active)
language-scala, v1.1.6 (active)
linter, v1.11.18 (active)
atom-dark-syntax, v0.28.0 (inactive)
atom-dark-ui, v0.53.0 (inactive)
atom-light-syntax, v0.29.0 (inactive)
atom-light-ui, v0.46.0 (inactive)
base16-tomorrow-dark-theme, v1.4.0 (inactive)
base16-tomorrow-light-theme, v1.4.0 (inactive)
one-dark-ui, v1.8.2 (active)
one-light-ui, v1.8.2 (inactive)
one-dark-syntax, v1.6.0 (active)
one-light-syntax, v1.6.0 (inactive)
solarized-dark-syntax, v1.1.1 (inactive)
solarized-light-syntax, v1.1.1 (inactive)
about, v1.7.2 (active)
archive-view, v0.62.0 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.14.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.33.1 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.29.0 (inactive)
autosave, v0.23.2 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.43.2 (active)
bracket-matcher, v0.85.1 (active)
command-palette, v0.39.1 (active)
deprecation-cop, v0.55.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.40.0 (active)
find-and-replace, v0.204.5 (inactive)
fuzzy-finder, v1.4.0 (active)
git-diff, v1.2.0 (active)
go-to-line, v0.31.2 (inactive)
grammar-selector, v0.48.2 (active)
image-view, v0.60.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.1 (active)
link, v0.31.2 (inactive)
markdown-preview, v0.159.1 (active)
metrics, v1.1.2 (active)
notifications, v0.65.1 (active)
open-on-github, v1.2.1 (inactive)
package-generator, v1.0.2 (inactive)
settings-view, v0.244.0 (active)
snippets, v1.0.4 (active)
spell-check, v0.68.5 (active)
status-bar, v1.6.0 (active)
styleguide, v0.48.0 (active)
symbols-view, v0.113.1 (inactive)
tabs, v0.103.1 (active)
timecop, v0.33.2 (active)
tree-view, v0.211.1 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.35.1 (active)
whitespace, v0.35.0 (active)
wrap-guide, v0.39.0 (active)
language-c, v0.54.0 (active)
language-clojure, v0.22.1 (active)
language-coffee-script, v0.48.1 (active)
language-csharp, v0.13.0 (active)
language-css, v0.40.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.43.0 (active)
language-html, v0.47.1 (active)
language-hyperlink, v0.16.1 (active)
language-java, v0.24.0 (active)
language-javascript, v0.122.0 (active)
language-json, v0.18.3 (active)
language-less, v0.29.6 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.37.0 (active)
language-php, v0.37.3 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.1 (active)
language-ruby, v0.70.2 (active)
language-ruby-on-rails, v0.25.1 (active)
language-sass, v0.57.0 (active)
language-shellscript, v0.23.0 (active)
language-source, v0.9.0 (active)
language-sql, v0.25.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.29.1 (active)
language-toml, v0.18.1 (active)
language-xml, v0.34.12 (active)
language-yaml, v0.27.1 (active)
# Dev
No dev packages
This plugin looks awesome but it crashes when I try to use it. The reason is that my project does not have a elm-package.json
at the root of the folder. That's because I have two Elm projects, one for server-side, one for client-side, and some common source code.
โโโ client
โ โโโ [some Elm code]
โ โโโ elm-package.json
โโโ server
โ โโโ [some Elm code]
โ โโโ elm-package.json
โโโ src
โโโ [some common Elm code]
Is there any chance for the plugin to search for elm-package.json
files inside subdirectories and support several Elm projects at once? Maybe with some ignored folders (either based on .gitignore or from plugin settings)
Hey!
I love elmjutsu it is really amazing and useful. I also have spotty internet where I live and sometimes find myself hacking on an elm project without any. I've noticed this causes several elmjutsu related features like autocomplete, imports, and the sidekick to not work or provide their same level of utility. They're not broken, they just clearly expect a constant internet connection.
I haven't looked into it, so it may not even be possible to have a local cache of autocomplete definitions and documentation, but it if were an option that'd great.
A half way solution would be someway of forcing a reload or local cache, because I've always run into a few situations where my internet is restored but the sidekick our autocomplete continues to say I'm offline, or there was a connection error, etc.
Thanks again!
Given:
module Main exposing (..)
import Html
import Array
import List
import List
import List
Then Add Import -> Task
Get:
module Main exposing (..)
import Array
import Html
import List
import Task
import List
Note 'import List' is still there twice
Perhaps the clear line between duplicate 'import List' is stopping the de-duping.
module Main exposing (..)
import Html
import Array
import List
import List
import List
Seems to work OK.
I think this is another case probably, where the feature works as long as you have elm-formatted code
It looks like the less variable @text-color-added isn't working with the seti-ui theme. This isn't a elmjutsu problem, it works fine with other themes. Wanted to inform you in case you get reports of the latest version not working since the seti-ui theme is pretty popular.
Hi, sorry I am on Win10...
When I tried your plugin, I Ctrl-clicked on onClick
in my source.
It could not open file
...\elm-stuff\packages\elm-lang\html\1.1.0\src\Html.Events.elm
because it is in
...\elm-stuff\packages\elm-lang\html\1.1.0\src\Html\Events.elm
probably Windows related or small bug?
This notification pops up every time I start atom in a non-elm project. Is there a way to make it less obtrusive?
Since 2.50 I see the following error when starting up atom:
Uncaught TypeError: _this3.getWorkDirectory is not a function /home/ryan/.atom/packages/elmjutsu/lib/core.js:180
I would normally get the error repeated 2 or 3 times, but if I go to the indicated line and move the guard clause above the setTimeout
call that tries to call this.getWorkDirectory
, then I only get the error once.
cc: @rtfeldman :)
This is probably multiple issues, but I'll let you be the judge of that. I was looking at your find usages and refactor/rename feature to gain some inspirations for my Light Table plugin and came across a few things that I figured I'd report back to you in case you haven't already thought about them
I'm going to struggle with the exact same problems, so I'm not going to provide a rename feature quite yet I think.
Anyways, super-impressed by what you have done and you've provided me with lots of inspiration :-) So keep up the good work !
I have looked at all the editors available with almost all the popular plugins available. I think you got the best.
Only thing is, in my setup "Go to definition" functionality is not working.
I have even deleted .atom
directory which contains everything atom and downloaded fresh atom executable from their website. Then I installed language language-elm
, elmjutsu
and hyperclick
. This is on Mac OS.
I am never able to go to definitions defined inside elm packages. But in one of the project structure I was able to go to definitions defined inside the same file and the files in the same folder.
Let me know if you need any more details.
If this gets fixed, it would be awesome. :)
Because of a recent change in package.elm-lang.org (elm/package.elm-lang.org@2995ff9), the current version will not be able to get the latest documentation of 3rd party Elm packages. Autocomplete and Sidekick will not work anymore for 3rd party packages.
Also refer to elm/package.elm-lang.org#196
The fix is to read and watch elm-stuff/exact-dependencies.json
of each project to get the exact version numbers to pass to package.elm-lang.org. Will require major changes and some time to implement, though.
Hello
I've got an import that reads like in the snippet below
import Result.Extra as Result
When the cursor is positioned in the Result.Extra
part and I trigger the Go to Definition command an error pops up saying it cannot find the source file.
Apparently elmjutsu doesn't replace the dot with a directory separator character and as a result it tries to open the incorrect file.
Additionally, when the cursor is in the Result token (after the as
token) the same message pops up and two tabs appear; both having the same file opened: the Result.elm from elm-lang/core module.
Since 1.12 (and even more likely in 1.13) markBufferRange as stated in atom/text-buffer#154 doesn't pass the persistent option down. Instead you need to use a addMarkerLayer and then use markRange in that layer, as commented in that same issue. This is due to the changes that happened at atom/text-buffer#149
This is change needs to be applied to the line 97 of symbol-finder.js
Due to this a deprecation warning is shown in the deprecation cop. Again this is most likely due to the use of Atom Beta 1.13, but there shouldn't be impact in 1.12 by performing this change.
The actual error is:
Assigning custom properties to a marker when creating/copying it is deprecated. Please, consider storing the custom properties you need in some other object in your package, keyed by the marker's id property.
Function.extractParams - C:\Users\xxxxxx\AppData\Local\atom\app-1.13.0-beta8\resources\app.asar\node_modules\text-buffer\lib\marker.js:43:14
MarkerLayer.markRange - C:\Users\xxxxxx\AppData\Local\atom\app-1.13.0-beta8\resources\app.asar\node_modules\text-buffer\lib\marker-layer.js:196:71
DisplayMarkerLayer.markBufferRange - C:\Users\xxxxxx\AppData\Local\atom\app-1.13.0-beta8\resources\app.asar\node_modules\text-buffer\lib\display-marker-layer.js:90:62
TextEditor.markBufferRange - C:\Users\xxxxxx\AppData\Local\atom\app-1.13.0-beta8\resources\app.asar\src\text-editor.js:1753:38
<unknown> - C:\Users\xxxxxx\.atom\packages\elmjutsu\lib\symbol-finder.js:125:40
But the pointed line and character is actually after the compilation through Babel.
I searched the compile-cache
folder and found the file with the name 2a724e462a7edea8b03d0703a18f5d8b77e028d0.js
which is the hash of symbol-finder.js
and the compiled line 125 was:
_this3.symbolMarker = editor.markBufferRange(symbolRange, { invalidate: 'never', persistent: false });
Elm syntax coloring and formatting for blocks.
As per https://groups.google.com/forum/#!topic/elm-discuss/HIdcbC0IOHk the blocks in Elm, like glsl blocks, are not formatted properly. It would be nice if they were not only syntax colored properly based on the embedded type (for known blocks like GLSL), but potentially even change the atom language within them (like how Atom's markdown auto-colors code fences properly based on the language).
Example GLSL block in a function:
fragmentShader : Shader {} Uniform Varying
fragmentShader =
[glsl|
precision mediump float;
varying vec4 fragColor;
void main () {
gl_FragColor = fragColor;
}
|]
Each time there is an update or when I launch Atom, I get this error Cannot find module 'underscore-plus'
. Here is the stack trace given by Atom. Thanks in advance :)
Atom Version: 1.9.9
System: Mac OS X 10.11.6
Thrown From: elmjutsu package, v1.1.0
Failed to activate the elmjutsu package
At Cannot find module 'underscore-plus'
Error: Cannot find module 'underscore-plus'
at Module._resolveFilename (module.js:339:15)
at Function.Module._resolveFilename (/Applications/Atom.app/Contents/Resources/app.asar/src/module-cache.js:383:52)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (/Applications/Atom.app/Contents/Resources/app.asar/src/native-compile-cache.js:50:27)
at Object.<anonymous> (/Users/fenn/.atom/packages/elmjutsu/lib/helper.js:6:11)
at Module._compile (/Applications/Atom.app/Contents/Resources/app.asar/src/native-compile-cache.js:103:30)
at Object.defineProperty.value [as .js] (/Applications/Atom.app/Contents/Resources/app.asar/src/compile-cache.js:208:21)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)
at require (/Applications/Atom.app/Contents/Resources/app.asar/src/native-compile-cache.js:50:27)
at Object.<anonymous> (/Users/fenn/.atom/packages/elmjutsu/lib/main.js:7:15)
at Module._compile (/Applications/Atom.app/Contents/Resources/app.asar/src/native-compile-cache.js:103:30)
at Object.defineProperty.value [as .js] (/Applications/Atom.app/Contents/Resources/app.asar/src/compile-cache.js:208:21)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)
at require (/Applications/Atom.app/Contents/Resources/app.asar/src/native-compile-cache.js:50:27)
at Package.module.exports.Package.requireMainModule (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:715:27)
at Package.module.exports.Package.activateNow (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:173:16)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:156:32
at Package.module.exports.Package.measure (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:92:15)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:149:26
at Package.module.exports.Package.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:146:34)
at PackageManager.module.exports.PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:538:21)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:519:29
at Config.module.exports.Config.transactAsync (/Applications/Atom.app/Contents/Resources/app.asar/src/config.js:337:18)
at PackageManager.module.exports.PackageManager.activatePackages (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:514:19)
at PackageManager.module.exports.PackageManager.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:497:46)
{
"core": {
"disabledPackages": [
"open-vim"
],
"themes": [
"seti-ui",
"earthsung-by-jackson-syntax"
]
}
}
# User
activate-power-mode, v0.7.4 (inactive)
advanced-open-file, v0.16.3 (inactive)
api-docs, v0.0.6 (inactive)
atom-beautify, v0.29.10 (inactive)
atom-handlebars, v1.3.0 (inactive)
atom-monokai, v0.10.4 (inactive)
blame, v0.10.0 (inactive)
blocky, v0.8.0 (inactive)
chester-atom-syntax, v0.1.1 (inactive)
earthsung-by-jackson-syntax, v0.3.0 (inactive)
elm-format, v2.0.1 (inactive)
elm-fu, v0.1.0 (inactive)
elmjutsu, v1.1.0 (inactive)
expand-selection-to-quotes, v0.9.0 (inactive)
goto, v1.7.1 (inactive)
highlight-nbsp, v0.1.1 (inactive)
highlight-selected, v0.11.2 (inactive)
hyperclick, v0.0.37 (inactive)
improved-chester-atom-syntax, v0.2.0 (inactive)
js-hyperclick, v1.4.2 (inactive)
language-elm, v1.5.0 (inactive)
language-emblem, v0.2.0 (inactive)
linter, v1.11.16 (inactive)
linter-coffeelint, v1.1.2 (inactive)
linter-eslint, v7.2.4 (inactive)
minimap, v4.24.7 (inactive)
monokai-seti, v0.7.0 (inactive)
natural-autoflow, v0.2.3 (inactive)
rails-i18n-autocomplete, v0.4.0 (inactive)
ruby-slim, v0.2.0 (inactive)
seti-syntax, v1.0.1 (inactive)
seti-ui, v1.3.2 (inactive)
standardjs-snippets, v2.4.0 (inactive)
Sublime-Style-Column-Selection, v1.7.2 (inactive)
todo-show, v1.7.0 (inactive)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.51.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.43.0 (inactive)
base16-tomorrow-dark-theme, v1.1.0 (inactive)
base16-tomorrow-light-theme, v1.1.1 (inactive)
one-dark-ui, v1.3.2 (inactive)
one-light-ui, v1.3.2 (inactive)
one-dark-syntax, v1.2.0 (inactive)
one-light-syntax, v1.2.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.5.2 (inactive)
archive-view, v0.61.1 (inactive)
autocomplete-atom-api, v0.10.0 (inactive)
autocomplete-css, v0.11.1 (inactive)
autocomplete-html, v0.7.2 (inactive)
autocomplete-plus, v2.31.0 (inactive)
autocomplete-snippets, v1.11.0 (inactive)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (inactive)
background-tips, v0.26.0 (inactive)
bookmarks, v0.41.0 (inactive)
bracket-matcher, v0.82.1 (inactive)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (inactive)
dev-live-reload, v0.47.0 (inactive)
encoding-selector, v0.22.0 (inactive)
exception-reporting, v0.39.0 (inactive)
fuzzy-finder, v1.3.0 (inactive)
git-diff, v1.1.0 (inactive)
find-and-replace, v0.198.0 (inactive)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.1 (inactive)
image-view, v0.58.0 (inactive)
incompatible-packages, v0.26.1 (inactive)
keybinding-resolver, v0.35.0 (inactive)
line-ending-selector, v0.5.0 (inactive)
link, v0.31.1 (inactive)
markdown-preview, v0.158.1 (inactive)
metrics, v0.53.1 (inactive)
notifications, v0.64.1 (inactive)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.238.2 (inactive)
snippets, v1.0.2 (inactive)
spell-check, v0.67.1 (inactive)
status-bar, v1.4.1 (inactive)
styleguide, v0.47.1 (inactive)
symbols-view, v0.113.0 (inactive)
tabs, v0.98.1 (inactive)
timecop, v0.33.1 (inactive)
tree-view, v0.208.0 (inactive)
update-package-dependencies, v0.10.0 (inactive)
welcome, v0.34.0 (inactive)
whitespace, v0.32.2 (inactive)
wrap-guide, v0.38.1 (inactive)
language-c, v0.52.1 (inactive)
language-clojure, v0.21.0 (inactive)
language-coffee-script, v0.47.0 (inactive)
language-csharp, v0.12.1 (inactive)
language-css, v0.36.2 (inactive)
language-gfm, v0.86.0 (inactive)
language-git, v0.13.0 (inactive)
language-go, v0.42.0 (inactive)
language-html, v0.44.1 (inactive)
language-hyperlink, v0.16.0 (inactive)
language-java, v0.22.0 (inactive)
language-javascript, v0.119.0 (inactive)
language-json, v0.18.0 (inactive)
language-less, v0.29.3 (inactive)
language-make, v0.22.2 (inactive)
language-mustache, v0.13.0 (inactive)
language-objective-c, v0.15.1 (inactive)
language-perl, v0.35.0 (inactive)
language-php, v0.37.0 (inactive)
language-property-list, v0.8.0 (inactive)
language-python, v0.45.0 (inactive)
language-ruby, v0.68.5 (inactive)
language-ruby-on-rails, v0.25.0 (inactive)
language-sass, v0.52.0 (inactive)
language-shellscript, v0.22.3 (inactive)
language-source, v0.9.0 (inactive)
language-sql, v0.21.1 (inactive)
language-text, v0.7.1 (inactive)
language-todo, v0.28.0 (inactive)
language-toml, v0.18.0 (inactive)
language-xml, v0.34.8 (inactive)
language-yaml, v0.26.0 (inactive)
# Dev
No dev packages
Don't seem to get hyperlinks for the functions declared local to a file, Elmjutsu -> Go to definition also has no effect
I've just tried "Go to definition" on a custom function and Atom just sits there unusable with my CPU at 100%. After asking me 2 times to Wait or Close, I had to hit close in order to continue my work.
I am using Atom 1.10.2 on OSX El Capitan
Given a type like:
module MyModule exposing (..)
type Foo = Bar Int
The sidekick shows
MyModule.Bar : Foo
but I think it should show
MyModule.Bar : Int -> Foo
Is this something that can be fixed within elmjutsu?
I need to create a test folder to use elmjutsu
ENOENT: no such file or directory, scandir '/home/nils/Programmering/ahead/ahead_web/web/static/elm/test'
Here is the whole stacktrace
[Enter steps to reproduce below:]
1. ...
2. ...
**Atom Version**: 1.10.2
**Electron Version**: 0.37.8
**System**: Ubuntu 16.04
**Thrown From**: [elmjutsu](https://github.com/halohalospecial/atom-elmjutsu) package, v2.5.5
### Stack Trace
Failed to activate the elmjutsu package
At ENOENT: no such file or directory, scandir '/home/nils/Programmering/ahead/ahead_web/web/static/elm/test'
Error: ENOENT: no such file or directory, scandir '/home/nils/Programmering/ahead/ahead_web/web/static/elm/test'
at Error (native)
at Object.fs.readdirSync (fs.js:856:18)
at Object.fs.readdirSync (ELECTRON_ASAR.js:496:28)
at Object.parseDirectoryFiles (/home/nils/.atom/packages/elmjutsu/lib/indexing.js:76:26)
at /home/nils/.atom/packages/elmjutsu/lib/core.js:203:16
at Array.forEach (native)
at Core.watchProject (/home/nils/.atom/packages/elmjutsu/lib/core.js:202:23)
at /home/nils/.atom/packages/elmjutsu/lib/core.js:89:14
at Set.forEach (native)
at TextEditorRegistry.module.exports.TextEditorRegistry.observe (/usr/share/atom/resources/app.asar/src/text-editor-registry.js:31:20)
at new Core (/home/nils/.atom/packages/elmjutsu/lib/core.js:87:45)
at Object.activate (/home/nils/.atom/packages/elmjutsu/lib/main.js:16:17)
at Package.module.exports.Package.activateNow (/usr/share/atom/resources/app.asar/src/package.js:183:20)
at /usr/share/atom/resources/app.asar/src/package.js:156:32
at Package.module.exports.Package.measure (/usr/share/atom/resources/app.asar/src/package.js:92:15)
at /usr/share/atom/resources/app.asar/src/package.js:149:26
at Package.module.exports.Package.activate (/usr/share/atom/resources/app.asar/src/package.js:146:34)
at PackageManager.module.exports.PackageManager.activatePackage (/usr/share/atom/resources/app.asar/src/package-manager.js:538:21)
at /usr/share/atom/resources/app.asar/src/package-manager.js:342:19
at /usr/share/atom/resources/app.asar/src/config.js:635:20
at Function.module.exports.Emitter.simpleDispatch (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:25:14)
at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:125:28)
at Config.module.exports.Config.emitChangeEvent (/usr/share/atom/resources/app.asar/src/config.js:827:29)
at Config.module.exports.Config.setRawValue (/usr/share/atom/resources/app.asar/src/config.js:612:19)
at Config.module.exports.Config.set (/usr/share/atom/resources/app.asar/src/config.js:227:14)
at Config.module.exports.Config.removeAtKeyPath (/usr/share/atom/resources/app.asar/src/config.js:377:12)
at Package.module.exports.Package.enable (/usr/share/atom/resources/app.asar/src/package.js:77:26)
at PackageManager.module.exports.PackageManager.enablePackage (/usr/share/atom/resources/app.asar/src/package-manager.js:169:14)
at HTMLButtonElement. (/usr/share/atom/resources/app.asar/node_modules/settings-view/lib/package-card.js:343:27)
at HTMLButtonElement.jQuery.event.dispatch (/usr/share/atom/resources/app.asar/node_modules/jquery/dist/jquery.js:4435:9)
at HTMLButtonElement.elemData.handle (/usr/share/atom/resources/app.asar/node_modules/jquery/dist/jquery.js:4121:28)
### Commands
-0:02.8.0 settings-view:open (atom-text-editor.editor.vim-mode-plus.normal-mode.is-focused)
6x -0:02.6.0 blur (atom-text-editor.editor.vim-mode-plus.normal-mode.is-focused)
### Config
```json
{
"core": {
"disabledPackages": [
"autocomplete-elixir"
]
},
"elmjutsu": {
"autocompleteEnabled": true,
"autocompleteSnippetsEnabled": true,
"cacheDirectory": "/tmp/elmjutsu4734gioUFix1Pbdn",
"hyperclickEnabled": true,
"sidekickPosition": "right"
}
}
# User
.bin, vundefined (inactive)
advanced-open-file, v0.16.4 (inactive)
atom-alignment, v0.12.1 (active)
atom-beautify, v0.29.11 (inactive)
atom-keyboard-macros-vim, v0.1.5 (inactive)
atom-save-all, v0.4.1 (active)
autocomplete-elixir, v1.5.14 (inactive)
change-case, v0.6.3 (active)
elm-format, v2.1.0 (active)
elmjutsu, v2.5.5 (inactive)
emmet, v2.4.3 (active)
file-icons, v1.7.19 (active)
gist-it, v0.9.1 (active)
git-blame, v0.4.11 (inactive)
html-to-elm, v0.2.0 (inactive)
ide-haskell, v1.8.1 (inactive)
jumpy, v3.0.3 (inactive)
language-babel, v2.36.3 (active)
language-docker, v1.1.7 (active)
language-elixir, v0.16.0 (active)
language-elm, v1.5.0 (active)
language-erlang, v3.0.0 (active)
language-gradle, v0.0.3 (active)
linter, v1.11.16 (active)
linter-elixir-credo, v1.1.0 (active)
linter-elm-make, v0.17.3 (active)
linter-eslint, v7.2.4 (active)
linter-flow, v5.5.0 (active)
markdown-preview-plus, v2.4.0 (active)
multi-cursor, v2.1.3 (inactive)
necro-syntax, v1.0.0 (inactive)
pigments, v0.34.0 (active)
pretty-json, v1.6.0 (active)
Sublime-Style-Column-Selection, v1.7.2 (active)
toggle-quotes, v1.0.0 (inactive)
vim-mode-plus, v0.54.1 (active)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.44.0 (inactive)
base16-tomorrow-dark-theme, v1.1.0 (inactive)
base16-tomorrow-light-theme, v1.1.1 (inactive)
one-dark-ui, v1.5.0 (active)
one-light-ui, v1.5.0 (inactive)
one-dark-syntax, v1.3.0 (active)
one-light-syntax, v1.3.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.5.3 (active)
archive-view, v0.61.1 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.11.2 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.1 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.41.0 (active)
bracket-matcher, v0.82.1 (active)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.39.0 (active)
find-and-replace, v0.201.0 (inactive)
fuzzy-finder, v1.3.0 (active)
git-diff, v1.1.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.1 (active)
image-view, v0.58.2 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.1 (inactive)
markdown-preview, v0.158.0 (active)
metrics, v0.53.1 (active)
notifications, v0.65.0 (active)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.242.2 (active)
snippets, v1.0.2 (active)
spell-check, v0.67.1 (active)
status-bar, v1.4.1 (active)
styleguide, v0.47.0 (active)
symbols-view, v0.113.0 (inactive)
tabs, v0.100.2 (active)
timecop, v0.33.2 (active)
tree-view, v0.208.2 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.34.0 (active)
whitespace, v0.33.0 (active)
wrap-guide, v0.38.1 (active)
language-c, v0.52.1 (active)
language-clojure, v0.21.0 (active)
language-coffee-script, v0.47.2 (active)
language-csharp, v0.12.1 (active)
language-css, v0.37.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.42.1 (active)
language-html, v0.45.1 (active)
language-hyperlink, v0.16.0 (active)
language-java, v0.23.0 (active)
language-javascript, v0.119.0 (active)
language-json, v0.18.2 (active)
language-less, v0.29.5 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.35.0 (active)
language-php, v0.37.2 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.0 (active)
language-ruby, v0.69.0 (active)
language-ruby-on-rails, v0.25.0 (active)
language-sass, v0.56.0 (active)
language-shellscript, v0.22.4 (active)
language-source, v0.9.0 (active)
language-sql, v0.23.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.28.0 (active)
language-toml, v0.18.0 (active)
language-xml, v0.34.9 (active)
language-yaml, v0.26.0 (active)
# Dev
No dev packages
I've got this line
List.concatMap (\res -> dayList (daysDiff res.checkOut res.checkIn) res.checkIn) reservations
When I try to rename daysDiff
across my project, I end up with this:
List.concatMap (es -> dayList (daysDiff res.checkOut res.checkIn) res.checkIn) reservations
Notice the removal of \r
Assigning custom properties to a marker when creating/copying it is
deprecated. Please, consider storing the custom properties you need in
some other object in your package, keyed by the marker's id property.
Function.extractParams (/usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/marker.js:43:14)
MarkerLayer.markRange (/usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/marker-layer.js:196:71)
DisplayMarkerLayer.markBufferRange (/usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/display-marker-layer.js:90:62)
TextEditor.markBufferRange (/usr/share/atom/resources/app.asar/src/text-editor.js:1753:38)
<unknown> (/home/user/elmjutsu/lib/symbol-finder.js:125:40)
process._tickCallback (internal/process/next_tick.js:103:7)
add : Int -> Model -> Model
could suggest
add : Int -> Model -> Model
add int model =
What do you think?
Some type of indicator on the function that is exposed at the top of the module would be useful. This is in reference to https://groups.google.com/forum/#!topic/elm-discuss/N_Pd1XsgtwU where they are discussing visibility of the exposed list. Keeping it at the top is sensible to see them all in one place, but it is also nice to see it at the function declaration too, so some indicator that it is so would be nice (Like color-coding it differently I'd say).
I just upgraded Atom to the latest version (1.11.0 on OS X El Capitan) and now elmjutsu cannot be activated. I get the following error message:
Arguments to CompositeDisposable.add must have a .dispose() method
This seems to be caused by this pull request that was merged into atom/event-kit a few days ago, which causes code in atom-elmjutsu/lib/symbol-finder.js
to trigger a TypeError.
As discussed here: AsaAyers/js-hyperclick#53
Not sure why it's overriding hyperclick in js files. Can this be fixed or at least a way to select where the hyperclick provider should work? I love the package when working with elm, but for now, I'll have to keep it disabled when working in js.
I've been using this plugin with no problems for a while. Suddenly it stopped working. I can't think of anything that I did that would have caused the problem, and I've tried completely uninstalling the plugin and atom and reinstalling again multiple times with different versions, but I get the same error.
The problem seems to be that for some reason trying to initialize the plugin seems to scan my whole user directory (on OS X El Capitan) and chokes when it hits a symlink that doesn't go anywhere. I've deleted about a thousand of these files, and then I got the error in #22, but the solutions there haven't helped me, and now I'm running into broken symlinks again (like /Users/jeffs/Library/Containers/com.apple.iCal.CalendarNC/Data/Library/Preferences/ByHost/com.apple.iCal.63587F6C-C9FC-5267-8100-FE00F1402816.plist)
I've tried so many things. Have you seen this before? It seems to only be a problem with elmjutsu.
[Enter steps to reproduce below:]
Atom Version: 1.12.9
Electron Version: 1.3.13
System: Ubuntu 14.04.5
Thrown From: elmjutsu package, v2.15.3
Failed to load the elmjutsu package
At Cannot find module 'underscore'
Error: Cannot find module 'underscore'
at Module._resolveFilename (module.js:455:15)
at Module._resolveFilename (/usr/share/atom/resources/electron.asar/common/reset-search-paths.js:35:12)
at Function.Module._resolveFilename (/usr/share/atom/resources/app.asar/src/module-cache.js:383:52)
at Function.Module._load (module.js:403:25)
at Module.require (module.js:483:17)
at require (/usr/share/atom/resources/app.asar/src/native-compile-cache.js:50:27)
at Object.<anonymous> (/home/brian/.atom/packages/elmjutsu/lib/package-manager.js:5:26)
at Module._compile (/usr/share/atom/resources/app.asar/src/native-compile-cache.js:103:30)
at Object.value [as .js] (/usr/share/atom/resources/app.asar/src/compile-cache.js:201:21)
at Module.load (module.js:473:32)
at tryModuleLoad (module.js:432:12)
at Function.Module._load (module.js:424:3)
at Module.require (module.js:483:17)
at require (/usr/share/atom/resources/app.asar/src/native-compile-cache.js:50:27)
at Object.<anonymous> (/home/brian/.atom/packages/elmjutsu/lib/main.js:6:26)
at Module._compile (/usr/share/atom/resources/app.asar/src/native-compile-cache.js:103:30)
at Object.value [as .js] (/usr/share/atom/resources/app.asar/src/compile-cache.js:201:21)
at Module.load (module.js:473:32)
at tryModuleLoad (module.js:432:12)
at Function.Module._load (module.js:424:3)
at Module.require (module.js:483:17)
at require (/usr/share/atom/resources/app.asar/src/native-compile-cache.js:50:27)
at Package.module.exports.Package.requireMainModule (/usr/share/atom/resources/app.asar/src/package.js:747:27)
at /usr/share/atom/resources/app.asar/src/package.js:118:28
at Package.module.exports.Package.measure (/usr/share/atom/resources/app.asar/src/package.js:92:15)
at Package.module.exports.Package.load (/usr/share/atom/resources/app.asar/src/package.js:106:12)
at PackageManager.module.exports.PackageManager.loadPackage (/usr/share/atom/resources/app.asar/src/package-manager.js:468:14)
at /usr/share/atom/resources/app.asar/src/package-manager.js:412:19
at Config.module.exports.Config.transact (/usr/share/atom/resources/app.asar/src/config.js:312:16)
at PackageManager.module.exports.PackageManager.loadPackages (/usr/share/atom/resources/app.asar/src/package-manager.js:407:19)
{
"core": {
"disabledPackages": [
"language-javascript-jsx"
]
}
}
# User
css-to-inline, v1.1.0 (inactive)
elmjutsu, v2.15.3 (inactive)
language-apache, v1.6.0 (inactive)
language-babel, v2.43.0 (inactive)
language-elm, v1.5.0 (inactive)
language-matlab, v0.2.1 (inactive)
linter, v1.11.18 (inactive)
linter-eslint, v7.3.2 (inactive)
python-debugger, v0.1.0 (inactive)
python-indent, v1.0.0 (inactive)
python-tools, v0.6.8 (inactive)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.45.0 (inactive)
base16-tomorrow-dark-theme, v1.3.0 (inactive)
base16-tomorrow-light-theme, v1.3.0 (inactive)
one-dark-ui, v1.6.2 (inactive)
one-light-ui, v1.6.2 (inactive)
one-dark-syntax, v1.5.0 (inactive)
one-light-syntax, v1.5.0 (inactive)
solarized-dark-syntax, v1.0.5 (inactive)
solarized-light-syntax, v1.0.5 (inactive)
about, v1.7.0 (inactive)
archive-view, v0.62.0 (inactive)
autocomplete-atom-api, v0.10.0 (inactive)
autocomplete-css, v0.13.1 (inactive)
autocomplete-html, v0.7.2 (inactive)
autocomplete-plus, v2.31.4 (inactive)
autocomplete-snippets, v1.11.0 (inactive)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (inactive)
background-tips, v0.26.1 (inactive)
bookmarks, v0.42.0 (inactive)
bracket-matcher, v0.82.2 (inactive)
command-palette, v0.39.0 (inactive)
deprecation-cop, v0.54.1 (inactive)
dev-live-reload, v0.47.0 (inactive)
encoding-selector, v0.22.0 (inactive)
exception-reporting, v0.40.0 (inactive)
find-and-replace, v0.202.2 (inactive)
fuzzy-finder, v1.4.0 (inactive)
git-diff, v1.1.0 (inactive)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.2 (inactive)
image-view, v0.60.0 (inactive)
incompatible-packages, v0.26.1 (inactive)
keybinding-resolver, v0.35.0 (inactive)
line-ending-selector, v0.5.0 (inactive)
link, v0.31.2 (inactive)
markdown-preview, v0.158.8 (inactive)
metrics, v1.1.2 (inactive)
notifications, v0.65.1 (inactive)
open-on-github, v1.2.1 (inactive)
package-generator, v1.0.1 (inactive)
settings-view, v0.243.1 (inactive)
snippets, v1.0.4 (inactive)
spell-check, v0.68.4 (inactive)
status-bar, v1.4.1 (inactive)
styleguide, v0.47.2 (inactive)
symbols-view, v0.113.1 (inactive)
tabs, v0.103.0 (inactive)
timecop, v0.33.2 (inactive)
tree-view, v0.210.0 (inactive)
update-package-dependencies, v0.10.0 (inactive)
welcome, v0.35.1 (inactive)
whitespace, v0.35.0 (inactive)
wrap-guide, v0.38.2 (inactive)
language-c, v0.54.0 (inactive)
language-clojure, v0.22.1 (inactive)
language-coffee-script, v0.48.0 (inactive)
language-csharp, v0.13.0 (inactive)
language-css, v0.40.1 (inactive)
language-gfm, v0.88.0 (inactive)
language-git, v0.15.0 (inactive)
language-go, v0.43.0 (inactive)
language-html, v0.47.1 (inactive)
language-hyperlink, v0.16.1 (inactive)
language-java, v0.24.0 (inactive)
language-javascript, v0.122.0 (inactive)
language-json, v0.18.3 (inactive)
language-less, v0.29.6 (inactive)
language-make, v0.22.2 (inactive)
language-mustache, v0.13.0 (inactive)
language-objective-c, v0.15.1 (inactive)
language-perl, v0.37.0 (inactive)
language-php, v0.37.3 (inactive)
language-property-list, v0.8.0 (inactive)
language-python, v0.45.1 (inactive)
language-ruby, v0.70.2 (inactive)
language-ruby-on-rails, v0.25.1 (inactive)
language-sass, v0.57.0 (inactive)
language-shellscript, v0.23.0 (inactive)
language-source, v0.9.0 (inactive)
language-sql, v0.25.0 (inactive)
language-text, v0.7.1 (inactive)
language-todo, v0.29.1 (inactive)
language-toml, v0.18.1 (inactive)
language-xml, v0.34.12 (inactive)
language-yaml, v0.27.1 (inactive)
# Dev
No dev packages
:-)
Suppose you have one type Vehicle
with a value constructor Car
in the module Vehicle
, and a type alias Car
(for a record) in the module Car
. When using both Vehicle
and Car
in a third module and adding an import to that third module using Elmjutsu, the import for the Car
module is changed inappropriate into a compilation error.
I've created a repository to simulate this bug.
It seems that Elmjutsu infers the type alias as the value constructor and changes
import Car exposing (Car)
into
import Car exposing (Vehicle(Car))
Atom Version: 1.11.0
Electron Version: 0.37.8
System: Mac OS X 10.11.6
Thrown From: elmjutsu package, v2.8.2
Failed to activate the elmjutsu package
At Arguments to CompositeDisposable.add must have a .dispose() method
TypeError: Arguments to CompositeDisposable.add must have a .dispose() method
at assertDisposable (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/composite-disposable.js:70:13)
at CompositeDisposable.module.exports.CompositeDisposable.add (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/composite-disposable.js:43:11)
at GoToSymbol.SymbolFinder (/Users/thsoft/.atom/packages/elmjutsu/lib/symbol-finder.js:12:24)
at new GoToSymbol (/Users/thsoft/.atom/packages/elmjutsu/lib/go-to-symbol.js:7:32)
at Object.activate (/Users/thsoft/.atom/packages/elmjutsu/lib/main.js:18:23)
at Package.module.exports.Package.activateNow (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:183:20)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:156:32
at Package.module.exports.Package.measure (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:92:15)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package.js:149:26
at Package.module.exports.Package.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package.js:146:34)
at PackageManager.module.exports.PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:538:21)
at /Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:519:29
at Config.module.exports.Config.transactAsync (/Applications/Atom.app/Contents/Resources/app.asar/src/config.js:337:18)
at PackageManager.module.exports.PackageManager.activatePackages (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:514:19)
at PackageManager.module.exports.PackageManager.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/package-manager.js:497:46)
at /Applications/Atom.app/Contents/Resources/app.asar/src/atom-environment.js:779:28
-0:01.4.0 blur (atom-text-editor.editor.is-focused)
{
"core": {
"themes": [
"one-light-ui",
"one-light-syntax"
]
},
"elmjutsu": {
"autocompleteEnabled": true,
"cacheDirectory": "/var/folders/d7/qt541tgd3vzfk32m544ks8mw0000gn/T/elmjutsu26431TIvPwnDDSLTO",
"hyperclickEnabled": true,
"showSidekick": true
}
}
# User
compare-files, v0.8.0 (inactive)
eclipse-keybindings, v0.9.0 (inactive)
elm-format, v2.1.0 (inactive)
elmjutsu, v2.8.2 (inactive)
hyperclick, v0.0.39 (inactive)
language-elm, v1.5.0 (inactive)
latex, v0.37.1 (inactive)
linter, v1.11.18 (inactive)
linter-elm-make, v0.17.7 (inactive)
linter-jshint, v3.0.0 (inactive)
local-history, v3.4.1 (inactive)
merge-conflicts, v1.4.4 (inactive)
open-terminal-here, v2.1.4 (inactive)
pigments, v0.37.0 (inactive)
sort-lines, v0.14.0 (inactive)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.44.0 (inactive)
base16-tomorrow-dark-theme, v1.2.0 (inactive)
base16-tomorrow-light-theme, v1.2.0 (inactive)
one-dark-ui, v1.6.0 (inactive)
one-light-ui, v1.6.0 (inactive)
one-dark-syntax, v1.3.0 (inactive)
one-light-syntax, v1.3.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.7.0 (inactive)
archive-view, v0.61.1 (inactive)
autocomplete-atom-api, v0.10.0 (inactive)
autocomplete-css, v0.11.2 (inactive)
autocomplete-html, v0.7.2 (inactive)
autocomplete-plus, v2.31.1 (inactive)
autocomplete-snippets, v1.11.0 (inactive)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (inactive)
background-tips, v0.26.1 (inactive)
bookmarks, v0.42.0 (inactive)
bracket-matcher, v0.82.1 (inactive)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (inactive)
dev-live-reload, v0.47.0 (inactive)
encoding-selector, v0.22.0 (inactive)
exception-reporting, v0.40.0 (inactive)
find-and-replace, v0.201.1 (inactive)
fuzzy-finder, v1.4.0 (inactive)
git-diff, v1.1.0 (inactive)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.2 (inactive)
image-view, v0.59.0 (inactive)
incompatible-packages, v0.26.1 (inactive)
keybinding-resolver, v0.35.0 (inactive)
line-ending-selector, v0.5.0 (inactive)
link, v0.31.1 (inactive)
markdown-preview, v0.158.0 (inactive)
metrics, v1.0.0 (inactive)
notifications, v0.65.1 (inactive)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.242.2 (inactive)
snippets, v1.0.2 (inactive)
spell-check, v0.68.2 (inactive)
status-bar, v1.4.1 (inactive)
styleguide, v0.47.0 (inactive)
symbols-view, v0.113.1 (inactive)
tabs, v0.101.0 (inactive)
timecop, v0.33.2 (inactive)
tree-view, v0.209.3 (inactive)
update-package-dependencies, v0.10.0 (inactive)
welcome, v0.35.1 (inactive)
whitespace, v0.33.0 (inactive)
wrap-guide, v0.38.2 (inactive)
language-c, v0.52.1 (inactive)
language-clojure, v0.21.0 (inactive)
language-coffee-script, v0.47.2 (inactive)
language-csharp, v0.12.1 (inactive)
language-css, v0.37.1 (inactive)
language-gfm, v0.88.0 (inactive)
language-git, v0.15.0 (inactive)
language-go, v0.42.1 (inactive)
language-html, v0.45.1 (inactive)
language-hyperlink, v0.16.0 (inactive)
language-java, v0.23.0 (inactive)
language-javascript, v0.119.0 (inactive)
language-json, v0.18.2 (inactive)
language-less, v0.29.5 (inactive)
language-make, v0.22.2 (inactive)
language-mustache, v0.13.0 (inactive)
language-objective-c, v0.15.1 (inactive)
language-perl, v0.35.0 (inactive)
language-php, v0.37.2 (inactive)
language-property-list, v0.8.0 (inactive)
language-python, v0.45.0 (inactive)
language-ruby, v0.69.0 (inactive)
language-ruby-on-rails, v0.25.0 (inactive)
language-sass, v0.56.0 (inactive)
language-shellscript, v0.22.4 (inactive)
language-source, v0.9.0 (inactive)
language-sql, v0.23.0 (inactive)
language-text, v0.7.1 (inactive)
language-todo, v0.28.0 (inactive)
language-toml, v0.18.0 (inactive)
language-xml, v0.34.9 (inactive)
language-yaml, v0.26.0 (inactive)
# Dev
No dev packages
Useful when you are writing a module and exposing a few functions. Would be great to be able to add a function to the list without going to the top and re-tying it etc
Any chance of this plugin ported to Visual Studio Code?
I tend to use end-of-line comments. Elmjutsu does not. It moves them to the next line for me.
Can I tweak that behaviour? How or where?
What I want
[ { name = "Mina", isComplete = False, id = 1 }
, { name = "Joe", isComplete = True, id = 2 } -- the test record
]
What Elmjutsu gives me
[ { name = "Mina", isComplete = False, id = 1 }
, { name = "Joe", isComplete = True, id = 2 }
-- the test record
]
Default auto-complete length needs to be 2 or higher, not 1. Functions involve typing =
, then generally hitting , which unfortunately replaced the =
with ==
due to autocomplete. Perhaps that alone could be fixed to not happen, but for a short-term fix setting the default to 2 will prevent people from going crazy until they figure out to fix it. :-)
It would be nice to be able to undo the last rename. This tends to be annoying if done across files since you have to either rename your rename or go to each of the affected files and hit undo.
Feature suggestions:
Some might want to have the type hints / docs (Sidekick) in an inline tooltip (like in linter-elm-make) rather than in a side panel.
PR welcome :-)
P.S. Wanted to call it "Flying Kick", but nah.
Hey there. I always get this error when opening a specific file. This really stops me from using this awesome plugin :-(
[Enter steps to reproduce below:]
Atom Version: 1.12.7
Electron Version: 1.3.13
System: Linux Mint
Thrown From: elmjutsu package, v2.11.1
Uncaught RangeError: Maximum call stack size exceeded
At /home/roman/.atom/packages/elmjutsu/elm/indexer.js:5079
RangeError: Maximum call stack size exceeded
at up (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:5079:16)
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:5166:14)
at A3 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:98:11)
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:5181:10)
at A3 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:98:11)
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:6947:14)
at A5 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:110:11)
at _user$project$Indexer$getRecordTipeParts (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:7022:10)
at /home/roman/.atom/packages/elmjutsu/elm/indexer.js:7663:9
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:7696:5)
at A4 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:104:11)
at /home/roman/.atom/packages/elmjutsu/elm/indexer.js:7691:70
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:7696:5)
at A4 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:104:11)
at /home/roman/.atom/packages/elmjutsu/elm/indexer.js:7691:70
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:7696:5)
at A4 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:104:11)
at /home/roman/.atom/packages/elmjutsu/elm/indexer.js:7652:16
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:2239:11)
at A2 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:92:11)
at Function.foldr [as func] (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:1972:9)
at A3 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:98:11)
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:2233:10)
at A2 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:92:11)
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:2337:4)
at A2 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:92:11)
at /home/roman/.atom/packages/elmjutsu/elm/indexer.js:7648:14
at Function.func (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:7696:5)
at A4 (/home/roman/.atom/packages/elmjutsu/elm/indexer.js:104:11)
at /home/roman/.atom/packages/elmjutsu/elm/indexer.js:7691:70
17x -3:05.9.0 blur (div.settings-view.pane-item)
{
"core": {
"telemetryConsent": "no"
},
"elmjutsu": {
"autocompleteEnabled": true,
"autocompleteSnippetsEnabled": true,
"cacheDirectory": "/tmp/elmjutsu156701HxK7CsBdcC",
"hyperclickEnabled": true,
"showSidekick": true
}
}
# User
elm-format, v2.1.0 (active)
elmjutsu, v2.11.1 (active)
html-to-elm, v0.2.0 (inactive)
hyperclick, v0.0.39 (active)
intellij-idea-keymap, v0.2.3 (active)
language-elm, v1.5.0 (active)
linter, v1.11.18 (active)
linter-elm-make, v0.18.1 (active)
open-recent, v5.0.0 (active)
react, v0.16.1 (active)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.45.0 (inactive)
base16-tomorrow-dark-theme, v1.3.0 (inactive)
base16-tomorrow-light-theme, v1.3.0 (inactive)
one-dark-ui, v1.6.2 (active)
one-light-ui, v1.6.2 (inactive)
one-dark-syntax, v1.5.0 (active)
one-light-syntax, v1.5.0 (inactive)
solarized-dark-syntax, v1.0.5 (inactive)
solarized-light-syntax, v1.0.5 (inactive)
about, v1.7.0 (active)
archive-view, v0.62.0 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.13.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.4 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.42.0 (active)
bracket-matcher, v0.82.2 (active)
command-palette, v0.39.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.40.0 (active)
find-and-replace, v0.202.2 (inactive)
fuzzy-finder, v1.4.0 (active)
git-diff, v1.1.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.2 (active)
image-view, v0.60.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.2 (inactive)
markdown-preview, v0.158.8 (active)
metrics, v1.1.2 (active)
notifications, v0.65.1 (active)
open-on-github, v1.2.1 (inactive)
package-generator, v1.0.1 (inactive)
settings-view, v0.243.1 (active)
snippets, v1.0.4 (active)
spell-check, v0.68.4 (active)
status-bar, v1.4.1 (active)
styleguide, v0.47.2 (active)
symbols-view, v0.113.1 (inactive)
tabs, v0.103.0 (active)
timecop, v0.33.2 (active)
tree-view, v0.210.0 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.35.1 (active)
whitespace, v0.35.0 (active)
wrap-guide, v0.38.2 (active)
language-c, v0.54.0 (active)
language-clojure, v0.22.1 (active)
language-coffee-script, v0.48.0 (active)
language-csharp, v0.13.0 (active)
language-css, v0.40.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.43.0 (active)
language-html, v0.47.1 (active)
language-hyperlink, v0.16.1 (active)
language-java, v0.24.0 (active)
language-javascript, v0.122.0 (active)
language-json, v0.18.3 (active)
language-less, v0.29.6 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.37.0 (active)
language-php, v0.37.3 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.1 (active)
language-ruby, v0.70.2 (active)
language-ruby-on-rails, v0.25.1 (active)
language-sass, v0.57.0 (active)
language-shellscript, v0.23.0 (active)
language-source, v0.9.0 (active)
language-sql, v0.25.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.29.1 (active)
language-toml, v0.18.1 (active)
language-xml, v0.34.12 (active)
language-yaml, v0.27.1 (active)
# Dev
No dev packages
User should be able to drag the edge of the panel to resize it, similar to that of the linter
's error panel.
PR welcome :-)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.