Hatena::Grouphackathon

zrail (a.k.a. tobira17, h14i, ...) の Learning Log

2018-05-17

[]yelpでmanpage 02:11 yelpでmanpage - zrail (a.k.a. tobira17, h14i, ...) の Learning Log を含むブックマーク はてなブックマーク - yelpでmanpage - zrail (a.k.a. tobira17, h14i, ...) の Learning Log

yelpでmanpageを開いて読むことがデフォルトで出来ることを最近知った。

ちなみに日本語というかマルチバイト文字?を含むページの場合はgroffの問題?で一文字毎にスペースが入るので非常に読み難くなる。

yelp man:PAGENAME

2018-04-21

[][]zshのsuffix aliasでハマった 08:53 zshのsuffix aliasでハマった - zrail (a.k.a. tobira17, h14i, ...) の Learning Log を含むブックマーク はてなブックマーク - zshのsuffix aliasでハマった - zrail (a.k.a. tobira17, h14i, ...) の Learning Log

こういうことしちゃ駄目。

alias -s zsh=zsh

2018-04-16

[][]pocket-cliを試している 00:25 pocket-cliを試している - zrail (a.k.a. tobira17, h14i, ...) の Learning Log を含むブックマーク はてなブックマーク - pocket-cliを試している - zrail (a.k.a. tobira17, h14i, ...) の Learning Log

ギギギ……CLIだけで完結してえ……。

と思ったけど、dmdのdmanと同じでXDG準拠っぽい(あるいはxdg-open的なコマンドを呼んでるっぽい)ので、とりあえずw3mで開くだけなら

# use your favorite browser.
export BROWSER="w3m"
# maybe needs --open-origin (or -o) option.
pocket-cli read ARTICLE_ID --open-origin

pocket-cli fetchで落ちてくるCSVファイルは$HOME/.pocket-indexにある。

これを適当に切ってURLを取り出してダウンロードすれば一応当初の目的は達成できるっぽい。


でもこの間書いたこの記事の最後の問題があるのであnode.jsとかWebDriverとか触らないと駄目なケースありそうですね。面倒。

2015-09-17

[][][]dman が見つけてきた URL を w3m で読みたかったメモ 02:13 dman が見つけてきた URL を w3m で読みたかったメモ - zrail (a.k.a. tobira17, h14i, ...) の Learning Log を含むブックマーク はてなブックマーク - dman が見つけてきた URL を w3m で読みたかったメモ - zrail (a.k.a. tobira17, h14i, ...) の Learning Log

POSIX (というか Linux )上での話です。*1


本質的なコードは dman.d にはなくて、読むべきは std.process.browse (のソース) だった。やってることは

  • 検索クエリを打つためのコマンドを決める
    • デフォルトでは xdg-open を使う
    • 環境変数 BROWSER にコマンドが指定されている場合はそれを使う
  • exec する

くらいかな。あとはエラー処理。

で、最初は単に BROWSER=w3m してみたけどダメだった。プロセス関係よくわからない。

仕方ないので BROWSER=echo して、 stdio 経由で w3m へ渡すようにしたら上手くいった。

あとは dman の吐く URIsed とかで(ここではパラメータ展開してるけど…)修正してローカルに向けてやれば cppref みたいな使い方ができそうな気がする。

以下コード例。

# web のリソースを読みたいならこれでいける
w3m `BROWSER=echo dman process`
# あるいは curl の出力を流し込んでも読める(ファイルとして読んだほうが便利だから上のほうが良いと思う)
BROWSER=curl dman std.stdio | w3m -T text/html

ローカルにある html ファイルを開く例。だけどちゃんと確認してない。あとdlang.org以外のリソースは開けない。

# ここでは denv を使わせてもらってる
export HTML_DIR="$( denv prefix )/html/d"
export BROWSER=echo

w3m "${HTML_DIR}/${$( dman assert )##*dlang.org/}"
w3m "${HTML_DIR}/${$( dman writeln )##*dlang.org/}"
w3m "${HTML_DIR}/${$( dman simd )##*dlang.org/}"

まぁざっくりこんな感じですかね。

気が向いたらスクリプトにしよう。

*1:ついでに言えば D-man ( D 言語くん)の話ではないよ。リファレンス検索コマンドの dman だよ。

2014-04-11

[][]rbenvでバージョンを指定してコマンドを実行する 05:47 rbenvでバージョンを指定してコマンドを実行する - zrail (a.k.a. tobira17, h14i, ...) の Learning Log を含むブックマーク はてなブックマーク - rbenvでバージョンを指定してコマンドを実行する - zrail (a.k.a. tobira17, h14i, ...) の Learning Log

1.9.xじゃないと動かないgemのコマンドを実行したいが、そのためだけに (global|local|shell) を実行するのは面倒、みたいなケース。

% RBENV_VERSION=1.9.3-p448 rbenv exec COMMAND

この方法でirbを実行してみてRUBY_VERSIONを見ると指定したバージョンになっているはず。

これが正しい方法なのか分からない。知ってる人いたら教えて下さい。