**Show HN:** *オレンジジュース ― HN をより読みやすくするための小さな UX 改善*

2026/04/09 3:08

**Show HN:** *オレンジジュース ― HN をより読みやすくするための小さな UX 改善*

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

(オレンジジュース)は、無料でオープンソース(GPLv3)のブラウザ拡張機能です。サイトのレイアウトを変更せずに便利な機能を追加することで、Hacker News を強化します。スレッド内で直接返信したり、コメントから引用を選択・コピーできたり、未読コメントをハイライト表示したり、キーボードナビゲーション、ダークモード、改善されたコードスタイルを提供し、ユーザープロフィールのホバープレビューを可能にします。また、「既読ストーリーを非表示」にする機能もあります。拡張機能には、好きな投稿を再配置できる専用フォロー配信が付いています。

今後のリリースでは、Mermaid ダイアグラムのレンダリングや追加のキーボードショートカット、継続的な改良(厳格な単体テスト、CI/CD パイプライン、および人間レビュー担当者による AI 補助開発)を予定しています。

インストール:自動更新を利用したい場合は Firefox Add‑ons ストアからインストールし、GitHub からリリースをダウンロードして Chrome の「Load unpacked」または Firefox の「Load Temporary Add‑on」で手動で読み込んでください。仮想拡張機能はブラウザ再起動時に削除されるため、永続的なインストールが推奨されます。

(オレンジジュース)は高速ナビゲーション、クリーンな閲覧体験、透明性のあるライセンスとコミュニティ貢献ルートを備えたオープンソースプロジェクトであり、ユーザーと広範なブラウザ拡張エコシステムの両方に利益をもたらします。

本文

オレンジジュースを導入する理由

毎日 Hacker News をご利用いただいているなら、オレンジジュースは既存のサイトを変更せずに読み取り・返信のやり方を向上させます。価値はシンプルです:余計なクリックが減り、未読状態が明確になり、時間のあるスレッドでは迅速に返信できます。

  • スレッド内返信 – スレッドから離れず
    インライン返信と引用選択機能でページを飛び回ることなく、その場で応答できます。
  • 未読トラッキング – 訪問間の文脈を保つ
    未読コメントのハイライトや「既読非表示」コントロールにより、新しいものとすでに確認済みのものが一目で分かります。
  • お気に入り – 大切な投稿を保存
    キーボード操作でストーリーやコメントをお気に入り登録し、後から簡単に再検索できます。
  • フォロー機能 – スレッドだけではなく人を追跡
    HN ユーザーをフォローし、統合されたアクティビティフィードを開き、読みやすい順序で表示します。
  • キーボードフロー – マウスなしで高速移動
    キーボードナビゲーションとショートカットでストーリーの閲覧・スレッド起動・操作が滑らかに行えます。
  • 可読性 – 長いスレッドを分かりやすく
    ダークモード、改善されたコードスタイリング、クリーンなコメント構造で、深くて技術的なスレッドでも負担が減ります。

今すぐインストール


機能スクリーンショット

以下は機能の完全リストではありませんが、現在積極的に開発・提供しているものを示しています。このサブセットだけでもオレンジジュース導入の強力な根拠になります。

  • インライン返信+引用選択 – コメントスレッド内で直接返信し、選択したテキストをワンクリックで引用。
  • 未読コメントハイライト – 前回訪問以降に変更された箇所をすぐに発見。
  • ユーザー情報ホバー – ユーザー名にカーソルを合わせるだけで、プロフィールと文脈をスレッドから離れずにプレビュー。
  • フォローフィード – HN 上のどこからでもユーザーをフォローし、その最近のコメント・投稿を専用フィードで閲覧。
    • フォローボタンは全ユーザー名横に表示。
    /following
    ページは通常の HN レイアウトを保ち、別UIを発明しない。
    • ローカルキャッシュでページ高速化、必要に応じて個別リフレッシュコントロール。
  • 既読ストーリー非表示 – 開いたアイテムをクリアし、新しいストーリーに集中。
  • キーボードナビゲーション – キーボードショートカットでスレッド・コメントを高速移動、マウス操作を減らす。
  • Mermaid ダイアグラムレンダリング – Mermaid コードブロックをスレッド内で直接読みやすい図に変換。

その他にも多数の機能がありますが、ここでは割愛します。


安全・オープン・エンジニアリング

