memo.xight.org

日々のメモ

作成日と更新日を同一の日にする

Summary

作成日と更新日を同一の日にしたい。
スクリプトでまとめて処理する。

#!/bin/bash

function usage {
	cat << __USAGE__
$(basename ${0}) is a tool for update modification date to creation date.

Usage: 
	$(basename ${0}) [FILE]...
__USAGE__
}

if [ $# -gt 0 ]; then
	for i in `seq 1 $#`
	do
		CREATED=`GetFileInfo -d "$1"`
		CREATED_DATETIME=`echo ${CREATED} | sed -e 's!^\([0-9]\{2\}\)/\([0-9]\{2\}\)/\([0-9]\{4\}\) \([0-9]\{2\}\):\([0-9]\{2\}\):\([0-9]\{2\}\)!\3-\1-\2 \4:\5:\6!'`
		echo $1 ":" $CREATED, $CREATED_DATETIME
		SetFile -m "$CREATED" "$1"
		shift
	done
else
	usage
fi


Reference

職業としてのプログラミング - 2017-03-21 - googleフォトアップロード用に動画ファイルの変更日を作成日にあわせる
http://proger.blog10.fc2.com/blog-entry-136.html

撮影日、作成日でファイル名を更新する

Summary

exiftool を利用してExifの情報を元に、ファイル名を更新したい。

撮影日 (Content created) に基づきリネームする

exiftool "-filename<DateTimeOriginal" -d %Y-%m-%d_%H-%M-%S%%-c.%%e *.jpg *.JPG


ファイルの作成日に基づきリネームする

GetFileInfoの日付フォーマットが mm/dd/yyyy hh:mm:ss なので、yyyy-mm-dd-hh-mm-ss とする。

#!/bin/bash

function usage {
	cat << __USAGE__
$(basename ${0}) is a tool for rename based on creation date.

Usage: 
	$(basename ${0}) [FILE]...
__USAGE__
}

if [ $# -gt 0 ]; then
	for i in `seq 1 $#`
	do
		CREATED=`GetFileInfo -d "$1"`
		CREATED_FILENAME=`echo ${CREATED} | sed -e 's!^\([0-9]\{2\}\)/\([0-9]\{2\}\)/\([0-9]\{4\}\) \([0-9]\{2\}\):\([0-9]\{2\}\):\([0-9]\{2\}\)!\3-\1-\2-\4-\5-\6!'`
		echo $1 "->" ${CREATED_FILENAME}.jpg
		mv "$1" ${CREATED_FILENAME}.jpg
		shift
	done
else
	usage
fi


Reference

GitHub - exiftool/exiftool - ExifTool meta information reader/writer
https://github.com/exiftool/exiftool

ExifTool by Phil Harvey
https://exiftool.org/

Qiita - @nekogesaku - 2018-03-18 - exiftoolで画像のEXIF情報を変更する
https://qiita.com/nekogesaku/items/bc4df484b1de2ac6cda0

職業としてのプログラミング - 2017-03-21 - googleフォトアップロード用に動画ファイルの変更日を作成日にあわせる
http://proger.blog10.fc2.com/blog-entry-136.html

Magical 8bit Plug 2 - チップチューン向け無料ソフトウェアシンセサイザー

Summary

2020年2月26日に Magical 8bit Plugが5年ぶりにアップデート。

/Library/Audio/Plug-Ins/Components に Magical8bitPlug2.component ファイルを配置すると、GarageBandで使えるようになる。
Track の Plug-ins から Magical 8bit Plug を選択すれば、音色調整用のウィンドウが表示される。

GarageBand + Magical 8bit Plug 2

Reference

YMCK Official website - Download - Magical 8bit Plug
http://www.ymck.net/download/magical8bitplug/

GitHub - yokemura/Magical8bitPlug2
https://github.com/yokemura/Magical8bitPlug2

Microsoft Excel for Mac でCSVを保存すると日本語がアンダースコアになる問題の解決法

Summary

Microsoft Excel for Mac でCSVファイルを保存すると、日本語をアンダースコアに変換して保存される。

バージョンは
Microsoft Excel for Mac 16.33 (20011301)
macOS Catalina 10.15.3

原因は使用言語がEnglishになっていること。
System Preference - Language & Region - Apps からExcelの言語設定を日本語にすれば良い。

System Preference - Language & Regionをクリック

System Preference - Language & Regionをクリック

Apps をクリック

Apps をクリック

"+"ボタン をクリック

+ボタン をクリック

ApplicationはExcel, Languageは日本語を選択

ApplicationはExcel, Languageは日本語を選択

"Add"ボタン をクリック



"Relaunch Now" をクリックして、Excelを再起動



設定完了

設定完了

gitリポジトリを再帰的にpull

Summary

gfind -L "$@" -name '*.git' -exec sh -xc 'cd "${0%/*}" && git pull' '{}' ';'


一部のディレクトリ (ignore)を除外して再帰的にpull

gfind -L "$@" -type d -name 'ignore' -prune -o -name '*.git' -exec sh -xc 'cd "${0%/*}" && git pull' '{}' ';'


Reference

GitHub - sunaku/home/bin/git-pull-recursive
https://github.com/sunaku/home/blob/master/bin/git-pull-recursive

はがきデザインキット2020の住所録インポートで文字化けする場合の解決方法 -> 失敗

Summary

はがきデザインキット2015の住所録インポートで文字化けする場合の解決方法[2014-12-17-1] と同じの現象が発生。

はがきデザインキット2020の住所録はCSVでインポートが可能。
しかし、Mac で 英語優先にしている場合、文字化けが発生。

はがきデザインキット2015と同様、
System Preferences - Language & Region から
日本語を優先にして再起動して、インポートを行ったが文字化け発生。

なお、CSVの文字コードは UTF-8, 改行コードは CR+LF

Reference

memo.xight.org - 2014-12-17 - はがきデザインキット2015の住所録インポートで文字化けする場合の解決方法[2014-12-17-1]

ゆうびん.jp - はがきデザインキット
https://yu-bin.jp/create/design_kit/

Homebrew Cask で update 時に invalid 'depends_on macos' value Error

Summary

Sequel Proをアップデートしようとしたら invalid 'depends_on macos' value ...
Homebrew2.0.0からは macOS10.8以前がサポート外になり、
macOSのバージョンを表す定数から10.8以前のバージョンが削除されたことが原因。

トラブル例

% brew cask reinstall appcleaner
==> Downloading https://www.freemacsoft.net/downloads/AppCleaner_3.5.zip
==> Downloading from https://freemacsoft.net/downloads/AppCleaner_3.5.zip
######################################################################## 100.0%
==> Verifying SHA-256 checksum for Cask 'appcleaner'.
Error: Cask 'appcleaner' definition is invalid: invalid 'depends_on macos' value: ">= :tiger"

対処法

depends_on macos と書かれている Cask Formula を確認。
サポート外のバージョンであれば、当該行を削除する。

% cd /usr/local/Caskroom
% grep depends_on **/.metadata/**/*.rb
adobe-reader/.metadata/15.023.20053/20170212164009.034/Casks/adobe-reader.rb:  depends_on macos: '>= :mavericks'
appcleaner/.metadata/3.4/20171014100051.121/Casks/appcleaner.rb:  depends_on macos: '>= :tiger'
atom/.metadata/1.27.1/20180528113851.853/Casks/atom.rb:  depends_on macos: '>= :mavericks'
epic-games/.metadata/10.5.4/20191004125924.495/Casks/epic-games.rb:  depends_on macos: '>= :sierra'
google-backup-and-sync/.metadata/latest/20180528062642.748/Casks/google-backup-and-sync.rb:  depends_on macos: '>= :mavericks'
iterm2-beta/.metadata/3.1.6beta4/20180319062833.560/Casks/iterm2-beta.rb:  depends_on macos: '>= :yosemite'
mactex/.metadata/2019.0508/20190519140126.061/Casks/mactex.rb:  depends_on formula: 'ghostscript'
mactex/.metadata/2019.0508/20190519140126.061/Casks/mactex.rb:  depends_on macos: '>= :sierra'
macvim/.metadata/8.1.151/20180815183144.570/Casks/macvim.rb:  depends_on macos: '>= :mountain_lion'
mysqlworkbench/.metadata/8.0.18/20191016183046.847/Casks/mysqlworkbench.rb:  depends_on macos: '>= :mojave'
virtualbox-extension-pack/.metadata/6.0.12/20190904205437.663/Casks/virtualbox-extension-pack.rb:  depends_on cask: 'virtualbox'

Reference

Homebrew 2.0.0 - 2019-02-02
https://brew.sh/2019/02/02/homebrew-2.0.0/

GitHub - Homebrew / brew - brew/Library/Homebrew/os/mac/version.rb
https://github.com/Homebrew/brew/blob/372a8d45325f53355c36c0f1b264b72cc186bcb0/Library/Homebrew/os/mac/version.rb#L6

GitHub - Homebrew/homebrew-cask - Issues #58046 Fix casks with `depends_on` that reference pre-Mavericks
https://github.com/Homebrew/homebrew-cask/issues/58046

Sequel Pro 1.1.2 が終了時にクラッシュする問題

Summary

Sequel Pro 1.1.2 が終了時に必ずクラッシュする。
macOS Catalina 10.15.2 Beta

nightly buildを利用して、解決。
アンインストールすると接続先リストが削除されるとのことなので、
接続先リストをバックアップしてから nightly buildをインストールする。

接続先リストのバックアップ

% $HOME/Library/ApplicationSupport/Sequel Pro/Data/Favorites.plist
cp "$HOME/Library/ApplicationSupport/Sequel Pro/Data/Favorites.plist" $HOME/tmp

homebrew で sequel-pro-nightly をインストール

% brew cask uninstall sequel-pro
% brew cask install sequel-pro-nightly

Reference

Sequel Pro - test-builds
https://sequelpro.com/test-builds

"Adobe AIR.framework" is damaged and can't be opened.

Summary

年賀状作成のため、はがきデザインキットを起動したところ、
Adobe AIRのアップデートを促された。

Adobe AIRのアップデートを行ったところ、
"Adobe AIR.framework" is damaged and can't be opened. のエラーメッセージが表示された。

Adobe AIRアプリケーションを起動すると、
"Adobe AIR.framework" is damaged and can't be opened. のエラーメッセージが毎回表示され、
Adobe AIRアプリケーションが起動できなくなってしまった。

原因と対策

原因は /Library/Frameworks/Adobe AIR.framework への Quarantine Bitsの付与

% cd /Library/Frameworks
% xattr "Adobe AIR.framework"
com.apple.quarantine
% xattr -d com.apple.quarantine "Adobe AIR.framework"
% xattr "Adobe AIR.framework"

Reference

TRAINERROAD - How to Use the Workout Creator on macOS Catalina
https://support.trainerroad.com/hc/en-us/articles/360034878072-How-to-Use-the-Workout-Creator-on-macOS-Catalina

Adobe Support Community - 2019-10-11 - adobe air doesn't install on new mac version
https://community.adobe.com/t5/air/adobe-air-doesn-t-install-on-new-mac-version/td-p/10664008