- Custom titles
- Default commands executed on them
- No need to modify .bashrc
- Tested in Ubuntu 14.04 and Ubuntu 15.04
- Copy the contents of autotty.shto a file in your system
- Give it execution rights: chmod +x autotty.sh
| /** | |
| * @module Log | |
| * @desc Logging utils. | |
| * @see {@link https://gist.github.com/andresmatasuarez/66edcd9710986cca4c59| GitHub gist} | |
| * @author Andrés Mata Suárez <amatasuarez@gmail> | |
| * @license {@link http://www.opensource.org/licenses/mit-license.php| MIT License} | |
| * | |
| * @requires {@link http://nodejs.org/api/util.html| util} | |
| * @requires {@link https://github.com/lorenwest/node-config| config} | |
| * @requires {@link https://github.com/winstonjs/winston| winston} | 
| // more info: https://stackoverflow.com/questions/18391212/is-it-not-possible-to-stringify-an-error-using-json-stringify | |
| // Example: | |
| // var error = new Error('testing'); | |
| // error.detail = 'foo bar'; | |
| // console.log(JSON.stringify(error)); // Prints {"message":"testing","detail":"foo bar"} | |
| Object.defineProperty(Error.prototype, 'toJSON', { | |
| value: function(){ | |
| var alt = {}; | 
| /** | |
| * // USAGE | |
| * var humanizer = new HumanizeDuration(); | |
| * | |
| * humanizer.humanize(10080, 'minutes' ); // Returns: '1 week' | |
| * humanizer.humanize(21344, 'minutes' ); // Returns: '2 weeks, 19 hours, 44 minutes' | |
| * humanizer.humanize(2101080000, 'milliseconds'); // Returns: '3 weeks, 3 days, 7 hours, 38 minutes' | |
| * humanizer.humanize(59, 'days' ); // Returns: '8 weeks, 3 days' | |
| * humanizer.humanize(211777, 'seconds' ); // Returns: '2 days, 10 hours, 49 minutes, 37 seconds' | |
| * humanizer.humanize(10080, 'hours' ); // Returns: '60 weeks' | 
| /** | |
| * @module mongo-db-utils | |
| * @desc Promisified (with Bluebird) connection handler for Mongoose connections. | |
| * @see {@link https://gist.github.com/andresmatasuarez/343d5ff39bb1a208a046| GitHub gist} | |
| * @author Andrés Mata Suárez <amatasuarez@gmail> | |
| * @license {@link http://www.opensource.org/licenses/mit-license.php| MIT License} | |
| * | |
| * @requires {@link https://github.com/visionmedia/debug|debug} | |
| * @requires {@link https://github.com/petkaantonov/bluebird|bluebird} | |
| * @requires {@link http://mongoosejs.com/|mongoose} | 
| # Based on: http://stackoverflow.com/questions/15642494/find-property-by-name-in-a-deep-object | |
| findNested = (obj, key, memo) -> | |
| proto = Object.prototype | |
| ts = proto.toString | |
| '[object Array]' != ts.call(memo) and (memo = []) | |
| for own k, v of obj | |
| if k == key | |
| memo.push v | 
| ### | |
| CloudinaryFileUploader | |
| -------------------------- | |
| REQUIREMENTS | |
| ngFileUpload: https://github.com/danialfarid/ng-file-upload | |
| USAGE | |
| 1. Include as your AngularJS app dependencies | |
| angular.module('yourApp', [ 'cloudinary-file-uploader' ]) | 
Install Solaar package manually following instructions from https://github.com/pwr/Solaar/blob/master/docs/installation.md
Add manually-installed Solaar to /usr/bin/, for example ln -s path-to/Solaar-master/bin/solaar /usr/bin/solaar-latest
Run solaar-latest config 1 fn-swap false where 1 is the device number of the K780 keyboard
Whenever Unifying Receiver is disconnected/connected to computer or K780 keyboard is switched off/on, you must go through step 3 again.