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

Vim、ShellScriptについてよく書く

Next.jsでバリデーションするなら「Ajv」がいい感じ

ajvはNode.jsとブラウザ用のバリデーションライブラリ。 Typescriptで利用できるバリデーションライブラリといえば、yup, zod, joiあたりが候補に上がるが、ajvを採用した。 理由はバックエンド・クライアント両方で使えること、スキーマファイルを使えるこ…

tree-sitter導入したメモ

エラーが出る `tree-sitter` executable not found (parser generator, only needed for :TSInstallFromGrammar, not required for :TSInstall) 最新のneovimをインストールすれば直る brew upgrade neovim --fetch-HEAD tree-sitterの設定確認 :checkhealth…

Next.jsのoutputStandalone:trueで、pages/_middleware.ts があるとビルドに失敗するのはnext@12.0.10に上げたら直る

Docker イメージを軽くするための設定でoutputStandalone: trueにしていた。 module.exports = { experimental: { outputStandalone: true, }, しかしpages/_middleware.tsがあると下記のエラーが出てnext buildに失敗する。 > Build error occurred [Error:…

ビットコインがGithubで管理されてるってまじ?エンジニアには圧倒的アドバンテージが仮想通貨にはあった件。

俺は仮想通貨のことを何もわかっていなかったのかもしれない。 今日は仮想通貨について衝撃的だったことを書いていく。 ビットコインはGithubで管理されてるってまじ? マジ。 github.com てかなんならビットコインだけじゃなくてイーサリアムとか他の仮想通…

2021年振り返り

今までの振り返り 2019年振り返り 2020年振り返り ハイライト 転職をした 子供が1歳になった 幸福度が突き抜けて人生アガった。オツカレシタッ!! 今年はどんな年だったか 幸福とはなんなのかを真剣に考え、幸せになるための行動ができた年だった。 幸福論、資本主義…

Floating Windowの変態的な使い方

Vim

これはVim Advent Calendar 2021の14日目の記事です。 NeovimにFloating Windowが実装されて以来、様々なプラグインが開発、リプレイスされてきました。 有名所でいうとgit-messenger.vimでしょうか。Floating Windowの良い使い方だなあと感動した覚えがあり…

今月のコミット一覧を出す

GithubでsinceとuntilをURLにつければ検索できるんだな、知らんかった。 https://github.com/Rasukarusan/dotfiles/commits?author=Rasukarusan&since=2021-11-01&until=2021-11-30 コマンドだとこう git log --after '2021/11/01' --before '2021/11/30' 差…

俺がエンジニアとして作りたかったのは「治療薬」だったがしかし。

「君のプロダクトはビタミン剤か?鎮痛剤か?それとも治療薬か?」という記事を読んだ。 blog.btrax.com 記事で紹介されている「ビタミン剤」「鎮痛剤」「治療薬」のプロダクト例は下記。 ビタミン剤:YouTube, Facebook, Tiktok 鎮痛剤:Slack, Zoom, Sales…

VimでmessagesやhighlightなどのExコマンドの結果を別タブで開く

Vim

:tabe :put = execute('messages') めちゃくちゃシンプル。 今まで下記のようなredirを利用した関数を作って実行していたけど、完全に不要だった。 function! s:show_ex_result(cmd) redir => message silent execute a:cmd redir END if empty(message) ech…

macOSでneovimをbuildするとき「ninja: error: loading 'build.ninja': No such file or directory」のエラーが出る

Vim

.depsファイルが邪魔しているのでそれを削除するとbuildできるようになる。 cd neovim sudo rm -rf .deps sudo rm -rf build # buildも一応消しておく buildし直す sudo make CMAKE_INSTALL_PREFIX=$HOME/neovim/nvim install 環境 macOS BigSur 11.23 neovi…

Voicyに出演した

voicy.jp voicy.jp めちゃくちゃ緊張したし全然思った通りに話せなかったけど、オーナーの圧倒的まとめ力によって救われた。 出演して初めて知ったことは、収録はプレゼンや講演、講義をやるのとはまた全然違う緊張感があるということ。 院生時代は毎週教授…

【Neovim】好きな位置にテキストを埋め込んだりハイライトできる「ExtMark」の使い方

Vim

ExtMarkとは 指定した行、列にマーカーをセットできる。セットしたマーカー(位置)に好きな文字列を表示したり、ハイライトできたりする。 テキストの変更を追跡して表示できるので、インデント幅の表示やスペルミスを表すために使われたりする。 ヘルプは:h …

Mac専用sipsコマンドで、画像に枠線をサクッとつける

Mac標準搭載のコマンドでsipsコマンドがある。画像情報を取得したり付与したりできる。 画像のコマンドといえばimagemagickだが、imagemagickよりも少ないオプションで、かつ直感的に実行できるのがsipsコマンドの良いところ。brew等で別途インストールしな…

Sequel AceをApplescriptで操作する

以前Sequel ProをApplescriptで操作するのはやっていたが、昨今はSequel Aceを使うようになった。 Sequel ProとAceではFavorite.plistのPATHやUIの配置などがいくつか異なっていたため、それをまとめたい。 スクリプト まずどういったスクリプトなのかを載せ…

webpack × SentryでSourceMapが読み込まれないときの解決法

ソースマップが読み込まれなくて困ったときの解決方法を書いていくで。 ・releaseタグをinit時にも書いてないか ・urlPrefixをつけているか ...