文字っぽいの。

文字を書いています。写真も混ざります。

洗濯機を買い替えた。

大学生の頃からずっと使い続けていた洗濯機をようやく買い替えた。この洗濯機は父親から譲り受けたもので、2008か2009年製の無印良品のものだった。かれこれ12年以上使われているのに、なぜか壊れないので買い換えるタイミングを失っていた。 なぜか壊れなか…

Swiftで大量のメンバ変数があるclassやstructのinitを自動生成する。

環境 Xcode Version 12.1 Apple Swift version 5.3 課題 開発をしていると、こんな感じでメンバ変数がたっぷりあるclassができます。この例ではclassですが、structも同様ですね。 class SampleClass: Codable { public let id: Int public let title: Strin…

Xcode12時代のライブラリ管理ツール選定

背景 iOSDC 2020でMint及びiOSアプリ開発時のライブラリ管理について執筆し、同様の内容をZennでも本として販売した。 zenn.dev しかし、Xcode12の正式版がリリース後に、執筆時からライブラリ管理を取り巻く状況が大きく変わってきたため、ここに筆を執った…

Xcodeのデバッグコンソール画面が勝手に閉じて不便なやつ対策

環境 Xcode 12.2 起こること ビルドしてシミュレータが起動するたびに、デバッグコンソール画面が閉じてしまう。 デバッグコンソールはここのこと ログを見たいのに、ここが閉じてしまうと見れなくてとても不便だった。 対策 XcodeのPreferencesのBehaviors…

2020年に新しく始めたこと、諦めたこと。

新しく始めたこと 今年、30歳になりまして、区切りが良いので色々と新しいことを始めることにしました。正直、始めすぎました。 テックリード 昨年末ぐらいからテックリードというのをやっていて、新しい肩書が増え、仕事が増えました。まぁ本業のことはどう…

SwiftUIで表示したModalをコードからdismissしたい

やりたいこと いわゆる dismiss(animated:completion:) をしたい。 コード struct ContentView: View { @State private var showModal = false var body: some View { Button("モーダルを開く") { showModal.toggle() }.sheet(isPresented: $showModal) { Mo…

カービィカフェ TOKYOに行ってきた。

ソラマチにあるカービィカフェ TOKYOに行ってきた。 店内の様子 店内に入ると、でっかいウィスピーウッズがいる。 ウィスピーウッズの根本には、所々にカービィの置物が設置されていて可愛かった。 店内もおしゃれに可愛くカービィ要素で飾り付けてあって大…

"dyld: Symbol not found: _OBJC_CLASS_$_RPSystemBroadcastPickerView" 対策

環境 Xcode 12.0.1 Apple Swift version 5.3 (swiftlang-1200.0.29.2 clang-1200.0.30.1) iOS Deployment Target 12.0 状況 Deployment Targetを11.0から12.0にあげた ビルドは通る iOS 12系のシミュレータで起動するとアプリ起動時にクラッシュする iOS 14…

SwiftPMでCrashlyticsを導入した場合のRun Script Phaseの書き方

環境 Xcode 12.0 (12A7209) macOS Catalina Firebase iOS SDK 6.33-spm-beta 課題と解決 Firebase iOS SDKがSwiftPMにBeta対応しました。 firebase-ios-sdk/SwiftPackageManager.md at master · firebase/firebase-ios-sdk · GitHub このため、Crashlyticsを…

iOSDC Japan 2020に原稿2本を書きながら登壇してきました。

iOS関連技術をコアのテーマとした技術者のためのカンファレンス iOSDC Japanに今年も参加しました!今年はオンライン開催ということで、例年とは異なるiOSDCを楽しむことができました。 パンフレット原稿 今年はいつもの『登壇』枠に加えて『パンフレット原…

ディスプレイの上につけられるライトを買った。

壁に向かって座る形で机があるので、シーリングライトの光を背負う形になってしまい、手元が暗くて困っていました。 あと、いろんなスタンドライトを調べてみたけど、クリップで留めるか机に置くかしかなくて、結構邪魔になりそうなので躊躇してたんですが、…

iOS 14 正式版のリリース日発表で、iOSアプリ界隈がドタバタしてるわけ。

将来読み返して「そんなこともありましたねぇ」と思うために書き残しておきます。なお、記事中の日時は日本時間です。 2020年9月16日 2:00に開催されたAppleEventにて、iOS14のリリース日が2020年9月17日だと発表されました。突然の発表に戸惑い、時にはキレ…

Macの壁紙をいい感じのお猫様写真にして、定期的に自動変更させる。

あらかわいい〜〜〜。 インストールするもの Unsplash WallpapersUnsplash IncUtilitiesFreeapps.apple.com 設定方法 インストールして起動すると、メニューバーに表示されるのでクリック。お好みでチェックを入れます。 右上のタイルっぽいボタンをクリック…

カンファレンスのプロポーザル提出から登壇後まで、自分自身に言い聞かせる言葉たち。

はじめに カンファレンスの登壇。終わってみれば「いやぁ楽しかったなぁ」となるものですが、そこにいたるまでには様々な挫折ポイントがあります。この記事では、そんな挫折ポイントで、自分に言い聞かせるために脳内で使っている言葉を書き出してみました。…

百草丸の計量スプーンをもらった。

百草丸という薬があります。独特の匂いが強くて不味い胃腸薬なんですが、お腹が痛い時に飲むとスッと楽になります。良薬口に苦しとはまさにこのこと。我が家では常に常備していて「お腹の調子が悪いときはこれ飲んでおけばなんとかなる」最強の薬だと思って…

デスクでガブガブと麦茶が飲める環境づくり。

夏である。 クソほど暑いので、とにかく水分補給が肝要だ。1日に2リットル程度は飲んだほうが良いと聞いて水やお茶を飲んでいたが、なにぶんペットボトルのゴミが溜まりまくる。毎週ペットボトルを捨てに行くのは非常に面倒だし、コストも結構高い。ここで普…

夏の夕暮れの世界が青くなる時間がすき。

https://unsplash.com/photos/yuWPccUiAJ4 「夏になったな」と実感する時間帯があります。 夕焼けで世界が赤く染めた太陽が、遠くの山に隠れて見えなくなった時に訪れるあの「世界が青くなる時間」。日は沈んでいるのに薄明るくて、色んなものが青い光に包ま…

「僕の考えた最強のデスク環境」を、少しだけ追加改善した。

fromatom.hatenablog.com からの追加改善。前回の記事同様、将来何かが破損・故障する可能性が大いにありますので、真似や参考にされる場合は自己責任でお願いします。 デスク裏に電源タップを追加 「常設はしないけどコンセントが必要な機材」がままあるの…

『できた、僕の考えた最強のデスク環境が。』の質問ブコメへの返答

fromatom.hatenablog.com ありがたいことにこちらの記事を沢山の方に読んでいただき、いくつかブコメで質問を頂いたので返信したいと思います。 できた、僕の考えた最強のデスク環境が。 - 文字っぽいの。椅子は買わなくていいの2020/08/03 14:43b.hatena.ne…

できた、僕の考えた最強のデスク環境が。

「事態が落ちついたら、また。」「このご時世ですから」と繰り返し唱えていたら2020年も半分がおわり、梅雨が明け、麦茶を煮出す回数が増えました。そして、ご時世のおかげで飲み会やイベントがすべて消え去ったことで貯金が増え、定額給付金も手に入ったの…

4Kディスプレイ買った。

LG モニター ディスプレイ 27UK850-W 27インチ/4K/HDR対応/IPS非光沢/USB-Type-C、HDMI×2、DisplayPort/スピーカー搭載/FreeSync、高さ調節、ピボット対応発売日: 2018/02/14メディア: Personal Computers 会社でも使っていて、家にも既にある4Kディスプレイ…

TeXでMarkdownやHTMLのインラインコード表示を再現する

やりたいこと Markdownでできる こういう表記 です。HTML的には <code></code>で表現されます。正確には、このブログのように <code></code> にCSSが適用された見た目を再現します。 用意するもの tcolorbox 設定 tcolorbox に含まれる tcboxをカスタマイズして利用します。 \usepackag…

MacにHomebrewでOMakeを入れられないので、opam経由でインストールする。

環境 mac OS Catalina 10.15.5 zsh 前提 久しぶりにOMakeを使おうと思ってHomebrewでインストールしようとしたら $ brew install o-make Error: No available formula with the name "o-make" ==> Searching for a previously deleted formula (in the last …

SwiftUIでUILabelやNSAttributedStringを利用せずに文字装飾をがんばる

1つのText 内で文字色を変えたり、太字にしたり、下線を入れたりと、文字装飾を行いたいことがあると思います。UIKit時代ではUILabelやUITextViewとNSAttributedStringを利用して実装していたと思います。 今回は例として複数の tag を , で結合して表示した…

GitHub謹製のghコマンドとpecoを組み合わせて、高速にPull Requestのブランチにチェックアウトする。

GitHub公式からghというCLIツールがbetaリリースされています。まだbeta版ですが、非常にシンプルで使いやすいCLIツールです。 この記事では、その ghとpeco を利用して、高速にPull Requestに対応するブランチにチェックアウトする方法を説明します。 コー…

Slackのカスタム絵文字をesaにらくらくコピー!「Utsushie(写し絵)」シリーズを作りました。

はじめに 企業やグループでSlackを使っていると、カスタム絵文字をいっぱい登録しますよね。そしてesaも使っていると、Slackで登録したカスタム絵文字と同じものがesaでも使いたくなってきます。 そこで、Slackに登録されたカスタム絵文字をかんたんにesaに…

Swift5で正規表現を書く時に "\" を2回書きたくないときはRaw String Literalを使おう。

問題 Swiftで正規表現を書くと let regex = "\\A\\s*[-+*]\\s*\\S+\\z" // Markdownの箇条書きか判定する雑な正規表現 と書かないといけない。これでは不便ですね。 解決方法 Swift 5からRaw strings literalの仕組みが導入されました。このliteralを利用す…

XiaomiのMi band 4を買った

電車通勤になってから、携帯を取り出すのではなく腕時計で時間を確認したいと思うことが増えた。 せっかくなのでスマートウォッチというのが欲しいが、いかんせんAppleWatchは高すぎる。やりたいこととしては、 時間がわかる スマホに通知が来た時に分かって…

Macのzshで時間がかかる処理が終わったら通知してくれるようにする

はじめに 開発をしていると、テストやセットアップ処理、ライブラリの導入などで長い時間待つことがあると思います。 そんな時に暇すぎてTwitterを見に行くと、そのまま夕方になり生産性が破滅することが良くあると思います。 なので長い処理が終わったら、…

CMSampleBuffer を Resize する

はじめに CMSampleBuffer をResizeしてサイズを小さく(大きく)したいことがあると思います。試していませんが、途中で CIImage になっているので、回転、変形、加工などCIFilterで行う処理を適用できると思います。 環境 Xcode11.1 Swift 5.1 手順まとめ C…