Corredor

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

MacOS

Mac の Excel VBA は色々と挙動が違うので、VBA で OS 判別する

最近 Mac で Excel VBA を書く機会があるのだが、Windows の Excel との挙動の違いが多くてつらい。 Excel for Mac のバージョンごとに改善していっているようだが、Excel for Mac 2016 (v15.41) 時点だとこんな感じ。 Dir() 関数でファイル一覧をサクッと取…

MacOS の Finder でファイルをゴミ箱に入れず直接削除するには

Windows エクスプローラだと、Shift + Delete でゴミ箱を経由せず直接ファイル削除ができるが、MacOS の Finder だとやり方はないものか。 調べたところ、Cmd + Option + Delete と押せば良いことが分かった。 参考:ゴミ箱を経由しないでファイルを削除する…

カレントディレクトリ配下のファイルの作成日と更新日を指定の日時に一括変更する Mac 専用シェルスクリプト

ニホンノエスイーの皆さん用。 カレントディレクトリ配下にあるファイルの、作成日時と更新日時を、それぞれ任意の日時に変更できるシェルスクリプトを作った。date コマンドのオプションの書式や、setfile コマンドを使用したりしていることから、Mac 専用…

Neo's Normalize で指定するフォントを見直して v1.0.11 をリリースした

少し前に、Chrome ブラウザで @font-face による游ゴシック Medium 指定が効かなくなっていたことに気付き、色々調査した記事を書いた。 neos21.hatenablog.com この調査を通じて、Neo's Normalize のフォント指定を見直したので、その内容を紹介する。 コレ…

MacOS で設定する defaults コマンドをまとめてみた

これまでどこかで適当に調べては適当に実行していた defaults コマンドだが、この度一つのシェルスクリプトにまとめてみたので、それを紹介する。 dotfiles/MacOS.sh at master · Neos21/dotfiles · GitHub 現時点での内容は以下のとおり。 #!/bin/bash # ==…

MacOS Finder で開いているディレクトリにターミナル上で移動する Bash 関数

MacOS のターミナルで、カレントディレクトリを Finder で開きたい時は、$ open . と叩けば良い。 その逆で、「Finder で開いているディレクトリに、ターミナル上で移動したい」時のコマンドを用意する。 Finder 上からそのディレクトリのターミナルを開く際…

Windows GitBash のプロンプト表示が遅いのをなんとかしたかった

Windows GitBash のプロンプト表示がやたらと遅い。何のコマンドも打たずに Enter を押しただけでも、何か表示がつっかえる。 何が原因かと思って調べてみたところ、どうも GitBash デフォルトのプロンプト内に設定されている __git_ps1 という関数が遅いよ…

Mac に Homebrew で tmux を入れてみた

tmux という、1つのターミナルウィンドウ内に複数のターミナルを分割して配置できるツールを入れてみた。こういうのを「ターミナルマルチプレクサ」と呼ぶらしい。 インストールは Homebrew でサクッと。 $ brew install tmux で、ターミナル上で $ tmux と…

指定ディレクトリ配下の Markdown ファイルに含まれる NFD・NFC 文字を一括相互変換する

Windows ユーザと Mac ユーザが入り混じって、Markdown ファイルを書いていた時に起こった、俗に NFD 問題と言われるアレ。 Mac の Finder で表示されるディレクトリ名やファイル名は、「NFD」という形式で Unicode 正規化されている。平たくいうと、「ガ」…

psql コマンドで PostgreSQL に接続する時パスワード入力を省略する方法

psql コマンドで PostgreSQL に接続する時、いつも対話式プロンプトでパスワードを尋ねられる。コレが面倒なので省略したい。 調べたところ、専用の設定ファイルを用意して、接続先 URL やユーザ名とともにパスワードを書いておけば、それを読み取ってアクセ…

Windows と macOS に EnterpriseDB 版の PostgreSQL をインストールする

Heroku Postgres をいじり始めたが、ローカル開発環境にも PostgreSQL 環境が欲しいので、Windows と Mac それぞれで PostgreSQL をインストールしてみる。 Windows なら Chocolatey、Mac なら Homebrew からも PostgreSQL がインストールできるが、ウィザー…

Mac の PowerPoint でスライドのデフォルトフォントをユーザ定義する方法

macOS Mojave、Microsoft PowerPoint for Mac バージョン 15.41 (171205) で検証。 PowerPoint のテーマを変更しようと思い、「スライドマスター」の中でデフォルトフォントを変更しようとしたところ、なぜか「フォントのカスタマイズ」の項目がない。 参考…

Diff に色付けする colordiff コマンドを試してみた

diff コマンドは git diff のように色付けされない。そこで、colordiff というコマンドを入れてみた。 colordiff macOS Mojave で試したので、$ brew install colordiff でインストールしたが、Linux なら apt-get とかでもインストールできるみたい。 Unifi…

「Google バックアップと同期」アプリの仕様が分かりにくかったのでまとめ

元「Google ドライブ」アプリが「Google バックアップと同期」というアプリに変わり、Google ドライブの同期機能と、「Google フォト」の同期機能を兼ね備えるようになった。 Windows PC の特定のディレクトリ配下にある画像のバックアップのため、容量無制…

Mac で指定の HTML ファイルを Chrome で開くコマンドを用意する

MacOS High Sierra にて検証。 僕は普段、.html ファイルを CotEditor というテキストエディタに関連付けしている。Finder から .html ファイルをダブルクリックすると、CotEditor で開くワケだ。 この状態で、ターミナルから $ open index.html のように op…

