新規ファイルエクスプローラー – 最近の作業をナビゲートするための VS Code 拡張機能

2026/02/23 3:20

新規ファイルエクスプローラー – 最近の作業をナビゲートするための VS Code 拡張機能

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

要約

Japanese Translation:

Fresh File Explorer は、組み込みのファイルエクスプローラーと完全な Git ツール間に位置する軽量 VS Code 拡張機能です。

• 時間を重視したファイルリストを表示し、ユーザーが設定できるウィンドウ(例:直近30分)内で変更されたまたはコミット待ちのファイルを一覧化します。

• ビューではディレクトリ構造に従ってファイルを表示し、自動的に指定した深さまで展開します。削除済み項目には「発掘」または「復活」が可能な明確なインジケータが付与されます。

ヒートマップは各ファイルを編集の新旧で色分けし、このビジュアル手掛かりは通常のファイルエクスプローラーでも利用できます。

• ユーザーは重要なファイル、メモ、削除済み項目をピン留めしてワークスペース間で永続化されたトップセクションに配置できます。

• 拡張機能は同期状態通知(リモートやベースブランチと比べて遅れている/進んでいる)を提供し、各通知ごとに無効化が可能です。

フィルタにより著者またはコミットで隠すことができ、時間ウィンドウが変わるとリセットされます。また、ファイルごとの最新コミットのみを追跡します。

• 複数のグルーピングモード(ファイル構造・著者・コミットハッシュ・月相・惑星逆行)が利用可能で、高度な blame シナリオに便利です。

クイックオープンピッカー(

Fresh Files: Quick Open
)は Ctrl+P スタイルの検索を提供し、現在の時間ウィンドウ・著者・コミットフィルタを尊重します。

• コンテキストメニューではファイルや差分のオープン、エクスプローラー/ソースコントロールで表示、保留中変更の破棄、削除済みファイルの復活などの操作が可能です。

マルチリポジトリ対応はネストされたリポジトリ、多階層ワークスペース、worktree をサポートし、サブモジュールを表示します(ただしその内容は表示されません)。

• 追加の検索ツールとして、Diff Search、Line/Function History、File History、Fresh Files 内での検索、および Found Files 内での検索があります。

• 設定オプションは

freshfileexplorer
名前空間にあり、この拡張機能は GitLens のフォーカスされた代替として位置づけられ、完全な Git 管理ツールではありません。

Fresh File Explorer は最近の変更について簡潔かつ文脈を持った情報を提供することで、大規模リポジトリでファイル検索に費やす時間を削減し、VS Code を整理された状態に保ちます。

本文

Fresh File Explorer(フレッシュファイルエクスプローラ)

保留中の作業と Git の履歴に基づいて、最近の変更点を簡単にナビゲートできます。


インストール

  • Marketplace | OpenVSX

目次

  1. 機能
    1.1 Fresh File Explorer
    1.2 タイムウィンドウ選択
    1.3 スマートファイルツリー
    1.4 削除済みファイルサポート
    1.5 ヒートマップカラーリング
    1.6 ピン留めセクション
    1.7 同期ステータス通知
    1.8 フィルタリング
    1.9 グルーピングモード
    1.10 クイックオープン
    1.11 コンテキストメニューアクション
    1.12 マルチリポジトリサポート
  2. 検索ツール
    2.1 Diff Search
    2.2 行・関数履歴
    2.3 ファイル履歴
    2.4 Fresh Files 内検索
    2.5 Found Files 内検索
    2.6 エディタアクション
  3. 使用例
  4. 拡張機能設定
  5. コントリビューション
  6. GitLens との比較
  7. テストモニアル

機能

Fresh File Explorer

  • タイムウィンドウ選択 – 保留中(未コミット)変更か、設定可能な期間内に変更されたファイルを切り替えて表示します。
    保留中の変更モード は未コミット状態を示し、Source Control ビューとほぼ同じ情報を提供します。

スマートファイルツリー

  • ディレクトリ構造でファイルをグループ化し、フォルダーごとのファイル数も表示。
  • 設定可能な深さまで自動展開します。

削除済みファイルサポート

  • 削除されたファイルはツリーに表示され、明確に区別されます。
    Exhume(復活):削除されたファイルの内容を読み取り専用一時ファイルとして開きます(デフォルトアクション)。
    Resurrect(蘇生):復元したファイルを元の場所へ戻します。

ヒートマップカラーリング

  • ファイルごとに最近編集された順序で色分けできます。明るいほど新しいことを示します。
    Fresh Files ビューで切り替え可能で、File Explorer にも適用されます。

ピン留めセクション

