Mac OS10.14以降+Firefox環境でAdobe fontsの貂明朝の文字色が上書きされる問題についての根本的な解決にならない情報共有

タイトル通り結論から言うと、根本的な解決方法は無いので、webフォントで貂明朝を使わないのが一番かと思います。

先週2日間くらい嵌りました。
Mac+Firefox環境下(Mac OS 11.4/ Firefox 89.0.2)でcssでcolor: #fff;にしているのにも関わらずテキストの色が黒になってしまって、何をしても解決できないという問題に直面しました。

発見当初、cssの継承でうっかり黒を記述しているのかな?自分の書き方がおかしいのかな?と安直に考えていたのですが、css内のどこを見ても黒を指定している記述が無く、八方塞がりでした。

思いついた対策としては、color: #fff !iimportant; のように!importantを付けるとか、セレクタの特定度を極限まで細分化して何がなんでもこのテキストだけは白くしてやる!と息巻いたところでなんの結果も得られず敗北を味わいました。この仕事を始めて15年以上になりますがこんな無力感を味わったのは初めてだと思いました。

ここまでセレクタの特定度を高めても効かなかった

おや?何かおかしいですね?

色々やってるうちにスーパーリロード(キャッシュリセット)をすると、一瞬だけ白が表示された後に黒くなっている現象に気づきました。
つまり、
ロードが終わる→cssが効く→色が置き換えられている
という順で文字色が黒になっている仮説が立てられました。

上記の仮説が正しいのなら、何かロードの後に走る処理、要するに大体Javascriptの問題だと思ったのですが、ロード後に何か処理をするようなJavascriptを記述した記憶が一切ありません。
とりあえず一度Javascriptを全て切りました。

原因はJavascript!?

Javascriptを全て切ることによって、color: #fff;が適用されることがわかりました。
原因がある程度絞れたので、Javascriptを一個ずつ戻していき、最終的に、Adobe fontsの<script>を除外すればいいということがわかりました。

貂明朝のせいだった

今まで数年Adobe fontsを利用してwebフォントを使ってきましたが、貂明朝は使ったことがなかったので、色指定が効かないということに気づきませんでした。
試しに簡単なhtmlを作ってテストをしてみたところ、ビンゴでした。

// css
h1 {
  font-family: ten-mincho-text, serif;  ←貂明朝
  font-weight: 400;
  font-style: normal;
  color: #f00; ←赤
}
h2 {
  font-family: ten-mincho-text, serif; ←貂明朝
  font-weight: 400;
  font-style: normal;
  color: #00f; ←青
}
h3 {
  font-family: fot-matisse-pron, sans-serif; ←FOTマティス
  font-weight: 500;
  font-style: normal;  
  color: #f00; ←赤
}
h4 {
  font-family: fot-matisse-pron, sans-serif; ←FOTマティス
  font-weight: 500;
  font-style: normal;  
  color: #00f; ←青
}

// html
<h1>貂明朝テキスト 赤色指定赤色指定赤色指定赤色指定</h1>
<h2>貂明朝テキスト 青色指定青色指定青色指定</h2>
<h3>FOTマティス 赤色指定赤色指定赤色指定赤色指定</h3>
<h4>FOTマティス 青色指定青色指定青色指定</h4>

貂明朝には色指定が効かない

貂明朝を使わなければ、問題は解決、ということです。
しかしながら、どうしてもサイトのコンセプトと、デザイン的に貂明朝を使いたかったのでもうちょっと粘って調べてみることにしました。
すでに、2年前に対処法が発見されていました。

color 指定が効かないなら、文字自体に色を付けるのを諦め、背景色を文字で切り取って表示することで、まるで文字色を付けているかのように見せています。

Mac+Firefox の一部の環境で「貂明朝」に色が付かない問題に対処する
https://qiita.com/sofpyon/items/d8f5fe83117f189f1c55

なお、この問題についてメッセンジャーで友人に相談していたのですが、友人曰く、「background-clip: textは確かdisplay: inlineやinline-blockなどのインライン系要素でしか適用できないので、この対応はヤバい気がする。」とのこと。
block要素で使えないとなると、かなり使用範囲が狭くなってしまいますね。
ぶっちゃけ画像でテキストを作った方がまだ汎用性があるような気がします。

