Standard escape codes are prefixed with Escape:
- Ctrl-Key:
^[ - Octal:
\033 - Unicode:
\u001b - Hexadecimal:
\x1B - Decimal:
27
| # Makefile for PlantUML | |
| # Author: Devin Weaver (@sukima) <suki@tritarget.org> | |
| # GistID: 52eacde54bf7861b19ee66a07b864583 | |
| # | |
| # This handles SVGs PNGs and ASCII outputs. | |
| # It handles included files with the .iuml extension: !include foo.iuml | |
| # All diagrams have the .uml extension and reside in the diagrams directory | |
| # All output is saved to the output directory | |
| # | |
| # make svg - (default) build all diagrams as SVGs |
These methods in this gist worked for me on my U.S.-based keyboard layouts. I am unsure about other layouts. If you have problems, revert your changes; delete the registry key you created (and reboot).
Update: you should probably scroll down to approach 4 where I suggest using Microsoft PowerToys Keyboard Manager.
Navigate to and create a new binary value in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout named Scancode Map.
[![Latest NPM release][npm-badge]][npm-badge-url]
[![TravisCI Build Status][travis-badge-url]][travis-project-url]
[![CircleCI Build Status][circle-badge]][circle-badge-url]
[![Test Coverage][coveralls-badge]][coveralls-badge-url]
[![Code Climate][codeclimate-badge]][codeclimate-badge-url]
[![Ember Observer Score][ember-observer-badge]][ember-observer-badge-url]
[![License][license-badge]][license-badge-url]
[![Dependencies][dependencies-badge]][dependencies-badge-url]
[![Dev Dependencies][devDependencies-badge]][devDependencies-badge-url]
| import Ember from 'ember'; | |
| export default Ember.Object.extend({ | |
| model: null, | |
| subpath: null, | |
| dynamicModelProperty: Ember.computed('model', 'subpath', function() { | |
| let subpath = this.get('subpath'); | |
| if ( subpath ) { |
| import Ember from 'ember'; | |
| export default Ember.Helper.extend({ | |
| compute([promise]) { | |
| if (this.promise !== promise) { | |
| this.promiseState = new PromiseState(); | |
| this.promise = promise; | |
| this.promise.then((result)=> { | |
| this.promiseState = this.promiseState.resolve(result); | |
| this.recompute(); |
| (function (root, factory) { | |
| if (typeof define === 'function' && define.amd) { | |
| // AMD. Register as an anonymous module. | |
| define([], factory); | |
| } else if (typeof module === 'object' && module.exports) { | |
| // Node. Does not work with strict CommonJS, but | |
| // only CommonJS-like environments that support module.exports, | |
| // like Node. | |
| module.exports = factory(); | |
| } else { |
| const sorted = arr => { | |
| const length = arr.length; | |
| let unsorted = new Array(length), | |
| sorted = new Array(length); | |
| const destructiveSort = (unsorted, sorted, offset, length) => { | |
| if (length === 1) { | |
| sorted[offset] = unsorted[offset]; | |
| } |
I found these resources very helpful in learning to make better commit messages:
The best take away was the because clause. Here is my guidelines (rule of thumbs) that I abide by:
| import Ember from 'ember'; | |
| import FlashMessage from 'ember-cli-flash/flash/object'; | |
| var { | |
| computed, | |
| get, | |
| run | |
| } = Ember; | |
| export default Ember.Object.extend({ |