```coffeescript
# Maps Atom Grammar names to the interpreter used by that language
# As well as any special setup for arguments.
module.exports =
  CoffeeScript:
    interpreter: "coffee"
    makeargs: (code) -> ['-e', code]
  JavaScript:
    interpreter: "node"
    makeargs: (code) -> ['-e', code]
  Ruby:
    interpreter: "ruby"
    makeargs: (code) -> ['-e', code]
  Perl:
    interpreter: "perl"
    makeargs: (code) -> ['-e', code]
  PHP:
    interpreter: "php"
    makeargs: (code) -> ['-r', code]
  Python:
    interpreter: "python"
    makeargs: (code) -> ['-c', code]
  'Shell Script (Bash)':
    interpreter: "bash"
    makeargs: (code) -> ['-c', code]
```

Set up selection vs. file args.
user
```coffeescript
# Maps Atom Grammar names to the command used by that language
# As well as any special setup for arguments.

defaultFileArgs = (filename) -> [filename]

module.exports =
  CoffeeScript:
    command: "coffee"
    bySelectionArgs: (code) -> ['-e', code]
    byFileArgs: defaultFileArgs
  JavaScript:
    command: "node"
    selectionArgs: (code) -> ['-e', code]
    byFileArgs: defaultFileArgs
  Ruby:
    command: "ruby"
    selectionArgs: (code) -> ['-e', code]
    byFileArgs: defaultFileArgs
  Perl:
    command: "perl"
    selectionArgs: (code) -> ['-e', code]
    byFileArgs: defaultFileArgs
  PHP:
    command: "php"
    selectionArgs: (code) -> ['-r', code]
    byFileArgs: defaultFileArgs
  Python:
    command: "python"
    selectionArgs: (code) -> ['-c', code]
    byFileArgs: defaultFileArgs
  'Shell Script (Bash)':
    command: "bash"
    selectionArgs: (code) -> ['-c', code]
    byFileArgs: defaultFileArgs
```
assistant