オレンジジュースはデフォルトで信頼性を重視して設計されています:透明なコード、明確なライセンス、厳格な開発プロセス。

  • 完全オープンソース – GPLv3 ライセンスの下で全ソースが公開されており、誰でも動作確認・改善提案が可能。
  • AI支援のみ、AIに任せない – AI は実装・レビューを高速化するペアプログラマーとして利用し、最終設計と意思決定は人間が行います。
  • テスト駆動で開発 – 単体テスト網羅、品質チェック、CI/CD で自動化。プロジェクトは「雰囲気」ではなく実証済みコードで構築されています。

インストール方法

Firefox

Firefox Add‑ons にて永続的かつ自動更新インストールが可能です。
Firefox 用インストール

また、GitHub から手動で導入することもできます。

GitHub リリースから

ブラウザにロードしてください:

  • Chrome

    1. Chrome を開き
      chrome://extensions/
      にアクセス。
    2. 右上の「デベロッパーモード」を有効化。
    3. 「未圧縮フォルダーを読み込む」をクリックし、解凍した
      .zip
      フォルダーを選択。
    4. 拡張機能がアクティブになり、Hacker News を閲覧すれば動作確認できます。
  • Firefox

    1. Firefox を開き
      about:debugging#/runtime/this-firefox
      にアクセス。
    2. 「一時的なアドオンを読み込む」をクリック。
    3. 解凍したフォルダーから
      manifest.json
      ファイルを選択。
    4. 拡張機能が有効になり、Hacker News を閲覧すれば動作確認できます。

注意: 一時的拡張はブラウザ再起動で削除されます。永続的に使用したい場合は Firefox Add‑ons をご利用ください。

同じ日のほかのニュース

一覧に戻る →

2026/04/09 0:40

私、macOS XをNintendo Wiiにポート(移植)いたしました。

## Japanese Translation: --- ## 改良された要約 Mac OS X 10.0(Cheetah)は、Nintendo Wii 上でネイティブに動作するようにポートされ、コンソールをキーボード/マウス入力と GUI サポート付きの完全機能型デスクトップへ変貌させました。プロジェクトのコアは、*ppcskel* をベースに最初から書き直されたカスタムブートローダーです。このブートローダーは、Wii の PowerPC 750CL CPU を起動し、メモリレイアウトを設定し、最小限のデバイスツリー(root → cpus → PowerPC,750; memory)を作成します。SD カードから XNU カーネルをロードし、実行中にカーネルバイナリをパッチ(MEM1/MEM2 用の BAT 設定と USB Gecko へのコンソール出力)し、制御を XNU に渡します。 ブートローダーが提供する主要ドライバーは次の通りです: - **SD‑カードドライバー**:Starlet MINI IPC コマンド(IPC_SDMMC_SIZE, READ, WRITE)を介して IOBlockStorageDevice を実装し、XNU が SD カードからルートファイルシステムをマウントできるようにします。 - **フレームバッファドライバー**:0x01700000 に RGB フレームバッファ(640×480 @ 16 bpp)を提供し、Wii のアナログテレビ出力用に YUV へ変換して Mac OS X GUI を実現します。 - **USB サポート**:PCI デバイスのニブ(NintendoWiiHollywoodPCIDevice)を作成し、AppleUSBOHCI をパッチして受け入れさせ、OHCI ドライバーからバイトスワップ処理を除去することでリバースレトルエンディアンハードウェアに対応し、USB キーボード/マウス機能をフル実装します。 ブートローダーは Apple Partition Map を解析し、起動可能なパーティションを一覧表示し、/chosen/memory‑map ノード経由でカーネル拡張を直接メモリにロードできるようにするため、改変されていない Mac OS X インストーラーパーティションからのインストールも可能です。必要なカーネル変更は最小限(BAT 設定、“hollywood” I/O ベース取得、フレームバッファキャッシュ整合性修正)で済み、その他すべてのドライバーはブートローダーが提供します。 この成果は、歴史的にサポートされていなかったプラットフォーム――Nintendo Wii――でも Mac OS X Cheetah をエンドツーエンドで動作させることを示し、ホビイストに低コストのレトロコンソールとして機能するデスクトップコンピュータを提供します。

2026/04/09 4:23

**ソフトウェア開発者のためのUSB:ユーザースペース USB ドライバー作成入門**

