ここのところここを更新してませんでした。
何をしていたかと言えば、執筆予定で書いていた「Arduino-CLIガイド」の執筆をしていました。
Culture Squareのアクセスがイマイチなこともあって、ちょっとテコ入れしようと思って、お正月の前後はいろいろいじっていました。かなり大きく変更を入れたので、mayumiもいろいろやっています。サイト構成を変えて、「各種ドキュメントを置きやすく」しようと思って、そういった感じにしています。
それに併せて、Arduino CLIのドキュメントを翻訳したり執筆したりしていました。基本的には
自分のため
が主なんですが。
「自分のため」となると、
- 思考停止で使える「虎の巻」
- ?と思った時に読むリファレンス
- 書籍書く気分になった時の元ネタ
といったことがゴールとなります。
そこで書いたものは、Arduino CLIの
- 環境設定
- プロジェクトのライフサイクル
- 公式ドキュメントの翻訳
です。この他には、VS Codeを使ったArduino開発について同じような感じで書いてます。
Culture Squareのリニューアルと一緒に公開したいと思います。また、それまでまだかかりそうなので、他の文書も追加して行こうと思ってます。
とりあえず今のところは「モダンなArduino開発」という感じの方向性で文書を書いているところです。出版社やそれ系のサイトで興味があるところがあれば、相談お受けします。
PS.
翻訳部分、当初Google翻訳を下訳にしてやってたのですが、結構酷いことをされて修正に苦労してました。文意を理解しないで適当なことをやってくれる。まぁだからこそ人間が修正するわけなんですが、あまりに厳しい。そこで途中で思い立ってChatGPT(4)を使ったら、格段に修正が減りました。
地味に良いのは、ChatGPTはMarkdownを理解してくれるので、コード部分に余計なことをしないという点ですね。Google翻訳もわからないではない程度には理解してるように見えるんですが、`I`
とかあると待ってましたとばかりに`私`
にしてくれるんで面倒臭いんですよね。
まぁChatGPTは時々大嘘つくので注意が必要ですが、英語→日本語であれば、注意してりゃ何とかなりますね。
PS2.
しかし、ChatGPTは、
Below is an example library `src` folder structure that provides:
- Header file containing the declarations for the library API.
- Source file to use as a fallback for other architectures (`precompiled=full` mode).
- Archive file for the ARM Cortex M0+ architecture of the Arduino SAMD boards.
- Archive file for the ARM Cortex M4 architecture of the Arduino Nano 33 BLE, as a fallback for backwards compatibility
with Arduino development software before the floating point configuration support was added.
- Archive file for the ARM Cortex M4 architecture of the Arduino Nano 33 BLE, compiled for the
`-mfloat-abi=softfp -mfpu=fpv4-sp-d16` floating point ABI configuration.
というのをぶっこんだ時に、
以下は、ライブラリAPIの宣言を含むヘッダーファイル、他のアーキテクチャ用のフォールバックとして使用するソースファイル(`precompiled=full`モード)、Arduino SAMDボードのARM Cortex M0+アーキテクチャ用のアーカイブファイル、浮動小数点設定サポートが追加される前のArduino開発ソフトウェアとの後方互換性のためのArduino Nano 33 BLEのARM Cortex M4アーキテクチャ用のアーカイブファイル、および`-mfloat-abi=softfp -mfpu=fpv4-sp-d16`の浮動小数点ABI設定用にコンパイルされたArduino Nano 33 BLEのARM Cortex M4アーキテクチャ用のアーカイブファイルを提供する例のライブラリ`src`フォルダ構造です。
```
ライブラリ名/
├── src/
│ ├── ライブラリ名.h # ライブラリAPIの宣言を含むヘッダーファイル
│ ├── ライブラリ名.cpp # 他のアーキテクチャ用のフォールバックとしてのソースファイル
│ ├── cortex-m0plus/
│ │ └── libライブラリ名.a # Arduino SAMDボードのARM Cortex M0+アーキテクチャ用アーカイブファイル
│ ├── cortex-m4/
│ │ └── libライブラリ名.a # Arduino Nano 33 BLEのARM Cortex M4アーキテクチャ用のフォールバックアーカイブファイル
│ └── cortex-m4/softfp-fpv4-sp-d16/
│ └── libライブラリ名.a # `-mfloat-abi=softfp -mfpu=fpv4-sp-d16`の浮動小数点ABI設定用のArduino Nano 33 BLEのARM Cortex M4アーキテクチャ用アーカイブファイル
```
なんてことをやって来るなんて、ちょっとびっくり。