UNPKG

974 BJavaScriptView Raw
1#!/usr/bin/env node
2
3// repl - explore pickup
4
5var Transform = require('stream').Transform
6var fs = require('fs')
7var http = require('http')
8var pickup = require('./')
9var repl = require('repl')
10var util = require('util')
11
12var ctx = repl.start({
13 prompt: 'pickup> '
14, ignoreUndefined: true
15, input: process.stdin
16, output: process.stdout
17}).context
18
19ctx.cat = function (path) {
20 return fs.createReadStream(path).pipe(
21 pickup({ objectMode: true }))
22}
23
24util.inherits(UrlStream, Transform)
25function UrlStream (opts) {
26 if (!(this instanceof UrlStream)) return new UrlStream(opts)
27 Transform.call(this, opts)
28}
29
30UrlStream.prototype._transform = function (chunk, enc, cb) {
31 var me = this
32 http.get(chunk, function (res) {
33 res.pipe(pickup({ objectMode: true }))
34 .on('data', function (chunk) { me.push(chunk) })
35 .on('finish', cb)
36 })
37}
38
39ctx.get = function (url) {
40 var stream = new UrlStream({ objectMode: true })
41 stream.end(url)
42 return stream
43}
44