Blame view

node_modules/opener/README.md 1.27 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  # It Opens Stuff
  
  That is, in your desktop environment. This will make *actual windows pop up*, with stuff in them:
  
  ```bash
  npm install opener -g
  
  opener http://google.com
  opener ./my-file.txt
  opener firefox
  opener npm run lint
  ```
  
  Also if you want to use it programmatically you can do that too:
  
  ```js
  var opener = require("opener");
  
  opener("http://google.com");
  opener("./my-file.txt");
  opener("firefox");
  opener("npm run lint");
  ```
  
  Plus, it returns the child process created, so you can do things like let your script exit while the window stays open:
  
  ```js
  var editor = opener("documentation.odt");
  editor.unref();
  // These other unrefs may be necessary if your OS's opener process
  // exits before the process it started is complete.
  editor.stdin.unref();
  editor.stdout.unref();
  editor.stderr.unref();
  ```
  
  
  ## Use It for Good
  
  Like opening the user's browser with a test harness in your package's test script:
  
  ```json
  {
      "scripts": {
          "test": "opener ./test/runner.html"
      },
      "devDependencies": {
          "opener": "*"
      }
  }
  ```
  
  ## Why
  
  Because Windows has `start`, Macs have `open`, and *nix has `xdg-open`. At least [according to some guy on StackOverflow](http://stackoverflow.com/q/1480971/3191). And I like things that work on all three. Like Node.js. And Opener.