Corredor

ウェブ、プログラミングの勉強メモ。

MacOS

Xcode v10.3 にアップデートしたらビルドに失敗するようになったが macOS の再起動で解消した

環境は以下のとおり。 macOS Mojave v10.14.5 Xcode v10.3 Xcode v10.3 にアップデートしたら、プロジェクトで以下のようなエラーが出るようになった。 /Users/PATH/TO/PROJECT/Base.lproj/LaunchScreen.storyboard: Failed to find or create execution con…

MacOS と Linux で top コマンドが大分違うので整理する

top コマンドで CPU 使用率やメモリ使用率を見たいなーと思ったのだが、MacOS と Linux (CentOS) とでオプションがかなり違うので、よく使うモノを整理することにした。 環境確認 普通に top コマンドを打った画面 CPU 使用率順にソートする メモリ使用率順…

MacOS でも Windows でもまぁまぁ使える tmux + vim 環境を作ってみた

先日、Inkdrop というアプリを開発している TAKUYA さんの動画を見て衝撃を受けた。 blog.craftz.dog tmux と vim を組合せて開発をしているのだが、キーボード操作が抜群に速い。マウス操作がほとんど出てこないからこそ実現できる開発速度で、VSCode 使い…

MacOS で at コマンドを有効化して使ってみる

あるコマンドを予約実行したい場合、すぐ思い付くのは cron (crontab) かと思われる。しかし cron は、ある処理を定期的に繰り返し実行するスケジュール設定になっており、ある処理をある時に1回だけ行いたい場合には使いづらい。 ある処理を1回だけ予約実行…

Homebrew でインストールしたツールを実行したら「Insecure world writable dir」とかいうエラーが出た件の対処法

MacOS Mojave にて、Homebrew でインストールした ghi というツールを実行したところ、以下のようなエラーが出た。 /usr/local/Cellar/ghi/1.2.0_4/libexec/bin/ghi:128: warning: Insecure world writable dir /usr in PATH, mode 040777 ワーニングメッセ…

12インチ MacBook の解像度拡張には「Display Menu」か「EasyRes」が良さげ

2017年製の12インチ MacBook 特盛仕様 (Core i7・16GB RAM・512GB SSD) を愛用中。 12インチ MacBook のディスプレイ解像度は、ピクセル解像度が 2304x1440px となっていて、対応するスケーリング解像度の Max が 1440x900px。ディスプレイの環境設定で「ス…

Windows 向けの共有サーバのファイルパスを MacOS 向けに置換する

Windows 環境で共有サーバのファイルパスを取得すると、 \\127.0.0.1\Some\Path\To\File.txt file:///127.0.0.1/Some/Path/To/File.txt こんな感じのパスが取得できることが多い。 2つ目の file:/// プロトコルはまだ扱いやすいが、1つ目のバックスラッシュ…

man ページに出てくる (1) などのカッコ付き数字は何?

man コマンドに関する話。 以下は MacOS の場合だが、ターミナルで $ man chown と叩くと、次のように表示される。 CHOWN(8) BSD System Manager's Manual CHOWN(8) NAME chown -- change file owner and group …中略… SEE ALSO chgrp(1), find(1), chown(2)…

MacOS の /System/ ディレクトリ配下のファイルを削除したかったので SIP を解除した

MacOS Mojave で検証。 Finder で、「システム」や「ユーザ」などのディレクトリが日本語で見えているのが気になった。 これらの表記は、当該ディレクトリ直下にある .localized というファイルを削除すると英語表記に戻せるのだが、このファイルは Finder …

Mac 向けの TTF・TTC 形式のフォントファイルを OTF 形式に変換し Windows でも使えるようにする

フォントファイルにはいくつかの形式があるが、中でも TrueType フォントである .ttf 形式のファイルは、Windows と Mac とで中身が全く違い、互いの OS で共用できないのが難点。 また、この TTF 形式のフォントファイルを複数格納している .ttc フォントも…

Mac のデスクトップ通知をシェルスクリプトから送る

MacOS Mojave で検証。Mac で Slack などを使っていると、画面の右上に表示されるデスクトップ通知。コレをシェルスクリプトから送ってみる。内部的には AppleScript を使っている。 $ osascript -e 'display notification "お知らせです" with title "タイ…

Mac でも Windows のタスクバーみたいにカレンダー付き時計を表示する「Day-O 2」

Windows のタスクバーにある時刻をクリックすると、月表示のカレンダーが開く。 一方 MacOS の標準時計にはそのような機能はない。 カレンダーを見るためだけにターミナルを開いて $ cal と打って確認するのも面倒な時がある。 そこで、Windows 同様、クリッ…

zip・unzip コマンドでパスワードを指定する

MacOS で検証。zip・unzip コマンドを使って圧縮する時、解凍用パスワードを設定する方法。 Zip 圧縮時のパスワード指定 $ zip -e -P='【パスワード】' 【Zip ファイル名】.zip 【入れたいファイル指定…】 -e = --encrypt -P = --password -P とだけ書けば、…

Mac の「ターミナル.app」で使えそうなテキストベースのブラウザアプリを調べてみた

MacOS の「ターミナル.app」で動作する、テキストベースのブラウザアプリを3つほど試してみた。 browsh → 表示がバグってまともに動かず Lynxlet → 文字化けしまくり w3m → ちゃんと動いた browsh → 表示がバグってまともに動かず GitHub - browsh-org/brows…

Bash プロンプトに日付と時刻を入れる

僕は MacOS 環境でも、GitBash (Git For Windows) 風の Bash プロンプト (PS1) を導入している。 # ~/.bash_profile にて export PS1='\n\[\033[32m\]\u@\h \[\033[33m\]\w\[\033[36m\]`__git_ps1`\[\033[0m\]\n$ ' 手前のコマンドから1行開け、「ユーザ名@…

