Loading

S.F. Info.

イスラエルエリカちゃん@syuu1228

2019/2/11 8:57:57

カーネル構造にかなり手を加えた「新しいWindows 10」が噂されている、みたいな話なんだけども、そこまで手を入れたものも10って呼ぶの… twitter.com/syuu1228/statu…

S.F.@SFPGMR

2019/2/11 10:26:41

しかしwebhookのペイロードの更新情報って、やっぱりおかしいよなあ。。仕様上の制約とあるんだろうか。更新情報はダイジェストなので、正確にはちゃんとgit diffして確認せよとか。。

2019/2/11 13:46:51

とりあえずこの問題はペイロードの情報は見ないで改めて更新情報をgit diffで取り直すことによって解消させた。

如月 二重 6@KisaragiHutae6

2019/2/9 14:54:40

ノートにスーパーマリオブラザーズを描きました。 https://t.co/560ROIyZcq

S.F.@SFPGMR

2019/2/11 7:39:42

久しぶりにブログを更新したが、markdownのレンダラにバグがあることを発見した。。

S.F. Blog:静的サイトジェネレータのアップデート(nginx→express)
はじめに去年からWebサーバをnginxからexpressにアップデートした。途中放置気味であったがようやくまとも動くようになったので、テストを兼ねてこの記事を書くことにする。約8か月振りのブログ更新となる。静的サイト・ジェネレータ私が今使っているServers Man VPSは月額467円のエントリープラン、メモリ1GB/HDD50GBのものを使用している。最初はメモリ256MBであったがだんだ...

2019/2/11 7:39:43

ヘッダ<hxx>のID。ヘッダ内のIDはヘッダ内のテキストをベースにして"-"でつないで生成してるのだが、日本語が混じるとそこで切れてしまうようだ。英語だと単語間がスペースあので単純にスペースを"-"でつなぐだけでよいが、日本語はそうはいかないよな。。多分それだな。。

2019/2/11 7:41:17

問題なのはIDはその文書内でユニークでないといけないのに、このバグのせいでIDが"-"だけになってたりして重複してしまってるのが非常にまずい。markdown.jsをアップデートするか、pegかなんかで書き直すか、単純にバグだけつぶすか。。。

2019/2/11 7:42:20

こんな感じになっちゃってんだよなあ。。
<h2 id="-">その他</h2>

2019/2/11 7:46:28

ほんとは日本語をurlエンコードするとかして、idに埋め込むべきなんだろうけど。。marked.jsって修正が大変なんだよなあ。。何しろ正規表現の塊のような代物だからね。。よくこんなの書いたなあってリスペクトはしてるんだけど。。

GitHub - markedjs/marked: A markdown parser and compiler. Built for speed.
A markdown parser and compiler. Built for speed. Contribute to markedjs/marked development by creating an account on GitHub.

2019/2/11 7:48:44

さあ、どうしようか。。なかなか「オレオレ言語」作りに戻れんわ。。

2019/2/11 8:03:32

以外にすぐわかった。。

heading(text, level, raw) {
return '<h'
+ level
+ ' id="'
+ this.options.headerPrefix
+ raw.toLowerCase().replace(/[^\w]+/g, '-')
 ・
(略)
 ・ 
}

raw.toLowerCase().replace(/[^\w]+/g, '-')

日本語が混じるとまずいわな。

webservices/marked.js at master · sfpgmr/webservices · GitHub
node.jsで作ったWebサービスたち. Contribute to sfpgmr/webservices development by creating an account on GitHub.

2019/2/11 8:03:32

このソースは本家をforkしたものを私が改造したバージョンであるが。
本家ではこの部分は改良されている。

+ raw.toLowerCase().replace(/[^\w]+/g, '-')

+ slugger.slug(raw)

marked/marked.js at master · markedjs/marked · GitHub
A markdown parser and compiler. Built for speed. Contribute to markedjs/marked development by creating an account on GitHub.

2019/2/11 8:07:47

slugger.slug()はこのままだとちとまずいかもしれん。検証するか。

Slugger.prototype.slug = function (value) {
var slug = value
.toLowerCase()
.trim()
.replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, '')
.replace(/\s/g, '-');

marked/marked.js at master · markedjs/marked · GitHub
A markdown parser and compiler. Built for speed. Contribute to markedjs/marked development by creating an account on GitHub.
https://t.co/J5r7UTcIlf

