Skip to content

Instantly share code, notes, and snippets.

View format-number-with-si-prefix.js
function formatN (n) {
const unitList = ['y', 'z', 'a', 'f', 'p', 'n', 'u', 'm', '', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y'];
const zeroIndex = 8;
const nn = n.toExponential(2).split(/e/);
let u = Math.floor(+nn[1] / 3) + zeroIndex;
if (u > unitList.length - 1) {
u = unitList.length - 1;
} else
if (u < 0) {
u = 0;
View resize.scpt
global screenWidth
global screenHeight
tell (do shell script "/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution | tail -n 1") to set {screenWidth, screenHeight} to {word 2 as number, word 4 as number}
-- display dialog "screen: " & screenWidth & "x" & screenHeight
if screenWidth = 1200 then
-- display dialog "monitor U2410"
tell application "System Events"
@azu
azu / git-2.26.1-README.md
Last active May 1, 2020
Gitの認証情報を奪い取れるGit 2.26.0以下にある脆弱性について
View git-2.26.1-README.md

Git 2.26.0以下にある脆弱性

Git 2.26.0以下*1には、細工したリポジトリをgit cloneしたときに、 そのユーザーのCredential(たとえばGitHub.comをcloneするときに使う認証情報)を奪い取れる脆弱性があります。

📝 取得できる認証情報は credential.helper の設定に依存する

既にPoC(検証するためのコード)もあり、結構簡単なので是非Gitを2.26.1以上にアップデートしましょう。 git submoduleを使うと見た目ではわかりにくい攻撃もできるので、「気をつける」では回避は難しいです。

@jidaikobo-shibata
jidaikobo-shibata / calculate-region-and-insert.el
Last active Jun 27, 2019
Emacs(Elisp): calculate region and insert. 選択範囲の数式を計算して、次の行にinsertします。数字が羅列されている場合は、加算します。数字や式と自然な文章が混在している場合は、数式のみを計算します。
View calculate-region-and-insert.el
;;; ------------------------------------------------------------
;;; 選択範囲を計算してバッファに出力
;; gist-description: Emacs(Elisp): calculate region and insert. 選択範囲の数式を計算して、次の行にinsertします。数字が羅列されている場合は、加算します。数字や式と自然な文章が混在している場合は、数式のみを計算します。
;; gist-id: b967d6a7441f85aa541d
;; gist-name: calculate-region-and-insert.el
;; gist-private: nil
(defun add-number-grouping (number &optional separator)
"Add commas to NUMBER and return it as a string.
Optional SEPARATOR is the string to use to separate groups.
View gist:2212589
> perl -E 'say "生" & "死"'
生 Life U+751F \xe7\x94\x9f 11100111 10010100 10011111
死 Death U+6B7B \xe6\xad\xbb 11100110 10101101 10111011
愛 Love u+611B \xe6\x84\x9b 11100110 10000100 10011011
@kazuho
kazuho / setusergroups
Last active Nov 26, 2018
setuidgid w. support for supplementary groups
View setusergroups
#! /usr/bin/perl
use POSIX qw(setuid setgid);
use Unix::Groups qw(setgroups);
die "usage: setusergroups username child\n"
unless @ARGV >= 2;
my $username = shift @ARGV;
# get user entry
@sonots
sonots / gist:7670731
Last active Dec 29, 2015
out_forward って詰まると性能劣化する?
View gist:7670731
@fujiwara
fujiwara / installed2cpanfile
Last active Dec 19, 2015
ExtUtils::Installedで現在インストールされているモジュールからcpanfileを作る
View installed2cpanfile
$ perl installed2cpanfile > cpanfile
$ cpanm --installdeps .
@kazeburo
kazeburo / gist:2349121
Created Apr 10, 2012
Apache::BumpyLife
View gist:2349121
package Apache::BumpyLife;
use strict;
use warnings;
use Config;
use Apache::Constants ();
use constant IS_WIN32 => $Config{'osname'} eq 'MSWin32' ? 1 : 0;
our $VERSION = '0.01';
@riywo
riywo / nginx.conf
Created Jan 18, 2012
nginxでURIの先頭使ってbackend serverのportを決める
View nginx.conf
http {
map $uri $backend_port {
include port_map;
}
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
server {