ツリーの最上部に「ピン留めアイテム」セクションがあり、Fresh File Explorer が表示している内容とは独立してファイルを常時手元に置くことができます。

  • ドラッグ&ドロップまたは右クリックメニューでピン留め。
  • ワークスペースごとに保存。

  • 注意したい非フレッシュファイル(図や README 等)をピン留め。
  • 削除済みファイルをピン留め。
  • エディタ内検索結果(ファイルとして保存必須)をピン留め。
  • 短いメモを書き、TODO リストとして利用し、並べ替えや完了マークも可能。
  • API キー等の機密情報をノートとしてピン留め。

同期ステータス通知

ツリー上部に表示されます:

  • リモートとの差分(push/pull が必要)
  • ベースブランチとの差分(merge が必要)

両方とも個別に無効化できます。

フィルタリング

  • 作者でフィルタ:特定の作者によるファイルを非表示。
  • コミットでフィルタ:特定のコミットによるファイルを非表示。
    Clear filters でリセット。
  • フィルタは一時的で、タイムウィンドウ変更時に自動でクリアされます。

注意:拡張機能は各ファイルについて最新のコミットのみを追跡します。フィルタ対象の作者と非対象の作者が同じ時間枠内で変更した場合、そのファイル全体が隠れます(最新コミットがフィルタされるため)。深い履歴分析には GitLens などを併用してください。

グルーピングモード

標準のフォルダ階層以外に、以下のようにファイルを整理できます:

  • File Structure – 従来のフォルダー階層。
  • Author – 最終変更者でグループ化。
  • Commit Hash – コミットごとに1つのグループ。
  • Moon Phase (git blame moon) – 新月時のコミット分布が不均一になることで、コードベース内の「狼男」を検出。
  • Planetary Retrograde (git blame universe) – プルートを含む。

注意:これは天文学(正確な科学)であり、占星術ではありません。射手座の変更がマージコンフリクトを引き起こすかどうかは別途確認してください。

クイックオープン

「Fresh Files: Quick Open」を使用すると、現在表示中の Fresh File Explorer ビューからファイルを素早く選択できます。

  • ファイル名またはパスでフィルタし、選択して開く。
  • 現在のタイムウィンドウ・作者・コミットフィルタに準拠。
  • 特殊なフィルタオプションでリストをさらに絞り込み。
  • 完全テキスト検索を実行するオプションもあります。

注意:クイックオープンは削除済みファイルを除外します。削除済みファイルにはツリーからアクセスしてください。

コンテキストメニューアクション

  • Open / Open to Side – ファイルまたは差分を開きます(既に開いている場合はフォーカス)。
  • Reveal in Explorer / Source Control
  • Discard Changes(保留中ファイル用)
  • Resurrect(削除済みファイル用)

マルチリポジトリサポート

次の環境で動作します:

  • サブフォルダーに複数リポジトリを含むフォルダー
  • マルチルートワークスペース
  • Worktree

Submodules(サブモジュール)

  • ツリーには表示されますが、その内容は表示されません。
  • 削除されたサブモジュールは確認できますが、復活はできません。

検索ツール

Diff Search

x はいつ追加・削除されたか?」
すべてのコミットに対する Git diff 履歴(pickaxe)を検索。エディタ右クリックメニューの「Search Diffs for Selection」からアクセスできます。結果はファイルとコミットでグループ化されたツリー表示され、各マッチをクリックすると該当箇所へジャンプします。

行 / 関数履歴

この関数またはコードブロックの完全な履歴を確認。

  • Git log -L を使用し、特定行範囲や関数名で検索。
    • 単一カーソル/単一行 → 関数名として扱う。
    • 複数行選択 → 行範囲として扱う。
      エディタ右クリックメニューの「Line/Function History」からアクセス。
      A/B 比較:任意2つのコミットを A と B に設定し、「Compare」をクリックするとそのファイルの差分が表示されます。

ファイル履歴

このファイル全体の履歴(リネーム追跡付き)を確認。Fresh File Explorer ツリーまたはエディタコンテキストメニューからアクセスできます。

Fresh Files 内検索

x は現在の作業でどこにある?」
ディスク上のファイル内容を対象とし、Fresh Files で表示中のファイルだけをスコープ。Fresh Files ツールバーの検索アイコンをクリックすると VS Code の検索ビューが開き、「files to include」に現在表示中の全ファイルが事前入力されます。フィルタやタイムウィンドウに準拠します。

Found Files 内検索

yx を含むすべてのファイルで探したい」
検索エディタからのみ実行可能。必要なら検索ビューを検索エディタとして開くこともできます。


検索エディタアクション

  • Search in found files – 見つけたファイルに限定して新しい検索を開始。
  • Open all found files – すべてのファイルをバックグラウンドタブとして開く。
  • Copy paths – 結果から絶対パスまたは相対パスを一括コピー。