2019/2/11 9:36:08

やっぱりurlエンコーディングせんといかんよなあ。。

encodeURIComponent() - JavaScript | MDN
encodeURIComponent() 関数は、特定の文字を UTF-8 文字エンコーディングで表された 1 個から 4 個のエスケープシーケンスに置き換えることで、URI (Uniform Resource Identifier) 構成要素をエンコードします(サロゲートペアで構成される文字のみ 4 個のエスケープシーケンスになります)。

2019/2/11 9:36:08

slugはこれでエンコーディングしとくか。。

function fixedEncodeURIComponent (str) {
return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
return '%' + c.charCodeAt(0).toString(16);
});
}

2019/2/11 9:44:45

取り急ぎパッチを当てて対応しておこう。コンテンツを今のまま放っておくことはできんしな。。 https://t.co/X03yber2zz

2019/2/11 9:50:04

私がforkした時点のmarked.jsは、htmlタグ中にネストしたmd記法がきちんと解釈されない問題もある。本家バージョンは対応済だろうか。正規表現で書いた文法のコードがちょっと読みにくいかも。。と思ってたが現バージョンは書き方が変わってるわ。。

marked/marked.js at master · markedjs/marked · GitHub
A markdown parser and compiler. Built for speed. Contribute to markedjs/marked development by creating an account on GitHub.

2019/2/11 9:50:58

ウーム。文法部分はpegで書き直したくなってきたわ。。

2019/2/11 10:24:06

とりあえずパッチを当てて対応したコンテンツがこれ。<Hxx>に飛ぶことができるようになったな。

S.F. Blog:静的サイトジェネレータのアップデート(nginx→express)
はじめに去年からWebサーバをnginxからexpressにアップデートした。途中放置気味であったがようやくまとも動くようになったので、テストを兼ねてこの記事を書くことにする。約8か月振りのブログ更新となる。静的サイト・ジェネレータ私が今使っているServers Man VPSは月額467円のエントリープラン、メモリ1GB/HDD50GBのものを使用している。最初はメモリ256MBであったがだんだ...

S.F.@SFPGMR

2019/2/11 7:25:03

Node.jsでのイベントループの仕組みとタイマーについて - 技術探し
Node.jsでのイベントループとタイマーを解説します。

2019/2/11 7:50:12

イベントループの概要をようやく理解した。。なるほど。。

S.F.@SFPGMR

2019/2/11 7:47:14

そうかあ。。fork使えるんだ。。ということはzip圧縮の処理はプロセス分離することが可能だな。さらに実行ユーザーも変えられるな。。安全性を高められるわ。。

No Image
Child Process | Node.js v13.2.0 Documentation

たかゆき - Son@masayoshi1223sn

2019/2/8 19:29:37

【劇場版 みずほ銀行(予告編)】
毎月恒例
「みずほ銀行のATM停止」を
映画の予告っぽくしてお知らせいたします。

停止までまだ4時間くらいあります。
安心して3連休中を過ごせるよう
今すぐATMでお金下ろしましょう!! https://t.co/ao0l4urauT

特殊映画研究室@クリマ・セントレア11/30〜12/1 M-541@tokuken20091

2019/2/3 21:55:57

3月の九条湯フリーマーケットでは今までお店のスペースの都合で出展できなかった、大型サイズのミニチュアもいくつか販売したいと考えています!
画像は現在制作中のガレキのビルのミニチュアです。詳細は今後また発信していきます!

#特研ミニチュアセット https://t.co/w1INFUmbxs

S.F.@SFPGMR

2019/2/10 20:20:53

@tokuken20091 やはりあべの筋でしたか。。懐かしい。。ミニチュアがすごいですね。驚きました。。

S.F.@SFPGMR

2019/2/10 20:14:48

まさに超人。。絶句。。

古籏一浩さんのツイート: "レトロ:過去のツイートから迎霧浪漫氏(@info_ymcat)の開発の秘密をまとめてる最中ですが、制作期間が明示されてるのが2ゲームしかありませんでした。他のゲームの開発期間ってどうだったんでしょう?… "
“レトロ:過去のツイートから迎霧浪漫氏(@info_ymcat)の開発の秘密をまとめてる最中ですが、制作期間が明示されてるのが2ゲームしかありませんでした。他のゲームの開発期間ってどうだったんでしょう?”