<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Webブラウザ on 或る阿呆の記</title><link>https://hack-le.com/tags/web%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6/</link><description>Recent content in Webブラウザ on 或る阿呆の記</description><generator>Hugo -- gohugo.io</generator><language>ja</language><lastBuildDate>Fri, 11 Sep 2026 10:38:24 +0900</lastBuildDate><atom:link href="https://hack-le.com/tags/web%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6/index.xml" rel="self" type="application/rss+xml"/><item><title>ThinkPad X280 + Linux Mint Xfce 22.3 でマイク入力</title><link>https://hack-le.com/thinkpad-x280-linux-mint-xfce-28-3-vivaldi-mic/</link><pubDate>Wed, 04 Feb 2026 00:00:00 +0900</pubDate><guid>https://hack-le.com/thinkpad-x280-linux-mint-xfce-28-3-vivaldi-mic/</guid><description>&lt;p&gt;表題どおり。ThinkaPad X280にLinux Mint Xfce Editionを入れたところ、そのままだとマイク入力できなかったのでその調整。&lt;/p&gt;&#10;&lt;h2 id="環境"&gt;環境&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;ThinkPad X280&#10;&lt;ul&gt;&#10;&lt;li&gt;Core i5-8250U&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Linux Mint 22.3 Xfce&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="デバイスレベルのマイク調整"&gt;デバイスレベルのマイク調整&#10;&lt;/h2&gt;&lt;p&gt;まずマイクが初期設定だと100%に張り付いてしまっていたので調整。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;arecord&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;vvv&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;f&lt;/span&gt; &lt;span class="nx"&gt;dat&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;dev&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これを実行すると100%に張り付いているのが確認される。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;alsamixer&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;実行後、F6でサウンドカードを選択する。F4でInternal Mic Boostを0に下げる。&lt;/p&gt;&#10;&lt;p&gt;ESCで閉じる。&lt;/p&gt;&#10;&lt;p&gt;再度&lt;code&gt;arecord&lt;/code&gt;を実行して100%にならないのを確認する。&lt;/p&gt;&#10;&lt;p&gt;以下を実行して録音・再生してテスト。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="nx"&gt;秒間録音します&lt;/span&gt;&lt;span class="err"&gt;（&lt;/span&gt;&lt;span class="nx"&gt;話し続けてください&lt;/span&gt;&lt;span class="err"&gt;）&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;arecord&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;d&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;f&lt;/span&gt; &lt;span class="nx"&gt;cd&lt;/span&gt; &lt;span class="nx"&gt;test&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;wav&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;#&lt;/span&gt; &lt;span class="nx"&gt;録音したファイルを再生します&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;aplay&lt;/span&gt; &lt;span class="nx"&gt;test&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;wav&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;録音した声が再生されたらOK。&lt;/p&gt;&#10;&lt;h2 id="vivaldiでマイク認識"&gt;Vivaldiでマイク認識&#10;&lt;/h2&gt;&lt;p&gt;Firefoxではこのまま使えたのだが、Vivaldiだと使えなかった。ブラウザで使えないのは困る。&lt;a class="link" href="https://mictests.com/" target="_blank" rel="noopener"&#10; &gt;Mic Test&lt;/a&gt;でマイク入力が見つからないことがわかった。&lt;/p&gt;&#10;&lt;p&gt;Vivaldiを閉じて以下を実行する。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-javascript" data-lang="javascript"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;sudo&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;opt&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;vivaldi&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nx"&gt;update&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nx"&gt;ffmpeg&lt;/span&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;実行すると&lt;code&gt;Proprietary media codecs (120726) was already present&lt;/code&gt;と言われ、なんだか意味がなさそうなのだが、実際にはもう一度Vivaldiを立ち上げてマイクテストするとマイクが見つかるようになる。&lt;/p&gt;&#10;&lt;p&gt;その後MTGでも使ってみたが、無事認識された。音量も特に問題なさそうだった。&lt;/p&gt;&#10;</description></item><item><title>ブラウザでSSHログインして操作できるShell In A Boxが便利だった（Mac）</title><link>https://hack-le.com/shellinabox/</link><pubDate>Tue, 06 Jan 2026 00:00:00 +0900</pubDate><guid>https://hack-le.com/shellinabox/</guid><description>&lt;p&gt;Webブラウザ経由でCLI実行できるの助かる。&lt;/p&gt;&#10;&lt;p&gt;&lt;a class="link" href="https://github.com/shellinabox/shellinabox" target="_blank" rel="noopener"&#10; &gt;shellinabox/shellinabox: Official-ish Fork of Shell In A Box&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;ターミナル横に開けばええやないかいとか思われそうだが、いやブラウザで開けるところに価値がある。特に&lt;strong&gt;ブラウザとしてVivaldi使っていると、Webパネルという機能でサイドバーにWebアプリを開けるのだけれど、この組み合わせが非常に強力&lt;/strong&gt;。CLIの簡単さとブラウザの強力なGUIが組み合わさって非常に強い。&lt;/p&gt;&#10;&lt;p&gt;開発自体はだいぶ前に止まっている模様。また、日本語の入力が厳しそうな感じだったので、そのうち別アプリも試したい。本格的に開発で使うぞっていうのではなく、&lt;strong&gt;いくつかのCLIツールを実行できるだけでハッピー&lt;/strong&gt;なので、とりあえずヨシ！&lt;/p&gt;&#10;&lt;h2 id="環境"&gt;環境&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;M2 Pro Mac mini&#10;&lt;ul&gt;&#10;&lt;li&gt;macOS Sonoma 14.8.1&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;ShellInABox 2.20&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="インストールと使い方"&gt;インストールと使い方&#10;&lt;/h2&gt;&lt;h3 id="インストール"&gt;インストール&#10;&lt;/h3&gt;&lt;p&gt;homebrewで一発だった。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;brew install shellinabox&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="使い方"&gt;使い方&#10;&lt;/h3&gt;&lt;p&gt;そして利用はこれだけ。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;shellinaboxd -t&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;-tはhttpsの無効化。LANでしか使わないので。&lt;/p&gt;&#10;&lt;p&gt;&lt;code&gt;http://IPアドレス:4200&lt;/code&gt;にブラウザアクセスしたら、あとは普通に使える。&lt;/p&gt;&#10;&lt;p&gt;LAN内の別PCからもアクセスできる。sshログインするより楽かもしれない。&lt;/p&gt;&#10;&lt;h3 id="オプション"&gt;オプション&#10;&lt;/h3&gt;&lt;p&gt;以下は使いがち&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;code&gt;-t&lt;/code&gt;: http接続（https無効）&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;-h&lt;/code&gt;: ヘルプ表示&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;--no-beap&lt;/code&gt;: ブラウザ経由で音を出さない&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;-p ポート番号&lt;/code&gt;: 起動するポート番号を変更する&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;--version&lt;/code&gt;: バージョン番号の表示&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="macで自動起動するplist"&gt;Macで自動起動するplist&#10;&lt;/h3&gt;&lt;p&gt;こいつを例によって &lt;code&gt;$(HOME)/Library/LaunchAgents/&lt;/code&gt;において &lt;code&gt;launchctl load&lt;/code&gt;する。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;?xml &lt;span class="nv"&gt;version&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;1.0&amp;#34;&lt;/span&gt; &lt;span class="nv"&gt;encoding&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;UTF-8&amp;#34;&lt;/span&gt;?&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;!DOCTYPE plist PUBLIC &lt;span class="s2"&gt;&amp;#34;-//Apple//DTD PLIST 1.0//EN&amp;#34;&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;http://www.apple.com/DTDs/PropertyList-1.0.dtd&amp;#34;&lt;/span&gt;&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;plist &lt;span class="nv"&gt;version&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;1.0&amp;#34;&lt;/span&gt;&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;dict&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;!-- ドメインは自分ので調整 --&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;key&amp;gt;Label&amp;lt;/key&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;string&amp;gt;com.example.shellinabox-m2&amp;lt;/string&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;key&amp;gt;ProgramArguments&amp;lt;/key&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;!-- パスとオプション調整 --&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;array&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;string&amp;gt;/opt/homebrew/bin/shellinaboxd&amp;lt;/string&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;string&amp;gt;-t&amp;lt;/string&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;/array&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;key&amp;gt;RunAtLoad&amp;lt;/key&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;true/&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;key&amp;gt;KeepAlive&amp;lt;/key&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;true/&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;!-- ログも好きな場所に調整 --&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;key&amp;gt;StandardOutPath&amp;lt;/key&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;string&amp;gt;/tmp/shellinabox-m2.log&amp;lt;/string&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;key&amp;gt;StandardErrorPath&amp;lt;/key&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &amp;lt;string&amp;gt;/tmp/shellinabox-m2-error.log&amp;lt;/string&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;/dict&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&amp;lt;/plist&amp;gt;&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="日本語問題"&gt;日本語問題&#10;&lt;/h2&gt;&lt;p&gt;そのままだと日本語が化けた。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/12/image-2-700x197.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;LANGを設定すると表示できる。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;LANG&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;ja_JP.UTF-8&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/12/image-3-700x160.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;でも入力はつらそう&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/12/image-4-700x42.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;これは解決できていない。&lt;strong&gt;強いて言えば日本語を使わない&lt;/strong&gt;。&lt;/p&gt;&#10;&lt;h2 id="vivaldiのwebパネルとの相性がよい"&gt;VivaldiのWebパネルとの相性がよい&#10;&lt;/h2&gt;&lt;p&gt;リアルで使っている人を自分以外見たことがない系マイナーブラウザの中ではメジャーブラウザVivaldiには、Webパネルという機能がある。このWebパネルは便利だ。サイドバーにWebサイトを表示できるのだが、これによって&lt;strong&gt;サイドバーにターミナルを出現させることが可能&lt;/strong&gt;。&lt;/p&gt;&#10;&lt;p&gt;これは個人的に非常に便利だ。&lt;strong&gt;CLIの作業はけっこうブラウザで手順書を見ながらやることが多い&lt;/strong&gt;。コンテナ作る時とかね。特にインフラ周りの作業だとけっこうあるはず。&lt;/p&gt;&#10;&lt;p&gt;また、自作のスクリプトなどはわざわざGUIにするのがめんどくさいなので、コマンドまんまだったりTUIだったりする。僕の場合はサイト管理のためにいくつかのツールを作っているのだが、サイトを閲覧しながらツールを実行できるのは、けっこう快適である。&lt;/p&gt;&#10;&lt;p&gt;たとえば以下は、記事を編集しながら、その隣で&lt;code&gt;wp-mkimg&lt;/code&gt;なるWordPressサイト向けの自作コマンドを実行しようとしている。これができるのはけっこう嬉しかったりする。LAN内のどのPCからもできるし。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/12/ba0be3680d5e67ebcd67735a68952dad-700x201.webp"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;code&gt;lazydocker&lt;/code&gt;とか&lt;code&gt;htop&lt;/code&gt;を使ってブラウザを見ながらリソース管理することも可能だ（やりたいかは知らない）。&lt;/p&gt;&#10;&lt;h2 id="所感"&gt;所感&#10;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;ブラウザ経由でよく使うCLIツールを使いたいという第一の欲求は満たせた&lt;/strong&gt;。とりあえずよかった。日本語問題は今後困りそうなので、別のも試したい。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/tsl0922/ttyd" target="_blank" rel="noopener"&#10; &gt;tsl0922/ttyd: Share your terminal over the web&lt;/a&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;a class="link" href="https://github.com/butlerx/wetty" target="_blank" rel="noopener"&#10; &gt;butlerx/wetty: Terminal in browser over http/https. (Ajaxterm/Anyterm alternative, but much better)&lt;/a&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;っていうか、最初は&lt;code&gt;ttyd&lt;/code&gt;を試したのだけれど、動かなかったんだよねぇ。&lt;/p&gt;&#10;</description></item><item><title>メインのメールクライアントもVivaldiになりつつある</title><link>https://hack-le.com/mail-vivaldi/</link><pubDate>Mon, 07 Jul 2025 01:00:04 +0900</pubDate><guid>https://hack-le.com/mail-vivaldi/</guid><description>&lt;p&gt;現在のメインブラウザはなんだかんだあってVivaldiなのだが、最近メインのメールクライアントもVivaldiになりつつある。メーラについては特に変える気が無かったのだが、使って見ると便利だった。ブラウザ内で開けるのも楽だし、なによりなんと、メールを検索できる（歓喜）。何を言っているのかわからないかもしれないが、今までメールの検索で失敗し続けるだけの人生だった。&lt;/p&gt;&#10;&lt;h2 id="ブラウザはvivaldiがメイン"&gt;ブラウザはVivaldiがメイン&#10;&lt;/h2&gt;&lt;p&gt;Vivaldiはオペラの後継でChromiumベースのブラウザで、UA偽装しているのでマーケットシェアは正確なところわからないと思うが、しかしまぁ1%あるのかどうか怪しいのはそうだろう。昔ならネットを利用しているユーザ数が今ほど多くなかったので、相対的にニッチなブラウザを利用するユーザの割合もそれなりにあったろうが、まぁ今となってはねぇ。正直周りでVivaldi使っているのは僕しか見たことがない。Braveについては驚くべきことに次姉が使っていて笑った。どこで知ったんだろう。まぁとはいえブラウザはPCユーザほぼ全員使うモノなので、シェアが少なくても絶対数自体は相当なものではあろう。&lt;/p&gt;&#10;&lt;p&gt;僕は元々Braveを中心に使っていたのだが、Webパネルの機能が便利すぎたので今はVivaldiがメインだ。Webパネルというのは、サイドバーにもう一画面付け加えるようなもので、これが使って見るとなかなか便利なのである。たとえばスクショは記事を書きながらClaudeをサイドのWebパネルで表示している図だ。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/07/90160277618b08652a32d6479f204b9b-700x501.webp"&gt;&lt;/p&gt;&#10;&lt;p&gt;とはいえこれの何がどう便利なのかはいくら口で伝えてもわかるものではないので、興味がある人は君自身の目で確かめるんだ。&lt;/p&gt;&#10;&lt;h2 id="メールもvivaldiがメイン"&gt;メールもVivaldiがメイン&#10;&lt;/h2&gt;&lt;p&gt;そしてこれは予想外だったのだが、メールクライアントもVivaldiがメインになりつつある。僕はメーラについても過去色々と試してきたが、なんやかんやあって結局今はMacのメール.app、つまり標準アプリを使っている。一時期はThunderbirdとか、あとAirmailとか使ってたかな。&lt;/p&gt;&#10;&lt;p&gt;ただメール.appには問題があった。どういうわけなのか、メールの検索という基本的なことができない。しかしこれはメール.appに限らず、Airmailなどサードパーティのアプリでも日本語の検索はうまくいかなかった記憶。&lt;/p&gt;&#10;&lt;p&gt;これはけっこう困るんだけれど、まぁ最近はメールでやりとりすることも減ったし、メールくれるやつだいたいメルマガの2025年だからもういいか……と半ば諦め気味だったんだけれど、そうはいってもやはり検索できないのは困る。&lt;/p&gt;&#10;&lt;p&gt;で、そういえばVivaldiもメール機能あったなぁ、どんなもんだろう……と思って使って見たところ、なんと&lt;strong&gt;メールがちゃんと検索できる&lt;/strong&gt;。素晴らしい。メールを検索をできるなんて、なんてすごいユーザ体験なんだ。&lt;/p&gt;&#10;&lt;p&gt;ということで、&lt;strong&gt;余計なことばかりできるようになる一方で必要なことができなくなるばかりの2025年、基本的なことがちゃんとできるメーラということで、Vivaldiがメインメーラにもなりつつある&lt;/strong&gt;。Vivaldiはブラウザなので、Linuxでも使えることも大きい。また、タブ感覚で開けるのもやってみるとけっこう体験がよかった。&lt;/p&gt;&#10;&lt;h2 id="rssはまだfeedly"&gt;RSSはまだFeedly&#10;&lt;/h2&gt;&lt;p&gt;Vivaldiは他にRSSの機能もあるが、これは今のところ相変わらずFeedlyを使っている。まぁ、元々RSSについてはスマホから見ることが多かったしな。でもそのうちRSSも試してみたいと思っている。&lt;/p&gt;&#10;&lt;p&gt;シェアはなくとも、Vivaldiはよきブラウザである。&lt;/p&gt;&#10;</description></item><item><title>Macでキーボードの挙動が変？VivaldiとVisualStudio Code でだけ Cmd + [ がきかない現象</title><link>https://hack-le.com/vivaldi-visualstudio-code-cmd/</link><pubDate>Sat, 15 Mar 2025 09:57:36 +0900</pubDate><guid>https://hack-le.com/vivaldi-visualstudio-code-cmd/</guid><description>&lt;p&gt;何を言っているのか意味不明だと思うが僕も何が起きているのか意味不明だった。とりあえずなおったのでメモ。&lt;/p&gt;&#10;&lt;h2 id="環境"&gt;環境&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;M2 Pro Mac mini&#10;&lt;ul&gt;&#10;&lt;li&gt;ただし MBP 2019 でも起きていた&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Vivaldi, VSCode&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="事象"&gt;事象&#10;&lt;/h2&gt;&lt;p&gt;一部のアプリ、具体的はVisualStudioCode、Vivaldiにおいて、Cmdキーを押すと &lt;code&gt;[&lt;/code&gt; キーを認識しないという謎の事象が発生していた。これはMacの再起動などではなおらない。&lt;/p&gt;&#10;&lt;p&gt;キーストローク自体はシステム全体では認識されており、Karabinerを使うと押されていることがわかるし、Braveなど別のアプリでは認識されているため、一部のアプリでのみ生じている問題だといえる。&lt;/p&gt;&#10;&lt;p&gt;Vivaldiにおいて、実際にDevToolsを起動してキーストロークを検出したところ、 &lt;code&gt;[&lt;/code&gt;単体ならば問題ないが、Cmdキーを押した状態だと認識しないことがわかった。VisualStudioCodeも同様の状態だったと考えられる。&lt;/p&gt;&#10;&lt;h2 id="原因と対応"&gt;原因と対応&#10;&lt;/h2&gt;&lt;p&gt;なぜ複数のアプリでこんなことになるのか意味不明で、ずっと僕の頭を悩ませていたが、以下の措置を実行したところ、なおった（？）。少なくとも事象は再現しなくなった（削除コマンドなので、一応バックアップはとっておくとよい）。&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;rm ~/Library/Preferences/com.apple.symbolichotkeys.plist&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;意味不明だったのでChatGPTに理由を聞いたところ、以下のような回答を得られたが、あまり納得していない。&lt;/p&gt;&#10;&lt;details class="swell-block-accordion__item" data-swl-acc="wrapper"&gt;&lt;summary class="swell-block-accordion__title" data-swl-acc="header"&gt;ChatGPTによる回答&lt;/summary&gt;&#10;&lt;p&gt;問題が解決したことから、&lt;strong&gt;macOSのシステム設定（symbolic hotkeys）が影響していた&lt;/strong&gt; ことが明らかになりました。&lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; は、macOSのキーボードショートカット設定を管理するファイルであり、これが何らかの理由で &lt;code&gt;Cmd + [&lt;/code&gt; の入力を阻害していたと考えられます。&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="chatgpt-なぜ-comapplesymbolichotkeysplist-の削除で解決したのか"&gt;(ChatGPT) なぜ &lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; の削除で解決したのか？&#10;&lt;/h2&gt;&lt;h3 id="1-cmd---がシステムレベルのホットキーに誤って割り当てられていた"&gt;1. &lt;code&gt;Cmd + [&lt;/code&gt; がシステムレベルのホットキーに誤って割り当てられていた&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; には、Mission Control、アプリケーションスイッチャー、ウィンドウ管理などのショートカット設定が保存されている。&lt;/li&gt;&#10;&lt;li&gt;何らかの理由で、&lt;code&gt;Cmd + [&lt;/code&gt; がVivaldiやVSCodeでは動作しない形でシステムに割り当てられていた可能性がある。&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;rm&lt;/code&gt; でこのファイルを削除したことで、&lt;strong&gt;すべてのショートカット設定がリセットされ、デフォルトの挙動に戻った&lt;/strong&gt;。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="2-設定が壊れていた--予期せぬキー競合が発生していた"&gt;2. 設定が壊れていた / 予期せぬキー競合が発生していた&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;macOSアップデートや外部アプリの影響で、&lt;strong&gt;システムショートカット設定が壊れたり、不要な競合が発生したりすることがある&lt;/strong&gt;。&lt;/li&gt;&#10;&lt;li&gt;特に、VSCodeやVivaldiは&lt;strong&gt;標準的なmacOSのUIではなく、独自のキーボードイベント処理を持っている&lt;/strong&gt;ため、壊れた設定が影響を与えやすい。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h3 id="3-vivaldiとvscodeで-cmd---が特定の条件で無視されていた"&gt;3. VivaldiとVSCodeで &lt;code&gt;Cmd + [&lt;/code&gt; が特定の条件で無視されていた&#10;&lt;/h3&gt;&lt;ul&gt;&#10;&lt;li&gt;システムの &lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; に &lt;code&gt;Cmd + [&lt;/code&gt; に関する設定が存在し、それが&lt;strong&gt;特定のアプリでのみ適用される&lt;/strong&gt; 形になっていた可能性がある。&lt;/li&gt;&#10;&lt;li&gt;&lt;code&gt;defaults read -g&lt;/code&gt; で確認できるようなグローバルショートカットではなく、個別のアプリに影響を与える設定だった可能性。&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="chatgpt-この問題の発生原因は"&gt;(ChatGPT) この問題の発生原因は？&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;過去に &lt;strong&gt;システム設定でショートカットをカスタマイズ&lt;/strong&gt; したことがある&lt;/li&gt;&#10;&lt;li&gt;macOSの&lt;strong&gt;アップデートによる設定変更&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;外部アプリ（Karabiner、BetterTouchToolなど）の影響&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;何らかの&lt;strong&gt;バグや意図しないシステム設定の競合&lt;/strong&gt;&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;いずれかが影響して &lt;code&gt;Cmd + [&lt;/code&gt; が特定のアプリで無効になっていたと考えられます。&lt;/p&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="chatgpt-再発を防ぐためには"&gt;(ChatGPT) 再発を防ぐためには？&#10;&lt;/h2&gt;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;「システム設定」→「キーボード」→「キーボードショートカット」で、意図しない割り当てがないか確認&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;影響を受けやすい &lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; のバックアップを定期的に取る&lt;/strong&gt; &lt;code&gt;cp ~/Library/Preferences/com.apple.symbolichotkeys.plist ~/Desktop/symbolichotkeys_backup.plist&lt;/code&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;再発した場合は、再度 &lt;code&gt;rm ~/Library/Preferences/com.apple.symbolichotkeys.plist&lt;/code&gt; を実行&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;外部アプリ（Karabiner-Elements, BetterTouchTool, Alfredなど）の設定を見直す&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;macOSアップデート後にショートカットの挙動をチェック&lt;/strong&gt;&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;hr&gt;&#10;&lt;h2 id="chatgpt-結論"&gt;(ChatGPT) 結論&#10;&lt;/h2&gt;&lt;p&gt;この問題の根本原因は、&lt;strong&gt;macOSの &lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; に &lt;code&gt;Cmd + [&lt;/code&gt; の動作を妨げる何らかの設定が記録されていた&lt;/strong&gt; ことです。このファイルを削除してリセットすることで、VivaldiやVSCodeで &lt;code&gt;Cmd + [&lt;/code&gt; のショートカットが正常に機能するようになりました。&lt;/p&gt;&#10;&lt;p&gt;この現象は比較的珍しいですが、macOSのショートカット設定が予期せず影響を及ぼすことは時々あります。同様の問題が再発した場合は、まず &lt;code&gt;com.apple.symbolichotkeys.plist&lt;/code&gt; のリセットを試すのが最も確実な解決策となるでしょう。&lt;/p&gt;&#10;&lt;/details&gt;&#10;&lt;h2 id="所感"&gt;所感&#10;&lt;/h2&gt;&lt;p&gt;特に副作用らしきことも起きていない。事象が再発しなくなったのでよかったが、それにしても意味不明だなとは思っている。&lt;/p&gt;&#10;&lt;p&gt;こういうイレギュラーなことにおいて、ChatGPTは無力の極みなので、まともに聞くのではなく、とにかくそれらしい事象を検索させて、可能性がありそうなことを試すしかない。最終的にとりあえずなんとかなったので、よかったのかな。&lt;/p&gt;&#10;</description></item><item><title>一度に複数リンクを一括で開くならLinkclump：効率的な情報収集のために</title><link>https://hack-le.com/linkclump/</link><pubDate>Wed, 19 Feb 2025 14:13:47 +0900</pubDate><guid>https://hack-le.com/linkclump/</guid><description>&lt;p&gt;（追記）なんかChromeではウンコなのでサポート終了らしいので、みんなVivaldiを使おう。&lt;/p&gt;&#10;&lt;p&gt;Linkclumpは気に入っているChrome拡張機能だ。Chromeでなくても、BraveなどChromium系列のやつなら使える。&lt;/p&gt;&#10;&lt;p&gt;これは何かと言うと、ブラウザで複数のリンクを選択し、選択範囲内のリンクを一括で新規タブで開く、というものだ。&lt;/p&gt;&#10;&lt;h2 id="機能の動画"&gt;機能の動画&#10;&lt;/h2&gt;&lt;p&gt;まぁ百聞に一見にしかずなので、次の短い動画を見れば、どんな機能かはほぼわかるだろう。&lt;/p&gt;&#10;&lt;p&gt;&lt;video controls src="https://hack-le.com/images/uploads/2025/02/46f85000d706142c196333462d8c6648.mov"&gt;&lt;/video&gt;&lt;/p&gt;&#10;&lt;p&gt;初期設定では、「zキーを押しながらドラッグして範囲を選択する」という設定になっているかと思われるが、ここは設定でShiftキーにしたりできる。&lt;/p&gt;&#10;&lt;h2 id="ユースケース"&gt;ユースケース&#10;&lt;/h2&gt;&lt;h3 id="検索結果をすべて見たい時"&gt;検索結果をすべて見たい時&#10;&lt;/h3&gt;&lt;p&gt;Googleを始めとする検索エンジンのクソ化が叫ばれて久しいものの、情報収集では今なお頼らざるを得ない。いやむしろ、クソ化が進み、一番上どころか1ページ目にもろくな情報が出てこない昨今、検索結果のすべてを開いてやるくらいのことが必要だ。&lt;/p&gt;&#10;&lt;p&gt;この時、検索結果を一つずつ開いていくのは億劫である。しかしLinkclumpがあれば、この手間を大いに省略することができる。&lt;/p&gt;&#10;&lt;p&gt;ちなみに僕は里の掟のためにGoogle検索を使っていないが、どこの検索エンジンを使っていても事情は大して変わらないので、有用である。&lt;/p&gt;&#10;&lt;div class="blog-card-wrapper"&gt;&#10; &lt;a href="https://hack-le.com/google3-google-ai/" class="blog-card"&gt;&#10; &lt;div class="blog-card-content"&gt;&#10; &lt;div class="blog-card-label"&gt;&#10; &lt;svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"&gt;&lt;/path&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"&gt;&lt;/path&gt;&lt;/svg&gt;&#10; &lt;span&gt;あわせて読みたい&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-title"&gt;趣味としての脱Googleその3: 検索エンジン編 Google AIが証明するググってもカス&lt;/div&gt;&#10; &lt;div class="blog-card-url"&gt;/google3-google-ai/&lt;/div&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-thumbnail"&gt;&#10; &lt;img src="https://hack-le.com/images/uploads/2026/09/eyecatch_13527_1788944350.webp" alt="趣味としての脱Googleその3: 検索エンジン編 Google AIが証明するググってもカス" loading="lazy" /&gt;&#10; &lt;/div&gt;&#10; &lt;/a&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;h3 id="オンラインショッピング"&gt;オンラインショッピング&#10;&lt;/h3&gt;&lt;p&gt;ネットショッピングでは、一つのお目当ての商品リンクが予めわかっていることは滅多にない。ほとんどの場合、語句で検索し、さらにショッピングモールサイトなどでは、同じ商品を扱う複数の店舗から選ぶなどしなくてはならない。&lt;/p&gt;&#10;&lt;p&gt;この時、一つ一つ開いて確認するのはいかにも億劫である。ここでもLinkclumpは非常に有用だ。&lt;/p&gt;&#10;&lt;h3 id="ページネーションが大量にある記事の読み込み"&gt;ページネーションが大量にある記事の読み込み&#10;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;ページネーションは悪い文明！粉砕する！&lt;/strong&gt;&lt;/p&gt;&#10;&lt;p&gt;ユーザにとって記事分割が最悪のUXであることは今さら言うまでもないが、現実的には2025年も1ページあたり原稿用紙1枚か2枚分程度の長さで分割する悪いサイトはたくさんある。ページ遷移するたびに全画面広告を見せられ、さらに移動した先でまた脱毛とか美容を謳った怪しげな広告が画面の上半分を占有する。星新一のショートショートで描かれたディストピアが実現した笑えない2025年な今日この頃であるが、現実そうなっているので仕方が無い。&lt;/p&gt;&#10;&lt;p&gt;これの対策の一つはオートページャーだ。勝手に次のページを読み込んで繋げてくれる。これはうまく機能するとたいへんよいものだが、意図しないところで機能したり、適切に読めないことも多々ある。便利なものではあるが、個人的には常用するには副作用が大きいかなと思う。かつてEvernoteで全文をWebクリップするには必須の機能だったが、Evernoteは……もう……（ちなみにNotionのWebクリップだと、ページネーションの記事は後続まで読み込んで繋げてくれるのに対応しているサイトがけっこうある。有能）。&lt;/p&gt;&#10;&lt;p&gt;もう一つの対策がLinkclumpのように、リンクを一括で開くツールだ。これを使うことで、後続のページをまとめて開くことができる。ただし、「次へ」しかないものや、「1,2,3,&amp;hellip;,10」などと途中省略されているパターンには対応できない。対応できないが、&lt;strong&gt;1つの記事を10ページに分割するような記事を載せるサイトは読んじゃいけない&lt;/strong&gt;。金儲けだけの記事だ。どうせ記事も他からの無断転載だ。読まなくていいとかじゃない、読むべきじゃない。&lt;/p&gt;&#10;&lt;h3 id="リンク集巡回"&gt;リンク集、巡回&#10;&lt;/h3&gt;&lt;p&gt;リンク集を同時に開くのに便利だ。当サイトは古の流儀を継承しているため「&lt;a class="link" href="https://hack-le.com/website-links/" &gt;リンク集&lt;/a&gt;」がある。是非試されたい。&lt;/p&gt;&#10;&lt;h3 id="その他wikiなどで取得すべき情報のリンクが並んでいる時"&gt;その他、Wikiなどで取得すべき情報のリンクが並んでいる時&#10;&lt;/h3&gt;&lt;p&gt;普通に利用していても、「開きたいリンクが並んでいる」ケースは多くあるものだ。社内Wikiなんかでも、リンクページが箇条書きになっていて、全部を見ないといけない、なんてシチュエーションはありがちじゃないだろうか。&lt;/p&gt;&#10;&lt;h2 id="タブいっぱい開いてこうな"&gt;タブいっぱい開いてこうな&#10;&lt;/h2&gt;&lt;p&gt;スマホ全盛の昨今だが、スマホでまともな情報収集なんて出来ない。使い方の問題ではなく、もっと根本的に、大きさとインタフェースの問題だ。タブレットでもできない。大量の情報を効率よく取得し整理するには、絶対にPCが必要だ。&lt;/p&gt;&#10;&lt;p&gt;僕は別にスマホ嫌いでもタブ嫌いでもない、むしろiPod touchや初代iPadを使っていたくらいで、スマホ・タブレットの可能性については10年以上追求し色々試している。「&lt;a class="link" href="https://hack-le.com/profile/" &gt;俺のガジェット - 或る阿呆の記&lt;/a&gt;」を見ればわかるはずだ。&lt;/p&gt;&#10;&lt;p&gt;色々試してきた結果、腰を据えて大量に情報をアクティブに集め摂取するという観点では、結局PCとフルのWebブラウザが最強、00年代に完成していたという結論である。&lt;/p&gt;&#10;&lt;p&gt;Linkclumpのような拡張機能は、アクティブな情報収集には欠かせない有用なツールである。なんだかんだでもうずっと使っている。&lt;/p&gt;&#10;</description></item><item><title>ChatGPTで自分だけSomething went wrong while generating the response. If this issue persists please contact us through help center at help.openai.com.と永遠に言われる時</title><link>https://hack-le.com/chatgpt-something-went-wrong-while-generating-the-response-if-this-issue-persists-please-contact-us-through-help-center-at-help-openai-com/</link><pubDate>Wed, 12 Feb 2025 15:03:17 +0900</pubDate><guid>https://hack-le.com/chatgpt-something-went-wrong-while-generating-the-response-if-this-issue-persists-please-contact-us-through-help-center-at-help-openai-com/</guid><description>&lt;p&gt;ChatGPTが永遠にレスポンス生成しない。最初、またChatGPTが落ちてるのかと思っていたが、他の人たちが使えていたのでおまかんの可能性があると思って調査した。結果、おまかんだった。でもChatGPTのバグとの合わせ技なんじゃないの？とも思いつつ対応メモ。&lt;/p&gt;&#10;&lt;h2 id="環境"&gt;環境&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;M2 Pro Mac mini&#10;&lt;ul&gt;&#10;&lt;li&gt;macOS 14.6.1&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;Brave 1.75.175&lt;/li&gt;&#10;&lt;li&gt;ChatGPT Plusプラン&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="症状"&gt;症状&#10;&lt;/h2&gt;&lt;p&gt;以下のエラーメッセージが表示されて、会話ができなくなる。&lt;/p&gt;&#10;&#10; &lt;blockquote&gt;&#10; &lt;p&gt;Something went wrong while generating the response. If this issue persists please contact us through our help center at help.openai.com&lt;/p&gt;&#10;&#10; &lt;/blockquote&gt;&#10;&lt;p&gt;このエラーが出る頻度は徐々に上がっていき、最終的に100%になる。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/02/c0070b810faa77e3d2e5139e66dcff00-700x339.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;ただし、ログアウトしない状態、シークレットウィンドウ、別のブラウザ、アプリなど、他の環境からは通常どおり会話ができる。つまり、利用しているブラウザの一時情報に何か問題があるということになる。&lt;/p&gt;&#10;&lt;h2 id="対応-キャッシュの削除"&gt;対応: キャッシュの削除&#10;&lt;/h2&gt;&lt;p&gt;最初、Cookieを削除したがダメだった。仕方ないので、消せるだけローカルのキャッシュを削除した。&lt;/p&gt;&#10;&lt;p&gt;具体的には、デベロッパーツールを起動し、Applicationから以下をClearした。&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Cookies&lt;/li&gt;&#10;&lt;li&gt;Session Storage&lt;/li&gt;&#10;&lt;li&gt;Local Storage&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2025/02/cb3779166f5dd3389e033b46bdd3f04f-700x375.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;リロードして再ログインすると、再び会話できるようになった。&lt;/p&gt;&#10;&lt;p&gt;キャッシュが破損といえばそれっぽいが、何がどうしてそうなるのか。。。&lt;/p&gt;&#10;&lt;p&gt;以上。&lt;/p&gt;&#10;</description></item><item><title>ブラウザ画面の自動更新はTab Reloaderでいいよなって</title><link>https://hack-le.com/tab-reloader-querier/</link><pubDate>Wed, 25 Dec 2024 14:33:59 +0900</pubDate><guid>https://hack-le.com/tab-reloader-querier/</guid><description>&lt;p&gt;&lt;strong&gt;Tab Reloader&lt;/strong&gt;という拡張機能を使っている。&lt;/p&gt;&#10;&lt;p&gt;&lt;a class="link" href="https://chromewebstore.google.com/detail/tab-reloader-page-auto-re/dejobinhdiimklegodgbmbifijpppopn?hl=ja" target="_blank" rel="noopener"&#10; &gt;https://chromewebstore.google.com/detail/tab-reloader-page-auto-re/dejobinhdiimklegodgbmbifijpppopn?hl=ja&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;名前の通り、特定のタブを一定間隔で自動更新してくれるだけのやつだ。使い方にクセがなく、無料で必要な機能が一通り揃っている。これだけで、特定のページを定期的にリフレッシュする要望はほぼ解決する。まぁこういうのは昔からいろいろあるので、別にTab Reloaderじゃなくてもいいと思うが、別に拘りもないのでTab Reloaderを使っている。&lt;/p&gt;&#10;&lt;h2 id="ノーコードツールと自動更新"&gt;ノーコードツールと自動更新&#10;&lt;/h2&gt;&lt;p&gt;具体的には、僕はこのTab Reloaderを、&lt;strong&gt;Querier&lt;/strong&gt;で使っている。Querierはいわゆるノーコードサービスで、データベースとかAPIからデータを引っ張ってきたのを、テーブルにしたりグラフにしたりした画面を構成するものだ。一言でいえばダッシュボード作るやつ。&lt;/p&gt;&#10;&lt;p&gt;たとえばこれは毎日SSDの健康状態を送信しグラフ化するという謎アプリである。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2024/12/6b3326a6ef696b0f010f1502484621e5-700x385.webp"&gt;&lt;/p&gt;&#10;&lt;p&gt;まぁ色々制約はあるんだけれど、さっとつくってみる分には楽。僕のようなフロントエンドクソ雑魚野郎でも、とりあえず目的を達せられる。ドラッグ＆ドロップでボタンとか表とか配置するだけなら僕にもできるので。バックエンドしかできないマン向けツール。&lt;/p&gt;&#10;&lt;p&gt;ただ、DBとかAPIとか自分で作れると画面はすぐできるんだが、Querierの画面はリアルタイムで内容をリフレッシュできない。つまり、更新ボタンを設置して、手動で更新ボタンを押さないと最新のデータが見られない。機能的にあっていい気はするんだが、まぁリアルタイム更新みたいな機能はノーコード的に色々考えることがあって面倒なのだろうなと思われる。&lt;strong&gt;ノーコードは「いかにして制約を作り込むか」みたいな側面がある&lt;/strong&gt;ので。&lt;/p&gt;&#10;&lt;p&gt;しかし、データを表示するダッシュボードならば、放置しておいてふと見た時には最新データが表示されてほしいのが実際のところだ。SSDの健康状態ならどうでもいいけれど、僕は仮想通貨のグラフ表示なんかもこれでやっているので、そういうのだとせめて5分に一回くらいは更新してほしい。&lt;/p&gt;&#10;&lt;p&gt;というわけで、Tab Reloaderで「5分ごとに更新」とかにしておけば、それっぽい自動更新機能が実現する。した。&lt;/p&gt;&#10;&lt;h2 id="こういうのでいい"&gt;こういうのでいい&#10;&lt;/h2&gt;&lt;p&gt;世の中にはリアルタイム更新の仕組みを作るための複雑な技術が山ほどあるし、それが必要な場面もある。ただ、Querier + Tab Reloaderみたいな組み合わせ程度でも、機能することもある。&lt;/p&gt;&#10;&lt;p&gt;何がなんでもバカ高いソリューションをどこぞのSIerに頼む必要はないし、自前でWebSocketとか仕組みを構築するほどでもない。要はできればいい。&lt;/p&gt;&#10;&lt;p&gt;Querierで作った画面が、Tab Reloaderで勝手に更新される。それを眺めながら、「まぁこれで十分だな」と思っている今日この頃だし、実際この程度の話で終わる業務はけっこうあるように思われる。まぁ、現実には色々と組織的な壁なんかもあるので、現場の工夫が受け入れられるかは別の話ではあるが。&lt;/p&gt;&#10;</description></item><item><title>複数ブラウザやChromeマルチユーザはEverSyncでブックマーク同期が便利</title><link>https://hack-le.com/browser-eversync/</link><pubDate>Sun, 22 Dec 2024 13:19:59 +0900</pubDate><guid>https://hack-le.com/browser-eversync/</guid><description>&lt;p&gt;ブラウザ間、あるいはChromeのマルチアカウント運用でのブックマーク同期は面倒だ。なんでそんなことする必要があるかといえば、&lt;strong&gt;組織やプロジェクトごとに異なるブラウザプロフィールを運用&lt;/strong&gt;する必要性があるからだ。ま、僕の場合は趣味で複数ブラウザを運用しているということもあるが。Chrome, Brave, Firefox、全部起動している。&lt;/p&gt;&#10;&lt;h2 id="ブックマークの一元管理したいはやくしたい"&gt;ブックマークの一元管理したいはやくしたい&#10;&lt;/h2&gt;&lt;p&gt;特に趣味で複数ブラウザを運用している場合に顕著だが、業務上の都合で複数運用している場合でも、すべてのブックマークを独立させるのは非効率だろう。というか、普通に面倒臭い。&lt;/p&gt;&#10;&lt;p&gt;かつては、&lt;strong&gt;Xmarks&lt;/strong&gt;のような拡張機能があって、これが複数ブラウザ間でのブックマーク同期を可能にしていた。しかし今はサービス終了している。まぁChromeとかブラウザ自身が同期機能もったのが大きいだろう。たいていの人は一つのブラウザで一つのプロフィールしか使ってないだろうし。&lt;/p&gt;&#10;&lt;h2 id="eversyncで同期できる"&gt;EverSyncで同期できる&#10;&lt;/h2&gt;&lt;p&gt;ということでしばらくブックマーク同期難民だったのが、今は&lt;strong&gt;EverSync&lt;/strong&gt;を使っている。EverSyncはChrome、Firefoxで使える拡張機能で、BraveのようなChromiumファミリーでも利用できる。&lt;/p&gt;&#10;&lt;p&gt;&lt;a class="link" href="https://chromewebstore.google.com/detail/eversync-sync-bookmarks-b/iohcojnlgnfbmjfjfkbhahhmppcggdog" target="_blank" rel="noopener"&#10; &gt;https://chromewebstore.google.com/detail/eversync-sync-bookmarks-b/iohcojnlgnfbmjfjfkbhahhmppcggdog&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;自動同期的なこともできるが、僕はこの手の同期アプリで双方向は可能な限り避けたいと思っている。いや、双方向は絶対こう、バグるんだよね。バックアップも双方向同期はまず避けてるな。そんなわけで、僕は正と決めたメインのBraveブラウザのみをアップロード元とし、その他のFirefoxやChromeにおいてはダウンロードオンリーの運用をしている。めんどくさいっちゃめんどくさいけど、ブックマークが破壊された時の手間を思えば、安い保険だと思う。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2024/12/c2d2ac73bef591cbec5ddfa6d7c5a260-700x451.webp"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;Manual Syncしかしないしけた客&lt;/em&gt;&lt;/p&gt;&#10;&lt;h2 id="数ヶ月これで運用"&gt;数ヶ月これで運用&#10;&lt;/h2&gt;&lt;p&gt;いつからこの運用を始めたのか明確に覚えていないが、数ヶ月ばかりは経過していると思う。まぁ実際Bookmarkの同期は便利だし、ブックマークバーに「エロサイト」なんて名前のフォルダでも入れてない限り、誰が見ても特に問題ないものだから、実際的だと思う。どこぞのサーバにアップロードしているのが不安という見方もあるだろうが、内容的にはURLのメモでしかないので、あまり問題にならんだろう。っていうかそこまで不安な人はそもそも同期とか考えるもんじゃないだろうし。&lt;/p&gt;&#10;&lt;p&gt;という、EverSyncはいいですよというだけの記事。&lt;/p&gt;&#10;</description></item><item><title>「安全でないダウンロードがブロックされました」を許可する（Chrome, Brave）</title><link>https://hack-le.com/secure-download-brave-chrome/</link><pubDate>Thu, 12 Sep 2024 13:39:09 +0900</pubDate><guid>https://hack-le.com/secure-download-brave-chrome/</guid><description>&lt;p&gt;ローカルサーバなどにhttp通信でアクセスした際、ファイルをダウンロードしようとしたら「安全でないダウンロードがブロックされました」と警告されて鬱陶しい。自分の場合は電子書籍アプリであるCalibreのWebサーバに頻繁にアクセスするのだが、本をダウンロードするたびにいちいち怒られてとても鬱陶しかった。&lt;/p&gt;&#10;&lt;p&gt;設定から特定のIPアドレスやドメインを除外できるが、設定できる場所が嫌がらせみたいなところにあるのでメモ。自分はBrave使いだが、Brave使っている人は少なそうなのでChromeについても書く（親切）。&lt;/p&gt;&#10;&lt;h2 id="環境"&gt;環境&#10;&lt;/h2&gt;&lt;ul&gt;&#10;&lt;li&gt;macOS: 14.6.1&lt;/li&gt;&#10;&lt;li&gt;Chrome: 128.0.6613.121 (arm64)&lt;/li&gt;&#10;&lt;li&gt;Brave: 1.69.162 Chromium: 128.0.6613.120 (Official Build) (arm64)&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="chromeの場合"&gt;Chromeの場合&#10;&lt;/h2&gt;&lt;ol&gt;&#10;&lt;li&gt;「設定」を開く&lt;/li&gt;&#10;&lt;li&gt;左側のメニューから「プライバシーとセキュリティ」&lt;/li&gt;&#10;&lt;li&gt;「サイトの設定」&lt;/li&gt;&#10;&lt;li&gt;「コンテンツ」内にある「その他のコンテンツの設定」を開く&lt;/li&gt;&#10;&lt;li&gt;「安全でないコンテンツ」&lt;/li&gt;&#10;&lt;li&gt;「安全でないコンテンツの表示を許可するサイト」に追加する&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2024/09/041d393e29a49af8d653d869c5f1793d-700x414.png"&gt;&lt;/p&gt;&#10;&lt;h2 id="brave編"&gt;Brave編&#10;&lt;/h2&gt;&lt;p&gt;Chromiumベースだから似たようなもんだけど微妙に違うので。&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;「設定」を開く&lt;/li&gt;&#10;&lt;li&gt;左側のメニューから「プライバシーとセキュリティ」&lt;/li&gt;&#10;&lt;li&gt;「サイトとシールドの設定」&lt;/li&gt;&#10;&lt;li&gt;「コンテンツ」内にある「その他のコンテンツの設定」を開く&lt;/li&gt;&#10;&lt;li&gt;「安全でないコンテンツ」&lt;/li&gt;&#10;&lt;li&gt;「安全でないコンテンツの表示を許可するサイト」に追加する&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2024/09/4ae1891c4ef3a01502502f3a78b7060e-700x393.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;まぁほとんど一緒だけど。画像の例はLAN内のプライベートIPアドレスを指定した例。たとえば192.168.0.8ならそのように直打ち。ワイルドカード使えないっぽい。&lt;/p&gt;&#10;&lt;h2 id="所感"&gt;所感&#10;&lt;/h2&gt;&lt;p&gt;この警告が人類の役に立ったことある？&lt;/p&gt;&#10;</description></item><item><title>FirefoxからBraveに乗り換え試行中</title><link>https://hack-le.com/firefox-brave/</link><pubDate>Mon, 25 Mar 2024 20:38:15 +0900</pubDate><guid>https://hack-le.com/firefox-brave/</guid><description>&lt;p&gt;「&lt;a class="link" href="https://hack-le.com/category/zakki/%e8%b6%a3%e5%91%b3%e3%81%a8%e3%81%97%e3%81%a6%e3%81%ae%e8%84%b1google/" &gt;趣味としての脱Google - 或る阿呆の記&lt;/a&gt;」の流れで、ブラウザをChromeからFirefoxに乗り換えていた。さすがに老舗Firefoxは今なお健在で、多くのことは問題なく出来るのだけれど、特にChromeよりも優れていると感じることもなかった。むしろ、少し不便さを感じたのが正直なところだ。とはいえそれは耐えられないほどではなかった。&lt;/p&gt;&#10;&lt;h2 id="特定のサイトが見られない謎"&gt;特定のサイトが見られない謎&#10;&lt;/h2&gt;&lt;p&gt;だったのだけれど、ついにちょっと耐えがたい事象が発生してしまった。僕は暗号通貨のメイン取引所としてBitbankを利用しているのだけれど、Bitbankのサイトを開くと何故かクラッシュしてしまうようになったのだ。しかもこれはM2 Pro Mac mini + Firefoxのみに起きることで、他の組み合わせでは起きない。IntelなMBP 2019では問題なかったりする。おまかんか？おまかんなのか？おまかんだろうが何だろうが、Bitbankのサイトが見られないのは不便だ。&lt;/p&gt;&#10;&lt;p&gt;そんなわけでBitbankのサイトを見るためにChromeを起動していたのだが、これは何とも奇妙なことだった。そのうちになおるかなぁと思っていたりなんだりしたのだが、なおる気配もなく日数だけが経過していく。また、それだけではなく色々と不安定だなぁと思うこともあって、タブが固まったり、一度は何故かタブの移動ができなくなることもあった。こういうちょっとしたものはブラウザの再起動でなおるけれど、なんとも面倒なことだ。&lt;/p&gt;&#10;&lt;h2 id="braveを使い始めた"&gt;Braveを使い始めた&#10;&lt;/h2&gt;&lt;p&gt;さすがにちょっとつらくなってきたので、以前ちょこっと使ったBraveの利用を検討している。前に脱Chromeを検討した時、Braveも当然考えたが、Chromiumベースなので脱Chromeの流れでは弱いよな、なんて思って没っていた。あと、広告のあるブログをやっている身としては、デフォルトで広告ブロッカーみたいなブラウザを使うのはちょっと気が引けていた。しかしまぁ、Firefoxがこれだとそうも言っていられない。Vivaldiは確か以前試した時に「使えんなー」という結論になったことだけ覚えているので。何故かは覚えていない……。&lt;/p&gt;&#10;&lt;p&gt;で、兎にも角にもBraveを使い始めたのだが、細かなところで使いやすいなぁと感じてしまった。タブをウィンドウから切り離してD&amp;amp;Dした時に、ドロップした位置にウィンドウが展開されるとか（Firefoxだとそうならない）、あと拡張機能がいちいちちょっとずつ使いやすいとか（Bitwardenで入力ボックスをアクティブにしたらドロップダウンで候補が表示される、Amazonの買い物でKeepaが自動で実行される、とか……）。特に拡張機能の使いやすさは何だろう、Firefoxの制約のためなのか、それともシェアが拡張機能制作元のリソースに反映されているのか……。&lt;/p&gt;&#10;&lt;h2 id="chromeはやっぱりすごいですわ"&gt;Chromeはやっぱりすごいですわ&#10;&lt;/h2&gt;&lt;p&gt;まぁとにかくぶっちゃけFirefoxより使いやすいよな、というのが偽らざる感想だった。で、これはBraveが凄いというよりChromeがすごいのでBraveもすごいと言うべきかなぁと、つまり、改めてGoogle Chromeすげぇなぁ、なんて思ってしまった。これはまぁ、宗教上の理由がなければChromeになってしまうのも残当である。&lt;/p&gt;&#10;&lt;p&gt;最近のGoogleに対しては色々と思うところがあって、それだから脱Googleの試みなんて始めたりもしているのだけれど、公平に見て、Googleのプロダクトには今なお天下一品のものがいくつかある。長い時間をかけて、MSとAppleのもつOSの優位性に負けずシェアを奪還していったGoogle Chromeはその一つだろう。だがそれ以上に、Chromiumがあり、全然Googleと関係ない人が、なんならアンチGoogleくらいのポリシーを掲げて新しく作り替えることさえ許していることがすごい。そういうGoogleだから、かつて皆の憧れでもあった。&lt;/p&gt;&#10;&lt;p&gt;まぁ、今はちょっと違うよなと感じるので、ChromeではなくBraveに行ってしまったんだが。BraveがなければFirefoxを使い続けるだろう程度には、なんとなく信用を失ってしまっている。これもまた、長い時間をかけてこういう心情になったので、そう簡単に変わることはないだろう。&lt;/p&gt;&#10;&lt;p&gt;ということで、当面はBraveをメインにして様子を見ようと思う。&lt;/p&gt;&#10;</description></item><item><title>趣味としての脱Googleその2: Google ChromeからのFirefox</title><link>https://hack-le.com/google2-google-chrome/</link><pubDate>Sun, 12 Nov 2023 04:19:38 +0900</pubDate><guid>https://hack-le.com/google2-google-chrome/</guid><description>&lt;p&gt;前回に引き続き、ぼちぼちと脱Googleを始めて行こうと思う。&lt;/p&gt;&#10;&lt;div class="blog-card-wrapper"&gt;&#10; &lt;a href="https://hack-le.com/google/" class="blog-card"&gt;&#10; &lt;div class="blog-card-content"&gt;&#10; &lt;div class="blog-card-label"&gt;&#10; &lt;svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"&gt;&lt;/path&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"&gt;&lt;/path&gt;&lt;/svg&gt;&#10; &lt;span&gt;あわせて読みたい&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-title"&gt;趣味としての脱Google 事始め&lt;/div&gt;&#10; &lt;div class="blog-card-url"&gt;/google/&lt;/div&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-thumbnail"&gt;&#10; &lt;img src="https://hack-le.com/images/uploads/2023/11/c79e4a0293727b98fc06be9ec3b56676.webp" alt="趣味としての脱Google 事始め" loading="lazy" /&gt;&#10; &lt;/div&gt;&#10; &lt;/a&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;p&gt;脱Googleの最初のターゲットは、WebブラウザGoogle Chromeである。&lt;/p&gt;&#10;&lt;p&gt;脱Googleというとまず検索エンジンが思い浮かぶかもしれない。しかし、検索エンジンよりも先に起動するものがあるだろう。Webブラウザだ。Webブラウザとそのデフォルト検索エンジンは密接な繋がりがある、そして今Webブラウザの覇権は、言わずと知れたGoogle Chrome。ChromeはIEの牙城を打ち崩すという誰にもできない偉業をやってのけた偉大なるWebブラウザであり、今なおもっとも使いやすいWebブラウザの一つと言えよう。ここでChromeから離れることが、最初のステップと思う。&lt;/p&gt;&#10;&lt;h2 id="個人的webブラウザの使用変遷"&gt;個人的Webブラウザの使用変遷&#10;&lt;/h2&gt;&lt;p&gt;僕はここ10年ばかりWebブラウザはずっとChromeを使っているのだが、定期的に乗り換えを画策してきた。&lt;/p&gt;&#10;&lt;div class="blog-card-wrapper"&gt;&#10; &lt;a href="https://hack-le.com/firefox/" class="blog-card"&gt;&#10; &lt;div class="blog-card-content"&gt;&#10; &lt;div class="blog-card-label"&gt;&#10; &lt;svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"&gt;&lt;/path&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"&gt;&lt;/path&gt;&lt;/svg&gt;&#10; &lt;span&gt;あわせて読みたい&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-title"&gt;10年ぶりにFirefoxを3ヶ月ほどメインにした所感&lt;/div&gt;&#10; &lt;div class="blog-card-url"&gt;/firefox/&lt;/div&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-thumbnail"&gt;&#10; &lt;img src="https://hack-le.com/images/uploads/2021/06/2021-06-19.jpg" alt="10年ぶりにFirefoxを3ヶ月ほどメインにした所感" loading="lazy" /&gt;&#10; &lt;/div&gt;&#10; &lt;/a&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;div class="blog-card-wrapper"&gt;&#10; &lt;a href="https://hack-le.com/45991995-2/" class="blog-card"&gt;&#10; &lt;div class="blog-card-content"&gt;&#10; &lt;div class="blog-card-label"&gt;&#10; &lt;svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;&lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"&gt;&lt;/path&gt;&lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"&gt;&lt;/path&gt;&lt;/svg&gt;&#10; &lt;span&gt;あわせて読みたい&lt;/span&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-title"&gt;Chrome → Safari 移行を試みて二ヶ月、結局Chromeに帰ってきてしまいました&lt;/div&gt;&#10; &lt;div class="blog-card-url"&gt;/45991995-2/&lt;/div&gt;&#10; &lt;/div&gt;&#10; &lt;div class="blog-card-thumbnail"&gt;&#10; &lt;img src="https://hack-le.com/images/uploads/2026/09/eyecatch_2745_1789453396.webp" alt="Chrome → Safari 移行を試みて二ヶ月、結局Chromeに帰ってきてしまいました" loading="lazy" /&gt;&#10; &lt;/div&gt;&#10; &lt;/a&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;p&gt;ここには書いていないが、その他Edgeはもちろん、BraveやVivaldiなども実はしれっと試している。が、結局いつもChromeに戻ってきてしまっている。&lt;/p&gt;&#10;&lt;p&gt;ちなみにChrome以前だが、FirefoxやSleipnirを使っていた（&lt;a class="link" href="https://www.fenrir-inc.com/jp/sleipnir/" target="_blank" rel="noopener"&#10; &gt;Sleipnirまだ生きてた……&lt;/a&gt;）。確かSleipnirを使っていた理由はマルチタブが便利だったからで、Firefoxを使っていた理由はLinuxを使っていたことや、拡張機能が便利だったからと思う。その後Chromeも入ってきて、Firefoxがいまいち鈍重だった時に爆速ということで話題になった。しかも拡張機能もある。最初の頃は安定性などの問題で中々広まらなかったが、アップデートを重ねるにつれて少し改良され、今や押しも押されもしないデファクトスタンダードに。&lt;/p&gt;&#10;&lt;p&gt;別に脱Googleを意図していたわけではないにせよ、過去何度も乗り換えを画策して結局出戻ってきたあたりに、今のChromeの強さを感じる。実際、一番使いやすいようには思う。まぁ、それでも乗り換えるんだけどさ。&lt;/p&gt;&#10;&lt;h2 id="俺たちのfirefox"&gt;俺たちのFirefox&#10;&lt;/h2&gt;&lt;p&gt;乗り換え先としては、Firefoxを選択した。&lt;/p&gt;&#10;&lt;p&gt;EdgeはBing AIが鬱陶しいし、そもそも脱Google先と言ってMicrosoftに行くのは鼻白むというか、堂々巡り感がある。まぁGoogleとMicrosoftは方向性が大分異なるので、理屈の上ではアリなんだが、あえて選ぶ選択肢ではないように思える。それに、今後Linuxを使おうという時もあるかもしれないし……いやさすがにないか……？&lt;/p&gt;&#10;&lt;p&gt;SafariはMac/iOS縛りなので除外。最近はWindowsもよく使うし、スマホがGoogleなAndroidなので（笑）。&lt;/p&gt;&#10;&lt;p&gt;Braveは多分もっともChromeから乗り換えやすいブラウザだが、それもそのはずで、Chromiumベースのブラウザとなっている。脱Googleを意識されてはいるし、使えるものは使えば良かろうなのだという精神は問題ないと思いつつも、まぁでも主旨を考えると、Chromeなものとは離れていればいるほど良い。&lt;/p&gt;&#10;&lt;p&gt;他にも言い出せば色々あるが、マイナーブラウザは気分転換に使う分には良いのだけれど、今の僕がメインブラウザとして楽しめるかというとちょっと厳しいように思える。&lt;/p&gt;&#10;&lt;p&gt;というわけで、自分的にはFirefox一択。モバイル版もあるし。&lt;/p&gt;&#10;&lt;h2 id="firefoxに移る上での課題"&gt;Firefoxに移る上での課題&#10;&lt;/h2&gt;&lt;p&gt;やはりシェアの問題はあって、主に第三者の対応的なところで引っかかる可能性はある。&lt;/p&gt;&#10;&lt;h3 id="拡張機能"&gt;拡張機能&#10;&lt;/h3&gt;&lt;p&gt;拡張機能はやはり障壁となって立ちはだかる。大手のプラグインはだいたいFirefoxにも対応してくれていて、Bitwardenとか必須レベルのやつはあるからいいんだが、マイナーになってくるとさすがにそういうわけにもいかない。おだやかTwitterくらいならばまぁいいかなと思うが、個人的につらいのはdraw.io for NotionのFirefox向け拡張機能がないことだ。&lt;/p&gt;&#10;&lt;p&gt;&lt;a class="link" href="https://chrome.google.com/webstore/detail/drawio-for-notion/plhaalebpkihaccllnkdaokdoeaokmle" target="_blank" rel="noopener"&#10; &gt;draw.io for Notion - Chrome ウェブストア&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;ないと絶対無理、というほどではないが、Notion専用ブラウザとしてChromeを生かす必要があるのではないかと思わされるほどだ。というかNotion側からもっと積極的に担いでください。描画機能とか絶対ユーザが欲しいものなんだし……。ああそういえば、Notionもけっこう依存度高いんだよなぁ……。まぁとはいえ、僕の場合毎日画像を描いているというほどではないので、これについてはギリギリ妥協はできるかなぁ、という感じ。&lt;/p&gt;&#10;&lt;h3 id="対応サイト"&gt;対応サイト&#10;&lt;/h3&gt;&lt;p&gt;一時期は増えていたFirefox対応サイトだが、シェアの低下によって再びサポートから外されたり後回しにされたり（&lt;a class="link" href="https://it.srad.jp/story/22/05/05/1529217/" target="_blank" rel="noopener"&#10; &gt;NHKプラス、5月23日以降のアップデートでFirefoxを動作対象外に | スラド IT&lt;/a&gt;）などの憂き目も見ている。Adobe Expressにアクセスしたら対応していなかったよ……。&lt;/p&gt;&#10;&lt;p&gt;&lt;img loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://hack-le.com/images/uploads/2023/11/8091287543debe6c06962323d88511df.png"&gt;&lt;/p&gt;&#10;&lt;p&gt;&lt;em&gt;2023年11月6日時点でAdobe ExpressにFirefoxでアクセスした時&lt;/em&gt;&lt;/p&gt;&#10;&lt;p&gt;まぁでも近日公開らしいから……。&lt;/p&gt;&#10;&lt;p&gt;よく使うWebサービスで対応していなかったら死活問題にもなりうる。こればかりはシェアを上げていくしかなかろうなのだ。まぁ、その時だけ対応ブラウザを起動すればいいといえば、いいのだが。&lt;/p&gt;&#10;&lt;h3 id="マルチユーザプロファイルの切り替えが面倒"&gt;マルチユーザ（プロファイルの切り替え）が面倒&#10;&lt;/h3&gt;&lt;p&gt;面倒というだけで、できないわけではないのだが、マルチユーザの扱いがGoogleよりやや面倒。&lt;code&gt;about:profiles&lt;/code&gt;をいじいじするというのはなんとも。Chromeはその点楽であった。また、メールなどの外部リンクを開いた時に、最後に開いていたウィンドウ（最後に使っていたユーザ）で開かれるというのも地味な便利ポイントであった。Chrome、地味に便利な機能を積み重ねてきているよなぁ。&lt;/p&gt;&#10;&lt;h2 id="firefoxもいいよ"&gt;Firefoxもいいよ&#10;&lt;/h2&gt;&lt;p&gt;ここまで乗り換えにあたって課題ばかり書いてきたけれど、Firefoxに乗り換えてよかったこともあるよ。&lt;/p&gt;&#10;&lt;p&gt;まずパフォーマンスが良い。これはかなり意外だったんだが、どうやらここ1年でだいぶ頑張っていたらしい（&lt;a class="link" href="https://gigazine.net/news/20231101-firefox-performance-improvement/" target="_blank" rel="noopener"&#10; &gt;Firefoxのベンチマークスコアは1年弱で50％向上し実際に1年で15％高速化している - GIGAZINE&lt;/a&gt;）。以前使った時よりも体感としてよかった。何も知らなかったけれど、「あれ、ずいぶん早いな」と感じたものな。Chromeよりはやいかも。&lt;/p&gt;&#10;&lt;p&gt;あとモバイル版がいいね。タブを下に置けるのは個人的にはかなり気に入っている。Firefox Syncでデスクトップとの同期もちゃんと出来るし。拡張機能周りでは「&lt;a class="link" href="https://forest.watch.impress.co.jp/docs/news/1540676.html" target="_blank" rel="noopener"&#10; &gt;Android版「Firefox」、ようやく拡張機能をフルサポートへ - 窓の杜&lt;/a&gt;」こういう動きもあるから期待したいね。これはむしろタブレットで期待したいところだけれど。&lt;/p&gt;&#10;&lt;h2 id="比較的乗り換えやすいと思う"&gt;比較的乗り換えやすい、と思う&#10;&lt;/h2&gt;&lt;p&gt;なんだかChromeを称賛する記事になってしまったような気もするが、しかし他のブラウザもかなり頑張ってくれているので、Webブラウザは脱Googleの試みの中では比較的乗り換えやすい類だと思う。今もFirefoxでこの記事を書いている。困ることはあまりない。まったくないことはない。もはやWeb標準になっているChromeのアンインストールはできないなぁ。Notion + draw.ioの拡張機能で絵を描くためだけに起動することもある。&lt;/p&gt;&#10;&lt;p&gt;まぁアンインストールならずとはいえ、デフォルトブラウザは他に変えたし、Chromeないと仕事にならないよ、という状態ではないので、まずはこれくらいでいいんじゃないかな。&lt;/p&gt;&#10;&lt;p&gt;/google3-google-ai/&#10;次の記事&lt;/p&gt;&#10;</description></item><item><title>NotionはWebブラウザのほうが便利</title><link>https://hack-le.com/notion-web/</link><pubDate>Wed, 27 Sep 2023 23:18:07 +0900</pubDate><guid>https://hack-le.com/notion-web/</guid><description>&lt;p&gt;最近あった良いこととして、会社でNotionを使えるようになったことがある。プライベートでも使っているツールを、チームとして使える経験をもらえたのは良いことだ。また幸いなことに、一定程度の影響力を行使できる立場にあるので、限定的ではあるけれど、Notionをフルに使って開発作業にあたることができている。&lt;/p&gt;&#10;&lt;h2 id="デスクトップアプリの出来はあまりよくない"&gt;デスクトップアプリの出来はあまりよくない&#10;&lt;/h2&gt;&lt;p&gt;Notionにはデスクトップアプリがある。昔からのPCユーザの感覚だと、専用アプリがあるならそちらのほうがいいに決まっているだろう、と思ってしまうのだが、Notionについては残念な結果だった。&lt;/p&gt;&#10;&lt;p&gt;UIなど、何から何までWebアプリ版と同じで、違うところと言えば複数タブが開けるところくらいだと思う。でもタブの入れ替えという基本的なことも出来ず、ブラウザのタブ機能よりハッキリ言って貧弱であるため、これが機能アップとは言いがたい。&lt;/p&gt;&#10;&lt;p&gt;あとはまぁスタンドアロンのアプリなので、Dockから多少呼び出すやすくなった。&lt;/p&gt;&#10;&lt;p&gt;以上がデスクトップアプリを使って良かったことのすべて。ネイティブのアプリならパフォーマンスなどに期待したいところだが、残念ながら別にはやくなる感じはない。&lt;/p&gt;&#10;&lt;h2 id="webアプリには拡張機能がある"&gt;Webアプリには拡張機能がある&#10;&lt;/h2&gt;&lt;p&gt;まぁそれでも多少なりともいいところがあるなら使えばいいんじゃないの？という考えもあるかもしれないが、残念ながら（？）Webアプリ版のほうにこそデスクトップ版にはない大きなメリットがある。それは拡張機能だ。&lt;/p&gt;&#10;&lt;p&gt;特にsvgを直接編集できるようになるDraw.ioのNotion向けChomeエクステンションはめちゃくちゃ強力だ。&lt;/p&gt;&#10;&lt;p&gt;&lt;a class="link" href="https://chrome.google.com/webstore/detail/drawio-for-notion/plhaalebpkihaccllnkdaokdoeaokmle/related?hl=ja" target="_blank" rel="noopener"&#10; &gt;https://chrome.google.com/webstore/detail/drawio-for-notion/plhaalebpkihaccllnkdaokdoeaokmle/related?hl=ja&lt;/a&gt;&lt;/p&gt;&#10;&lt;p&gt;これだけのためにWebブラウザ版使う価値がある。Notionの絵を描くにはMermaid記法しか使えないという大きな弱点を克服するものだ。プログラマはともかく、ビジネス層にMermaid記法で書いてくれとは言えないからねぇ。まぁそうでなくても、それなりに大きなアーキテクチャ図なんか、Mermaidで描いたらカオスだしね。カオスだった。&lt;/p&gt;&#10;&lt;p&gt;あと、個人的に最近使っているタイマーアプリTogglのエクステンションがNotionにも対応しているのがよかった。まだあんまり使いこなせてないけど。&lt;/p&gt;&#10;&lt;p&gt;ということで、拡張機能がある分Webアプリ版のほうがNotionについては明確に良い。&lt;/p&gt;&#10;&lt;h2 id="webアプリにネイティブの皮を被せても"&gt;Webアプリにネイティブの皮を被せても……&#10;&lt;/h2&gt;&lt;p&gt;まぁNotionに限らず、一時期からよく見かけるようになったWebアプリをそのまんまネイティブアプリにしたようなやつは、だいたいどれも拡張機能的な理由でWebアプリ版より劣る。アカウントの切り替えとかで多少の優位性があったりするが、それは拡張機能の不足を補えるものではない。開発費の関係でそうなってしまうんだろうなと思いつつ、だったらなくてええわ、というのがイチユーザとしての感触である。&lt;/p&gt;&#10;&lt;p&gt;むしろ、なまじっかWebアプリの出来がよいからこそ起きた悲劇なのかもしれない。EvernoteとかWebアプリ酷かったのに無理矢理UI統合して阿鼻叫喚だったからなぁ……今はもうよくなったのだろうか。&lt;/p&gt;&#10;&lt;p&gt;そんなこんなで、結局ブラウザ版のNotionを使っている。&lt;/p&gt;&#10;</description></item></channel></rss>