@peccul is peccu

(love peccu '(emacs lisp cat outdoor bicycle mac linux coffee))

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

Android Studioから無線でデバッグする

adbコマンドを使うとPC-Android間を無線で接続した状態でデバッグできます。 MacBook AirのようにUSBポートが枯渇しているときは便利ですね。 How to debug in Android Studio using adb over WiFi - Stack Overflow 有線で実施 cd ~/Library/Android/sdk/pl…

HDDをAPFSにフォーマットしたらMac OS拡張(Apple HFS)に戻せなくなって焦った

APFSはコンテナ管理のようなことをしているようで、コンテナ情報があるとAPFSから変更できない様子。 コンテナ(ボリューム)を消すとMac OS拡張に戻せる。

PDFをブックレット(中綴じ)で印刷する

TeXLiveを入れて、以下のコマンドで中綴じのPDFを生成できた。 TeXLiveがなければ、psutilsを入れると同じことができると推測される。 pdftops input.pdf - |psbook |psnup -2 |ps2pdf - booklet.pdf

JSを同時に読み込んだり、順に読み込んだり

ファイル毎に依存するコードを書いてしまって読み込み順をなんとかしたかった。 webpack使ったりする方が早いけども。

PowerShellのdockerコンテナでPowerShellスクリプトを実行する関数

PowerShellがLinux系で動くことを知りませんでした。 Dockerコンテナがあったので、ファイルを指定して実行できるような関数を定義しました。

Vue.js+VueRouterを使っているときに#idでページ内を移動する

vue routerを使っているとページを示すために #/route が利用されているので、aタグやrouter-linkでidへスクロールするリンクが作成できない。 (そのidに対応するページをvue routerが探してしまう) そこでvue routerの持つルーティング情報を監視してJSでス…

macの辞書を引くコマンドをswiftで書くと速かった

macの辞書をターミナルで引ければ楽で速いかなと思い調べたが、Dictionary.appが起動するものとPythonのスクリプトしか見当たらなかった。 しかもPythonのスクリプトはちょっともたつく。 中身はObjective-Cバインディングを使っているようなので、Swiftで書…

シンプルなリバースプロキシ

ローカルでnginxもapacheも動かしていない状況でリバースプロキシが必要になったのでNode.jsでシンプルに。

macのデスクトップアプリの標準出力と標準エラー出力をコンソールで確認できるアプリを作ってみた

macのデスクトップアプリ(Mountain Lionより新しいもの)ではfprintf(stdout, ...)やfprintf(stderr, ...)が捨てられているようで、これを確認する手段を調べた。

AWS LambdaでLINE Notifyを叩く

ググって出てくる記事ではパッケージのインストール(zipアップロード)が必要で、 ほんまかいな。という気持ちになったのでcurlでAPIを叩くコードにしました。

Install elasticsearch plugins and kibana plugins behind the proxy.

elasticsearch Set proxy configurations to env $ES_JAVA_OPTS like below. ex: installing x-pack ES_JAVA_OPTS="-Dhttp.proxyHost=proxy.example.com -Dhttp.proxyPort=8888 -Dhttps.proxyHost=proxy.example.com -Dhttps.proxyPort=8888" ./bin/elastics…

iOS11から標準カメラでQRCodeを読めるようになったのでみているページのURLをQRCodeで表示するブックマークレットを書いた

iOS11から標準カメラでQRCodeを読めるようになったのでwindow.location.hrefをQRCode表示するブックマークレットを書きました。 お気に入りのURLにコピペすればおそらく動きます。 Appleらしさあふれる作りですよね。QRCodeって選ばなくてもカメラに写ればQR…

標準入力の内容をチャットに投稿する2 (Node.js版)

peccu.hatenablog.com こんな記事を書きましたが、結局渡す内容によってcurlが実行できないことがあったのでNode.jsで書き直しました。 依存パッケージなしで書いてみました。 ただ、プロキシ越えは未実装です。。。

標準入力の内容をチャットに投稿する1 (bash, curl版)

長時間かかるコマンドの実行結果をチャットに通知したくなったので、スクリプトを書きました。 (コマンド実行後の定型文通知や引数に指定した文字列の通知はすでに利用していたが、結果を通知したくなった)

bashスクリプトでシグナルを受け取った時にどのシグナルだったかを知る

bashのシェルスクリプトがなぜか正常終了しない時に、シグナルが飛んできていないか確認したかった。

プロキシ環境下でdocker buildするときのコマンドオプション

プロキシ環境下でapt-get update等を含むDockerfileを docker build するときは --build-arg でプロキシの設定を渡す。 docker build --build-arg HTTP_PROXY=$HTTP_PROXY --build-arg http_proxy=$http_proxy --build-arg HTTPS_PROXY=$HTTPS_PROXY --build…

snake_case->PascalCase->camelCase->snake_case->...に変換するコマンド

id:IMAKADOさんの実装を参考に、以下を追加した。 リージョンだけでなくカーソルの置いているシンボル(thing-at-point)も変換対象とした snake_case<->PascalCaseだけでなくcamelCaseを加えて循環するようにした d.hatena.ne.jp

Slackのフィード一覧をOPMLファイルに書き出す

Feedlyでは読みきれないのでSlackでフィードを購読(/feed subscribe URL)すれば目について読めるのではないか。と思った私は甘かった。 結局フィードが増えて追いつけなくなったので feedreader に移行することにした。 流れ RSSの設定画面を開く https://*.…

Node.jsでメールを送る。mailコマンドやSMTPサーバー不要。

github.com npm i sendmail const sendmail = require('sendmail')(); sendmail({ from: 'from@example.com', to: 'to@exampl.com', subject: '件名も化けなかった', text: 'これは本文' }, function(err, reply) { console.log(err && err.stack); console.…

Emacsでウィンドウのフォーカスを移動するキーバインド

順方向を C-;、逆方向を S-C-;すなわちC-:にすると便利。

Common Lispで特定のパッケージを使っているものを探すなら「filetype:asd」をつける

redditで見かけたのですが、「filetype:asd パッケージ名」でググると、そのパッケージに依存しているものが引っかかることを知りました。 www.reddit.com 例えばwebsocket-driverを使っているものを検索するならこんな感じ filetype:asd websocket-driver -…

サムライトのEngine.IOサーバーを試す

深町さんがサムライトでEngine.IOサーバーを書いていたので試しに動かしてみた。 github.com ただ、そのままじゃClack(Lack)やwebsocket-driverの変更に追従していなかったので、forkして修正してみた。 github.com 果たして今さらプルリクエストを作成して…

CavemanでWebSocketしつつslime-connectでデバッグ

cavemanでwebsocket-driverを読み込んで、defrouteにwebsocket-driver:make-serverを入れるとよい。

Git stashからdropしてしまったものを復旧する

stash popで衝突して修正している間に何をしていたか忘れてdropしてしまうというミス git reflogでは出てこなかったが、git fsckでは出てくるとのこと。 stackoverflow.com この回答の通り。

GiHubリポジトリのページとGitHub Pagesを行き来するブックマークレットを書いた

ソースを見たくなった時に、URL手打ちが面倒だったので書いた。 独自ドメインは対応してない。(できる気がしない)

Emacsで"Autoloading failed to define function"が出たらload-path内に複数の定義がある

タイトルの通りですが。 emacs.stackexchange.com load-path内で衝突しているものの一覧がM-x list-load-path-shadowsで表示されるので、 autoloadしようとしていたものを探して、不要な方を消す。

git fetch, pullで fatal: git fetch-pack: expected ACK/NAK, got 'ERR want ... not valid'

GitBucketを使っていて、clone/pull/fetchするときにエラーが出るようになった。 サーバーのリポジトリでgit fsck -> git gcを実行するとエラーが出ずに実行できるようになった。

SubversionのようにGitで差分リリースする

Subversionでは指定した二つのコミット間で変更のあったファイルのスナップショットを書き出せるようです。 差分リリースでよく利用されているかと思います。 Gitではそのままのコマンドがないので今まで諦めていたのですが、 コマンドの組み合わせで実現で…

embed.lyを使うのは簡単かも

aタグにembedly-cardクラスをつけて、embedlyのjsを読み込むだけで良さそう See the Pen embedly example by peccu (@peccu) on CodePen.

Vue.jsからCommon Lispの関数をjsonrpcで呼ぶ

深町さんのポケットチェンジでの活躍を見て、私も試してみたくなった。 Building GUI App with Electron and Lisp from fukamachi www.slideshare.net 最近は Vue.js で遊んでいるので、そこからjsonrpcでCommon Lispの関数を呼んでみた。