Skip to content

Commit

Permalink
Add dotfiles and export methods directly
Browse files Browse the repository at this point in the history
  • Loading branch information
kevva committed May 22, 2015
1 parent 9dd64e5 commit 63e8655
Show file tree
Hide file tree
Showing 5 changed files with 66 additions and 52 deletions.
1 change: 1 addition & 0 deletions .gitattributes
@@ -0,0 +1 @@
* text=auto
12 changes: 12 additions & 0 deletions .jshintrc
@@ -0,0 +1,12 @@
{
"bitwise": true,
"curly": true,
"esnext": true,
"immed": true,
"newcap": true,
"noarg": true,
"node": true,
"strict": true,
"undef": true,
"unused": "vars"
}
8 changes: 4 additions & 4 deletions README.md
Expand Up @@ -18,8 +18,8 @@ brightness.set(0.75, function (err) {
console.log('Changed brightness to 75%');
});

brightness.get(function (err, level) {
console.log(level);
brightness.get(function (err, brightness) {
console.log(brightness);
//=> 0.4375
});
```
Expand All @@ -35,8 +35,8 @@ $ npm install --global osx-brightness
$ osx-brightness --help
Example
$ osx-brightness
$ osx-brightness 0.75
$ osx-brightness
$ osx-brightness 0.75
```


Expand Down
7 changes: 4 additions & 3 deletions cli.js
Expand Up @@ -7,7 +7,8 @@ var brightness = require('./');
var cli = meow({
help: [
'Example',
' $ osx-brightness 75'
' $ osx-brightness',
' $ osx-brightness 75'
].join('\n')
});

Expand All @@ -21,12 +22,12 @@ if (steps) {
}
});
} else {
brightness.get(function (err, level) {
brightness.get(function (err, brightness) {
if (err) {
console.error(err.message);
process.exit(1);
}

console.log(level);
console.log(brightness);
});
}
90 changes: 45 additions & 45 deletions index.js
Expand Up @@ -2,56 +2,56 @@

var execFile = require('child_process').execFile;

module.exports = {
get: function (cb) {
if (process.platform !== 'darwin') {
throw new Error('Only OS X systems are supported');
}
module.exports.get = function (cb) {
if (process.platform !== 'darwin') {
throw new Error('Only OS X systems are supported');
}

var cmd = 'ioreg';
var args = [
'-c',
'AppleBacklightDisplay',
'-r',
'-d',
1
];

execFile(cmd, args, function (err, stdout, stderr) {
if (err) {
cb(err);
return;
}

var reg = new RegExp('"brightness"={(.*?)}');
var str = reg.exec(stdout)[0];

try {
var b = JSON.parse(str.substring(str.indexOf('{'), str.lastIndexOf('}') + 1).replace(/=/g, ':'));
} catch (err) {
cb(err);
return;
}

cb(null, b.value / b.max);
});
},
set: function (val, cb) {
if (process.platform !== 'darwin') {
throw new Error('Only OS X systems are supported');
var cmd = 'ioreg';
var args = [
'-c',
'AppleBacklightDisplay',
'-r',
'-d',
1
];

execFile(cmd, args, function (err, stdout) {
if (err) {
cb(err);
return;
}

if (typeof val !== 'number' || isNaN(val) === 'true' || val < 0 || val > 1) {
throw new Error('Expected a value between 0 and 1');
var reg = new RegExp('"brightness"={(.*?)}');
var str = reg.exec(stdout)[0];
var b;

try {
b = JSON.parse(str.substring(str.indexOf('{'), str.lastIndexOf('}') + 1).replace(/=/g, ':'));
} catch (err) {
cb(err);
return;
}

execFile('./main', [val], {cwd: __dirname}, function (err, res) {
if (err) {
cb(err);
return;
}
cb(null, b.value / b.max);
});
};

cb();
});
module.exports.set = function (val, cb) {

This comment has been minimized.

Copy link
@sindresorhus

sindresorhus May 23, 2015

Contributor

Can just use exports.set = function ...

if (process.platform !== 'darwin') {
throw new Error('Only OS X systems are supported');
}

if (typeof val !== 'number' || isNaN(val) === 'true' || val < 0 || val > 1) {
throw new Error('Expected a value between 0 and 1');
}

execFile('./main', [val], {cwd: __dirname}, function (err) {
if (err) {
cb(err);
return;
}

cb();
});
};

0 comments on commit 63e8655

Please sign in to comment.