## Japanese Translation: ``` USB デバイスの操作は、libusb を使用してユーザー空間だけで完全に処理できるため、カーネルレベルのドライバ開発は不要です。 例として、Fastboot モード(VID 18d1 / PID 4ee0)にある Android フォンを挙げます。接続すると `lsusb` は「Google Inc. Nexus/Pixel Device (fastboot)」と表示し、カーネルドライバは付いていません。また、ベンダー固有クラスインターフェースが 2 つのバルクエンドポイントを公開します:コマンド送信用 OUT 0x02 とレスポンス受信用 IN 0x81。 libusb のホットプラグコールバックはこのデバイスの到着を検出し、Fastboot コマンドを自動的に発行できます。典型的な手順は次のとおりです: 1. `libusb_control_transfer` を使用して GET_STATUS リクエストを送信します。2 バイトの応答はデバイスがセルフパワーであり、リモートウェイクアップをサポートしないことを示します。 2. GET_DESCRIPTOR リクエストを送信して完全なデバイスディスクリプタ(ベンダー/プロダクト ID、USB バージョン等)を取得します。 3. バルク OUT 0x02 を介して Fastboot コマンドを発行します(例:「getvar:version」を 64 バイトにパディング)。 デバイスは IN 0x81 で 4 文字のステータス(「OKAY」または「FAIL」)と任意のペイロードを返します。 同じユーザー空間アプローチは、バルク転送に依存する他の USB プロトコルにも適用できます。主な作業はカーネルコードを書く代わりにプロトコルロジックを実装することです。これにより OEM 向けドライバ開発が簡素化され、ブートローダーのテストが迅速化し、カーネルモジュールなしでカスタム USB デバイスの高速プロトタイピングやデバッグが可能になり、組込み開発者と広範な USB エコシステムに恩恵をもたらします。 ```

2026/04/08 17:53

**コードを読む前に実行しておくべき一般的な Git コマンド** - `git fetch --all` *リモートの全ブランチとタグを取得します。* - `git status` *現在のブランチと未コミットの変更点を確認します。* - `git checkout <branch>` *対象となる機能やバグ修正用ブランチに切り替えます。* - `git pull --rebase` *ローカルブランチを最新の upstream コミットで更新します。* - `git log --oneline --graph --decorate -5` *簡潔なコミット履歴を表示し、文脈を把握します。* - `git diff origin/<branch>..HEAD` *まだプッシュしていない変更点を確認します。* - `git rev-parse HEAD` *現在のコミットハッシュを取得(参照に便利)。* - `git tag --list` *利用可能なタグ一覧を表示し、バージョン管理に役立てます。* - `git show <commit>` *特定のコミットの詳細と差分を調べます。* これらのコマンドで、コードを掘り下げる前にリポジトリの状態を素早く把握できます。

## 日本語訳: 以下の文章を日本語に翻訳してください。 ### 修正版要約 この記事は、ソースファイルを検査する前にコードベースの簡易監査が隠れた健康リスクを明らかにできる方法を示しています。これは5つの簡潔な Git コマンドを実行することで達成されます。 1. `git log --format=format: --name-only --since="1 year ago" | sort | uniq -c | sort -nr | head -20` 過去 1 年間で最も変更頻度が高い上位 20 ファイルを一覧表示し、潜在的な「ドラッグ」スポット(高い変更率)をフラグ付けします。 2. `git shortlog -sn --no-merges` コミット数で貢献者をランク付けします。単一人物が 70 % 超を占める場合はバスファクターが低く、過去 6 ヶ月にその貢献者がいない場合は危機的状況を示唆します。 3. `git log -i -E --grep="fix|bug|broken" --name-only --format='' | sort | uniq -c | sort -nr | head -20` バグ関連コミットが最も多いファイルを特定し、変更率データと照合して最高リスクコードをピンポイントします。 4. `git log --format='%ad' --date=format:'%Y-%m' | sort | uniq -c` 月ごとのコミット数を表示し、活動の加速または減退(例:半月間のドロップ)が重要人物の離脱を示す可能性があります。 5. `git log --oneline --since="1 year ago" | grep -iE 'revert|hotfix|emergency|rollback'` リバートとホットフィックスの数をカウントします。頻繁なリバートはデプロイ/テストが不安定であることを示し、ゼロの場合は安定性またはコミットメッセージ不足を意味する可能性があります。 これらの指標(変更ホットスポット、バスファクター問題、バグクラスタ、プロジェクトモーメンタム、火災対策頻度)は、コード複雑度測定だけよりも欠陥予測精度が高いと示されています(Microsoft Research 2005)。記事はスクワッシュマージワークフローが著者データを歪めることを警告しています。最初の監査に1時間を費やした後、筆者は特定されたリスクスポットに対して週単位で詳細調査を計画しています。関連研究としてはエンジニアリングチーム速度、Vim 使用、レガシー Rails 監査、Rails `default_scope` が引用されています。この手法は開発者に迅速なコミット履歴ベースの診断を提供し、高リスクファイルへの詳細コードレビューを集中させることでバグ削減、チームレジリエンス、およびリリース信頼性の向上を実現します。