泣く泣く貂明朝を諦めて、FOTマティスにすることにしました。FOTマティスなら上記画像の通り色指定が効きます。

この問題はMac OS 10.14以降で発生

Adobeのフォーラムでも同様の事象の記事がありましたが、Adobeのサポートの環境では色変更が効くらしい、つまりMac+Firefoxでも色変更が効く環境があることがわかります。

サポートに問い合わせをしたのですが、
確認したところ、弊社の検証環境では「貂明朝」をwebフォント化させてCSSにて文字色を変更すると
Firefoxでも色の変更が反映いたしました。
と返信がありました。

貂明朝のwebフォントにおいて、Firefoxでcssでの文字色指定が効かない件
https://community.adobe.com/t5/adobe-fonts%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A9%E3%83%A0/%E8%B2%82%E6%98%8E%E6%9C%9D%E3%81%AEweb%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88%E3%81%AB%E3%81%8A%E3%81%84%E3%81%A6-firefox%E3%81%A7css%E3%81%A7%E3%81%AE%E6%96%87%E5%AD%97%E8%89%B2%E6%8C%87%E5%AE%9A%E3%81%8C%E5%8A%B9%E3%81%8B%E3%81%AA%E3%81%84%E4%BB%B6/m-p/10587306

また、先述の友人の環境(Mac OS 10.13.7 + Firefox 89.0.2)では、色変更が適用された状態で表示できるということでした。

記事には記載されていませんが、おそらくAdobeのサポートの検証環境もOS 10.13 High Sierra以前のものだと推測されます。

また、同じフォーラム記事のリプライ欄にMac OS 10.14.5で文字色変更ができないという投稿がありましたので、OS 10.14以降にこの現象が発生していることがわかります。

Mac(10.14.5)/Firefox68.0.1で色が着かないのを確認しました。Firefoxは素の状態です。

貂明朝のwebフォントにおいて、Firefoxでcssでの文字色指定が効かない件
https://community.adobe.com/t5/adobe-fonts%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A9%E3%83%A0/%E8%B2%82%E6%98%8E%E6%9C%9D%E3%81%AEweb%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88%E3%81%AB%E3%81%8A%E3%81%84%E3%81%A6-firefox%E3%81%A7css%E3%81%A7%E3%81%AE%E6%96%87%E5%AD%97%E8%89%B2%E6%8C%87%E5%AE%9A%E3%81%8C%E5%8A%B9%E3%81%8B%E3%81%AA%E3%81%84%E4%BB%B6/m-p/10587306

おまけ:XDの色指定も効かなくなった

もともとXDでデザインを作っていた時は色は白だった貂明朝の色が、いつの間にか黒に置き換わっていた。

おそらくいつかのアップデートで仕様が変わっていて、いつの間にか色指定が効かないようになっていました。

PhotoshopやIllustratorでも確認しましたが、そちらは特に問題なく、色の変更が可能でした。

ウェブカメラを隠すNopeを買ってきた

最近Macのカメラが乗っ取られるという記事をよく見かけるので、僕のひどい顔を世間様にお見せするわけにはいかないので、いっそシール(ウェブカメラ目隠しシール
)で塞いでしまうことも考えていたのですが、お客さんとビデオ会議するのにも使うので、ちゃんと隠せて、さっと外せてすぐ使える、みたいなものがいいかと思い、カメラを隠す「Nope」というスタイリッシュな磁石を買ってきました。

参考:「ウェブカメラをスタイリッシュに隠して盗撮を防止する「Nope」

2016-10-03-16.41.09

秋葉館というお店で、iMac用が1組、iPadやMacbook用の2組の3組がセットになっていて1,242円でした。

iMac用とiPad用の違いは、磁石の大きさくらいです。
二つの磁石の片方に両面シールを貼って固定し、もう片方を目隠し用として使います

2016-10-03-17.08.39

実際に、Photo Boothを使って試してみたところ、貼り付けた位置が少しずれてしまって少し角が見えてしまいました。

スクリーンショット 2016-10-03 17.13.59

なお、まぁ顔が見えないならいいやと妥協しました。
固定側の磁石をちゃんと貼れば、しっかり隠れるとおもいます

[Mac]フュージョンドライブをフォーマットしたらSSDとHDDに分かれてしまった件

年末に仕事を片付けた途端に風邪をひいてしまい、意識朦朧としながらmacのメンテをしようと悪戦苦闘しておりました。

