- 投稿日:2021-12-05T21:37:40+09:00
ウィンドウを最前面化する方法(macOS)
こんにちは。 下記画面例は Terminal ウィンドウが最前面のように一見見えますが、しかしながら左上隅の三色ボタンが灰色であるなど、そうではありません。そのままではサイズ変更もできません。 マウスを用いる操作方法 この場合はウィンドウをマウスクリックし最前面化する必要があります。 キーボードのみを用いる操作方法 Spotlight 検索欄1へ入力し呼び出す操作として、 Terminal ウィンドウを最前面化するには、 Terminal とそこへ入力します。 もしくは、下記の AppleScript を呼び出す方法を考えてみました。 activate_proc.scpt tell application "System Events" repeat with proc in (processes where background only is false and visible is true) set procName to (name of proc) if {"Finder"} does not contain procName then activate application procName exit repeat end if end repeat end tell ショートカットを使って呼び出す ↩
- 投稿日:2021-12-05T18:28:22+09:00
【環境構築】macOS Big Sur 11.6.1 + Dockerのpython containerにpandasをinstall
会社貸与のMacBook Proに飲み物をこぼしてしまい動かなくなったので交換してもらった。 前のマシンにはPythonやらPandasやら使いたいライブラリーを直接インストールしていたので、環境のトラブルがあった場合に色々と面倒だった。今回は素直にDockerで環境構築して、いざとなればimage捨てて作り直せばいいやと思い、環境構築の手順をロギング。 pyhtonのcontainer実行できるようになったので、自分の仕事の効率化のために書いたpythonコード実行する環境を再構築する。 ということで、今回はpandsをinstall 前回までの記事 【環境構築】macOS Big Sur 11.6.1 にDockerをInstall https://qiita.com/cocoapuff/items/e3eee747b1aeafa32037 【環境構築】macOS Big Sur 11.6.1 + Dockerでpython https://qiita.com/cocoapuff/items/1daaf9e91b24bc3818ad pandsをインストール pythonのcontainerは動いている前提 自分macにはpipをinstallしていないので、間違ってMacのterminalで実行しても問題ないけど、cpntainer側のCLIで実行するよう気をつける # pip3 install pandas これだけです。 pandasを使ったpythonコードを実行してみる pandasをimportして使えていることを確かめる簡単なコードを書いて実行してみる pandas_test.py import pandas as pd df = pd.DataFrame( { 'name':['itoh', 'saitoh'], 'age':['20', '30'] }) print(df) # python ./pandas_test.py name age 0 itoh 20 1 saitoh 30 問題なく動いたので、pandasは使える 今日はここまで。 container内でコード書くの大変なのでVScodeで書けるようにしたい。
- 投稿日:2021-12-05T15:36:45+09:00
【環境構築】macOS Big Sur 11.6.1 + Dockerでpython
会社貸与のMacBook Proに飲み物をこぼしてしまい動かなくなったので交換してもらった。 前のマシンにはPythonやらPandasやら使いたいライブラリーを直接インストールしていたので、環境のトラブルがあった場合に色々と面倒だった。今回は素直にDockerで環境構築して、いざとなればimage捨てて作り直せばいいやと思い、環境構築の手順をロギング。 今回はPythonのコンテナを起動するところまで進めたい。 前回記事 [環境構築]macOS Big Sur 11.6.1 にDockerをInstall https://qiita.com/cocoapuff/items/e3eee747b1aeafa32037 pythonのimageをpull dockerhubで良さげなimageを探す pythonで検索してみる [dockerhubより] 素直に"python"を選択する [dockerhubより] "Official image"ということで、まずはこのimageを使ってライブラリーはお好みで追加することにする。 ここから先はCLIで作業が必要になってきた。 仕方が無いので、とりあえずTerminalを起動して、pythonのimageをpullする この時、Dockerが起動していること pythonのバージョンを指定しなければ最新のものを引っ張ってくる $ docker pull python 実行結果 Using default tag: latest latest: Pulling from library/python 5e0b432e8ba9: Pull complete a84cfd68b5ce: Pull complete e8b8f2315954: Pull complete 0598fa43a7e7: Pull complete 83098237b6d3: Pull complete b92c73d4de9a: Pull complete 57f48b8baa06: Pull complete 702d43ac0fd7: Pull complete 5e2753218c06: Pull complete Digest: sha256:a1fba384d3aa879533a271ab5d73965fbd3385648f38835dacd07e519f1c7c3f Status: Downloaded newer image for python:latest docker.io/library/python:latest pythonのコンテナを起動 とりあえずpullしたimageを起動してみる プロンプトが変わる $ docker run -it --name test python /bin/bash # pythonのバージョンがいくつか確認してみる # python --version Python 3.10.0 Docker DesktopのDashboardを見てみる 動いてます "test"コンテナにマウスを当てると"CLI"を起動できる pythonコードを動かす ちゃんとpythonコードを実行できるか試してみようと思ったら、viが動かない # which vi # 無いと何かと不便なのでviをインストールする # apt-get update && apt-get -y install vim 実行結果の表示は長いので割愛 vi入った # which vi # /usr/bin/vi "Hello World"を書いて動かす # vi test.py test.py print("Hello World") # python ./test.py Hello world 動いた。今日はここまで。
- 投稿日:2021-12-05T15:33:57+09:00
Mac OS を Big Sur にして npm が command not found になった時の対処方法
結論から言うと echo "export PATH=$HOME/.nodebrew/current/bin:$PATH" >> ~/.zprofile ではなく echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.zshrc で解決した。 やったこと 最初にこれを読んだが見ている node -v の場所が違うようだった。 https://tanarizm.com/command-not-found-npm なので、こちらをさらに参考に。 https://khom-loi.com/on/56 一旦、解決したと思ったのにまた npm のパスが通らなくなったので、下記を試したら直った。 https://chaika.hatenablog.com/entry/2021/03/26/083000
- 投稿日:2021-12-05T15:17:37+09:00
mac のファイルシステムは大文字小文字を区別しない
APFS で, 大文字小文字が区別されない. docker volume sync, tar file での動作を軽く検証する. 以下の様な動作になり、びっくり $ pwd / $ PWD / $ pWd / $ which echo /bin/echo $ which Echo /bin/Echo $ which ECHO /bin/ECHO $ WHICH ECHO /bin/ECHO $ touch abcd $ ls abcd $ touch ABCD $ ls abcd docker volumen sync した場合 docker for mac で、volumen 同期し, container 内で file を作成してみる. 結果は、mac の動作と同様に, 大文字小文字を考慮せず, 同じ file として扱われる [root@9f0e9d28a78d current]# touch a [root@9f0e9d28a78d current]# ls a [root@9f0e9d28a78d current]# touch A [root@9f0e9d28a78d current]# ls a volume 同期していない dir 内では大文字小文字は区別された [root@9f0e9d28a78d test]# touch a [root@9f0e9d28a78d test]# ls a [root@9f0e9d28a78d test]# touch A [root@9f0e9d28a78d test]# ls A a tar file を解凍した場合は? tar file の中身は以下 drwxr-xr-x 0 ./tmp/ -rw-r--r-- 2 ./tmp/A -rw-r--r-- 2 ./tmp/a 結果, 片方の file は消滅する $ tar zxvf tmp.tar.gz x ./tmp/ x ./tmp/A x ./tmp/a $ ls tmp a 怖いですね git は試していないが, 同様の動作をすると仮定すると, 惑わされる事がでてきそうですね. 怖や怖や
- 投稿日:2021-12-05T02:31:35+09:00
【Go】VsCodeで環境構築をやってみた
はじめに ブロックチェーンの勉強を行っていると、結構Go言語の話が出たり求人とかもGo言語が求められているので、 今後必要になりそうだなーと思ったので早速Udemyで講座を購入し、勉強をはじめました!! が、収録されている時からGoのバージョンが上がっていてgo getが使えなかったりして地味に環境構築に時間が取られたので、他の方にも参考になればと思い投稿することにしました。 Udemy 講座 現役シリコンバレーエンジニアが教えるGo入門+応用でビットコインのシストレFintechアプリの開発 環境 OS : Mac エディタ : VScode Go : 1.17.4 注※本記事ではVscodeのインストール方法は記載しておりません。 Goのインストール Downloadsのサイトからパッケージをダウンロードして、インストールしました。 バージョン確認してGoが無事にインストールできたことを確認! go version go version go1.17.4 darwin/amd64 Homebrewのインストール (私は既にインストール済みだったので、実際にはやっていません) Homebrewのサイトから記載されているインストール用のコマンドをコピーして、ターミナルに貼り付けて実行することでインストールできます。 下記スクリプトをターミナルで実行 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 実行時にパスワード聞かれたりしますが、ログインする時のパスワードを入れればよかったはずです。 バージョン確認してHomebrewが無事にインストールできたことを確認! brew -v Homebrew 3.3.6-72-g5096d6e ... 外部パッケージを取得 プログラムを書くときには外部パッケージを利用していくことになります。 そのためには、Gitが必要らしいので、上記でインストールしたHomebrewを使用してGitをインストールします。 brew install git バージョン確認してGoが無事にインストールできたことを確認! git --version git version 2.24.3 (Apple Git-128) godocを取得 外部パッケージが取得できることの確認としてgodocを試しに取得します。 godocとは? Go言語は、godoc というコマンドがあります。 このコマンドを使用することでgolang.orgのパッケージのドキュメントをオフラインで閲覧することが出来ます。 講座ではgo get XXXで外部パッケージ取得していましたが、私がインストールしたGoではgo getが使用できなくなっており、なんだこれってなりました。。 調べてみると、go1.17からgo getは非推奨、代わりにgo installを使用してねーとのことでした。 上記の理由から以下のコマンドでgodocを取得しました。 go install golang.org/x/tools/cmd/godoc@latest 以下のコマンドでfmtのドキュメントを確認して、godocが無事に取得できたことを確認! したいのですが、ここでも講座ではgodoc fmtでgodocを参照できるとのことでしたが、 仕様が変更されたみたいでgodoc fmtのコマンドを実行しても、以下のメッセージが表示され、godocが読み込めませんでした。 godoc fmt -bash: godoc: command not found 調べてみると、godocのCLIモードはサポート終了されていることが原因らしく、 その代わりにgo docを使用してねーとのことみたいです。 なのでgo docを使用すると長文が表示されており、どうやら無事にgodocが取得できているみたいです。 go doc fmt package fmt // import "fmt" Package fmt implements formatted I/O with functions analogous to C's printf and scanf. The format 'verbs' are derived from C's but are simpler. ... 参考 godocの代わりに go doc を推奨された件について Vscodeをインストール Vscodeのインストールについては、私は既にインストール済みであること、 インストール方法は、たくさん記事があるので本記事では割愛させていただきます。 VscodeでGoの環境を設定 まずはMarketplaceで拡張機能をインストールします。 「Go」と検索すれば一番上に表示されると思います。 拡張機能「Go」がインストールできたら、開発に必要なライブラリ(デバッグ用のライブラリ等)は別途でインストールする必要があるらしいので、実施して行きます。 ・F1で、コマンドパレットを呼び出し、「>go Install」で検索 ・「Go: Install/Update Tools」が表示されるのでクリック ・必要なものを選択し、OKを押下し、インストール完了 とりあえず私は全部にチェックを入れてインストールしました ここまで終われば一旦、設定は完了です。 Goでhello world HelloWorld 用のファイルを作成。 どこでも良いと思いますが、私は以下に作成しました。 $GOPATH/src/hello_world.go GOPATHの場所はgo envで確認できます。 hello_world.goの内容はこんな感じ hello_world.go package main import "fmt" func main() { fmt.Println("Hello world!") } F5でデバッグ実行を行うと、以下のエラーが起きて実行できませんでした。 なにかする度につまづいている気がします。 go: go.mod file not found in current directory or any parent directory; see 'go help modules' (exit status 1) go.modがないんだなーというのはわかりました。 調べた結果modファイルを作ってあげればいいみたいです。 $\tiny{なんで必要とか細かいところまでは今後調べます!!}$ Vscodeでターミナルを開いてgo mod init [プロジェクト名]のコマンドを実行して作成します。 src $ go mod init hello_world go: creating new go.mod: module hello_world go: to add module requirements and sums: go mod tidy go.modというファイルができました。 中身はこんな感じですね。依存関係が追加されていくとかどうとか・・ go.mod module hello_world go 1.17 go.modファイルが無事作成されたことが確認できたので、再度 F5でデバッグ実行を行うと,無事にHello world!が出力されました! 参考 VSCode を使って Go のデバッガーが動くまでの設定をした VSCodeでGoの開発ができるようにする VSCodeでGo言語の開発環境を構築する おわりに Udemyの講座と違う部分もあり、少し時間を使いましたが無事にVsCodeで実行することが出来ました。 長くなってしまいましたが、誰かのお役に立てれば幸いです。 細かい部分の調査ができていなかったり、記載ミス等ありましたら優しく教えて欲しいです
- 投稿日:2021-12-05T02:31:35+09:00
【Go】VsCodeで環境構築手順
はじめに ブロックチェーンの勉強を行っていると、結構Go言語の話が出たり求人とかもGo言語が求められているので、 今後必要になりそうだなーと思ったので早速Udemyで講座を購入し、勉強をはじめました!! が、収録されている時からGoのバージョンが上がっていてgo getが使えなかったりして地味に環境構築に時間が取られたので、他の方にも参考になればと思い投稿することにしました。 Udemy 講座 現役シリコンバレーエンジニアが教えるGo入門+応用でビットコインのシストレFintechアプリの開発 環境 OS : Mac エディタ : VScode Go : 1.17.4 注※本記事ではVscodeのインストール方法は記載しておりません。 Goのインストール Downloadsのサイトからパッケージをダウンロードして、インストールしました。 バージョン確認してGoが無事にインストールできたことを確認! go version go version go1.17.4 darwin/amd64 Homebrewのインストール (私は既にインストール済みだったので、実際にはやっていません) Homebrewのサイトから記載されているインストール用のコマンドをコピーして、ターミナルに貼り付けて実行することでインストールできます。 下記スクリプトをターミナルで実行 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 実行時にパスワード聞かれたりしますが、ログインする時のパスワードを入れればよかったはずです。 バージョン確認してHomebrewが無事にインストールできたことを確認! brew -v Homebrew 3.3.6-72-g5096d6e ... 外部パッケージを取得 プログラムを書くときには外部パッケージを利用していくことになります。 そのためには、Gitが必要らしいので、上記でインストールしたHomebrewを使用してGitをインストールします。 brew install git バージョン確認してGoが無事にインストールできたことを確認! git --version git version 2.24.3 (Apple Git-128) godocを取得 外部パッケージが取得できることの確認としてgodocを試しに取得します。 godocとは? Go言語は、godoc というコマンドがあります。 このコマンドを使用することでgolang.orgのパッケージのドキュメントをオフラインで閲覧することが出来ます。 講座ではgo get XXXで外部パッケージ取得していましたが、私がインストールしたGoではgo getが使用できなくなっており、なんだこれってなりました。。 調べてみると、go1.17からgo getは非推奨、代わりにgo installを使用してねーとのことでした。 上記の理由から以下のコマンドでgodocを取得しました。 go install golang.org/x/tools/cmd/godoc@latest 以下のコマンドでfmtのドキュメントを確認して、godocが無事に取得できたことを確認! したいのですが、ここでも講座ではgodoc fmtでgodocを参照できるとのことでしたが、 仕様が変更されたみたいでgodoc fmtのコマンドを実行しても、以下のメッセージが表示され、godocが読み込めませんでした。 godoc fmt -bash: godoc: command not found 調べてみると、godocのCLIモードはサポート終了されていることが原因らしく、 その代わりにgo docを使用してねーとのことみたいです。 なのでgo docを使用すると長文が表示されており、どうやら無事にgodocが取得できているみたいです。 go doc fmt package fmt // import "fmt" Package fmt implements formatted I/O with functions analogous to C's printf and scanf. The format 'verbs' are derived from C's but are simpler. ... 参考 godocの代わりに go doc を推奨された件について Vscodeをインストール Vscodeのインストールについては、私は既にインストール済みであること、 インストール方法は、たくさん記事があるので本記事では割愛させていただきます。 VscodeでGoの環境を設定 まずはMarketplaceで拡張機能をインストールします。 「Go」と検索すれば一番上に表示されると思います。 拡張機能「Go」がインストールできたら、開発に必要なライブラリ(デバッグ用のライブラリ等)は別途でインストールする必要があるらしいので、実施して行きます。 ・F1で、コマンドパレットを呼び出し、「>go Install」で検索 ・「Go: Install/Update Tools」が表示されるのでクリック ・必要なものを選択し、OKを押下し、インストール完了 とりあえず私は全部にチェックを入れてインストールしました ここまで終われば一旦、設定は完了です。 Goでhello world HelloWorld 用のファイルを作成。 どこでも良いと思いますが、私は以下に作成しました。 $GOPATH/src/hello_world.go GOPATHの場所はgo envで確認できます。 hello_world.goの内容はこんな感じ hello_world.go package main import "fmt" func main() { fmt.Println("Hello world!") } F5でデバッグ実行を行うと、以下のエラーが起きて実行できませんでした。 なにかする度につまづいている気がします。 go: go.mod file not found in current directory or any parent directory; see 'go help modules' (exit status 1) go.modがないんだなーというのはわかりました。 調べた結果modファイルを作ってあげればいいみたいです。 $\tiny{なんで必要とか細かいところまでは今後調べます!!}$ Vscodeでターミナルを開いてgo mod init [プロジェクト名]のコマンドを実行して作成します。 src $ go mod init hello_world go: creating new go.mod: module hello_world go: to add module requirements and sums: go mod tidy go.modというファイルができました。 中身はこんな感じですね。依存関係が追加されていくとかどうとか・・ go.mod module hello_world go 1.17 go.modファイルが無事作成されたことが確認できたので、再度 F5でデバッグ実行を行うと,無事にHello world!が出力されました! 参考 VSCode を使って Go のデバッガーが動くまでの設定をした VSCodeでGoの開発ができるようにする VSCodeでGo言語の開発環境を構築する おわりに Udemyの講座と違う部分もあり、少し時間を使いましたが無事にVsCodeで実行することが出来ました。 長くなってしまいましたが、誰かのお役に立てれば幸いです。 細かい部分の調査ができていなかったり、記載ミス等ありましたら優しく教えて欲しいです