add user script directory to search paths of 'require' #62
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fixes #38
With this change,
(require)
checks the workspace scripts directory first, then the user script directory, then fails. It incidentally also adds a nil check on the workspace root before trying to load it, so in cases where Joyride currently complains about a null when requiring a script with no workspace loaded, this prevents the call topath/join
if there's no workspace root. Finally, if there's no matching file in the workspace or user scripts directory, Joyride currently presents a JS-ish error message (ENOENT
). This change returns nil from sci's:load-fn
if no matching files are found, resulting in the messageCould not find namespace: missing-ns
.It does still use the synchronous fs stuff for now.