どういう問題があったのかという経緯を説明しますと、以下のような状態でした。

  1. 11月にiMac 2015 Lateモデルを買った
  2. time machineバックアップから古いMacのデータを移行した
  3. 外部ディスプレイをthunderboltに繋いでいるとOSが起動しない

appleのサポートに電話して、買ったばっかなのにおかしいだろ!と話して色々電話でサポートしてもらってたんですが、原因はどうやらカスペルスキーか、何かのドライバなんじゃないかというところまで絞れ、試しに別のパーテーションでOSをインストールしたら問題なく起動するということまでわかりました。

カスペルスキーをアンインストールしたり、ドライバを削除したりしてみたのですが、どこかしらに残っているキャッシュなのか、何のファイルが影響しているか不明のままで直すことができなかったので、仕事が片付いたタイミングで大掃除しようと思い、心機一転クリーンインストールして新しい気持ちで新しい年を迎えようと決断しました。

まず、今のOSをフォーマットしようとしたのですが、フォーマット自体ができず、強制的にフォーマットをかけました。
起動時にcmd+Rでリカバリモードを立ち上げ、ターミナルでドライブの名前を表示。

diskutil cs list

すると、「Logical Volume Group」にA2AB~~~~~みたいな文字列が表示されます。
disk

この、A2AB~~~~~みたいな文字列を指定することで、フォーマットができました。

diskutil cs delete A2AB~~~~~

disk2

ここまでは良かったんです。

フォーマット自体は出来たのですが、フュージョンドライブというのは、そもそもSSDとHDD、二つのドライブを論理的に結合させて構成されているということに気づきます。
そしてディスクユーティリティを開くと、SSDとHDDにわかれてしまった状態でどちらかにOSをインストールしなければならないような状況になってしまいました。
※この時点でテンパってしまってスクリーンショットや写真を残しておりません。

調べると、ディスクユーティリティを開いた時点で、「SSDとHDDにエラーがあるから修復しますか?」的なダイアログが表示され、修復をすればもとのフュージョンドライブに戻るらしいのですが、僕の場合はSSDとHDDにわかれている状態がさも当たり前のように振舞われ、修復自体ができず八方塞がりだと確信しました。

色々調べた結果、複数のドライブをフュージョンドライブにする方法もあるらしく、以下のようにターミナルへ入力しました

diskutil cs create FusionDrive disk0 disk1

作成した論理グループのUUIDを確認します

diskutil cs list

そして、UUIDを入力して論理ボリュームを作成しました

diskutil coreStorage createVolume FD202F33-B382-451E-9358-09CB4D684E8B jhfs+ "Macintosh HD" 100%

本当はスクリーンショットを残してここに入れたかったのですが、なにぶん風邪で頭が回らなかったのと、テンパっていたため拙い文章で申し訳ありません。

これで元通り。ディスクにOSを再インストールして今に至ります。

[Mac]Yosemiteで突然日本語入力ができなくなる

表題の通り、OSX 10.10(Yosemite)では、突然日本語入力ができなくなる問題があります。
この現象が起こるタイミングはよくわからないのですが、体感的に「かな」と「英数」の混合文を入力していると発生するような気がするようなしないような、とにかくいつ起こるかが明確ではありません。

とりあえず、いろいろ調べた結果、Yosemiteからことえりがなくなったことが大きな原因ではないかとのことでした。

appleのサポートコミュにも、同様の問題が報告&解決策として上がっていました。
Yosemite 日本語入力 かな切替等
Re: Yosemite 日本語入力 勝手にローマ字に変換

解決策

上記コミュにも記載されていますが、

  1. Finderで「$HOME/Library/Dictionaries/JapaneseInputMethod/PhraseLearning_ja_JP.db.bundle」を探して、削除。
  2. セーフモードで起動
  3. さらに再起動

で解決できるそうです。
なぜ「できるそう」という曖昧な文章かと言うと、問題の発生タイミングが不明だから、本当に解決しているかどうか検証できないためです。

to kokomade kaitekimashita ga mata hassesi shimasita. mou dame kamo shire nai ne.

[Mac]バックグラウンドの動作が極端に遅かったらAppNapを疑う。[メモ]