いい加減 tar コマンドを覚えるためのまとめ

ファイルのアーカイブ、圧縮、解凍を行える tar コマンド。オプション引数が覚えられずいつも調べてしまうので、いい加減覚える。 ヘルプを見てみる BSD tar GNU tar サンプルコードについて cvf : アーカイブを作成する czvf : gzip で圧縮する cjvf : bzip…

MacOS のフォントファイル、こんなところにもあった

MacOS Mojave で確認。 MacOS のフォントファイルの在り処を探していた。 主なフォントファイルは、大体以下の3箇所のどこかにある。 /System/Library/Fonts/ システム利用。消すと不具合が出る恐れ /Library/Fonts/ 複数ユーザで共用できるフォント ~/Libra…

MacOS「プレビュー.app」のマークアップツールバーを開くショートカットキー

MacOS の「プレビュー.app」が優秀なので、簡単な画像編集にもちょくちょく使っている。 その際、「マークアップツールバー」の項目を使うことが多いのだが、「プレビュー.app」を再起動するとマークアップツールバーが必ず隠れた状態からになってしまう。 …

Mac の ls -l でアットマーク @ が付いているファイルがあった : Extended Attributes と xattr コマンド

Mac で ls -l してファイルを見ていた時に、何やらパーミッションの後ろにアットマーク記号 @ が付いたファイルがあることに気が付いた。 $ ls -l -rw------- 1 Neo staff 17809 1 9 15:54 my-file-1.md -rw-------@ 1 Neo staff 25246 1 16 10:14 my-file-2…

2つの年月日から経過日数を表示する Bash スクリプト (Mac・Windows 両対応)

2つの年月日から経過日数を表示する Bash スクリプトを作った。MacOS・Windows GitBash の両対応。 コレを date-diff みたいな名前で PATH の通っているところに保存して実行権を設定する。あとは以下のように叩く。 $ date-diff 2019-01-01 2018-01-01 365 …

Finder のコンテキストメニューに「VSCode で開く」を追加する

MacOS に CotEditor をインストールすると、Finder のコンテキストメニューに「ファイルを CotEditor で開く」メニューが追加される。 Windows に VSCode をインストールすると、エクスプローラのコンテキストメニューに「Open with Code」メニューが追加さ…

MacOS で Docker を始めてみる

これまで仮想環境というと VirtualBox (とそれを操作する Vagrant) を使ったことがあったが、今回 Docker に手を出してみた。 Enterprise Container Platform | Docker とりあえず MacOS High Sierra か MacOS Mojave 上に Docker をインストールし、適当に …

CotEditor で開いているファイルを VSCode で開く Bash コマンド (AppleScript 併用)

Windows における WSH ばりに GUI ウィンドウを操作できる、MacOS の AppleScript。 今回は、「今 CotEditor で開いているファイルを、VSCode で開き直したいなぁ」という時の操作を Bash コマンド化してみる。 結論からいくと、コマンドとしてはコレだけ。 …

指定の URL・ファイルを複数のブラウザで一気に開く Bash スクリプト (Mac・Windows 両対応)

ウェブサイトのデザイン確認のため、色々なブラウザで同じページを開きたいことがある。 それを自動化するため、こんな Bash スクリプトを書いてみた。Mac と Windows (GitBash) で使える。 #!/bin/bash target="$1" if [ "$target" == "" ]; then echo 'URL…

Mac で「CotEditor で開いているファイルを Google Chrome で開く」コマンドを作る

僕は普段、Mac では「CotEditor」というテキストエディタを使っている。Windows における Notepad++ のような、軽量かつ高機能なエディタである。 僕はこの CotEditor で Markdown ファイルを書くことが多いのだが、Markdown のプレビューは Chrome ブラウザ…

MacOS 同梱の Apache が参照するドキュメントルートを変更する

前回の記事で、MacOS に同梱されている Apache の設定を変更して、ローカルで CGI が動かせるようになった。 neos21.hatenablog.com この時、CGI ファイルを格納しているのは /Library/WebServer/Documents/ (ドキュメントルート、URL は http://localhost/ …

Mac 内蔵の Apache で Perl CGI を動かせるようにするまで

MacOS には Apache が最初から含まれており、Perl や PHP を CGI としてすぐに動かせる。 今回は、Perl スクリプトを CGI として動かせるようにするため、この Apache の設定をいじってみようと思う。 (昔ワケも分からず色んなところからコードをコピペして…

Excel ドキュメントの納品時に毎回やっていることを一括自動処理する Excel VBA マクロを作った

Excel で作った設計書などを納品する際にやっていることを一括で自動処理する Excel VBA マクロを作った。 まずはコード紹介 このマクロがやれること Windows・MacOS ともに動作するクロスプラットフォームを実現 他に課題とか 以上 まずはコード紹介 先にマ…

MacOS にも PowerShell が入れられたので使ってみた

何やら Mac でも PowerShell が使えるらしく、そんなに使うことはないだろうけど、とりあえず入れてみた。 Installing PowerShell Core on macOS | Microsoft Docs … Microsoft 公式 Homebrew からインストールできる。 $ brew cask install powershell 起動…

MacOS 版 Excel VBA で Dir() 関数の代わり・ファイル一覧を取得する

前回紹介したとおり、Mac 版の Excel VBA では、Dir() 関数がまともに動かない。特に Dir() 関数でファイルの一覧を取得するような処理が全く動かず、Windows 版とは違うコードを書かないといけない。 neos21.hatenablog.com 色々調べてみると、Excel VBA か…