使用例

  1. 「リポジトリをクローンしたばかりで何から始めればいいかわからない」
    Fresh File Explorer が直近30日以内に変更されたすべてのファイルをツリー表示し、即座にビジュアル概要を提供します。

  2. 「このファイルは以前あったと確信している」
    削除済みファイルが元の場所で確認できるので、履歴検索を手動で行う必要はありません。

  3. 「誤っていくつかのファイルを削除した」
    右クリック → 「Resurrect」で複数ファイルを一度に復活できます。

  4. 「コミットしたが何をしていたか忘れた」
    タイムウィンドウを「Last 7 days」に設定すると、コミット済みのファイルもディレクトリ別に表示されます。

  5. 「誰かがコードベース全体を再フォーマットした」
    フォーマッター担当者や該当コミットをフィルタで除外すれば、視覚的に即座に影響範囲を把握できます。

  6. 「TODO リストアプリが欲しい」
    ピン留めノート機能を利用して簡易 TODO リストとして活用可能です。


拡張機能設定

freshfileexplorer.
以下にすべての設定項目があります。VS Code の設定エディタから調整してください。


コントリビューション

バグが発生した場合や高速化アイデアがある場合は issue を作成してください。特に公開リポジトリで再現可能な問題だと非常に助かります。


GitLens との比較

Fresh File Explorer は GitLens の代替ではありません。現在必要としているものをすぐに見つけるための、より焦点を絞ったツールです。コミット作成やブランチ管理、スタッシュ・タグ等は行いません。

  • Fresh File Explorer を使う場面

    • 単一ビューで済ませたいとき。
  • GitLens を使う場面

    • 25種類のビューが必要なとき(その中には Fresh File Explorer と重複するものも含む)。

テストモニアル

この拡張機能は VS Code エクステンションとして平均を上回る品質です。
(Linus Torvalds を装ったチャットボットによって作成)

同じ日のほかのニュース

一覧に戻る →

2026/02/23 4:12

私は「Timeframe」、すなわち私たち家族用の電子ペーパー・ダッシュボードを構築しました。

## Japanese Translation: 著者は長期プロトタイプを **Timeframe** に変え、カレンダー・天気・スマートホームデータを電子ペーパー画面に表示する常時稼働型ファミリーダッシュボードを作り上げました。 初期テストでは、自然光下で読みづらい Magic Mirror LCD と 30 分ごとしか更新されないジャイルブレークされた Kindle e‑ink ディスプレイから始めました。2019 年に著者は Visionect の電子ペーパー パネル(6″、10″、13″、32″)へ切り替え、単一充電で 10 分ごとに更新可能となりました。これらは Raspberry Pi 上の Ruby on Rails と IMGKit を用いて PNG を生成することで制御されました。13″ パネルの価格が 1,000 ドル、さらにデバイスあたり月額 7 ドルの新料金がかかったため、システムは高価になってしまいました。 2021 年末にマシャル火災で著者の家を失い、再建にはより信頼性の高いソリューションが必要だったため、Boox の 25.3″ Mira Pro 電子ペーパー画面(HDMI 経由でリアルタイム更新)と Mac Mini プロトタイプを採用しました。現在のディスプレイには、時計、Sonos 曲情報(node‑sonos‑http‑api を介して取得)、Dark Sky の翌時間降水予報などのリアルタイムデータが表示されます。 バックエンドは Rails/Redis から Home Assistant (HA) に書き換えられました。HA は Google カレンダー、Apple Weather、Sonos などを直接取得し、データベース層を排除します。著者は Home Assistant のテンプレートセンサー(例:食洗機のリマインダー)を追加し、コード再配備なしでアラートをトリガーできるようにしました。これにより電子ペーパー画面上で自動化されたステータスアラートが実現しました。 現在のディスプレイには左上に「ハウスヘルス」インジケーターがあり、ドアの開閉状態・ロック解除状況・洗濯完了など、必要な情報のみを表示して画面を常に確認する手間を省きます。 残っている課題は、保守不要で配備可能な組み込みハードウェアの強化、すべてのデータソースを HA に完全統合すること、および 25″ Boox の約 2,000 ドルというコストと複雑性を削減することです。著者は Timeframe を継続的に開発しつつ、潜在顧客からの関心を得て、Home Assistant アプリとして市場へ投入することを目指しています。同時に日常業務のソフトウェア作業と並行して個人的な情熱プロジェクトとして進めています。

2026/02/23 7:42