去年、OSX 10.9 Mavericksにアップデートしてから、なにやら急にパフォーマンスが低下した様な気がしてたんです。
買って3年間、尋常じゃないくらい酷使してたもんで、メモリもたっぷりあるしHDDがもうダメなんだろうなあって勝手に判断してSSHDに換装したら、前より調子いい感じになったので問題なく使っていたんですが、元凶はどうやらAppNapにあったらしいんです。

AppNapとは

Apple – OS X Mavericks – 先進のテクノロジー

App Nap。舞台裏では電力を無駄にしません。
App Napは、複数のアプリケーションを同時に使用する時の消費電力を節約できるようにします。OS Xは、使用中のアプリケーションがほかのウインドウの後ろに完全に隠れると、それを認識することができます。もしその時点でそのアプリケーションが音楽の再生、ファイルのダウンロード、Eメールのチェックなどあなたのための処理を実行していない場合は、App Napがアプリケーションの処理速度を下げることで大切なバッテリーを節約し、駆動時間を延ばします。そして、あなたがそのアプリケーションをまた使い出すと、瞬時にフルスピードで動く状態に戻します。これは極めてシームレスに行われるので、あなたはずっと同じ状態で動いていたと思うでしょう。App NapはSafariのタブでも同様に機能するので、表示されているタブだけがフルスピードで処理されます。App Napにより、CPUのエネルギー使用量を最大23パーセント削減できます。

上記Appleサイトより引用
つまり、前面にあるウインドウが別のウインドウを隠したとき、隠れているウインドウのパフォーマンスは低下していて、改めて隠されたウインドウが前面に出たときはパフォーマンスが低下していた事を気づかれないようにOS側で制御して何事も無かったかのように動きまっせって事らしい。

職業柄PhotoshopとIllustratorとDreamweaverとブラウザと仮想Windowsは常に立ち上げていて、それぞれを随時切り替えながら作業を行っているので、10.8の時には感じる事の無かったちょっとしたテンポのずれが非常にストレスになったりもしていて、3年前のモデルでも性能的に劣るマシンではないとは分かっているので、何かしらの原因があるのだとモヤモヤしておりました。

AppNapを切る

電源がない場所でのラップトップでの作業中なら省電力でもオールウェルカムですが、電源があって、ハイパフォーマンスで作業を進行したいって時に作業のリズムを狂わされるのは非常に厄介なので、対策を取りました。

一括で設定とかだったら、資料用のexellやらpdfビューアやらの見るだけのアプリまでもリソース喰われるのでちょっと困ってしまうところだったけれども、なんと個別のアプリケーションそれぞれにAppNapのオンオフが設定可能です。

で、どうやんの?

  1. Finderでアプリケーションフォルダを開き
  2. アプリケーションファイル(.app)を選択し
  3. 「command+I(右クリック→情報を見る)」
  4. 「AppNapを切る」にチェック

これだけ。

変えたばかりで、まだしっかりと確認していないので、何とも言えないけどこれでまた快適に作業できるんじゃないかなぁ。

iMac(2007 Mid)のHDDを交換しました。

実家で約3年ほど放置していた2007MidのiMacを久しぶりに起動した所、HDDから異音と共に動作しなくなってしまったので、さらに放置しておりましたが、ドライブやその他のパーツに関しては全く問題が無いので、なんとか復活させようと画策いたしました。

いろいろ調べた結果、手順と必要なものもわかりました。

最低限必要なもの

  • プラスドライバー
  • トルクスドライバー(ヘックスローブ) T-8
  • 大きめの吸盤(2個くらい)

あったら良いなーなもの

  • エアダスター
  • 拭き後が残らない液晶クリーナー
  • 毛布
  • 高さ20センチくらいの台
  • 掃除機
  • エタノール
  • 綿棒

では行った手順をどぞー。

1.メモリスロットパネルを外す

iMacには、画面下にあるリンゴのさらに下の面にメモリ増設用のスロットがありまして、そこを塞いでいるパネルがプラスのネジで留められています。

後の手順で、アルミの被さっている部分をごそっと外すのですが、このメモリスロットのパネルが外れていない状態ですと、下部が曲がったりしてしまうそうです(事前に知っていないとパネル外さないよねこれ)。

外しました。きったねー!!!!

掃除機でホコリを吸い取りました。

2.画面のガラスを外す

