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

Vim、ShellScriptについてよく書く

ターミナル上にwifi接続のQRを表示できるsdushantha/wifi-passwordがおもしろい

github.com 今接続しているwifiのパスワード、またはQRコードをTermianl上に表示できるツール。 使用頻度は少ないかもしれないが、あったら地味に便利。 インストールはpipで可能。 python3 -m pip install --user wifi-password 実行 wifi-password --qrcod…

Githhub Actionsをローカルで実行するnectos/actでcommand not foundが出たときの対処法

Github Actionsをローカル実行できるツールnektos/actの話。 act -P でimageを指定するも必ずnode:12.6-buster-slimで実行されてしまう actの実行時の環境は、デフォルトではnode:12.6-buster-slimが選択されるが、このimageは最小限の構成なのでgitコマンド…

goyo.vim, limelight.vimで"静かな"執筆環境を実現する

Vim

goyo.vim, limelight.vimで装飾のないVim github.com github.com ステータスバーなどが消え、今書いていることのみに集中できる インストール # goyo.vim [[plugins]] repo = 'junegunn/goyo.vim' # limelight.vim [[plugins]] repo = 'junegunn/limelight.v…

はてなブログでgifの代わりにmp4で投稿するために、Github Actionsでgif→mp4変換を自動化した

gifの欠点 ファイルサイズがでかい → ページ読み込みが遅くなる シークバーが表示されない → 一時停止、早送りができない MP4にしてvideoタグで埋め込むといい <video controls muted autoplay playsinline width="95%"> <source src="mp4動画のURL"> </video> gifの圧縮アルゴリズムはそこまで最適化されていないため、MP4などの動画フォーマットのほう…

たぶん禁煙に成功した。結果何も失わなかった話。

タバコを吸わなくなってから50日が経った。もはやタバコのことを考えることがなくなってきたので、たぶん禁煙に成功したんだと思う。 完全にタバコのことが思い出せなくなる前に、思ったことを書いていく。 禁煙する前 1日2箱(40本)ぐらいのミドルスモーカー…

Github Actionsのアクション作ってみる(Typescript編)

Typescriptで独自アクション作る 以前GithubActionsを使ってHomebrewのリリースを自動化し、一部のstepを独自アクションとして切り出した。 www.rasukarusan.com www.rasukarusan.com 前回のDockerで書き出したアクションを、Typescriptで書いてみる。 対象…

Github Actionsのアクションを作ってみる(Docker編)

1つ前のtagからの差分を出すアクションを作ってみる 前回GithubActionsを使ってHomebrewのリリースを自動化した。 www.rasukarusan.com 上記で実行している「1つ前のtagからの差分を取得する」をアクションとして切り出してみる。 イメージとしてはrunでゴリ…

GithubActionsでリリースとFormulaリポジトリの更新を自動化した

Homebrewの自作CLIツールの配布がとても面倒くさい 以前Homebrew/tapによる配布方法をまとめたが、やることが結構あって面倒くさい。 どうやらGithubActionsを使えばめちゃくちゃ楽にできるみたいなのでやってみた。 今までの流れ 1. tagをpush 2. GithubでR…

Vim Short Tips Advent Calendar 2020で最高にためになったTips

Vim

Vim Short Tips Advent Calendar とは Qiitaアドベントカレンダーの1つで、「ツイート1つに収まるようなVimのTipsを書いていく」がテーマのカレンダー。ハッシュタグ#vimtips_acでTwitterを検索すれば出てくる。 結構知らなかったことやめっちゃ便利じゃんっ…

Neovim: 矩形選択したものを好きな場所に貼り付けるプラグイン nvim-block-paste

Vim

ブロックエディタっぽく、どこでも好きなところに貼り付けしたかった github.com 矩形選択したものをどこにでも貼り付けられる 使い方 インストール [[plugins]] repo = 'Rasukarusan/nvim-block-paste' 矩形選択した状態で:Blockを実行。 :'<,'>Block キー…

2020年振り返り

今までの振り返り 2019年振り返り ハイライト 転職をした 家を買った 子供が生まれた フルリモートになった とりあえず自分に一言 よく生き残った、、、よく耐えた、、ほんとによく頑張った。褒めてあげたい。 2020年まじできつかった。 何がきつかった? 8…

Neovim: サクッとFloatingWindowにテキストを表示するプラグイン nvim-popup-message

Vim

github.com :messagesの最後の行をサクッと表示している これなに NeoVim専用プラグイン サクッとFloatingWindowを表示する 現在カーソル位置のすぐ下(または上)にFloatingWindowを作成 カーソル移動したらウィンドウは即消える 引数で渡したテキストをFloat…

Neovim: VirtualTextを使ってVim上に注釈を出す

Vim

VirtualTextとは NeoVim 3.2で導入された注釈機能。行の最後にバッファとは別にテキストを表示することができる。 github.com 使い方 nvim_buf_set_virtual_text({buffer}, {ns_id}, {line}, {chunks}, {opts}) Column Column buffer Buffer番号、カレントバ…

1年を振り返るときに使ったgitコマンド

コミット履歴を保ったままブランチを統合する ブランチ整理のために。過去のコミット履歴をなかったことにしたくなかった。 下記の記事が神。 qiita.com # 新規リポジトリを作成 mkdir new_repository cd new_repository git init # リポジトリを統合 git re…

Notionで1年の振り返りをしたら最高だった

1年を振り返る 1年を振り返る際、下記の媒体をもとに振り返っている。 Evernoteの日記 自分のブログの記事 Githubのリポジトリ・コミット 自分のツイート 毎年Evernoteに振り返りをまとめていたが、若干窮屈に感じてきたので今年からNotionにまとめてみよう…

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年分ぐらい余裕できた。 設計に興味を持…