こんにちは、しきゆらです。
今回は、Ruby2.7から3.1.2に更新したらいろいろ変わっていたのでメモしておきます。
変わったことに気づいたのは、タイトルにあるrubocop
を回したら怒られたからでした。
ということで、怒られたrubocop
の項目とRubyの更新点を今更ながら記載しておきます。
手を動かした記録
こんにちは、しきゆらです。
今回は、Ruby2.7から3.1.2に更新したらいろいろ変わっていたのでメモしておきます。
変わったことに気づいたのは、タイトルにあるrubocop
を回したら怒られたからでした。
ということで、怒られたrubocop
の項目とRubyの更新点を今更ながら記載しておきます。
こんにちは、しきゆらです。
今回は、だいぶ旬に乗り遅れた感がありますが、言語等のバージョン管理をasdf
に乗り換えたので導入方法や使い方をメモしておきます。
導入に経緯を一応書いておくと、私はPCの組み換えやOS不調等で、結構な頻度でクリーンインストールをします。
そのたびにRubyをインストールするためにrbenvを導入し、Nodeを使うためにnを導入し、ということを毎度行っていました。
この作業をあまり意識せずにやっていたのですが、先日ふと面倒だなと思うようになりました。
というのも、それぞれ年に数回程度の頻度でしかやらないので、毎度インストールするタイミングで調べて手順をなぞる、というのが知識にもならず無駄に時間がかかるだけなのでは、という風に思ってしまいました。
この辺を解決するツールはないのか、調べてみると、今回使った「asdf
」というのがあるということを知ったので触ってみた、という感じです。
こんにちは、しきゆらです。
今回は、タイトルの通りWSL2からclaspを使おうとするとofflineと怒られる問題が起こったのでこれを回避する方法をメモしておきます。
気が付くとWSL2からclasp push
をしようとすると、以下のようなエラーが出てしまってプッシュできない状態になっていました。
よくわからないですが、たまにプッシュできたりするので何が悪いのかよくわかりません。
WSLをインストールしなおしたりしても解決しませんでした。
また、調べてもそれっぽい生地が出てこないので「おま環」ぽい気がしています。
さて、これではWSL内で書いたGASをプッシュできません。
これを回避する方法をメモしておきます。
回避方法は単純で、Docker上からclasp push
をするだけ。
調べてみると、結構DockerでGASを管理したい人がいるようで、情報がそこそこありました。
ということで、プロジェクト諸々をDocker上にマウントしてコマンド実行できるようにしていきます。
なお、ここではGASをTypeScriptで書いたのちWebpackでビルドしたものをclaspコマンドでプッシュする流れです。
参考: https://qiita.com/rei-ta/items/61b3fde6a069b77d335d
こんにちは、しきゆらです。
今回は、JS/TS環境でテストを書いて実行できる環境を作る手順をメモしておきます。
個人的に、JSの世界は定期的に天変地異が起こってこれまでデファクト的なツールが使われなくなるイメージがあり、あまり追えていないのが現状です。
そんな中、GASを書くことが増えた影響でJavaScript/TypeScriptを書くようになり、JS側の環境構築をちょこちょこやることが増えたのと、テストを書きたいと思って毎回同じことを調べている気がしたのでここに残しておこう、という魂胆です。
そもそも、JSのテストフレームワークにはどんなものがあるのか、というところからわからなかったのでちょっと調べてみました。
調べてみると、最近はJestというものが強いらしいです。
参考: https://2021.stateofjs.com/ja-JP/libraries/mobile-desktop/
なお、上記サイトではグラフィカルにJSの環境について知ることができるので、暇な時に見てみると面白いかもしれません。
こんにちは、しきゆらです。
最近はコードを書く暇もなく、お仕事を進めているのでブログに書くネタがあまりなく更新できていませんでした。
働かずに生きていきたいと思う今日この頃。
さて、今回はWindows版Alfredぽいランチャー「ueli」を紹介します。
だいぶ前に、Win用軽量ランチャーとして「Keypirinha」を紹介しました。
この記事を書いたときは、ちょうどWindowsとMacを行き来するような形で使っていました。
Macでは標準的についているSpotlightや上位互換なAlfredを使い慣れると、同じようにWindowsでもキーボード操作だけでアプリ起動ができるとうれしいなぁと思いつつそれっぽいアプリを探して見つけたのが「Keypirinha」でした。
一時期はKeypirinhaを使っていましたが、インストール・初期設定が微妙に手間なのがネックでした。
そんな中、使い心地はほぼ変わらず、インストールや初期設定がとても手軽にできるランチャー「ueli」を見つけたので紹介します。
こんにちは、しきゆらです。
前回から2か月ほどたっていて驚いている今日この頃、いかがお過ごしでしょうか。
今回は、ちょっと前に書いた「【Ruby】YAMLに環境変数を埋め込む」で任意の文字列を環境変数に置換する方法をメモしましたが、そのちょっと発展した話です。
タイトル通り、YAMLにローカル変数を埋め込むにはどうすればよいかなぁ、と思って調べてみたら何とかなったのでちょっとメモしておきます。
こんにちは、しきゆらです。
今回は、最近遊んでいるElectronで詰まったところをメモしておきます。
Electronとは、というところはググればいろいろ出てくるのであまり書きません。
個人的には、Webの技術でデスクトップアプリを作れる便利ツールという認識です。
さて、まずcontextBridge
とは何ぞや、というところですが、私もちゃんと触り始めたのは最近なので詳しくはないので書きません。
(というか、書けません)
詳しくは公式ドキュメントあたりを見てくださいな。
https://www.electronjs.org/docs/api/context-bridge
https://www.electronjs.org/docs/tutorial/context-isolation
個人的理解では、レンダラープロセスからNode関連を使うために、扱える範囲を絞るための機能というイメージです。
では、contextBridge経由でAPIを公開するところで詰まったところと、解決方法をメモしていきます。
なお、実行環境等は以下の通り。
こんにちは、しきゆらです。
今回は、WSL2上で動いているUbuntu自体のアップデートをしようとして詰まったのでメモしておきます。
Ubuntuは半年に1回大きめのアップデートが入ります。
こいつをインストールするためのコマンドがdo-release-upgrade
です。
このdo-release-upgrade
さん、WSL環境で実行しようとすると、最初のパッケージのリストを取得した後に失敗します。
何度やっても落ちるので、もしやと思いsystemd
のPIDを1にした状態で実行するとうまくいったのでその時のメモです。
追記: 2122/11/19
WSL自体がsystemdをサポートしたので記事を書きました。
こちらもご覧ください。
こんにちは、しきゆらです。
今回は、もう何回書くのか、という勢いで書いているWSL2上でsystemctlを使うための手順です。
またもやOS入れ直しで環境リセットしたので、再度入れようとしたところ以前の手順では不十分だったのでメモしなおしです。
とはいえ、使うものは天下のgenie
です。
https://github.com/arkane-systems/genie
こんにちは、しきゆらです。
最近はGASをよく書いています。
そんな中、GASを書いていて困るのは「コードにパスワードとかを直書きしたくない」ということ。
環境変数のようなものがあればいいのに・・・と思っていました。
探してみると、一応それっぽいものは用意されていました。
それが、PropertiesService
というもの。
ドキュメント:https://developers.google.com/apps-script/reference/properties/properties
こいつを使えば、コードに書きたくない隠しておきたいものを置いておくことができます。
ということで、今回はPropertiesService
の設定方法や使い方をメモしておきます。