iMac2007というか、近年のiMacは大福iMacの後の液晶の大型化に伴い、画面にガラスが貼られています。
まずはガラスを取らないと話が始まらないという事で、吸盤を使って、ガラスをとっぱらいます。実際吸盤は何でも良いと思います。前述で大きめでって書いてるのは、安定感があるから。
iMacのガラスは磁石で張り付いてるので、吸盤をくっつけてちょっと引っ張れば簡単にはずれます。ぐいっとね。
吸盤を貼付けて持ち上げると、ガラスが外れます。

ガラスはどこかに置いておきましょう。

3.周りのアルミパネルを外す

液晶のガラスを外すと、写真のような、液晶がむき出しの状態になります。
ここで、トルクスドライバー(ヘックスローズ)を使用してアルミ部分に付いているネジを外していきます。ネジは全部で上辺4つ下辺4つ左右にそれぞれ2つずつで合計12個ありました。
無くさないように注意。

なお、ネジの種類は下辺の中央2つのネジだけ長く、それ以外は全て同じものでした。

アルミパネルは、裏側を抱え込むようにして上辺から外し、少し手前に持ち上げた後に下辺方向へスライドすると上手く外れました。

外れたー\(^o^)/やっぱりここもきったねー!!!

多分HDDが壊れた原因って、ホコリの所為で温度が上がりすぎて壊れたんじゃないかと思うくらいホコリが酷かった…。
ホコリは掃除機で一通り吸い取ったあと、細かい部分はエタノールを付けた綿棒でクルクルするときれいに取れます。きれいになった後の写真撮りわすれた。

上部に赤外線のセンサーのケーブル(多分)があって、セロハンテープが巻いてありました。
これも一旦外します。

4.液晶パネルを外す

液晶パネルの辺縁にもトルクスドライバーを使用する星形のネジが左右にそれぞれ4つずつありました。
これも外します。というか、HDDは液晶の裏中央にあるので、外さないと交換出来ません。
直接液晶部分を触ってしまうと、皮脂がついて汚れてしまうので気をつけましょう。
ネジを外したら、左右の金属部分を持ち上げて液晶パネルを外します。

液晶パネルを剥がして内部を見ると、僕の2007Midでは、左側の接続、右側の接続、中央下部の接続の3本のコネクタがありました。
それらを外したかったのですが、どうにも上手く外せなかったので、高さ20センチくらいの台の上に液晶パネルを乗せ、中を確認しました。


片手で撮ったからブレてら…。

中央の緑の基盤が見えているのが目的のHDDです。
右の黄色のシールが貼ってあるのは光学ドライブです。

5.HDDを外す

まず、HDD中央にあるコードを外します。温感センサーらしいです。テープかなんかで貼ってあるので剥がします。

HDDを止めているネジをトルクスドライバーで外します。
ここで外すネジは上部の2つだけです。
僕は下にある2つのネジも外そうとして、一つネジを外した時点で、外さなくて良い事を理解しました。え、だってググったサイトに書いてなかったんだもん…。

上部2つのネジを外すと、ドライブを止めている黒いプラスチックの部品が横にずらして外れるようになります。この後にHDD本体を上に持ち上げるとスイッと取り出す事ができます。

外れました。

6.新しいHDDに付け替える

元々入っていたHDDの下部にトルクスネジが2つ付いているのでこれを外し、新しいHDDに取り付けます。
外した時と同様に、新しいHDDを設置し、黒いプラスチックのHDD止め(?)をスライドして設置し、ネジを締めます。


右が純正のHDD。リンゴロゴが確認できます。western digital製でした。


新しいHDDを取り付けました。

7.外したものを全て取り付けて行く

同じ手順で外していたものを戻していきます。ネジの付け忘れに注意。

8.OSインストール

OS10.7以降はHDDやSSDと別の領域にOSがあるのでストレージを交換しても普通に起動するとOSインストール画面が起動した覚えがあるのですが、元々のマシンが10.5だったりするとインストーラーディスクが必要になるみたい。持っててよかったSnowLeopard!!

インストールディスクをドライブに突っ込んで、option(alt)キーを押しながら起動→「インストールディスク」をクリックすれば、必要事項の入力とかあるけど大体40分くらいでOSインストール完了!

320GBから2TBになってよみがえったiMac!!

多分SSDもマウンタ買えば出来るはず。興味がある人はやってみるといいよ、でも壊れても自己責任だよ、僕の所為にしちゃいけないよ。