macOS 10.15 Catalina を導入しました。
Macbook Air 2018 の Mojave からのアップグレードです。
さて、一番気になる所をチェック。
デフォルトシェルは初期状態では bash のまま。
ただし [zsh に自分で変更しろ] というメッセージが毎回出る。
.bashrc でカスタムしていた所は .zshenv に変換コピペ等の猶予がある。
一通り調べた後で筆者も zsh に変更します。
Python2 も実は残っている、同様なメッセージが出る。
でも Python3 ってあれ?
筆者は自分で Python3 を入れたけど、それは /usr/local/bin にある。
デフォルトで /usr/bin に入るようになったみたい、情報が無かったけど。
シンボリックリンク先は同じなので残しても問題ないけど local のは消すかな。
PyObjC は pip3 で自分で入れたのだけどコレも最初からあるのかいな?
他人の情報を待とう。
筆者自作の Comipoli はソースもビルド済みも問題なく動いた。
ただソースのまま起動するのが異様に遅くなったような気が。
macOS アプリケーション
何より気になる JXA での NSRect のバグ。
そのまんまヤン!
もう JXA はダメだ、GUI は PyObjC に完全移行しよう。
httpd.conf はやはりリセットされた。
変更点は特に無いようだ、とっとと元に戻す。
macOS httpd.conf | PaePoi
んで
sudo apachectl restart
そんなことより。
sips を使ったスクリーンショットの 72dpi 変換ができない!
macOS をクイックアクションで拡張 – L’Isola di Niente
シェル変更の影響か?
#!/usr/bin/env python3
# change72dpi *.png
import sys, os
from AppKit import *
from Quartz.CoreGraphics import *
args = sys.argv[1:]
for s in args:
name = os.path.basename(s)
src_image = NSImage.alloc().initWithContentsOfFile_(name)
img = NSBitmapImageRep.imageRepWithData_(src_image.TIFFRepresentation()).CGImage()
h = CGImageGetHeight(img) // 2
w = CGImageGetWidth(img) // 2
ctx = CGBitmapContextCreate(None, w, h, 8, 4 * w, CGColorSpaceCreateDeviceRGB(), kCGImageAlphaPremultipliedLast)
CGContextDrawImage(ctx, CGRectMake(0, 0, w, h), img)
imgref = CGBitmapContextCreateImage(ctx)
out_image = NSImage.alloc().initWithCGImage_size_(imgref, (w, h))
bmp = NSBitmapImageRep.imageRepWithData_(out_image.TIFFRepresentation())
data = bmp.representationUsingType_properties_(NSBitmapImageFileTypePNG, {})
data.writeToFile_atomically_(f'72dpi-{name}', True)
以前書いた使い捨てスクリプトでなんとか 72dpi 変換した。
しかし端末でこんなの出ていたっけ?
とりあえず気がついたのはそんなところ。
相変わらず mac らしい使い方をしていないなぁ。