Node.js for Windows and Macs — forward slash, backslash rectification

coffeescript, node.js

Solution

Make sure to use path methods instead of typing out paths. `path.normalize()` and `path.join()` are particularly useful when developing cross platform:

On Windows:

$ node
> var p = require('path')
undefined
> p.normalize('/hey/there/you')
'\\hey\\there\\you'
> p.join('/hey', 'there', '/you')
'\\hey\\there\\you'

On Linux:

$ node
> var p = require('path')
undefined
> p.normalize('/hey/there/you')
'/hey/there/you'
> p.join('/hey', 'there', '/you')
'/hey/there/you'

Hope this helps.

Problem

Is there a method to rectify the discrepancy in node.js from Windows to Linux and Mac concerning the backslash versus forward slash? Windows requires backslashes when calling locations in `git bash`, while Mac/Linux requires forward slashes. I'm working on a project with both Mac and Windows users so I can't change all the forward slashes to backslashes in the code because when Mac users pull, coffee wont be able to properly run for them and vice versa. Is there a solution to this?

Original source