Capture a video of a given X Window with gstreamer.
xwininfo| const NEW_CHARMAP = "\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x20!\"#$%&'{([])}*+-.\\/0123456789:;,<=>?@EeAaUuOoIiFfGgHhJjLl|WwMmNnBbDdTtPpQqRrKkCcSsZzVvXxYy^_`~"; | |
| function get_new_char_code(old_char_code){ | |
| return NEW_CHARMAP.indexOf(String.fromCharCode(old_char_code)); | |
| } | |
| function get_old_char_code(new_char_code){ | |
| return NEW_CHARMAP.charCodeAt(new_char_code); | |
| } | |
| #define STEP 12 | |
| void setup() { | |
| // 200 step per revolution motor driver on this pin. | |
| pinMode(STEP, OUTPUT); | |
| } | |
| void topSpeed_1Turn() { | |
| for (int i = 0; i < 200; i++) { | |
| // Issue 1 step. |
Here's a list of mildly interesting things about the C language that I learned mostly by consuming Clang's ASTs. Although surprises are getting sparser, I might continue to update this document over time.
There are many more mildly interesting features of C++, but the language is literally known for being weird, whereas C is usually considered smaller and simpler, so this is (almost) only about C.
struct foo {
struct bar {
int x;| F01DAB1E-FACE-BEEF-FEED-C1A551F1AB1E |
Putting cryptographic primitives together is a lot like putting a jigsaw puzzle together, where all the pieces are cut exactly the same way, but there is only one correct solution. Thankfully, there are some projects out there that are working hard to make sure developers are getting it right.
The following advice comes from years of research from leading security researchers, developers, and cryptographers. This Gist was [forked from Thomas Ptacek's Gist][1] to be more readable. Additions have been added from
| @echo off | |
| setlocal | |
| call :setESC | |
| cls | |
| echo %ESC%[101;93m STYLES %ESC%[0m | |
| echo ^<ESC^>[0m %ESC%[0mReset%ESC%[0m | |
| echo ^<ESC^>[1m %ESC%[1mBold%ESC%[0m | |
| echo ^<ESC^>[4m %ESC%[4mUnderline%ESC%[0m |
| //********************************************************// | |
| // HOW TO: | |
| // Create a file called devenv.pkgundef in the same directory as devenv.exe. | |
| // It's usually located at C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE | |
| // Then call "devenv.exe /updateconfiguration" from an elevated command prompt. | |
| // REMARKS: | |
| // Each GUID below represent a package that Visual Studio is loading. This is the | |
| // list of package that I personally don't ever use. You can modify the list of |