そのへんの日記

そのへんにいる

ラテーヌの虹。進捗

ラテーヌの虹。きれいだなー。

チョコボ堀のスキル上げ中に遭遇。すぐ消えちゃった。こういう演出良いよね。


アンバスのポイントが増量中みたいなのを聞いたので、ちょっと行ってみた。

1章とてやさ、2章ふつうで焼印込みでそれぞれ1000ホールマークももらえた。

めっちゃうまいじゃん!と思って2章ふつうにもう一回行ったら焼印込みでいつもの600だった。一日1回各難しさ毎に+200%加算されるらしい。

毎回1000ホールマークくれたら武器とか作り放題よな。。と思ったけどライトゲーマー的にはもっと欲しいぞ。

とりあえず1000はうまいのでできるだけ毎日通おうと思いました。

獣青で装備できるネイグリングほしいー。

ドメインベージョンやりたいけど過疎鯖で結構な割合でソロになるから、装備整ってないソロだと討伐できないんだよね。アンバスで装備もらえるのありがたし。


蝕世のエンブリオをちょっと進めた。

シャントットが珍しく院長服を着ていた。

何かアイテムを要求された。めんどくせー

FF11に復帰した。あとアドゥリンMクリアした

2023年の11月くらいに復帰した。FF14が2024にFF11っぽいダンジョン?を実装するらしいから、それに合わせて復帰するためにまずFF11に復帰した。うおー。

ミッションはフェイスの絆HQキャンペーンを利用して一気にクリアした。

↓これは大団円中のわいとモリマー。目瞑ってるやんけ

世界樹の導きのアシュラック戦は絆HQ中じゃないと厳しかった。装備そろってる人なら大丈夫かも?

復帰して適当な装備でやってる獣だと盾が落ちる場面があった。

モリマー、ダラクァルンがすぐ落ちるみたいなコメントをみて心配だったけど、意外と大丈夫だった。サポ踊りで適当にケアルIIIしてたら問題なかった。

アシェラかわいい~。ミッション終わってもたから、しばらく登場がないのは寂しい。。

これから蝕世のエンブリオを進める。 そのまえにチョコボ堀キャンペーンが来ているのでチョコボを育てる。

未だにキャンペーンが来るということは神コンテンツに違いない。やるぞー

nodenvでNode.jsをインストールした

anyenvを使った。 だいぶ苦戦したけどログが残ってなかったので、anyenvはインストール済みの前提で進める。

nodenv + Node.js をインストールする

nodenvをインストールする

% anyenv install nodenv
Install nodenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

成功した場合、 exec $SHELL -l を実行してターミナルを再起動する。

バージョンを確認する。

% nodenv -v
nodenv 1.4.0+5.acf64b3

バージョンらしきものが出たらOK。

Node.jsをインストールする

インストールできるバージョンを確認する

% nodenv install -l

安定板をインストールしたいが、どれが安定板かわからないので、公式サイトを見に行く。

Node.js を見ると、2022/6/21時点では 16.15.1 LTS だった。 これをインストールする。

% nodenv install 16.15.1

エラーが出なかったらたぶん成功している。 試しにnodeが動くか確認する

% node -v
nodenv: node: command not found

