JavaScriptのクエスチョンを2つ連続で各ショートハンドの正体(??)
コールドリーディングしていたら出てきた、これ ⇒ ??
なんていう名前なのか調べたら、 Null合体演算子
という名前らしい
この演算子は左辺が null または undefined の場合に右の値を返し、それ以外の場合に左の値を返します。
実際にやってみた
null ?? 'hoge' // hoge undefined ?? 'hoge' // hoge false ?? 'hoge' // false false ?? 'hoge' // false true ?? 'hoge' // true 0 ?? 'hoge' // 0 "" ?? 'hoge' // "" 1 ?? 'hoge' // 1 'fuga' ?? 'hoge' "// fuga"
ちなみにNode.jsではv14移行でないと使えないらしい
macからDocker上で動くUbuntuにMicrosoft Remote Desktopでアクセスする
以前勉強しながら取っていた備忘録が下書きフォルダに埋もれようとしていたので救出した。
危ない危ない。
内容は macからDocker上で動くUbuntuにMicrosoft Remote Desktopでアクセスする
というもの。
今回勉強がてら下記のリポジトリを触ってみた。 docker上でxrdpを動かして、RDP接続できるようにしたもの
ちなみにxrdpとは、LinuxにRDPを提供するサーバプログラムのこと。RDPとはMicrosoft Remote Desktop Protocolのことで、macからの場合は、Microsoft Remote Desktop を使ってアクセスする形となる。
つまり、Windowsからなら何もインストールせずに繋げるよう。
以下、ローカルで試してみた際のメモ。
まずはimageをpullする
docker pull scottyhardy/docker-remote-desktop
起動シェルを作る。 (リポジトリ内にある、起動シェルを参考にしている)
#!/usr/bin/env bash docker run --detach \ --rm \ --hostname="$(hostname)" \ --publish="3389:3389/tcp" \ --name="remote-desktop" \ scottyhardy/docker-remote-desktop
停止するときのスクリプトはこちら (こちらもリポジトリ内にある、起動シェルを参考にしている)
#!/usr/bin/env bash docker kill remote-desktop
macからアクセスする際はMicrosoft Remote Descktopを使ってアクセスする
インストールはApp Store経由で行った。
接続先は localhost:3389
を指定することで接続できる
接続時のユーザ名とパスワードはどちらも ubuntu
である。
実際にアクセスしてみたところ
使用していないDockerコンテナを一括で削除する方法
今更ながら知ったのだが、使用していないDockerコンテナを一括で削除する便利なコマンドがDockerには用意されていた。
(ただしバージョンが 1.13
以上である必要がある。ただ、今であれば基本的に使えるはず)
docker container prune | Docker Documentation
下記のコマンドを打つと、本当に全て消していいのか?と聞かれるので y
を押すと、一括で削除してくれる。
docker container prune
もっと docker ps
でコンテナIDを抽出したのを docker rm
に食わせて〜的なことを考えていた古い頭がアップデートされて良い気分。
ちなみに他にこういうコマンドないのかなーと思って調べてみたら、まとめてくれている方がいたので、そのなかのいくつかの記事を貼っておく
Dockerを使ってmacからwindowsアプリに触る
ちょっとした好奇心でmacからwindowsアプリに触れてみたくなった。
これはそんな備忘録であり、とりあえず試してみた的なメモとなっている。
Dockerでwineを動かす
こちらのリポジトリを使わせてもらった。感謝。
なお、こちらのREADMEにも書かれている通り、GUIアプリを起動しないのであれば、これ単体で良いが、もしGUIを起動させたいなら下記のコンテナと組み合わせる必要がある
(同じ開発者が作っている。)
こちらはVNC Server(X11vnc)と連携してフレームバッファ付きX11 server(Xvfb)を提供するサービスコンテナとのことで、正直ここらへんは詳しくないのだが、どうやら
ということのようだ。
後でちゃんとさらっておきたいところなので、下のドキュメントを後で読んでみようと思い、こちらにもメモする。
今回はwindowsアプリを GUI
で触ってみたいと考えているので、上の2つのリポジトリを触っていくことにする。
Docker image作成
というわけで、まずはdocker imageの作成から。
どちらも git pull
してローカルでビルドしていく。
wineのdocker image
suchja-wine
というタグでビルドしている。
git clone https://github.com/suchja/wine.git cd wine docker build -t suchja-wine .
x11serverのdocker image
suchja-x11server
というタグでビルドしている。
git clone https://github.com/suchja/x11server.git cd x11server docker build -t suchja-x11server .
ビルドは以上となる。
x11serverとwine、それぞれのdocker コンテナを起動させる
コンテナの起動は下記の通り。
VNC_PASSWORD=newPW
というのがVNCで接続したときに使用するパスワード
# x11server起動 docker run -d --name display -e VNC_PASSWORD=newPW -p 5900:5900 suchja-x11server:latest # wineを起動 docker run --rm -it --link display:xserver --volumes-from display suchja-wine:latest /bin/bash
macのfinder上で command + k
で vnc://localhost:5900
を入力し、上のパスワードを入れると、黒い画面に接続される。
これで接続自体はOK
あらかじめwineを動かしているコンテナ内で下記のコマンドを実行していく必要がある
# wine初期化 wine wineboot --init # バージョンを表示してみる wine --version # メモ帳を起動してみる wine notepad.exe
これでメモ帳が起動する
ちなみにこのやり方で起動した場合、アプリのタイトルバーなどが表示されない。
(ウィンドウを閉じるボタンがついている部分)
このDocker imageには winegui
というエイリアスが用意されており、これはいくつかの引数を渡してwineを起動する。
これを実行することでタイトルバーなどが表示された形でwindowsアプリが起動できる。
winegui notepad.exe
閉じるための x
ボタンなどが表示されているのが分かる。
ちなみに上の winegui
の実際のコマンドの内容は下記のようだ
alias winegui='wine explorer /desktop=DockerDesktop,1024x768'
色々と知らないことに触れられて楽しかった。
notionで箇条書き(リスト)のネストの戻し方がわからない
notion使っていて、ちょっと不便だなって思ったこと。
箇条書き(リスト)で書くとき、
* hogehoge1 * fugafuga1 * fugafuga2 * hogehoge2 * piyopiyo1 ・ ・
みたいなのができないこと。
一度ネストしてしまうと、一段ネストを戻すことができず、より深くするか、箇条書きをやめるかしかできなかった。
実現方法をググってもぱっとやり方でてこなかったので、どなたか御存知でしたらコメントいただけると。。。。
追記: Shift + Tabでネストを戻すことが可能
コメントで教えていただきました!とてもありがたい...!
聖剣伝説3 リメイクでクリア後のレベル上げおすすめスポット
あまり調べきれていないので、もっと効率的なやり方はあるかもしれないが、個人的には結構効率よく上げられた感じがするやり方をここに書いていく
ちなみに1時間ほどのプレイ時間でレベルが70から80ぐらいまで挙げることができた。
また、プレイ時間のうち、30分間は(要は3個)神秘のクッキーを使用している。
1.エンカウントアップを珍獣マニアマタローから入手しておく
火山島ブッカを脱出以降、商業都市バイゼルの港に珍獣マニアマタローが出現する。
話しかけるとリンクアビリティ「エンカウントアップ」を入手できるので、レベル上げ前に入手しておく。
2.アニスの禁域にあるアルテナ城の中庭へ向かい、後はひたすら敵を倒し続ける
アニスの禁域を進めていくと、ショートカットが2つ出現するが、そのうちのアルテナ城にすぐ行ける方のショートカットに入り、中庭のような場所へ向かう。
(ショートカットを使えばすぐに行ける場所)。
下記の 神ゲー攻略
内のページに有る アニスの禁域Ⅰ(アルテナ)
という場所がそのマップになる。
【聖剣伝説3 リメイク】アニスの禁域のマップと攻略チャート | 聖剣伝説3攻略Wiki - 神ゲー攻略
ここには敵が出現するポイントが2箇所あるが、エンカウントアップを装備しておくと、片方を倒すともう片方が復活するという状態になるので、往復しながら短時間のうちに経験値稼ぎができる。
神秘のクッキーを使用しながら経験値稼ぎを行えば、なかなか効率よく貯まっていく。
なお、パーティーにアンジェラがいる場合は、魔法連発で良い感じに敵を一層していける。
(炎が弱点のモンスターが何体かいるのでエクスプロードでガンガンなぎ倒せていける)
追記: アニスの禁域のケヴィンのエリア(ビーストキングダム)のほうがもっと効率よくレベル上げできるかも!
下記リンク先の アニスの禁域Ⅳ(ビーストキングダム)
内のエリアのほうがさらに効率よく経験値を稼げるかも。
【聖剣伝説3 リメイク】アニスの禁域のマップと攻略チャート | 聖剣伝説3攻略Wiki - 神ゲー攻略
ボロビンリーダーだけは早めに倒さないと魔法を跳ね返すようになってしまうので(カウンタマジックを使う?)、そこだけ気をつける必要があるが、それ以外はサクッと倒し続けていける。
(アンジェラがいると、魔法で一層していける)