Skip to content

Instantly share code, notes, and snippets.

View vol4ok's full-sized avatar

Andrew Volkov vol4ok

View GitHub Profile
@vol4ok
vol4ok / gist:2587886
Created May 3, 2012 18:21
Split .ape and .flac and convert to .m4a (ALAC) or .mp3 on MacOS X
brew install flac ffmpeg cuetools # ставим нужные пакеты
# скачиваем cuetag.sh скрипт, например отсюда https://github.com/gumayunov/split-cue/blob/master/cuetag
ffmpeg -i 1.ape 1.flac # конвертируем во flac, так как libmac для APE не ставится на osx
cuebreakpoints 1.cue | shnsplit -o flac 1.flac #нарезаем на треки
cuetag 1.cue split-track*.flac #прописываем тэги (cuetag.sh ставится отдельно отдельно)
#конвертируем в ALAC
for f in split-track*.flac
do
@vol4ok
vol4ok / _pay_form.erb.html
Created September 20, 2011 06:56
rails + robokassa example
<form action="<%= @pay_desc['mrh_url'] %>" method="post">
<input type=hidden name=MrchLogin value="<%= @pay_desc['mrh_login'] %>">
<input type=hidden name=OutSum value="<%= @pay_desc['out_summ'] %>">
<input type=hidden name=InvId value="<%= @pay_desc['inv_id'] %>">
<input type=hidden name=Desc value="<%= @pay_desc['inv_desc'] %>">
<input type=hidden name=SignatureValue value="<%= @pay_desc['crc'] %>">
<input type=hidden name=Shp_item value="<%= @pay_desc['shp_item'] %>">
<input type=hidden name=IncCurrLabel value="<%= @pay_desc['in_curr'] %>">
<input type=hidden name=Culture value="<%= @pay_desc['culture'] %>">
<input type=submit value='Оплатить'>
@vol4ok
vol4ok / ast-walker.coffee
Created October 11, 2012 14:23
AST walker for esprima
Syntax =
AssignmentExpression: 'AssignmentExpression'
ArrayExpression: 'ArrayExpression'
BlockStatement: 'BlockStatement'
BinaryExpression: 'BinaryExpression'
BreakStatement: 'BreakStatement'
CallExpression: 'CallExpression'
CatchClause: 'CatchClause'
ConditionalExpression: 'ConditionalExpression'
ContinueStatement: 'ContinueStatement'
mkdir output
i=1
for f in *.jpg *.JPG
do
echo "$f -> photo-$i.jpg"
cp "$f" photo-$i.jpg
gm mogrify -resize 1920x1920 photo-$i.jpg
jpegtran -outfile output/photo-$i.jpg -copy none -optimize -perfect photo-$i.jpg
rm photo-$i.jpg
(( i++ ))
@vol4ok
vol4ok / drv_mgr.c
Created August 20, 2013 09:21
Driver manager module. Allow to load, start, stop and unload driver on all version of Windows
#include <windows.h>
#include "drv_mgr.h"
SC_HANDLE install_driver(const wchar_t *name, const wchar_t *path)
{
SC_HANDLE h_scm;
SC_HANDLE h_svc = INVALID_HANDLE_VALUE;
if (!path || !name)
return INVALID_HANDLE_VALUE;
@vol4ok
vol4ok / _linear-gradient.scss
Created July 31, 2013 10:31
linear-gradient mixin for scss
@mixin linear-gradient($from, $to) {
background: $from;
background: -webkit-gradient(linear, left top, left bottom, color-stop(0, $from), color-stop(1, $to));
background: -webkit-linear-gradient(top, $from, $to);
background: -moz-linear-gradient(top, $from, $to);
background: -ms-linear-gradient(top, $from, $to);
background: -o-linear-gradient(top, $from, $to);
background: linear-gradient(top, bottom, $from, $to);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$from}', endColorstr='#{$to}');
-ms-filter: quote(progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$from}', endColorstr='#{$to}'));
@vol4ok
vol4ok / gist:5727997
Created June 7, 2013 09:01
share local server to remote server via ssh
LOCAL_PORT = 3333
REMOTE_PORT = 2222
SSH_USER_HOST = "foo@var.com"
express = require "express"
{spawn} = require "child_process"
ssh = spawn('ssh', ['-N', '-R', "#{REMOTE_PORT}:localhost:#{LOCAL_PORT}", SSH_USER_HOST])
app = express()
@vol4ok
vol4ok / gist:5487093
Created April 30, 2013 07:11
Show the List of Installed Packages on Ubuntu or Debian and find the locations
dpkg --get-selections
dpkg -L <pkg-name>
@vol4ok
vol4ok / translit.coffee
Created April 19, 2013 09:53
Translit
String::translit = (->
L =
"А": "A", "а": "a", "Б": "B", "б": "b", "В": "V", "в": "v"
"Г": "G", "г": "g", "Д": "D", "д": "d", "Е": "E", "е": "e"
"Ё": "Yo", "ё": "yo", "Ж": "Zh", "ж": "zh", "З": "Z", "з": "z"
"И": "I", "и": "i", "Й": "Y", "й": "y", "К": "K", "к": "k"
"Л": "L", "л": "l", "М": "M", "м": "m", "Н": "N", "н": "n"
"О": "O", "о": "o", "П": "P", "п": "p", "Р": "R", "р": "r"
"С": "S", "с": "s", "Т": "T", "т": "t", "У": "U", "у": "u"
"Ф": "F", "ф": "f", "Х": "H", "х": "h", "Ц": "Ts", "ц": "ts"
{
"working_dir": "${project_path}",
"path": "C:\\Program Files\\nodejs;C:\\Users\\<USER_NAME>\\AppData\\Roaming\\npm",
"cmd": ["grunt", "--no-color"],
"shell": true
}