2013-01-01から1年間の記事一覧

Linuxのunzipはnon-asciiなファイル名に*まったく*対応していない。

Shift JIS, CP932, UTF-8, その他まったく対応してないっぽい。一部、UNICODEサポート版? があるとか(man unzip on CentoOS)、Ubuntuのunzipは対応しているとかいう話もあるが未確認。Archive::Zipの問題かと思って無駄な時間を費してしまったよ。

feedlyの.selectedEntryに関するバグ。

どこに報告すればいいのかわからなかったので。 Web版feedlyで、 Title OnlyやMagazineビューで、 j or kで移動すると、エントリが開く。 そこでoでエントリを閉じる。 そのエントリから.selectedEntryが外れる。 n or pで移動した上で、oで開いて閉じた、場…

AndroidからSSHしたいけどいいクライアントがない。

前提 公開鍵認証でつなぐ。 ハードウェアキーで使う。もちろんソフトウェアキーで使えるにこしたことはないが。 日本語入力したい。まあ最悪Vim+eskkでいいので、表示だけでも……。 ConnectBot Ctrlが効かない。秘密鍵をSDカードのルートからしか取れない。 I…

ackで気になること。

minifiedなJavaScriptを検索することには使えない、というか死ねる。 一応-o使ってどうにかする方法もある。unix - how to truncate long matching lines returned by grep or ack - Stack Overflow --ignore-dirで深い階層のディレクトリを指定しても意味な…

GmailをIMAPでThunderbirdから使うときに、Thunderbird側で送信済みメールを保存する必要はない。

タイトルでぜんぶ言っちゃった。ThunderbirdにGmailアカウントをセットアップすると、送信済みメールを保存するように設定されるが、Gmailは送信したメールを自動的に送信済みメールに保存してくれるから、Thunderbird側で設定しても無駄な通信が発生するだ…

Test::Moreでマルチバイト文字列を出力する可能性がある場合。

