ハイパーマッスルエンジニア

Vim、ShellScriptについてよく書く

Exコマンドの補完をfzfでやる

Vim

VimのExコマンドって結構長いものであったり、どんなコマンドがあったか全然覚えられない。 TABで一応補完は出てくるが、補完を出した後にインタラクティブに絞り込みたいときって結構あると思う。 fzfでExコマンドのフィルタリングをできるようにした コマ…

tmux popupで遊ぶ

tmux popupとは tmuxのバージョン3.2-rcより導入された新たな機能。 どのようなものかはGIF見ていていただくのが一番早い。 fzfの絞り込みをtmux popupで実行したり、popup内で作業ができる paneやwindowの概念とは別に、新規ウィンドウがtmux上に表示される…

tmuxでiTermのimgcatを使う

iTermの拡張コマンドであるimgcatはtmux上で実行すると挙動がおかしくなる。 これはどうやらtmuxではpane分割があるため、widthやheightがうまく計算できないので描画がおかしくなってしまうらしい。 tmuxでimgcatを実行したときの挙動。一瞬だけ表示されて…

zshで関数内で実行したコマンドを履歴に残す

通常、コマンドを実行したら履歴に残り、Ctrl-p/nや上/下の矢印キーで実行したコマンドを遡ることができる。再度同じコマンドを実行するときはとても便利。 この履歴に手動で追加するにはどうするか。 結論から言うと print -s 履歴に残したいコマンド でい…

fzfは非表示にした列でフィルタリングすることはできない

--with-nthで特定の列だけを表示した上でフィルタリングがしたかったが、どうもできないらしい。 github.com 上記のIssueによると、できないというよりはそれを実装してしまうと混乱を招きそうだから実装しない、ということらしい。 何がしたかったのか fzf…

TerminalからfzfでBluetooth機器を選択して接続できると幸せになれる

TerminalからBluetoothの接続をする MacでBluetoothのデバイスを接続するとき、ステータスバーからデバイスを選択しているやつおる? エンジニアならTeminalからBluetoothデバイスを選択して接続しないといけない。 AirPodsの接続をTerminalからやりたい Air…

【Swift】親Viewの領域外に設置したボタンを反応させる

設置したUIButtonを親Viewの外に配置してしまうとタップが反応しない。 よくあるのは✗ボタンが右上に半分はみ出しているようなカスタムViewを作ったりするとき。 親Viewからはみ出して設置するタイプのボタン この状態だとタップが反応するのは親Viewにかぶ…

Xcode11のiOSシミュレータで、ステータスバーを変更できるコマンドまとめ(時刻、バッテリー、ネットワーク表示など)

Xcode11からiOSシミュレータのステータスバーをコマンドで自由に変更できるようになった。 時刻、バッテリー、ネットワーク表示など結構色々変えれるみたいなので実行コマンドと結果をまとめておく。 動作環境 時刻を変更する 設定を元に戻したい時 ネットワ…

Terminalの現在行をエディタで編集して実行する

長いワンライナーを打っていると編集が面倒くさい ワンライナーじゃなくてもいいのだが、Terminalでコマンドを打っているときに、修正するときのカーソル移動が結構面倒くさい。コマンド履歴をさかのぼり、真ん中の方のコマンドだけ編集したいときなど地獄の…

Terminal上でSnippetを実現する ~ zle(Zsh Line Editor) × fzf ~

ワンライナー打つのしんどい CSV落として該当の列だけ抜き出すときにcat hoge.csv | awk ...とか、fzfでプレビューして〇〇するみたいなときにcat hoge.txt | fzf --preview...など、 大体打つコマンドって決まってくると思う。 .zshrcや.shファイルなどに直…

Express, MonogoDB, React, TypeScriptの開発を始めるときに困ったこと、参考になったサイト

今まで業務ではPHP, MySQL, 素のJavascriptを触っていた、いわゆるサーバー側のWebエンジニアがオールJavascriptの開発をする上で困ったことをずらずら書いていく。 今回は誰かに見てもらうというより自分のメモを公開するに近いので、全くまとまっていない…

whichコマンドでaliasではなくPATHを表示する(where, whence, where, type, commandどれ使えばいいのか決める)

コマンドにaliasを貼っていると、whichコマンドでPATHを知りたいのにaliasが表示されてしまう。 $ which grep grep: aliased to grep --color=auto PATHを知りたいときは-pをつけるとPATHが表示できる。(※-pはzshのみ有効) $ which -p grep /usr/local/opt/g…

builtin-commandsのmanの見方

man readとかするとbuiltin commandsのmanが出てきてしまって、read自体の説明にたどり着けない。 我々が見たいのはこのmanではない これはmanがないのではなく、ちゃんと別のところに書いてあるのでそれを覗きに行く。 bashの場合 使っているShellがBashな…

sourceコマンドは複数のスクリプトを読み込めない

結論 先に結論だけ言っておくとsource file1 file2はできない。file1, file2をsourceしたいなら下記のようにする。 find ~/local_scripts |while read script; do source $script done # もしくはfor文でもいい for script $(find ~/local_scripts); do sour…

2019年振り返り

無事2020年を迎え入れることに成功したのでずらずらと今年あったことを書いていく。 振り返りというよりは棚卸し。 印象に残ってること 4年分のAppleへのお布施(デベロッパー代)をアプリによって完全に回収しきった。3年分ぐらい余裕できた。 設計に興味を持…