MacBook AIr」カテゴリーアーカイブ

macOS httpd.conf

macOS Mojave で httpd.conf の設定。
現行は $HOME 以下にサイトを置いて PHP を使うだけなら三個所設定すればいいようだ。
PHP7 は最初から入っている。

ただ macOS は OS アップグレードで httpd.conf がリセットされてしまう。
Fedora はアップグレードしても内容を保持してくれるのに面倒臭い。
違いは PHP をデフォルトで有効にしているかだけみたい、PHP にもバージョンがあるし。

変更する箇所は決まっているので難しいことはないけど何度もやるのは面倒。
だったら書き換えスクリプトを JXA で作っておけば楽でね?
JavaScript なら replace でアッサリ書き換えできるのがいいよね。
前回のことがあるけど GUI を使わないなら問題なく動くようだ。

#!/usr/bin/osascript

// sudo osascript apache_setup.js

ObjC.import("Cocoa");

let nil = $();
let conf = $("/etc/apache2/httpd.conf");
let root = "/Users/sasakima-nao/www";
 
// Read
let s = $.NSString.alloc.initWithContentsOfFileEncodingError(conf, $.NSUTF8StringEncoding, nil).js;
s = s.replace(
    '#LoadModule php7_module libexec/apache2/libphp7.so',
    'LoadModule php7_module libexec/apache2/libphp7.so'
);
s = s.replace(
    'DocumentRoot "/Library/WebServer/Documents"',
    `DocumentRoot "${root}"`
);
s = s.replace(
    '<Directory "/Library/WebServer/Documents">',
    `<Directory "${root}">`
);
// Write
let res = $(s).writeToFileAtomicallyEncodingError(conf, true, $.NSUTF8StringEncoding, nil);
if (res) {
    console.log("Write Success!");
}

apache_setup.js

を実行して。

sudo apachectl restart
open http://localhost/

で動作確認できるのは知っているよね。
実は同じ LAN に繋がっているスマホやパソコンがあるなら更に。

http://コンピューター名.local

でアクセスできるよ。
もちろん ifconfig からローカル IP を得てアクセスでも同じ。
これでスマホでのサイト作り時の見栄え確認が簡単に。

ちなみに NetworkManager を使っている Linux でも同じだったりする。
Fedora の場合は firewall-config で http のポートを空けてね。

ところで NetworkManager のメンテをしているのは Redhat です。
例の買収時にネットの反応に驚いたよ、皆 GUI しか見ていないのかと。

JXA error: NSMakeRect in Mojave

我が comipoli.js が Mojave で起動できない理由が判明。

NSMakeRect よ、お前が原因か。
NSMakeSize は問題ないので書き方が変わったという訳では無いようだ。
検索するとあったわ。

Problems with Mojave? ? Issue #44 ? JXA-Cookbook/JXA-Cookbook ? GitHub

NSRect を関数で得た場合でもエラーというオマケ付きかよ。
こりゃどうにもならん、修正を待つしかない。

Old mac to New mac

さて、新 Macbook Air を使えるようにしなければ。
とりあえずデフォルト以外で必要なアプリをば。

Visual Studio Code (以下 vscode)
Google Chrome (以下 chrome)
KeepassXC

が最小限だな、Gedit さえ使えれば Fedora とまったく同じなのに。
ちなみに mac で動画は Youtube くらいしか見ない、音楽は聴かない。
ただ App Store にはドレも無いんですけど。
しかたがないので一つづつ公式サイトから落としていく。

vscode って今は app のまま配布しているのね。
しかしこのマシンはドラッグアンドドロップが凄くやり辛いぞ!
3D Touch のせいだけどドラッグする時は軽めにタッチ。

後は以下を旧マシンからコピーして設定は元通り。
~/Library/Application Support/Code/User
このマシンだと起動が超速いな、テキスト編集はもうこれ一つでいいや。

chrome は書くまでもなくログインで元通り。
今頃知ったけど macOS 版も F12 でデベロッパーツールなんだね。
safari の開発ツールはタッチのエミュができないのが痛い。

KeepassXC は Fedora から kdbx をコピーして元通り。
command+V を試しに押下してみると警告ダイアログが出たので

とやると、おぉ command+V が使えるじゃん!
これでパスワード管理も Fedora と同様に使えるようになった。

