implement ../ and ./ require() prefixes

This commit is contained in:
Chris Wanstrath
2011-09-02 19:48:08 -07:00
parent c6d0df42e3
commit 93add06d5f
2 changed files with 18 additions and 10 deletions

View File

@@ -5,11 +5,17 @@ root = OSX.NSBundle.mainBundle.resourcePath
code = OSX.NSString.stringWithContentsOfFile path = "#{root}/src/require.js"
__jsc__.evalJSString_withScriptPath code, path
console.log 'require tests:'
console.log require.resolve 'underscore'
console.log require.resolve 'osx'
console.log require.resolve 'tabs/tabs'
console.log require.resolve '~/.atomicity'
console.log require.resolve 'ace/requirejs/text!ace/css/editor.css'
console.log require.resolve 'ace/keyboard/keybinding'
console.log '--------------'
OSX.NSLog 'require tests:'
OSX.NSLog require.resolve 'underscore'
OSX.NSLog require.resolve 'osx'
OSX.NSLog require.resolve 'tabs/tabs'
[ fn, window.__filename ] = [ __filename, "#{root}/src/bootstrap.js" ]
OSX.NSLog require.resolve './document'
OSX.NSLog require.resolve '../README.md'
window.__filename = fn
OSX.NSLog require.resolve '~/.atomicity'
OSX.NSLog require.resolve 'ace/requirejs/text!ace/css/editor.css'
OSX.NSLog require.resolve 'ace/keyboard/keybinding'
OSX.NSLog '--------------'

View File

@@ -60,10 +60,12 @@ resolve = (file) ->
.stringByExpandingTildeInPath.toString()
if file[0..1] is './'
throw "require: ./ prefix not yet implemented"
prefix = __filename.split('/')[0..-2].join '/'
file = file.replace './', "#{prefix}/"
if file[0..2] is '../'
throw "require: ../ prefix not yet implemented"
prefix = __filename.split('/')[0..-3].join '/'
file = file.replace '../', "#{prefix}/"
if file[0] isnt '/'
paths.some (path) ->