ブログ

読んで思い出す。忘れるために書く

Unison でソースコードを同期する

Unison で双方向同期が出来たのが便利だったのでメモ ※使い方の記録はないので、外部リンク参照のこと 前提例: 開発環境として VirtualBox で CentOS 7 系を使っている 環境が旧すぎるので、じぶんがつかっている「いつもの環境」に近づけるのが困難、ゲスト…

プラグイン coc.nvim を導入した

Vim

プラグインマネージャは dein.vim を使っているので、そこだけインストール方法がちがう プラグインを羅列している .vimrc のブロックに 1行足す call dein#add('neoclide/coc.nvim', {'rev': 'release'}) # 依存ライブラリのインストール bundle install so…

Paiza 問題集「STEP: 3 クラスのメンバの更新」に挑戦した

内容としては だいたい 旧記事とおなじ gouf.hatenablog.com gist.github.com Links クラスのメンバの更新 | レベルアップ問題集 | プログラミング学習サイト【paizaラーニング】

Paiza 問題集「STEP: 1 クラスの作成」に挑戦した

書いたコードは次の通り。 入力データは信頼できるものだと仮定することで、public_send でコードの記述を省力化することができた。 gist.github.com

Paiza 問題集「STEP: 4 クラスの継承」に挑戦した

書いたコードは次の通り。 登場人物、クラス分けを意識して書いた gist.github.com Link クラス・構造体メニュー Ruby編 | レベルアップ問題集 | プログラミング学習サイト【paizaラーニング】 : 「クラスの継承」

watch コマンドで設定したコマンドを自動で定期実行する

前提 下記 いずれかを満たしている環境の話 : ターミナルの画面を2画面用意している tmux などの画面分割で2画面同時操作できる VSCode などの IDE で、「エディタ画面」「ターミナル画面」2画面同時操作できる やりたいこと・解決したいこと プログラミング…

月額報酬額に対して日割り計算をする

コードを書いた。 github.com copy_me.sh を用意している ので、好きな関数名 (eg. hiwari) をつけて その年の月数を渡してあげると「営業日」「日割り額」を出力してくれる hiwari 6 # 今年 (2024年) 6月の日割り額が知りたい 営業日: 20日 日割り額: 30,00…