後は普通にカスタムだ。
US 配列キーボードなのにバックスラッシュが円記号になるのはなんか笑える。
これはキーボードの設定で変更できる、それ以外は好みだよね。
拡張もコピペしなければ。

macOS アプリを JXA (AppleScript) で拡張 – L’Isola di Niente
を使おうと又しても警告が。

なんかダイアログ出過ぎ、今までこんなにウザかったか?
Fedora 等と違って初心者も使うからなんだろうけどさ。
拡張スクリプトなんて初心者は手を出さないだろ。

ところで、macOS 新規には .bash_profile, .bashrc が無いんだね。
Mac(OSX)で.bashrcを編集する ? GitHub
前のマシンはあったような気がするけど、とにかく新規作成。
.bashrc には

# User specific environment
PATH="$HOME/.local/bin:$HOME/bin:$PATH"
export PATH

# Fedora like Prompt
PS1='[\u@\h \W]\$ '

# alias
alias ll="ls -l"
alias jxa="osascript -i -l JavaScript"
alias jsc=/System/Library/Frameworks/JavaScriptCore.framework/Versions/A/Resources/jsc

こんな感じで落ち着いた。
osascript はファイルを渡すと js の拡張子で振り分けするので jxa コマンドはインタラクティブで使う時用のみ設定すれば良かった。

後は Apache の設定か。
アップデートでリセットされちゃうのをなんとかしなければ、後日。

Macbook Air 2018

Macbook Air が届いたので軽くレビュー。
第一印象、あれ?小さい。
旧型に比べベゼルが削減されているだけなので画面の感じは変わらない。

Touch ID の所は電源ボタンを兼ねているのね、押せる。
初回起動時に Touch ID や Siri や ApplePay の設定が出る。
なんかもうマジで iPhone みたい。

OS 起動時はパスワードのみ、スリープ復帰は Touch ID で。
うん iPhone と同じ、若い人達にも自然に受け入れられると思う。

起動して使えるようになるまでの時間は半分くらいに。
だってそりゃ 2011 モデルとの比較だし、新しいって凄い。

キーボードは、ウルセェ!
第三世代バタフライって音が小さくなったんじゃなかったの?
前世代ってドンだけウルさかったんだよ。

そんなことより。
command+space と control+space が逆だ!

MacのUSキーボードでcontrol + spaceの日本語入力と英字入力の切り替えをcommand + spaceに変更する設定方法

Yosemite から新規はこうだったのか。
筆者はデフォルトのまま使う主義なので慣れで…
って無理だ、指が勝手に動く!

だって Fedora(GNOME) も真似して Super+Space なんだもん。
スーパーキー (キーボード) – Wikipedia
素直に変更させて頂きます。

Fedora との共有は samba で以下のように。
ディスクの暗号化は選択しなかった、という前提で。

gcc, clang, swift 等のコマンドが最初からある、けど。

使おうとすると超バカデカい Xcode 一式を落とさせようとする。
java どころか jjs まであった、こっちは当然 JDK を落とさせようとする。

python は 2.7、もういかげん python3 にしてくれ!
Fedora デフォルトに python2 は入らない、Linux のほうが進んでいる。

ruby は無いみたいだけど、homebrew が使うはずだけど。
って筆者は homebrew も Xcode も使わないんだけーが。

jxa は自作の comipoli.js が動かなかった。

むーやることがまた増えてしまった。
第一印象ここまで、また何か気が付いたら。

Air

Fedora 29 が出た、その前に。

MacBook Air – Apple(日本)

これぞ Air という型とサイズ、今まで使っていたケースが使える!
アップグレード対象から外れた筆者の 2011 モデルをついに買い替えだ!

Touch Bar は無いのに Touch ID はある、そうだよコレが欲しかった。
バタフライキーボードも第三世代みたいだし改良されているはず。
感圧トラックパッド、Retina Display、T2 チップ、まさかの全部乘せ!

今持っている 2011 Air の下取りオンライン見積りは現時点で 14,500 円。
そんなもんだよね、コイツは持ち運び Fedora にしてしまう予定。
この古い以外は完璧すぎるマシンをこの値段で手放すのはもったいない。

よし US 配列キーボードは選べるな、ポチる。

いやメインマシンはデスクトップ Fedora のままでいくよ。
上記でも使うので今回は久々に iso からクリーンインストール。
19 はとうとう 1.8GB か、デカくなりすぎだよ。
仕事に行かないといけないのでインストールは後日。