- 投稿日:2020-12-23T21:18:49+09:00
Nuxt.jsの環境構築してみた!
きっかけ
先日のボーナスで欲しかったMacbookを買いました。
元々はiOSアプリの勉強と思って購入しましたが、
興味のあったNuxt.jsで何かアプリ作ってみよう、ということでまずは環境構築から!!準備
Nuxt.jsを動かす
まずnuxtのプロジェクト作成コマンドを叩くためのNpmを入れる。
以下の手順で構築する
1. Command Line Tools$ xcode-select --install
- Homebrew install
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"brew -v でバージョン確認出来たらOK!
- Nodebrew install
$ brew install nodebrewnodebrew -vでバージョン確認出来たらOK!
- Node.jsとNpm install
# このディレクトリを作っておかないとエラーになる $ mkdir -p ~/.nodebrew/src # latestは最新版という意味 $ nodebrew install-binary latest # インストールした後で使用を宣言 $ nodebrew use latest #パスを通す $ echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bash_profile $ source ~/.bash_profileNuxt.jsのプロジェクトを作成して、動かす
以下のコマンドで作成
$ npx create-nuxt-app <project-name>動作確認
$ cd <project name> $ npm run devできた!
次回からはTODOリスト作成を進めてきます!
- 投稿日:2020-12-23T21:18:14+09:00
最速で綺麗なLaTeX環境を構築する手順をまとめてみた(MacOS)
前書き
卒業論文を書くために構築した自分のLaTeX環境をこの記事では紹介します。LaTeXをほとんど使ったことがない状態から構築したので、特に初心者の方に役に立つと思います。また、この記事で環境構築が完結するようにそれぞれの操作を丁寧に解説したので、最速で綺麗なLaTeX環境が作れると思います1。
環境の確認
macOS BigSur 11.1
LaTeXとは
LaTeXとは組版システムのTeX上で開発された文書処理システムのことです。CUIで操作することができるので、慣れればワープロソフトより格段に速く表現力の高い文書を作ることができます。
Homebrewのインストール
TeXはパッケージ管理システムのHomebrew2を利用してインストールすると良いです。Homebrewのインストールについてはこちらの記事の前半を参考にしてください3。
すでにインストールしている方は、以下のコマンドを実行してください4。それぞれのコマンドの意味についても以下の通りです5。
% brew update && brew upgrade && brew cleanup
% brew update:Homebrew自体を更新する% brew upgrade:Homebrewでインストールしたパッケージを更新する% brew cleanup:Homebrewでインストールした以前のバージョンのパッケージのキャッシュなどを削除するMacTeXのインストール
次に、Homebrewを利用してMacTeXのインストールを行います。MacTexにはGUIアプリケーション(LaTeXitとTexShop)とTeXLiveとGhostScriptの三つが含まれます。一つ目のコマンドでMacTexをインストールすることができ、二つ目のコマンドでMacTexからGUIアプリケーションを除いたものをインストールすることができます。今回はGUIアプリケーションが必要ないので、二つ目のコマンドを実行すれば良いです。
% brew install --cask mactex % brew install --cask mactex-no-guiまた、インストール後に
tlmgrなどのTeXに関わるコマンドを実行するには環境変数のPATHに/usr/local/texlive/2020/bin/x86_64-darwinを追加する必要があります6。% echo $PATHの出力に/usr/local/texlive/2020/bin/x86_64-darwinが含まれていない場合は以下のコマンドを実行してください6。ちなみに、exportは環境変数を設定するコマンドです。% export PATH=$PATH:/usr/local/texlive/2020/bin/x86_64-darwinまた、その後に以下のコマンドでTeXLiveのアップデートをしてください7$^,$8。
% sudo tlmgr update --self --all確認
LaTeXのサンプルファイル
hoge.texを用意して% platex hoge.texと% dvipdfmx hoge.dviを順に実行してPDFができることを確認してください。Latexmkの設定
ここまででLaTeX環境を作成することができました。次に、毎回コマンドをいくつも打たなくても済むように、文書の作成時に必要回数だけタイプセットするためのツールとしてLatexmkを使います。Latexmkの説明は省略しますが、ホームフォルダ(
~)に設定ファイルの.latexmkrcを作成しておくとLatexmkの使用時に読み込んでくれます9$^,$10。従って、以下では
.latexmkrcを作成して編集していきます。まずは% touch ~/.latexmkrcを実行して.latexmkrcを生成してください。その後はエディタで編集すれば良いですが、編集できない場合はfinderの"フォルダへ移動"の検索画面に~を打ち込んで移動した後に隠しファイルを見れるようにすると10、直接ファイルを開いて編集できます。編集できる状態になったら
.latexmkrcに以下を貼り付けてください。それぞれのコードの意味は書いてある通りで、%Sはソースファイル,%Oはオプション,%Dは出力ファイルにそれぞれ置き換えられることを表します9。~/.latexmkrc#最大のタイプセット回数 $max_repeat = 5; #DVI経由でPDFをビルドすることを明示 $pdf_mode = 3; #pLaTeXを使う #-halt-on-error:初めのエラーで終わらせる $latex = 'platex %O %S -halt-on-error'; #pBibTeXを使う(参考文献) $bibtex = 'pbibtex %O %S'; #Mendexを使う(索引) $makeindex = 'mendex %O -o %D %S'; #DVIからPDFへの変換 $dvipdf = 'dvipdfmx %O -o %D %S';確認
LaTeXのサンプルファイル
hoge.texを用意して%latexmk hoge.texと実行してPDFができることを確認してください。VSCodeのインストール
VSCodeのインストール方法をまとめてみた(MacOS)に従ってインストールしてください。
この記事にもある通り、Homebrewでのインストールをお勧めします。
VSCodeの設定
先にLatexmkをVSCodeと組み合わせるとさらに便利になり、変更して保存するだけでPDFの生成と更新を行うことができます。また、タブでPDFとLaTeXのソースファイルを同時に見ながら作業することもできます。
VSCodeでLaTeXを使うには拡張機能のLaTeX Workshopをインストールすると良いです。インストール後に
settings.json11$^,$12でLaTeX Workshopの設定をします。VSCodeを開いた状態でcommandと,を同時に押すと設定が出てくるので、画面右上に出てくる下記のマークを押して開いたファイルを編集します。また、
settings.jsonに以下のLaTeXの設定の部分を貼り付ければ問題なく動きますが、変えたい部分は自分でカスタマイズしてください。settings.json{ //----other settings---- //----latex settings---- //viewerをタブで開く "latex-workshop.view.pdf.viewer": "tab", //intellisenseを有効にする "latex-workshop.intellisense.package.enabled": true, //生成ファイルを格納するディレクトリ名 "latex-workshop.latex.outDir": "latex_out", //自動でPDFを更新 "latex-workshop.latex.autoBuild.run":"onFileChange", //生成ファイルで削除するファイル "latex-workshop.latex.autoClean.run": "onBuilt", "latex-workshop.latex.clean.fileTypes": [ "*.aux","*.bbl","*.blg","*.dvi","*.fdb_latexmk","*.fls","*.synctex.gz","*.toc" ], //ビルドの動作 "latex-workshop.latex.recipes": [ { "name": "latexmk", "tools": ["latexmk"] }, ], //ビルドのコマンド "latex-workshop.latex.tools": [ { "name": "latexmk", "command": "latexmk", "args": ["-outdir=%OUTDIR%","%DOC%.tex"] }, ] //----other settings---- }確認
LaTeXのサンプルファイル
hoge.texを開いて保存するだけでhoge.pdfとhoge.logのみがlatex_outに保存されることを確認してください。Mathpix
もう一つ便利なツールとしてMathpixを紹介します。このツールは論文中の数式をスクショするとLaTeXの数式に変換してくれます。
以下のコマンドを実行するとHomebrew経由でインストールすることができます。もちろん公式サイトからdmgファイルをダウンロードしてインストールすることもできます。
また、使い方については難しくないので、公式サイトを眺めてください。
% brew install --cask mathpix-snipping-tool参考にすべきサイト
TeX Users Group
- TeXの本家のサイトなので、全て載っている
- ただし、英語
TeX Wiki
- Texに関することが日本語で書かれている
- 読者参加型なので大抵の内容は書いてある
Latexのサンプルファイル
環境構築の確認用のサンプルファイルです。
hoge.tex\documentclass[dvipdfmx]{jreport} \begin{document} \title{test} \author{hogefuga} \maketitle \section{hoge1} This is sample. \section{hoge2} これはサンプルです。 \end{document}
LaTeXの環境構築に焦点を当てるために省略した部分がある点はご了承ください。 ↩
Homebrewの概要はhomebrewとは何者か。仕組みについて調べてみたを読むと把握できます。 ↩
Homebrewのインストールについてまとめた記事を近いうちに投稿する予定です。 ↩
これ以降、
% コマンド名で実行するコマンドを示します。シェルによっては%が$ですが、適宜読み替えてください。 ↩詳しくはmanコマンドで確認してください。 ↩
2020とx86_64-darwinの部分は環境により異なるので、確かめるようにしてください。 ↩環境によりますが、5分~15分程度はかかると思います。 ↩
--selfがtlmgrのアップデートで,--allがインストールしたパッケージのアップデートを表します。詳しくは
manで確認してください。 ↩.がついているファイルを隠しファイルと呼びます。finder上で
commandとshiftと.を同時に押すと、開いているディレクトリにある隠しファイルが表示されます。 ↩自分の環境では
~/Library/Application\ Support/Code/User/settings.jsonにあるものです。ワークスペースの.vscode配下にあるものを編集しないよう注意してください。 ↩JSONファイルの読み方を簡単に把握しておくと良いです。JSON入門に簡潔にまとまっているので、参考にすると良いです。 ↩
- 投稿日:2020-12-23T21:12:28+09:00
[wip] Mac 設定
基本設定
カーソルを操作しやすくする
- マウスカーソルの動きを速くする
- [システム環境設定] > [トラックパッド]
- 「軌跡の速さ」を調整する
- マウスカーソルを大きくする
- [システム環境設定] > [アクセシビリティ]
- 「ディスプレイ」の「カーソル」タブを選択して、「カーソルのサイズ」を調整する
- キーボードカーソルの動きを速くする
- [システム環境設定] > [キーボード]
- 「キーのリピート」と「リピート入力認識までの時間」を調整する
スリープモードにするキーを設定する
- [システム環境設定] > [キーボード]
- 「ショートカット」タブを選択して、「アプリケーション」を選択
- 「+」を押して、メニュータイトルに「スリープ」、ショートカットに「Command+Option+s(好きなキー)」を設定して「追加」を押す
スリープモードにするまでの時間を設定する
- [システム環境設定] > [省エネルギー]
アプリ
Clipy
Sequel Pro
開発環境
隠し設定ファイル関連
- rails メイン
- ghq と peco の設定
.bashrc
# rbenv [[ -d ~/.rbenv ]] && \ export PATH=${HOME}/.rbenv/bin:${PATH} && \ eval "$(rbenv init -)" # pyenv # 現状入っていないので一旦コメントアウト # eval "$(pyenv init -)" # if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi # git alias g='git' # rails alias bgen='bundle exec rails generate' alias bmg='./bin/rails db:migrate' alias bbk='./bin/rails db:rollback' alias bmgre='./bin/rails db:migrate:reset' alias bseed='./bin/rails db:seed' alias brs='./bin/rails server' alias brc='./bin/rails console' alias broutes='./bin/rails routes' # rspec alias brspec='bin/rspec' # rubocop alias brcop='bundle exec rubocop' # bundle install alias bi='bundle install --path vendor/bundle' # capistrano alias bcap='bundle exec cap' alias bcaps='bundle exec cap staging' # ステージング環境にデプロイ(rake db:migrate込み) alias bcapsdc='bundle exec cap staging deploy:cold' # ステージング環境にデプロイ alias bcapsd='bundle exec cap staging deploy' # 5世代前以降のreleaseを削除する alias bcapsclean='bundle exec cap staging deploy:cleanup' # mysql2 export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/opt/openssl/lib/ # ghq function get_target_repo() { if [ $# -eq 1 ]; then echo $1 else echo $(repos) fi } function sublime() { open -a Sublime\ Text $(get_target_repo $1) } alias repos='ghq list -p | peco' alias repo='cd $(repos)' # peco peco_search_history() { local l=$(HISTTIMEFORMAT= history | \ sort -r | sed -E s/^\ *[0-9]\+\ \+// | \ peco --query "$READLINE_LINE") READLINE_LINE="$l" READLINE_POINT=${#l} } bind -x '"\C-r": peco_search_history'.gitconfig
[user] name = xxx email = xxx [ghq] root = /Users/tomita/Desktop/work/src [alias] co = checkout ci = commit cia = commit -a cm = commit --amend --no-edit cam = commit -a --amend --no-edit s = status st = stash stp = stash pop a = add un = reset HEAD cb = checkout -b d = diff dc = diff --cached b = branch ba = branch -a lo = log la = log --oneline l = log -10 --oneline f = fetch --prune pl = !git pull origin `git rev-parse --abbrev-ref HEAD` plo = pull origin plom = pull origin master ps = push pso = push origin psfo = push -f origin psom = push origin master r = rebase ta = log --oneline --all --decorate --graph t = log -10 --oneline --all --decorate --graph p = !git push origin `git rev-parse --abbrev-ref HEAD` delete-merged-branch = !git branch --merged | grep -v \\* | grep -v master | xargs -I % git branch -d % [core] excludesfile = /Users/tomita/.gitignore_global
- 投稿日:2020-12-23T18:30:52+09:00
【mac】PythonでRealSense D415のサンプルを動かす
RealSense D415とは
Intel社の提供するRealsenseは奥行き知覚機能を有するカメラデバイス.公式ではmacのサポートをしていないが,librealsenseという非公式のライブラリで動かすことができる.
環境
- macBookPro(13-inch, 2017, Twoo Thunderbolt 3ports)
- macOS Catalina 10.15.7
- zsh
- Homebrewインストール済
- PyenvでPythonの環境構築済
環境構築手順
必要なライブラリをインストール
ターミナルを開きホームディレクトリで以下のコマンドを一行ずつ実行する
ターミナル$ brew install python $ brew install libusb pkg-config $ brew install homebrew/core/glfw3 $ brew install cmake $ brew install boost $ brew install flann $ brew install vtk5 –with-qt $ git clone https://github.com/PointCloudLibrary/pcl $ cd pcl $ mkdir build && cd build $ cmake .. $ make $ sudo make installlibrealsenseのソースコードをインストール&build
cdコマンドでホームディレクトリに戻り,librealsenseの本体をインストールする
3行目の使用しているPythonの絶対パスの部分はwhich pythonで出力されたパスに置き換えるターミナル$ git clone https://github.com/IntelRealSense/librealsense.git $ cd librealsense $ mkdir build && cd build $ cmake .. -DBUILD_EXAMPLES=true -DBUILD_WITH_OPENMP=false -DHWM_OVER_XU=false -DBUILD_PYTHON_BINDINGS=true -DPYTHON_EXECUTABLE:FILEPATH=使用しているPyhtonの絶対パス -G "Unix Makefiles" $ make -j2 $ sudo make install私の環境ではPythonのバージョンが3.8系では動かなかったため事前に3.6系へバージョンを変えておく(今回はpython3.6.7を使う)
/libresenseディレクトリに戻りターミナル$ pyenv install 3.6.7 $ pyenv local 3.6.7
pyenv versionsコマンドで/libresenseディレクトリ以下がpython3.6.7になっていることを確認する
また,このままだと動かないと思うので以下の手順でsoファイルがおいてある場所(以下A)を確認する
- VSCode等で
librealsense/build/CMakeCache.txtを開くcommand + Fで検索窓を開きPYTHON_INSTALL_DIR:PATHを検索するPYTHON_INSTALL_DIR:PATH:PATH=xxxとかいてある.xxxがsoファイルの置いてあるディレクトリ(A)シンボリックを置く場所(以下B)を確認する
ターミナル$ python3 >>>import site; site.getsitepackages()その後確認した場所(B)へ移動し,シンボリックを作成する
ターミナル$ cd Bへの絶対パス $ ln -s 確認したsoファイルのパス(A)/pyrealsense2.cpython-36m-darwin.so pyrealsense2.so $ ln -s 確認したsoファイルのパス(A)/pybackend2.cpython-36m-darwin.so pybackend2.so
pyrealsense2のインポートが通るか確認ターミナル$ python >>> import pyrealsense2 >>>このように
importが通ればOKサンプルを動かす
macとRealsenseをUSB接続し,サンプルファイルが置いてあるディレクトリに移動し実行する
ターミナル$ cd ~/librealsense/wrappers/python/examples $ python 動かしたいファイル名
参考
(参考Qiita1)[https://qiita.com/mizumasa/items/c6ca2c73fa86c9a5a39c](参考Qiita2)[https://qiita.com/comachi/items/14b358568365bc5ee474]
- 投稿日:2020-12-23T15:57:35+09:00
Excel 2019 for Mac のファイルアクセス権限
Excel 2019 for Mac のファイルアクセス権限
MacOS Mojave から Mac のアプリはセキュリティが強化され、操作毎にアプリが初めてアクセスするファイルやフォルダに権限を与える作業が必要になりました。
特にVBAを利用される方はDir関数等でフォルダ内のデータをピックアップするや別のブックを参照するなどで初めてアクセスするファイル、フォルダにはVBAが中断され、ファイルアクセス権の付与作業が求められます。
例えば、ファイルの移動をするNameステートメントを使っても、初めてアクセスするファイル、フォルダの場合はVBAが中断され、ファイルアクセス権の付与作業が求められます。
Sub FileMove() Dim file As String Dim dir As String file = Range("B2").value dir = Range("B3").value & Application.PathSeparator & "sample.csv" Name file As dir End Sub設定 > セキュリティーとプライバシー > プライバシー でファイルとフォルダのアクセス権を与えても個別に許可する必要があります。ただし、一度アクセス権を付与すると別のExcelファイルでもアクセス権は維持されます。
回避方法
大変煩わしいだけでなく、別のブックへの参照をするVBAを実行する際はそこで処理が停止してしまうのでできれば避けたいところですが、回避するためにはAppleScriptで同様の機能を実装するしかありません。
VBAからAppleScriptを利用するにはAppleScriptTask関数(Excel2016 for Macから)を利用する必要があります。
詳しい情報はこちらのブログにも書いています。もしよかったらご覧ください。
- 投稿日:2020-12-23T14:38:55+09:00
Macの不調にはSMCリセットが効くぞぉ・・・(Intel Mac)
はじめに
買って2ヶ月程経つ私のお気に入りMacbook Pro(16インチ)。
途中でM1 Macbookの登場とかありましたが、別に欲しくないもん・・・(欲しい)
で、まぁ2ヶ月間不調無くしばらく動作していたのですが、急遽初期化をしなければならない事情が出てきたので初期化を行ないました。
すると・・・
初期化が終了し、起動後キーボード向かって右上のUSB Type-C端子が効かんやん!!って状態になって大焦りしたのでここに対処法をメモ書きしておきます。
買って2ヶ月、Apple Careにも加入していないのでマジで顔が真っ青になりました。症状
キーボード向かって右上のTypeC端子だけが反応しない。逆に言うと他は反応する。
ケーブルが壊れているのかと思い、AnkerのUSBハブを取り付けるも反応せず。
コネクタ側が故障しているのかとも思ったが、大してコネクタに対し負荷のかかる使い方をしていないので不思議だなぁと思いながら、高額な修理代を思い浮かべながら顔が真っ青になっていった(俺の症状言ってどうするんダ)SMCリセットという魔法
intel系Macには、System Management Controllerと呼ばれるシステム管理機能が搭載されています。
これらは主に電源管理やバックライトなどを管理しているもので、これに何らかの異常が発生すると各パーツとの連携が取れなくなり、給電を停止したりファンを高速回転させたりという措置をとるようです。
どうやらこれは「電源周りが故障したまま給電をして火災発生などのトラブルが起きないようにする」「ファンを停止させてCPUが異常加熱するのを防ぐ」というように連携が取れなくなれば必ず安全な方に転ぶようなシステムになっているからだそうです。で、大抵は本当に壊れているわけではなく、システム構成から変な動作になっているだけなので、この類のトラブルはSMCをリセットすると治ることが多いようです。
以下ではMacbookを例にご紹介します。Apple T2チップが搭載されているMacでは
- Macを終了(電源を落とす)
- Shift(右)とOptionとcontrolを7秒間押し付ける
- 追加で電源ボタンも加え、さらに7秒間押し続ける
- キーを離してMacを普通に起動
簡単ですね。
T2チップ非搭載のMacでは
- Macを終了(電源を落とす)
- ShiftとOptionとcontrolと電源ボタンを同時に10秒間押し付ける
- キーを離してMacを起動
デスクトップでは手順が異なるようなので、詳しくはこちらのサイト様が非常に分かりやすいです。
nvram/PRAMリセット
SMCリセットでも治らない場合はnvram、またはpramのリセットにより改善する可能性があります。
nvramとpramは設定を保存しているメモリだそうで、古い言い方がPRAM、最近のMacでの呼び名がnvramだそうです。nvram/PRAMリセット方法
Optionとcommandと「P」「R」キーを同時に20秒くらい長押しすると完了します。
この間Macは2回再起動します。起動音が鳴るMacや鳴る設定にしているMacでは、起動音が2回流れるので、それを合図に手を離します。補足
nvram/PRAMをリセットすると、一部設定情報もリセットされるので、起動後に画面の輝度等が変わっている場合があります。
まとめ
今回の事件で学んだことは
- USBが効かなくなったりファンが高速回転し出しても慌てず騒がず落ち着いて
- 顔青ざめるな
- nvram/PRAMのリセットとSVCリセットを試してみるのだ。
ということでした。
これでもだめなら・・・青ざめるしか無い・・・
- 投稿日:2020-12-23T10:03:40+09:00
MySQL基本構文一覧
<使用環境>
- macbook air (2020 M1)
<開発環境>
- homebrew (homebrew 2.6.2)
- MySQL (mysql Ver 14.14 Distrib 5.7.32, for osx10.16 (x86_64) using EditLine wrapper)
- ターミナルを使用
<基本構文一覧>
- データーベース作成(CREATE DATABASE)
- CREATE DATABASE DB名;
- データーベース削除(DROP DATEBASE)
- CREATE DATABASE DB名;
- テーブル作成(CREATE TABLE)
- CREATE TABLE テーブル名 (フィールド名1 データ型,フィールド名2 データ型...);
- テーブルの削除(DROP TABELE)
- DROP TABLE テーブル名;
- データの挿入(INSERT)
- INSERT INTO テーブル名 (値1,値2,値3...)
- データの検索(SELECT)
- SELECT カラム名1,カラム名2... FROM テーブル名
- カラム名に「*」を使用する事で全データを取得
- データの更新(UPDATE)
- UPADATE テーブル名 SET カラム名=更新したい値 WHERE 条件;
- データの削除(DELETE)
- DELETE FROM テーブル名 where 条件;
- 投稿日:2020-12-23T08:58:26+09:00
[備忘録]パワポが死んだ時の対処
起動時の謎のエラー
Run-time error '53': File not found:/Library/Application Support/Adobe/MACPDFM.MacPDFM.framework/Versions/A/MacPDFMが出るようになって、PowerPointが使えなくなった。
環境
macOS Big Sur
Version 11.1原因
Adobe Acrobat DCをアンインストールしたのが問題らしい。
ちゃんとCreative Cloudからアンインストールしたんだけどなぁ
対処
~/Library/Group Containers/UBF8T346G9.Office/User Content.localized/Startup.localized/PowerPoint
に行って
SaveAsAdobePDF.ppam
を削除する。ターミナルで
rm ~Library/Group\ Containers/UBF8T346G9.Office/User\ Content.localized/Startup.localized/PowerPoint/SaveAsAdobePDF.ppamを実行しても良い。
なお、ここら辺のパスは微妙に変わるっぽいので(参考にしたサイトは.localizedがなかった)
- 適宜確認しつつそれっぽいところに行く、
- User\ Content.localized/Startup.local下でfind(fd) SaveAsAdobePDF.ppamをする
などすると良い
- 投稿日:2020-12-23T03:23:06+09:00
2020/12/23現在.MACでのAVR開発
概要
AVRマイコン(Arduinoなどに積まれているマイコン)をMACで開発するための手順をまとめました.
インストールするもの
Cross Pack for AVR :https://www.obdev.at/products/crosspack/index.html
以前はこれで,makefileの生成,コンパイルなどいろいろできたが,MACOSのバージョンアップでコンパイラのバージョンが合わなくなり,使えなくなった.現状更新は止まっている模様.- Arduino
MACベージョンアップにより,Cross Pack for AVRのコンパイラが利用できなくなったため,Arduino内のコンパイラを利用する.[1]- avrdude
マイコンにプログラムを書き込むためのもの.brewで公開されている.[2]手順
1. Arduinoをインストール
最新版のArduinoをインストール.
2. コンパイラ類のパスを見つける
以下のパスに,Arduinoが利用するコンパイラ類が配置されている./Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin3. AVR Toolchainへのシンボリックリンクを/usr/localに作成
cd /usr/local sudo ln -s /Applications/Arduino.app/Contents/Java/hardware/tools/avr avr4. パスを通す
export PATH=/usr/local/bin:/usr/local/avr/bin:$PATH5. avrdudeのインストール
brew install avrdude使い方
以下のmakefileをコピー
# Name: Makefile # Author: <insert your name here> # Copyright: <insert your copyright message here> # License: <insert your license reference here> # This is a prototype Makefile. Modify it according to your needs. # You should at least check the settings for # DEVICE ....... The AVR device you compile for # CLOCK ........ Target AVR clock rate in Hertz # OBJECTS ...... The object files created from your source files. This list is # usually the same as the list of source files with suffix ".o". # PROGRAMMER ... Options to avrdude which define the hardware you use for # uploading to the AVR and the interface where this hardware # is connected. We recommend that you leave it undefined and # add settings like this to your ~/.avrduderc file: # default_programmer = "stk500v2" # default_serial = "avrdoper" # FUSES ........ Parameters for avrdude to flash the fuses appropriately. DEVICE = atmega328p CLOCK = 8000000 PROGRAMMER = -c avrispmkII -P usb #usbasp OBJECTS = main.o Timer1.cpp Servo.cpp FUSES = -U hfuse:w:0xd9:m -U lfuse:w:0xd2:m -U efuse:w:0xff:m # ATMega8 fuse bits used above (fuse bits for other devices are different!): # Example for 8 MHz internal oscillator # Fuse high byte: # 0xd9 = 1 1 0 1 1 0 0 1 <-- BOOTRST (boot reset vector at 0x0000) # ^ ^ ^ ^ ^ ^ ^------ BOOTSZ0 # | | | | | +-------- BOOTSZ1 # | | | | +---------- EESAVE (set to 0 to preserve EEPROM over chip erase) # | | | +-------------- CKOPT (clock option, depends on oscillator type) # | | +---------------- SPIEN (if set to 1, serial programming is disabled) # | +------------------ WDTON (if set to 0, watchdog is always on) # +-------------------- RSTDISBL (if set to 0, RESET pin is disabled) # Fuse low byte: # 0x24 = 0 0 1 0 0 1 0 0 # ^ ^ \ / \--+--/ # | | | +------- CKSEL 3..0 (8M internal RC) # | | +--------------- SUT 1..0 (slowly rising power) # | +------------------ BODEN (if 0, brown-out detector is enabled) # +-------------------- BODLEVEL (if 0: 4V, if 1: 2.7V) # # For computing fuse byte values for other devices and options see # the fuse bit calculator at http://www.engbedded.com/fusecalc/ # ATTINY2313の場合 # Fuse high byte: # 0xd9 = 1 1 0 1 1 0 0 1 <-- RSTDISBL PA2がIOピンか(0)、RESET設定か(1) # ^ ^ ^ ^ ^ ^ ^------ BODLEVEL1 # | | | | | +-------- BODLEVEL2 >> 100:4.3Vリセット # | | | | +---------- BODLEVEL3 # | | | +-------------- WDTON ウオッチドッグ有効(0使用する、1:使用しない) # | | +---------------- SPIEN (if set to 1, serial programming is disabled) # | +------------------ EESAVE チップ消去からEEPROM内容保護(0:保護、1:未保護) # +-------------------- DWNEN デバッグWIRE機能許可(0:有効、1:無効) # Fuse low byte: # 0xA4 = 1 0 1 0 0 1 0 0 # ^ ^ \ / \--+--/ # | | | +------- CKSEL 3..0 (8M internal RC) # | | +--------------- SUT 1..0 (slowly rising power) # | +------------------ BODEN (if 0, brown-out detector is enabled) # +-------------------- CKDIV8 システム クロック 8分周選択。 0:8分周 1:分周なし # Tune the lines below only if you know what you are doing: AVRDUDE = avrdude $(PROGRAMMER) -p $(DEVICE) COMPILE = avr-g++ $(INCLUDES) -Wall -Os -DF_CPU=$(CLOCK) -mmcu=$(DEVICE) # test: # echo $(COMPILE) # symbolic targets: all: main.hex .c.o: $(COMPILE) -c $< -o $@ .S.o: $(COMPILE) -x assembler-with-cpp -c $< -o $@ # "-x assembler-with-cpp" should not be necessary since this is the default # file type for the .S (with capital S) extension. However, upper case # characters are not always preserved on Windows. To ensure WinAVR # compatibility define the file type manually. .c.s: $(COMPILE) -S $< -o $@ flash: all $(AVRDUDE) -U flash:w:main.hex:i fuse: $(AVRDUDE) $(FUSES) # Xcode uses the Makefile targets "", "clean" and "install" install: flash fuse # if you use a bootloader, change the command below appropriately: load: all bootloadHID main.hex clean: rm -f main.hex main.elf $(OBJECTS) # file targets: main.elf: $(OBJECTS) $(COMPILE) -o main.elf $(OBJECTS) $(LIBINCLUDES) rm *.o main.hex: main.elf rm -f main.hex avr-objcopy -j .text -j .data -O ihex main.elf main.hex avr-size --format=avr --mcu=$(DEVICE) main.elf # If you have an EEPROM section, you must also create a hex file for the # EEPROM and add it to the "flash" target. # Targets for code debugging and analysis: disasm: main.elf avr-objdump -d main.elf cpp: $(COMPILE) -E main.c4. makefileの編集
makefileの以下の部分は,利用するマイコン,ライタに応じて書き換える必要がある.DEVICE = atmega328p # 利用するマイコン CLOCK = 8000000 # CPUのクロック PROGRAMMER = -c avrispmkII -P usb # 利用するライタ OBJECTS = main.o # コンパイルするプログラム FUSES = -U hfuse:w:0xd9:m -U lfuse:w:0xd2:m -U efuse:w:0xff:m # マイコンのヒューズビット詳細については,[3]で詳しく解説されている.
5.プログラムの作成
LEDを点滅させるプログラムを載せておきます.#include <avr/io.h> #include <util/delay.h> #define TRUE 1 #define FALSE 0 #define NULL '\0' // ビットをオンオフするマクロ #define SBI(reg,bit) reg |= (1 << bit) #define CBI(reg,bit) reg &= ~(1 << bit) int main() { int T=1000; while(1){ SBI(PORTB,DDB0); _delay_ms(T); CBI(PORTB,DDB0); _delay_ms(T); } return 0; }6.コンパイル+マイコンへの書き込み
make # プログラムをコンパイル make fuse #ヒューズ設定をマイコンに書き込み make flash # コンパイル済みのプログラムをマイコンに書き込み.備考
手順3のmakefileは,Cross Pack For AVRによって生成したもの.しかし,インストールする必要はない.
参考
- 投稿日:2020-12-23T01:51:39+09:00
Mac版Chromeの検索窓でキーワード入力中に変換確定のEnterを押した時点で検索されてしまう問題
はじめに
MacのGoogle Chromeで新しいタブを作成し、画面中央の検索窓に複数のキーワードを入力しようとするが、ローマ字の変換を確定しようEnterキーを押した時点で検索が開始されてしまって、とっても不便なのです。
2020年の8月頃からGoogleのコミュニティ上に症状は報告されている。
- Mac chrome 変換を確定するためにENTERキーを押すと、その時点で検索が実行されてしまう
- 日本語入力がおかしい
- 新しいタブの画面中央の検索窓にキーワードを入力中、変換確定のEnterを押すと自動的に検索されてしまう
使用環境
- Mac OS Big Sur バージョン 11.1
- バージョン: 87.0.4280.88
使用環境は現時点ですが、OSとChromeがバージョンアップする以前から発生している。
行なった対処
Chrome の設定をデフォルトに戻したり、再インストールしても解消しなかった。
解決方法
ゴーゴー ゴム銃
私も同じ症状で使いづらさを感じていて解決法を探していました。
新しいタブのページはなぜか変換で検索してしまうのであきらめて、
choromeの拡張機能で「あたらしいタブで任意のページを開く」というのを発見しましたのでそちらを使い https://www.google.com/webhp?hl=ja こちらのページを開くようにして、とりあえず解決しました。New Tab Redirect
https://pc-karuma.net/google-chrome-new-tab-redirect/
[新しいタブの画面中央の検索窓にキーワードを入力中、変換確定のEnterを押すと自動的に検索されてしまう]>(https://support.google.com/chrome/thread/67105054?hl=ja)2020年の8月頃からGoogleのコミュニティ上に症状が報告されているが、いまだ改善されない。そのうちアップデートで解消されると思われるが、それまでの対応方法として、ゴーゴー ゴム銃さんの解決方法で対応する。
拡張機能の「New Tab Redirect」を登録します。
https://chrome.google.com/webstore/detail/new-tab-redirect/icpgjfneehieebagbmdbhnlpiopdcmna?hl=ja-jp
- 「その他のツール」→「拡張機能」をクリックします。
- 「New Tab Redirect」の「詳細」をクリックします。
- 「拡張機能のオプション」をクリックします。
- Redirect URLに「https://www.google.com/webhp?hl=ja」を入力し「Save」ボタンをクリックします。
- 新しいタブを表示します。
- ブックマークバーが非表示になってしまった場合、ブックマークバーを表示するようにしてください。
4番のRedirect URLまでの図入りの説明は下記サイトを参考にしてください。
Google Chrome - 新しいタブに特定のページを表示 - 拡張機能「New Tab Redirect」最後に
解決方法で不便なのは解消されたのですが、不具合なのでとっとと直して欲しい。
- 投稿日:2020-12-23T00:20:12+09:00
M1 Mac でWindows10を使おう!
はじめに
Armアーキテクチャを搭載したMac(通称 M1 Mac)が出たということでとても話題になっています。
課題のひとつとしてWindowsが使えない、というものがありましたが、Arm版Windows10が動作するParallelsDesktop(Preview Version)が出たということで、さっそく試してみました。OS仮想化ソフト「Parallels Desktop」がM1 Macに対応 Arm版Windows 10動作に意欲https://t.co/npn5PEPIXf pic.twitter.com/9rQeikx5JB
— ITmedia NEWS (@itmedia_news) 2020年12月18日前提
- M1 Mac が使えること
- MacBook Air / MacBook Pro / MacMini どれか
- これがないと始まりません
- 今回はMacBook Airを使用しています
- Paralellsのアカウントを持っていること
- 持っていなければ作成すれば問題ないです
- Windows Insider Program に参加していること
- 無償なので手持ちのマイクロソフトアカウントから参加してみてください
手順
- Parallels Desktop for Mac with Apple M1 chip (Apple Silicon) をここからダウンロード
- .dmg形式のファイルがダウンロードできますので、普通にMacにインストールしましょう
- アクティベーションキーが表示されますので、どこかに保存しておきましょう
- WindowsInsiderPrebiewARM64 をここからダウンロード
- Parallels Desktopを起動し、アクティベーションキーを入力します
![]()
- .VHDXファイルをダウンロードしていると見つけてくれますので、そのまま「作成」へ。
![]()
- 作成開始
しばらく待ちます
![]()
![]()
- なんと!できあがってしまいました。ここまで15分程度しかかかりませんでした。
使ってみたらどんな感じ?
- Windowsにはこんな感じで認識されていました。
![]()
- Parallels側の設定がこちら。デフォルトでプロセッサが2つ、メモリが3Gのようです。
- 割当数など変更できますが、プロセッサを8個割り当てたら起動しませんでした。
![]()
- このへんを参考に日本語化するとよいと思います。
- Edgeを起動してみましたが、特にもたつくこともなくスムーズに動いていますね。
なかなかスムーズに動いていると思う。 pic.twitter.com/RauGWVIADx
— や た (@yt_tb) December 22, 2020おお。シングルコアでは仮想環境でありながらThinkCentreよりも上ってことになりました。
マルチコアではコア数の違いで負けていますが、設定を変えれば簡単に凌駕できそうですね。課題
動作が不安定
利用できるアプリに制約がある
- Arm版Windows10では、ARM32,ARM64アプリはネイティブ実行でき、x86(32bit版)アプリはOSのエミュレーション機能(WOW64)を使って実行できます。
- しかし、現在のWindows10で主流となっているx64(64bit版)アプリは実行できないため、x64アプリしか提供していないものは使えないという状況になっています。
- 例えば、Adobe製アプリは32bitアプリのサポートを打ち切っているため、現時点ではArm版Windows10において安定した環境での動作は望めません。ただし、Arm版の開発も進んでおり、ベータ版であれば入手できます。
- また、x64エミュレーションが可能なArm版Windowsも開発者向けに公開されています。一般公開はまだ先になりますが、Arm版Windows10の環境も整いつつあるといった感じでしょうか。
最後に
- 当初M1 Macの大きな欠点のひとつとして、『(仮想環境にせよデュアルブートにせよ)Windowsが使えない』が挙げられていました。今までのIntel Macとはアーキテクチャが変わってしまうので仕方ないかなと諦めていたのですが、まさかこんなに早い段階でWindowsが使えるようになるとは思ってなかったので、びっくりしました。
- ライセンス周りだけ解決していただければ胸を張って使い続けることができるので、Microsoftには頑張ってほしいものです。