use Test::More; use Term::Encoding; { my $builder = Test::More->builder; my $encoding = Term::Encoding::get_encoding; binmode $builder->output, ":encoding($encoding)"; binmode $builder->failure_output, ":encoding($encoding)"; binmode $buil…

HTTP::Body::MultiPartにまずいセキュリティホールがあるので、しばらくPlack::Request::Upload使うときは気をつける。

経緯 JVNのフィード見てたらPerlモジュールのセイキュリティホールがあったので念の為確認したら思ったより危険だった。 JVNのページ JVNDB-2013-005291 - JVN iPedia - 脆弱性対策情報データベース セキュリティホールの詳細 #721634 - libhttp-body-perl: …

Perlのsingle-quotedなヒアドキュメントはsingle-quotedな文字列とはちょっと違う。

ちょっとはまったので。 print '\ \\', "\n"; # \ \ print <<'HERE'; \ \\ HERE # \ \\ ヒアドキュメントでは、引用符自体のエスケープが必要なくなる。double-quotedなヒアドキュメントの場合、ほかにエスケープしなければならない文字が残るため\自体もエ…

FirefoxやThunderbirdの気になるところ。

起動時にShiftキーを押しているとセーフモードで起動する。 Shift+なんらかのキー、で実行ファイルを実行するような環境でまずい。 起動中にエディタなどに入力をしてるとまずい。 更新の確認をすると確認だけではなくインストールされる。 設定で更新の確認…

パスワードをハッシュ化して保存した場合、ハッシュアルゴリズムの陳腐化にどう対応するか。

経緯 パスワードをソルトつきハッシュ化してDBに保存するのがベストプラクティス…とは限らないという話 - kazuhoのメモ置き場とか関連記事斜め読みして、ハッシュ化したパスワードの取り扱いについていろいろ考えたんだけど、突っ込みのために記事をちゃんと…

ブログのテーマを替えた。

デフォルトのテーマの横幅が狭くて見辛いので替えた。テーマストアを人気順で試して、Reversiが許容範囲内だったのでそれに。背景色だけカスタマイズしたほかはそのまま使用。メニューがちょっとわかりづらいかな……。普通に下部の方がよかった。 まず人気を…

sshで、公開鍵認証でアクセスしていたサーバに突然パスワードを要求される。

原因 接続先のホームディレクトリのパーミッションがおかしくなってた。 対処 接続先のホームディレクトリのパーミッションを0755 -> 0705に。 その他 接続先の ~, ~/.ssh, ~/.ssh/authorized_keys あたりを確認すること。どのパーミッションにすべきかはman…

Googleの検索履歴で検索した覚えのない履歴が出てくる。

経緯 個人的なメモによると2009年に、古い検索履歴が最近の履歴として出てくる現象があったようだ。そのときはおそらくある程度使っていたアカウントだったので、乗っ取られてほかで使われているのか確実なことは言えなかった。最近ある目的のために新しくア…

service sshd reloadは使わない方がよさそう。

理由 設定ファイル(sshd_config)の読み込みに失敗してもエラーにならない。 それどころか、sshdが起動していない場合に実行してもエラーにならない。 対処 service sshd restartにしとこう。

GitHubで、特定のコミットのファイルのURLを取得したい。

目的 この記事で、特定のファイルの特定の行にリンクしたが、masterブランチのファイルにリンクすると内容が変わりうるので。 対処 リポジトリトップの"XXX commits"リンクを開く。 該当するコミットの右下にある"Browse code"リンクを開く。 必要なファイル…

はてなブログで脚注に書いたURLをリンクしたい。

目的 はてなブログで脚注に書いたURLをリンクしたい。 失敗 ((http://www.example.com/))だと、リンクされない。*1 対処 HTMLはなぜか通るので、 ((<a href="http://www.example.com/">http://www.example.com/</a>))とすればいい。 成功 *2 *1:http://www.example.com/ *2:http://www.example.com/

ownCloudのWindows用クライアントがジャンクション先のディレクトリの更新を検知しない。

失敗 ownCloudの同期クライアントは、同期対象のディレクトリ内の更新を自動的に検知して同期を実行する。が、ジャンクション(Windowsの、ディレクトリのみのシンボリックリンクみたいなやつ)先のディレクトリやそれ以下のディレクトリはまったく見てくれ…

ocsyncでhttpsで同期したい。

目的 ownCloudのコマンドラインクライアントであるocsyncを使って、httpsで接続して同期したい。 失敗 $ ocsync . owncloud://<USER>:<PASSWORD>@<HOSTNAME>:<PORT>/files/webdav.php 原因 URL内でポートを指定するやり方には対応していない。 対処 ドキュメントを見てもウェブを検索しても情</port></hostname></password></user>…

plenv install ... で、別名をつけてインストールしたい。

目的 plenvで64bit環境に32bitのPerlをインストールしようとして、64bit版との区別をつけるために5.8.9-32bitとかそんな名前をつけたかった。ちなみに32bitのPerlのインストールには現状成功していない。 対処 plenvのドキュメントにわずかにそれらしいコマ…

Mail::SPFをroot権限がない状態で、cpanmでインストールしたい。

目的 Mail::SPFをインストールするためには、/usr/sbinへの書き込み権限が必要である。つまり大抵の場合、root権限が必要となる。だが、plenvを使っている環境などではsudo cpanm Mail::SPFとした場合、正しくインストールできない。そのため、root権限なし…

Vimで、カンマで連結されるようなテキストの左右を交換したい。

Vim

目的 f($arg1, $arg2); のようなコードを、 f($arg2, $arg1); のように書き換える場合、通常は$arg1と, を別々に移動しなければなず、二度手間になる。二度手間どころか、複数のレジスタを使って適切な順番で処理しないと、typoしやすい。 対処 argumentativ…

はてなブログで、はてな記法での編集時、引用にはてな記法のcite, titleの自動表示を使いたい。

目的 はてなブログで、はてな記法での編集時、引用にはてな記法のcite, titleの自動表示を使いたい。 失敗 ><blockquote cite="http://www.hatena.ne.jp/what" title="はてなってなに?">< はてなとは、ブログが作れるはてなダイアリーや、分からない事を誰かに調べてもらえる人力検索はてな、今話題のトピックが分かるはてなブックマー</blockquote>…

Mercurialで、Working Directory直下のある名前のディレクトリだけ除外したい。

目的 Mercurialで、Working Directory直下のある名前のディレクトリだけ除外したい。 失敗 # .hgignore syntax: glob a_directory/ 原因 glob と regexp のいずれの場合も、 作業領域ルートからの相対パスに対して、 部分一致すれば合致とみなされます。 hgi…