Skip to content

Instantly share code, notes, and snippets.

View greymd's full-sized avatar
😉
Nanchatte

Yasuhiro Yamada greymd

😉
Nanchatte
View GitHub Profile
@greymd
greymd / SCP-OJI-CHAT.md
Created March 30, 2023 21:51
SCP-OJI-CHAT

項目番号: SCP-OJI-CHAT

オブジェクトクラス: Safe

特別収容プロトコル: SCP-OJI-CHATは、財団所有の非接続コンピュータ上で保管されます。このソフトウェアの使用は、研究および検証目的に限定され、公式の財団コミュニケーションでの使用は禁止されています。SCP-OJI-CHATを使用する際は、権限を持つ研究者の監督下で行う必要があります。

説明: SCP-OJI-CHATは、「おじさん構文」と呼ばれる特徴的な文章を生成するソフトウェアです。このソフトウェアは、一般的な日本語の文法や慣用句に基づいて、独特な口調や文体で文章を作成します。生成される文章は、中年男性の親しみやすい口調や文体で、しばしば語尾に長音記号や絵文字が使用されることが特徴です。SCP-OJI-CHATは、特定の年齢層や文化背景に関連する表現を適切に使用し、受け手に独特な印象を与えます。

SCP-OJI-CHATは、感情や状況に応じた文章のバリエーションを生成する能力を持っています。これにより、ユーザーが与えられたシチュエーションに適した「おじさん構文」の文章を得ることができます。ただし、SCP-OJI-CHATはあくまでソフトウェアであり、自律的な意識や意志を持たないため、オブジェクトクラスSafeに分類されています。

@greymd
greymd / SCP-2014-6271.md
Created March 30, 2023 21:44
SCP-2014-6271

項目番号: SCP-2014-6271

オブジェクトクラス: Keter

特別収容プロトコル: SCP-2014-6271は、インターネットから隔離された環境でのみテストおよび研究が許可されます。SCP-2014-6271に関連する情報は、最低限の知識と操作ができる財団職員にのみ提供されます。SCP-2014-6271が検出された場合、セキュリティチームは速やかに脆弱性を修正するパッチを適用し、システムを再起動する必要があります。

説明: SCP-2014-6271は、一群の脆弱性を指すものであり、通称「Shellshock」として知られています。この脆弱性は、2014年9月に発見されたGNU Bashシェルに存在するもので、遠隔から悪意あるコードを実行することが可能です。

Shellshockは、環境変数に特別に作成された文字列を与えることで、不正なコードを実行できるようになります。これにより、攻撃者はシステム上で任意のコマンドを実行し、データを盗んだり、他のシステムへのアクセスを試みたり、DoS攻撃を行ったりすることができます。

