Merge branch 'master' into zt/rm-meta

Conflicts:
	lib/DDG/Goodie/Anagram.pm
	lib/DDG/Goodie/Average.pm
	lib/DDG/Goodie/Chess960.pm
	lib/DDG/Goodie/ColorCodes.pm
	lib/DDG/Goodie/Constants.pm
	lib/DDG/Goodie/Factorial.pm
	lib/DDG/Goodie/LaserShip.pm
	lib/DDG/Goodie/Passphrase.pm
	lib/DDG/Goodie/ResistorColors.pm
	lib/DDG/Goodie/RubiksCubePatterns.pm
	lib/DDG/Goodie/Shortcut.pm
	lib/DDG/Goodie/Sort.pm
	lib/DDG/Goodie/TwelveOclock.pm
	lib/DDG/Goodie/Unicode.pm
	lib/DDG/Goodie/Zodiac.pm
master
Zach Thompson 2015-12-30 13:54:57 -07:00
commit a32452fed6
170 changed files with 10224 additions and 2218 deletions

View File

@ -1,60 +1,3 @@
# Contribute to Goodie Instant Answers
There are several options for contributing Goodie Instant Answers, explained below.
You can always find the [Instant Answer Documentation here](https://duck.co/duckduckhack/ddh-intro). Also, if you have any questions at any point, feel free to ask on one of our community channels:
- [DuckDuckHack mailing list](https://www.listbox.com/subscribe/?list_id=197814)
- [Slack](https://duckduckhack.slack.com) - For access, please send an email to quackslack@duckduckgo.com
- Do not hesitate to email us directly at open@duckduckgo.com.
## New? Make Your First Contribution Today
If this is your first time contributing to [DuckDuckHack](http://www.duckduckhack.com), you have two great ways to quickly make your first commit:
- **Make a [Cheat Sheet](https://duck.co/duckduckhack/goodie_cheat_sheets)**
Cheat sheets are a super-easy way to contribute to the live DuckDuckGo AnswerBar very quickly, by editing a single file. Cheat sheets can be about anything, from Emacs and Vim to Game of Thrones house names or wine pairings.
- **Create a simple, complete "Hello World" Goodie with our [Quick Start Tutorial](https://duck.co/duckduckhack/goodie_quickstart)**
This short tutorial will lead you through all the parts of building a full-loop Goodie. This is a perfect place to start if you have an idea for an original Instant Answer.
## Create a New Instant Answer
Once you're comfortable with the workflow and how Goodies work, we're excited to have you create your own original Instant Answer.
**1. Choose an idea**
Bring your own idea, or check out the ideas forum - especially [top voted answer ideas](https://duck.co/ideas/status/3?table_lnKRpLENwO2NUmZUyukQpw_sort=votes).
**2. Plan your implementation**
The first step is to research and plan your Instant Answer. Consider [the best way to implement](https://duck.co/duckduckhack/determine_your_instant_answer_type) your idea, and review the [docs and guidelines](https://duck.co/duckduckhack/ddh-intro) that apply.
**3. Involve us**
Before you start coding, [let us know your plans](mailto:open@duckduckgo.com). By involving us early we can provide guidance and potentially save you a lot of time and effort. Email us at [open@duckduckgo.com](mailto:open@duckduckgo.com) with what idea you're working on and how you're thinking of going about it.
In addition, we'll promptly set up a [central Instant Answer page](http://www.duck.co/ia) on the community platform so others can know you're working on it and how they can help you.
## Improve an Existing Instant Answer
Another great way to contribute is to improve an existing, live Instant Answer. It's a great way to get further acquainted with Instant Answers, as well as get implementation ideas. (Many contributors report completing their first fix within two hours of forking the repository!)
**1. Choose a "low-hanging fruit"**
We've made sure to identify these throughout our repositories for new contributors.
- [Goodie Low Hanging Fruit](https://github.com/duckduckgo/zeroclickinfo-goodies/issues?q=is%3Aopen+is%3Aissue+label%3A%22Low-Hanging+Fruit%22) ([Goodie docs](https://duck.co/duckduckhack/goodie_overview))
- [Spice Low Hanging Fruit](https://github.com/duckduckgo/zeroclickinfo-spice/issues?q=is%3Aopen+is%3Aissue+label%3A%22Low-Hanging+Fruit%22) ([Spice docs](https://duck.co/duckduckhack/spice_overview))
**2. Dive in**
Go ahead and comment on any issues you're interested in helping with. Let us know what you're thinking and if you'd like any help or guidance.
As always, feel free to [ask us anything](mailto:open@duckduckgo.com), and don't forget the handy [Instant Answer documentation](https://duck.co/duckduckhack/ddh-intro).
# Contributing an Instant Answer
An overview of how to submit an Instant Answer can [be found over in our docs](http://docs.duckduckhack.com/submitting/submitting-overview.html).

View File

@ -1,13 +1,73 @@
# DuckDuckHack Goodies [![Build Status](https://travis-ci.org/duckduckgo/zeroclickinfo-goodies.png?branch=master)](https://travis-ci.org/duckduckgo/zeroclickinfo-goodies)
# Welcome to DuckDuckHack's Goodies Instant Answers Repository
Join us on Slack! [Request invite](mailto:QuackSlack@duckduckgo.com?subject=AddMe)
![](http://docs.duckduckhack.com/assets/hack search engine.png)
This repository contains all the Goodie instant answers. If you are developing a Goodie instant answer you will need to fork this repository.
**Instant Answers are an opportunity for anyone to create their own search results.**
**If you would like to contribute to DuckDuckHack, please start by reading the [DuckDuckHack Documentation](https://dukgo.com/duckduckhack/ddh-intro).**
Instant Answers appear on DuckDuckGo.com above ads and organic links, on [millions of searches](https://duckduckgo.com/traffic.html). Instant Answers are created by an open source community of developers [around the world](http://duckduckgo.meetup.com/) like you. Welcome!
------
You can find the [full documentation here](http://docs.duckduckhack.com). This is the repository for [one type of Instant Answers](http://docs.duckduckhack.com/welcome/determining-ia-type.html), called Goodies.
### Goodie Instant Answer Example
## Create a New Instant Answer
![Unit Conversion Example](https://raw.githubusercontent.com/duckduckgo/duckduckgo-documentation/master/duckduckhack/assets/goodie_readme_example.png)
Learn to make an Instant Answer by starting with any of our quick tutorials. All of these are self-contained and will get you up and running. Pick whatever looks most interesting!
- **[Create a programming syntax cheat sheet](http://docs.duckduckhack.com/walkthroughs/programming-syntax.html)**
- **[Create a quick online calculation](http://docs.duckduckhack.com/walkthroughs/calculation.html)**
- **[Build an API-based lookup](http://docs.duckduckhack.com/walkthroughs/forum-lookup.html)**
## Improve a Live Instant Answer
We welcome new contributors to dive in and improve live Instant Answers. It's a great, hands-on way to learn how things work. Start by [setting up your development environment](http://docs.duckduckhack.com/welcome/setup-dev-environment.html).
You can see all "low-hanging fruit" issues neatly organized in one place on our [Live Issues Page](https://duck.co/ia/dev/issues?tag=lowhangingfruit), or get an overview of all [Instant Answers in development](https://duck.co/ia/dev/pipeline).
Have a [favorite Instant Answer](http://duck.co/ia) that you want to make even better? Feel free to dive in and make changes.
## Inspiration
Instant Answers allow you to create your own search results. Here are some examples of what contributors have created. You can see [all live Instant Answers listed here](https://duck.co/ia).
Instant Answers can be quite dynamic...
![](http://docs.duckduckhack.com/assets/parking_ny.png)
...or simply convenient:
![](http://docs.duckduckhack.com/assets/sales_tax.png)
Some are just cool:
![](http://docs.duckduckhack.com/assets/heads_tails.png)
Many are absolutely delightful and unexpected:
![](http://docs.duckduckhack.com/assets/bpm_ms.png)
Many are super practical...
![](http://docs.duckduckhack.com/assets/air_quality.png)
...in ways we never imagined:
![](http://docs.duckduckhack.com/assets/blue_pill.png)
Some Instant Answers are built from pure code:
![](http://docs.duckduckhack.com/assets/url_encode.png)
Other Instant Answers channel external sources (API requests):
![App search Instant Answer example](http://docs.duckduckhack.com/assets/app_search_example.png)
The [possibilities are endless](https://duck.co/ia). **Our community's mission is to cover every topic with a community-generated Instant Answer.**
## Discuss with Us
Want help? Need to think out loud?
[![slack](http://docs.duckduckhack.com/assets/slack.png) Talk to us on Slack](mailto:QuackSlack@duckduckgo.com?subject=AddMe) or [email us](mailto:open@duckduckgo.com).
We're a digital community, but real people - we frequently meet up to hack together. Check out our [global meetups](http://duckduckgo.meetup.com/).
You can find the [full documentation here](http://docs.duckduckhack.com).

View File

@ -89,10 +89,7 @@ handle remainder => sub {
$response = join ', ', sort { $a cmp $b } @output;
$operation = 'Anagrams of';
} else {
do {
$response = join '', shuffle split(//, $word);
} while (length($word) > 1 && $response eq $word);
$operation = 'Scrambled letters of';
return;
}
return $response,

View File

@ -4,13 +4,24 @@ package DDG::Goodie::Average;
use strict;
use DDG::Goodie;
triggers startend => "avg", "average", "mean", "median", "root mean square";
triggers startend => "avg", "average", "mean", "median", "root mean square", "rms";
zci is_cached => 1;
zci answer_type => "average";
handle remainder => sub {
my $query = $req->query_lc;
my $type;
if ($query =~ m/root mean square|rms/) {
$type = "Root Mean Square";
} elsif ($query =~ m/avg|average|mean/) {
$type = "Mean";
} else {
$type = "Median";
}
#Remove leading/trailing text from list of numbers
s/^[a-zA-Z\s]+//;
s/\s+[a-zA-Z]+$//;
@ -36,26 +47,35 @@ handle remainder => sub {
# get the length of the array
my $len = @nums;
# calculate the mean
my $mean = $sum/$len;
# sort the list numerically, least to greatest
@nums = sort { $a <=> $b } @nums;
my $med;
if ($len % 2 eq 0) {
# get the two middle numbers, since the
# length is even, and calculate their mean
$med = ($nums[$len/2] + $nums[$len/2-1])/2;
my $result;
if ($type eq "Mean") {
# calculate the mean
$result = $sum/$len;
} elsif ($type eq "Median") {
# sort the list numerically, least to greatest
@nums = sort { $a <=> $b } @nums;
if ($len % 2 eq 0) {
# get the two middle numbers, since the
# length is even, and calculate their mean
$result = ($nums[$len/2] + $nums[$len/2-1])/2;
} else {
# get the middle number
$result = $nums[int($len/2)]
}
} else {
# get the middle number
$med = $nums[int($len/2)]
$result += ($_ ** 2) for @nums;
$result /= $len;
$result = sqrt $result;
}
my $rms;
$rms += ($_ ** 2) for @nums;
$rms /= $len;
$rms = sqrt $rms;
return "Mean: $mean; Median: $med; Root Mean Square: $rms", html => "<div class='average--container'><div><span class='average--key'>Mean:</span> <span class='average--value'>$mean</span></div> <div><span class='average--key'>Median:</span> <span class='average--value'>$med</span></div> <div><span class='average--key'>Root Mean Square:</span> <span class='average--value'>$rms</span></div></div>";
return "$type: $result",
structured_answer => {
input => [html_enc($_)],
operation => $type . ' of',
result => html_enc($result),
};
};
1;

View File

@ -23,7 +23,7 @@ my %typeMap = (
handle remainder => sub {
return unless ($_ =~ /^(O|A|B|AB)(\-|\+)$/i);
return unless ($_ =~ /^(O|A|B|AB)((\-|\+)|(\-ve|\+ve))$/i);
my $type = uc $1;
my $rh = $2;
@ -39,6 +39,9 @@ handle remainder => sub {
if($rh eq '+') {
# only when access to same Rh is impossible
push(@criticalResults, $donorType . '-');
}
if($rh eq '+ve') {
push(@criticalResults, $donorType . '-ve');
}
}
@ -51,7 +54,7 @@ handle remainder => sub {
);
my @record_keys = ("Ideal donor", "Other donors");
if($rh eq '+') {
if($rh eq '+ve' || $rh eq '+') {
push @record_keys,"Only if no Rh(+) found";
$record_data{"Only if no Rh(+) found"} = $criticalStr;
}

View File

@ -7,6 +7,7 @@ with 'DDG::GoodieRole::NumberStyler';
use List::Util qw( max );
use Math::Trig;
use Math::BigInt;
use utf8;
zci answer_type => "calc";
@ -23,7 +24,7 @@ triggers query_nowhitespace => qr<
[\( \) x X × * % + ÷ / \^ 0-9 \. , _ \$ -]*
(?(1) (?: -? [0-9 \. , _ ]+ |) |)
(?: [\( \) x X × * % + ÷ / \^ \$ -] | times | divided by | plus | minus | cos | sin | tan | cotan | log | ln | log[_]?\d{1,3} | exp | tanh | sec | csc | squared | sqrt | pi | e )+
(?: [\( \) x X × * % + ÷ / \^ \$ -] | times | divided by | plus | minus | fact | factorial | cos | sin | tan | cotan | log | ln | log[_]?\d{1,3} | exp | tanh | sec | csc | squared | sqrt | pi | e )+
(?: [0-9 \. ,]* )
(?: gross | dozen | pi | e | c | squared | score |)
@ -49,6 +50,7 @@ my %named_operations = (
'÷' => '/',
'ln' => 'log', # perl log() is natural log.
'squared' => '**2',
'fact' => 'Math::BigInt->new',
);
my %named_constants = (
@ -75,10 +77,12 @@ handle query_nowhitespace => sub {
return if ($query =~ /^(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?$/); # Probably are searching for a phone number, not making a calculation
$query =~ s/^(?:whatis|calculate|solve|math)//;
$query =~ s/(factorial)/fact/; #replace factorial with fact
# Grab expression.
my $tmp_expr = spacing($query, 1);
return if $tmp_expr eq $query; # If it didn't get spaced out, there are no operations to be done.
# First replace named operations with their computable equivalents.
@ -88,7 +92,7 @@ handle query_nowhitespace => sub {
}
$tmp_expr =~ s#log[_]?(\d{1,3})#(1/log($1))*log#xg; # Arbitrary base logs.
$tmp_expr =~ s/ (\d+?)E(-?\d+)([^\d]|\b) /\($1 * 10**$2\)$3/xg; # E == *10^n
$tmp_expr =~ s/ (\d+?)E(-?\d+)([^\d]|\b) /\($1 * 10**$2\)$3/ixg; # E == *10^n
$tmp_expr =~ s/\$//g; # Remove $s.
$tmp_expr =~ s/=$//; # Drop =.
$tmp_expr =~ s/([0-9])\s*([a-zA-Z])([^0-9])/$1*$2$3/g; # Support 0.5e or 0.5pi; but don't break 1e8
@ -104,6 +108,7 @@ handle query_nowhitespace => sub {
return unless $style;
$tmp_expr = $style->for_computation($tmp_expr);
$tmp_expr =~ s/(Math::BigInt->new\((.*)\))/(Math::BigInt->new\($2\))->bfac()/g; #correct expression for fact
# Using functions makes us want answers with more precision than our inputs indicate.
my $precision = ($query =~ $funcy) ? undef : ($query =~ /^\$/) ? 2 : max(map { $style->precision_of($_) } @numbers);
my $tmp_result;
@ -142,6 +147,7 @@ sub prepare_for_display {
# Show them how 'E' was interpreted. This should use the number styler, too.
$query =~ s/((?:\d+?|\s))E(-?\d+)/\($1 * 10^$2\)/i;
$query =~ s/\s*\*{2}\s*/^/g; # Use prettier exponentiation.
$query =~ s/(Math::BigInt->new\((.*)\))/fact\($2\)/g; #replace Math::BigInt->new( with fact(
$result = $style->for_display($result);
foreach my $name (keys %named_constants) {
$query =~ s#\($name\)#$name#xig;
@ -163,7 +169,7 @@ sub spacing {
my ($text, $space_for_parse) = @_;
$text =~ s/\s{2,}/ /g;
$text =~ s/(\s*(?<!<)(?:[\+\-\^xX×∙⋅\*\/÷\%]|times|plus|minus|dividedby)+\s*)/ $1 /ig;
$text =~ s/(\s*(?<!<)(?:[\+\^xX×∙⋅\*\/÷\%]|(?<!\de)\-|times|plus|minus|dividedby)+\s*)/ $1 /ig;
$text =~ s/\s*dividedby\s*/ divided by /ig;
$text =~ s/(\d+?)((?:dozen|pi|gross|squared|score))/$1 $2/ig;
$text =~ s/([\(\)])/ $1 /g if ($space_for_parse);

View File

@ -3,7 +3,6 @@ package DDG::Goodie::Chess960;
use strict;
use DDG::Goodie;
with 'DDG::GoodieRole::Chess';
triggers any => 'random', 'chess960';
zci is_cached => 0;
@ -108,13 +107,6 @@ RBKRNQBN RKRBNQBN RKRNQBBN RKRNQNBB BBRKRNNQ BRKBRNNQ BRKRNBNQ BRKRNNQB RBBKRNNQ
RKBRNBNQ RKBRNNQB RBKRBNNQ RKRBBNNQ RKRNBBNQ RKRNBNQB RBKRNNBQ RKRBNNBQ RKRNNBBQ RKRNNQBB
);
sub make_fen {
my ($position) = @_;
my ($position_lc) = lc$position;
my ($fen) = "${position_lc}/pppppppp/8/8/8/8/PPPPPPPP/${position}";
return parse_position($fen);
}
handle query => sub {
# Ensure rand is seeded for each process
srand();
@ -128,13 +120,29 @@ handle query => sub {
my $position = $all_positions[$index];
my @fen = make_fen($position);
my $position_num = $index + 1;
my $html = draw_chessboard_html(@fen);
$query =~ s/^ chess960|chess960 $|chess960 //i;
return draw_chessboard_ascii(@fen), html => $html, heading => "Position $position_num (Chess960)";
return 'Chess 960',
structured_answer => {
id => 'chess960',
name => 'Answer',
data => {
title => 'Chess960',
subtitle => 'Position ' . $position_num,
rows => 8,
columns => 8,
position => $position
},
templates => {
group => 'text',
item => 0,
options => {
content => 'DDH.chess960.content'
}
}
};
};
1;

View File

@ -62,61 +62,6 @@ sub percentify {
return @out;
}
sub create_output {
my (%input) = @_;
my ($text, $html) = ("","");
(my $hex_for_links = $input{'hex'}) =~ s/^#//;
my $hex = "Hex: ".uc($input{'hex'});
my $rgb = "RGBA(" . join(", ", @{$input{'rgb'}}) . ", ".$input{'alpha'}.")";
my $rgb_pct = "RGB(" . join(", ", @{$input{'rgb_percentage'}}) . ")";
my $hsl = "HSL(" . join(", ", @{$input{'hsl'}}) . ")";
my $cmyb = "CMYB(" . join(", ", @{$input{'cmyb'}}) . ")";
my @analogous_colors = @{$input{'analogous'}};
my $complementary = uc $input{'complementary'};
#greyscale colours have no hue and saturation
my $show_column_2 = !($input{'hsl'}->[0] eq 0 && $input{'hsl'}->[1] eq '0%');
$text = "$hex ~ $rgb ~ $rgb_pct ~ $hsl ~ $cmyb";
my $column_2_text = "\n" .
"Complementary: #$complementary\n" .
"Analogous: ".(join ", ", map { "#".uc $_ } @analogous_colors);
my $comps = "<div class='cols_column'>"
. "<a href='/?q=color%20picker%20%23$complementary' class='mini-color circle' style='background: #$complementary'>"
. "</a></div>"
. "<div class='desc_column'><p class='no_vspace'>Complementary #:</p><p class='no_vspace'>"
. qq[<a onclick='document.x.q.value="#$complementary";document.x.q.focus();' href='javascript:' class='tx-clr--lt'>$complementary</a>]
. "</p></div>";
my $analogs = "<div class='cols_column'>"
. (join "", map { "<a href='/?q=color%20picker%20%23".$_."' class='mini-color circle' style='background: #" . $_ . "'> </a>"; } @analogous_colors)
. "</div>"
. "<div class='desc_column'><p class='no_vspace'>Analogous #:</p><p class='no_vspace'>" . (join ", ", map { qq[<a onclick='document.x.q.value="#] .(uc $_). qq[";document.x.q.focus();' href='javascript:' class='tx-clr--lt'>].(uc $_).'</a>' } @analogous_colors) . "</p></div>";
$html = "<div class='column1 tx-clr--dk2'>"
. "<p class='hex tx-clr--dk zci__caption'>$hex</p><p class='no_vspace'>$rgb</p><p class='no_vspace'>$hsl</p><p class='no_vspace'>$cmyb</p>"
. "<p><a href='http://labs.tineye.com/multicolr/#colors=" . $hex_for_links . ";weights=100;' class='tx-clr--dk2'>Images</a>"
. "<span class='separator'> | </span>"
. "<a href='http://www.color-hex.com/color/" . $hex_for_links . "' title='Tints, information and similar colors on color-hex.com' class='tx-clr--dk2'>Info</a>"
. "<span class='separator'> | </span>"
. "<a href='/?q=color%20picker%20%23" . $hex_for_links . "' class='tx-clr--dk2'>Picker</a></p>"
. "</div>";
my $column_2_html = "<div class='column2 tx-clr--dk2'>"
. "<div class='complementary'>$comps</div>"
. "<div>$analogs</div>"
. "</div>";
if ($show_column_2) {
$html.= $column_2_html;
$text.= $column_2_text;
}
return ($text, $html);
}
handle matches => sub {
my $color;
@ -155,8 +100,8 @@ handle matches => sub {
$type = 'rgb8'; # We asked for rgb8 from our dictionary, so make sure our type matches.
};
}
my $col = try { Convert::Color->new("$type:$color") }; # Everything should be ready for conversion now.
my $col = try { Convert::Color->new("$type:$color") }; # Everything should be ready for conversion now.
return unless $col; # Guess not.
if ($inverse) { # We triggered on the inverse, so do the flip.
@ -168,30 +113,53 @@ handle matches => sub {
my $complementary = $color_mix->complementary($hex_code);
my @analogous = $color_mix->analogous($hex_code,12,12);
@analogous = ($analogous[1], $analogous[11]);
@analogous = (uc($analogous[1]), uc($analogous[11]));
my @rgb = $col->as_rgb8->rgb8;
my $hsl = $col->as_hsl;
my @rgb_pct = percentify($col->as_rgb->rgb);
my @cmyk = percentify($col->as_cmyk->cmyk);
my %outdata = (
hex => '#' . $hex_code,
rgb => \@rgb,
rgb_percentage => \@rgb_pct,
hsl => [round($hsl->hue), percentify($hsl->saturation), percentify($hsl->lightness)],
cmyb => \@cmyk,
alpha => $alpha,
complementary => $complementary,
analogous => \@analogous
);
my ($text, $html_text) = create_output(%outdata);
my @hsl = (round($hsl->hue), percentify($hsl->saturation), percentify($hsl->lightness));
return $text,
html => '<div class="zci--color-codes"><a href="/?q=color%20picker%20%23' . $hex_code . '" '
. 'class="colorcodesbox circle" style="background:#' . $hex_code . '">'
. '</a>'
. $html_text
. "</div>";
my $hexc = 'Hex: #' . uc($hex_code);
my $rgb = 'RGBA(' . join(', ', @rgb) . ', ' . $alpha . ')';
my $hslc = 'HSL(' . join(', ', @hsl) . ')';
my $cmyb = 'CMYB(' . join(', ', @cmyk) . ')';
my $rgb_pct = 'RGB(' . join(', ', @rgb_pct) . ')';
$complementary = uc($complementary);
#greyscale colours have no hue and saturation
my $show_column_2 = !($hsl[0] eq 0 && $hsl[1] eq '0%');
my $column_2 = '';
if ($show_column_2) {
$column_2 = "\n" . "Complementary: #$complementary" . "\n" . "Analogous: #$analogous[0], #$analogous[1]";
}
return "$hexc ~ $rgb ~ $rgb_pct ~ $hslc ~ $cmyb$column_2",
structured_answer => {
id => 'color_codes',
name => 'Answer',
data => {
hex_code => $hex_code,
hexc => $hexc,
rgb => $rgb,
hslc => $hslc,
cmyb => $cmyb,
show_column_2 => $show_column_2,
analogous => \@analogous,
complementary => $complementary,
},
templates => {
group => 'text',
item => 0,
options => {
content => 'DDH.color_codes.content'
}
}
};
};
1;

View File

@ -12,7 +12,7 @@ my $constants = LoadFile(share("constants.yml"));
foreach my $name (keys %$constants) {
#obtain to constant with name $keyword
my $constant = $constants->{$name};
#add aliases as separate triggers
foreach my $alias (@{$constant->{'aliases'}}) {
$constants->{$alias} = $constant;
@ -26,7 +26,7 @@ triggers startend => @triggers;
handle query_lc => sub {
my $constant = $constants->{$_};
return unless my $val = $constant->{'value'};
#fallback to plain answer if html is not present
my $result = $val->{'html'} ? $val->{'html'} : $val->{'plain'};

View File

@ -1,34 +0,0 @@
package DDG::Goodie::Factorial;
# ABSTRACT: n factorial
use strict;
use DDG::Goodie;
use List::Util qw(reduce);
use bigint;
zci answer_type => "factorial";
zci is_cached => 1;
triggers any => "factorial", "fact";
handle remainder => sub {
my $n = $_;
return unless $n =~ /^\d+$/;
$n = int($n);
my $fact = '1';
$fact = reduce { $a * $b } 1 .. $n if ($n > 0);
return "Factorial of $n is $fact",
structured_answer => {
input => [$n],
operation => 'Factorial',
result => $fact
};
};
1;

View File

@ -7,7 +7,7 @@ use DDG::Goodie;
zci is_cached => 1;
zci answer_type => "lasership";
triggers query_nowhitespace_nodash => qr/(l[a-z]\d{8})/i;
triggers query_nowhitespace_nodash => qr/(^l[a-z]\d{8}$)/i;
handle query_nowhitespace_nodash => sub {
return $1, heading => "Lasership Shipment Tracking", html => qq(Track this shipment at <a href="http://lasership.com/track/$1">Lasership</a>.) if $1;

View File

@ -16,6 +16,8 @@ handle remainder => sub {
my $lower = lc $input;
return if ($lower eq $input);
return $lower,
structured_answer => {
input => [html_enc($input)],

View File

@ -0,0 +1,82 @@
package DDG::Goodie::NoteFrequency;
# ABSTRACT: Return the frequency (Hz) of the note given in the query
use DDG::Goodie;
use strict;
zci answer_type => "note_frequency";
zci is_cached => 1;
name "NoteFrequency";
description "Calculate the frequency of a musical note";
primary_example_queries "notefreq a4", "notefreq gb5";
secondary_example_queries "notefreq c3 432";
category "conversions";
topics "music";
code_url "https://github.com/duckduckgo/zeroclickinfo-goodies/blob/master/lib/DDG/Goodie/NoteFrequency.pm";
attribution github => ["sublinear", "sublinear"];
# Triggers
triggers any => "notefreq", "notefrequency", "note frequency", "note frequency of", "frequency of note";
# Handle statement
handle remainder => sub {
return unless $_;
# must be a note letter, optional sharp or flat,
# octave number, optional tuning frequency for A4,
# and optional case-insensitive "hz" with or without preceding whitespace
# e.g. "g#3 432 hz" or "ab5 435Hz"
return unless ($_ =~ /^([A-Ga-g])([b#])?([0-8])(\s+[0-9]{1,4})?(\s?[hH][zZ])?$/ );
my( $letter, $accidental, $octave, $tuning, $pitchClass, $midi, $frequency );
# regex captures
if (defined $1) { $letter = uc($1); } else { $letter = ""; }
if (defined $2) { $accidental = $2; } else { $accidental = ""; }
if (defined $3) { $octave = $3 + 0; } else { $octave = 0; }
if (defined $4) { $tuning = $4 + 0; } else { $tuning = 0; }
# assume 440Hz tuning unless otherwise specified
if ( $tuning == 0 ) { $tuning = 440; }
# convert note letter to pitch class number
if ( $letter eq "C" ) { $pitchClass = 0; }
elsif ( $letter eq "D" ) { $pitchClass = 2; }
elsif ( $letter eq "E" ) { $pitchClass = 4; }
elsif ( $letter eq "F" ) { $pitchClass = 5; }
elsif ( $letter eq "G" ) { $pitchClass = 7; }
elsif ( $letter eq "A" ) { $pitchClass = 9; }
else { $pitchClass = 11; }
# apply accidental to pitch class number
if ( $accidental eq "b" ) { $pitchClass -= 1; }
elsif ( $accidental eq "#" ) { $pitchClass += 1; }
# calculate MIDI number
$midi = ( 12 * ($octave + 1) ) + $pitchClass;
# fix pitch class number
$pitchClass %= 12;
# validate note is between C0 and B8
return unless ( $midi >= 12 && $midi <= 119 );
# calculate frequency
$frequency = $tuning * ( 2 ** (($midi-69)/12) );
# round to two decimal places (is never negative anyway and avoids libs)
$frequency = int(100 * ($frequency + 0.005)) / 100;
# result
return $frequency,
structured_answer => {
input => [html_enc($letter.$accidental.$octave." in A".$tuning." tuning")],
operation => "Note Frequency",
result => html_enc($frequency." Hz"),
};
};
1;

View File

@ -0,0 +1,57 @@
package DDG::Goodie::OnionAddress;
# ABSTRACT: Recognize a web onion service address
use strict;
use DDG::Goodie;
zci is_cached => 1;
zci answer_type => "onion_address";
primary_example_queries '3g2upl4pq6kufc4m.onion';
secondary_example_queries 'How do I access https://3g2upl4pq6kufc4m.onion:81/?q=dont+track+us?';
description 'Recognize a web onion service address';
name 'OnionAddress';
code_url 'https://github.com/duckduckgo/zeroclickinfo-goodies/blob/master/lib/DDG/Goodie/OnionAddress.pm';
category 'reference';
topics 'special_interest', 'cryptography';
attribution email => 'ilv@torproject.org';
# regex to detect an onion service address
# this cover several cases, including addresses with ports and/or paths
# e.g. https://3g2upl4pq6kufc4m.onion:5000/?q=dont+track+us
my $onion_address_qr = qr/(\w+:\/\/)?([a-z0-9]{16})\.onion(:\d+)?(\/.*)?/;
# add an optional question mark in case it's at the end of a question sentence
# e.g. How do I access https://0123456789abcdef.onion?
triggers query_lc => qr/\b$onion_address_qr(\?)?\b/;
handle query_lc => sub {
# we only accept queries for web onion services
# we also assume that an onion service without protocol:// should be web
return unless !$1 or ($1 eq 'https://' or $1 eq 'http://' and $2);
my $plaintext = $2.'.onion';
return $plaintext,
structured_answer => {
id => 'onion_address',
name => 'OnionAddress',
data => {
title => $2.'.onion',
subtitle => 'Onion/Hidden service',
description => 'You are trying to reach an onion/hidden service. To access '.$2.'.onion via web you will have to use the Tor Browser.'
},
meta => {
sourceName => "Tor Project",
sourceUrl => "https://www.torproject.org/projects/torbrowser.html.en#downloads"
},
templates => {
group => 'text',
options => {
moreAt => 1
}
}
};
};
1;

View File

@ -7,7 +7,9 @@ use DDG::Goodie;
zci answer_type => 'random_passphrase';
zci is_cached => 0;
triggers startend => 'passphrase', 'pass phrase', 'random passphrase', 'passphrase random', 'random pass phrase', 'pass phrase random';
my @trigger_words = ('passphrase', 'pass phrase', 'random passphrase', 'passphrase random', 'random pass phrase', 'pass phrase random');
triggers startend => @trigger_words;
# Remove the line endings up front.
my @word_list = map { chomp $_; $_ } share('words.txt')->slurp;
@ -20,7 +22,7 @@ handle query_lc => sub {
my $query = shift;
my $word_count;
$query =~ s/^(?:generate|create)\s+//g; # Just in case they want to make a command of it.
if ($query eq 'random passphrase') {
if ( grep {$query eq $_} @trigger_words ) {
# If this is our entire (remaining) query, we'll still handle it and
# set the word count to 4 in honor of correct horse battery staple.
$word_count = 4;

View File

@ -12,6 +12,9 @@ zci is_cached => 1;
# Triggers
triggers start => "prime", "prime numbers";
# 2015.12.29 (caine): moved max from 1B to 1M.
my $max = 1_000_000;
handle query_lc => sub {
# q_check (as opposed to q_internal) Allows for decimals.
return unless ($_ =~ /^\!?(?:prime num(?:ber(?:s|)|) between|)[\s]*([-]{0,1}[\d\.]+|)(?: and|)[\s]*([-]{0,1}[\d\.]+|)$/i);
@ -19,8 +22,8 @@ handle query_lc => sub {
my $start = $1 || 1;
my $end = $2 || 1;
$start = 1000000000 if $start > 1000000000;
$end = 1000000000 if $end > 1000000000;
$start = $max if $start > $max;
$end = $max if $end > $max;
($end, $start) = ($start, $end) if ($start > $end);
my $s = ceil($start);

View File

@ -120,13 +120,12 @@ sub render {
my $ohms = $formatted_value eq '1' ? 'ohm' : 'ohms';
my $text = "$formatted_value\x{2126}";
my $bands = ucfirst to_string(scalar @$digits);
my $html = "<div class='zci--resistor-colors'>" .
"<h3 class='zci__header'>$text</h3>" .
"<h4 class='zci__subheader'>$bands Bands</h4>" .
"<div class='zci__content'>";
my $title = $text;
$text .= " ($ohms) resistor colors:";
#while (my ($index, $digit) = each @$digits) {
my @resistor_bands;
my $index = 0;
foreach my $digit (@$digits) {
if (exists $digits_to_colors{$digit}) {
@ -138,12 +137,12 @@ sub render {
if ($index == scalar(@$digits) - 2) {
# multiplier digit
$text_prefix = "\x{00D7}";
$html_prefix = '&times;';
$html_prefix = '×';
$display_digit = $digits_to_colors{$digit}{multiplier};
} elsif ($index == scalar(@$digits) - 1) {
# tolerance digit
$text_prefix = "\x{00B1}";
$html_prefix = '&plusmn;';
$html_prefix = '±';
$display_digit = $digits_to_colors{$digit}{tolerance};
} else {
# numeric digits
@ -155,18 +154,42 @@ sub render {
if ($index != scalar(@$digits - 1)) {
$text .= ','; # Comma delimit all but last
}
$html .= "<span class='resistor-band $class'>$name $html_prefix$display_digit</span>";
push (@resistor_bands, {
class => $class,
name => $name,
html_prefix => $html_prefix,
display_digit => $display_digit
});
} else {
return;
}
$index++;
}
$html .= "</div></div>"
. "<br/>"
. "<a href='http://resisto.rs/#$formatted_value' class='zci__more-at'>"
. "More at resisto.rs</a>";
return $text, html => $html;
return $text,
structured_answer => {
id => 'resistor_colors',
name => 'Answer',
meta => {
sourceName => "resisto.rs",
sourceUrl => "http://resisto.rs/$formatted_value"
},
data => {
title => $title,
subtitle => $bands . ' Bands',
resistor_bands => \@resistor_bands
},
templates => {
group => 'text',
item => 0,
options => {
content => 'DDH.resistor_colors.content',
moreAt => 1
}
}
};
};
1;

View File

@ -7,67 +7,82 @@ use DDG::Goodie;
triggers start => "rcube", "rubik", "rubiks", "rubix",
"rubicks", "rubik's", "rubic's", "rubick's",
"rubik cube", "rubiks cube", "rubic cube", "rubics cube",
"rubik's cube patterns", "rubiks cube patterns";
"rubik's cube";
zci answer_type => "rubiks_cube";
zci is_cached => 1;
our %patterns = (
"stripes" => "F U F R L2 B D' R D2 L D' B R2 L F U F",
"crosses" => "U F B' L2 U2 L2 F' B U2 L2 U",
"swap centers" => "U D' R L' F B' U D'",
"checkerboard" => "F2 B2 R2 L2 U2 D2",
"cube in a cube" => "F L F U' R U F2 L2 U' L' B D' B' L2 U",
"cube in a cube in a cube" => "U' L' U' F' R2 B' R F U B2 U B' L U' F U R F'",
"exchanged peaks" => "F2 R2 D R2 U D F2 D' R' D' F L2 F' D R U'",
"t's" => "F2 R2 U2 F' B D2 L2 F B",
"anaconda" => "L U B' U' R L' B R' F B' D R D' F'",
"python" => "F2 R' B' U R' L F' L F' B D' R B L2",
"black mamba" => "R D L F' R L' D R' U D' B U' R' D'",
my %patterns = (
"stripes" => "F U F R L2 B D' R D2 L D' B R2 L F U F",
"crosses" => "U F B' L2 U2 L2 F' B U2 L2 U",
"swap centers" => "U D' R L' F B' U D'",
"checkerboard" => "F2 B2 R2 L2 U2 D2",
"cube in a cube" => "F L F U' R U F2 L2 U' L' B D' B' L2 U",
"cube in a cube in a cube" => "U' L' U' F' R2 B' R F U B2 U B' L U' F U R F'",
"exchanged peaks" => "F2 R2 D R2 U D F2 D' R' D' F L2 F' D R U'",
"t's" => "F2 R2 U2 F' B D2 L2 F B",
"anaconda" => "L U B' U' R L' B R' F B' D R D' F'",
"python" => "F2 R' B' U R' L F' L F' B D' R B L2",
"black mamba" => "R D L F' R L' D R' U D' B U' R' D'",
);
sub to_titlecase($)
{
$a = pop;
$a =~ s/(\w\S*)/\u\L$1/g;
$a =~ s/ In / in /g;
$a =~ s/ A / a /g;
return $a;
$a = pop;
$a =~ s/(\w\S*)/\u\L$1/g;
$a =~ s/ In / in /g;
$a =~ s/ A / a /g;
return $a;
}
sub render_text($) {
my $name = pop;
return to_titlecase($name) . ": $patterns{$name} \n";
my $name = pop;
return to_titlecase($name) . ": $patterns{$name} \n";
}
sub render_html($) {
my $name = pop;
my $output = "<div><i>" . to_titlecase($name) . "</i>";
$output .= ": $patterns{$name}</div>\n";
return $output;
}
handle remainder_lc => sub {
handle remainder => sub {
return if ($_ eq '');
#support British English!
s/centre/center/;
$_ = lc($_);
#hack for the trigger "rubiks cube in a cube"
s/^in a cube/cube in a cube/;
my %patterns_answer;
my $output;
my $title;
my $subtitle;
if ($patterns{$_}) {
$output = render_text($_);
$title = $patterns{$_};
$subtitle = "Rubiks cube '" . to_titlecase($_) . "' pattern";
} else {
return if ($_ ne 'patterns');
foreach my $pattern (keys %patterns) {
$output .= render_text($pattern);
}
$title = 'Rubiks cube patterns';
%patterns_answer = %patterns;
}
#support British English!
s/centre/center/;
#hack for the trigger "rubiks cube in a cube"
s/^in a cube/cube in a cube/;
#show answer
return render_text($_), html => render_html($_) if ($patterns{$_});
#display the cheatsheet
my $output = my $html_output = "";
foreach my $pattern (keys %patterns) {
$output .= render_text($pattern);
$html_output .= render_html($pattern);
}
return $output, html => $html_output, heading => "Rubik's Cube Patterns";
return $output,
structured_answer => {
id => 'rubiks_cube_patterns',
name => 'Answer',
data => {
title => $title,
subtitle => $subtitle,
record_data => \%patterns_answer,
},
templates => {
group => 'list',
options => {
content => 'record',
}
}
};
};
1;

View File

@ -0,0 +1,71 @@
package DDG::Goodie::Scramble;
# ABSTRACT: Returns an scramble based on the supplied query.
use strict;
use DDG::Goodie;
use List::Util qw( shuffle );
my @keywords = qw(scramble scrambles);
my @connectors = qw(of for);
my @commands = qw(find show);
my @triggers;
foreach my $kw (@keywords) {
foreach my $con (@connectors) {
push @triggers, join(' ', $kw, $con); # scramble for, scramble of, etc.
foreach my $com (@commands) {
push @triggers, join(' ', $com, $kw, $con); # find scramble of, show scrambles for, etc.
}
}
push @triggers, $kw; # Trigger order appears to matter, so the bare keywords after the others
}
zci answer_type => 'scramble';
zci is_cached => 0;
triggers start => @triggers;
primary_example_queries "scramble of filter";
secondary_example_queries "find scramble for partial men";
description "find the scramble(s) of your query";
name "Scramble";
code_url "https://github.com/duckduckgo/zeroclickinfo-goodies/blob/master/lib/DDG/Goodie/Scramble.pm";
category "transformations";
topics "words_and_games";
attribution github => ["https://github.com/loganom", 'loganom'],
github => ["https://github.com/beardlybread", "beardlybread"],
github => ['https://github.com/gdrooid', 'gdrooid'],
email => ['gdrooid@openmailbox.org', 'gdrooid'],
github => ["https://github.com/Mailkov", "Melchiorre Alastra"];
my $operation = 'Scramble of';
# Handle statement
handle remainder_lc => sub {
my $word = $_;
$word =~ s/^"(.*)"$/$1/;
return unless $word; # Need a word.
my $match_word = $word;
$match_word =~ s/[^a-z]//g;
return unless $match_word;
my $response;
do {
$response = join '', shuffle split(//, $match_word);
} while (length($match_word) > 1 && $response eq $match_word);
return unless $response;
return "$operation $word",
structured_answer => {
input => [html_enc($word)],
operation => $operation,
result => html_enc($response)
};
};
1;

View File

@ -1,58 +0,0 @@
package DDG::Goodie::Shortcut;
# ABSTRACT: Display keyboard shortcut for an action.
use strict;
use DDG::Goodie;
use utf8;
use Text::Trim;
triggers any => 'shortcut','keyboard shortcut', 'key combination';
zci answer_type => 'shortcut';
zci is_cached => 1;
my @shortcuts = share('shortcuts.csv')->slurp(iomode => '<:encoding(UTF-8)');
handle remainder_lc => sub {
#keep only letters and spaces (remove versioning)
s/[^a-z ]//gi;
#replace all OS words with starting char
s/windows|win|xp|vista|seven|eight/W/gi;
s/mac|os[ ]*x/M/gi;
s/linux|ubuntu|debian|fedora|kde|gnome/L/gi;
#get OS char (if any)
my $search = $_;
$search =~ /(W|M|L)/;
my $os = $1; #save OS char
$search =~ tr/[WML]//d; #remove all OS chars from search
$search =~ tr/ / /s; #leave just one blank between words
$search = trim $search; #trim
if(!$os) {$os='';} #line added to avoid error, remove when UA detection added.
my $line;
foreach (@shortcuts) {
if($_ =~ /^$search/i) { #matches only the start
$line = $_;
$line =~ s/\R//g; #remove carriage return
last;
}
}
return if !$line;
my @columns = split('\|',$line);
my $answer = 'The shortcut for ' . $columns[0];
my %systems = (W=>'Windows',M=>'Mac OS',L=>'KDE/GNOME');
my %keys = (W => $columns[1], M => $columns[2], L => $columns[3]);
return if !$keys{$os};
if ($os) { $answer .= ' in ' . $systems{$os} . ' is ' . $keys{$os}; }
my $source = '<br/><a href="https://en.wikipedia.org/wiki/Table_of_keyboard_shortcuts">More at Wikipedia</a>';
return $answer, html => "$answer $source";
};
1;

View File

@ -19,6 +19,9 @@ zci is_cached => 1;
my $delim = ', ';
handle remainder => sub {
return unless $_;
my $input = $_;
$input =~ s/[\(\{\[]
|

View File

@ -2,7 +2,7 @@ package DDG::Goodie::URLDecode;
# ABSTRACT: Displays the decoded URL for a percent encoded uri
use DDG::Goodie;
use URI::Escape::XS qw(decodeURIComponent);
use URI::Escape::XS qw(uri_unescape);
use warnings;
use strict;
@ -23,7 +23,7 @@ handle query_raw => sub {
s/(^\s+)|(\s+$)//;
my $in = $_;
my $decoded = decodeURIComponent($in);
my $decoded = uri_unescape($in);
if ($decoded =~ /^\s+$/) {
$decoded =~ s/\r/CReturn/;
@ -33,13 +33,20 @@ handle query_raw => sub {
}
my $text = "URL Decoded: $decoded";
my $subtitle = "URL decode: $in";
return $text,
structured_answer => {
input => [html_enc($in)],
operation => 'URL decode',
result => html_enc($decoded)
};
return $text, structured_answer => {
id => 'url_decode',
name => 'Answer',
data => {
title => $decoded,
subtitle => $subtitle
},
templates => {
group => 'text',
moreAt => 0
}
};
};
1;

View File

@ -2,7 +2,7 @@ package DDG::Goodie::URLEncode;
# ABSTRACT: Displays the percent-encoded url.
use DDG::Goodie;
use URI::Escape::XS qw(encodeURIComponent);
use URI::Escape::XS qw(uri_escape);
use warnings;
use strict;
@ -16,16 +16,27 @@ handle remainder => sub {
return unless $in;
my $encoded_url = encodeURIComponent($in);
## URI::Escape::XS::uri_escape expects a byte string, so downgrade our string
## https://metacpan.org/pod/URI::Escape::XS#uri_escape
utf8::downgrade($in);
my $encoded_url = uri_escape($in);
my $text = "Percent-encoded URL: $encoded_url";
my $subtitle = "URL percent-encode: $in";
return $text,
structured_answer => {
input => [html_enc($in)],
operation => 'URL percent-encode',
result => html_enc($encoded_url),
};
return $text, structured_answer => {
id => 'url_encode',
name => 'Answer',
data => {
title => $encoded_url,
subtitle => $subtitle
},
templates => {
group => 'text',
moreAt => 0
}
};
};
1;

View File

@ -12,7 +12,7 @@ use constant {
CODEPOINT_RE => qr/^ \s* (?:U \+|\\(?:u|x{(?=.*}))) (?<codepoint> [a-f0-9]{4,6})}? \s* $/xi,
NAME_RE => qr/^ (?<name> [A-Z][A-Z\s]+) $/xi,
CHAR_RE => qr/^ \s* (?<char> .) \s* $/x,
UNICODE_RE => qr/^ unicode \s+ (.+) $/xi,
UNICODE_RE => qr/^ (?:unicode|emoji|utf-(?:8|16|32)) \s+ (.+) $/xi,
CODEPOINT => 1,
NAME => 2,
CHAR => 3,
@ -31,7 +31,8 @@ handle sub {
# Search term starts with "unicode "
if ($term =~ UNICODE_RE) {
return unicode_lookup($1);
return unless my $result = unicode_lookup($1);
return $result;
}
return codepoint_description($term);

View File

@ -5,7 +5,7 @@ use strict;
use DDG::Goodie;
use URI::Escape::XS;
triggers startend => "unicode", "emoji";
triggers startend => "unicode", "emoji", "utf-8", "utf-16", "utf-32";
zci is_cached => 1;

View File

@ -9,10 +9,29 @@ use warnings;
use DateTime::Event::Zodiac qw(zodiac_date_name);
zci is_cached => 0;
zci answer_type => "zodiac";
triggers startend => "zodiac","zodiac sign","starsign","star sign";
my $goodieVersion = $DDG::GoodieBundle::OpenSourceDuckDuckGo::VERSION // 999;
my @colors = qw(bg-clr--blue-light bg-clr--green bg-clr--red bg-clr--grey);
sub element_sign {
my @sign = @_;
my $versign = lc($sign[0]);
# element Water
return 0 if ($versign =~ m/(cancer|scorpius|pisces)/);
# element Water
return 1 if ($versign =~ m/(taurus|virgo|capricornus)/);
# element Water
return 2 if ($versign =~ m/(aries|sagittarius|leo)/);
# element Water
return 3 if ($versign =~ m/(libra|gemini|aquarius)/);
return 0;
}
handle remainder => sub {
my $datestring = $_; # The remainder should just be the string for their date.
@ -21,17 +40,38 @@ handle remainder => sub {
# Return Nothing if the User Provided Date is Invalid
return unless $zodiacdate;
#Star Sign
my $zodiacsign = ucfirst(zodiac_date_name($zodiacdate));
# Return the Star Sign
my $result="Zodiac for " . date_output_string($zodiacdate) . ": " . ucfirst(zodiac_date_name($zodiacdate));
my $result="Zodiac for " . date_output_string($zodiacdate) . ": " . $zodiacsign;
# Input String
my $input = date_output_string($zodiacdate);
my $index = element_sign($zodiacsign);
# Background Color Icon
my $bgcolor = $colors[$index];
return $result, structured_answer => {
input => [html_enc($input)],
operation => 'Zodiac',
result => html_enc(ucfirst(zodiac_date_name($zodiacdate)))
id => "zodiac",
name => "Answer",
data => {
image => "/share/goodie/zodiac/". $goodieVersion . "/" . lc($zodiacsign) . ".png",
title => $zodiacsign,
subtitle => $input
},
templates => {
group => "icon",
elClass => {
iconImage => $bgcolor . " circle"
},
variants => {
iconImage => 'large'
}
}
};
};

View File

@ -76,8 +76,8 @@ sub draw_chessboard_html {
for ($j = 0; $j < 8; $j++){
# Columns
$html_chessboard .= '<td id="'.$arr[$j].(8-$i).'">';
$html_chessboard .= '<a href="#" class="'.$class_dict{$position[$counter]};
$html_chessboard .= '">'.$unicode_dict{$position[$counter]}.'</a>';
$html_chessboard .= '<span class="'.$class_dict{$position[$counter]};
$html_chessboard .= '">'.$unicode_dict{$position[$counter]}.'</span>';
$html_chessboard .= '</td>';
$counter++;
}

View File

@ -2,42 +2,42 @@
## How To Use This Template
1) Use the **raw** text at https://raw.githubusercontent.com/duckduckgo/zeroclickinfo-goodies/master/pull_request_template_cheat_sheet.md
1) Copy and paste the questions below into the description of your GitHub pull request
2) Copy and paste the questions (from the raw text) into the description of your GitHub pull request and fill in the questions there, as appropriate.
2) Fill in the answers to the questions as needed
3) Preview the text before posting by clicking the "Preview changes" button above text box. The questions should remain bolded so it's easier for everyone to read
3) Preview the text before posting by clicking the "**Preview changes**" button above the text box (The questions should be bolded so it's easier for everyone to read)
4) Do not include these instructions when you paste the questions into the Pull Request description!
4) Do ***not*** include these instructions when you paste the questions into the Pull Request description!
## Demo
![Demo GIF](http://cl.ly/image/1O0n39092K3q/download/Screen%20Recording%202015-08-29%20at%2009.31%20AM.gif)
## Copy and Paste the Raw Text Below Into Your Pull Request
## Copy and Paste the Text Below Into Your Pull Request
**What does your Instant Answer do?**
\*\*What does your Instant Answer do?\*\*
**What is the data source for your Instant Answer? (Provide a link if possible)**
\*\*What is the data source for your Instant Answer? (Provide a link if possible)\*\*
**Why did you choose this data source?**
\*\*Why did you choose this data source?\*\*
**Are there any other alternative (better) data sources?**
\*\*Are there any other alternative (better) data sources?\*\*
**Which communities will this Instant Answer be especially useful for? (gamers, book lovers, etc)**
\*\*Which communities will this Instant Answer be especially useful for? (gamers, book lovers, etc)\*\*
**Is this Instant Answer connected to a DuckDuckHack [Instant Answer idea](https://duck.co/ideas)?**
\*\*Is this Instant Answer connected to a DuckDuckHack [Instant Answer idea](https://duck.co/ideas)?\*\*
**Are you having any problems? Do you need our help with anything?**
\*\*Are you having any problems? Do you need our help with anything?\*\*
**Where did you hear about DuckDuckHack? (For first time contributors)**
\*\*Where did you hear about DuckDuckHack? (For first time contributors)\*\*
**What does the Instant Answer look like? (Provide a screenshot for new or updated Instant Answers)**
\*\*What does the Instant Answer look like? (Provide a screenshot for new or updated Instant Answers)\*\*

View File

@ -1,11 +0,0 @@
.zci--answer .average--container {
font-size: 1.2em;
}
.zci--answer .average--key {
font-weight: 300;
}
.zci--answer .average--value {
font-weight: 500;
}

View File

@ -52,13 +52,14 @@
width: 100%;
}
.zci--cheat_sheets .terminal td {
padding-bottom: 12px;
}
.zci--cheat_sheets .terminal code {
width: 100%;
white-space: break-all;
word-break: break-all;
}
.zci--cheat_sheets .terminal td.cheatsheet__key {
@ -77,19 +78,22 @@
/* reference-sheet.handlebars */
.zci--cheat_sheets .reference ul {
.zci--cheat_sheets .reference ul,
.zci--cheat_sheets .links ul {
padding: 0;
margin-left: 13px;
}
.zci--cheat_sheets .reference li {
.zci--cheat_sheets .reference li,
.zci--cheat_sheets .links li {
position: relative;
padding-bottom: 12px;
padding-left: 7px;
line-height: 17px;
}
.zci--cheat_sheets .reference li::before {
.zci--cheat_sheets .reference li::before,
.zci--cheat_sheets .links li::before {
position: absolute;
left: -12px;
content: '●';

View File

@ -20,6 +20,15 @@ DDH.cheat_sheets.build = function(ops) {
showhide = false;
}
//replaces &#42;&#47; and &#47;&#42; to */ and /* fixing issue1646
var val;
for (var j = 0; j < sections[section].length; j++){
if (sections[section][j].hasOwnProperty(val)){
sections[section][j].val.replace(/&#42;&#47;/g, "*/")
.replace(/&#47;&#42;/g, "/*");
}
}
result += options.fn({ name: section, items: sections[section], template: template, showhide: showhide });
}
});

View File

@ -0,0 +1,230 @@
{
"id": "8085_cheat_sheet",
"name": "8085 Instruction Set",
"description": "8085 instructions and their explanations",
"metadata": {
"sourceName": "IITK",
"sourceUrl": "http://home.iitk.ac.in/~ajalan/8085_is_details.pdf"
},
"template_type": "reference",
"section_order": [
"Data Transfer Instructions",
"Arithmetic Instructions",
"Logical Instructions",
"Rotate Instructions",
"Control Transfer Instructions",
"Control Instructions"
],
"aliases": [
"8085 instructionset",
"8085 instruction set",
"8085 programming",
"8085 instructions"
],
"sections": {
"Data Transfer Instructions": [
{
"key": "MOV Destination, Source",
"val": "Copies a word or byte of data from 'source' to 'destination'"
},
{
"key": "MVI Destination, 8 bit data",
"val": "Copies the given byte of data to 'destination'"
},
{
"key": "LDA 16-bit address",
"val": "Loads the 16-bit address in Accumulator"
},
{
"key": "LXI Reg.Pair, 16-bit data",
"val": "Loads 16-bit data in the register pair "
},
{
"key": "STA 16-bit address",
"val": "Stores the content of Accumulator in memory location specified by the 16-bit address "
},
{
"key": "XCHG",
"val": "Contents of register H are exchanged with the contents of register D, and the contents of register L are exchanged with the contents of register E "
},
{
"key": "LHLD 16-bit address",
"val": "Copies the contents of the memory location pointed out by the 16-bit address into register L and copies the contents of the next memory location into register H"
},
{
"key": "SHLD 16-bit address",
"val": "Contents of register L are stored into the memory location specified by the 16-bit address in the operand and the contents of H register are stored into the next memory location"
},
{
"key": "OUT 8-bit port address",
"val": "Contents of the accumulator are copied into the I/O port specified by the operand"
},
{
"key": "IN 8-bit port address",
"val": "Contents of the input port designated in the operand are read and loaded into the accumulator."
}
],
"Arithmetic Instructions": [
{
"key": "ADD R/M",
"val": "Adds the content of register or memory location to the content of Accumulator and put the result in the Accumulator"
},
{
"key": "SUB R/M",
"val": "Subtracts the content of register or memory location from the content of Accumulator and put the result in the Accumulator"
},
{
"key": "INX Reg.pair",
"val": "Contents of the designated register pair are incremented by 1 "
},
{
"key": "DCX Reg.pair",
"val": "Contents of the designated register pair are decremented by 1 "
},
{
"key": "INR R/M",
"val": "Contents of the designated register or memory location is incremented by one"
},
{
"key": "DCR R/M",
"val": "Contents of the designated register or memory location is decremented by one"
},
{
"key": "DAA",
"val": "Decimal Adjust Accumulator"
}
],
"Logical Instructions": [
{
"key": "ANA R/M",
"val": "Content of the Accumulator is logically ANDed with the content of the operand"
},
{
"key": "ANI 8-bit data",
"val": "Content of the Accumulator is logically ANDed with 8-bit data given as the operand"
},
{
"key": "ORA R/M",
"val": "Content of the Accumulator is logically ORed with the content of the operand"
},
{
"key": "ORI 8-bit data",
"val": "Content of the Accumulator is logically ANDed with 8-bit data given as the operand"
},
{
"key": "XRA R/M",
"val": "Content of the Accumulator is Exclusive-ORed with the content of the operand"
},
{
"key": "XRI 8-bit data",
"val": "Content of the Accumulator is Exclusive-ORed with 8-bit data given as the operand"
},
{
"key": "CMP R/M",
"val": "Compares the content in the register or memory location with content in Accumulator"
},
{
"key": "CPI 8-bit data",
"val": "Compares the 8-bit data given as the operand with content in Accumulator"
}
],
"Rotate Instructions": [
{
"key": "RCL",
"val": "Rotates each bits in the Accumulator to the left once.MSB is circled back into the LSB and CF contains a copy of the bit most recently moved out of the MSB"
},
{
"key": "RCR",
"val": "Rotates each bits in the Accumulator to the right once.LSB is circled back into the MSB and CF contains a copy of the bit most recently moved out of the LSB"
},
{
"key": "RAL",
"val": "Rotate accumulator left through carry"
},
{
"key": "RAR",
"val": "Rotate accumulator right through carry"
},
{
"key": "SHL Destination, Count",
"val": "Shifts each bit in the 'destination' to the left 'count' number of times and a 0 is put in the LSB position for each shift"
},
{
"key": "SHR Destination, Count",
"val": "Shifts each bit in the 'destination' to the right 'count' number of times and a 0 is put in the MSB position for each shift"
}
],
"Control Transfer Instructions": [
{
"key": "JMP 16-bit address",
"val": "Unconditional jump to the specified 16-bit address"
},
{
"key": "JC 16-bit address",
"val": "Jump to the specified 16-bit address if carry flag is set"
},
{
"key": "JZ 16-bit address",
"val": "Jump to the specified 16-bit address if zero flag is set"
},
{
"key": "JM 16-bit address",
"val": "Jump to the specified 16-bit address if sign flag is set"
},
{
"key": "JP 16-bit address",
"val": "Jump to the specified 16-bit address if sign flag is zero"
},
{
"key": "CALL 16-bit address",
"val": "Program sequence is transferred to the memory location specified by the 16-bit address"
},
{
"key": "CC 16-bit address",
"val": "Program sequence is transferred to the memory location specified by the 16-bit address if carry flag is set"
},
{
"key": "CZ 16-bit address",
"val": "Program sequence is transferred to the memory location specified by the 16-bit address if zero flag is set"
},
{
"key": "CM 16-bit address",
"val": "Program sequence is transferred to the memory location specified by the 16-bit address if sign flag is set"
},
{
"key": "CP 16-bit address",
"val": "Program sequence is transferred to the memory location specified by the 16-bit address if sign flag is zero"
}
],
"Control Instructions": [
{
"key": "NOP",
"val": "No operation is performed"
},
{
"key": "HLT",
"val": "Halt and enter wait state"
},
{
"key": "DI",
"val": "Disable Interrupts"
},
{
"key": "EI",
"val": "Enable Interrupts"
},
{
"key": "RIM",
"val": "Read Interrupt Mask"
},
{
"key": "SIM",
"val": "Set Interrupt Mask"
},
{
"key": "CLI",
"val": "Clear Interrupt Flag"
}
]
}
}

View File

@ -0,0 +1,182 @@
{
"id": "8086_cheat_sheet",
"name": "8086 Instruction Set",
"description": "8086 instructions and their explanations",
"metadata": {
"sourceName": "utcluj",
"sourceUrl": "http://users.utcluj.ro/~elupu/Curs/fileloader.php?fileName=upload/Cursuri/Univ.Nord_BM1/Curs_5/8086_instruction_set.pdf"
},
"template_type": "reference",
"section_order": [
"Data Transfer Instructions",
"Arithmetic Instructions",
"Logical Instructions",
"Rotate and Shift Instructions",
"Control Transfer Instructions",
"Flag Manipulation Instructions"
],
"aliases": [
"8086 instructionset",
"8086 instruction set",
"8086 programming",
"8086 instructions"
],
"sections": {
"Data Transfer Instructions": [
{
"key": "MOV Destination, Source",
"val": "Copies a word or byte of data from 'source' to 'destination'"
},
{
"key": "XCHG Destination, Source",
"val": "Exchanges the content of 'source' and 'destination' "
},
{
"key": "LEA Register, Source",
"val": "Stores the offset of the variable or memory location named as the 'source' into the 16-bit register"
}
],
"Arithmetic Instructions": [
{
"key": "ADD Destination, Source",
"val": "Adds the number in 'source' to the number in 'destination' and put the result in the 'destination'"
},
{
"key": "SUB Destination, Source",
"val": "Subtracts the number in 'source' from the number in 'destination' and put the result in the 'destination'"
},
{
"key": "MUL Source",
"val": "Multiplies an unsigned byte in the 'source' with an unsigned byte in AL register or an unsigned word in the 'source' with an unsigned word in AX register"
},
{
"key": "DIV Source",
"val": "Divide an unsigned word by a byte in the 'source' or to divide an unsigned double word by a word in the 'source'"
},
{
"key": "INC Destination",
"val": "Increments the content of 'destination' by one"
},
{
"key": "DEC Destination",
"val": "Decrements the content of 'destination' by one"
},
{
"key": "DAA",
"val": "Decimal adjust after BCD addition"
},
{
"key": "AAA",
"val": "ASCII adjust for addition"
}
],
"Logical Instructions": [
{
"key": "AND Destination, Source",
"val": "ANDs each bit in the 'source' byte or word with the same numbered bit in a 'destination' byte or word"
},
{
"key": "OR Destination, Source",
"val": "ORs each bit in a 'source' byte or word with the same numbered bit in a 'destination' byte or word"
},
{
"key": "XOR Destination, Source",
"val": "Exclusive-ORs each bit in a 'source' byte or word with the same numbered bit in a 'destination' byte or word"
},
{
"key": "NOT Destinations",
"val": "Inverts each bit (1s complement) of a byte or word in the 'destination'"
},
{
"key": "CMP Destination, Source",
"val": "Compares a byte / word in the 'source' with a byte / word in the 'destination'"
},
{
"key": "TEST Destination, Source",
"val": "ANDs the byte / word in the 'source' with the byte / word in the 'destination'"
}
],
"Rotate and Shift Instructions": [
{
"key": "RCL Destination, Count",
"val": "Rotates all the bits in a word or byte in the 'destination' to the left 'count' number of times through carry flag"
},
{
"key": "RCR Destination, Count",
"val": "Rotates all the bits in a word or byte in the 'destination' to the right 'count' number of times through carry flag"
},
{
"key": "ROL Destination, Count",
"val": "Rotates all the bits in a word or byte in the 'destination' to the left 'count' number of times.MSB is circled back into the LSB and CF contains a copy of the bit most recently moved out of the MSB"
},
{
"key": "ROR Destination, Count",
"val": "Rotates all the bits in a word or byte in the 'destination' to the right 'count' number of times.LSB is circled back into the LSB and CF contains a copy of the bit most recently moved out of the LSB"
},
{
"key": "SHL Destination, Count",
"val": "Shifts each bit in the 'destination' to the left 'count' number of times and a 0 is put in the LSB position for each shift"
},
{
"key": "SHR Destination, Count",
"val": "Shifts each bit in the 'destination' to the right 'count' number of times and a 0 is put in the MSB position for each shift"
}
],
"Control Transfer Instructions": [
{
"key": "JMP Destination",
"val": "Unconditional jump to the specified 'destination'"
},
{
"key": "JC Destination",
"val": "Jump to the specified 'destination' if carry flag is set"
},
{
"key": "JZ Destination",
"val": "Jump to the specified 'destination' if zero flag is set"
},
{
"key": "JS",
"val": "Jump to the specified 'destination' if sign flag is set"
},
{
"key": "LOOP",
"val": "Repeat a series of instructions some number of times. The number of times is loaded into CX"
},
{
"key": "CALL",
"val": "Transfer control to a subprogram or a procedure"
}
],
"Flag Manipulation Instructions": [
{
"key": "STC",
"val": "Sets Carry Flag"
},
{
"key": "CLC",
"val": "Clear Carry Flag"
},
{
"key": "CMC",
"val": "Complement Carry Flag"
},
{
"key": "STD",
"val": "Sets Direction Flag"
},
{
"key": "CLD",
"val": "Clear Direction Flag"
},
{
"key": "STI",
"val": "Sets Interrupt Flag"
},
{
"key": "CLI",
"val": "Clear Interrupt Flag"
}
]
}
}

View File

@ -1,9 +1,9 @@
{
"id": "angularjs_cheat_sheet",
"name": "AngularJS",
"description": "Extended HTML attributes",
"description": "A quick reference of AngularJS directives",
"metadata": {
"sourceName": "AngularDirectiveCommands",
"sourceName": "AngularJS",
"sourceUrl": "https://docs.angularjs.org/api/ng/directive"
},
"aliases": [
@ -97,4 +97,4 @@
}
]
}
}
}

View File

@ -21,7 +21,7 @@
"Spotlight",
"Text Editing",
"Screenshots (Hold Ctrl to copy screenshot to the clipboard)",
"Web Browsing"
"Web Browsing (Works on most modern browsers)"
],
"sections": {
"General": [
@ -56,6 +56,14 @@
{
"key": "[⌘] [Opt] [Esc]",
"val": "Open force quit dialog"
},
{
"key": "[⌘] [Shift] [3]",
"val": "Take a screenshot (saved in Desktop)"
},
{
"key": "[Ctrl] [Shift] [⌽ (Power)]",
"val": "Lock the screen"
}
],
"Finder": [
@ -76,7 +84,7 @@
"val": "Delete selected folder or file"
},
{
"key": "([Return]/[Enter])",
"key": "([Return] / [Enter])",
"val": "Rename the selected file/folder"
},
{
@ -180,7 +188,7 @@
"val": "Go to end of next word"
}
],
"Screenshots (Hold Ctrl with any of these to copy screenshot to clipboard)": [
"Screenshots (Hold Ctrl to copy screenshot to the clipboard)": [
{
"key": "[⌘] [Shift] [3]",
"val": "Take picture of the entire screen"
@ -229,4 +237,4 @@
}
]
}
}
}

View File

@ -0,0 +1,90 @@
{
"id": "apt_get_cheat_sheet",
"name": "AptGet",
"description": "Package manager for Debian-based distros",
"metadata": {
"sourceName": "Ubuntu Wiki",
"sourceUrl": "https://help.ubuntu.com/community/AptGet/Howto"
},
"template_type": "terminal",
"section_order": [
"Installation commands",
"Maintenance commands",
"Removal commands",
"Search commands"
],
"sections": {
"Installation commands": [
{
"val": "Install a new package",
"key": "apt-get install <package_name>"
},
{
"val": "Install mutliple packages",
"key": "apt-get install <package1_name> <package2_name> <package3_name>"
}
],
"Maintenance commands": [
{
"val": "Update source list",
"key": "apt-get update"
},
{
"val": "Upgrade all installed packages",
"key": "apt-get upgrade"
},
{
"val": "Upgrade all installed packages with a 'smart' conflict resolution system",
"key": "apt-get dist-upgrade"
},
{
"val": "Update package lists and check for broken dependencies",
"key": "apt-get check"
},
{
"val": "Fix broken packages",
"key": "apt-get -f install"
},
{
"val": "Remove all .deb files for packages that are no longer installed on the system",
"key": "apt-get autoclean"
},
{
"val": "Remove all packages from the package cache",
"key": "apt-get clean"
}
],
"Removal commands": [
{
"val": "Remove an installed package, leaving configuration files intact",
"key": "apt-get remove <package_name>"
},
{
"val": "Completely remove a package and the associated configuration files",
"key": "apt-get purge <package_name>"
},
{
"val": "Remove package1 and install package2 in one step (+operator)",
"key": "apt-get remove <package1> <package2>+"
},
{
"val": "Remove packages that were installed by other packages and are no longer needed",
"key": "apt-get autoremove"
},
{
"val": "Removes an installed package and dependencies",
"key": "apt-get autoremove <package_name>"
}
],
"Search commands": [
{
"val": "Find packages that include <search_item>",
"key": "apt-cache search <search_term>"
},
{
"val": "Shows the description of package <package_name> and other relevant information including version, size, dependencies and conflicts",
"key": "apt-cache show <package_name>"
}
]
}
}

View File

@ -0,0 +1,148 @@
{
"id": "arch_linux_cheat_sheet",
"name": "Arch Linux",
"description": "Arch Linux Commands For Pacman,Yaourt and Some Basic Linux Commands",
"metadata": {
"sourceName": "ArchWiki",
"sourceUrl": "https://wiki.archlinux.org/index.php/Pacman"
},
"aliases": [
"arch", "arch distro", "linux arch" , "pacman" , "yaourt"
],
"template_type" : "terminal",
"section_order": [
"Pacman - Arch Package Manager",
"Yaourt - A Pacman Frontend" ,
"Linux Command"
],
"sections": {
"Pacman - Arch Package Manager": [
{
"key": "pacman -S xyz",
"val": "Install package xyz"
},
{
"key": "pacman -Syy",
"val": "Force synchronization of repository databases"
},
{
"key": "pacman -Ss xyz",
"val": "Search repository database for packages for xyz"
},
{
"key": "pacman -Sy xyz",
"val": "Really synchronize repo and install xyz"
},
{
"key": "pacman -R xyz",
"val": "Remove package xyz but keep its dependencies installed"
},
{
"key": "pacman -Rs xyz",
"val": "Remove package xyz and all its dependencies (if they are not required by any other package)"
},
{
"key": "pacman -Rsc xyz",
"val": "Remove package xyz, all its dependencies and packages that depend on the target package"
},
{
"key": "pacman -Ql xyz",
"val": "Show all files installed by the package xyz"
},
{
"key": "pacman -Qo /path",
"val": "Find the package which installed the file at /pat"
},
{
"key": "pacman -Syu",
"val": "Sync and Upgrade"
},
{
"key": "pacman -Sc",
"val": "Remove all cached packages that are not currently installed"
},
{
"key": "pacman -U /path/to/package/package_name-version.pkg.tar.xz",
"val": "Install a 'local' package that is not from a remote repository (e.g. the package is from the AUR)"
},
{
"key": "pacman -Sw package_name",
"val": "Download a package without installing it"
}
],
"Yaourt - A Pacman Frontend": [
{
"key": "yaourt -Syu --devel --aur",
"val": "Sync database, upgrade packages, search aur and devel (all packages based on dev version) upgrades"
},
{
"key": "yaourt -Sb",
"val": "Build package from source"
},
{
"key": "yaourt -C",
"val": "Check, edit, merge or remove *.pac* files"
},
{
"key": "yaourt -G",
"val": "Get a PKGBUILD (support splitted package)"
},
{
"key": "yaourt -Sb --export",
"val": "Build and export package, its sources to a directory"
},
{
"key": "yaourt -B",
"val": "Backup database"
},
{
"key": "yaourt -Q --backupfile",
"val": "Query backup file"
}
],
"Linux Command": [
{
"key": "man xyz",
"val": "Show manual page for xyz"
},
{
"key": "cd /etc/pacman.d",
"val": "Change directory to pacman.d"
},
{
"key": "mkdir xyz",
"val": "Make a new directory xyz"
},
{
"key": "rmdir xyz",
"val": "Remove directory xyz"
},
{
"key": "cat xyz",
"val": "Show file contents of xyz"
},
{
"key": "find xyz",
"val": "Search for a file xyx"
},
{
"key": "mount /dev/sdx /media/xyz",
"val": "Mount the partition sdx to xyz directory"
},
{
"key": "killall xyz",
"val": "Kill all running instances of a process xyz"
},
{
"key": "chmod +x xyz",
"val": "Make the file xyz executable"
},
{
"key": "ls -a",
"val": "List hidden files"
}
]
}
}

View File

@ -1,6 +1,7 @@
{
"name": "Firefox Awesome Bar",
"id": "awesome_bar_cheat_sheet",
"description": "The Firefox location bar, also called the URL bar or address bar, displays a site's web address (URL).",
"metadata": {
"sourceName": "Mozilla Support",
"sourceUrl": "https://support.mozilla.org/kb/awesome-bar-keyboard-shortcuts"

View File

@ -1,7 +1,7 @@
{
"id": "bash_cheat_sheet",
"name": "Bash",
"description": "Bourne-Again shell",
"description": "Bash is a Unix shell and command language written by Brian Fox as a replacement for the Bourne shell",
"metadata": {
"sourceName": "Bash Reference Manual",
"sourceUrl": "https://www.gnu.org/software/bash/"

View File

@ -3,7 +3,7 @@
"name": "BBCode",
"description": "Text formatting for popular online forums (Not all codes are supported by all forums)",
"metadata": {
"sourceName": "bbcode.org",
"sourceName": "BBCODE",
"sourceUrl": "http://www.bbcode.org/reference.php"
},
"template_type": "code",

View File

@ -0,0 +1,143 @@
{
"id": "bootstrap_cheat_sheet",
"name": "Bootstrap",
"description": "Explanation of Bootstrap Classes",
"metadata": {
"sourceName": "Bootstrap",
"sourceUrl": "http://getbootstrap.com/"
},
"aliases": [
"twitter front end framework", "twitter blueprint", "twitter bootstrap", "bootstrap framework"
],
"template_type": "code",
"section_order": [
"Bootstrap Grid System",
"Navbars",
"Tables",
"Buttons",
"Images"
],
"sections": {
"Bootstrap Grid System": [{
"val": "Sets one fixed width for each screen size in bootstrap (xs,sm,md,lg)",
"key": ".container"
}, {
"val": "Expands screen to fill the available widthe",
"key": ".container-fluid"
}, {
"val": "Containers of columns",
"key": ".row"
}, {
"val": "For extra small devices phones (<768px)" ,
"key": ".col-xs-"
}, {
"val": "For small devices tablets (≥768px)",
"key": ".col-sm-"
}, {
"val": "For medium devices desktops (≥992px)",
"key": ".col-md-"
}, {
"val": "For large devices desktops (≥1200px)",
"key": ".col-lg-"
}],
"Navbars": [{
"val": "Standard navigation bar",
"key": ".navbar-default"
}, {
"val": "Black navigation bar",
"key": ".navbar-inverse"
}, {
"val": "Navigation bar fixed at the top",
"key": ".navbar-fixed-top"
}, {
"val": "Navigation bar stay at the bottom",
"key": ".navbar-fixed-bottom"
}, {
"val": "Aligns navigation bar buttons to the right",
"key": ".navbar-right"
}, {
"val": "Creates vertical navigation pills",
"key": ".nav-pills"
}, {
"val": "Creates vertical navigation pills",
"key": ".nav-stacked"
}, {
"val": "Creates navigation tabs",
"key": ".nav-tabs"
}, {
"val": "Makes navigation tabs/pills equal widths of their parent",
"key": ".nav-justified"
}, {
"val": "Indicates a unclickable tab/pill",
"key": ".disabled"
}],
"Tables": [{
"val": "Adds basic styling to a table",
"key": ".table"
}, {
"val": "Adds zebra-stripes to a table",
"key": ".table-striped"
}, {
"val": "Adds borders on all sides of the table and cells",
"key": ".table-bordered"
}, {
"val": "Enables a hover state on table rows",
"key": ".table-hover"
}, {
"val": "Makes a table more compact by cutting cell padding in half",
"key": ".table-condensed"
}, {
"val": "Creates a responsive table.",
"key": ".table-responsive"
}],
"Buttons": [{
"val": "Adds basic styling to any button",
"key": ".btn"
}, {
"val": "Creates large button",
"key": ".btn-lg"
}, {
"val": "Creates medium button",
"key": ".btn-md"
}, {
"val": "Creates small button",
"key": ".btn-sm"
}, {
"val": "Creates medium button",
"key": ".btn-xs"
}, {
"val": "Makes a button appear pressed",
"key": ".active"
}, {
"val": "Makes a button unclickable",
"key": ".disabled"
}, {
"val": "Creates a button group",
"key": ".btn-group"
}, {
"val": "Create a vertical button group",
"key": ".btn-group-vertical"
}, {
"val": "Span buttons to the entire width of the screen",
"key": ".btn-group-justified"
}],
"Images": [{
"val": "Adds rounded corners to an image",
"key": ".img-rounded"
}, {
"val": "Shapes the image to a circle",
"key": ".img-circle"
}, {
"val": "Shapes the image to a thumbnail",
"key": ".img-thumbnail"
}, {
"val": "Creates responsive images",
"key": ".img-responsive"
}, {
"val": "Creates an image gallery",
"key": ".thumbnail"
}]
}
}

View File

@ -0,0 +1,278 @@
{
"id": "c_cheat_sheet",
"name": "C Language",
"description": "Overview of Basic Operators, Order of Precedence, Escape Sequences and Conversion Characters",
"metadata": {
"sourceName": "C for Beginners",
"sourceUrl": "http://www.dummies.com/how-to/content/beginning-c-programming-for-dummies-cheat-sheet.html"
},
"aliases": [
"c programming",
"c language"
],
"template_type": "code",
"section_order": [
"Arithmetic Operators",
"Comparison Operators",
"Logical Operators",
"Bitwise Operators",
"Other Operators",
"Conversion Characters",
"Escape Sequences",
"Order of Precedence"
],
"sections": {
"Arithmetic Operators": [
{
"val": "Basic assignment",
"key": "a = b"
},
{
"val": "Addition",
"key": "a + b"
},
{
"val": "Subtraction",
"key": "a - b"
},
{
"val": "Unary plus (integer promotion)",
"key": "+a"
},
{
"val": "Unary minus (additive inverse)",
"key": "-a"
},
{
"val": "Multiplication",
"key": "a * b"
},
{
"val": "Division",
"key": "a / b"
},
{
"val": "Modulo (integer remainder)",
"key": "a % b"
},
{
"val": "Increment Prefix",
"key": "++a"
},
{
"val": "Increment Postfix",
"key": "a++"
},
{
"val": "Decrement Prefix",
"key": "--a"
},
{
"val": "Decrement Postfix",
"key": "a--"
}
],
"Comparison Operators": [
{
"val": "a less than b",
"key": "a < b"
},
{
"val": "a equal to b",
"key": "a == b"
},
{
"val": "a greater than b",
"key": "a > b"
},
{
"val": "a less than equal to b",
"key": "a <= b"
},
{
"val": "a greater than equal to b",
"key": "a >= b"
},
{
"val": "a not equal to b",
"key": "a != b"
}
],
"Logical Operators": [
{
"val": "Logical negation (NOT)",
"key": "!a"
},
{
"val": "Logical AND",
"key": "a && b"
},
{
"val": "Logical OR",
"key": "a || b"
}
],
"Bitwise Operators": [
{
"val": "Bitwise NOT / One's Complement",
"key": "~a"
},
{
"val": "Bitwise AND",
"key": "a & b"
},
{
"val": "Bitwise OR",
"key": "a | b"
},
{
"val": "Bitwise XOR",
"key": "a ^ b"
},
{
"val": "Bitwise left shift",
"key": "a << b"
},
{
"val": "Bitwise right shift",
"key": "a >> b"
}
],
"Other Operators": [
{
"val": "Structure reference (member b of object a)",
"key": "a.b"
},
{
"val": "Structure dereference (member b of object pointed to by a)",
"key": "a->b"
},
{
"val": "Conversion (C-style cast)",
"key": "(type) a"
},
{
"val": "Size-of",
"key": "sizeof (a)"
},
{
"val": "Ternary conditional",
"key": "a ? b : c"
}
],
"Conversion Characters": [
{
"val": "Displays single character",
"key": "%c"
},
{
"val": "Displays signed decimal integer",
"key": "%d"
},
{
"val": "Displays signed floating point value in E notation",
"key": "%e"
},
{
"val": "Displays signed floating point value",
"key": "%f"
},
{
"val": "Displays the string corresponding to the specified value of the system errno variable",
"key": "%m"
},
{
"val": "Displays a string",
"key": "%s"
},
{
"val": "Displays an unsigned integer",
"key": "%u"
},
{
"val": "Displays an integer as an unsigned hexadecimal number, using lower-case letters",
"key": "%x"
},
{
"val": "Displays a percent sign",
"key": "%%"
}
],
"Escape Sequences": [
{
"val": "The speaker beeping",
"key": "\\a"
},
{
"val": "Backspace",
"key": "\\b"
},
{
"val": "Form feed",
"key": "\\f"
},
{
"val": "Newline character",
"key": "\\n"
},
{
"val": "Carriage return (moves the cursor to the beginning of the line)",
"key": "\\r"
},
{
"val": "Tab",
"key": "\\t"
},
{
"val": "Vertical tab (moves the cursor down a line)",
"key": "\\v"
},
{
"val": "The backslash character",
"key": "\\\\\\"
},
{
"val": "The apostrophe",
"key": "\\'"
},
{
"val": "The double-quote character",
"key": "\\\""
},
{
"val": "The question mark",
"key": "\\?"
},
{
"val": "The “null” byte (backslash-zero)",
"key": "\\0"
}
],
"Order of Precedence": [
{
"val": "Primary Expression Operators - associativity goes from left to right",
"key": "[()], [\\[\\]], [.], [->], [expr++], [expr--]"
},
{
"val": "Unary Operators - associativity goes from right to left",
"key": "[*], [&], [+], [-], [!], [~], [++expr], [--expr], [(typecast)], [sizeof]"
},
{
"val": "Binary Operators - associativity goes from left to right",
"key": "[*], [/], [%], [+], [-], [>>], [<<], [<], [>], [<=], [>=], [==], [!=], [&], [^], [|], [&&], [||]"
},
{
"val": "Ternary Operator - associativity goes from right to left",
"key": "[?:]"
},
{
"val": "Assignment Operators - associativity goes from right to left",
"key": "[=], [+=], [-=], [*=], [/=], [%=], [>>=], [<<=], [&=], [^=], [|=]"
},
{
"val": "Comma - associativity goes from left to right",
"key": "[ , ]"
}
]
}
}

View File

@ -1,9 +1,9 @@
{
"id": "chrome_cheat_sheet",
"name": "Chrome",
"name": "Google Chrome",
"description": "Web Browser by Google",
"description": "Google Chrome Keyboard shorcuts",
"metadata": {
"sourceName": "Chrome Help",
@ -11,7 +11,10 @@
},
"aliases": [
"google chrome"
"google chrome",
"chrome keyboard shortcuts",
"google chrome keyboard shortcuts",
"chrome shortcuts"
],
"template_type": "keyboard",

View File

@ -1,13 +1,13 @@
{
"id": "cmus_cheat_sheet",
"name": "Cmus",
"description": "Console music player",
"name": "cmus",
"description": "cmus keyboard shortcuts",
"metadata": {
"sourceName": "GitHub",
"sourceUrl": "https://github.com/cmus/cmus/blob/master/Doc/cmus.txt"
},
"template_type": "keyboard",
"section_order": ["Cursor Movement", "Views", "Song navigation", "Adding / Removing tracks", "Browser movements", "Exiting", "Miscellaneous"],
"section_order": ["Cursor Movement", "Views", "Song Navigation", "Adding / Removing Tracks", "Browser Movements", "Exiting", "Miscellaneous"],
"sections": {
"Cursor Movement": [
{
@ -49,7 +49,7 @@
"key": "7"
}
],
"Song navigation": [
"Song Navigation": [
{
"val": "Play / Restart",
"key": "x"
@ -87,7 +87,7 @@
"key": ","
}
],
"Adding / Removing tracks": [
"Adding / Removing Tracks": [
{
"val": "Add track / folder to library from browser view",
"key": "a"
@ -109,7 +109,7 @@
"key": "[Shift] [d]"
}
],
"Browser movements": [
"Browser Movements": [
{
"val": "Activate selection",
"key": "[Space bar] / [Enter]"
@ -173,4 +173,3 @@
]
}
}

View File

@ -0,0 +1,195 @@
{
"id": "cpp_cheat_sheet",
"name": "C++",
"description":"Cpp is is a general-purpose programming language which has imperative, object-oriented and generic programming features",
"metadata":{
"sourceName": "CCU",
"sourceUrl": "http://www.cs.ccu.edu.tw/~damon/oop/,c++refcard.pdf"
},
"template_type": "reference",
"section_order": [
"Fundamental Data Types",
"Preprocessor Directives",
"Arithmetic Operators",
"Relational Operators",
"Logical Operators",
"Bitwise Operators",
"Namespaces",
"Console Input/Output",
"Class Member Protections"
],
"aliases": [
"c++",
"c plus plus"
],
"sections": {
"Fundamental Data Types": [
{
"key": "char",
"val": "Character (1 byte)"
},
{
"key": "int",
"val": "Integer "
},
{
"key": "float",
"val": "Floating point"
},
{
"key": "bool",
"val": "True or false"
},
{
"key": "void",
"val": "No value"
}
],
"Preprocessor Directives": [
{
"key": "#include <filename>",
"val": "Include library file"
},
{
"key": "#include \"filename\"",
"val": "Include user file"
},
{
"key": "#define name text",
"val": "Define a macro"
},
{
"key": "#define name(var) text",
"val": "Define a parameterized macro"
},
{
"key": "#undef name",
"val": "Undefine a previously defined macro"
},
{
"key": "#if, #else, #elif, #endif",
"val": "Conditional execution"
}
],
"Arithmetic Operators": [
{
"key": "+",
"val": "Adds two operands"
},
{
"key": "",
"val": "Subtracts second operand from the first"
},
{
"key": "*",
"val": "Multiplies both operands"
},
{
"key": "/",
"val": "Divides numerator by de-numerator"
},
{
"key": "%",
"val": "Modulus Operator"
},
{
"key": "++",
"val": "Increases the integer value by one"
},
{
"key": "--",
"val": "Decreases the integer value by one"
}
],
"Relational Operators": [
{
"key": "==",
"val": "Checks for equality between operands"
},
{
"key": "!=",
"val": "Checks for non equality between operands"
},
{
"key": ">",
"val": "Checks if the value of left operand is greater than the value of right operand. If yes, then the condition becomes true."
},
{
"key": "<",
"val": "Checks if the value of left operand is less than the value of right operand. If yes, then the condition becomes true."
},
{
"key": ">=",
"val": "Checks if the value of left operand is greater than or equal to the value of right operand. If yes, then the condition becomes true."
},
{
"key": "<=",
"val": "Checks if the value of left operand is less than or equal to the value of right operand. If yes, then the condition becomes true."
}
],
"Logical Operators": [
{
"key": "&&",
"val": "Logical AND operator"
},
{
"key": "||",
"val": "Logical OR Operator"
},
{
"key": "!",
"val": "Logical NOT Operator"
}
],
"Bitwise Operators": [
{
"key": "&",
"val": "Does the logical AND on the bits in the corresponding position of the operands in its binary form"
},
{
"key": "|",
"val": "Does the logical OR on the bits in the corresponding position of the operands in its binary form"
},
{
"key": "^",
"val": "Does XOR on the bits in the corresponding position of the operands in its binary form"
},
{
"key": "~",
"val": "Inverts all the bits of operand"
},
{
"key": "<<",
"val": "Takes two numbers, left shifts the bits of first operand, the second operand decides the number of places to shift"
},
{
"key": ">>",
"val": "Takes two numbers, right shifts the bits of first operand, the second operand decides the number of places to shift"
}
],
"Namespaces": [
{
"key": "namespace name {...}",
"val": "Define namespace for the enclosed code"
},
{
"key": "using name;",
"val": "Import function and variable definition from the given namespace into the current namespace"
}
],
"Class Member Protections": [
{
"key": "public",
"val": "Anyone outside the class may access these member functions and variables"
},
{
"key": "private",
"val": "Only the class's member functions and friends may access the data."
},
{
"key": "protected",
"val": "Only the class's member functions, friends, and derived classes may access."
}
]
}
}

View File

@ -0,0 +1,290 @@
{
"id": "crochet_pattern_cheat_sheet",
"name": "Crochet Patterns",
"description": "List of crochet pattern abbreviations and meanings",
"metadata": {
"sourceName": "Craft Yarn Council",
"sourceUrl": "http://craftyarncouncil.com/crochet.html"
},
"template_type": "reference",
"section_order": [
"Abbreviations (A-D)",
"Abbreviations (F-P)",
"Abbreviations (P-Z)",
"Symbols"
],
"sections": {
"Symbols": [
{
"val": "Work instructions within brackets as many times as directed",
"key": "[]"
},
{
"val": "Work instructions within parentheses in the place directed",
"key": "()"
},
{
"val": "Repeat instructions following the asterisks as directed",
"key": "**"
},
{
"val": "Inch(es)",
"key": "\""
},
{
"val": "Repeat instructions following the single asterisk as directed",
"key": "*"
}
],
"Abbreviations (A-D)": [
{
"val": "Alternate",
"key": "alt"
},
{
"val": "Approximately",
"key": "approx"
},
{
"val": "Begin, Beginning",
"key": "beg"
},
{
"val": "Between",
"key": "bet"
},
{
"val": "Back loop(s)",
"key": "BL"
},
{
"val": "Bobble",
"key": "bo"
},
{
"val": "Back post double crochet",
"key": "BP"
},
{
"val": "Back post single crochet",
"key": "BPsc"
},
{
"val": "Back post treble crochet",
"key": "BPtr"
},
{
"val": "Color A",
"key": "CA"
},
{
"val": "Color B",
"key": "CB"
},
{
"val": "Contrasting color",
"key": "CC"
},
{
"val": "Chain stitch",
"key": "ch"
},
{
"val": "Refers to chain or space previously made: e.g., ch-1 space",
"key": "ch-"
},
{
"val": "Chain space",
"key": "ch-sp"
},
{
"val": "Cluster",
"key": "CL"
},
{
"val": "Centimeter(s)",
"key": "cm"
},
{
"val": "Continue",
"key": "cont"
},
{
"val": "Double crochet",
"key": "dc"
},
{
"val": "Double crochet 2 stitches together",
"key": "dc2tog"
},
{
"val": "Decrease, Decreases, Decreasing",
"key": "dec"
},
{
"val": "Double treble",
"key": "dtr"
}
],
"Abbreviations (F-P)": [
{
"val": "Front loop(s)",
"key": "FL"
},
{
"val": "Follow, Follows, Following",
"key": "foll"
},
{
"val": "Front post",
"key": "FP"
},
{
"val": "Front post double crochet",
"key": "FPdc"
},
{
"val": "Front post single crochet",
"key": "FPsc"
},
{
"val": "Front post treble crochet",
"key": "FPtr"
},
{
"val": "Gram",
"key": "g"
},
{
"val": "Half double crochet",
"key": "hdc"
},
{
"val": "Increase, Increases, Increasing",
"key": "inc"
},
{
"val": "Loops",
"key": "lp(s)"
},
{
"val": "Meter(s)",
"key": "m"
},
{
"val": "Main color",
"key": "MC"
},
{
"val": "Millimeter(s)",
"key": "mm"
},
{
"val": "Ounce(s)",
"key": "oz"
},
{
"val": "Picot",
"key": "p"
},
{
"val": "Pattern(s)",
"key": "pat(s)"
},
{
"val": "Popcorn",
"key": "pc"
},
{
"val": "Place marker",
"key": "pm"
},
{
"val": "Previous",
"key": "prev"
}
],
"Abbreviations (P-Z)": [
{
"val": "Remain, Remaining",
"key": "rem"
},
{
"val": "Repeat(s)",
"key": "rep"
},
{
"val": "Round(s)",
"key": "rnd(s)"
},
{
"val": "Right side",
"key": "RS"
},
{
"val": "Single crochet",
"key": "sc"
},
{
"val": "Single crochet 2 stitches together",
"key": "sc2tog"
},
{
"val": "Skip",
"key": "sk"
},
{
"val": "Slip stitch",
"key": "sL st"
},
{
"val": "Space(s)",
"key": "sp(s)"
},
{
"val": "Stitch(es)",
"key": "st(s)"
},
{
"val": "Turning chain",
"key": "tch"
},
{
"val": "Turning chain",
"key": "t-ch"
},
{
"val": "Through back loop",
"key": "tbl"
},
{
"val": "Together",
"key": "tog"
},
{
"val": "Treble crochet",
"key": "tr"
},
{
"val": "Triple treble crochet",
"key": "trtr"
},
{
"val": "Wrong side",
"key": "WS"
},
{
"val": "Yard(s)",
"key": "yd(s)"
},
{
"val": "Yarn over",
"key": "yo"
},
{
"val": "Yarn over hook",
"key": "yoh"
}
]
}
}

View File

@ -4,7 +4,7 @@
"description": "List of countries and their official currencies, organized by continent",
"metadata": {
"sourceName": "Wikipedia",
"sourceUrl": "https://en.wikipedia.org/wiki/List_of_countries_and_capitals_with_currency_and_language"
"sourceUrl": "https://en.wikipedia.org/wiki/Currency_symbol"
},
"template_type": "reference",
"section_order": [
@ -15,221 +15,302 @@
"South America",
"Antartica",
"Oceania"
],
],
"aliases": [
"countries and currencies",
"countries and currency"
],
"sections": {
"Africa":[{
"key":"Algeria",
"val":"Dinar"
},{
"key":"Angola",
"val":"Kwanza"
},{
"key":"Botswana",
"val":"Pula"
},{
"key":"Cameroon",
"val":"CFA franc"
},{
"key":"Egypt",
"val":"Egyptian pound"
},{
"key":"Ethiopia",
"val":"Birr "
},{
"key":"Ghana",
"val":"Ghana cedi"
},{
"key":"Kenya",
"val":"Kenyan shilling"
},{
"key":"Libya",
"val":"Dinar"
},{
"key":"Mali",
"val":"CFA franc"
},{
"key":"Nigeria",
"val":"Naira"
},{
"key":"South Africa",
"val":"South African rand"
},{
"key":"Sudan",
"val":"Sudanese pound"
},{
"key":"Uganda",
"val":"Ugandan shilling"
} ],
"Asia": [{
"key":"Afghanistan",
"val":"Afghani"
},{
"key":"Bahrain",
"val":"Bahraini dinar"
},{
"key":"Bangladesh",
"val":"Taka"
},{
"key":"China",
"val":"Renminbi (yuan)"
},{
"key":"Hong Kong",
"val":"Hong Kong dollar"
},{
"key":"India",
"val":"Indian rupee"
},{
"key":"Japan",
"val":"Yen"
},{
"key":"Kuwait",
"val":"Kuwaiti dinar"
},{
"key":"Thailand",
"val":"Baht"
} ],
"Europe":[{
"key":"Austria",
"val":"Euro"
},{
"key":"Belgium",
"val":"Euro"
},{
"key":"France",
"val":"Euro CFP franc"
},{
"key":"Germany",
"val":"Euro"
},{
"key":"Hungary",
"val":"Forint"
},{
"key":"Ireland",
"val":"Euro"
},{
"key":"Russia",
"val":"Russian ruble"
},{
"key":"Switzerland",
"val":"Swiss franc"
},{
"key":"Spain",
"val":"Euro "
} ],
"North America": [{
"key":"Antigua and Barbuda",
"val":"East Caribbean dollar"
}, {
"key":"Bahamas",
"val":"Bahamian dollar"
}, {
"key":"Barbados",
"val":"Barbadian dollar"
}, {
"key":"Belize",
"val":"Belize dollar"
}, {
"key":"Bermuda",
"val":"Bermudian dollar"
}, {
"key":"Canada",
"val":"Canadian dollar"
}, {
"key":"Costa Rica",
"val":"Costa Rican colon"
}, {
"key":"Cuba",
"val":"Cuban Peso"
}, {
"key":"Dominican Republic",
"val":"Dominican Peso"
}, {
"key":"El Salvador",
"val":"United States dollar"
}, {
"key":"Guatemala",
"val":"Guatemalan quetzal"
}, {
"key":"Jamaica",
"val":"Jamaican dollar"
}, {
"key":"Mexico",
"val":"Mexican Peso"
}, {
"key":"Panama",
"val":"United States dollar"
}, {
"key":"United States of America",
"val":"United States dollar"
}],
"South America": [{
"key":"Argentina",
"val":"Peso"
}, {
"key":"Bolivia",
"val":"Boliviano"
}, {
"key":"Brazil",
"val":"Real"
}, {
"key":"Chile",
"val":"Peso"
}, {
"key":"Colombia",
"val":"Peso"
}, {
"key":"Ecuador",
"val":"United States dollar"
}, {
"key":"Falkland Islands",
"val":"Falklands Island Pound"
}, {
"key":"French Guiana",
"val":"Euro"
}, {
"key":"Guyana",
"val":"Guyanese dollar"
}, {
"key":"Paraguay",
"val":"Guarani"
}, {
"key":"Peru",
"val":"Nuevo Sol"
}, {
"key":"Suriname",
"val":"Surinamese dollar"
}, {
"key":"Uruguay",
"val":"Uruguayan Peso"
}, {
"key":"Venezuela",
"val":"Bolívar fuerte"
}],
"Oceania": [{
"key":"Australia",
"val":"Australian dollar"
}, {
"key":"Fiji",
"val":"Fijian dollar"
}, {
"key":"New Zealand",
"val":"New Zealand dollar"
}, {
"key":"Vanuatu",
"val":"Vanuatu Vatu"
}, {
"key":"American Samoa",
"val":"United States dollar"
}, {
"key":"Cook Islands",
"val":"Cook Islands dollar"
}],
"Antartica":[{
"key":"French Southern Territories",
"val":"Euro"
}, {
"key":"South Georgia and the South Sandwich Islands",
"val":"Pound Sterling"
}]
"Africa": [
{
"key": "Algeria",
"val": "DZD (Dinar)"
},
{
"key": "Angola",
"val": "Kz (Kwanza)"
},
{
"key": "Botswana",
"val": "P (Pula)"
},
{
"key": "Cameroon",
"val": "CFA Franc"
},
{
"key": "Egypt",
"val": "£ (Egyptian Pound)"
},
{
"key": "Ethiopia",
"val": "Br (Birr)"
},
{
"key": "Ghana",
"val": "¢ (Ghana Cedi)"
},
{
"key": "Kenya",
"val": "Ksh (Kenyan Shilling)"
},
{
"key": "Libya",
"val": "LD (Dinar)"
},
{
"key": "Mali",
"val": "CFA Franc"
},
{
"key": "Nigeria",
"val": "₦ (Naira)"
},
{
"key": "South Africa",
"val": "R (South African Rand)"
},
{
"key": "Sudan",
"val": "SDG (Sudanese Pound)"
},
{
"key": "Uganda",
"val": "Ush (Ugandan Shilling)"
}
],
"Asia": [
{
"key": "Afghanistan",
"val": "؋ (Afghani)"
},
{
"key": "Bahrain",
"val": "BHD (Bahraini Dinar)"
},
{
"key": "Bangladesh",
"val": "৳ (Taka)"
},
{
"key": "China",
"val": "¥ (Renminbi or Yuan)"
},
{
"key": "Hong Kong",
"val": "$ (Hong Kong Dollar)"
},
{
"key": "India",
"val": "₹ (Indian Rupee)"
},
{
"key": "Japan",
"val": "¥ (Yen)"
},
{
"key": "Kuwait",
"val": "KWD (Kuwaiti Dinar)"
},
{
"key": "Thailand",
"val": "฿ (Baht)"
}
],
"Europe": [
{
"key": "Austria",
"val": "€ (Euro)"
},
{
"key": "Belgium",
"val": "€ (Euro)"
},
{
"key": "France",
"val": "€ (Euro)"
},
{
"key": "Germany",
"val": "€ (Euro)"
},
{
"key": "Hungary",
"val": "Ft (Forint)"
},
{
"key": "Ireland",
"val": "€ (Euro)"
},
{
"key": "Russia",
"val": "руб (Russian Ruble)"
},
{
"key": "Switzerland",
"val": "CHF (Swiss Franc)"
},
{
"key": "Spain",
"val": "€ (Euro)"
}
],
"North America": [
{
"key": "Antigua and Barbuda",
"val": "$ (East Caribbean Dollar)"
},
{
"key": "Bahamas",
"val": "$ (Bahamian Dollar)"
},
{
"key": "Barbados",
"val": "$ (Barbadian Dollar)"
},
{
"key": "Belize",
"val": "$ (Belize Dollar)"
},
{
"key": "Bermuda",
"val": "$ (Bermudian Dollar)"
},
{
"key": "Canada",
"val": "$ (Canadian Dollar)"
},
{
"key": "Costa Rica",
"val": " (Costa Rican Colon)"
},
{
"key": "Cuba",
"val": "₡ (Cuban Peso)"
},
{
"key": "Dominican Republic",
"val": "RD$ (Dominican Peso)"
},
{
"key": "El Salvador",
"val": "$ (United States Dollar)"
},
{
"key": "Guatemala",
"val": "Q (Guatemalan Quetzal)"
},
{
"key": "Jamaica",
"val": "$ (Jamaican Dollar)"
},
{
"key": "Mexico",
"val": "$ (Mexican Peso)"
},
{
"key": "Panama",
"val": "$ (United States Dollar)"
},
{
"key": "United States of America",
"val": "$ (United States Dollar)"
}
],
"South America": [
{
"key": "Argentina",
"val": "$ (Peso)"
},
{
"key": "Bolivia",
"val": "Bs (Boliviano)"
},
{
"key": "Brazil",
"val": "R$ (Real)"
},
{
"key": "Chile",
"val": "$ (Peso)"
},
{
"key": "Colombia",
"val": "$ (Peso)"
},
{
"key": "Ecuador",
"val": "$ (United States Dollar)"
},
{
"key": "Falkland Islands",
"val": "£ (Falklands Island Pound)"
},
{
"key": "French Guiana",
"val": "€ (Euro)"
},
{
"key": "Guyana",
"val": "$ (Guyanese Dollar)"
},
{
"key": "Paraguay",
"val": "₲ (Guarani)"
},
{
"key": "Peru",
"val": "Sol (Nuevo Sol)"
},
{
"key": "Suriname",
"val": "SRD (Surinamese Dollar)"
},
{
"key": "Uruguay",
"val": "$U (Uruguayan Peso)"
},
{
"key": "Venezuela",
"val": "Bs (Bolívar Fuerte)"
}
],
"Oceania": [
{
"key": "Australia",
"val": "$ (Australian Dollar)"
},
{
"key": "Fiji",
"val": "$ (Fijian Dollar)"
},
{
"key": "New Zealand",
"val": "$ (New Zealand Dollar)"
},
{
"key": "Vanuatu",
"val": "VT (Vanuatu Vatu)"
},
{
"key": "American Samoa",
"val": "$ (United States Dollar)"
},
{
"key": "Cook Islands",
"val": "$ (Cook Islands Dollar)"
}
],
"Antartica": [
{
"key": "French Southern Territories",
"val": "€ (Euro)"
},
{
"key": "South Georgia and the South Sandwich Islands",
"val": "£ (Pound Sterling)"
}
]
}
}

View File

@ -0,0 +1,78 @@
{
"id": "default_port_numbers_cheat_sheet",
"name": "Standard Port Numbers",
"description": "List of official TCP and UDP Port Numbers",
"metadata": {
"sourceName": "Wikipedia",
"sourceUrl": "https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers"
},
"aliases": [
"default ports", "network ports", "tcp ports", "udp ports", "tcp port numbers", "udp port numbers"
],
"template_type": "reference",
"section_order": [
"Well Known Ports (System Ports)",
"Registered Ports"
],
"sections": {
"Well Known Ports (System Ports)": [{
"val": "FTP Data Transfer",
"key": "20"
}, {
"val": "FTP control (command)",
"key": "21"
}, {
"val": "Secure Shell (SSH)",
"key": "22"
}, {
"val": "Telnet Protocol",
"key": "23"
}, {
"val": "Simple Mail Transfer Protocol (SMTP)",
"key": "25"
}, {
"val": "Domain Name System (DNS)",
"key": "53"
}, {
"val": "Dynamic Host Configuration Protocol (DHCP) Server",
"key": "67"
}, {
"val": "Dynamic Host Configuration Protocol (DHCP) Client",
"key": "68"
}, {
"val": "Hypertext Transfer Protocol (HTTP)",
"key": "80"
}, {
"val": "Internet Message Access Protocol (IMAP)",
"key": "143"
}, {
"val": "Internet Relay Chat (IRC)",
"key": "194"
}, {
"val": "Hypertext Transfer Protocol over TLS/SSL (HTTPS)",
"key": "443"
}, {
"val": "Remote Procedure Call (RPC)",
"key": "530"
}, {
"val": "Telnet Protocol over TLS/SSL",
"key": "992"
}],
"Registered Ports": [{
"val": "SOCKS Proxy",
"key": "1080"
}, {
"val": "OpenVPN",
"key": "1194"
}, {
"val": "Internet Protocol Security (IPSec)",
"key": "1293"
}, {
"val": "Real-time Transport Protocol media data (RTP)",
"key": "5004"
}, {
"val": "Real-time Transport Protocol control protocol (RTCP)",
"key": "5005"
}]
}
}

View File

@ -6,6 +6,9 @@
"sourceName": "Drush Commands",
"sourceUrl": "http://drushcommands.com"
},
"aliases": [
"drush commands"
],
"template_type": "terminal",
"section_order": [
"Project manager commands",

View File

@ -8,7 +8,7 @@
"sourceUrl": "https://duck.co/help/results/syntax"
},
"aliases": [
"ddg syntax"
"ddg syntax","duck duck go syntax"
],
"section_order": [
"Triggers",

View File

@ -2,9 +2,14 @@
"id": "duckduckgo_cheat_sheet",
"name": "DuckDuckGo Shortcuts",
"template_type": "keyboard",
"description": "A set of keyboard shortcuts to use duckduckgo efficiently",
"section_order": [
"Open results",
"Move around"
],
"aliases": [
"duck duck go shortcuts",
"ddg shortcuts"
],
"sections": {
"Open results": [
@ -56,4 +61,4 @@
}
]
}
}
}

View File

@ -1,6 +1,7 @@
{
"id": "eclipse_cheat_sheet",
"name": "Eclipse IDE",
"description": "Eclipse is an integrated development environment which is fully customizable",
"metadata": {
"sourceName": "Shortcut World",
"sourceUrl": "http://www.shortcutworld.com/en/win/Eclipse.html"
@ -386,7 +387,7 @@
},
{
"key": "[Ctrl] [Shift] [/]",
"val": "Add Block Comment around selection ( adds '/... */' )"
"val": "Add Block Comment around selection ( adds '/... &#42;&#47;' )"
},
{
"key": "[Ctrl] [Shift] [\\\\]",
@ -394,7 +395,7 @@
},
{
"key": "[Alt] [Shift] [J]",
"val": "Add Element Comment ( adds '/** ... */')"
"val": "Add Element Comment ( adds '&#47;&#42;* ... &#42;&#47;')"
}
],
"Editing Source Code": [

View File

@ -1,17 +1,17 @@
{
"id": "ed_cheat_sheet",
"name": "ed(1)",
"description": "Line-oriented Text Editor",
"name": "ed",
"description": "Basic commands for ed, a line-oriented text editor",
"metadata": {
"sourceName": "EdCheatSheet",
"sourceName": "Freebsd",
"sourceUrl": "https://www.freebsd.org/cgi/man.cgi?ed%281%29"
},
"template_type": "keyboard",
"section_order": [
"Editing commands",
"File manipulation commands",
"Display commands",
"Other commands",
"Editing Commands",
"File Manipulation Commands",
"Display Commands",
"Other Commands",
"Addressing",
"Invocation"
],
@ -76,7 +76,7 @@
"val": "A line marked with {letter} (see the [k] command below)"
}
],
"Editing commands": [
"Editing Commands": [
{
"key": "[.]a",
"val": "Insert below the current line, end with a single period"
@ -118,7 +118,7 @@
"val": "Copy (yank) the specified range (GNU extension)"
}
],
"File manipulation commands": [
"File Manipulation Commands": [
{
"key": "e \\[filename\\]",
"val": "Edit the file [filename]"
@ -172,7 +172,7 @@
"val": "Prompt for the DES encryption key (BSD extension)"
}
],
"Display commands": [
"Display Commands": [
{
"key": "h",
"val": "Print help on the last error"
@ -202,7 +202,7 @@
"val": "Display N lines of text"
}
],
"Other commands": [
"Other Commands": [
{
"key": "[1,$]g/\\{re\\}/\\{command-list\\}",
"val": "Execute {command-list} on all lines matching {re}"

View File

@ -1,7 +1,7 @@
{
"id": "emacs_cheat_sheet",
"name": "Emacs",
"description": "Text Editor",
"description": "Emacs and its derivatives are a family of text editors that are characterized by their extensibility",
"metadata": {
"sourceName": "EmacsCheatSheet",
"sourceUrl": "http://www.rgrjr.com/emacs/emacs_cheat.html"

View File

@ -1,6 +1,7 @@
{
"id": "english_braille_cheat_sheet",
"name": "English Braille",
"description": "English Braille, also known as Grade-2 Braille,is the braille alphabet used for English",
"metadata": {
"sourceName": "EnglishBraille",
"sourceUrl": "https://en.wikipedia.org/wiki/English_braille"

View File

@ -1,10 +1,14 @@
{
"id":"firefox_cheat_sheet",
"name":"Mozilla Firefox",
"description": "Mozilla Firefox (known simply as Firefox) is a free and open-source web browser developed by the Mozilla Foundation and its subsidiary",
"metadata":{
"sourceName":"Mozilla Firefox",
"sourceUrl":"https://support.mozilla.org/en-US/kb/keyboard-shortcuts-perform-firefox-tasks-quickly"
},
"aliases": [
"mozilla firefox"
],
"template_type": "keyboard",
"section_order":[
"Navigation",

View File

@ -1,9 +1,10 @@
{
"id": "gimp_cheat_sheet",
"name": "Gimp",
"description": "Graphics Editor",
"name": "GIMP",
"description": "Keyboard shortcuts for GIMP (GNU Image Manipulation Program) graphics editor",
"metadata": {
"sourceName": "GimpCheatSheet"
"sourceName": "Jeffkayser",
"sourceUrl": "https://jeffkayser.com/static/cheatsheets/cheatsheet_gimp.png"
},
"template_type": "keyboard",
"section_order": [
@ -460,4 +461,4 @@
}
]
}
}
}

View File

@ -1,6 +1,7 @@
{
"id": "github_cheat_sheet",
"name": "GitHub",
"description":"GitHub is a Web-based Git repository hosting service. It offers all of the distributed revision control and source code management",
"metadata": {
"sourceName": "GitHub Help",
"sourceUrl": "https://help.github.com/articles/using-keyboard-shortcuts/"

View File

@ -1,13 +1,14 @@
{
"id": "gnupg_cheat_sheet",
"name": "GnuPG",
"description": "GNU Privacy Guard is the GNU project's free software implementation of the OpenPGP standard.",
"name": "GNU Privacy Guard",
"description": "GNU project's free software implementation of OpenPGP standard.",
"metadata": {
"sourceName": "GnuPG man page",
"sourceName": "GnuPG",
"sourceUrl": "https://www.gnupg.org/documentation/manpage.en.html"
},
"aliases": [
"gpg"
"gpg",
"gnu privacy guard"
],
"template_type": "terminal",
"section_order": [

View File

@ -1,6 +1,7 @@
{
"id": "golang_cheat_sheet",
"name": "Go Language",
"description":"Basic Syntax, functions, and expressions of golang",
"metadata": {
"sourceName": "GitHub",
"sourceUrl": "https://github.com/a8m/go-lang-cheat-sheet"
@ -320,4 +321,4 @@
"val":"Send / receive operator"
} ]
}
}
}

View File

@ -39,7 +39,7 @@
"val": "Created",
"key": "201"
}, {
"val": "Successful",
"val": "Accepted",
"key": "202"
}, {
"val": "Non-authorative information",
@ -189,46 +189,46 @@
"key": "499"
}],
"HTTP Server Error Codes (5xx)": [{
"val": "Bad Request",
"val": "Internal Server Error",
"key": "500"
}, {
"val": "Unauthorized",
"val": "Not Implemented",
"key": "501"
}, {
"val": "Payment Required",
"val": "Bad Gateway",
"key": "502"
}, {
"val": "Forbidden",
"val": "Service Unavailable",
"key": "503"
}, {
"val": "Not Found",
"val": "Gateway Timeout",
"key": "504"
}, {
"val": "Method Not Allowed",
"val": "HTTP Version Not Supported",
"key": "505"
}, {
"val": "Not Acceptable",
"val": "Variant Also Negotiates",
"key": "506"
}, {
"val": "Proxy Authentication Required",
"val": "Insufficient Storage",
"key": "507"
}, {
"val": "Request Timeout",
"val": "Loop Detected",
"key": "508"
}, {
"val": "Conflict",
"val": "Bandwidth Exceeded",
"key": "509"
}, {
"val": "Gone",
"val": "Not Extended",
"key": "510"
}, {
"val": "Length Required",
"val": "Network Authentication Required",
"key": "511"
}, {
"val": "Precondition Failed",
"val": "Network Read Timeout",
"key": "598"
}, {
"val": "Request Entity Too Large",
"val": "Network Connect Timeout ",
"key": "599"
}]

View File

@ -1,7 +1,7 @@
{
"name": "i3 Window Manager",
"id": "i3_cheat_sheet",
"description": "Window manager",
"description": "Window manager for Linux",
"metadata": {
"sourceName": "i3wm",
"sourceUrl": "https://i3wm.org/docs/refcard.pdf"
@ -117,4 +117,4 @@
}
]
}
}
}

View File

@ -1,7 +1,7 @@
{
"id": "intellij_cheat_sheet",
"name": "JetBrains IntelliJ IDEA",
"descriptions": "Java IDE, developed by JetBrains (formerly known as IntelliJ), and is available as an Apache 2 Licensed community edition,[1] and in a proprietary commercial edition",
"descriptions": "Keyboard shortcuts for IntelliJ IDEA, a Java IDE developed by JetBrains",
"metadata": {
"sourceName": "Shortcut World",
"sourceUrl": "http://www.shortcutworld.com/en/win/IntelliJ.html"

View File

@ -1,10 +1,12 @@
{
"id": "irc_cheat_sheet",
"name": "IRC Cheat Sheet",
"name": "IRC",
"description": "Internet Relay Chat (IRC) is an application layer protocol that facilitates communication in the form of text",
"metadata": {
"sourceName": "Internet Relay Chat WikiHow",
"sourceUrl": "http://www.cheat-sheets.org/saved-copy/wikiHow_IRC_Cheat_Sheet.pdf"
},
"aliases": ["internet relay chat"],
"template_type": "terminal",
"section_order": [
"Main",

View File

@ -0,0 +1,232 @@
{
"id": "japanese_prefectures_cheat_sheet",
"name": "Japanese Prefectures",
"description": "Japanese prefectures grouped by region, along with their capital cities",
"metadata": {
"sourceName": "Wikipedia",
"sourceUrl": "https://en.wikipedia.org/wiki/Prefectures_of_Japan"
},
"aliases": [
"japan prefecture",
"japan prefectures",
"japanese prefecture",
"prefectures of japan"
],
"template_type": "reference",
"section_order": [
"Hokkaidō",
"Tōhoku",
"Kantō",
"Chūbu",
"Kansai",
"Chūgoku",
"Shikoku",
"Kyūshū"
],
"sections": {
"Hokkaidō": [
{
"key": "Hokkaidō (北海道)",
"val": "Sapporō (札幌市)"
}
],
"Tōhoku": [
{
"key": "Aomori (青森県)",
"val": "Aomori (青森市)"
},
{
"key": "Iwate (岩手県)",
"val": "Morioka (盛岡市)"
},
{
"key": "Miyagi (宮城県)",
"val": "Sendai (仙台市)"
},
{
"key": "Akita (秋田県)",
"val": "Akita (秋田市)"
},
{
"key": "Yamagata (山形県)",
"val": "Yamagata (山形市)"
},
{
"key": "Fukushima (福島県)",
"val": "Fukushima (福島市)"
}
],
"Kantō": [
{
"key": "Ibaraki (茨城県)",
"val": "Mito (水戸市)"
},
{
"key": "Tochigi (栃木県)",
"val": "Utsunomiya (宇都宮市)"
},
{
"key": "Gunma (群馬県)",
"val": "Maebashi (前橋市)"
},
{
"key": "Saitama (埼玉県)",
"val": "Saitama (さいたま市)"
},
{
"key": "Chiba (千葉県)",
"val": "Chiba (千葉市)"
},
{
"key": "Tōkyō (東京都)",
"val": "Tōkyō (東京)"
},
{
"key": "Kanagawa (神奈川県)",
"val": "Yokohama (横浜市)"
}
],
"Chūbu": [
{
"key": "Niigata (新潟県)",
"val": "Niigata (新潟市)"
},
{
"key": "Toyama (富山県)",
"val": "Toyama (富山市)"
},
{
"key": "Ishikawa (石川県)",
"val": "Kanazawa (金沢市)"
},
{
"key": "Fukui (福井県)",
"val": "Fukui (福井市)"
},
{
"key": "Yamanashi (山梨県)",
"val": "Kōfu (甲府市)"
},
{
"key": "Nagano (長野県)",
"val": "Nagano (長野市)"
},
{
"key": "Gifu (岐阜県)",
"val": "Gifu (岐阜市)"
},
{
"key": "Shizuoka (静岡県)",
"val": "Shizuoka (静岡市)"
},
{
"key": "Aichi (愛知県)",
"val": "Nagoya (名古屋市)"
}
],
"Kansai": [
{
"key": "Mie (三重県)",
"val": "Tsu (津市)"
},
{
"key": "Shiga (滋賀県)",
"val": "Ōtsu (大津市)"
},
{
"key": "Kyōto (京都府)",
"val": "Kyōto (京都市)"
},
{
"key": "Ōsaka (大阪府)",
"val": "Ōsaka (大阪市)"
},
{
"key": "Hyōgo (兵庫県)",
"val": "Kōbe (神戸市)"
},
{
"key": "Nara (奈良県)",
"val": "Nara (奈良市)"
},
{
"key": "Wakayama (和歌山県)",
"val": "Wakayama (和歌山市)"
}
],
"Chūgoku": [
{
"key": "Tottori (鳥取県)",
"val": "Tottori (鳥取市)"
},
{
"key": "Shimane (島根県)",
"val": "Matsue (松江市)"
},
{
"key": "Okayama (岡山県)",
"val": "Okayama (岡山市)"
},
{
"key": "Hiroshima (広島県)",
"val": "Hiroshima (広島市)"
},
{
"key": "Yamaguchi (山口県)",
"val": "Yamaguchi (山口市)"
}
],
"Shikoku": [
{
"key": "Tokushima (徳島県)",
"val": "Tokushima (徳島市)"
},
{
"key": "Kagawa (香川県)",
"val": "Takamatsu (高松市)"
},
{
"key": "Ehime (愛媛県)",
"val": "Matsuyama (松山市)"
},
{
"key": "Kōchi (高知県)",
"val": "Kōchi (高知市)"
}
],
"Kyūshū": [
{
"key": "Fukuoka (福岡県)",
"val": "Fukuoka (福岡市)"
},
{
"key": "Saga (佐賀県)",
"val": "Saga (佐賀市)"
},
{
"key": "Nagasaki (長崎県)",
"val": "Nagasaki (長崎市)"
},
{
"key": "Kumamoto (熊本県)",
"val": "Kumamoto (熊本市)"
},
{
"key": "Ōita (大分県)",
"val": "Ōita (大分市)"
},
{
"key": "Miyazaki (宮崎県)",
"val": "Miyazaki (宮崎市)"
},
{
"key": "Kagoshima (鹿児島県)",
"val": "Kagoshima (鹿児島市)"
},
{
"key": "Okinawa (沖縄県)",
"val": "Naha (那覇市)"
}
]
}
}

View File

@ -1,6 +1,7 @@
{
"id": "java_cheat_sheet",
"name": "Java",
"description": "A set of java Syntax, functions, and expressions",
"metadata": {
"sourceName": "Cheatography",
"sourceUrl": "http://www.cheatography.com/sschaub/cheat-sheets/java-fundamentals/"
@ -28,23 +29,23 @@
"Data Types": [
{
"key" : "byte/short/int/long",
"val" : "Integer Datatype."
"val" : "Integer Datatype"
},
{
"key" : "float/double",
"val" : "Floating Point Datatype."
"val" : "Floating Point Datatype"
},
{
"key" : "char",
"val" : "A Single Character."
"val" : "A Single Character"
},
{
"key" : "boolean",
"val" : "Represents True,False."
"val" : "Represents True,False"
},
{
"key" : "String",
"val" : "Java object To Represent A Sequence Of Characters."
"val" : "Java object To Represent A Sequence Of Characters"
}
],
@ -107,94 +108,94 @@
{
"key" : "s.le­ngth()",
"val" : "Length Of S."
"val" : "Length Of S"
},
{
"key" : "s.ch­arA­t(i)",
"val" : "Extract ith Character."
"val" : "Extract ith Character"
},
{
"key" : "s.su­bst­rin­g(­start, end)",
"val" : "Substring From Start To End."
"val" : "Substring From Start To End"
},
{
"key" : "s.to­Upp­erC­ase()/lowerCase()",
"val" : "Returns Copy Of s In Caps/Lower Case."
"val" : "Returns Copy Of s In Caps/Lower Case"
},
{
"key" : "s.in­dex­Of(x)",
"val" : "Index Of First Occurence Of x."
"val" : "Index Of First Occurence Of x"
},
{
"key" : "s.re­pla­ce(­old, new)",
"val" : "Search And Replace."
"val" : "Search And Replace"
},
{
"key" : "s.sp­lit­(r­egex)",
"val" : "Splits Into Tokens."
"val" : "Splits Into Tokens"
},
{
"key" : "s.trim()",
"val" : "Trims Surrounding White Space."
"val" : "Trims Surrounding White Space"
},
{
"key" : "s.eq­ual­s(s2)",
"val" : "True If s Equals s2."
"val" : "True If s Equals s2"
},
{
"key" : "s.co­mpa­reT­o(s2)",
"val" : "0 if Equal or +ve If s > s2 or-ve If s < s2."
"val" : "0 if Equal or +ve If s > s2 or-ve If s < s2"
}
],
"Ar­rayList Methods" : [
{
"key" : "l.ad­d(­item)",
"val" : "Add Item To List."
"val" : "Add Item To List"
},
{
"key" : "l.ge­t(i)",
"val" : "Return ith Item."
"val" : "Return ith Item"
},
{
"key" : "l.size()",
"val" : "Returns The Number Of Items."
"val" : "Returns The Number Of Items"
},
{
"key" : "l.re­mov­e(i)",
"val" : "Remove ith Item."
"val" : "Remove ith Item"
},
{
"key" : "l.se­t(i, value)",
"val" : "Put value At Position i."
"val" : "Put value At Position i"
}
],
"Ha­shMap Methods" : [
{
"key" : "m.pu­t(­key­,­value)",
"val" : "Inserts Value With Key."
"val" : "Inserts Value With Key"
},
{
"key" : "m.ge­t(­key)",
"val" : "Retrieves Value With Key."
"val" : "Retrieves Value With Key"
},
{
"key" : "m.co­nta­ins­Key­(key)",
"val" : "True If m Contains Key."
"val" : "True If m Contains Key"
}
]

View File

@ -7,7 +7,8 @@
"sourceUrl": "http://overapi.com/javascript/"
},
"aliases": [
"js", "java script"
"js",
"java script"
],
"template_type": "code",
"section_order": [
@ -21,7 +22,7 @@
"sections": {
"Array Methods": [{
"val": "Joins two or more arrays, and returns a copy of the joined arrays",
"key": "concact()"
"key": "concat()"
}, {
"val": "Searches array for an element, and returns element's position",
"key": "indexOf()"

View File

@ -0,0 +1,166 @@
{
"id": "jira_cheat_sheet",
"name": "JIRA",
"description":"Jira is a bug tracking, issue tracking and project management software",
"metadata": {
"sourceName": "Cheatography",
"sourceUrl": "http://www.cheatography.com/ovi-mihai/cheat-sheets/jira/"
},
"template_type": "keyboard",
"section_order": [
"Global",
"Navigating Issues",
"Agile",
"Issue Actions"
],
"aliases": [
"jira shortcuts",
"jira keyboard shortcuts"
],
"sections": {
"Global": [
{
"val": "Quick Search",
"key": "/"
},
{
"val": "Quick Operations",
"key": ". "
},
{
"val": "Create Issue",
"key": "c"
},
{
"val": "Next Item",
"key": "j"
},
{
"val": "Previous Item",
"key": "p"
},
{
"val": "Dashboard",
"key": "g d"
},
{
"val": "Browse a Project",
"key": "g p"
},
{
"val": "Agile",
"key": "g a"
},
{
"val": "Find Issues",
"key": "g i"
},
{
"val": "Adm Quick Search",
"key": "g g"
},
{
"val": "Submit Form",
"key": "[Ctrl] [s]"
},
{
"val": "Help",
"key": "?"
}
],
"Navigating Issues": [
{
"val": "View selected",
"key": "o or Enter"
},
{
"val": "Next Issue",
"key": "j"
},
{
"val": "Previous Issue",
"key": "k"
},
{
"val": "Assign to me",
"key": "i"
},
{
"val": "Assign",
"key": "a"
},
{
"val": "Dock/U­ncock Filters",
"key": "["
},
{
"val": "Next Activity",
"key": "n"
},
{
"val": "Previous Activity",
"key": "p"
},
{
"val": "Switch filter view",
"key": "t"
}
],
"Agile": [
{
"val": "Plan",
"key": "1"
},
{
"val": "Work",
"key": "2"
},
{
"val": "Report",
"key": "3"
},
{
"val": "Presen­tation mode",
"key": "z"
},
{
"val": "Next Column",
"key": "n"
},
{
"val": "Previous Column",
"key": "p"
},
{
"val": "Hide/Show Details",
"key": "t"
}
],
"Issue Actions": [
{
"val": "Edit Issue",
"key": "e"
},
{
"val": "Assign issue",
"key": "a"
},
{
"val": "Comment",
"key": "m"
},
{
"val": "Edit Labels",
"key": "l"
},
{
"val": "Jump to fields for editing",
"key": ","
},
{
"val": "Assign To Me",
"key": "i"
}
]
}
}

View File

@ -3,7 +3,7 @@
"name": "Jive Talk",
"description": "Language of Jive",
"metadata": {
"sourceName": "Hepcats Jive Dictionary",
"sourceName": "Scribd",
"sourceUrl": "http://www.scribd.com/doc/57707658/Hepcats-Jive-Dictionary"
},
"template_type": "reference",

View File

@ -1,6 +1,7 @@
{
"id": "jquery_cheat_sheet",
"name": "jQuery",
"description": "jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML",
"metadata": {
"sourceName": "jQuery API Documentation",
"sourceUrl": "http://api.jquery.com/"
@ -250,4 +251,4 @@
"key": "$.parseXML(string)"
}]
}
}
}

View File

@ -6,7 +6,13 @@
"sourceName": "ProKabaddi League",
"sourceUrl": "http://www.prokabaddi.com/prokabaddi-rules"
},
"aliases": ["kabaddi words", "kabaddi definitions", "words used in kabaddi", "terms used in kabaddi"],
"aliases": [
"kabaddi",
"kabaddi words",
"kabaddi definitions",
"words used in kabaddi",
"terms used in kabaddi"
],
"template_type": "reference",
"section_order": [
"Court related terms",

View File

@ -0,0 +1,90 @@
{
"id": "kde_cheat_sheet",
"name": "KDE",
"description": "List of useful keyboard commands for KDE",
"metadata": {
"sourceName": "KDE Help",
"sourceUrl": "http://community.linuxmint.com/tutorial/view/47"
},
"template_type": "keyboard",
"section_order": ["Desktop Navigation", "Desktop Commands", "ScreenShot" , "Web Browser" , "Tab Management"],
"sections": {
"Desktop Navigation": [{
"val": "Start menu / Access applications",
"key": "[Alt] [F1]"
}, {
"val": "Lock desktop / Switch active user",
"key": "[Ctrl] [Alt] [L]"
}, {
"val": "Show desktop",
"key": "[Ctrl] [Alt] [D]"
}, {
"val": "Task manager",
"key": "[Ctrl] [Esc]"
}, {
"val": "Rename file",
"key": "F2"
}],
"Desktop Commands": [{
"val": "File menu",
"key": "[Alt] [F]"
}, {
"val": "Edit menu",
"key": "[Alt] [E]"
}, {
"val": "Copy selected text or items to the clipboard",
"key": "[Ctrl] [C]"
}, {
"val": "View menu",
"key": "[Ctrl] [V]"
}, {
"val": "Undo the last action",
"key": "[Ctrl] [Z]"
}, {
"val": "Paste special",
"key": "[Ctrl] [Shift] [V]"
}],
"ScreenShot": [{
"val": "Take a screenshot",
"key": "Prnt Scrn"
},{
"val": "Take a screenshot of a Window",
"key": "[Shift] [Prnt Scrn]"
}],
"Web Browser": [{
"val": "Bookmarks menu",
"key": "[Alt] [B]"
},{
"val": "Pop up new window",
"key": "[Alt] [F2]"
}, {
"val": "Insert (www.) + (.com)",
"key": "[Ctrl] [Enter]"
}, {
"val": "Insert (www.) + (.org)",
"key": "[Ctrl] [Shift] [Enter]"
}, {
"val": "Insert (www.) + (.net)",
"key": "[Shift] [Enter]"
}, {
"val": "Add a bookmark for the current URL",
"key": "[Ctrl] [B]"
}, {
"val": "Manage bookmarks",
"key": "[Ctrl] [Shift] [R]"
}],
"Tab Management": [{
"val": "Create new tab",
"key": "[Ctrl] [Shift] [N]"
}, {
"val": "Close current tab",
"key": "[Ctrl] [W]"
}, {
"val": "Go to next tab",
"key": "[Ctrl] [,]"
}, {
"val": "Go to previous tab",
"key": "[Ctrl] [.]"
}]
}
}

View File

@ -1,7 +1,7 @@
{
"id": "kerbal_space_program_cheat_sheet",
"name": "Kerbal Space Program",
"description": "Space simulation game",
"description": "Keyboard shortcuts for Kerbal Space Program, a Space flight simulator game",
"metadata": {
"sourceName": "Kerbal Space Program Wiki",
"sourceUrl": "http://wiki.kerbalspaceprogram.com/wiki/Key_bindings"
@ -9,7 +9,7 @@
"section_order": [
"System/UI Commands",
"Flight Controls",
"Docking mode",
"Docking Mode",
"EVA Commands",
"VAB/SPH Commands"
],
@ -211,7 +211,7 @@
"key":"End",
"val":"Scroll stage icons down"
}],
"Docking mode": [{
"Docking Mode": [{
"key":"W",
"val":"Pitch adjustment (up/back) / Translate forward"
}, {

View File

@ -0,0 +1,318 @@
{
"id": "knitting_pattern_cheat_sheet",
"name": "Knitting Pattern",
"description": "Knitting pattern abbreviations",
"metadata": {
"sourceName": "Craft Yarn Council",
"sourceUrl": "http://craftyarncouncil.com/knit.html"
},
"template_type": "reference",
"section_order": [
"Abbreviations (A-I)",
"Abbreviations (K-R)",
"Abbreviations (S-Z)",
"Symbols"
],
"sections": {
"Symbols": [
{
"val": "Work instructions within brackets as many times as directed",
"key": "[]"
},
{
"val": "Work instructions within parentheses in the place directed",
"key": "()"
},
{
"val": "Repeat instructions following the asterisks as directed",
"key": "**"
},
{
"val": "Inch(es)",
"key": "\""
},
{
"val": "Repeat instructions following the single asterisk as directed",
"key": "*"
}
],
"Abbreviations (A-I)": [
{
"val": "Alternate",
"key": "alt"
},
{
"val": "Approximately",
"key": "approx"
},
{
"val": "Begin, Beginning",
"key": "beg"
},
{
"val": "Between",
"key": "bet"
},
{
"val": "Bind off",
"key": "BO"
},
{
"val": "Color A",
"key": "CA"
},
{
"val": "Color B",
"key": "CB"
},
{
"val": "Contrasting color",
"key": "CC"
},
{
"val": "Centimeter",
"key": "cm"
},
{
"val": "Cable needle",
"key": "cn"
},
{
"val": "Cast on",
"key": "CO"
},
{
"val": "Continue",
"key": "cont"
},
{
"val": "Decrease, Decreases, Decreasing",
"key": "dec"
},
{
"val": "Double pointed needle(s)",
"key": "dpn"
},
{
"val": "Front loop(s)",
"key": "fl"
},
{
"val": "Follow, Follows, Following",
"key": "foll"
},
{
"val": "Gram",
"key": "g"
},
{
"val": "Increase, Increases, Increasing",
"key": "inc"
}
],
"Abbreviations (K-R)": [
{
"val": "Knit",
"key": "k"
},
{
"val": "Knit",
"key": "K"
},
{
"val": "Knit 2 stitches together",
"key": "k2tog"
},
{
"val": "Knitwise",
"key": "kwise"
},
{
"val": "Left hand",
"key": "LH"
},
{
"val": "Loop(s)",
"key": "lp(s)"
},
{
"val": "Meter(s)",
"key": "m"
},
{
"val": "Make one stitch",
"key": "M1"
},
{
"val": "Make on purl stitch",
"key": "M1 p-st"
},
{
"val": "Main color",
"key": "MC"
},
{
"val": "Millimeter(s)",
"key": "mm"
},
{
"val": "Ounce(s)",
"key": "oz"
},
{
"val": "Purl",
"key": "p"
},
{
"val": "Purl",
"key": "P"
},
{
"val": "Pattern(s)",
"key": "pat(s)"
},
{
"val": "Pattern(s)",
"key": "patt"
},
{
"val": "Place marker",
"key": "pm"
},
{
"val": "Popcorn",
"key": "pop"
},
{
"val": "Purl 2 stitches together",
"key": "p2tog"
},
{
"val": "Previous",
"key": "prev"
},
{
"val": "Pass slipped stitch over",
"key": "psso"
},
{
"val": "Purlwise",
"key": "pwise"
},
{
"val": "Remain, Remaining",
"key": "rem"
},
{
"val": "Repeat(s)",
"key": "rep"
},
{
"val": "Reverse stockinette stitch",
"key": "rev St st"
},
{
"val": "Right hand",
"key": "RH"
},
{
"val": "Round(s)",
"key": "rnd(s)"
},
{
"val": "Right side",
"key": "RS"
}
],
"Abbreviations (S-Z)": [
{
"val": "Skip",
"key": "sk"
},
{
"val": "Slip, Knit, Pass stitch over — one stitch decreased",
"key": "skp"
},
{
"val": "Slip 1, Knit 2 together, Pass slip stitch over the knit 2 together; 2 stitches have been decreased",
"key": "sk2p"
},
{
"val": "Slip",
"key": "sl"
},
{
"val": "Slip 1 knitwise",
"key": "sl1k"
},
{
"val": "Slip 1 purlwise",
"key": "sl1p"
},
{
"val": "Slip stitch(es)",
"key": "sl st"
},
{
"val": "Slip stitch (Canadian)",
"key": "ss"
},
{
"val": "Slip, Slip, Knit these 2 stiches together — a decrease",
"key": "ssk"
},
{
"val": "Slip, Slip, Slip, Knit 3 stiches together",
"key": "sssk"
},
{
"val": "Stitch(es)",
"key": "st(s)"
},
{
"val": "Stockinette stitch, Stocking stitch",
"key": "St st"
},
{
"val": "Through back loop",
"key": "tbl"
},
{
"val": "Together",
"key": "tog"
},
{
"val": "Wrong side",
"key": "WS"
},
{
"val": "With yarn in back",
"key": "wyib"
},
{
"val": "With yarn in front",
"key": "wyif"
},
{
"val": "Yard(s)",
"key": "yd(s)"
},
{
"val": "Yarn forward",
"key": "yfwd"
},
{
"val": "Yarn over",
"key": "yo"
},
{
"val": "Yarn around needle",
"key": "yrn"
},
{
"val": "Yarn over needle",
"key": "yon"
}
]
}
}

View File

@ -0,0 +1,219 @@
{
"id" : "armenian_cheat_sheet",
"name" : "Armenian Cheat Sheet (Western)",
"metadata" : {
"sourceName" : "omniglot",
"sourceUrl" : "http://www.omniglot.com/language/phrases/westernarmenian.htm"
},
"aliases": [
"armenian phrases", "armo phrases", "english to armenian", "basic armenian phrases", "basic armenian"
],
"template_type": "language",
"section_order" : [
"Etiquette",
"Basics",
"Getting Help",
"Travelling",
"Going out for dinner"
],
"description" : "Basic Armenian words and phrases",
"sections" : {
"Etiquette" : [
{
"key" : "Good morning",
"val" : "Բարի լոյս",
"trn" : "Pahree looys"
},
{
"key" : "Good afternoon",
"val" : "Բարի կէսօր",
"trn": "Pahree guessore"
},
{
"key" : "Good evening",
"val" : "Բարի իրիկուն",
"trn" : "Pahree eereegoon"
},
{
"key" : "Goodbye (leaving)",
"val" : "Մնաք բարով",
"trn" : "Muh-nuck parov"
},
{
"key" : "Goodbye (staying)",
"val" : "Երթաք բարով",
"trn" : "Yer-tuck parov"
},
{
"key" : "Thanks",
"val" : "Շնորհակալ եմ",
"trn" : "Shnor-ha-gal em"
},
{
"key" : "I am sorry",
"val" : "Ներողութիւն",
"trn" : "Neh-ro-ghoo-tune"
}
],
"Getting Help" : [
{
"key" : "Help",
"val" : "Օգնութիւն",
"trn" : "Oak-noo-tune"
},
{
"key" : "Police",
"val" : "Ոստիկան",
"trn" : "Vohs-dee-gun"
},
{
"key" : "Get a doctor",
"val" : "Բժիշկ կանչեցեք",
"trn" : "Puhsheeshk gun-chetzek"
},
{
"key" : "I am sick",
"val" : "Հիւանդ եմ",
"trn" : "Hee-vunt ehm"
},
{
"key" : "Somebody has stolen my ...",
"val" : "Մեկը գողցավ իմ ...",
"trn" : "Meh-guh khogh-tzahv eem ..."
},
{
"key" : "Where is the hospital?",
"val" : "Հիւանդանոցը ո՞ւր է:",
"trn" : "Heevon-tah-no-tzuh oor eh?"
}
],
"Basics" : [
{
"key" : "My name is ...",
"val" : "Անունս ... է",
"trn" : "Uh-noon-us ... eh"
},
{
"key" : "I'm fine, thanks. And you?",
"val" : "Լաւ եմ, մերսի: Դուք ինչպէ՞ս էք:",
"trn" : "Laav em, mer-see. Took inch bess ek?"
},
{
"key" : "How are you?",
"val" : "Ինչպէ՞ս էք:",
"trn" : "Inch bess ek"
},
{
"key" : "Hello",
"val" : "Բարև",
"trn" : "Pahrev"
},
{
"key" : "Welcome",
"val" : "Բարի՜ եկաք",
"trn" : "Pah-ree yeh-guck"
},
{
"key" : "What's your name?",
"val" : "Ձեր անունը ի՞նչ է:",
"trn" : "Tzer a-noo-nuh inch eh"
}
],
"Travelling" : [
{
"key" : "Do you speak English?",
"val" : "Անգլիերէն կը խօսի՞ք:",
"trn" : "Ahnc-laren guh kho-seek?"
},
{
"key" : "Would you help me please?",
"val" : "Հաճիս ինծի կրնա՞ք օգնել:",
"trn" : "Huh-jees intzi guhr-nuck ok-nell?"
},
{
"key" : "Where is the toilet?",
"val" : "Պէտքարանը ո՞ւր է:",
"trn" : "Bed-kara-nuh oor eh?"
},
{
"key" : "How much is this?",
"val" : "Ասիկա ինչքա՞ն կ'արժէ:",
"trn" : "Asee-guh inch-kun gar-zheh?"
},
{
"key" : "Where can I find ...",
"val" : "Ո՞ւր կրնամ գտնալ ...",
"trn" : "Oor gr-num kuhd-null ...?"
},
{
"key" : "What time does the shop open?",
"val" : "Ժամը քանի՞ին խանութը կը բացվի:",
"trn" : "Shum-uh kun-ee-in kha-noo-tuh guh patzwee?"
},
{
"key" : "What time does the shop close?",
"val" : "Ժամը քանի՞ին խանութը կը գոցվի:",
"trn" : "Shum-uh kun-ee-in kha-noo-tuh guh kotzvee?"
},
{
"key" : "Could you talk a bit slower?",
"val" : "Հաճիս աւելի կամաց կրնա՞ք խօսիլ:",
"trn" : "Huhjees ave-lee ga-matz guhr-nock khoseel?"
},
{
"key" : "Could you repeat that please?",
"val" : "Հաճիս կրնա՞ք կրկնել:",
"trn" : "Huhjees guhr-nock gurg-nell?"
}
],
"Going out for dinner" : [
{
"key" : "Do you have vegetarian dishes?",
"val" : "Միայն բանջարեղէնով կերակուր ո՞ւնիք:",
"trn" : "Mee-uhyn pun-chuh-reh-gheh-nov gue-ruh-goor oo-nik?"
},
{
"key" : "I am allergic",
"val" : "Ալերժի ունիմ",
"trn" : "Aler-shee oo-neem"
},
{
"key" : "The check, please",
"val" : "Հաշիւը, խնդրեմ",
"trn" : "Ha-shee-vuh, khuhn-trem"
},
{
"key" : "A cup of coffee, please",
"val" : "Գաւաթ մը սուրճ, խնդրեմ",
"trn" : "Kuh-vut muh soorj, khuhn-trem"
},
{
"key" : "A glass of water, please",
"val" : "Գաւաթ մը ջուր, խնդրեմ",
"trn" : "Kuh-vut muh choor, khuhn-trem"
},
{
"key" : "Where is a good restaurant?",
"val" : "Լաւ ճաշարան մը ո՞ւր կը գտնուի:",
"trn" : "Lav juh-shu-run muh oor guh kuhd-nuh-vee?"
},
{
"key" : "A table for two, please",
"val" : "Երկու հոգինօձ սեղան, խնդրեմ",
"trn" : "Yer-goo ho-kee-notz se-ghun, khuhn-trem"
},
{
"key" : "Can I get a menu, please",
"val" : "Ճաշացուցակ, խնդրեմ:",
"trn" : "Juh-sha-tzoo-tzug, khuhn-trem"
}
]
}
}

View File

@ -0,0 +1,236 @@
{
"id" : "bulgarian_cheat_sheet",
"name" : "Bulgarian Cheat Sheet",
"metadata" : {
"sourceName" : "Linguanaut",
"sourceUrl" : "http://www.linguanaut.com/english_bulgarian.htm"
},
"aliases": [
"bulgarian phrases", "english to bulgarian", "basic bulgarian phrases", "basic bulgarian"
],
"template_type": "reference",
"section_order" : [
"Basics",
"Getting Help",
"Travelling",
"Etiquette",
"Dinner on the Town"
],
"description" : "Basic Bulgarian words and phrases",
"sections" : {
"Etiquette" : [
{
"val" : "Leka nosht!",
"key" : "Good Night!"
},
{
"val" : "Dobar den!",
"key" : "Good day!"
},
{
"val" : "Dobar vecher!",
"key" : "Good Evening!"
},
{
"val" : "Izvinete.",
"key" : "I'm sorry."
},
{
"val" : "Blagodarya!",
"key" : "Thank you!"
},
{
"val" : "Molya.",
"key" : "Please."
},
{
"val" : "Mnogo blagodarya!",
"key" : "Thank you very much!"
},
{
"val" : "Dobro utro!",
"key" : "Good Morning!"
},
{
"val" : "S udovolstvie!",
"key" : "You're welcome!"
}
],
"Getting Help" : [
{
"val" : "Viknete Policya!",
"key" : "Call the Police!"
},
{
"val" : "Govorete po bavno!",
"key" : "Please speak more slowly!"
},
{
"val" : "Az sum alergichen.",
"key" : "I am allergic."
},
{
"val" : "Molya, povtorete.",
"key" : "Repeat, please."
},
{
"val" : "Kak kazvate \"X\" na bulgarski?",
"key" : "How do you say \"X\" in German?"
},
{
"val" : "Spri!",
"key" : "Stop!"
},
{
"val" : "Govorite li angliiski?",
"key" : "Do you speak English?"
},
{
"val" : "Izvinete!",
"key" : "Excuse me!"
},
{
"val" : "Imam nujda ot lekar!",
"key" : "I need a doctor!"
},
{
"val" : "Moje li da napishete tova?",
"key" : "Can you write that down?"
},
{
"val" : "Viknete lineika!",
"key" : "Call an ambulance!"
},
{
"val" : "Pomosht!",
"key" : "I am in danger!"
},
{
"val" : "Mojete li da mi pomognete?",
"key" : "Can you help me?"
},
{
"val" : "Pojar!",
"key" : "Fire!"
}
],
"Basics" : [
{
"val" : "Kazvam se...",
"key" : "My name is..."
},
{
"val" : "Dobre sum, blagodarya!",
"key" : "I'm fine thanks!"
},
{
"val" : "Kak ste?",
"key" : "How are you?"
},
{
"val" : "Zdrawei",
"key" : "Hello"
},
{
"val" : "Dobre doshli",
"key" : "Welcome"
},
{
"val" : "Kak se kazvate?",
"key" : "What's your name?"
}
],
"Travelling" : [
{
"val" : "Zavii na lyavo.",
"key" : "Turn left."
},
{
"val" : "Kade e izhoda?",
"key" : "Where is the exit?"
},
{
"val" : "Kade?",
"key" : "Where?"
},
{
"val" : "Dalech li e?",
"key" : "Is it far?"
},
{
"val" : "Varvi pravo napred.",
"key" : "Go straight ahead."
},
{
"val" : "Imate li karta na grada?",
"key" : "Do you have a city map?"
},
{
"val" : "Molya sprete tuk.",
"key" : "Stop here please."
},
{
"val" : "Zavii na dyasno.",
"key" : "Turn right."
},
{
"val" : "Kade moga da namerya taxi?",
"key" : "Where can I find the taxis?"
},
{
"val" : "Kak moga da vikna taxi?",
"key" : "How can I get a taxi?"
}
],
"Dinner on the Town" : [
{
"val" : "Imate li vegerataryanski yastya?",
"key" : "Do you have vegetaryan dishes?"
},
{
"val" : "Osnovno yastie.",
"key" : "Main dish."
},
{
"val" : "Starter.",
"key" : "Entrée."
},
{
"val" : "Az sum alergichen.",
"key" : "I am allergic."
},
{
"val" : "Desert.",
"key" : "Dessert"
},
{
"val" : "Smetkata, molya!",
"key" : "The check please!"
},
{
"val" : "Chasha kafe ako moje.",
"key" : "A cup of coffee please."
},
{
"val" : "Imate li yastya bez gluten?",
"key" : "Do you have gluten-free dishes?"
},
{
"val" : "Kade ima dobar restorant?",
"key" : "Where is a good restaurant?"
},
{
"val" : "Chasha voda, molya.",
"key" : "A glass of water please."
},
{
"val" : "Masa za dvama, molya!",
"key" : "A table for two please!"
},
{
"val" : "Shte moje li da vidya menu, molya?",
"key" : "Can I get a menu, please?"
}
]
}
}

View File

@ -0,0 +1,238 @@
{
"id" : "malayalam_cheat_sheet",
"name" : "Malayalam Cheat Sheet",
"description" : "Basic Malayalam words and phrases",
"metadata" : {
"sourceName" : "Pravasi Malayalam",
"sourceUrl" : "http://www.pravasimalayalam.com/index.shtml"
},
"aliases": [
"malayalam phrases", "english to malayalam",
"basic malayalam phrases", "basic malayalam"
],
"template_type": "language",
"section_order" : [
"Etiquette",
"Basics",
"Getting Help",
"Travelling",
"Going out for dinner"
],
"sections" : {
"Etiquette" : [
{
"key" : "I'm sorry",
"val" : "എന്നോട് ക്ഷമിക്കൂ",
"trn" : "Ennod kshamiku"
},
{
"key" : "Thank you",
"val" : "നന്ദി ",
"trn" : "Nanni"
},
{
"key" : "Please...",
"val" : "ദയവായി...",
"trn" : "Dayavaayi..."
},
{
"key" : "Thank you very much!",
"val" : "വളരെ നന്ദി !",
"trn" : "Valare nanni!"
},
{
"key" : "You're welcome",
"val" : " താങ്കൾക്ക് സ്വാഗതം ",
"trn" : "Thaangalku swaagatham"
}
],
"Getting Help" : [
{
"key" : "Call the police!",
"val" : "പൊലീസിനെ വിളിക്കൂ !",
"trn" : "Polisine viliku!"
},
{
"key" : "Can you speak more slowly, please?",
"val" : "താങ്കൾക്ക് കുറച്ചുകൂടി പതുക്കെ സംസാരിക്കാൻ കഴിയുമോ ?",
"trn" : "Thangalku kurachukoodi pathukke samsarikkan kazhiyumo?"
},
{
"key" : "Can you repeat, please?",
"val" : "നിങ്ങൾ ദയവായി ആവർത്തിക്കുമോ ?",
"trn" : "Ningal dayavaayi aavarthikumo?"
},
{
"key" : "How do you say \"X\" in Malayalam?",
"val" : "നിങ്ങൾ \"X\" ഇത് മലയാളത്തിൽ എങ്ങനെ പറയും ?",
"trn" : "Ningal \"X\" eth malayalathil engane parayum?"
},
{
"key" : "Stop!",
"val" : "നിർത്തുക !",
"trn" : "Nirthuka!"
},
{
"key" : "Do you speak English?",
"val" : "താങ്കൾ ഇംഗ്ലീഷ് സംസാരിക്കുമോ ?",
"trn" : "Thaangal English samsarikumo?"
},
{
"key" : "Excuse me!",
"val" : "എക്സ്ക്യൂസ് മീ !",
"trn" : "Excuse me!"
},
{
"key" : "I need a doctor!",
"val" : "എനിക്ക് ഒരു ഡോക്ടറെ ആവശ്യമുണ്ട് !",
"trn" : "Enikku oru doctore aavashyamund!"
},
{
"key" : "Can you write that down, please?",
"val" : "താങ്കൾക്ക് അത് എഴുതാൻ കഴിയുമോ ?",
"trn" : "Thaangalkku ath ezhuthan kazhiyumo?"
},
{
"key" : "Call an ambulance!",
"val" : "ഒരു ആംബുലൻസ് വിളിക്കു !",
"trn" : "Oru ambulance vilikku!"
},
{
"key" : "I am in danger!",
"val" : "ഞാൻ അപകടത്തിലാണ് !",
"trn" : "Njan apakadathil aanu!"
},
{
"key" : "Can you help me?",
"val" : "എന്നെ സഹായിക്കാമോ ?",
"trn" : "Enne sahayikkamo?"
},
{
"key" : "Fire!",
"val" : "തീ !",
"trn" : "Thee!"
}
],
"Basics" : [
{
"key" : "My name is...",
"val" : "എന്റെ പേര്...",
"trn" : "Ente peeru..."
},
{
"key" : "I'm fine, thanks!",
"val" : "എനിക്ക് സുഖമാണ്, നന്ദി !",
"trn" : "Enik sugamaan, nanni!"
},
{
"key" : "How are you?",
"val" : "സുഖമാണോ ?",
"trn" : "Sugamaano?"
},
{
"key" : "Welcome",
"val" : "സ്വാഗതം",
"trn" : "Swaagatham"
},
{
"key" : "What's your name?",
"val" : "എന്താണ് നിങ്ങളുടെ പേര് ?",
"trn" : "Enthanu ningalude peeru?"
}
],
"Travelling" : [
{
"key" : "Turn left.",
"val" : "ഇടത്തോട്ട് തിരിയുക .",
"trn" : "Edathott thiriyuka."
},
{
"key" : "Where is the exit?",
"val" : "എക്സിറ്റ് എവിടെയാണ് ?",
"trn" : "Exit evideyaanu?"
},
{
"key" : "Where?",
"val" : "എവിടെ ?",
"trn" : "Evide?"
},
{
"key" : "Is it far?",
"val" : "അത് ദൂരെ ആണോ ?",
"trn" : "Athu dhoore aano?"
},
{
"key" : "Go straight ahead.",
"val" : "നേരെ മുന്നോട്ടു പോകുക .",
"trn" : "Nere munnott pokuka."
},
{
"key" : "Do you have a city map?",
"val" : "നിങ്ങളുടെ കൈയ്യിൽ പട്ടണത്തിൻറെ മാപ്പ് ഉണ്ടോ ?",
"trn" : "Ningalude kayyil pattanathinte map undo?"
},
{
"key" : "Please stop here.",
"val" : "ഇവിടെ നിർത്തുക .",
"trn" : "Evide nirthuka."
},
{
"key" : "Turn right.",
"val" : "വലത്തോട്ട് തിരിയുക .",
"trn" : "Valathottu thiriyuka."
},
{
"key" : "Where can I find the taxis?",
"val" : "എനിക്ക് എവിടെ ടാക്സി കണ്ടെത്താൻ കഴിയും ?",
"trn" : "Enik evide taxis kandethan kazhiyum?"
},
{
"key" : "How can I get a taxi?",
"val" : "എനിക്ക് എങ്ങനെ ടാക്സി ലഭിക്കും ?",
"trn" : "Enik engane taxi labhikkum?"
}
],
"Going out for dinner" : [
{
"key" : "Do you have vegetarian dishes?",
"val" : "ഇവിടെ വെജിറ്റേറിയൻ വിഭവങ്ങൾ ഉണ്ടോ ?",
"trn" : "Ivide vegetarian vibhavangal undo?"
},
{
"key" : "I am allergic",
"val" : "എനിക്ക് അലെർജി ഉണ്ട് ",
"trn" : "Enik alergy und"
},
{
"key" : "The cheque please!",
"val" : "ചെക്ക്‌ നല്കു !",
"trn" : "Cheque nalku!"
},
{
"key" : "A cup of coffee please.",
"val" : "ദയവായി ഒരു കപ്പ്‌ കാപ്പി തരു .",
"trn" : "Dhayavaayi oru cup kaappi tharu."
},
{
"key" : "Where is a good restaurant?",
"val" : "എവിടെ ആണ് നല്ല ഭക്ഷണശാല ഉള്ളത് ?",
"trn" : "Evide aanu nalla bhakshanashaala ullathu?"
},
{
"key" : "A glass of water please.",
"val" : "ഒരു ഗ്ലാസ്‌ വെള്ളം തരുമോ .",
"trn" : "Oru glass vellam tharumo."
},
{
"key" : "A table for two please!",
"val" : "ദയവായി രണ്ട് ആളുകൾക്കുള്ള ടേബിൾ വേണം !",
"trn" : "Dayavaayi rand aalukalkkulla table venam"
},
{
"key" : "Can I get a menu, please?",
"val" : "എനിക്ക് ഇവിടത്തെ മെനു തരുമോ ?",
"trn" : "Enik evidathe menu tharumo?"
}
]
}
}

View File

@ -1,8 +1,9 @@
{
"id":"linux_cheat_sheet",
"name":"Linux",
"description": "Linux is an open-source Unix-like operating system dveloped by Linus Torvalds",
"metadata":{
"sourceName":"linuxstall",
"sourceName":"Linux Stall",
"sourceUrl":"http://www.linuxstall.com/wp-content/uploads/2012/01/"
},
"template_type":"terminal",
@ -376,4 +377,4 @@
}
]
}
}
}

View File

@ -1,155 +1,151 @@
{
"id": "lua_cheat_sheet",
"name": "Lua",
"metadata": {
"sourceName": "Lua Cheat Sheet for Programmers",
"sourceUrl": "http://coffeeghost.net/2010/11/01/lua-cheat-sheet-for-programmers/"
},
"aliases": [
"lua", "lua lang", "lua language"
"id": "lua_cheat_sheet",
"name": "Lua",
"description":"Lua is the popular programming language often used as a embedded scripting language",
"metadata": {
"sourceName": "Coffeeghost",
"sourceUrl": "http://coffeeghost.net/2010/11/01/lua-cheat-sheet-for-programmers/"
},
"aliases": [
"lua lang",
"lua language"
],
"template_type": "terminal",
"section_order": [
"Variables",
"Operators",
"Functions",
"Tables",
"Comments",
"Conditionals",
"Loops"
],
"sections": {
"Variables": [
{
"key": "hello = \"Hello World\"",
"val": "Initialize a variable"
},
{
"key": "local hello = \"Hello World\"",
"val": "Initialize a local variable"
}
],
"template_type": "terminal",
"section_order": [
"Variables",
"Operators",
"Functions",
"Tables",
"Comments",
"Conditionals",
"Loops"
"Operators": [
{
"key": "==",
"val": "Equal"
},
{
"key": "~=",
"val": "Not equal"
},
{
"key": "and",
"val": "And"
},
{
"key": "or",
"val": "Or"
}
],
"sections": {
"Variables": [
{
"key": "hello = \"Hello World\"",
"val": "Initialize a variable"
},
{
"key": "local hello = \"Hello World\"",
"val": "Initialize a local variable"
}
],
"Operators": [
{
"key": "==",
"val": "Equal"
},
{
"key": "~=",
"val": "Not equal"
},
{
"key": "and",
"val": "And"
},
{
"key": "or",
"val": "Or"
}
],
"Functions": [
{
"key": "function hello()",
"val": "Define a function"
},
{
"key": "function hello(parameter1, parameter2)",
"val": "Define a function with parameters"
},
{
"key": "hello()",
"val": "Call a function"
}
],
"Tables": [
{
"key": "hello = \\{\\}",
"val": "Initialize an empty table"
},
{
"key": "hello = \\{1, 2, 3, 4, 5\\}",
"val": "Initialize a table with entries"
},
{
"key": "hello = \\{\\[\"world\"\\] = \"foo\", \\[\"newWorld\"\\] = \"bar\"\\}",
"val": "Initialize with custom keys"
},
{
"key": "world = hello\\[1\\]",
"val": "Get the first entry out of a table"
},
{
"key": "hello\\[x\\] = \"world\"",
"val": "Set something as entry x"
},
{
"key": "table.insert(hello, \"world\")",
"val": "Add an entry to a table"
},
{
"key": "table.remove(hello, 1)",
"val": "Remove first entry from a table"
},
{
"key": "world = table.remove(hello, 1)",
"val": "Remove first entry from a table and return the removed entry"
},
{
"key": "hello\\[1\\] = nil",
"val": "Remove an entry without moving the lower entries up"
},
{
"key": "world = table.concat(hello)",
"val": "Concatenate all entries of a table and form a string"
},
{
"key": "hello.world",
"val": "Alternative to hello[\"world\"] when using custom keys"
}
],
"Comments": [
{
"key": "-- Hello World",
"val": "Single-line comment"
},
{
"key": "--\\[\\[ Hello World \\]\\]",
"val": "Multi-line comment"
}
],
"Conditionals": [
{
"key": "if a == b then",
"val": "If statement"
},
{
"key": "else if a == b then",
"val": "Else if statement"
},
{
"key": "else",
"val": "Else statement"
}
],
"Loops": [
{
"key": "for i = 1, 10, 5 do",
"val": "For loop from 1 to 10 with step size 5. Step size is optional."
},
{
"key": "for key, value in pairs(hello) do",
"val": "For loop with one step for each entry (value) in a table. 'key' is either the index or the key when using custom keys."
},
{
"key": "while true do",
"val": "While loop"
}
]
}
}
"Functions": [
{
"key": "function hello()",
"val": "Define a function"
},
{
"key": "function hello(parameter1, parameter2)",
"val": "Define a function with parameters"
},
{
"key": "hello()",
"val": "Call a function"
}
],
"Tables": [
{
"key": "hello = \\{\\}",
"val": "Initialize an empty table"
},
{
"key": "hello = \\{1, 2, 3, 4, 5\\}",
"val": "Initialize a table with entries"
},
{
"key": "hello = \\{\\[\"world\"\\] = \"foo\", \\[\"newWorld\"\\] = \"bar\"\\}",
"val": "Initialize with custom keys"
},
{
"key": "world = hello\\[1\\]",
"val": "Get the first entry out of a table"
},
{
"key": "hello\\[x\\] = \"world\"",
"val": "Set something as entry x"
},
{
"key": "table.insert(hello, \"world\")",
"val": "Add an entry to a table"
},
{
"key": "table.remove(hello, 1)",
"val": "Remove first entry from a table"
},
{
"key": "world = table.remove(hello, 1)",
"val": "Remove first entry from a table and return the removed entry"
},
{
"key": "hello\\[1\\] = nil",
"val": "Remove an entry without moving the lower entries up"
},
{
"key": "world = table.concat(hello)",
"val": "Concatenate all entries of a table and form a string"
},
{
"key": "hello.world",
"val": "Alternative to hello[\"world\"] when using custom keys"
}
],
"Comments": [
{
"key": "-- Hello World",
"val": "Single-line comment"
},
{
"key": "--\\[\\[ Hello World \\]\\]",
"val": "Multi-line comment"
}
],
"Conditionals": [
{
"key": "if a == b then",
"val": "If statement"
},
{
"key": "else if a == b then",
"val": "Else if statement"
},
{
"key": "else",
"val": "Else statement"
}
],
"Loops": [
{
"key": "for i = 1, 10, 5 do",
"val": "For loop from 1 to 10 with step size 5. Step size is optional."
},
{
"key": "for key, value in pairs(hello) do",
"val": "For loop with one step for each entry (value) in a table. 'key' is either the index or the key when using custom keys."
},
{
"key": "while true do",
"val": "While loop"
}
]
}
}

View File

@ -3,7 +3,7 @@
"name": "Magit",
"description": "Git Version Control via Emacs",
"metadata": {
"sourceName": "MagitCheatSheet",
"sourceName": "Daemian Mack",
"sourceUrl": "http://daemianmack.com/magit-cheatsheet.html"
},
"template_type": "keyboard",
@ -34,11 +34,11 @@
},
{
"key": "$",
"val": "magit-process buffer"
"val": "Magit-process buffer"
},
{
"key": "g",
"val": "reload status buffer"
"val": "Reload status buffer"
}
],
"Section Visibility": [

View File

@ -0,0 +1,248 @@
{
"id": "mainframe_cheat_sheet",
"name": "Mainframe",
"template_type": "terminal",
"description": "Basic commands for the Mainframe cli subsystem layers",
"metadata": {
"sourceName": "MainFrames",
"sourceUrl": "http://www.mainframes.com/Commands.html"
},
"aliases": [
"main frame",
"Mainframe cli",
"Main Frame commands"
],
"section_order": [
"Job Entry Subsystem 2 (JES2)",
"Multiple Virtual Storage (MVS)",
"Data Facility System Managed Storage (DFSMS)",
"Time Sharing Option/Extensions (TSO/E)",
"Virtual Telecommunications Access Method (VTAM)",
"Virtual Lookaside Facility (VLF)",
"System Display and Search Facility (SDSF)"
],
"sections": {
"Job Entry Subsystem 2 (JES2)": [
{
"key": "$DSPL,JOBS=5",
"val": "Display all jobs using 5% or more of the spool"
},
{
"key": "$A A",
"val": "Release all jobs"
},
{
"key": "$ACTIVATE",
"val": "Activate new functions at the current release level of JES2"
},
{
"key": "$ADD APPL",
"val": "Dynamically define a VTAM application to JES2 at the specified JES2 node."
},
{
"key": "$ADD DESTID",
"val": "Dynamically define a symbolic name for a JES2 route code. "
},
{
"key": "$ADD FSS",
"val": "Dynamically define a functional subsystem (FSS) to JES2"
},
{
"key": "$ADD LINE (nnnn)",
"val": "Dynamically add a line"
},
{
"key": "$ADD LOGON (nn)",
"val": "Creates a new LOGON pseudo-device, which defines JES2 as an application program to VTAM"
},
{
"key": "$ADD PRT",
"val": "Dynamically add a local printer"
},
{
"key": "$ADD REDIRECT",
"val": "Specify redirection for commands entered at the entry console"
},
{
"key": "$ADD RMT (nnnn)",
"val": "Add one or more RJE workstations"
},
{
"key": "$C A",
"val": "Cancel the processing of all or specified automatic command entries and delete those entries"
},
{
"key": "$C A 3",
"val": "Cancel auto job id=3"
},
{
"key": "$C job",
"val": "Immediately cancel jobs or TSU sessions currently executing on any member of the MAS and, if desired, provide a storage dump."
},
{
"key": "$D A,L",
"val": "Display information about currently active jobs"
},
{
"key": "$D BUFDEF",
"val": "Display the current values of all parameters defined on the BUFDEF initialization statement or command"
},
{
"key": "$D SPOOL",
"val": "Display the Status of Spool Volumes"
},
{
"key": "$TA,I=900,T=11.15,'$VS,\\[\\]D A,L\\[\\]'",
"val": "Display active list every 15 minutes"
},
{
"key": "$TA,I=86400,T=04.15,'$VS,''S TMSDAILY\\[\\]'",
"val": "Start job TMSDAILY every 24 hours starting at 0415 hours"
},
{
"key": "$TA,I=86400,T=01.15,'$VS,\\[\\]S BACKUP\\[\\]'",
"val": "Start job BACKUP every 24 hours starting at 0115 hours"
},
{
"key": "$vs, 'v (234,235,236),offline','d a' ",
"val": "Varys offline devices 234,235,236 and dispalys all at JES2 startup"
}
],
"Multiple Virtual Storage (MVS)": [
{
"key": "DS QT,483,1",
"val": "Display Status information on device"
},
{
"key": "D IOS,MIH,DEV=484",
"val": "Display IOS control unit group information"
},
{
"key": "D ASM",
"val": "Display Page Data Set Information"
},
{
"key": "D IPLINFO",
"val": "Display IPL information"
},
{
"key": "D LOGREC",
"val": "Display the Logrec Recording Medium"
},
{
"key": "D M",
"val": "Display all the resouces"
},
{
"key": "D PARMLIB",
"val": "Display PARMLIB data sets and volumes Information"
},
{
"key":"D PROD,REGISTERED",
"val":"Display Registered Products"
},
{
"key":"D PROG,LNKLST",
"val":"Display LNKLST Information"
},
{
"key":"D PROG,APF",
"val":"Display Entries in the List of APF-Authorized Libraries"
},
{
"key":"D SMF",
"val":"Display System Management Facilities"
},
{
"key":"D SMF,O",
"val":"Display SMF Data"
},
{
"key":"D SMS,STORGRP (storgrp)",
"val":"Display storage group status using the DISPLAY SMS command"
},
{
"key":"D SYMBOLS",
"val":"Display assigned name of the systems"
},
{
"key":"D U,IPLVOL",
"val":"Display Device Status and Allocation"
},
{
"key":"F TSO,USERMAX=1",
"val":"Set TSO user to max of one user"
},
{
"key":"D XCF,COUPLE",
"val":"Display info on the couple data sets, which used at IPL, names, DASD, etc"
},
{
"key":"VARY CN(*),ACTIVATE",
"val":"Activate the console you are on"
},
{
"key":"D C,HCONLY",
"val":"Display hard copy consoles"
}
],
"Data Facility System Managed Storage (DFSMS)": [
{
"key": "F CATALOG,REPORT,CACHE",
"val": "Reports caching statistics for both caching approaches of catalog management to cache catalog information"
},
{
"key": "F CATALOG,REPORT,PERFORMANCE",
"val": "This new modify catalog command reports counts for various events and the average elapsed time for these events"
},
{
"key": "F CATALOG,LIST (id|yyyyyy) | LISTJ (jobname)",
"val": "Detail information and used in real-time diagnosis when problems arise"
}
],
"Time Sharing Option/Extensions (TSO/E)": [
{
"key": "SYNC",
"val": "Command to initialize SYS1.BRODCAST data set and to synchronize it with the RACF data set, SYS1.UADS, or both"
},
{
"key": "SHOWMVS",
"val": "List all kinds of info on your system (by using ISPF)."
}
],
"Virtual Telecommunications Access Method (VTAM)": [
{
"key": "D NET,MAJNODES",
"val": "Display the all active nodes in the domain"
},
{
"key": "Z NET",
"val": "Take down VTAM normally but not allowing LU sessions to end normally"
},
{
"key": "Z NET,CANCEL",
"val": "Take down VTAM when the above 2 options fail. Cancel will kill everything whether they are in Pending states"
},
{
"key": "D NET,BFRUSE,BUFFER=SHORT",
"val": "Display information about VTAM buffer used"
}
],
"Virtual Lookaside Facility (VLF)": [
{
"key": "F CATALOG,REPORT,CACHE",
"val": "Determining Catalogs in VLF"
},
{
"key": "F CATALOG,NOVLF (your.catname)",
"val": "Removing Catalogs from VLF"
}
],
"System Display and Search Facility (SDSF)": [
{
"key": "XDC",
"val": "Typing this command on the line of the job you want to save as a data set. It displays a self explaining menu. Your job is NOT remove for the output queue"
}
]
}
}

View File

@ -0,0 +1,145 @@
{
"id": "markdown_cheat_sheet",
"name": "Markdown",
"description": "A lightweight markup language with plain text formatting syntax designed so that it can be converted to HTML",
"metadata": {
"sourceName": "GitHub",
"sourceUrl": "https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet"
},
"aliases": [
"md",
"markdown language"
],
"template_type": "terminal",
"section_order": [
"Headers",
"Emphasis",
"Lists",
"Links",
"Images",
"Code and Syntax Highlighting",
"Blockquotes",
"Inline HTML",
"Horizontal Rule"
],
"sections": {
"Headers": [
{
"key": "# Heading",
"val": "H1"
},
{
"key": "## Heading",
"val": "H2"
},
{
"key": "### Heading",
"val": "H3"
},
{
"key": "#### Heading",
"val": "H4"
},
{
"key": "##### Heading",
"val": "H5"
}
],
"Emphasis": [
{
"key": "* Text *",
"val": "Displays text in italics"
},
{
"key": "** Text **",
"val": "Displays the text in bold"
},
{
"key": "** _Texe_ ** ",
"val": "Displays the text in bold and italics"
},
{
"key": "~~ Text ~~",
"val": "Adds strikethrough effect to the text"
}
],
"Lists": [
{
"key": "1. item1",
"val": "First ordered list item"
},
{
"key": "2. item2",
"val": "Second ordered list item"
},
{
"key": "⋅⋅1. Item",
"val": "Ordered sub-list item"
},
{
"key": "* Item",
"val": "Unordered list item"
},
{
"key": "⋅⋅* Item",
"val": "Unordered sub-list item"
}
],
"Links": [
{
"key": "\\[link text\\](https://duckduckgo.com)",
"val": "Inline-style link"
},
{
"key": "\\[link text\\](https://duckduckgo.com \"DDG Home\")",
"val": "Inline-style link with title"
},
{
"key": "\\[Reference-style link\\]\\[Arbitrary case-insensitive reference text\\]",
"val": "Reference style link"
},
{
"key": "\\[Use numbers for reference-style link definitions\\]\\[1\\]",
"val": "Links with a reference number. The number needs to be defined as \\[1\\]: http://slashdot.org"
}
],
"Images": [
{
"key": "!\\[alt text\\](https://github.com/n48.png \"Logo Title\")",
"val": "Inline style"
},
{
"key": "\\[alt text\\][logo\\]",
"val": "The reference style. Reference need to be declared as \\[logo\\]: https://github.com/adam-p/markdown-here/raw/master/src/common/images/icon48.png \"Logo Title Text 2\""
}
],
"Code and Syntax Highlighting": [
{
"key": "`code`",
"val": "Inline code has back-ticks around it"
},
{
"key": "``` Code blocks ```",
"val": "Blocks of code are either fenced by lines with three back-ticks or are indented with four spaces"
}
],
"Blockquotes": [
{
"key": "> Blockquotes",
"val": "Blockquotes are very handy in email to emulate reply text"
}
],
"Inline HTML": [
{
"key": "<ul>list</ul>",
"val": "You can use the raw HTML in your Markdown"
}
],
"Horizontal Rule": [
{
"key": "---",
"val": "You can get a horizontal rule by typing three or more hyphens (-), asterisks (*) or underscore (_)"
}
]
}
}

View File

@ -1,7 +1,7 @@
{
"id": "mercurial_cheat_sheet",
"name": "Mercurial(hg)",
"description": "Mercurial(hg) cheat sheet",
"description": "Mercurial(hg) is a free, distributed source control management tool",
"metadata": {
"sourceName": "Cheatography",
"sourceUrl": "http://www.cheatography.com/codeshane/cheat-sheets/mercurial-hg/"

View File

@ -0,0 +1,96 @@
{
"id": "microsoft_word_cheat_sheet",
"name": "Microsoft Word 2010",
"description": "Common tasks and formatting shortcuts",
"metadata": {
"sourceName": "Dummies",
"sourceUrl": "http://www.dummies.com/how-to/content/word-2010-for-dummies-cheat-sheet.html"
},
"aliases": [
"ms word",
"winword"
],
"template_type": "keyboard",
"section_order": [
"Common Tasks",
"Formatting"
],
"sections": {
"Common Tasks": [
{
"val": "Save",
"key": "[Ctrl] [S]"
},
{
"val": "Navigate (Find/Search)",
"key": "[Ctrl] [F]"
},
{
"val": "Cut",
"key": "[Ctrl] [X]"
},
{
"val": "Copy",
"key": "[Ctrl] [C]"
},
{
"val": "Paste",
"key": "[Ctrl] [V]"
},
{
"val": "Select All",
"key": "[Ctrl] [A]"
},
{
"val": "Print",
"key": "[Ctrl] [P]"
},
{
"val": "Undo",
"key": "[Ctrl] [Z]"
},
{
"val": "Redo",
"key": "[Ctrl] [Y]"
}
],
"Formatting": [
{
"val": "Make Letters Bold",
"key": "[Ctrl] [B]"
},
{
"val": "Make Letters Italic",
"key": "[Ctrl] [I]"
},
{
"val": "Underline Letters",
"key": "[Ctrl] [U]"
},
{
"val": "Create a Nonbreaking Space",
"key": "[Ctrl] [Shift] [Space]"
},
{
"val": "Create a Nonbreaking Hyphen",
"key": "[Ctrl] [Shift] [Hyphen]"
},
{
"val": "Decrease Font Size by 1 value",
"key": "[Ctrl] [Shift] [<]"
},
{
"val": "Increase Font Size by 1 value",
"key": "[Ctrl] [Shift] [>]"
},
{
"val": "Remove Paragraph or Character Formatting",
"key": "[Ctrl] [Space]"
},
{
"val": "Paste Special",
"key": "[Alt] [Ctrl] [V]"
}
]
}
}

View File

@ -1,6 +1,7 @@
{
"id": "minecraft_cheat_sheet",
"name": "Minecraft Shortcuts",
"description": "Minecraft is a sandbox video game developed and published by Mojang",
"template_type": "keyboard",
"section_order": [
"Movement",
@ -153,4 +154,4 @@
}
]
}
}
}

View File

@ -0,0 +1,347 @@
{
"id": "mongodb_cheat_sheet",
"name": "MongoDB",
"template_type": "terminal",
"description": "An open-source, scalable, high-performance, document database with a dynamic schema written in the C++ programming language.",
"metadata": {
"sourceName": "Codecentric",
"sourceUrl": "https://blog.codecentric.de/files/2012/12/MongoDB-CheatSheet-v1_0.pdf"
},
"aliases": [
"mongo db",
"mongo db shell"
],
"section_order": [
"Basic Conceptes & Shell Commands",
"BSON Types",
"Inserting Documents",
"Finding Documents",
"Finding Documents using Operators",
"Updating Documents",
"Removing Documents",
"Working with Indexes",
"Indexes - Hints & Stats",
"Top & Stats System Commands",
"Pipeline Stages",
"Comparison with SQL",
"Replica Sets",
"Sharding",
"Durability of Writes"
],
"sections": {
"Basic Conceptes & Shell Commands": [
{
"key": "db.collection.<command>",
"val": "Db implicit handle to the used database, collection name of the used collection"
},
{
"key": "use <database>",
"val": "Switch to another database"
},
{
"key": "show collections",
"val": "Lists the available collections"
},
{
"key": "help",
"val": "Prints available commands and help"
}
],
"BSON Types": [
{
"key": "Double",
"val": "1"
},
{
"key": "String",
"val": "2"
},
{
"key": "Object",
"val": "3"
},
{
"key": "Array",
"val": "4"
},
{
"key": "Binary Data",
"val": "5"
},
{
"key": "Undefined",
"val": "6 (Deprecated)"
},
{
"key": "Obect Id",
"val": "7"
},
{
"key": "Boolean",
"val": "8"
},
{
"key": "Date",
"val": "9"
},
{
"key": "Null",
"val": "10"
}
],
"Inserting Documents": [
{
"key": "db.collection.insert(<document or array of documents>,\\{keys,options\\})",
"val": "Insert a document or documents into collection"
}
],
"Finding Documents": [
{
"key": "db.collection.findOne()",
"val": "Find one arbitrary document"
},
{
"key": "db.collection.find().prettyPrint()",
"val": "Find all documents and using nice formatting"
},
{
"key": "db.collection.find(\\{\\}, \\{key:true, _id:false\\})",
"val": "Shows only the respective key of the collection"
},
{
"key": "db.collection.findOne(\\{'key':'value'\\})",
"val": "Find one document by corresponding attribute"
}
],
"Finding Documents using Operators": [
{
"key": "db.collection.find(\\{class:\\{$gt:P'\\}\\})",
"val": "Greater than / greater than or equal"
},
{
"key": "db.collection.find(\\{class:\\{$lte:P'\\}\\})",
"val": "Less than / less than or equal"
},
{
"key": "db.collection.find(\\{type:\\{$exists:true\\}\\})",
"val": "Does an attribute exist or not"
},
{
"key": "db.collection.find(\\{name:\\{$regex:^USS\\sE\\}\\})",
"val": "Perl-style pattern matching"
},
{
"key": "db.collection.find(\\{name:\\{$type:2\\}\\})",
"val": "Search by type of an element"
}
],
"Updating Documents": [
{
"key": "db.ships.update(\\{key1:value1\\}, \\{key2:value2\\})",
"val": "Replaces the whole document"
},
{
"key": "db.collection.update(\\{key:value\\},\\{$set : \\{operator:opt, class:c\\}\\})",
"val": "Sets / changes certain attributes of a given document"
},
{
"key": "db.collection.update(\\{key:value\\},\\{$unset : \\{operator : 1\\}\\})",
"val": "Sets / changes certain attributes of a given document"
},
{
"key": "db.collection.update(\\{key:value\\},\\{$unset : \\{operator : 1\\}\\})",
"val": "Removes an attribute from a given document"
}
],
"Removing Documents": [
{
"key": "db.collection.remove(\\{key:value\\})",
"val": "Removes the document"
},
{
"key": "db.collection.remove(\\{key:\\{$regex:^USS\\sE\\}\\})",
"val": "Removes using operator"
}
],
"Working with Indexes": [
{
"key": "db.collection.ensureIndex(keys, options)",
"val": "Creating an index"
},
{
"key": "db.collection.dropIndex(keys, options)",
"val": "Dropping an index"
},
{
"key": "db.collection.ensureIndex(keys, options)",
"val": "Creating a compound index"
},
{
"key": "db.collection.dropIndex(\\{keys, options)",
"val": "Dropping a compound index"
},
{
"key": "db.collection.ensureIndex(keys, options, \\{unique : true\\})",
"val": "Creating a unique compound index"
}
],
"Indexes - Hints & Stats": [
{
"key": "db.collection.find (\\{key:value\\}).explain()",
"val": "Explains index usage"
},
{
"key": "db.collection.stats()",
"val": "Index statistics"
},
{
"key": "db.collection.totalIndexSize()",
"val": "Index size"
}
],
"Top & Stats System Commands": [
{
"key": "./mongotop",
"val": "Shows time spent per operations per collection"
},
{
"key": "./mongostat",
"val": "Shows snapshot on the MongoDB system"
}
],
"Pipeline Stages": [
{
"key": "$project",
"val": "Reshapes each document in the stream (add or remove) and for each input document, outputs one document"
},
{
"key": "$match",
"val": "Filters the document stream to allow only matching documents to pass and for each input document, outputs either one document (a match) or zero documents (no match)"
},
{
"key": "$group",
"val": "Groups input documents by a specified identifier expression and applies the accumulator expression(s) on all input documents and outputs single document"
},
{
"key": "$sort",
"val": "Reorders the document stream by a specified sort key and for each input document, outputs one document"
},
{
"key": "$skip",
"val": "Skips the first n documents where n is the specified skip number and passes the remaining documents unmodified to the pipeline"
},
{
"key": "$limit",
"val": "Passes the first n documents unmodified to the pipeline where n is the specified limit"
},
{
"key": "$unwind",
"val": "Deconstructs an array field from the input documents to output a document for each element and each input document, outputs n documents where n is the number of array elements and can be zero for an empty array"
}
],
"Comparison with SQL": [
{
"key": "$match",
"val": "WHERE"
},
{
"key": "$group",
"val": "GROUP BY"
},
{
"key": "$match",
"val": "HAVING"
},
{
"key": "$project",
"val": "SELECT"
},
{
"key": "$sort",
"val": "ORDER BY"
},
{
"key": "$limit",
"val": "LIMIT"
},
{
"key": "$sum",
"val": "SUM"
},
{
"key": "$sum",
"val": "COUNT"
},
{
"key": "$unwind",
"val": "JOIN"
}
],
"Replica Sets": [
{
"key": "Regular",
"val": "This is the most typical kind of node and act as a primary or secondary node"
},
{
"key": "Arbiter",
"val": "Arbiter nodes are only there for voting purposes and to ensure that number of nodes, even not that physical servers"
},
{
"key": "Delayed",
"val": "Often used as a disaster recovery node and the data stored here is usually a few hours behind the real working data"
},
{
"key": "Hidden",
"val": "Often used for analytics in the replica set"
}
],
"Sharding": [
{
"key": "1",
"val": "Every document has to define a shard-key"
},
{
"key": "2",
"val": "The value of the shard-key is immutable"
},
{
"key": "3",
"val": "The shard-key must be part of an index and it must be the first field in that index"
},
{
"key": "4",
"val": "There can be no unique index unless the shard-key is part of it and is then the first field"
},
{
"key": "5",
"val": "Reads done without specifying the shard-key will lead to requests to all the different shards"
},
{
"key": "6",
"val": "The shard-key must offer sufficient cardinality to be able to utilize all shards"
}
],
"Durability of Writes": [
{
"key": "\\{ w: <value>, j: <boolean>, wtimeout: <number> \\}",
"val": "The w option to request acknowledgment that the write operation has propagated to a specified number of mongod instances. j, write operation written to the journal and wtimeout prevent write from blocking indefinitely"
},
{
"key": "w : 1",
"val": "Requests acknowledgement that the write operation has propagated to the standalone mongod and is the default write concern for MongoDB"
},
{
"key": "w : 0",
"val": "Requests no acknowledgment of the write operation and might return information about socket exceptions and networking errors to the application"
},
{
"key": "w : 0 && j : true",
"val": "It prevails to request acknowledgement from the standalone mongod or the primary of a replica set"
},
{
"key": "w : \"majority\"",
"val": "It implies j: true along, the primary also writes to the on-disk journal before acknowledging the write"
}
]
}
}

View File

@ -1,6 +1,7 @@
{
"id": "morse_code_cheat_sheet",
"name": "Morse Code Cheat Sheet",
"name": "Morse Code Cheat Sheet",
"description": "Morse code is a method of transmitting text information as a series of on-off tones, lights, or clicks that can be directly understood by a skilled listener",
"metadata":{
"sourceName": "MorseCode",
"sourceUrl": "http://morsecode.scphillips.com/morse2.html"

View File

@ -1,190 +1,183 @@
{
"id": "nato_alphabet_cheat_sheet",
"name": "NATO Phonetic Alphabet",
"description": "International Radiotelephony Spelling Alphabet using Wikipedia pronunciation respellings for numeric codewords",
"metadata": {
"sourceName": "Wikipedia",
"sourceUrl": "https://en.wikipedia.org/wiki/NATO_phonetic_alphabet"
},
"aliases": [
"nato phonetic alphabet"
"id": "nato_alphabet_cheat_sheet",
"name": "NATO Phonetic Alphabet",
"description": "International Radiotelephony Spelling Alphabet using Wikipedia pronunciation respellings for numeric codewords",
"metadata": {
"sourceName": "Wikipedia",
"sourceUrl": "https://en.wikipedia.org/wiki/NATO_phonetic_alphabet"
},
"aliases": [
"nato phonetic alphabet"
],
"template_type": "reference",
"section_order": [
"Letters",
"Numbers"
],
"sections": {
"Letters": [
{
"val": "A",
"key": "Alfa"
},
{
"val": "B",
"key": "Bravo"
},
{
"val": "C",
"key": "Charlie"
},
{
"val": "D",
"key": "Delta"
},
{
"val": "E",
"key": "Echo"
},
{
"val": "F",
"key": "Foxtrot"
},
{
"val": "G",
"key": "Golf"
},
{
"val": "H",
"key": "Hotel"
},
{
"val": "I",
"key": "India"
},
{
"val": "J",
"key": "Juliett"
},
{
"val": "K",
"key": "Kilo"
},
{
"val": "L",
"key": "Lima"
},
{
"val": "M",
"key": "Mike"
},
{
"val": "N",
"key": "November"
},
{
"val": "O",
"key": "Oscar"
},
{
"val": "P",
"key": "Papa"
},
{
"val": "Q",
"key": "Quebec"
},
{
"val": "R",
"key": "Romeo"
},
{
"val": "S",
"key": "Sierra"
},
{
"val": "T",
"key": "Tango"
},
{
"val": "U",
"key": "Uniform"
},
{
"val": "V",
"key": "Victor"
},
{
"val": "W",
"key": "Whiskey"
},
{
"val": "X",
"key": "Xray"
},
{
"val": "Y",
"key": "Yankee"
},
{
"val": "Z",
"key": "Zulu"
},
{
"val": "- (hyphen)",
"key": "Dash"
}
],
"template_type": "reference",
"section_order": [
"Letters",
"Numbers"
],
"sections": {
"Letters": [
{
"val": "A",
"key": "Alfa"
},
{
"val": "B",
"key": "Bravo"
},
{
"val": "C",
"key": "Charlie"
},
{
"val": "D",
"key": "Delta"
},
{
"val": "E",
"key": "Echo"
},
{
"val": "F",
"key": "Foxtrot"
},
{
"val": "G",
"key": "Golf"
},
{
"val": "H",
"key": "Hotel"
},
{
"val": "I",
"key": "India"
},
{
"val": "J",
"key": "Juliett"
},
{
"val": "K",
"key": "Kilo"
},
{
"val": "L",
"key": "Lima"
},
{
"val": "M",
"key": "Mike"
},
{
"val": "N",
"key": "November"
},
{
"val": "O",
"key": "Oscar"
},
{
"val": "P",
"key": "Papa"
},
{
"val": "Q",
"key": "Quebec"
},
{
"val": "R",
"key": "Romeo"
},
{
"val": "S",
"key": "Sierra"
},
{
"val": "T",
"key": "Tango"
},
{
"val": "U",
"key": "Uniform"
},
{
"val": "V",
"key": "Victor"
},
{
"val": "W",
"key": "Whiskey"
},
{
"val": "X",
"key": "Xray"
},
{
"val": "Y",
"key": "Yankee"
},
{
"val": "Z",
"key": "Zulu"
},
{
"val": "- (hyphen)",
"key": "Dash"
}
],
"Numbers": [
{
"val": "0",
"key": "Zero - (ZEE-roh)"
},
{
"val": "1",
"key": "One - (WUN)"
},
{
"val": "2",
"key": "Two - (TOO)"
},
{
"val": "3",
"key": "Three - (TREE)"
},
{
"val": "4",
"key": "Four - (FOH-er)"
},
{
"val": "5",
"key": "Five - (FYF)"
},
{
"val": "6",
"key": "Six - (SIKS)"
},
{
"val": "7",
"key": "Seven - (SEV-en)"
},
{
"val": "8",
"key": "Eight - (AYT)"
},
{
"val": "9",
"key": "Nine - (NY-ner)"
},
{
"val": "100",
"key": "Hundred - (HUN-dred)"
},
{
"val": "1000",
"key": "Thousand - (TOW-ZEND)"
},
{
"val": ".(decimal point)",
"key": "Decimal - (DAY-SEE-MAL)"
}
]
}
}
"Numbers": [
{
"val": "0",
"key": "Zero - (ZEE-roh)"
},
{
"val": "1",
"key": "One - (WUN)"
},
{
"val": "2",
"key": "Two - (TOO)"
},
{
"val": "3",
"key": "Three - (TREE)"
},
{
"val": "4",
"key": "Four - (FOH-er)"
},
{
"val": "5",
"key": "Five - (FYF)"
},
{
"val": "6",
"key": "Six - (SIKS)"
},
{
"val": "7",
"key": "Seven - (SEV-en)"
},
{
"val": "8",
"key": "Eight - (AYT)"
},
{
"val": "9",
"key": "Nine - (NY-ner)"
},
{
"val": "100",
"key": "Hundred - (HUN-dred)"
},
{
"val": "1000",
"key": "Thousand - (TOW-ZEND)"
},
{
"val": ".(decimal point)",
"key": "Decimal - (DAY-SEE-MAL)"
}
]
}
}

View File

@ -1,9 +1,9 @@
{
"id": "nmap_cheat_sheet",
"name": "nmap",
"description": "Nmap Security Scanner",
"name": "Nmap",
"description": "Quick reference for Nmap Security Scanner",
"metadata": {
"sourceName": "nmap cookbook",
"sourceName": "Nmap Cookbook",
"sourceUrl": "http://nmapcookbook.blogspot.com.br/2010/02/nmap-cheat-sheet.html"
},
"template_type": "terminal",

View File

@ -0,0 +1,308 @@
{
"id": "nodejs_tutorials_cheat_sheet",
"name": "Node.js Tutorials",
"description": "A list of helpful resources for getting started with Node.js",
"metadata": {
"sourceName": "Stack Overflow",
"sourceUrl": "https://stackoverflow.com/questions/2353818/how-do-i-get-started-with-node-js"
},
"aliases": [
"nodejs tutorials",
"node tutorials",
"node.js tutorials"
],
"template_type": "links",
"section_order": [
"Tutorials",
"Developer Sites",
"Videos",
"Screencasts",
"Books",
"Courses",
"Blogs",
"Podcasts",
"JavaScript Resources",
"Node.js Modules",
"Other"
],
"sections": {
"Tutorials": [
{
"link": "http://nodeschool.io/",
"key": "NodeSchool.io"
},
{
"link": "https://github.com/maxogden/art-of-node/#the-art-of-node",
"key": "The Art of Node"
},
{
"link": "http://node.blog.com/2014/12/29/hello-world-with-node-and-express/",
"key": "Hello World Example"
},
{
"link": "http://www.nodebeginner.org/#hello-world",
"key": "Hello World"
},
{
"link": "http://www.nodebeginner.org/#building-the-application-stack",
"key": "Hello World Web Server"
},
{
"link": "http://nodeguide.com/",
"key": "Node.js Guide"
},
{
"link": "http://howtonode.org/express-mongodb",
"key": "Build a blog with Node.js, express and MongoDB"
},
{
"link": "http://net.tutsplus.com/tutorials/javascript-ajax/node-js-for-beginners/",
"key": "Node.js for Beginners"
},
{
"link": "http://javascriptissexy.com/learn-node-js-completely-and-with-confidence/",
"key": "Learn Node.js Completely and with Confidence"
},
{
"link": "http://blog.modulus.io/absolute-beginners-guide-to-nodejs",
"key": "Absolute Beginners Guide To Node.js"
}
],
"Developer Sites": [
{
"link": "http://www.joyent.com/developers/node",
"key": "Joyent's developer site for node"
}
],
"Videos": [
{
"link": "http://nodetuts.com/",
"key": "Node tuts"
},
{
"link": "http://www.youtube.com/watch?v=jo_B4LTHi3I",
"key": "Introduction to Node.js with the author of the languag, Ryan Dahl"
},
{
"link": "http://www.infoq.com/presentations/nodejs",
"key": "Node.js: Asynchronous Purity Leads to Faster Development"
},
{
"link": "http://www.infoq.com/presentations/Parallel-Programming-with-Nodejs",
"key": "Parallel Programming with Node.js"
},
{
"link": "http://vimeo.com/18077379",
"key": "Server-side JavaScript with Node, Connect & Express"
},
{
"link": "http://www.lynda.com/Nodejs-tutorials/Nodejs-First-Look/101554-2.html",
"key": "Node.js First Look"
},
{
"link": "http://www.youtube.com/watch?v=0_GNHWZHc-o",
"key": "Node.js with MongoDB"
},
{
"link": "http://www.youtube.com/watch?v=F6k8lTrAE2g",
"key": "Ryan Dahl's Google Tech Talk"
},
{
"link": "http://node.codeschool.com/levels/1",
"key": "Real Time Web with Node.js"
},
{
"link": "https://www.youtube.com/playlist?list=PL6gx4Cwl9DGBMdkKFn3HasZnnAqVjzHn_",
"key": "Node.js Tutorials for Beginners"
},
{
"link": "http://www.pluralsight.com/search/?searchTerm=Node.js",
"key": "Pluralsight courses (paid)"
}
],
"Screencasts": [
{
"link": "http://learnallthenodes.com/",
"key": "Learn All the Nodes"
},
{
"link": "http://nodetuts.com/",
"key": "NodeTuts"
},
{
"link": "http://nodecasts.net/",
"key": "NodeCasts"
},
{
"link": "http://www.develop.com/webcasts/watch/5318c4d5d588bf08c461f4b1/create-server-side-mvc-apps-with-node-js-and-express",
"key": "Create server-side MVC apps with Node.js and Express"
}
],
"Books": [
{
"link": "http://nodebeginner.org/",
"key": "The Node Beginner Book"
},
{
"link": "https://github.com/tj/masteringnode",
"key": "Mastering Node.js"
},
{
"link": "http://chimera.labs.oreilly.com/books/1234000001808/index.html",
"key": "Up and Running with Node.js"
},
{
"link": "http://www.manning.com/cantelon/",
"key": "Node.js in Action"
},
{
"link": "http://amzn.com/B008Z5OEUY",
"key": "Smashing Node.js: JavaScript Everywhere"
},
{
"link": "http://www.amazon.de/dp/389864829X",
"key": "Node.js & Co. (in German)"
},
{
"link": "http://nodejsbook.io/",
"key": "Sam's Teach Yourself Node.js in 24 Hours"
},
{
"link": "http://jsbooks.revolunet.com/",
"key": "A detailed list of free JavaScript Books"
},
{
"link": "http://book.mixu.net/node/index.html",
"key": "Mixu's Node Book"
},
{
"link": "http://pragprog.com/book/jwnode/node-js-the-right-way",
"key": "Node.js the Right Way: Practical, Server-Side JavaScript That Scale"
},
{
"link": "https://leanpub.com/webdevelopmentwithnodejs",
"key": "Beginning Web Development with Node.js"
},
{
"link": "http://www.packtpub.com/node-javascript-web-development/book",
"key": "Node Web Development"
},
{
"link": "http://nicholasjohnson.com/courses/nodejs/book",
"key": "NodeJS for Righteous Universal Domination!"
}
],
"Courses": [
{
"link": "http://node.codeschool.com/",
"key": "Real Time Web with Node.js"
},
{
"link": "http://www.develop.com/training-course/nodejs-featuring-node-npm-express-mocha-mongodb-with-mongoose",
"key": "Essential Node.js from DevelopMentor"
}
],
"Blogs": [
{
"link": "http://blog.nodejs.org/",
"key": "The Node.js blog"
},
{
"link": "http://howtonode.org/",
"key": "How to Node"
},
{
"link": "http://dailyjs.com/",
"key": "DailyJS"
},
{
"link": "http://blog.nodejitsu.com/",
"key": "Nodejitsu blog"
},
{
"link": "http://www.wilcoxd.com/whitepapers/node_js/",
"key": "Ryan Wilcox's Whitepaper"
},
{
"link": "http://www.devthought.com/",
"key": "devthought"
}
],
"Podcasts": [
{
"link": "http://nodeup.com/",
"key": "NodeUp"
}
],
"JavaScript Resources": [
{
"link": "http://yuiblog.com/crockford/",
"key": "Douglas Crockford's videos"
},
{
"link": "http://www.addyosmani.com/resources/essentialjsdesignpatterns/book/",
"key": "Essential JavaScript Design Patterns For Beginners"
},
{
"link": "http://bonsaiden.github.com/JavaScript-Garden/",
"key": "JavaScript garden"
},
{
"link": "http://oreilly.com/catalog/9780596806767",
"key": "Javascript Patterns"
},
{
"link": "http://oreilly.com/catalog/9780596517748/",
"key": "JavaScript: The Good Parts"
}
],
"Node.js Modules": [
{
"link": "http://npmjs.org/",
"key": "Search for registered Node.js modules"
},
{
"link": "http://www.freshblurbs.com/articles/important-node-js-modules.html",
"key": "Useful, yet biased and incomplete, selection of Node.js modules"
},
{
"link": "https://github.com/joyent/node/wiki/modules",
"key": "Wiki List on GitHub/Joyent/Node.js "
}
],
"Other": [
{
"link": "http://jsapp.us/",
"key": "JSApp.US - like jsfiddle, but for Node.js"
},
{
"link": "https://www.ebayopensource.org/index.php/VJET/NodeJS",
"key": "Node with VJET JS (for Eclipse IDE)"
},
{
"link": "http://coding.smashingmagazine.com/2011/09/16/useful-node-js-tools-tutorials-and-resources/",
"key": "Useful Node.js Tools, Tutorials and Resources"
},
{
"link": "http://runnable.com/",
"key": "Runnable.com - like jsfiddle, but for server side as well"
},
{
"link": "https://devcenter.heroku.com/categories/nodejs",
"key": "Getting Started with Node.js on Heroku"
},
{
"link": "https://blog.openshift.com/run-your-nodejs-projects-on-openshift-in-two-simple-steps/",
"key": "Getting Started with Node.js on Open-Shift"
},
{
"link": "http://passportjs.org/guide/",
"key": "Authentication using the Passport Module"
},
{
"link": "http://apostrophenow.org/",
"key": "In-Context, Open Source CMS built in Node.js"
}
]
}
}

View File

@ -1,9 +1,9 @@
{
"id": "openshot_cheat_sheet",
"name": "OpenShot",
"description": "Video Editor",
"description": "List of keyboard shorcuts for OpenShot video editor",
"metadata": {
"sourceName": "OpenShot Users Website",
"sourceName": "OpenShot Users",
"sourceUrl": "http://www.openshotusers.com/help/1.4/en/ar01s05.html"
},
"template_type": "keyboard",

View File

@ -0,0 +1,221 @@
{
"id": "perl_cheat_sheet",
"name": "Perl",
"description": "Essential Perl basic syntax, methods, functions, variables, references and data structure ",
"metadata": {
"sourceName": "Cheatography",
"sourceUrl": "http://www.cheatography.com/mishin/cheat-sheets/perl-reference-card/"
},
"template_type": "code",
"section_order": ["Input/Output", "Scalars and Strings", "Arrays and Lists", "Hashes", "Basic Syntax", "References and Data Structures", "System Interaction"],
"sections": {
"Input/Output": [{
"val": "Open file for input",
"key": "open(INFILE,\"in.txt\") or die;"
}, {
"val": "Open file with encoding",
"key": "open(INFILE,\"<:utf8\",\"file\");"
}, {
"val": "Open anonymous temp file",
"key": "open(TMP,\"+>\", undef);"
}, {
"val": "Open output file",
"key": "open(OUT,\">out.txt\") or die;"
}, {
"val": "Open file for append",
"key": "open(LOG,\">>my.log\") or die;"
}, {
"val": "Get next line",
"key": "$line = <INFILE>;"
}, {
"val": "Slurp infile",
"key": "@lines = <INFILE>;"
}, {
"val": "Print to STDERR",
"key": "print STDERR \"Warning 1.\\n\";"
}, {
"val": "Close filehandle",
"key": "close INFILE;"
}],
"Scalars and Strings": [{
"val": "Discard trailing \\n",
"key": "chomp($str);"
}, {
"val": "$v becomes trailing char",
"key": "$v = chop($str);"
}, {
"val": "String comparison",
"key": "eq, ne, lt, gt, le, ge, cmp"
}, {
"val": "Find index of $x in $str,",
"key": "$v = index($str, $x);"
}, {
"val": "Starting from left or right",
"key": "$v = rindex($str, $x);"
}, {
"val": "Extract substring",
"key": "$v = substr($str, $strt, $len);"
}, {
"val": "Count the digits in $sky",
"key": "$cnt = $sky =~ tr\/0-9\/\/;"
}, {
"val": "Change non-alphas to space",
"key": "$str =~ tr\/a-zA-Z\/\/cs;"
}, {
"val": "Format string",
"key": "$v = sprintf(“%10s %08d”,$s,$n);"
}],
"Arrays and Lists": [{
"val": "Array initialization",
"key": "@a = (1..5);"
}, {
"val": "Number of elements in @a",
"key": "$i = @a;"
}, {
"val": "Swap $a and $b",
"key": "($a, $b) = ($b, $a);"
}, {
"val": "Access to index 1",
"key": "$x = $a\\[1\\];"
}, {
"val": "Last index in @a",
"key": "$i = $#a;"
}, {
"val": "Appends $s to @a",
"key": "push(@a, $s);"
}, {
"val": "Removes last element",
"key": "$a = pop(@a);"
}, {
"val": "Remove last char (per el.)",
"key": "chop(@a);"
}, {
"val": "Removes first element",
"key": "$a = shift(@a);"
}, {
"val": "Reverse @a",
"key": "reverse(@a);"
}, {
"val": "Sort numerically",
"key": "@a = sort\\{$ela <=> $elb\\}(@a);"
}, {
"val": "Split string into @a",
"key": "@a = split(\/-\/,$s);"
}],
"Hashes": [{
"val": "Hash initialization",
"key": "%h=(k1 => “val1”,k2 => 3);"
}, {
"val": "Recall value",
"key": "$val = $map\\{k1\\};"
}, {
"val": "Array of keys and values",
"key": "@a = %h;"
}, {
"val": "Create hash from array",
"key": "%h = @a;"
}, {
"val": "Iterate over list of keys",
"key": "foreach $k (keys(%h))\\{..\\}"
}, {
"val": "Iterate over list of values",
"key": "foreach $v (vals(%h))\\{..\\}"
}, {
"val": "Iterate over key-value-pairs",
"key": "while (($k,$v)=each %h)\\{..\\}"
}, {
"val": "Delete key",
"key": "delete $h\\{k1\\};"
}],
"Basic Syntax": [{
"val": "Read command line params",
"key": "($a, $b) = shift(@ARGV);"
}, {
"val": "Define subroutine",
"key": "sub p\\{my $var = shift; ...\\}"
}, {
"val": "Execute subroutine",
"key": "p(“bla”);"
}, {
"val": "Conditional",
"key": "if(expr)\\{\\} elsif \\{\\} else \\{\\}"
}, {
"val": "Negative conditional",
"key": "unless (expr)\\{\\}"
}, {
"val": "While-loop",
"key": "while (expr)\\{\\}"
}, {
"val": "Until-loop",
"key": "until (expr)\\{\\}"
}, {
"val": "Postcheck until-loop",
"key": "do \\{\\} until (expr)"
}, {
"val": "For-loop",
"key": "for($i=1; $i<=10; $i++)\\{\\}"
}, {
"val": "Foreach-loop",
"key": "foreach $i (@list)\\{\\}"
}, {
"val": "End loop, skip to next, jump to top",
"key": "last, next, redo"
}],
"References and Data Structures": [{
"val": "Reference to array",
"key": "$aref = \\@a;"
}, {
"val": "Anonymous array",
"key": "$aref = \\[1,\"foo\",undef,13\\];"
}, {
"val": "Access element of array",
"key": "[$el = $aref->\\[0\\];] / [$el = @\\{$aref\\}\\[0\\];]"
}, {
"val": "Copy array",
"key": "$aref2 = \\[@\\{$aref1\\}\\];"
}, {
"val": "Reference to hash",
"key": "$href = \\%h;"
}, {
"val": "Anonymous hash",
"key": "$href =\\{APR => 4,AUG => 8\\};"
}, {
"val": "Access element of hash",
"key": "[$el = $href->\\{APR\\};] / [$el = %\\{$href\\}\\{APR\\};]"
}, {
"val": "Copy hash",
"key": "$href2 = \\{%\\{$href1\\}\\};"
}, {
"val": "Checks if $r points to hash",
"key": "if (ref($r) eq \"HASH\") \\{\\}"
}, {
"val": "2-dim array",
"key": "@a = (\\[1, 2\\],\\[3, 4\\]);"
}, {
"val": "Access 2-dim array",
"key": "$i = $a\\[0\\]\\[1\\];"
}],
"System Interaction": [{
"val": "System call",
"key": "system(“cat $f|sort -u>$f.s”);"
}, {
"val": "Catch output",
"key": "@a = readpipe(“lsmod”);"
}, {
"val": "Catch output",
"key": "$today = “Today: “.date;"
}, {
"val": "Change root",
"key": "chroot(“\/home\/user\/”);"
}, {
"val": "Operate on all c-files",
"key": "while (<*.c>) \\{\\}'"
}, {
"val": "Delete file",
"key": "unlink(“\/tmp\/file”);"
}, {
"val": "File test",
"key": "if (-f “file.txt”)\\{...\\}"
}]
}
}

View File

@ -1,9 +1,9 @@
{
"id": "perldoc_cheat_sheet",
"name": "perldoc",
"description": "Perl Documentation",
"description": "Perl Programming Documentation",
"metadata": {
"sourceName": "perldoc Manual",
"sourceName": "PERL",
"sourceUrl": "http://perldoc.perl.org/perldoc.html"
},
"template_type": "terminal",
@ -12,11 +12,11 @@
"Usage": [
{
"key": "[perldoc <option>]",
"val": "start perldoc"
"val": "Start perldoc"
},
{
"key": "[perldoc perldoc]",
"val": "perldoc help"
"val": "Perldoc help"
}
],
"Module Options": [

View File

@ -0,0 +1,124 @@
{
"id": "php_cheat_sheet",
"name": "PHP",
"description": "List of common php functions",
"template_type": "code",
"section_order": [
"php array functions",
"php string functions",
"regular expressions syntax"
],
"sections": {
"php array functions": [{
"val": "values present in first argument but not in other arguments",
"key": "array_diff()"
}, {
"val": "flipped array on success else null",
"key": "array_flip()"
}, {
"val": "values present in first argument and in other arguments",
"key": "array_intersect()"
}, {
"val": "merge one or more arrays in the first argument",
"key": "array_merge()"
}, {
"val": "pop the element off the end of array",
"key": "array_pop()"
}, {
"val": "push one or more elements onto the end of array",
"key": "array_push()"
}, {
"val": "reverse array elements",
"key": "array_reverse()"
}, {
"val": "count all elements in array",
"key": "count()"
}, {
"val": "searches for needle in array and returns key",
"key": "array_search()"
}],
"php string functions":[{
"val": "return part of a string",
"key": "substr()"
}, {
"val": "output one or more string",
"key": "echo"
}, {
"val": "position of first occurrence of case insensitive substring",
"key": "strpos()"
}, {
"val": "make string lowercase",
"key": "strtolower()"
}, {
"val": "make string uppercase",
"key": "strtoupper()"
}, {
"val": "reverse a string",
"key": "strrev()"
}, {
"val": "returns string length",
"key": "strlen()"
}, {
"val": "convert a string to array",
"key": "str_split()"
}, {
"val": "binary safe string comparison",
"key": "strcmp()"
}, {
"val": "translate characters or replace substrings",
"key": "strtr()"
}, {
"val": "output a string",
"key": "print"
}],
"regular expressions syntax":[{
"val": "start of string",
"key": "^"
}, {
"val": "end of string",
"key": "$"
}, {
"val": "any single character",
"key": "."
}, {
"val": "a or b",
"key": "(a|b)"
}, {
"val": "group section",
"key": "(...)"
}, {
"val": "in range (a, b or c)",
"key": "[abc]"
}, {
"val": "not in range",
"key": "[^abc]"
}, {
"val": "zero or one of a",
"key": "a?"
}, {
"val": "zero or more of a",
"key": "a*"
}, {
"val": "zero or more, ungreedy",
"key": "a*?"
}, {
"val": "one or more of a",
"key": "a+"
}, {
"val": "one or more, ungreedy",
"key": "a+?"
}, {
"val": "exactly 3 of a",
"key": "a{3}"
}, {
"val": "3 or more of a",
"key": "a{3,}"
}, {
"val": "up to 6 a",
"key": "a{,6}"
}, {
"val": "3 to 6 of a",
"key": "a{3,6}"
}]
}
}

View File

@ -0,0 +1,82 @@
{
"id": "phpstorm_osx_cheat_sheet",
"name": "JetBrains PHPStorm IDE (OS X)",
"descriptions": "Keyboard shortcuts for OS X version PHPStorm IDE, a PHP IDE developed by JetBrains",
"metadata": {
"sourceName": "OverAPI",
"sourceUrl": "http://overapi.com/static/cs/PhpStorm_ReferenceCard.pdf"
},
"aliases": ["phpstorm os x", "phpstorm mac", "phpstorm macos", "phpstorm mac os"],
"template_type": "keyboard",
"section_order": ["General", "Productivity", "Editing", "Searching/Replacing", "Navigation"],
"sections": {
"General": [{
"key": "[⌘] [0...9]",
"val": "Open/close corresponding tool window"
}, {
"key": "[Shift] [Alt] [I]",
"val": "Inspect current file with current profile"
}, {
"key": "[⌘] [S]",
"val": "Save"
}],
"Productivity": [{
"key": "[⌘] [O]",
"val": "Open any class"
}, {
"key": "[Shift] [⌘] [O]",
"val": "Open any file"
}, {
"key": "[Ctrl] [Space]",
"val": "Code completion"
}, {
"key": "[⌘] [N]",
"val": "(In project view) Create new..."
}],
"Editing": [{
"key": "[⌘] [/]",
"val": "Comment or uncomment with line comment"
}, {
"key": "[⌘] [Shift] [/]",
"val": "Comment or uncomment with block comment"
}, {
"key": "[Opt] [⌘] [L]",
"val": "Reformat code"
}, {
"key": "[Ctrl] [Opt] [O]",
"val": "Optimize imports"
}, {
"key": "[Ctrl] [Opt] [I]",
"val": "Auto indent lines"
}],
"Searching/Replacing": [{
"key": "[Shift] [Shift]",
"val": "Search everywhere"
}, {
"key": "[⌘] [F]",
"val": "Find"
}, {
"key": "[⌘] [G]",
"val": "Find next"
}, {
"key": "[Shift] [⌘] [G]",
"val": "Find previous"
}, {
"key": "[⌘] [R]",
"val": "Replace"
}],
"Navigation": [{
"key": "[⌘] [L]",
"val": "Go to line"
}, {
"key": "[⌘] [E]",
"val": "Recent files"
}, {
"key": "[⌘] [Shift] [Backspace]",
"val": "Go to last edit location"
}, {
"key": "[⌘] [B]",
"val": "Go to declaration"
}]
}
}

View File

@ -2,7 +2,7 @@
"id": "processing_lang_cheat_sheet",
"name": "Processing",
"metadata": {
"sourceName": "Processing.org",
"sourceName": "Processing",
"sourceUrl": "https://www.processing.org/reference/"
},
"template_type": "terminal",
@ -237,4 +237,4 @@
}
]
}
}
}

View File

@ -1,6 +1,7 @@
{
"id": "redis_cheat_sheet",
"name": "Redis Commands",
"description": "Redis is a data structure server. It is open-source, networked, in-memory, and stores keys with optional durability",
"metadata": {
"sourceName": "Redis",
"sourceUrl": "http://redis.io/commands"

View File

@ -3,9 +3,13 @@
"name": "Rust Types",
"description": "Rust Language object types",
"metadata": {
"sourceName": "The Rust Reference",
"sourceName": "Rust Lang",
"sourceUrl": "https://doc.rust-lang.org/stable/reference.html#types"
},
"aliases": [
"rust objects",
"rust object types"
],
"section_order": [
"Primitive Types",
"Machine Types",
@ -22,7 +26,7 @@
"Primitive Types": [
{
"key": "bool",
"val": "boolean, true or false"
"val": "Boolean, True or False"
}
],
"Machine Types": [
@ -62,37 +66,37 @@
"Machine-dependent Integer Types": [
{
"key": "usize",
"val": "Unsigned integer type with the same number of bits as the platform's pointer type."
"val": "Unsigned integer type with the same number of bits as the platform's pointer type"
},
{
"key": "isize",
"val": "Signed integer type with the same number of bits as the platform's pointer type."
"val": "Signed integer type with the same number of bits as the platform's pointer type"
}
],
"Textual Types": [
{
"key": "char",
"val": "A Unicode scalar value (i.e. a code point that is not a surrogate), represented as a 32-bit unsigned word in the 0x0000 to 0xD7FF or 0xE000 to 0x10FFFF range."
"val": "A Unicode scalar value (i.e. a code point that is not a surrogate), represented as a 32-bit unsigned word in the 0x0000 to 0xD7FF or 0xE000 to 0x10FFFF range"
},
{
"key": "str",
"val": "Unicode string, represented as an array of 8-bit unsigned bytes holding a sequence of UTF-8 code points."
"val": "Unicode string, represented as an array of 8-bit unsigned bytes holding a sequence of UTF-8 code points"
}
],
"Tuple Types": [
{
"key": "tuple",
"val": "Tuple types and values are denoted by listing the types or values of their elements, respectively, in a parenthesized, comma-separated list."
"val": "Tuple types and values are denoted by listing the types or values of their elements, respectively, in a parenthesized, comma-separated list"
}
],
"Array and Slice Types": [
{
"key": "array",
"val": "An array has a fixed size, and can be allocated on either the stack or the heap."
"val": "An array has a fixed size, and can be allocated on either the stack or the heap"
},
{
"key": "slice",
"val": "A slice is a 'view' into an array. It doesn't own the data it points to, it borrows it."
"val": "A slice is a 'view' into an array. It doesn't own the data it points to, it borrows it"
},
{
"key": "vector",
@ -102,35 +106,35 @@
"Structure Types": [
{
"key": "struct",
"val": "The memory layout of a struct is undefined by default to allow for compiler optimizations like field reordering, but it can be fixed with the #[repr(...)] attribute."
"val": "The memory layout of a struct is undefined by default to allow for compiler optimizations like field reordering, but it can be fixed with the #[repr(...)] attribute"
},
{
"key": "tuple struct",
"val": "Just like a structure type, except that the fields are anonymous."
"val": "Just like a structure type, except that the fields are anonymous"
},
{
"key": "unit-like struct",
"val": "Like a structure type, except that it has no fields. The one value constructed by the associated structure expression is the only value that inhabits such a type."
"val": "Like a structure type, except that it has no fields. The one value constructed by the associated structure expression is the only value that inhabits such a type"
}
],
"Enumerated Types": [
{
"key": "enumerated type",
"val": "A nominal, heterogeneous disjoint union type, denoted by the name of an enum item. "
"val": "A nominal, heterogeneous disjoint union type, denoted by the name of an enum item"
},
{
"key": "enum item",
"val": "Declares both the type and a number of variant constructors, each of which is independently named and takes an optional tuple of arguments."
"val": "Declares both the type and a number of variant constructors, each of which is independently named and takes an optional tuple of arguments"
}
],
"Pointer Types": [
{
"key": "reference (&)",
"val": "Point to memory owned by some other value."
"val": "Point to memory owned by some other value"
},
{
"key": "raw (*)",
"val": "Pointers without safety or liveness guarantees."
"val": "Pointers without safety or liveness guarantees"
}
]
}

View File

@ -0,0 +1,132 @@
{
"id": "scala_cheat_sheet",
"name": "Scala",
"description": "Scala is a programming language for general software applications",
"metadata": {
"sourceName": "Scala-Lang",
"sourceUrl": "http://docs.scala-lang.org/cheatsheets/"
},
"template_type": "terminal",
"section_order": [ "Program Compilation and Execution",
"Variables",
"Statements",
"Functions",
"Data structures",
"Packages"],
"sections": {
"Program Compilation and Execution" : [
{
"key" : "scalac Hello.j­ava",
"val" : "Compile Scala File"
},
{
"key" : "scala Hello",
"val" : "Execute Scala Program"
},
{
"key" : "scala",
"val" : "Start Scala interactive shell"
}
],
"Variables": [
{
"key" : "var x = 5",
"val" : "Variable (type inferred)"
},
{
"key" : "val x = 5",
"val" : "Constant (type inferred)"
},
{
"key" : "var x: Double = 5",
"val" : "Variable (explicit type)"
}
],
"Statements": [
{
"val" : "If Statement",
"key" : "if (check) happy else sad"
},
{
"val" : "While Loop",
"key" : "while (x < 5) \\{ println(x); x += 1 \\}"
},
{
"val" : "Do While Loop ",
"key" : "do \\{ println(x); x += 1 \\} while (x < 5)"
},
{ "val" : "For comprehension - basic iteration",
"key" : "for (i <- 1 to 5) \\{ println(i) \\}"
},
{ "val" : "For comprehension - cross product",
"key" : "for (x <- xs; y <- ys) yield x*y"
},
{
"val" : "Exce­ption Handling",
"key" : "try \\{ fun(); \\} catch \\{ case e: Exception => println(\"exception caught\"); \\}"
}
],
"Functions": [
{
"val" : "Define Function",
"key" : "def square(x: Int) = \\{ x * x \\}"
},
{
"val" : "Function with call by name parameters",
"key" : "def f(x: => R)"
},
{
"val" : "Anonymous function",
"key" : "(x:R) => x*x"
},
{
"val" : "Function currying",
"key" : "def zscore(mean:R, sd:R) = (x:R) => (x-mean)/sd"
}
],
"Data structures": [
{
"val" : "Tuple",
"key" : "(1, 2, 3)"
},
{
"val" : "Tuple unpacking",
"key" : "var (x,y,z) = (1,2,3)"
},
{
"val" : "List (immutable)",
"key" : "var xs = List(1,2,3)"
},
{
"val" : "Set (immutable)",
"key" : "var xs = Set(1,2,3)"
},
{
"val" : "Map (immutable)",
"key" : "Map(1 -> \"one\", 2 -> \"two\")"
}
],
"Packages": [
{
"val" : "Selective Import",
"key" : "import scala.collection.Vector"
},
{
"val" : "Wildcard Import",
"key" : "import scala.collection._"
},
{
"val" : "Renaming Import",
"key" : "import scala.collection.\\{ Vector => Vec28 \\}"
},
{
"val" : "Declare Package",
"key" : "package pkg"
}
]
}
}

View File

@ -0,0 +1,576 @@
{
"id" : "scratch_cheat_sheet",
"name" : "Scratch",
"metadata" : {
"sourceName" : "Scratch Wiki",
"sourceUrl" : "http://wiki.scratch.mit.edu/wiki/Scratch_Wiki:Table_of_Contents/Block_Types"
},
"template_type": "terminal",
"section_order" : [
"Control",
"Data",
"Events",
"Looks",
"Motion",
"Operators",
"Pen",
"Sensing",
"Sound",
"More Blocks"
],
"description" : "Basic Scratch Blocks. The blocks are grouped into categories, these are color-coded within Scratch.",
"sections" : {
"Motion" : [
{
"val" : "The block moves its sprite forward the specified amount of steps in the direction it is facing",
"key" : "move _ steps"
},
{
"val" : "The blocks turn their sprite the specified amount of degrees clockwise or counter-clockwise (depending on which block is used); this changes the direction the sprite is facing",
"key" : "turn right"
},
{
"val" : "The blocks turn their sprite the specified amount of degrees clockwise or counter-clockwise (depending on which block is used); this changes the direction the sprite is facing",
"key" : "turn left"
},
{
"val" : "The block points its sprite in the specified direction; this rotates the sprite",
"key" : "point in direction"
},
{
"val" : "The block points its sprite towards the mouse-pointer or another sprite depending on its costume center; this changes the sprite's direction and rotates the sprite",
"key" : "point towards"
},
{
"val" : "The block sets its sprite's X and Y position to the specified amounts. This block is related to the Set X to () and the Set Y to () blocks",
"key" : "go to x y"
},
{
"val" : "The block sets its sprite's X and Y position to that of the mouse-pointer or another sprite",
"key" : "go to"
},
{
"val" : "The block moves its sprite steadily to the specified X and Y position in the specified amount of seconds",
"key" : "glide _ secs to x y"
},
{
"val" : "The block moves its sprite costume center's X position by the specified amount",
"key" : "change x by"
},
{
"val" : "The block changes the selected sprite's X position to a specified value",
"key" : "set x to"
},
{
"val" : "The block moves its sprite's Y position by the specified amount",
"key" : "change y by"
},
{
"val" : "The block sets its sprite's Y (up and down) position to the specified amount",
"key" : "set y to"
},
{
"val" : "The block checks to see if its sprite is touching the edge of the screen with the move steps block; and if it is, the sprite will point in a direction that mirrors the direction from which it is coming",
"key" : "if on edge, bounce"
},
{
"val" : "The block changes the Rotation Style of the sprite in-project",
"key" : "set rotation style"
},
{
"val" : " The block holds its sprite's X position",
"key" : "x position"
},
{
"val" : "The block holds its sprite's Y position",
"key" : "y position"
},
{
"val" : "The block holds its sprite's direction, measured in degrees",
"key" : "direction"
}
],
"Looks" : [
{
"val" : "The block displays a speech bubble with the specified text for the sprite that runs it",
"key" : "say _ for _ secs"
},
{
"val" : "The block gives its sprite a speech bubble with the specified text — the speech bubble stays until an another speech or thought block is activated, or the stop sign is pressed",
"key" : "say _"
},
{
"val" : "The block give its sprite a thought bubble with the specified text, which stays for the specified amount of seconds",
"key" : "think _ for _ secs"
},
{
"val" : "The block gives its sprite a thought bubble with the specified text. The thought bubble stays until a speech or thought block with its text block empty is activated, or the stop sign is pressed",
"key" : "think _"
},
{
"val" : "If the block's sprite is hidden, it will show the sprite — if the sprite is already showing, nothing will change",
"key" : "show"
},
{
"val" : "If the block's sprite is shown, it will hide the sprite — if the sprite is already hidden, nothing happens",
"key" : "hide"
},
{
"val" : "The block changes its sprite's costume to a specified one",
"key" : "switch costume to _"
},
{
"val" : "The block changes its sprite's costume to the next in the costumes pane, but if the current costume is the last in the list, the block will loop to the first",
"key" : "next costume"
},
{
"val" : "The block changes the backdrop to the next in the list of backdrops, but if the current backdrop is the last in the list, the block will loop to the first",
"key" : "next backdrop"
},
{
"val" : "The block changes the Stage's backdrop to the specified one",
"key" : "switch backdrop to _"
},
{
"val" : "This block waits for scripts under any When Backdrop Switches to () blocks to finish",
"key" : "switch backdrop to _ and wait"
},
{
"val" : "The block changes the specified effect on its sprite by the specified amount. There are seven different effects to choose from: color, fisheye, whirl, pixelate, mosaic, brightness and ghost",
"key" : "change _ effect by _"
},
{
"val" : "The block sets the specified effect on its sprite to the specified amount. There are seven different effects to choose from: color, fisheye, whirl, pixelate, mosaic, brightness and ghost",
"key" : "set _ effect to _"
},
{
"val" : "This block resets all 7 graphic effects (color, fisheye, whirl, pixelate, mosaic, brightness and ghost) on its sprite",
"key" : "clear graphic effects"
},
{
"val" : "The block changes its sprite's size by the specified amount",
"key" : "change size by _"
},
{
"val" : "The block sets its sprite's size to the specified amount",
"key" : "set size to _ %"
},
{
"val" : "The block will place a sprite in front of all other sprites",
"key" : "go to front"
},
{
"val" : "The block changes its sprite's layer value by the specified amount",
"key" : "go back _ layers"
},
{
"val" : "The block holds its sprite's current costume number",
"key" : "costume #"
},
{
"val" : "The block holds the current backdrop name",
"key" : "backdrop name"
},
{
"val" : "The block hold the current backdrop number",
"key" : "backdrop #"
},
{
"val" : "The block holds its sprite's size",
"key" : "size"
}
],
"Sound" : [
{
"val" : "The block will play the specified sound",
"key" : "play sound _"
},
{
"val" : "The block will play the specified sound, pausing its script until the sound has finished playing",
"key" : "play sound _ until done"
},
{
"val" : "The block will stop any sounds currently being played on all sprites and the Stage",
"key" : "stop all sounds"
},
{
"val" : "The block will play the specified instrument for the specified amount of seconds using a MIDI drumset",
"key" : "play drum _ for _ beats"
},
{
"val" : "The block pauses its script for the specified amount of beats, which can be a decimal number",
"key" : "rest for _ beats"
},
{
"val" : "The block will play the specified note with a set MIDI instrument for the specified amount of beats",
"key" : "play note _ for _ beats"
},
{
"val" : "The block changes the set MIDI instrument that the Play Note () for () Beats block will play",
"key" : "set instrument to _"
},
{
"val" : "The block changes the volume of a sprite by the specified amount",
"key" : "change volume by _"
},
{
"val" : "The block sets its sprite's volume to the specified amount",
"key" : "set volume to _ %"
},
{
"val" : "The block changes the project's tempo by the specified amount",
"key" : "change tempo by _"
},
{
"val" : "The block sets the Scratch project's tempo, or speed, to the specified amount, using the unit bpm, or beats per minute",
"key" : "set tempo to _ bpm"
},
{
"val" : "The block holds the Scratch project's tempo",
"key" : "tempo"
},
{
"val" : "The block holds a sprite's or the Stage's volume",
"key" : "volume"
}
],
"Pen" : [
{
"val" : "The block removes all marks made by the pen or stamps",
"key" : "clear"
},
{
"val" : "When used in a script, the Sprite will produce a bitmap image of itself, which is stamped onto the Stage",
"key" : "stamp"
},
{
"val" : "The block will make its sprite continuously pen a trail wherever it moves (until the Pen Up block is used)",
"key" : "pen down"
},
{
"val" : "If a sprite is currently using the pen feature because of the Pen Down block, the block will stop it from continuing",
"key" : "pen up"
},
{
"val" : "The block sets the pen's color to the color chosen with the block's color-picker (eyedropper tool)",
"key" : "set pen color to \\[color\\]"
},
{
"val" : "The block sets the pen's color to the color chosen",
"key" : "set pen color to \\[number\\]"
},
{
"val" : "The block changes the pen's shade by the specified amount",
"key" : "change pen shade by _"
},
{
"val" : "The block sets the pen's shade to the specified amount",
"key" : "set pen shade to _"
},
{
"val" : "The block changes the pen's size by the specified amount",
"key" : "change pen size by _"
},
{
"val" : "The block sets the pen's size to the specified amount",
"key" : "set pen size to _"
}
],
"Data" : [
{
"val" : "The block simply holds its variable",
"key" : "variable"
},
{
"val" : "The block will set the specified variable to the given value: a string or number",
"key" : "set _ to _"
},
{
"val" : "The block will change the specified variable by a given amount",
"key" : "change _ by _"
},
{
"val" : "The block shows the specified variable's Stage monitor",
"key" : "show variable _"
},
{
"val" : "he block hides the specified variable's Stage monitor",
"key" : "hide variable _"
},
{
"val" : "The block simply reports the items of its list as a string",
"key" : "list"
},
{
"val" : "The block adds an item onto the end of the specified list, the item containing the given text",
"key" : "add _ to _"
},
{
"val" : "The block can delete the item inputted, the last item, or all items of the specified list depending on the option selected",
"key" : "delete _ of _"
},
{
"val" : "The block inserts an item containing the given text into the list, at the given position",
"key" : "insert _ at _ of _"
},
{
"val" : "The block replaces the specified item; in other words, it changes the item's content to the given text",
"key" : "replace item _ of _ with _"
},
{
"val" : "The block reports the value of the specified entry in a specified list",
"key" : "item _ of _"
},
{
"val" : "The block reports how many items a list contains",
"key" : "length of _"
},
{
"val" : "The block checks if any items in the specified list are equal to the given text",
"key" : "_ contains _"
},
{
"val" : "The block shows the specified list's Stage monitor",
"key" : "show list _"
},
{
"val" : "The block hides the specified list's Stage monitor",
"key" : "hide list _"
}
],
"Events" : [
{
"val" : "Scripts that wear this block will activate once the Green Flag has been clicked; these scripts can activate other scripts and enable the entire program",
"key" : "when green flag clicked"
},
{
"val" : "Scripts placed underneath this block will activate when the specified key is pressed",
"key" : "when _ key pressed"
},
{
"val" : "Scripts that wear the block will activate once its sprite or clone of the sprite is clicked. Contrary to its definite name, the block will also execute the clone's script when the clone is clicked on",
"key" : "when this sprite clicked"
},
{
"val" : "Scripts that wear this block will be invoked once the specified backdrop has been switched to on the Stage",
"key" : "when backdrop switches to _"
},
{
"val" : "It starts the script below it when a value (chosen by the dropdown menu) is greater than another value (entered by the number input). The available options are loudness, timer, and video motion",
"key" : "when _ > _"
},
{
"val" : "Scripts that begin with this block will be invoked once the specified broadcast has been sent by a calling script",
"key" : "when I receive _"
},
{
"val" : "Any scripts in any sprites that are hatted with the When I Receive () block that is set to a specified broadcast will activate",
"key" : "broadcast _"
},
{
"val" : "The block sends a broadcast throughout the whole Scratch project — any scripts that are halted with the When I Receive () block and are set to the broadcast will activate",
"key" : "broadcast _ and wait"
}
],
"Control" : [
{
"val" : "The block pauses its script for the specified amount of seconds — the wait can also be a decimal number",
"key" : "wait _ secs"
},
{
"val" : "Blocks held inside this block will loop a given amount of times, before allowing the script to continue",
"key" : "repeat _"
},
{
"val" : "Blocks held inside this block will be in a loop",
"key" : "forever"
},
{
"val" : "The block will check its boolean condition. If the condition is true, the blocks held inside it will run, and then the script involved will continue",
"key" : "if _ then"
},
{
"val" : "The block will check its boolean condition: if the condition is true, the code held inside the first C (space) will activate, and then the script will continue; if the condition is false, the code inside the second C will activate",
"key" : "if _ then else"
},
{
"val" : "The block pauses its script until the specified boolean condition is true",
"key" : "wait until _"
},
{
"val" : "It activates in a clone when it gets created",
"key" : "when I start as a clone"
},
{
"val" : "Blocks held inside this block will loop until the specified boolean statement is true, in which case the code beneath the block (if any) will execute",
"key" : "repeat until _"
},
{
"val" : "The block would deactivate all scripts in the project, stopping it completely",
"key" : "stop _"
},
{
"val" : "It creates a clone of the sprite in the argument. It can also clone the sprite it is running in, creating clones of clones, recursively",
"key" : "create clone of _"
},
{
"val" : "It deletes the clone it runs in",
"key" : "delete this clone"
}
],
"Sensing" : [
{
"val" : "The block checks if its sprite is touching the mouse-pointer, edge, or another sprite (a Reporter block holding the sprite's name can be used). If the sprite is touching the selected object, the block returns true; if it is not, it returns false",
"key" : "touching _"
},
{
"val" : "The block checks if its sprite is touching the specified color",
"key" : "touching color _ ?"
},
{
"val" : "The block checks if a color on its sprite is touching another color; if the color on its sprite is touching the color, the block returns true; if it is not, it returns false",
"key" : "color _ is touching _ ?"
},
{
"val" : "The block reports the distance (a measurement of pixels) between it and a specified sprite's costume center, or the mouse-pointer",
"key" : "distance to _"
},
{
"val" : "The block holds the most recent text imputed with the Ask () and Wait block",
"key" : "answer"
},
{
"val" : "The block checks if the specified key is pressed. If the key is being pressed, the block returns true; if it is not, it returns false",
"key" : "key _ pressed?"
},
{
"val" : "The block checks if the computer mouse's primary button is activated (being clicked)",
"key" : "mouse down?"
},
{
"val" : "he block holds (reports) the mouse-pointer's current Mouse X",
"key" : "mouse x"
},
{
"val" : "The block holds the mouse-pointer's current Mouse Y",
"key" : "mouse y"
},
{
"val" : "The block reports how loud the noise is that a microphone receives, on a scale of 0 to 100",
"key" : "loudness"
},
{
"val" : "It gets values of the video, either motion (on a scale of 1 to 100) or direction (which way the detected motion is going, measured on the same plane as sprite direction), on either the Stage, or the current sprite",
"key" : "video _ on _"
},
{
"val" : "It can turn the webcam on, off, or on flipped horizontally, depending on the argument",
"key" : "turn video _"
},
{
"val" : "It sets the transparency of the video stream to a certain value",
"key" : "set video transparency to _ %"
},
{
"val" : "The block starts at 0 when Scratch is launched and increases gradually; every second it will have increased by 1",
"key" : "timer"
},
{
"val" : "The block sets the timer's value back to 0.0",
"key" : "reset timer"
},
{
"val" : "The block will report a specified value of the specified sprite or the Stage",
"key" : "_ of _"
},
{
"val" : "It reports either the current local year, month, date, day of the week, hour, minutes, or seconds, depending on the argument",
"key" : "current _"
},
{
"val" : "It reports the amount of days (and fractions of a day) since 00:00:00 1 January 2000 (UTC)",
"key" : "days since 2000"
},
{
"val" : "It reports the username of the user viewing the project, which can be used for saving progress in a project, either with a variable encoder or cloud lists (once they are released with string-storage capabilities), as well as other purposes",
"key" : "username"
}
],
"Operators" : [
{
"val" : "The block adds two values and reports the result",
"key" : "_ add _"
},
{
"val" : "The block subtracts the second value from the first and reports the result",
"key" : "_ subtract _"
},
{
"val" : "The block multiplies the two values and reports the result",
"key" : "_ multiply _"
},
{
"val" : "The block divides the second value from the first and returns the result",
"key" : "_ devide _"
},
{
"val" : "The block picks a pseudorandom number ranging from the first given number to the second, including both endpoints",
"key" : "pick random _ to _"
},
{
"val" : "The block checks if the first value is less than the second value",
"key" : "_ less than _"
},
{
"val" : "The block checks if the first value is equal to the other value",
"key" : "_ equals _"
},
{
"val" : "The block checks if the first value is greater than the other value",
"key" : "_ greater than _"
},
{
"val" : "The block joins two boolean blocks so they both have to be true to return true. If they are both true, the block returns true; if they are not all true or none true, it returns false",
"key" : "_ and _"
},
{
"val" : "The block joins two boolean blocks so any one of them can be true to return true",
"key" : "_ or _"
},
{
"val" : "This block outputs the opposite boolean value of the condition (true and false)",
"key" : "not _"
},
{
"val" : "The block concatenates, or links the two values together and reports the result",
"key" : "join _ _"
},
{
"val" : "The block reports the specified character of the given text",
"key" : "letter _ of _"
},
{
"val" : "The block reports how many characters the given string contains",
"key" : "length of _"
},
{
"val" : "The block reports the remainder of the division when the first value is divided by the second",
"key" : "_ mod _"
},
{
"val" : "The block rounds the given number to the nearest integer",
"key" : "round _"
},
{
"val" : "The block performs a specified function on a given number and reports the result",
"key" : "_ of _"
}
],
"More blocks" : [
{
"val" : "This block is unique among the blocks for several reasons, including its lack of appearance in the Block Palette, its shape and color, and its edit menu when right-clicked",
"key" : "define custom block , custom block"
}
]
}
}

Some files were not shown because too many files have changed in this diff Show More