The `node' command exists in these Node versions:
  16.15.1

エラーが出た。 グローバル環境に使う設定をしてないからなるらしい。 インストールしたバージョンをグローバル環境で使うように設定する。

% nodenv global 16.15.1

設定できたことを確認する

% node -v
v16.15.1

これで完了!

トラブルシュート

nodenv install でエラーが出る

nodenvでインストールしようとすると下記のエラーが出た。

% nodenv install 16.15.1
Downloading node-v16.15.1-linux-x64.tar.gz...
-> https://nodejs.org/dist/v16.15.1/node-v16.15.1-linux-x64.tar.gz
error: failed to download node-v16.15.1-linux-x64.tar.gz

BUILD FAILED (Ubuntu 18.04 using node-build 4.9.84)

Binary installation failed; try compiling from source with `--compile` flag

ググったところ、パッケージが足りていないらしい。 ubuntuをアップデートしたら直った。

sudo apt-get update

WSLのバージョンをv1からv2にアップグレードした

WSL のインストール | Microsoft Docs を見ながらやった。

WSLが未インストールの場合は wsl --install でいけるらしいが、インストール済みなのでいくつか手順を踏んだ。

まとめ

wsl --set-version <distro name> 2 コマンドでアップグレードできた。

今使っている <distro name>wsl -l -v コマンドで確認できる。

やったこと

事前準備

現在のバージョンを確認する。

> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Running         1

WSL 1が使われている。

この手順はいらないかもしれないが、一応既定のバージョンを設定する。

> wsl --set-default-version 2
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください
この操作を正しく終了しました。

これで新しい Linux ディストリビューションをインストールする時の既定のバージョンがWSL 2になった。

WSL2のインストール

wsl --install を実行して WSL ヘルプ テキストが表示される場合は、wsl --list --online を実行して使用可能なディストリビューションの一覧を表示し、wsl --install -d を実行してディストリビューションをインストールしてみてください。

と書いてあったので、その通りに進める。

wsl --list --online を実行して使用可能なディストリビューションを確認する。

> wsl --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl --install -d <Distro>' を使用してインストールします。

NAME            FRIENDLY NAME
Ubuntu          Ubuntu
Debian          Debian GNU/Linux
kali-linux      Kali Linux Rolling
openSUSE-42     openSUSE Leap 42
SLES-12         SUSE Linux Enterprise Server v12
Ubuntu-16.04    Ubuntu 16.04 LTS
Ubuntu-18.04    Ubuntu 18.04 LTS
Ubuntu-20.04    Ubuntu 20.04 LTS

'wsl --install -d ' を使用してインストールします

の案内の通りに進める。 Ubuntuが4つあるが、 Ubuntu だと最新のLTSバージョンがインストールされるらしい。 特にこだわりはないので、 Ubuntu をインストールする。

> wsl --install -d Ubuntu
Ubuntu は既にインストールされています
Ubuntu を起動しています...

なんということだ既にインストールされていた!

Ubuntuのターミナルが立ち上がったので、何のバージョンがインストールされているのか確認する。

% lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.6 LTS
Release:        18.04
Codename:       bionic

18.04がインストール済みだった。あれ最新って20.4じゃないの?

最新バージョンのUbuntuを入れなおす

バージョンを指定してインストールする。

> wsl --install -d Ubuntu-20.04
ダウンロード中: Ubuntu 20.04 LTS
インストール中: Ubuntu 20.04 LTS
Ubuntu 20.04 LTS はインストールされました。
Ubuntu 20.04 LTS を起動しています...

インストールが成功し、新しいバージョンのUbuntuターミナルが起動した。

新しいユーザー名とパスワードを聞かれたので設定した。

PowerShellのターミナルで、WSLのバージョンが2になったのか確認する。

> wsl -l -v
  NAME            STATE           VERSION
* Ubuntu          Stopped         1
  Ubuntu-20.04    Running         2

これ既存のがv2になるわけじゃないのか。

今まで使っていたUbuntuをWSL2にする

ファイルの移動とかが面倒なので、できれば今まで使っていたUbuntuを使い続けたい。

WSL 1 から WSL 2 へのバージョンのアップグレード 以前にインストールされた Linux ディストリビューションで WSL 1 から WSL 2 に更新するには、コマンド wsl --set-version 2 を使用します。

まじかよ手順あったわ。インストールいらんかったんや。

> wsl --set-version Ubuntu 2
変換中です。この処理には数分かかることがあります...
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください
変換が完了しました。

数分待ったら終わった。 Ubuntuはどうなったのか。

> wsl -l -v
  NAME            STATE           VERSION
* Ubuntu          Stopped         2
  Ubuntu-20.04    Stopped         2

やったー---!!!

不要なUbuntuを削除する

間違ってインストールした Ubuntu-20.04 を削除する。

WSL 削除でぐぐったけどよくわからなかったので、ヘルプを参照する。 -h をつければ大抵ヘルプが出てくるはずだ。

> wsl -h
~~~ 略 ~~~
    --unregister <Distro>
        ディストリビューションの登録を解除し、ルートファイルシステムを削除します。

    --unmount [Disk]
        すべての WSL2 ディストリビューションからディスクのマウントを解除してデタッチします。
        引数なしで呼び出された場合は、ディスクをマウント解除してデタッチします。
~~~ 略 ~~~

削除っぽいのが2つ出てきた。 unregister が正解な気がするが、一応ぐぐる

Linux ディストリビューションの登録解除またはアンインストール

公式がヒットした。unregister であってたので実行する。

> wsl --unregister Ubuntu-20.04
登録を解除しています...

消えたのか確認する。

> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Stopped         2

一覧からなくなった。一瞬で終わった。 PCからもちゃんと消えたのか??

他のストア アプリケーションと同様に、Windowsコンピューターで Linux ディストリビューション アプリをアンインストールすることもできます。

やっぱ消えてなさそう。

PC内のappでUbuntuを検索したら出てきた

アンインストールして完了!

JSXでもEmmetを使う

デフォルトだとhtml/cssファイルでしかEmmetが使えないが、設定を追加することでJSXでもEmmetを利用できる。

設定方法

  1. 左下の歯車マーク>設定>拡張機能>Emmet>Include Languagesで項目の追加ボタンを押す
  2. 項目に javascript , 値に javascriptreact を設定する

設定&gt;拡張機能&gt;Emmet&gt;Include Languages
VSCodeでInclude Languagesに設定した

ユーザーで定義したコンポーネントだけだと使えないっぽいが、普通のdom要素(div等)と組み合わせたらEmmetで展開できて便利な気がする。

WSLにPython入れた

anyenv + pyenvでpyenvはインストールできたが、pyenvがなぜかcommand not foundになった。

homebrewでやろうとも思ったけど、検索した感じ思ったよりめんどくさそうだった。

Macだと苦労した記憶ないんだけどなあ。


あきらめて公式のインストーラー経由で入れた。 最初からこうすれば早かった。。

Pythonインタプリタをブラウザ指定したら、認識されなかった。

ブラウザからだと f:/Python/Python310/python.exe という指定になり、 No such file or directory と言われた。

直接 /mnt/f/Python/Python310/python.exe を指定したら動いた。


尚、インタープリタ指定は、 F1 でコマンドをパレットを開き、 Python: Select Interpreter を選べば変えられる。

JavaScriptは関数型プログラミングが良いって聞いた

関数型プログラミングが何かよくわからないので調べた。

関数型プログラミングはまず考え方から理解しよう - Qiita

小さい無名関数を定義して、それの組み合わせでやりたい処理を実現する方法に見えた。

OOP(Object-Oriented Programming、オブジェクト指向プログラミング)とどっちがいいんだ?

どちらを選ぶ?関数型プログラミングとオブジェクト指向プログラミング(OOP) | CircleCI

FP(Function Programming)の基本概念

  • 関数はオブジェクトなので、引数や戻り値としても扱える
  • すべての値を不変として扱う
  • 純粋関数を実現できる

純粋関数ってなんや。。

純粋関数 - Qiita

参照透明性があり、副作用が発生しない関数のことらしい。

FP はすべてのオブジェクトが既知であるが、挙動の変わる可能性がある場合に優れている。 反対に、OOP は挙動が既知であるが、実際のデータ型の変わる可能性がある場合に優れている

よくわからん。

他のサイトも調べた感じ、こっちが良い!っていうようなもんでもないらしい。

ハイブリッドにも使えるって書いてあった。

とりあえずReactはFPの思想で書かれてるから、今はFP使えってことはわかった。