Panda Noir

JavaScript の限界を究めるブログでした。最近は幅広めに書いてます。

Nginxでlocationの書き方がわからない時に読む記事

「Nginxのlocationの書き方がわからない!」そう思ったことはありませんか? ネストするとおかしくなる 同じ階層にあるうち一つしか適用されない など 、locationディレクティブは直感的でない、クセがある動作をします。 今回、Nginx実践入門とNginxドキュ…

Emacsのバッファ・ウィンドウ操作の基本

意外にも日本語でまとまった情報がなくて四苦八苦したので基本操作をまとめました。 (少なくとも「emacs バッファ 操作」でググってもよく分からない状況だった)

意外と知らない著作権表記

ウェブサイトを作るとだいたい付けることになる「著作権表記」。だいたい「©︎ 2010-2018 hogehoge All rights reserved.」のようになっています。しかし、実はもっとシンプルでいいと知っていましたか?

プログラミングパズル作った

HTTPの知識やHTML、JavaScriptの知識を使って解くパズルを作ってみました。昔、「超究極迷宮」をプレイしたことがある人はそれっぽいものと思ってください。

ついにはてなブログのhttps化が始まった

(ただし独自ドメインを設定している人はまだhttps化できない模様) 昨年9月に発表があり、「11月にHTTPSで配信可能になる」というスケジュールだったHTTPS化が、約3ヶ月おくれの今年2月22日についに対応になりました! …ということに先週気が付きました。アン…

HTMLで絶対パスを有効的に使う

http://example.com/hoge と http://example.com/hoge/を区別せずに扱おうとすると、相対パスの問題が起きます。これを回避するために絶対パスを使いたいですが、一々フルで書くのはめんどくさいので<base>タグを使って楽をしようと思います。</base>

Neovimにでなぜか入力した文字がおかしくなった

Neovimを起動直後に「あいうえお」と入力すると「いうえおあ」になる、という問題に直面しました。このときの解決法をご紹介します

とりあえず動かしたい!Dockerいじり

対象読者 イメージとかコンテナとかどうでもいいんじゃ!動かして覚えるからサンプルよこせ!という方。僕自身「よくわからんけどなんか動いたぞ!」レベルなので。 できるようになること 詳しい解説は他の方がいくらでも書かれているので、解説はしません。…

\sは本当に空白文字を網羅できているのか?

世の中にはやたらと空白文字があり、なんと30文字以上もあります! そこでこのような不安にかられませんか?「/\s/はすべての空白文字に対応しているのか?」検証してみました。

tmuxで特定ペインを常に一定サイズに固定する

よくターミナルをリサイズするので、時計ペインのサイズが固定だと嬉しいと思い、スクリプトを組んでみました。

終了時に「実行中のプロセスが存在します」と言わせないためのtmux起動法

zshrcにtmux attachと記述してtmuxを起動させるというテクニック、ご存知ですよね?とても便利ですし僕自身使っていました。 しかし、この方法では端末の×ボタンを押したときに「この端末を閉じますか?」という警告メッセージが出ます。とてもストレスですし…

たった2つのポイントで!zshでもfish並のインクリメンタル補完を実現する

fishのインクリメンタル補完(下のような補完)が神すぎてzshをやめてfishを使っていました。 しかし、fishを使っているうちに色々と不具合が出てきました。 シェルスクリプトがbashやzshと異なる bashのようなエイリアス機能がない PATHなどの設定がおかしく…

Ubuntuのワークスペースの使い方まとめ

Ubuntuにはデフォルトでワークスペースと呼ばれる機能が存在します。ワークスペースというのは「仮想デスクトップ*1」のような機能です。 今回はそんなワークスペースについてまとめてみました。 *1:デスクトップをいくつもあるかのように扱う機能で、それら…

暗号化だけじゃない!サイトをhttps化するメリット