.NET (C#) プロジェクトでリリースビルドを生成する

dotnet run --configuration Release Link Visual Studio Code を使用して .NET コンソール アプリケーションをデバッグする - .NET | Microsoft Learn

FizzBuzz を書いた (Haskell)

paiza ラーニングの Haskell 問題集 を進めていて、FizzBuzz 回答まで到達できたので記録 パターンマッチングと mapM_ を活用した関数合成で解くことができた 回答コード -- 関数定義 isFizzBuzz n = (isFizz n) && (isBuzz n) isFizz n = (n `mod` 3) == 0 …

asdf でインストールする Vim のクリップボード機能を有効化する (WSL2)

TL;DR asdf を使うと、たとえば Vim とか サクッといろいろインストールできる でも通常は「-clipboard」になるから「+clipboard」にするためには 準備が必要かも (※ vim --version|grep clipboard で拡張機能が有効化されているか否かを確認できる) あとい…

Ubuntu に gitsh をインストールする (configure, make)

目的・ゴール brew install gitsh や pkg_add gitsh とかはサポートされてるけど、Ubuntu では gitsh を「コマンドひとつで簡単にインストール」する方法が用意されていない ソースコードからバイナリを生成してインストールをする (configure と make) おお…

WSL2 + 1Password で SSH 接続・通信をする (npiperelay, socat)

目的・ゴール 1Password が SSH キーを管理できる ので、それを WSL 上でも可能にする 今回の対象は GitHub で、通信テストをして成功すれば OK 環境・前提 Windows WSL2 (Ubuntu) 1Password (開発者向け設定で「SSH エージェントを使用」を ON) go 言語 が…

Power Automate で外部アプリケーションを操作して、ウィンドウ位置を規定位置に復元する

目的とゴール Power Automate を用いて自動化処理をしているが、操作対象としているアプリケーションのウィンドウ位置が原因で、上手く動かないことがある。 これを直したい 事前準備 外部ツール 外部ツールとして「ウィンドウ位置記憶プログラム (VbWinPos)…

O'Reilly Japan で購入した本を Dropbox 経由で iOS Kindle のライブラリに追加する

問題 Amazon では 端末と紐付けたメールアドレスを提供していて、50MB までのファイルサイズに対応しているらしい 一方 Gmail は 25MB までの対応らしく、購入した本によっては メール経由で送ることができない (本記事を書いている時点で そもそも「大きな…

Q. Windows 11 で BlueStacks 5 を動かす

Q&A

A. 「BlueStacks 5 - WindowsでHyper-Vを有効にする方法 – BlueStacks サポート」 を参照する あと「管理者権限で起動する」

経歴情報から のべ経験年数を計算する

計算したことなかったので、できるようにした 前提 経歴情報は Proff に保存している 各経歴の「いつから いつまで」は「年・月」のみで、「日」は含まれない 入力データは 20143 20149 20162 20175 のように「yyyymm」「yyyym」のいずれかで整形されている …

Q. 外部から購入した EPUB ファイルを iPad + Amazon Kindle で読みたい

Q&A

A. 端末に紐づくメールアドレスが与えられているので、そこに EPUB ファイルを添付して送信する 「Everyday Rails - RSpecによるRailsテスト入門」のような本を、「my-account-name_xxxxxx@kindle.com」宛に、任意のメーラーで送信する 3分〜10分ほど待てば…

FizzBuzz の練習課題を解いた (TypeScript)

「プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで」を読み進めて練習課題が出てきたので解いた gist.github.com Links プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで Software …

Q. ファクトリメソッドを主としたクラス実装で、クラスの初期化を外から隠したい

A. private_class_method :new を記述する 参考にしたコードは「良いコード/悪いコードで学ぶ設計入門」の「5.2.1 private コンストラクタ+ファクトリメソッドで目的別初期化」より gist.github.com Links How to make the class constructor private in Ru…

gup をインストールした (バージョンアップ ツール)

github.com gup update で go install [package name] でインストールしたバイナリ群を最新版に更新できる Link nao1215/gup: gup - Update binaries installed by "go install". - GitHub

.NET C# で画像から文字列を検出する (Google Cloud Vision API)

ゴール セットアップ メモ コード Links ゴール Vision API に渡した画像ファイルから、特定文字列が含まれているか否かを判定する セットアップ 初期設定・チュートリアルは「Using the Vision API with C#」が詳しい メモ あとで調べられるようにメモ 手元…

指定ウィンドウの特定領域を画像キャプチャする

ゴール Android ゲーム用のアプリケーション (BlueStacks) ウィンドウを指定 ウィンドウ中に描画されているなかの特定領域を、画像として保存する 本文 次のコード例に書かれている NativeMethods は過去記事参照のこと gouf.hatenablog.com コード gist.git…

C# で Win32 API を呼び出す

ゴール C# から Windows API を呼び出すことで、マウスの自動操作、キーボードの自動操作を実現する コード gist.github.com 上のように定義して、click(x, y) で指定座標に対してクリックすることができる キーボード操作は単純で、直接 SendKeys.SendWait(…

ゲームの周回操作をスクリプト記述機能で省力化する (BlueStacks)

ゴール 周回要素のあるゲームアプリのプレイで、いつもの操作をちょっとラクにしたい 前提 BlueStacks で ゲームプレイしている (Android アプリ) スクリプトの記述 基本的には「待つ (wait x (ms))」「タップする (tap x y)」でだいたいの操作は賄えるはず …

よく使うコピペコードを Listary でクリップボードにコピーする

ゴール YouTube の RSS フィード URL を知りたいことが多いので、*.bat ファイルにコードを書き、それを Listary で呼び出すことで、いつもの作業を省力化する gouf.hatenablog.com バッチファイル 適当な場所にバッチファイルを書いて保存する echo ytIniti…

Q. YouTube のチャンネルページから RSS URL を取得したい

A. 開発者コンソールを開いて次のコードをコピペする ytInitialData.metadata.channelMetadataRenderer.rssUrl 手順 適当なチャンネルにアクセスする : eg. 「獅子神レオナ/レオナちゃんねる - YouTube」 開発者コンソールを開く コードを貼り付けて実行 : y…

Docker 環境の Rails プロジェクトで RSpec を監視・実行する (fswatch)

Docker 環境であっても コンテナが気軽に増設できるなら guard-rspec を立ち上げてもいい 今回は ShellScript で何とかするパターン ゴール docker compose up で立ち上げたコンテナ内で、rspec を実行したい ローカル環境で *_spec.rb ファイルを更新したら…

Q. reCAPTCHA の Ruby 側コードが分かりづらい

A. まとめるとこうなる gist.github.com

Q. エラー: "Couldn't connect to Docker daemon at http+docker://localhost - is it running?" が出る

A. WSL のバージョンをアップグレードする WSL で docker-compose up したときにエラーが出るので、アップグレードする必要があった wsl.exe -l -v # サブシステムのリストアップ wsl.exe --set-version (distro name) 2 # アップグレード あとは次のリンク…

Q. docker-compose 環境で guard コンテナを実行したい

A. つぎの設定を追記する docker-compose.yml : # ... services: # ... guard: build: context: . env_file: - .env command: bundle exec guard depends_on: - mysql volumes: - .:/app tty: true stdin_open: true # ... Dockerfile (Alpine Linux) : RUN …