iOS 実機から MacBook のローカルホストを参照する方法

MacBook 上で http://localhost:9999/ を立ち上げていて、USB 接続している iPhone からそれを参照したい場合。iPhone 上で localhost:9999 と指定しても、どこのローカルホストやねんとなるので、違う指定の仕方をする。 まず Mac の「システム環境設定」→…

プロキシ環境下で ifconfig を使って自分の IP アドレスを調べる

よくグローバル IP を調べる方法として $ curl globalip.me こんな風に専用サービスを curl で叩く、というモノがあるが、プロキシ環境下では globalip.me にアクセスできなくて使えない。 参考:Shellで超簡単にグローバルIPを確認する方法 そこで調べてみ…

Mac の入力ソース一覧から「U.S.」を消すには

12インチ MacBook を購入して最初に設定を行う時、うっかり間違えて「日本語」ではなく「U.S.」を選択してしまった。とはいえ後で Google 日本語入力を入れたらそっちに切り替えるしほっとくか…と思い、Google 日本語入力をインストールして入力ソースから「…

12インチ MacBook 2017年モデルを買ったら充電開始時に音が流れるようになった

12インチ MacBook の2017年モデルを買ってホクホクしているのだが、USB で AC 電源に繋ぐと、iPhone と同じ「フォン」という充電開始音が流れるようになった。 どうもコレはシステムの音量をミュートにしていても必ず流れてしまうようだ。 調べてみると、以…

Mac の Finder に表示されるディレクトリ名を英語にしたい

Mac の Finder を開くと、「書類」とか「アプリケーション」とか、ディレクトリ名が日本語なのが気になる。 コレをなんとかするには、各ディレクトリの直下にある .localized というファイルを削除すれば良い。 代表的なディレクトリは以下あたりだろうか。…

Mac のスペックをコマンドラインで調べる

Mac のスペックをコマンドラインで調べるには、$ sysctl machdep や $ system_profiler といったコマンドが使える。 # 色々表示される $ sysctl machdep # 絞り込みたいときは以下のように… $ sysctl machdep.cpu.brand_string machdep.cpu.brand_string: In…

MacOS に VirtualBox + Vagrant を使って CentOS + GNOME GUI デスクトップ環境を構築する

以前、Windows 上に VirtualBox + Vagrant で CentOS 環境を構築する手順を紹介した。 neos21.hatenablog.com 今回、VirtualBox + Vagrant を使用する点はそのままに、ホストに MacOS High Sierra を使用し、ゲストの CentOS に GNOME デスクトップ環境を用…

Mac で Dock をキーボードから操作するには

MacOS High Sierra で確認したが、最近の MacOS なら通用するかと。 MacOS の Dock をキーボードから操作するには、Control + F3。コレで Dock にフォーカスできるので、矢印キーか Tab キーで移動し、Return か Space キーで選択できる。 Control + F3 でフ…

sed で行追加する i オプション (と、MacOS の BSD sed での注意点)

sed で行を追加する、i というコマンドを使ってみる。 今回はサンプルとして、cat にヒアドキュメント << を使って複数行のテキストを用意する。コレをパイプで sed に渡し、1行目にテキストを追加してみる。 # まずは普通に出力してみる $ cat << EOM > Ori…

MacOS の BSD sed は慣れないので Windows GitBash と同じ GNU sed に変える

BSD UNIX 系の MacOS に搭載されている sed と、Linux や Windows GitBash に搭載されている sed は、オプションの働きが異なる部分が多い。コレが厄介で、sed を利用したスクリプトが Mac と Windows とで同じように動作してくれないのだ。 Windows GitBash…

MacOS における Node.js のバージョン管理ツールの比較

MacOS 環境で、複数の Node.js のバージョンを管理するツールを比較してみた。僕は nodebrew をずっと使っているが、今回調べてみたら ndenv も導入が簡単で、依存するモノも少なく、アリかも…?とか思った。 nodebrew GitHub - hokaccha/nodebrew: Node.js …

オフライン環境で CentOS 7 の Vagrant Box を追加する

Mac で CentOS を触りたく、Vagrant を使おうと思ったのだが、諸事情によりネットワークが随時使えず、Vagrant Box をネットからダウンロードして使うことができない状況にあった。 # 普段ならコレで良いが、ネットに接続できないのでダメ $ vagrant box add…

MacOS の man を日本語化する

MacOS High Sierra の man コマンドの表示を日本語にしてみた。 ほぼ以下の記事のとおりで出来た。 参考:manコマンドの表示を日本語化した話 # groff (GNU roff) という文書整形を行うコマンドをインストールする $ brew install groff # /usr/local/bin/gr…

Mac のターミナル上でカレンダーが見られる「cal」コマンドを Windows でも実現する方法

Linux 標準コマンドの一つに、cal コマンドというモノがあるのを知った。ターミナル上でカレンダーが見られるのだ。 $ cal 8月 2018 日 月 火 水 木 金 土 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 当日日付は…

MacOS でターミナルから簡単にメモリを解放する

MacOS は標準のターミナルから簡単にメモリ解放ができる。 ターミナルを開いて、$ sudo purge と打つだけ。 ディスクキャッシュを追放するためのコマンドみたい。 参考:purgeコマンドでMacのメモリを確保する 参考:howtohp.com macOS High Sierra パーフェ…