今朝、ConoHaからのメールで「Let's Encryptというサービスを使えば無料でhttps化できる」と知ったのでホームページをhttps化してみました。かなり簡単だったのでご紹介したいと思います。 実際にhttps化したサイトがこちら↓ Panda Noir

void演算子の活用法を考えてみた

考えてはみましたが、実際に使うと多分怒られます。

これでもう怖くない!npm versionで失敗しないための3つのポイント

npm versionコマンドの挙動がよくわからない tagがズレた CHANGELOG.mdをいつコミットすればいいのか dist/の生成タイミング などなど、npmパッケージのアップデートはややこしすぎます。毎回不安になるのでポイントをまとめました。

UnitaryJS 0.1.2公開しました

今回のアップデートは大きな変更点が2つあります。 Point.fromPolar()の追加 GroupがfillStyleなど描画用のプロパティを持てるようになった

Webサービス同士をつないで新しいサービスを作る「IFTTT」

IFTTT(イフト)というサービスをご存知ですか?IFTTTとは「IF This Then That(Thisが起きたらThatをする)」の略です。様々なサービス同士をつなぐというシンプルなサービスです。 (2010年に誕生した比較的古いWebサービスなので取り上げるのは今更感がスゴイ…

yarn-or-npmが有能すぎた

これこそ全人類が求めていた答えだ(確信)

HTMLで省略可能なタグの「仕様」

HTML5には「仕様で」省略できるタグが存在すること、ご存知ですか?今回はそんなタグたちを紹介しようと思います。

標準出力に色をつけてカラフルにログ表示する

こんなカッコイイことができるようになれます。

式変形をアニメーションにするサービス作った

こんな感じで式変形の様子がアニメーションになります。結構革新的ではないですか??個人的には大満足の出来です。 diffがうまく取れず、よくわからない変形になったり、iPhoneだと表示が崩れたりしますがご愛嬌ということで。

npmリポジトリの雛形を生成するシェルスクリプト書いた

以前npmパッケージの雛形を作ったことはありました。しかし、これをいちいち複製するのは結構面倒です。そこでシェルスクリプトを使って雛形からリポジトリを生成してみました。

全文検索・ファイル名検索する手法

全文探索・ファイル名検索はプログラマにとって日常動作ですよね。でもオプションがわからなかったりして一々調べなおしがちです。そんなことないか。 というわけで今回はシーン別に検索をする方法をまとめてみました。Ubuntu 17.10でのみ検証を行いました。…

中級Vimmerなら覚えたい!バッファとレジスタ

Vimを長く使っていても意外と使ってなかったりするバッファとレジスタ。覚えるとかなり便利なのでご紹介しようと思います。

ベジェ曲線を完全に理解したので解説する

よくペイントツールに出てくる「ベジェ曲線」。かなり難解ですよね。なぜならWikiに書いてある「ベジェ曲線」とペイントツールの「ベジェ曲線」が厳密には異なっているからです!今回はどちらも完全に理解したので解説記事を書こうと思います。

Jestいいぞ

今更コードのカバレッジを気にし始めたクロパンダです(プログラミング歴7年目())。今までは結構ざっくりとテストを書いてきていました。というのも、コードカバレッジという概念がどうも七面倒でやる気が起きなかったのです。 しかし、JavaScriptテストツー…

文字列からミリ秒を計算するライブラリtime-f作った

setIntervalの秒数指定の場面など、ミリ秒で指定する場面は多いです。これをもう少しリーダブルにかけると嬉しいですよね?そこで今回は「time-f」というライブラリを作りました。

Vimで選択した内容で検索する

Vim

「選択範囲内で検索する」ではなく、「選択した文字列で検索する」というTipです。 ヤンクする /を入力する <C-r>を押す ヤンクしたレジスタ名を入力する(yでヤンクした場合は無名レジスタなので"を押せばOK) まあこれだけのTipです。 置換する まず上の手順で検</c-r>…

イミュータブルを簡単に実現するライブラリ「Immer」

なかなかクールなライブラリだったので紹介します。