Skip to content

Instantly share code, notes, and snippets.

View turbobabr's full-sized avatar
💭
¯\_(ツ)_/¯

Andrey Shakhmin turbobabr

💭
¯\_(ツ)_/¯
View GitHub Profile
@turbobabr
turbobabr / index.html
Last active November 21, 2018 04:02
Electron Fiddle - postNotification issue
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello World!</title>
</head>
<body>
We are using Node.js <script>document.write(process.versions.node)</script>,
Chromium <script>document.write(process.versions.chrome)</script>,
and Electron <script>document.write(process.versions.electron)</script>.
import { createStore } from 'redux';
import _ from 'underscore';
const ADD_ITEM = 'ADD_ITEM';
const REMOVE_ITEM = 'REMOVE_ITEM';
const UPDATE_ITEM = 'UPDATE_ITEM';
const initialState = {
items: [
{
@turbobabr
turbobabr / underscore-recipes.md
Last active August 29, 2015 14:21
Underscore Recipes

Удаление всех ложных элементов из массива

Для того, чтобы грохнуть все ложные значения из масива, такие как false, ''(пустая строка), undefined, 0, null и NaN, в Underscore'e есть специальная функция _.compact(array). Функция возвращает копию поданного в нее массива без упомянутых ложных сообщений.

Может быть очень полезна в цепочки после вызова функции _.map(), которая в результате маппинга при определенных условиях может вернуть undefined, если нет надобности мапить обрабатываеммый объект.

Пример из документации:

_.compact([0, 1, false, 2, '', 3]);
=> [1, 2, 3]
var layer=selection.firstObject();
if(layer) {
var TextBehaviour = {
Auto: 0,
Fixed: 1
};
layer.textBehaviour=TextBehaviour.Fixed;
layer.frame().width=300;
}
// Converts JSON string to JavaScript Object.
function jsonToObject(json) {
var str=[[NSString alloc] initWithString:json];
return [NSJSONSerialization JSONObjectWithData:str.dataUsingEncoding(NSUTF8StringEncoding) options:0 error:nil];
}
// Converts JavaScript Object to JSON string.
function objectToJson(obj,prettyPrint) {
var prettyPrint = prettyPrint || false;

Modifiers:

  • ctrl - Control
  • option - Option/Alt
  • command - Command
  • shift - Shift

Special keys:

  • - Right Key
  • - Left Key
  • - Up Key
+(NSString*)convertNSBezierPathToJSON:(NSBezierPath*)path {
NSMutableArray* newPoints=[NSMutableArray array];
NSPoint points[3];
NSInteger numElements = [path elementCount];
for (int i = 0; i < numElements; i++)
{
NSBezierPathElement element=[path elementAtIndex:i associatedPoints:points];
switch (element)
{
@turbobabr
turbobabr / defaults.js
Created April 21, 2014 05:56
Setting defaults using underscore
function(options) {
options = _.defaults(options || {}, {
index: 0,
product: "sponge"
});
}
@turbobabr
turbobabr / _.isDefined.js
Last active November 22, 2016 03:23
Underscore.js isDefined mixin
// Underscore.js isDefined mixin
// Returns true if value is defined.
_.mixin({
isDefined: function(reference) {
return !_.isUndefined(reference);
}
});
/* Example:
var obj = {