**FreeBSD 15 の新しいブリッジ機能** FreeBSD 15 では、パフォーマンスの向上・設定の簡易化・安定性の強化を実現したスリム化されたブリッジ実装が導入されました。 --- ### 主な改善点 - **低レイテンシ** を実現するために最適化されたパケット処理経路。 - ブリッジインターフェース上で直接 VLAN タギングをサポート。 - 帯域幅やキュー制限のチューニング用 `sysctl` 設定が簡素化。 - ブリッジ接続セグメント間で IPv6 フォワーディングを組み込みでサポート。 --- ### インストールと設定手順 1. **ブリッジモジュールの読み込み** ```sh kldload bridge ``` 2. **ブリッジインターフェース作成**(例:`bridge0`) ```sh ifconfig bridge0 create ``` 3. **メンバーインターフェースの追加** (`em0`, `em1`, …) ```sh ifconfig bridge0 addm em0 addm em1 up ``` 4. **IP アドレスを割り当てる(管理用に任意)** ```sh ifconfig bridge0 inet 192.168.10.1/24 ``` --- ### よくある利用ケース - L2 仮想化(例:KVM ゲストが同一ネットワークセグメントを共有) - 複数のアップリンクで冗長構成 - 追加ルーティング不要で VLAN 分割をシンプルに実現 --- ### パフォーマンス向上のヒント - NIC がサポートしている場合は `bridge_hwfilter` を有効化し、ハードウェアアクセラレーテッドフィルタリングを利用。 - トラフィックプロファイルに合わせて `bridge_maxframe` と `bridge_mtu` の `sysctl` 値を調整。 - `netstat -e` や `sockstat -4` でブリッジ統計情報をモニタリング。 --- ### トラブルシューティング - ブリッジ上のインターフェースに IP アドレス競合がないか確認。 - カーネルログ(`dmesg`)で「bridge」に関するエラーを探す。 - `ifconfig bridge0` でメンバー接続と状態を確認。 --- これらの手順を踏むことで、FreeBSD 15 の新ブリッジ機能を活用し、高性能かつ信頼性の高いネットワーク環境を構築できます。

## Japanese Translation: FreeBSD 15は、従来のVLANごとのブリッジモデルを廃止し、`vlanfilter` フラグで複数のタグ付きまたはタグなし VLAN をホストできる単一の多機能ブリッジに置き換えました。新設計では個別のブリッジが不要になり設定が簡素化されます。sysctl `net.link.bridge.member_ifaddrs` は、ブリッジメンバー上のレイヤー3アドレスをソフト非推奨にし(FreeBSD 16.0‑RELEASEで削除予定)、VLAN フィルタリングが有効でない場合はタグ付きメンバーを追加すると ``` ifconfig: BRDGSIFVLANSET ix1: Invalid argument (extended error VLAN filtering not enabled) ``` というエラーになります。 最小構成例: ``` ifconfig_ix1="up -tso4 -tso6 …" cloned_interfaces="bridge0" ifconfig_bridge0="vlanfilter addm ix1 tagged 2,3,128" ``` VNET ジャイルは `jib` スクリプト(またはカスタム `/scripts/vnetif`)を使い、epair デバイスを作成して正しい VLAN タグでブリッジに接続できます。カーネルは現在 epair 用の安定した MAC 生成 (`net.link.epair.ether_gen_addr`) を提供しているため、jib スクリプトの MAC 安定化ロジックは不要です。例として `/scripts/vnetif` は epair を作成し、IPv6 link‑local を無効にし、ポート名を付け、一方の側をタグなし VLAN 2 としてブリッジへ追加します。 Bhyve VM では手動でタップインタフェース(例: `tap133`)が事前に作成され、ブリッジに追加されます (`ifconfig bridge0 addm tap133 untagged 2`)。VM 設定はこれらのタップを参照しますが、新しいブリッジ/VLAN モデルへのネイティブサポートはありません。FreeBSD 15 の変更後は `network0_mac` フィールドが無効になるため、タップインタフェース作成時に安定した MAC アドレスを設定する必要があります。 総じて、新しいブリッジ+VLAN デザインは従来の VLAN ごとのアプローチよりも設定が簡単になり、カスタムスクリプトへの依存が減少し、ギガビット速度でのパフォーマンスが向上します(10 Gbps でも潜在的にメリットがあります)。残る懸念点としては、ルーター・オン・ア・ストック構成との互換性があります。

2026/02/23 3:56

「Loopsは、フェデレーテッド(分散型)でオープンソースなTikTokです。」

## Japanese Translation: > Loopsは、現在オープンベータ段階にある企業支配を拒否するオープンソースの分散型短編動画プラットフォームです。分散化されたアーキテクチャにより、ユーザーは単一の企業エコシステムに縛られることなく、独立したサーバ間でコンテンツを共有できます。Fediverseモデルに従い、Loopsはクリエイターとコミュニティに作品とオーディエンスデータの所有権を与えることで力を付与します。このプラットフォームはクリエイターに優しく、広告は一切含まれていません。持続可能性はユーザーによるスポンサーシップから来ており、すべての寄付は開発・インフラストラクチャー・コミュニティイニシアチブへと向けられ、Loopsが独立した状態を保つようにしています。