@greymd
greymd / adjust_image.sh
Last active August 24, 2022 22:26
Shrink image, longest side 576 px, either side is ajusted to multiple of 64 px (for img2img)
#!/bin/bash
## Usage: adjust_image image.png
## => image.png will be shrinked.
## Require ImageMagick commands (convert, identify)
adjust_image() {
local imgpath="$1"
local outpath="$1"
longest_side=576
convert "$imgpath" -resize "$longest_side>" "$outpath"
read -r _width _height <<<"$(identify -format "%w %h" "$outpath")"
@greymd
greymd / aiueo.sh
Last active June 13, 2022 10:47
ポリバケツ語列挙
## 長音に対応した
nkf -w /usr/share/mecab/dic/ipadic/Noun*.csv | awk -F, '$0=$NF" "$NF' | teip -f 2 -- uconv -x latin | awk '/[aā]/&&/[iī]/&&/[uū]/&&/[eē]/&&/[oō]/' | sed -E -e'/('{[aā],[iī],[uū],[eē],[oō]}').*\1/d' | awk '{print length($1),$0}' | sort -un
## 長さランキング
nkf -w /usr/share/mecab/dic/ipadic/Noun*.csv | awk -F, '$0=$NF" "$NF' | teip -f 2 -- uconv -x latin | awk '/[aā]/&&/[iī]/&&/[uū]/&&/[eē]/&&/[oō]/' | sed -e/{'[aā].*[aā]','[iī].*[iī]','[uū].*[uū]','[eē].*[eē]','[oō].*[oō]'}/d | sort -u | awk '{print length($1),$0}' | sort -n
@greymd
greymd / teip2.md
Last active May 30, 2023 16:10
teip v2.0 でヤバい機能がついた件

teip v2.0 でヤバい機能がついた件

teip コマンド に関するお話

まとめ

  1. teip v2.0 に新機能:マッチオフロード機能
  • テープの穴をあける行の指定に外部コマンドが使えるようになった
  1. あるコマンドの抽出範囲のみを、範囲外は残したまま、別のコマンドで編集可能になる
@greymd
greymd / 全裸ネクタイ効果.md
Last active July 20, 2022 11:44
全裸ネクタイ効果

ぜんらねくたいこうか【全裸ネクタイ効果】

「全裸ネクタイのバイアス」とも。

漫画・アニメ・小説などの創作物において、極めて目立つツッコミ所が既にあるにもかかわらず、細々としたマイナーな指摘が先行する現象を指す。

作中で現実世界と比べておかしい点を指摘する際に用いられる表現。 また、指摘の内容が、作品が想定しているリアリティライン(現実レベルの度合い)を考慮していない状況でよく使われる。

指摘内容が特定の人がよく知る領域や、専門知識が必要な場合に発生しやすい。 知識をひけらかしたいといった欲求や、身近に感じているために期待するリアリティラインが作品の想定より高くなってしまう、内情をよく知るために自身の経験が想起されて創作として捉えられなくなってしまう、といった動機が存在すると考えられる。

@greymd
greymd / sudo新一.md
Last active March 3, 2024 16:41
sudo新一

 オレは高校生シェル芸人 sudo 新一。幼馴染で同級生の more 利蘭と遊園地に遊びに行って、黒ずくめの男の怪しげな rm -rf / 現場を目撃した。端末をみるのに夢中になっていた俺は、背後から近づいてきたもう1人の --no-preserve-root オプションに気づかなかった。 俺はその男に毒薬を飲まされ、目が覚めたら・・・ OS のプリインストールから除かれてしまっていた!

sudo がまだ $PATH に残っていると奴らにバレたら、また命を狙われ、他のコマンドにも危害が及ぶ』

 上田博士の助言で正体を隠すことにした俺は、 which に名前を聞かれて、とっさに『gnuplot』と名乗り、奴らの情報をつかむために、父親がシェル芸人をやっている蘭の $HOME に転がり込んだ。ところが、このおっちゃん・・・とんだヘボシェル芸人で、見かねた俺はおっちゃんになりかわり、持ち前の権限昇格能力で、次々と難タスクを解決してきた。おかげで、おっちゃんは今や世間に名を知られた名エンジニア、俺はといえばシェル芸 bot のおもちゃに逆戻り。クラスメートの convertojichattextimg にお絵かきコマンドと誤解され少年ワンライナーお絵かき団を結成させられる始末。

 ではここで、博士が作ってくれたメカを紹介しよう。最初は時計型麻酔 kill 。ふたについた照準器にあわせてエンターを押せば、麻酔シグナルが飛び出し、プロセスを瞬時に sleep させることができる。 次に、蝶ネクタイ型 banner 。裏についているダイヤルを調整すれば、ありとあらゆる大きさのメッセージを標準出力できる。必殺のアイテムなら fork 力増強シューズ。電気と磁力で足を刺激し、 :(){ :|:&amp; };: でプロセステーブ

@greymd
greymd / MyViewController.swift
Created February 2, 2020 18:57
UIStackView test
import UIKit
import PlaygroundSupport
class MyViewController : UIViewController {
override func viewDidLoad() {
view.backgroundColor = .white
let s1 = generateLabel()
let s2 = generateLabel()
let s3 = generateLabel()
@greymd
greymd / sudoku_nodejs_oneliner.sh
Last active July 20, 2022 11:45
Toriumi-san's sudoku solver
## original:
## https://twitter.com/hid_tori/status/1221415626465349635
## https://twitter.com/hid_tori/status/1221415683289780225
## https://twitter.com/hid_tori/status/1221415737375412224
## https://twitter.com/hid_tori/status/1221415770795728898
cat sudoku | node -e 'console.log((f=>(u=>u(u))(x=>f(y=>x(x)(y))))(f=>a=>((a,b)=>a.map(x=>x[3]).includes("*")?f(a.map(x=>x[3]!=="*"?x:[...x.slice(0,4),[...Array(9)].map((v,i)=>String(i+1)).filter(y=>!b[0][x[0]].concat(b[1][x[1]]).concat(b[2][x[2]]).includes(y))]).map(x=>x.length===4?x:x[4].length===1?[x[0],x[1],x[2],x[4][0]]:x.slice(0,4))):a)(a,a.reduce((x,y)=>(x[0][y[0]].push(y[3]),x[1][y[1]].push(y[3]),x[2][y[2]].push(y[3]),x),[...Array(3)].map(x=>[...Array(9)].map(y=>[]))).map(x=>x.map(y=>y.filter(z=>z!=="*")))))(require("fs").readFileSync("/dev/stdin","utf8").trim().split("\n").map((v,i)=>[i,v]).map(x=>[x[0],[...x[1].split("").entries()]]).flatMap(x=>x[1].map(y=>[x[0],...y])).map(x=>[x[0],x[1],Math.floor(x[0]/3)%3*3+Math.floor(x[1]/3),x[2]])).reduce((x,y)=>(x[
@greymd
greymd / MyViewController.swift
Last active January 21, 2020 23:44
Scroll text animation in Swift
import UIKit
import PlaygroundSupport
class MyViewController : UIViewController {
var label:UILabel!
var label2:UILabel!
let gap:CGFloat = 50
let rep:Float = Float.infinity
let shape:CAShapeLayer = {
return CAShapeLayer()