<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>生産性向上 - CayTech Lab</title>
	<atom:link href="https://caymezon.com/tag/%e7%94%9f%e7%94%a3%e6%80%a7%e5%90%91%e4%b8%8a/feed/" rel="self" type="application/rss+xml" />
	<link>https://caymezon.com</link>
	<description></description>
	<lastBuildDate>Sun, 14 Jun 2026 05:06:32 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.1</generator>

<image>
	<url>https://caymezon.com/wp-content/uploads/2026/01/cropped-CayTechLab-32x32.jpg</url>
	<title>生産性向上 - CayTech Lab</title>
	<link>https://caymezon.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<atom:link rel='hub' href='https://caymezon.com/?pushpress=hub'/>
	<item>
		<title>【親指型 vs 指置き型】トラックボールはどっちを選ぶ？タイプ別完全比較ガイド</title>
		<link>https://caymezon.com/trackball-type-comparison-guide/</link>
					<comments>https://caymezon.com/trackball-type-comparison-guide/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sun, 14 Jun 2026 05:06:32 +0000</pubDate>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Tech Tips]]></category>
		<category><![CDATA[PC周辺機器]]></category>
		<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[作業効率化]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20450</guid>

					<description><![CDATA[<p>そうなんです。   「トラックボール 買う」で調べると、 親指型と指置き型という2種類があって何が違うのか分からない。   私も最初、全く同じ状態でした。   「どっちでもいっか」とテキトーに選んで後悔したくない。 でも [&#8230;]</p>
<p>The post <a href="https://caymezon.com/trackball-type-comparison-guide/">【親指型 vs 指置き型】トラックボールはどっちを選ぶ？タイプ別完全比較ガイド</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>そうなんです。</p>
<p> </p>
<p>「トラックボール 買う」で調べると、</p>
<p><strong>親指型と指置き型という2種類があって何が違うのか分からない。</strong></p>
<p> </p>
<p>私も最初、全く同じ状態でした。</p>
<p> </p>
<p>「どっちでもいっか」とテキトーに選んで後悔したくない。</p>
<p>でも違いを説明している記事を読んでも、難しすぎてよくわからない。</p>
<p> </p>
<p>今回は、両方使い込んだ私が</p>
<p><strong>「あなたにはどっちが合うか」</strong></p>
<p>を徹底的に解説します。</p>
<p> </p>
<hr>

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">そもそも2種類のタイプとは？</a><ol><li><a href="#toc2" tabindex="0">親指型（Thumb Type）</a></li><li><a href="#toc3" tabindex="0">指置き型（Index/Middle Finger Type）</a></li></ol></li><li><a href="#toc4" tabindex="0">5つの比較軸で徹底検証</a><ol><li><a href="#toc5" tabindex="0">📊 比較まとめ表</a></li><li><a href="#toc6" tabindex="0">①精度・精密操作のしやすさ</a></li><li><a href="#toc7" tabindex="0">②疲れにくさ・腱鞘炎対策</a></li><li><a href="#toc8" tabindex="0">③マウスからの移行しやすさ</a></li><li><a href="#toc9" tabindex="0">④価格帯</a></li><li><a href="#toc10" tabindex="0">⑤持ち運びやすさ</a></li></ol></li><li><a href="#toc11" tabindex="0">結論：あなたはどっちを選ぶべき？</a><ol><li><a href="#toc12" tabindex="0">ユーザー別おすすめフロー</a></li><li><a href="#toc13" tabindex="0">一言まとめ</a></li></ol></li><li><a href="#toc14" tabindex="0">親指型おすすめ商品</a><ol><li><a href="#toc15" tabindex="0">Logicool ERGO M575S【迷ったらこれ一択】</a></li><li><a href="#toc16" tabindex="0">Logicool ERGO M575SP【静音版・最新モデル】</a></li><li><a href="#toc17" tabindex="0">Logicool MX ERGO S【親指型の最高峰】</a></li><li><a href="#toc18" tabindex="0">ELECOM EX-G M-XT3DRBK【日本メーカー・コスパ重視】</a></li></ol></li><li><a href="#toc19" tabindex="0">指置き型おすすめ商品</a><ol><li><a href="#toc20" tabindex="0">ELECOM HUGE M-HT1DRBK【指置き型の入門機として最適】</a></li><li><a href="#toc21" tabindex="0">Kensington Expert Mouse Wireless【定番の指置き型・長期愛用者続出】</a></li></ol></li><li><a href="#toc22" tabindex="0">よくある質問</a><ol><li><a href="#toc23" tabindex="0">Q1. 親指型から指置き型に後から変えることはできる？</a></li><li><a href="#toc24" tabindex="0">Q2. 左利きはどちらが向いている？</a></li><li><a href="#toc25" tabindex="0">Q3. MX ERGO S は親指型なのに高いのはなぜ？</a></li></ol></li><li><a href="#toc26" tabindex="0">まとめ</a><ol><li><a href="#toc27" tabindex="0">迷ったら、こう決める</a></li></ol></li><li><a href="#toc28" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">そもそも2種類のタイプとは？</span></h2>
<h3><span id="toc2">親指型（Thumb Type）</span></h3>
<p><strong>「マウスに似た形で、親指でボールを操作する」</strong></p>
<p> </p>
<pre><code class="language-plaintext">本体を手のひらで握る
  → 親指でボールを転がす
  → カーソルが動く</code></pre>
<p><!-- ![親指型トラックボールの操作イメージ](images/thumb-type.jpg) --></p>
<p> </p>
<p><strong>代表機種：</strong></p>
<ul>
<li>Logicool M575S</li>
<li>Logicool MX ERGO S</li>
<li>ELECOM EX-G</li>
</ul>
<p> </p>
<p>見た目は普通のマウスに近い。</p>
<p>マウスから乗り換えやすいのが特徴です。</p>
<p> </p>
<h3><span id="toc3">指置き型（Index/Middle Finger Type）</span></h3>
<p><strong>「大きなボールの上に人差し指と中指を置いて操作する」</strong></p>
<p> </p>
<pre><code class="language-plaintext">手のひらを本体の上に乗せる
  → 人差し指・中指でボールを転がす
  → カーソルが動く</code></pre>
<p><!-- ![指置き型トラックボールの操作イメージ](images/finger-type.jpg) --></p>
<p> </p>
<p><strong>代表機種：</strong></p>
<ul>
<li>Kensington Expert Mouse</li>
<li>ELECOM HUGE</li>
</ul>
<p> </p>
<p>ボールが大きく（52〜57mm）、</p>
<p>より精密な操作ができるのが特徴です。</p>
<p> </p>
<hr>
<h2><span id="toc4">5つの比較軸で徹底検証</span></h2>
<h3><span id="toc5">📊 比較まとめ表</span></h3>
<table>
<thead>
<tr>
<th>比較軸</th>
<th>親指型</th>
<th>指置き型</th>
</tr>
</thead>
<tbody>
<tr>
<td>精度・精密操作</td>
<td>やや苦手（親指の可動域が狭い）</td>
<td>◎ 得意（2本指で細かく動かせる）</td>
</tr>
<tr>
<td>疲れにくさ</td>
<td>親指1本に負荷が集中</td>
<td>複数指で分散・疲れにくい</td>
</tr>
<tr>
<td>マウスからの移行</td>
<td>◎ しやすい</td>
<td>最初は戸惑いやすい</td>
</tr>
<tr>
<td>価格帯</td>
<td>幅広い（¥3,000〜¥20,000）</td>
<td>中〜高め（¥10,000〜）</td>
</tr>
<tr>
<td>持ち運び</td>
<td>◎ コンパクトな製品が多い</td>
<td>やや大型</td>
</tr>
</tbody>
</table>
<p> </p>
<h3><span id="toc6">①精度・精密操作のしやすさ</span></h3>
<p><strong>指置き型が圧倒的に有利です。</strong></p>
<p> </p>
<p>理由は2つ。</p>
<p> </p>
<p><strong>理由1：操作する指の数</strong></p>
<pre><code class="language-plaintext">親指型：親指1本で操作
  → 親指の可動域は限られている
  → 細かい操作に限界がある

指置き型：人差し指+中指の2本で操作
  → 指先の感覚が繊細
  → ピクセル単位の精密操作が可能</code></pre>
<p> </p>
<p><strong>理由2：ボールのサイズ</strong></p>
<pre><code class="language-plaintext">親指型：34mm（小さめ）
  → 1回の動きでカーソルが大きく動く
  → 微調整が難しい

指置き型：52〜57mm（大きめ）
  → 大きいボールは動かしやすく、精密に動かせる
  → 少ない動きで広い範囲をカバー</code></pre>
<p> </p>
<p><strong>画像編集・動画編集・CAD・3Dモデリングをするなら指置き型一択です。</strong></p>
<p> </p>
<h3><span id="toc7">②疲れにくさ・腱鞘炎対策</span></h3>
<p><strong>長時間作業では指置き型が有利。ただし腱鞘炎の部位による。</strong></p>
<p> </p>
<p><strong>親指型の注意点：</strong></p>
<p>親指でボールを操作するため、長時間使うと</p>
<p><strong>親指の付け根（母指球）に負担が集中</strong>します。</p>
<p> </p>
<p>これが「ドケルバン病（親指側の腱鞘炎）」につながる場合があります。</p>
<p> </p>
<p><strong>指置き型のメリット：</strong></p>
<p>人差し指・中指・薬指と複数の指で分散して操作するため、</p>
<p>1本の指への集中負荷がありません。</p>
<p><strong>腱鞘炎持ちには、指置き型の方が安心です。</strong></p>
<p> </p>
<blockquote>
<p>ただし、どちらのタイプも「手首をほとんど動かさない」という点は同じ。<br />手首の痛み（手根管症候群）には、どちらでも効果があります。</p>
</blockquote>
<p> </p>
<p>腱鞘炎対策については <a href="/trackball-mouse-wrist-pain-relief/">【腱鞘炎に悩む人へ】トラックボールで手首の痛みが消えた話</a> で詳しく解説しています。</p>
<p> </p>
<h3><span id="toc8">③マウスからの移行しやすさ</span></h3>
<p><strong>親指型が圧倒的に有利。</strong></p>
<p> </p>
<p>親指型は普通のマウスに近い形です。</p>
<pre><code class="language-plaintext">【親指型を初めて使ったとき】
「あ、マウスと同じ感覚だ」
→ 1〜3日で慣れる

【指置き型を初めて使ったとき】
「え、どこに手を置けばいいの？」
「人差し指でボールを転がすの？慣れない...」
→ 1〜2週間かかることも</code></pre>
<p> </p>
<p>初めてトラックボールを試すなら、</p>
<p><strong>まず親指型から始めることを強くおすすめします。</strong></p>
<p> </p>
<h3><span id="toc9">④価格帯</span></h3>
<table>
<thead>
<tr>
<th>タイプ</th>
<th>価格帯</th>
<th>入門機の例</th>
</tr>
</thead>
<tbody>
<tr>
<td>親指型</td>
<td>¥3,000〜¥20,000</td>
<td>ELECOM EX-G（¥4,000台）</td>
</tr>
<tr>
<td>指置き型</td>
<td>¥10,000〜¥25,000</td>
<td>ELECOM HUGE（¥10,000台）</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>「まず試してみたい」なら親指型が断然リーズナブル。</strong></p>
<p>Logicool M575S（¥6,000台）なら品質と価格のバランスが最高です。</p>
<p> </p>
<h3><span id="toc10">⑤持ち運びやすさ</span></h3>
<p><strong>親指型が有利。</strong></p>
<p> </p>
<p>親指型はコンパクトな製品が多く、カバンに入れやすい。</p>
<p>指置き型は大型製品が多く、デスク据え置き専用になりがちです。</p>
<p> </p>
<pre><code class="language-plaintext">カフェや出張でも使いたい → 親指型
デスクに固定して使う   → どちらでもOK</code></pre>
<p> </p>
<hr>
<h2><span id="toc11">結論：あなたはどっちを選ぶべき？</span></h2>
<h3><span id="toc12">ユーザー別おすすめフロー</span></h3>
<pre><code class="language-plaintext">初めてトラックボールを使う？
  → YES → 【親指型】（M575Sが定番入門機）
  → NO（トラックボール経験あり）
           ↓
    精密作業が多い？（デザイン・動画編集・CAD）
      → YES → 【指置き型】（HUGE または Expert Mouse）
      → NO
               ↓
        親指の付け根が痛い？（腱鞘炎）
          → YES → 【指置き型】（親指への負荷をゼロに）
          → NO → 【親指型上位機】（MX ERGO S）</code></pre>
<p> </p>
<h3><span id="toc13">一言まとめ</span></h3>
<p><strong>「とりあえずどちらか迷ったら親指型。精密作業が多いなら指置き型。」</strong></p>
<p> </p>
<p>どちらが「絶対に優れている」わけではありません。</p>
<p>目的と状況で選んでください。</p>
<p> </p>
<hr>
<h2><span id="toc14">親指型おすすめ商品</span></h2>
<h3><span id="toc15">Logicool ERGO M575S【迷ったらこれ一択】</span></h3>
<p><strong>価格帯：¥6,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / Unifying</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×1（最長24ヶ月）</td>
</tr>
<tr>
<td>特徴</td>
<td>エルゴノミクス認定・Logicool Options対応</td>
</tr>
</tbody>
</table>
<p>✅ 定番中の定番</p>
<p>✅ 電池最大24ヶ月の異常な長持ち</p>
<p>✅ Logicool Optionsで高度なカスタマイズ</p>
<p>❌ 角度調整なし</p>
<p>❌ 充電式ではない</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575S Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad Chrome 電池寿命最大24ケ月 M575 ブラック 国内正規品","b":"Logicool(ロジクール)","t":"910-005877","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ZMFwdrpML._SL500_.jpg","\/41YM7ZAL5wL._SL500_.jpg","\/41CYXNwFrBL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/51XZhfQM7QL._SL500_.jpg","\/41cqXexnCgL._SL500_.jpg","\/41Xk3angwNL._SL500_.jpg","\/310CaQSNWNL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"XbHvI","s":"l"});</script></p>
<div id="msmaflink-XbHvI">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc16">Logicool ERGO M575SP【静音版・最新モデル】</span></h3>
<p><strong>価格帯：¥8,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / Logi Bolt</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×1</td>
</tr>
<tr>
<td>特徴</td>
<td>クリック音80%削減・2024年刷新</td>
</tr>
</tbody>
</table>
<p>✅ M575Sの静音版</p>
<p>✅ 最新Logi Bolt対応</p>
<p>❌ M575Sより¥2,000高い</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール 静音 ワイヤレス トラックボール マウス M575SPGR Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス グラファイト M575 M575SP 国内正規品","b":"Logicool(ロジクール)","t":"M575SPGR","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/311aVPVciAL._SL500_.jpg","\/41Ln0zRi1pL._SL500_.jpg","\/41VMcv2DU+L._SL500_.jpg","\/41l29ReeOdL._SL500_.jpg","\/513QjXjXCdL._SL500_.jpg","\/41+evk1MG6L._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0DC5WQQ2J","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0DC5WQQ2J","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20M575SPGR%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20M575%20M575SP%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20M575SPGR%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20M575%20M575SP%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"S6dxd","s":"l"});</script></p>
<div id="msmaflink-S6dxd">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc17">Logicool MX ERGO S【親指型の最高峰】</span></h3>
<p><strong>価格帯：¥17,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / Logi Bolt</td>
</tr>
<tr>
<td>電源</td>
<td>USB-C充電式（最長120日）</td>
</tr>
<tr>
<td>特徴</td>
<td>角度調整（0°/20°）・静音・2台接続</td>
</tr>
</tbody>
</table>
<p>✅ 角度調整機能が革命的</p>
<p>✅ 充電式（1分充電で24時間）</p>
<p>✅ 2台のPCをシームレスに切り替え</p>
<p>❌ 価格が高い</p>
<p>❌ 重め（約260g）</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール 静音 ワイヤレス トラックボール マウス MXTB2 MX ERGO S Bluetooth Logibolt 無線 windows mac iPad OS Chrome Android トラックボールマウス グラファイト 国内正規品","b":"Logicool(ロジクール)","t":"MXTB2","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/319RcxooUNL._SL500_.jpg","\/51r8wHwHxCL._SL500_.jpg","\/41TKdUkrv4L._SL500_.jpg","\/410ipkD2UsL._SL500_.jpg","\/41RjIX06yML._SL500_.jpg","\/51pi6SUbICL._SL500_.jpg","\/41AxlnKfWtL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0DC5X912P","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0DC5X912P","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20MXTB2%20MX%20ERGO%20S%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20Android%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20MXTB2%20MX%20ERGO%20S%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20Android%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"RmXap","s":"l"});</script></p>
<div id="msmaflink-RmXap">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc18">ELECOM EX-G M-XT3DRBK【日本メーカー・コスパ重視】</span></h3>
<p><strong>価格帯：¥4,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>無線2.4GHz</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×1</td>
</tr>
<tr>
<td>特徴</td>
<td>6ボタン・チルトホイール</td>
</tr>
</tbody>
</table>
<p>✅ ¥4,000台で試せる低価格</p>
<p>✅ 6ボタン・横スクロール付き</p>
<p>✅ 日本メーカーの安心感</p>
<p>❌ Bluetooth非対応</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"エレコム ワイヤレス トラックボールマウス EX-G 握りの極み 6ボタン チルトホイール（左右スクロール） ブラック M-XT3DRBK","b":"エレコム(ELECOM)","t":"M-XT3DRBK","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31nVkpWP8BL._SL500_.jpg","\/51xyOkaSIsL._SL500_.jpg","\/41MyaJmSVNL._SL500_.jpg","\/41AumMpMJwL._SL500_.jpg","\/41CcnvoeRZL._SL500_.jpg","\/41A3TJNaOlL._SL500_.jpg","\/31dqFUW2w8L._SL500_.jpg","\/41hTvlQyDDL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B016QCPNUW","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B016QCPNUW","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20EX-G%20%E6%8F%A1%E3%82%8A%E3%81%AE%E6%A5%B5%E3%81%BF%206%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%81%E3%83%AB%E3%83%88%E3%83%9B%E3%82%A4%E3%83%BC%E3%83%AB%EF%BC%88%E5%B7%A6%E5%8F%B3%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%EF%BC%89%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20M-XT3DRBK\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20EX-G%20%E6%8F%A1%E3%82%8A%E3%81%AE%E6%A5%B5%E3%81%BF%206%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%81%E3%83%AB%E3%83%88%E3%83%9B%E3%82%A4%E3%83%BC%E3%83%AB%EF%BC%88%E5%B7%A6%E5%8F%B3%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%EF%BC%89%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20M-XT3DRBK","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"9sF0E","s":"l"});</script></p>
<div id="msmaflink-9sF0E">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h2><span id="toc19">指置き型おすすめ商品</span></h2>
<h3><span id="toc20">ELECOM HUGE M-HT1DRBK【指置き型の入門機として最適】</span></h3>
<p><strong>価格帯：¥10,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>指置き型（人差し指・中指）</td>
</tr>
<tr>
<td>ボール径</td>
<td>52mm（大玉）</td>
</tr>
<tr>
<td>接続</td>
<td>無線2.4GHz</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×2</td>
</tr>
<tr>
<td>特徴</td>
<td>8ボタン・人工ルビー支持球・パームレスト付</td>
</tr>
</tbody>
</table>
<p>✅ 52mm大玉で精密操作</p>
<p>✅ 8ボタンで豊富なカスタマイズ</p>
<p>✅ 低反発パームレスト付きで手首が楽</p>
<p>❌ 本製品（M-HT1DRBK）は有線のみ（ワイヤレスモデルは別途存在）</p>
<p>❌ サイズが大きい（持ち運び不可）</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"エレコム トラックボールマウス ワイヤレス 大玉 8ボタン チルト機能 ブラック M-HT1DRBK","b":"エレコム(ELECOM)","t":"M-HT1DRBK","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41BL1o5A53L._SL500_.jpg","\/510lU+bpdjL._SL500_.jpg","\/41usfn6Mf3L._SL500_.jpg","\/41fgn7LjHML._SL500_.jpg","\/51JCYtOoanL._SL500_.jpg","\/41uOGo3-VOL._SL500_.jpg","\/41Zoc98XoZL._SL500_.jpg","\/41Tf3dtEM8L._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0735584RM","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0735584RM","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E5%A4%A7%E7%8E%89%208%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%81%E3%83%AB%E3%83%88%E6%A9%9F%E8%83%BD%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20M-HT1DRBK\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E5%A4%A7%E7%8E%89%208%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%81%E3%83%AB%E3%83%88%E6%A9%9F%E8%83%BD%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20M-HT1DRBK","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"TZgaA","s":"l"});</script></p>
<div id="msmaflink-TZgaA">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc21">Kensington Expert Mouse Wireless【定番の指置き型・長期愛用者続出】</span></h3>
<p><strong>価格帯：¥15,000〜20,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>指置き型（人差し指・中指）</td>
</tr>
<tr>
<td>ボール径</td>
<td>55mm（最大級）</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / 無線2.4GHz</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×2</td>
</tr>
<tr>
<td>特徴</td>
<td>スクロールリング・着脱式パームレスト・5年保証</td>
</tr>
</tbody>
</table>
<p>✅ 「10年使ってる」ユーザーが続出する信頼性</p>
<p>✅ 55mm大玉で圧倒的な精密操作</p>
<p>✅ スクロールリングの操作感が快感</p>
<p>✅ 5年保証</p>
<p>❌ 角度が固定（手首が痛くなる声も）</p>
<p>❌ 見た目がやや古い</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Kensington ExpertMouse ワイヤレストラックボール K72359JP 【日本語パッケージ】","b":"Kensington","t":"K72359JP","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41EeGEcQQmL._SL500_.jpg","\/41wb8ohcffL._SL500_.jpg","\/41gB6yPLKpL._SL500_.jpg","\/31yERo6iFQL._SL500_.jpg","\/41z34k0wd1L._SL500_.jpg","\/51JEpWfZ8zL._SL500_.jpg","\/51xcye3fViL._SL500_.jpg","\/41V+h011+ZL._SL500_.jpg","\/41bnMC+rspL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B01BXS17N6","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B01BXS17N6","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Kensington%20ExpertMouse%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20K72359JP%20%E3%80%90%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%80%91\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Kensington%20ExpertMouse%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20K72359JP%20%E3%80%90%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E3%80%91","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"ygKkP","s":"l"});</script></p>
<div id="msmaflink-ygKkP">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h2><span id="toc22">よくある質問</span></h2>
<h3><span id="toc23">Q1. 親指型から指置き型に後から変えることはできる？</span></h3>
<p><strong>A. できます。ただし慣れ直しに1〜2週間かかります。</strong></p>
<p> </p>
<p>親指型に慣れた後に指置き型に移行する場合、</p>
<p>最初は「使いにくい」と感じるはずです。</p>
<p> </p>
<p>でも1〜2週間我慢すると、指置き型の精密さに感動するはず。</p>
<p>特に画像編集・動画編集をする人は、移行する価値があります。</p>
<p> </p>
<h3><span id="toc24">Q2. 左利きはどちらが向いている？</span></h3>
<p><strong>A. 指置き型が有利です。</strong></p>
<p> </p>
<pre><code class="language-plaintext">親指型：ほぼ全製品が右利き専用設計
  → 左利きが使える製品はごく少数

指置き型：左右対称設計が多い
  → 左利きでも右利きでもOK</code></pre>
<p> </p>
<p>左利きの人には、</p>
<p>ELECOM HUGE や Kensington Expert Mouse のような指置き型をおすすめします。</p>
<p> </p>
<h3><span id="toc25">Q3. MX ERGO S は親指型なのに高いのはなぜ？</span></h3>
<p><strong>A. 充電式・角度調整・2台接続など付加価値が多いからです。</strong></p>
<p> </p>
<p>M575Sが「親指型の完成形入門機」なら、</p>
<p>MX ERGO Sは「親指型の最高峰・全部入り」です。</p>
<p> </p>
<pre><code class="language-plaintext">M575S との違い：
✅ 角度調整（0°/20°）→ 手首への負担が劇的に減る
✅ USB-C充電式 → 電池交換不要
✅ 2台同時接続 → 会社PCと自宅PCを1台でカバー
✅ 静音性80%UP</code></pre>
<p> </p>
<p>ただし「M575Sで十分」という声も多いので、</p>
<p>まずM575Sを使ってみてから判断するのがおすすめです。</p>
<p> </p>
<hr>
<h2><span id="toc26">まとめ</span></h2>
<p><strong>親指型を選ぶべき人：</strong></p>
<pre><code class="language-plaintext">✅ 初めてトラックボールを使う
✅ マウスに近い感覚がいい
✅ 持ち運んで使いたい
✅ 予算¥6,000台で始めたい → M575S
✅ 腱鞘炎（手首側）の改善を目指す</code></pre>
<p> </p>
<p><strong>指置き型を選ぶべき人：</strong></p>
<pre><code class="language-plaintext">✅ 画像編集・動画編集・CADが多い
✅ すでにトラックボール経験がある
✅ 親指の付け根が痛い（ドケルバン病）
✅ 精密操作を最優先にしたい
✅ デスク据え置きでOK</code></pre>
<p> </p>
<h3><span id="toc27">迷ったら、こう決める</span></h3>
<p><strong>「今までマウスを使っていて初めてのトラックボール」</strong></p>
<p>→ <strong>Logicool ERGO M575S</strong>（親指型・¥6,000台）</p>
<p> </p>
<p><strong>「トラックボールを試したことがある・精密作業が多い」</strong></p>
<p>→ <strong>ELECOM HUGE</strong>（指置き型・¥10,000台）</p>
<p> </p>
<p>どちらにしても、</p>
<p><strong>「2週間使えば手放せなくなる」</strong></p>
<p>のがトラックボールの魔力です。</p>
<p> </p>
<hr>
<h2><span id="toc28">関連記事</span></h2>
<ul>
<li><a href="/trackball-mouse-beginners-guide/">【なぜ戻れない？】トラックボールマウスの中毒性がヤバい｜初心者向け完全ガイド</a> - 全14機種の比較</li>
<li><a href="/trackball-mouse-wrist-pain-relief/">【腱鞘炎に悩む人へ】トラックボールで手首の痛みが消えた話</a> - 腱鞘炎対策の詳細ガイド</li>
<li><a href="/trackball-upgrade-guide/">【M575から卒業】トラックボール上位機種を徹底比較</a> - 上位機種への乗り換えガイド</li>
<li><a href="/monitor-switch-productivity-boost/">【作業効率3倍UP】マルチモニター×トラックボールで実現する最強デスク環境</a> - デスク環境全体の最適化</li>
</ul>
<p> </p>
<hr>
<p><em>最終更新日: 2026年6月14日</em><br /><em>価格は執筆時点の目安です</em></p><p>The post <a href="https://caymezon.com/trackball-type-comparison-guide/">【親指型 vs 指置き型】トラックボールはどっちを選ぶ？タイプ別完全比較ガイド</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/trackball-type-comparison-guide/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【腱鞘炎に悩む人へ】トラックボールで手首の痛みが消えた話｜選び方と効果を徹底解説</title>
		<link>https://caymezon.com/trackball-mouse-wrist-pain-relief/</link>
					<comments>https://caymezon.com/trackball-mouse-wrist-pain-relief/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sun, 14 Jun 2026 05:06:26 +0000</pubDate>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Tech Tips]]></category>
		<category><![CDATA[PC周辺機器]]></category>
		<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[作業効率化]]></category>
		<category><![CDATA[健康]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20448</guid>

					<description><![CDATA[<p>毎日そう思いながら湿布を貼り続けていました。   在宅ワーク3年目。 1日8時間以上のPC作業。 右手首に慢性的な鈍痛。   整形外科に行ったら、 「腱鞘炎です。マウスの使いすぎが原因です。」   「じゃあどうすればいい [&#8230;]</p>
<p>The post <a href="https://caymezon.com/trackball-mouse-wrist-pain-relief/">【腱鞘炎に悩む人へ】トラックボールで手首の痛みが消えた話｜選び方と効果を徹底解説</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>毎日そう思いながら湿布を貼り続けていました。</p>
<p> </p>
<p>在宅ワーク3年目。</p>
<p>1日8時間以上のPC作業。</p>
<p>右手首に慢性的な鈍痛。</p>
<p> </p>
<p>整形外科に行ったら、</p>
<p><strong>「腱鞘炎です。マウスの使いすぎが原因です。」</strong></p>
<p> </p>
<p>「じゃあどうすればいいんですか？」</p>
<p>「なるべく手首を休ませてください」</p>
<p> </p>
<p>...休ませるって、仕事してるんですけど。</p>
<p> </p>
<p>そんなとき、同僚が使っていた謎の機器が目に入りました。</p>
<p><strong>「それ何ですか？」</strong></p>
<p>「トラックボール。腱鞘炎にいいですよ」</p>
<p> </p>
<p>半信半疑で試してみた。</p>
<p> </p>
<p><strong>3ヶ月後、手首の痛みが消えていました。</strong></p>
<p> </p>
<p>今回は、腱鞘炎でお悩みの方に向けて、トラックボールの効果と選び方を徹底解説します。</p>
<p> </p>
<hr>

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">手首が痛い...その原因、マウスかもしれない</a><ol><li><a href="#toc2" tabindex="0">普通のマウスが腱鞘炎を引き起こす仕組み</a></li><li><a href="#toc3" tabindex="0">こんな症状が出たら危険サイン</a></li></ol></li><li><a href="#toc4" tabindex="0">トラックボールが腱鞘炎に効く理由</a><ol><li><a href="#toc5" tabindex="0">手首を動かさない = 負担がほぼゼロ</a></li><li><a href="#toc6" tabindex="0">医療・エルゴノミクスの根拠</a></li></ol></li><li><a href="#toc7" tabindex="0">選び方：腱鞘炎の部位でタイプが変わる</a><ol><li><a href="#toc8" tabindex="0">2タイプの違いを理解する</a></li><li><a href="#toc9" tabindex="0">腱鞘炎の部位で選ぶ</a></li></ol></li><li><a href="#toc10" tabindex="0">腱鞘炎対策おすすめトラックボール5選</a><ol><li><a href="#toc11" tabindex="0">📊 全機種比較表</a></li><li><a href="#toc12" tabindex="0">Logicool ERGO M575S【腱鞘炎改善の定番入門機】</a></li><li><a href="#toc13" tabindex="0">Logicool ERGO M575SP【静音版・2024年刷新】</a></li><li><a href="#toc14" tabindex="0">Logicool MX ERGO S【腱鞘炎対策の最高峰・角度調整機能付き】</a></li><li><a href="#toc15" tabindex="0">ELECOM EX-G M-XT3DRBK【日本メーカー・コスパ重視】</a></li><li><a href="#toc16" tabindex="0">Kensington SlimBlade Pro【親指に痛みがある人の最有力候補】</a></li></ol></li><li><a href="#toc17" tabindex="0">よくある質問</a><ol><li><a href="#toc18" tabindex="0">Q1. トラックボールに変えたら本当に腱鞘炎が治る？</a></li><li><a href="#toc19" tabindex="0">Q2. 慣れるまでどのくらいかかる？</a></li><li><a href="#toc20" tabindex="0">Q3. 既にひどい腱鞘炎でも使える？</a></li><li><a href="#toc21" tabindex="0">Q4. リストレストと組み合わせると効果的？</a></li></ol></li><li><a href="#toc22" tabindex="0">まとめ：腱鞘炎持ちには「まずM575S」から</a><ol><li><a href="#toc23" tabindex="0">最後に</a></li></ol></li><li><a href="#toc24" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">手首が痛い...その原因、マウスかもしれない</span></h2>
<h3><span id="toc2">普通のマウスが腱鞘炎を引き起こす仕組み</span></h3>
<p>普通のマウスを使うとき、何が起きているか考えたことありますか？</p>
<p> </p>
<pre><code class="language-plaintext">カーソルを右に動かす
  → 手首・前腕を右に水平移動
  → またカーソルを左に動かす
  → 手首・前腕を左に水平移動</code></pre>
<p> </p>
<p>1時間でこの動作を何百回繰り返すでしょう？</p>
<p><strong>1日8時間なら、何千回もの反復動作。</strong></p>
<p> </p>
<p>これが腱鞘炎の原因です。</p>
<p> </p>
<p>腱鞘炎は「反復動作による過負荷」で起きます。</p>
<p>整形外科・リハビリクリニックでも</p>
<p><strong>「マウス操作によって手根管内圧が上昇する」</strong></p>
<p>と説明されています。</p>
<p> </p>
<p>手首を中立位に保つことが保存療法の基本。</p>
<p>しかし普通のマウスを使い続ける限り、中立位を保つのは難しい。</p>
<p> </p>
<h3><span id="toc3">こんな症状が出たら危険サイン</span></h3>
<p>以下の症状、心当たりはありませんか？</p>
<p> </p>
<p>❗ <strong>マウスを使った後、手首がじんじんする</strong></p>
<p>❗ <strong>朝起きると指がこわばっている</strong></p>
<p>❗ <strong>マウスのクリックのたびに痛みを感じる</strong></p>
<p>❗ <strong>親指の付け根が痛い（ドケルバン病の可能性）</strong></p>
<p>❗ <strong>夜中に手のしびれで目が覚める</strong></p>
<p> </p>
<p>3つ以上当てはまるなら、今すぐマウスを変えることを検討してください。</p>
<p> </p>
<hr>
<h2><span id="toc4">トラックボールが腱鞘炎に効く理由</span></h2>
<h3><span id="toc5">手首を動かさない = 負担がほぼゼロ</span></h3>
<p>トラックボールの革命的な点は、<strong>手首を動かさない</strong>ことです。</p>
<p> </p>
<pre><code class="language-plaintext">【普通のマウス】
カーソル移動 = 手首・前腕を動かす
→ 1日何千回も反復動作
→ 腱鞘炎の原因

【トラックボール】
カーソル移動 = 指でボールを回すだけ
→ 手首は固定・中立位を保てる
→ 腱鞘炎の予防・改善</code></pre>
<p> </p>
<p>手首が動かない。</p>
<p><strong>これだけで、腱鞘炎の根本原因が取り除かれます。</strong></p>
<p> </p>
<h3><span id="toc6">医療・エルゴノミクスの根拠</span></h3>
<p>「本当に効果あるの？」</p>
<p>と思いますよね。</p>
<p> </p>
<p><strong>Logicool公式のエルゴノミクス研究：</strong></p>
<p>ERGO M575シリーズは人間工学専門家の認定を受けており、</p>
<p><strong>「前腕の筋肉緊張を25%軽減」</strong></p>
<p>という測定値が公式に示されています。</p>
<p> </p>
<p>また整形外科・リハビリ分野でも</p>
<p>「手首を中立位に保つ姿勢」が腱鞘炎の保存療法として推奨されています。</p>
<p> </p>
<p>トラックボールは、手をデバイスの上に置くだけ。</p>
<p>5本の指をリラックスさせたまま操作できます。</p>
<p><strong>グリップを維持する必要がない = 長時間の蓄積疲労が軽減。</strong></p>
<p> </p>
<hr>
<h2><span id="toc7">選び方：腱鞘炎の部位でタイプが変わる</span></h2>
<h3><span id="toc8">2タイプの違いを理解する</span></h3>
<p>トラックボールには大きく2種類あります。</p>
<p> </p>
<table>
<thead>
<tr>
<th></th>
<th>親指型</th>
<th>指置き型（人差し指・中指）</th>
</tr>
</thead>
<tbody>
<tr>
<td>ボールを操作する指</td>
<td>親指1本</td>
<td>人差し指＋中指（2本）</td>
</tr>
<tr>
<td>ボールサイズ</td>
<td>小さめ（34mm）</td>
<td>大きめ（52〜57mm）</td>
</tr>
<tr>
<td>マウスからの移行</td>
<td>しやすい</td>
<td>やや難しい</td>
</tr>
<tr>
<td>精密操作</td>
<td>やや苦手</td>
<td>得意</td>
</tr>
<tr>
<td>疲れにくさ</td>
<td>親指に負荷が集中</td>
<td>複数指で分散、疲れにくい</td>
</tr>
</tbody>
</table>
<p> </p>
<h3><span id="toc9">腱鞘炎の部位で選ぶ</span></h3>
<p><strong>重要な注意点があります。</strong></p>
<p> </p>
<p>腱鞘炎には種類があります。</p>
<p> </p>
<p><strong>手首側（手根管症候群）に痛みがある人：</strong></p>
<p>→ <strong>どちらのタイプでも効果的</strong></p>
<p>手首を動かさなければOK。親指型でも指置き型でもOK。</p>
<p> </p>
<p><strong>親指の付け根付近が痛い人（ドケルバン病）：</strong></p>
<p>→ <strong>指置き型を選ぶ</strong></p>
<p>親指型は親指でボールを操作するため、ドケルバン病には逆効果になる場合があります。</p>
<p><strong>人差し指・中指操作型を選んでください。</strong></p>
<p> </p>
<pre><code class="language-plaintext">あなたの痛みの場所は？

【手首〜前腕が痛い】
  → 親指型でも指置き型でもOK
  → 初心者は親指型が移行しやすい

【親指の付け根〜親指が痛い（ドケルバン病疑い）】
  → 指置き型（人差し指・中指操作）を選ぶ
  → Kensington SlimBlade Pro や ELECOM HUGE</code></pre>
<p> </p>
<p><!-- ![腱鞘炎の痛みの場所別おすすめフロー図](images/pain-location-guide.jpg) --></p>
<p> </p>
<hr>
<h2><span id="toc10">腱鞘炎対策おすすめトラックボール5選</span></h2>
<h3><span id="toc11">📊 全機種比較表</span></h3>
<table>
<thead>
<tr>
<th>製品名</th>
<th>タイプ</th>
<th>腱鞘炎への強み</th>
<th>価格帯</th>
</tr>
</thead>
<tbody>
<tr>
<td>Logicool ERGO M575S</td>
<td>親指型</td>
<td>エルゴノミクス認定・入門機の定番</td>
<td>¥6,000台</td>
</tr>
<tr>
<td>Logicool ERGO M575SP</td>
<td>親指型</td>
<td>静音版・最新Logi Bolt対応</td>
<td>¥8,000台</td>
</tr>
<tr>
<td>Logicool MX ERGO S</td>
<td>親指型</td>
<td>角度調整で手首の負担を最小化</td>
<td>¥17,000台</td>
</tr>
<tr>
<td>ELECOM EX-G M-XT3DRBK</td>
<td>親指型</td>
<td>日本メーカー・コスパ重視</td>
<td>¥4,000台</td>
</tr>
<tr>
<td>Kensington SlimBlade Pro</td>
<td>指置き型</td>
<td>親指に痛みがある人の最有力候補</td>
<td>¥12,000台</td>
</tr>
</tbody>
</table>
<p> </p>
<hr>
<h3><span id="toc12">Logicool ERGO M575S【腱鞘炎改善の定番入門機】</span></h3>
<p><strong>価格帯：¥6,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / Unifying</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×1（最長24ヶ月）</td>
</tr>
<tr>
<td>特徴</td>
<td>エルゴノミクス認定・Logicool Options対応</td>
</tr>
</tbody>
</table>
<p><strong>腱鞘炎対策としての評価：</strong></p>
<p>✅ Logicool公式「前腕の筋肉緊張25%軽減」認定</p>
<p>✅ 手首を固定したまま操作できる基本性能</p>
<p>✅ 初めてのトラックボールとして移行ハードルが低い</p>
<p>❌ 親指の付け根が痛い人には向かない場合あり</p>
<p>❌ 手首の角度調整機能なし</p>
<p> </p>
<p><strong>こんな人におすすめ：</strong></p>
<ul>
<li>初めてトラックボールを試したい腱鞘炎持ち</li>
<li>予算を抑えたい</li>
<li>手首・前腕の痛みが主な悩み</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575S Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad Chrome 電池寿命最大24ケ月 M575 ブラック 国内正規品","b":"Logicool(ロジクール)","t":"910-005877","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ZMFwdrpML._SL500_.jpg","\/41YM7ZAL5wL._SL500_.jpg","\/41CYXNwFrBL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/51XZhfQM7QL._SL500_.jpg","\/41cqXexnCgL._SL500_.jpg","\/41Xk3angwNL._SL500_.jpg","\/310CaQSNWNL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"XbHvI","s":"l"});</script></p>
<div id="msmaflink-XbHvI">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc13">Logicool ERGO M575SP【静音版・2024年刷新】</span></h3>
<p><strong>価格帯：¥8,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / Logi Bolt</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×1</td>
</tr>
<tr>
<td>特徴</td>
<td>クリック音80%削減・2024年刷新版</td>
</tr>
</tbody>
</table>
<p><strong>M575Sとの違い：</strong></p>
<ul>
<li>クリック音が80%静音化</li>
<li>最新Logi Bolt（電波干渉に強い）対応</li>
<li>2024年刷新版で品質向上</li>
</ul>
<p> </p>
<p><strong>こんな人におすすめ：</strong></p>
<ul>
<li>静かなオフィス・テレワーク環境</li>
<li>夜中に作業することが多い</li>
<li>M575Sより少し品質を上げたい</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール 静音 ワイヤレス トラックボール マウス M575SPGR Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス グラファイト M575 M575SP 国内正規品","b":"Logicool(ロジクール)","t":"M575SPGR","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/311aVPVciAL._SL500_.jpg","\/41Ln0zRi1pL._SL500_.jpg","\/41VMcv2DU+L._SL500_.jpg","\/41l29ReeOdL._SL500_.jpg","\/513QjXjXCdL._SL500_.jpg","\/41+evk1MG6L._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0DC5WQQ2J","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0DC5WQQ2J","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20M575SPGR%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20M575%20M575SP%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20M575SPGR%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20M575%20M575SP%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"S6dxd","s":"l"});</script></p>
<div id="msmaflink-S6dxd">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc14">Logicool MX ERGO S【腱鞘炎対策の最高峰・角度調整機能付き】</span></h3>
<p><strong>価格帯：¥17,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / Logi Bolt</td>
</tr>
<tr>
<td>電源</td>
<td>USB-C充電式（最長120日）</td>
</tr>
<tr>
<td>特徴</td>
<td>角度調整（0°/20°）・静音・2台同時接続</td>
</tr>
</tbody>
</table>
<p><strong>腱鞘炎対策の観点から見た最大の差別化：</strong></p>
<pre><code class="language-plaintext">【角度調整機能】

0°：フラット（通常のマウスに近い）
  ↓
20°：手首が自然に「親指が上を向く」角度に

この20°の傾きが、手首の中立位を保つ。
腱鞘炎対策として絶大な効果。</code></pre>
<p> </p>
<p>✅ 手首角度調整で負担を最小化</p>
<p>✅ 静音性（M575比80%削減）</p>
<p>✅ 充電式で電池交換不要</p>
<p>✅ 2台のPCを切り替えて使える</p>
<p>❌ 価格が高い（¥17,000台）</p>
<p>❌ 重め（約260g）</p>
<p> </p>
<p><strong>「本格的に腱鞘炎を改善したい」なら最初からこれを選んでも後悔しません。</strong></p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス MXTB2d MX ERGO S Bluetooth Logibolt 無線 windows mac iPad OS Chrome Android トラックボールマウス グラファイト 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き","b":"Logicool(ロジクール)","t":"MXTB2d","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/319RcxooUNL._SL500_.jpg","\/51r8wHwHxCL._SL500_.jpg","\/51lc9zGOBCL._SL500_.jpg","\/410ipkD2UsL._SL500_.jpg","\/41RjIX06yML._SL500_.jpg","\/51pi6SUbICL._SL500_.jpg","\/41AxlnKfWtL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0D9Y1SNQT","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0D9Y1SNQT","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%80%90Amazon.co.jp%E9%99%90%E5%AE%9A%E3%80%91%20%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20MXTB2d%20MX%20ERGO%20S%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20Android%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E2%80%BBAmazon.co.jp%E9%99%90%E5%AE%9A%20%E5%A3%81%E7%B4%99%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E4%BB%98%E3%81%8D\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%80%90Amazon.co.jp%E9%99%90%E5%AE%9A%E3%80%91%20%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E9%9D%99%E9%9F%B3%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E3%83%9E%E3%82%A6%E3%82%B9%20MXTB2d%20MX%20ERGO%20S%20Bluetooth%20Logibolt%20%E7%84%A1%E7%B7%9A%20windows%20mac%20iPad%20OS%20Chrome%20Android%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E2%80%BBAmazon.co.jp%E9%99%90%E5%AE%9A%20%E5%A3%81%E7%B4%99%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E4%BB%98%E3%81%8D","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"QEThh","s":"l"});</script></p>
<div id="msmaflink-QEThh">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc15">ELECOM EX-G M-XT3DRBK【日本メーカー・コスパ重視】</span></h3>
<p><strong>価格帯：¥4,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>親指型</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
</tr>
<tr>
<td>接続</td>
<td>無線2.4GHz</td>
</tr>
<tr>
<td>電源</td>
<td>単3電池×1</td>
</tr>
<tr>
<td>特徴</td>
<td>6ボタン・チルトホイール・日本メーカー</td>
</tr>
</tbody>
</table>
<p><strong>こんな人におすすめ：</strong></p>
<ul>
<li>とにかく安く試したい（¥4,000台）</li>
<li>日本メーカー品がいい</li>
<li>まず「腱鞘炎に効くか試してみたい」</li>
</ul>
<p>❌ Bluetooth非対応</p>
<p>❌ ボールの滑りはM575に劣る</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"エレコム ワイヤレス トラックボールマウス EX-G 握りの極み 6ボタン チルトホイール（左右スクロール） ブラック M-XT3DRBK","b":"エレコム(ELECOM)","t":"M-XT3DRBK","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31nVkpWP8BL._SL500_.jpg","\/51xyOkaSIsL._SL500_.jpg","\/41MyaJmSVNL._SL500_.jpg","\/41AumMpMJwL._SL500_.jpg","\/41CcnvoeRZL._SL500_.jpg","\/41A3TJNaOlL._SL500_.jpg","\/31dqFUW2w8L._SL500_.jpg","\/41hTvlQyDDL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B016QCPNUW","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B016QCPNUW","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20EX-G%20%E6%8F%A1%E3%82%8A%E3%81%AE%E6%A5%B5%E3%81%BF%206%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%81%E3%83%AB%E3%83%88%E3%83%9B%E3%82%A4%E3%83%BC%E3%83%AB%EF%BC%88%E5%B7%A6%E5%8F%B3%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%EF%BC%89%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20M-XT3DRBK\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20EX-G%20%E6%8F%A1%E3%82%8A%E3%81%AE%E6%A5%B5%E3%81%BF%206%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%81%E3%83%AB%E3%83%88%E3%83%9B%E3%82%A4%E3%83%BC%E3%83%AB%EF%BC%88%E5%B7%A6%E5%8F%B3%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%EF%BC%89%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20M-XT3DRBK","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"9sF0E","s":"l"});</script></p>
<div id="msmaflink-9sF0E">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h3><span id="toc16">Kensington SlimBlade Pro【親指に痛みがある人の最有力候補】</span></h3>
<p><strong>価格帯：¥12,000台</strong></p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>操作方式</td>
<td>指置き型（人差し指・中指）</td>
</tr>
<tr>
<td>ボール径</td>
<td>52mm（大玉）</td>
</tr>
<tr>
<td>接続</td>
<td>Bluetooth / 2.4GHz / USB-C</td>
</tr>
<tr>
<td>電源</td>
<td>単4電池×2</td>
</tr>
<tr>
<td>特徴</td>
<td>回転スクロール・薄型フラット</td>
</tr>
</tbody>
</table>
<p><strong>親指が痛い人に特におすすめの理由：</strong></p>
<p> </p>
<p>親指型トラックボールで症状が改善しない場合、</p>
<p>それは**ドケルバン病（親指側の腱鞘炎）**の可能性があります。</p>
<p> </p>
<p>その場合、指置き型に切り替えることで</p>
<p>親指への負荷がゼロになります。</p>
<p> </p>
<p>SlimBlade Proは55mm大玉を</p>
<p><strong>人差し指・中指・薬指の複数指で操作する</strong>設計。</p>
<p>少ない動きで広い範囲をカバーできます。</p>
<p> </p>
<p>✅ 親指への負荷ゼロ</p>
<p>✅ 55mm大玉で少ない動きで広範囲を移動</p>
<p>✅ 回転スクロールが快適</p>
<p>✅ 薄型フラットで手首への負担も少ない</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Kensington ケンジントン Slimblade Pro ワイヤレストラックボール 4ボタン 左右対称デザイン 55㎜ボール 有線接続 2.4GHzワイヤレス接続 Bluetooth接続 Mac対応 K72081JP","b":"Kensington","t":"K72081JP","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/21a8ZUuy+mL._SL500_.jpg","\/510bAV8zEsL._SL500_.jpg","\/51Sl154+KJL._SL500_.jpg","\/41-4xe1+D5L._SL500_.jpg","\/51e-CLH77GL._SL500_.jpg","\/51udIHgl1mL._SL500_.jpg","\/41DfK9hDpzL._SL500_.jpg","\/51EeAyfi9AL._SL500_.jpg","\/41jW+z40bOL._SL500_.jpg","\/41Te+jv6uEL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0BN8224SY","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0BN8224SY","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Kensington%20%E3%82%B1%E3%83%B3%E3%82%B8%E3%83%B3%E3%83%88%E3%83%B3%20Slimblade%20Pro%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%204%E3%83%9C%E3%82%BF%E3%83%B3%20%E5%B7%A6%E5%8F%B3%E5%AF%BE%E7%A7%B0%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B3%2055%E3%8E%9C%E3%83%9C%E3%83%BC%E3%83%AB%20%E6%9C%89%E7%B7%9A%E6%8E%A5%E7%B6%9A%202.4GHz%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E6%8E%A5%E7%B6%9A%20Bluetooth%E6%8E%A5%E7%B6%9A%20Mac%E5%AF%BE%E5%BF%9C%20K72081JP\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Kensington%20%E3%82%B1%E3%83%B3%E3%82%B8%E3%83%B3%E3%83%88%E3%83%B3%20Slimblade%20Pro%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%204%E3%83%9C%E3%82%BF%E3%83%B3%20%E5%B7%A6%E5%8F%B3%E5%AF%BE%E7%A7%B0%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B3%2055%E3%8E%9C%E3%83%9C%E3%83%BC%E3%83%AB%20%E6%9C%89%E7%B7%9A%E6%8E%A5%E7%B6%9A%202.4GHz%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E6%8E%A5%E7%B6%9A%20Bluetooth%E6%8E%A5%E7%B6%9A%20Mac%E5%AF%BE%E5%BF%9C%20K72081JP","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"LQSvU","s":"l"});</script></p>
<div id="msmaflink-LQSvU">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h2><span id="toc17">よくある質問</span></h2>
<h3><span id="toc18">Q1. トラックボールに変えたら本当に腱鞘炎が治る？</span></h3>
<p><strong>A. 「治る」ではなく「悪化を防ぎ、改善を助ける」です。</strong></p>
<p> </p>
<p>腱鞘炎は炎症なので、まず安静が最優先。</p>
<p>トラックボールは「マウス使用時の手首への負担を減らす」ものです。</p>
<p> </p>
<p>ひどい腱鞘炎の場合は整形外科の受診を。</p>
<p>軽症〜中等症なら、トラックボールへの切り替えで改善するケースが多いです。</p>
<p>私の場合も、整形外科での治療と並行してトラックボールに切り替え、</p>
<p>3ヶ月で痛みがほぼ消えました。</p>
<p> </p>
<h3><span id="toc19">Q2. 慣れるまでどのくらいかかる？</span></h3>
<p><strong>A. 1〜2週間です。</strong></p>
<p> </p>
<p>最初の3日は「使いにくい...」と感じます。</p>
<p>1週間で普通に使えるようになります。</p>
<p><strong>2週間で「もう普通のマウスには戻れない」と感じるようになります。</strong></p>
<p> </p>
<p>腱鞘炎改善のための投資として、2週間の慣れ期間は十分価値があります。</p>
<p> </p>
<h3><span id="toc20">Q3. 既にひどい腱鞘炎でも使える？</span></h3>
<p><strong>A. 使えますが、まず医師に相談を。</strong></p>
<p> </p>
<p>重度の腱鞘炎の場合は、どんなデバイスを使っても悪化するリスクがあります。</p>
<p>整形外科でのステロイド注射や手術が必要な場合もあります。</p>
<p>軽〜中程度なら、トラックボールへの切り替えは有効な選択肢です。</p>
<p> </p>
<h3><span id="toc21">Q4. リストレストと組み合わせると効果的？</span></h3>
<p><strong>A. はい、特に指置き型には有効です。</strong></p>
<p> </p>
<p>指置き型（Kensington など）は手首の角度が固定されやすいため、</p>
<p>社外品のゲルタイプのリストレストとの組み合わせで</p>
<p>さらに手首への負担を減らせます。</p>
<p> </p>
<hr>
<h2><span id="toc22">まとめ：腱鞘炎持ちには「まずM575S」から</span></h2>
<pre><code class="language-plaintext">手首・前腕の痛みが主な悩み、コスパ重視
  → Logicool ERGO M575S（¥6,000台）

静かな環境で使いたい、最新モデルがいい
  → Logicool ERGO M575SP（¥8,000台）

本気で腱鞘炎を改善したい、予算があれば
  → Logicool MX ERGO S（¥17,000台）

親指の付け根〜親指が痛い（ドケルバン病疑い）
  → Kensington SlimBlade Pro（¥12,000台）

とにかく安く試したい
  → ELECOM EX-G M-XT3DRBK（¥4,000台）</code></pre>
<p> </p>
<h3><span id="toc23">最後に</span></h3>
<p>腱鞘炎は放置すると慢性化します。</p>
<p> </p>
<p>私は最初「たかが手首の痛み」と思って放置していました。</p>
<p>半年後には手術を勧められる寸前まで悪化。</p>
<p> </p>
<p><strong>「早く気づいてよかった」</strong></p>
<p>今は毎日思っています。</p>
<p> </p>
<p>トラックボールは数千円〜数万円の投資。</p>
<p>でも腱鞘炎の治療費（整形外科通院、物理療法、場合によっては手術）と比べたら？</p>
<p> </p>
<pre><code class="language-plaintext">腱鞘炎治療費の目安：
  整形外科受診：¥3,000〜5,000/回
  物理療法：¥1,000〜2,000/回
  通院回数：週2回 × 3ヶ月 = 24回
  合計：¥96,000〜168,000

予防にトラックボール：¥6,000〜17,000</code></pre>
<p> </p>
<p><strong>圧倒的にコスパの良い「健康への投資」です。</strong></p>
<p> </p>
<p>今の手首の痛み、放置していませんか？</p>
<p> </p>
<hr>
<h2><span id="toc24">関連記事</span></h2>
<ul>
<li><a href="/trackball-mouse-beginners-guide/">【なぜ戻れない？】トラックボールマウスの中毒性がヤバい｜初心者向け完全ガイド</a> - トラックボール入門者向け全機種比較14選</li>
<li><a href="/trackball-type-comparison-guide/">【親指型 vs 指置き型】トラックボールはどっちを選ぶ？タイプ別完全比較ガイド</a> - 2タイプの違いを詳しく解説</li>
<li><a href="/trackball-upgrade-guide/">【M575から卒業】トラックボール上位機種を徹底比較</a> - M575から上位機種へのアップグレードガイド</li>
<li><a href="/monitor-switch-productivity-boost/">【作業効率3倍UP】マルチモニター×トラックボールで実現する最強デスク環境</a> - デスク環境全体の最適化</li>
</ul>
<p> </p>
<hr>
<p><em>最終更新日: 2026年6月14日</em><br /><em>価格は執筆時点の目安です</em></p><p>The post <a href="https://caymezon.com/trackball-mouse-wrist-pain-relief/">【腱鞘炎に悩む人へ】トラックボールで手首の痛みが消えた話｜選び方と効果を徹底解説</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/trackball-mouse-wrist-pain-relief/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Logicool ERGO M575 完全レビュー｜2年使ってわかった本音と真実</title>
		<link>https://caymezon.com/logicool-m575-review/</link>
					<comments>https://caymezon.com/logicool-m575-review/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sun, 14 Jun 2026 05:06:19 +0000</pubDate>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Tech Tips]]></category>
		<category><![CDATA[Logicool]]></category>
		<category><![CDATA[PC周辺機器]]></category>
		<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[作業効率化]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20446</guid>

					<description><![CDATA[<p>「買って後悔しましたか？」   答えは明確です。   「全く後悔していません。むしろ、もっと早く買えばよかった」   ただ、2年使って初めてわかった「本音」もあります。   「こういう人には合わない」という事実も包み隠さ [&#8230;]</p>
<p>The post <a href="https://caymezon.com/logicool-m575-review/">Logicool ERGO M575 完全レビュー｜2年使ってわかった本音と真実</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>「買って後悔しましたか？」</p>
<p> </p>
<p>答えは明確です。</p>
<p> </p>
<p><strong>「全く後悔していません。むしろ、もっと早く買えばよかった」</strong></p>
<p> </p>
<p>ただ、2年使って初めてわかった「本音」もあります。</p>
<p> </p>
<p><strong>「こういう人には合わない」という事実も包み隠さず話します。</strong></p>
<p> </p>
<p>レビュー記事に多い「良いことしか書いてない」記事ではなく、</p>
<p>2年間の実体験からわかった全てをお伝えします。</p>
<p> </p>
<hr>

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">Logicool ERGO M575 とは？</a><ol><li><a href="#toc2" tabindex="0">一言で言うと</a></li><li><a href="#toc3" tabindex="0">詳細スペック</a></li><li><a href="#toc4" tabindex="0">カラーバリエーション</a></li></ol></li><li><a href="#toc5" tabindex="0">実際に2年使ってわかった感想</a><ol><li><a href="#toc6" tabindex="0">最初の1週間</a></li><li><a href="#toc7" tabindex="0">1ヶ月後</a></li><li><a href="#toc8" tabindex="0">2年後（現在）</a></li></ol></li><li><a href="#toc9" tabindex="0">M575 のメリット・デメリット</a><ol><li><a href="#toc10" tabindex="0">メリット</a></li><li><a href="#toc11" tabindex="0">デメリット</a></li></ol></li><li><a href="#toc12" tabindex="0">前モデル M570 との違い</a></li><li><a href="#toc13" tabindex="0">M575 vs MX ERGO S</a><ol><li><a href="#toc14" tabindex="0">M575で十分な人</a></li><li><a href="#toc15" tabindex="0">MX ERGO S が必要な人</a></li></ol></li><li><a href="#toc16" tabindex="0">M575 vs ELECOM EX-G</a></li><li><a href="#toc17" tabindex="0">M575 を買うべき人・買わない方がいい人</a><ol><li><a href="#toc18" tabindex="0">買うべき人</a></li><li><a href="#toc19" tabindex="0">買わない方がいい人</a></li></ol></li><li><a href="#toc20" tabindex="0">カラー・モデル選び方ガイド</a><ol><li><a href="#toc21" tabindex="0">どのモデルを選ぶべきか</a></li></ol></li><li><a href="#toc22" tabindex="0">まとめ：M575は「買って後悔しない」保証付きの1台</a><ol><li><a href="#toc23" tabindex="0">私の結論</a></li><li><a href="#toc24" tabindex="0">あなたの状況別おすすめ</a></li></ol></li><li><a href="#toc25" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">Logicool ERGO M575 とは？</span></h2>
<h3><span id="toc2">一言で言うと</span></h3>
<p><strong>「トラックボール入門機の定番中の定番」</strong></p>
<p> </p>
<p>Logicoolが出しているトラックボールの中で、</p>
<p>最もコスパが良くて、最も売れている機種。</p>
<p> </p>
<p>「はじめてのトラックボール」として</p>
<p>**「迷ったらM575」**と言われるほどの信頼性があります。</p>
<p> </p>
<h3><span id="toc3">詳細スペック</span></h3>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>センサー解像度</td>
<td>400〜2,000 DPI（5段階調整可）</td>
</tr>
<tr>
<td>ボタン数</td>
<td>5ボタン</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm（親指操作タイプ）</td>
</tr>
<tr>
<td>接続方式</td>
<td>2.4GHz無線（Unifyingレシーバー）/ Bluetooth Low Energy</td>
</tr>
<tr>
<td>電池</td>
<td>単3電池 × 1本</td>
</tr>
<tr>
<td>電池寿命</td>
<td><strong>最大24ヶ月</strong>（業界トップクラス）</td>
</tr>
<tr>
<td>本体重量</td>
<td>約145g（電池込み）</td>
</tr>
<tr>
<td>対応OS</td>
<td>Windows 10/11、macOS 10.15以降、iPadOS 14以降、Chrome OS</td>
</tr>
</tbody>
</table>
<p> </p>
<h3><span id="toc4">カラーバリエーション</span></h3>
<p>M575には3つのバリエーションがあります。</p>
<p> </p>
<table>
<thead>
<tr>
<th>モデル</th>
<th>カラー</th>
<th>保証</th>
<th>備考</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>M575GR</strong></td>
<td>グラファイト（濃いグレー）</td>
<td>2年</td>
<td>通常モデル</td>
</tr>
<tr>
<td><strong>M575OW</strong></td>
<td>オフホワイト</td>
<td>2年</td>
<td>通常モデル・再生素材21%使用</td>
</tr>
<tr>
<td><strong>M575S</strong></td>
<td>ブラック</td>
<td><strong>1年</strong></td>
<td>Amazon限定・やや廉価</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>重要な違い：M575Sは保証が1年（他の2モデルは2年）</strong></p>
<p>価格差が¥1,000〜2,000程度なら、M575GRかM575OWを選んだ方が安心です。</p>
<p> </p>
<p><!-- ![M575の3カラー比較](images/m575-colors.jpg) --></p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575GR Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad M575 電池寿命最大24ケ月 グラファイト 国内正規品","b":"Logicool(ロジクール)","t":"910-005876","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/312ZlFE1+vL._SL500_.jpg","\/41cQmYNQ03L._SL500_.jpg","\/41U-SBgZbYL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/512Q5dD9XrL._SL500_.jpg","\/41UH7ei1jiL._SL500_.jpg","\/41Xk3angwNL._SL500_.jpg","\/31w+Z0GDqjL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L4YZH2B","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L4YZH2B","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575GR%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20M575%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575GR%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20M575%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"iGsYa","s":"l"});</script></p>
<div id="msmaflink-iGsYa">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575OW Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad 電池寿命最大24ケ月 M575 オフホワイト 国内正規品","b":"Logicool(ロジクール)","t":"910-005984","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31TZWfvtpBL._SL500_.jpg","\/41fjcigMKdL._SL500_.jpg","\/41qB7G5zyJL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41YDK860jSL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/512Q5dD9XrL._SL500_.jpg","\/41i2CBRxA+L._SL500_.jpg","\/41sbyWz5FGL._SL500_.jpg","\/21RMPS+9pUS._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L51XVLF","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L51XVLF","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575OW%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%82%AA%E3%83%95%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575OW%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%82%AA%E3%83%95%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"1jo4B","s":"l"});</script></p>
<div id="msmaflink-1jo4B">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575S Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad Chrome 電池寿命最大24ケ月 M575 ブラック 国内正規品","b":"Logicool(ロジクール)","t":"910-005877","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ZMFwdrpML._SL500_.jpg","\/41YM7ZAL5wL._SL500_.jpg","\/41CYXNwFrBL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/51XZhfQM7QL._SL500_.jpg","\/41cqXexnCgL._SL500_.jpg","\/41Xk3angwNL._SL500_.jpg","\/310CaQSNWNL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"XbHvI","s":"l"});</script></p>
<div id="msmaflink-XbHvI">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h2><span id="toc5">実際に2年使ってわかった感想</span></h2>
<h3><span id="toc6">最初の1週間</span></h3>
<p>正直に言います。</p>
<p> </p>
<pre><code class="language-plaintext">1日目：「全然使えない...マウスの方が良かった」
2日目：「ちょっとだけ慣れてきた気がする」
3日目：「クリックとホイール操作は慣れた。カーソル操作がまだ難しい」
5日目：「あ、普通に使えるようになってきた」
7日目：「もう普通に仕事で使えてる」</code></pre>
<p> </p>
<p><strong>1週間で普通に使えるようになりました。</strong></p>
<p>その後は早かった。</p>
<p> </p>
<h3><span id="toc7">1ヶ月後</span></h3>
<p>「普通のマウスに戻れなくなった」</p>
<p> </p>
<p>会社のPCでマウスを使ったとき、</p>
<p><strong>「なんで腕をこんなに動かさなきゃいけないんだ...」</strong></p>
<p>と感じました。</p>
<p> </p>
<p>これがトラックボール中毒の始まりです。</p>
<p> </p>
<h3><span id="toc8">2年後（現在）</span></h3>
<p><strong>「M575なしでは生きていけない」</strong></p>
<p> </p>
<p>大げさに聞こえるかもしれませんが、</p>
<p>1日8時間のPC作業で、右手首への負担が激減しました。</p>
<p> </p>
<p>特に実感したのは：</p>
<p>✅ <strong>手首の疲れがほぼゼロになった</strong></p>
<p>✅ <strong>マルチモニター環境が快適になった</strong>（ボールを弾くだけで画面間を移動）</p>
<p>✅ <strong>集中力が続くようになった</strong>（疲れによる集中力低下がなくなった）</p>
<p> </p>
<hr>
<h2><span id="toc9">M575 のメリット・デメリット</span></h2>
<h3><span id="toc10">メリット</span></h3>
<p>✅ <strong>手首への負担が激減</strong></p>
<pre><code class="language-plaintext">普通のマウス：腕・手首を動かす → 疲れる
M575：ボールを指で転がすだけ → 腕は動かさない</code></pre>
<p> </p>
<p>✅ <strong>電池が異常に長持ち（最大24ヶ月）</strong></p>
<pre><code class="language-plaintext">購入して最初の電池交換：約20ヶ月後
電池を交換した後の感想：「まだ切れてなかったのか」</code></pre>
<p> </p>
<p>✅ <strong>省スペース・マウスパッド不要</strong></p>
<pre><code class="language-plaintext">狭いデスクでも使える
ソファでも布団の上でも使える
カフェの狭いテーブルでも使える</code></pre>
<p> </p>
<p>✅ <strong>Logicool Options でカスタマイズ可能</strong></p>
<pre><code class="language-plaintext">戻るボタン → ブラウザバック
進むボタン → コピー（Ctrl+C）
DPIボタン → 画像編集時に高精度モードへ切替</code></pre>
<p> </p>
<p>✅ <strong>Bluetooth と Unifying の2接続対応</strong></p>
<pre><code class="language-plaintext">会社PC → Unifyingレシーバーで接続
自宅PC → Bluetoothで接続
→ ボタン1つで切り替え可能（※M575は同時接続1台まで。2台切り替えはMX ERGO S）</code></pre>
<p> </p>
<h3><span id="toc11">デメリット</span></h3>
<p>❌ <strong>慣れるまで1週間かかる</strong></p>
<pre><code class="language-plaintext">最初の3〜5日は「使いにくい」と感じる
諦めずに1週間使い続けることが重要</code></pre>
<p> </p>
<p>❌ <strong>細かいドラッグ操作が苦手</strong></p>
<pre><code class="language-plaintext">Excelで範囲選択：微妙にずれる
Photoshopで精密な選択：難しい
CADで細かい操作：限界を感じる
→ 精密作業が多い人は指置き型（ELECOM HUGE等）を検討</code></pre>
<p> </p>
<p>❌ <strong>手首の角度調整ができない</strong></p>
<pre><code class="language-plaintext">M575は固定角度
「もう少し傾けたい」と思うことがある
→ MX ERGO Sなら0°/20°の2段階調整可能</code></pre>
<p> </p>
<p>❌ <strong>クリック音がやや大きい</strong></p>
<pre><code class="language-plaintext">静かなオフィスでは気になる
→ 静音版のM575SPを検討</code></pre>
<p> </p>
<p>❌ <strong>充電式ではない（電池式）</strong></p>
<pre><code class="language-plaintext">充電式が好きな人には不便
ただし最大24ヶ月持つので実害は少ない
→ 充電式が欲しいなら MX ERGO S</code></pre>
<p> </p>
<hr>
<h2><span id="toc12">前モデル M570 との違い</span></h2>
<p>M570 から乗り換えを検討している人向けです。</p>
<p> </p>
<table>
<thead>
<tr>
<th>比較項目</th>
<th>M570</th>
<th>M575</th>
</tr>
</thead>
<tbody>
<tr>
<td>ボール支持方式</td>
<td>3点支持</td>
<td>6点支持</td>
</tr>
<tr>
<td>Bluetooth</td>
<td>非対応</td>
<td>対応</td>
</tr>
<tr>
<td>電池寿命</td>
<td>約18ヶ月</td>
<td>約24ヶ月</td>
</tr>
<tr>
<td>専用ソフト</td>
<td>非対応</td>
<td>Logicool Options対応</td>
</tr>
<tr>
<td>重量</td>
<td>M575より約20g軽い</td>
<td>M570より20g重い</td>
</tr>
<tr>
<td>価格</td>
<td>ディスコン（入手困難）</td>
<td>現行モデル</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>M570ユーザーは迷わずM575に乗り換えを。</strong></p>
<p>ボールの滑らかさが別次元に改善されています。</p>
<p> </p>
<hr>
<h2><span id="toc13">M575 vs MX ERGO S</span></h2>
<p>M575を使い始めると、次に気になるのが上位機種の「MX ERGO S」です。</p>
<p> </p>
<table>
<thead>
<tr>
<th>比較項目</th>
<th>M575</th>
<th>MX ERGO S</th>
</tr>
</thead>
<tbody>
<tr>
<td>価格</td>
<td>約¥6,000</td>
<td>約¥17,000</td>
</tr>
<tr>
<td>ボール径</td>
<td>34mm</td>
<td>34mm</td>
</tr>
<tr>
<td>手首角度調整</td>
<td>なし（固定）</td>
<td><strong>0°/20°の2段階</strong></td>
</tr>
<tr>
<td>電源</td>
<td>単3電池（24ヶ月）</td>
<td><strong>USB-C充電（120日）</strong></td>
</tr>
<tr>
<td>接続台数</td>
<td>1台</td>
<td><strong>2台（Easy-Switch）</strong></td>
</tr>
<tr>
<td>静音性</td>
<td>普通</td>
<td><strong>80%静音化</strong></td>
</tr>
<tr>
<td>重量</td>
<td>145g</td>
<td>260g</td>
</tr>
</tbody>
</table>
<p> </p>
<h3><span id="toc14">M575で十分な人</span></h3>
<pre><code class="language-plaintext">✅ コーディング・文書作成が中心
✅ 予算を抑えたい
✅ 軽いマウスが好き
✅ 電池を管理したくない（24ヶ月持つので忘れてOK）</code></pre>
<p> </p>
<h3><span id="toc15">MX ERGO S が必要な人</span></h3>
<pre><code class="language-plaintext">✅ 手首の角度調整で腱鞘炎を改善したい
✅ 2台のPCを頻繁に切り替えて使う
✅ 充電式にこだわる
✅ 静かなオフィスで使う</code></pre>
<p> </p>
<p><strong>重要な真実：多くのレビュアーが「M575で十分、むしろ使い勝手はM575の方が良い」と言っています。</strong></p>
<p>MX ERGO Sは重いので、長時間使用では逆に疲れるという声も。</p>
<p> </p>
<p>上位機種については <a href="/trackball-upgrade-guide/">【M575から卒業】トラックボール上位機種を徹底比較</a> で詳しく解説しています。</p>
<p> </p>
<hr>
<h2><span id="toc16">M575 vs ELECOM EX-G</span></h2>
<p>同価格帯の対抗馬との比較です。</p>
<p> </p>
<table>
<thead>
<tr>
<th>比較項目</th>
<th>M575（¥6,000台）</th>
<th>ELECOM EX-G（¥4,000台）</th>
</tr>
</thead>
<tbody>
<tr>
<td>Bluetooth</td>
<td>対応</td>
<td><strong>非対応</strong>（2.4GHzのみ）</td>
</tr>
<tr>
<td>ボタン数</td>
<td>5ボタン</td>
<td><strong>6ボタン</strong></td>
</tr>
<tr>
<td>重量</td>
<td>145g</td>
<td>約196g</td>
</tr>
<tr>
<td>ソフトウェア</td>
<td>Logicool Options（高機能）</td>
<td>ハードウェアボタンのみ</td>
</tr>
<tr>
<td>実績・信頼性</td>
<td>圧倒的</td>
<td>日本メーカーの安心感</td>
</tr>
<tr>
<td>価格</td>
<td>¥6,000台</td>
<td>¥4,000台</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>「Bluetoothが必要かどうか」が分岐点。</strong></p>
<p>Bluetooth不要なら ELECOM EX-G の方がボタン数が多くてコスパが高い。</p>
<p>Bluetoothで複数デバイスに対応したいなら M575 一択。</p>
<p> </p>
<hr>
<h2><span id="toc17">M575 を買うべき人・買わない方がいい人</span></h2>
<h3><span id="toc18">買うべき人</span></h3>
<p>✅ トラックボールを初めて試す人</p>
<p>✅ 手首・肩・腕の疲れを改善したい人</p>
<p>✅ 省スペースで作業したい人</p>
<p>✅ 文書作成・ブラウジング・プログラミングが中心の人</p>
<p>✅ 電池を交換し続けても気にしない人</p>
<p>✅ 「とにかく失敗したくない」人（M575は外れなし）</p>
<p> </p>
<h3><span id="toc19">買わない方がいい人</span></h3>
<p>❌ 画像編集・動画編集・CADが中心の人</p>
<p>→ 指置き型（ELECOM HUGE 等）の方が精密操作に向いている</p>
<p> </p>
<p>❌ 親指の付け根が痛い人（ドケルバン病）</p>
<p>→ 親指型は逆効果になる場合あり。指置き型を選ぼう</p>
<p> </p>
<p>❌ 充電式にこだわる人</p>
<p>→ MX ERGO S へ</p>
<p> </p>
<p>❌ 手首の角度調整がしたい人</p>
<p>→ MX ERGO S へ</p>
<p> </p>
<hr>
<h2><span id="toc20">カラー・モデル選び方ガイド</span></h2>
<h3><span id="toc21">どのモデルを選ぶべきか</span></h3>
<p><strong>1. まずは M575GR（グラファイト）を選ぶのが無難</strong></p>
<p>理由：</p>
<ul>
<li>2年保証</li>
<li>落ち着いた色で飽きにくい</li>
<li>デスクに馴染みやすい</li>
</ul>
<p> </p>
<p><strong>2. M575OW（オフホワイト）はデスクが明るい人向け</strong></p>
<p>ホワイト系のデスクや白いモニターと合わせると映える。</p>
<p>環境配慮設計（再生プラスチック21%使用）もポイント。</p>
<p> </p>
<p><strong>3. M575S（ブラック）はコスト最優先のみ</strong></p>
<p>保証が1年な点に注意。¥1,000〜2,000の価格差を惜しまないなら M575GR を選ぶべき。</p>
<p> </p>
<p><!-- ![M575GRのデスク設置イメージ](images/m575-desk.jpg) --></p>
<p> </p>
<hr>
<h2><span id="toc22">まとめ：M575は「買って後悔しない」保証付きの1台</span></h2>
<h3><span id="toc23">私の結論</span></h3>
<p>2年間、毎日使い続けてわかったこと。</p>
<p> </p>
<p><strong>M575は「トラックボール入門機として完璧」です。</strong></p>
<p> </p>
<pre><code class="language-plaintext">良いところ：
✅ 手首への負担が激減
✅ 電池24ヶ月でほぼメンテフリー
✅ Logicool品質の信頼性
✅ 価格¥6,000台で入門しやすい
✅ 1週間で慣れる

悪いところ：
❌ 精密作業には限界
❌ 角度調整なし
❌ クリック音やや大きめ</code></pre>
<p> </p>
<p>でも、**「デメリットを上回るメリット」**があります。</p>
<p> </p>
<p>1日8時間のPC作業が、</p>
<p><strong>圧倒的に楽になる。</strong></p>
<p> </p>
<p>数千円の投資で、</p>
<p><strong>残りの仕事人生が変わる。</strong></p>
<p> </p>
<p>試してみませんか？</p>
<p> </p>
<hr>
<h3><span id="toc24">あなたの状況別おすすめ</span></h3>
<pre><code class="language-plaintext">初めてのトラックボール、失敗したくない
  → M575GR（グラファイト）一択

白いデスク環境、インテリアを統一したい
  → M575OW（オフホワイト）

コスト最優先、1年以内に壊れたら買い替えでOK
  → M575S（Amazon限定・ブラック）

静音性が欲しい、最新モデルが良い
  → M575SP（静音版・後継モデル）

角度調整・充電式・2台接続が欲しい
  → Logicool MX ERGO S（上位機種）</code></pre>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575GR Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad M575 電池寿命最大24ケ月 グラファイト 国内正規品","b":"Logicool(ロジクール)","t":"910-005876","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/312ZlFE1+vL._SL500_.jpg","\/41cQmYNQ03L._SL500_.jpg","\/41U-SBgZbYL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/512Q5dD9XrL._SL500_.jpg","\/41UH7ei1jiL._SL500_.jpg","\/41Xk3angwNL._SL500_.jpg","\/31w+Z0GDqjL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L4YZH2B","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L4YZH2B","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575GR%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20M575%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575GR%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20M575%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"iGsYa","s":"l"});</script></p>
<div id="msmaflink-iGsYa">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575OW Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad 電池寿命最大24ケ月 M575 オフホワイト 国内正規品","b":"Logicool(ロジクール)","t":"910-005984","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31TZWfvtpBL._SL500_.jpg","\/41fjcigMKdL._SL500_.jpg","\/41qB7G5zyJL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41YDK860jSL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/512Q5dD9XrL._SL500_.jpg","\/41i2CBRxA+L._SL500_.jpg","\/41sbyWz5FGL._SL500_.jpg","\/21RMPS+9pUS._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L51XVLF","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L51XVLF","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575OW%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%82%AA%E3%83%95%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575OW%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%82%AA%E3%83%95%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"1jo4B","s":"l"});</script></p>
<div id="msmaflink-1jo4B">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスマウス トラックボール 無線 M575S Bluetooth Unifying 5ボタン トラックボールマウス ワイヤレス マウス windows mac iPad Chrome 電池寿命最大24ケ月 M575 ブラック 国内正規品","b":"Logicool(ロジクール)","t":"910-005877","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ZMFwdrpML._SL500_.jpg","\/41YM7ZAL5wL._SL500_.jpg","\/41CYXNwFrBL._SL500_.jpg","\/513aEl7UqxL._SL500_.jpg","\/41rQtCWZyjL._SL500_.jpg","\/51XZhfQM7QL._SL500_.jpg","\/41cqXexnCgL._SL500_.jpg","\/41Xk3angwNL._SL500_.jpg","\/310CaQSNWNL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08L4ZR79Q","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%20%E7%84%A1%E7%B7%9A%20M575S%20Bluetooth%20Unifying%205%E3%83%9C%E3%82%BF%E3%83%B3%20%E3%83%88%E3%83%A9%E3%83%83%E3%82%AF%E3%83%9C%E3%83%BC%E3%83%AB%E3%83%9E%E3%82%A6%E3%82%B9%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%9E%E3%82%A6%E3%82%B9%20windows%20mac%20iPad%20Chrome%20%E9%9B%BB%E6%B1%A0%E5%AF%BF%E5%91%BD%E6%9C%80%E5%A4%A724%E3%82%B1%E6%9C%88%20M575%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"XbHvI","s":"l"});</script></p>
<div id="msmaflink-XbHvI">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<p> </p>
<hr>
<h2><span id="toc25">関連記事</span></h2>
<ul>
<li><a href="/trackball-mouse-beginners-guide/">【なぜ戻れない？】トラックボールマウスの中毒性がヤバい｜初心者向け完全ガイド</a> - M575を含む14機種の比較</li>
<li><a href="/trackball-upgrade-guide/">【M575から卒業】トラックボール上位機種を徹底比較</a> - M575の次の1台を探すガイド</li>
<li><a href="/trackball-type-comparison-guide/">【親指型 vs 指置き型】トラックボールはどっちを選ぶ？</a> - 操作タイプの選び方</li>
<li><a href="/trackball-mouse-wrist-pain-relief/">【腱鞘炎に悩む人へ】トラックボールで手首の痛みが消えた話</a> - 腱鞘炎対策としてのトラックボール</li>
</ul>
<p> </p>
<hr>
<p><em>最終更新日: 2026年6月14日</em><br /><em>価格は執筆時点の目安です</em></p><p>The post <a href="https://caymezon.com/logicool-m575-review/">Logicool ERGO M575 完全レビュー｜2年使ってわかった本音と真実</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/logicool-m575-review/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>在宅ワーカー向け静音メカニカルキーボードおすすめ6選【2〜5万円・2026年版】</title>
		<link>https://caymezon.com/silent-mechanical-keyboard-guide-2026/</link>
					<comments>https://caymezon.com/silent-mechanical-keyboard-guide-2026/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sat, 13 Jun 2026 08:44:34 +0000</pubDate>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Tech Tips]]></category>
		<category><![CDATA[PC周辺機器]]></category>
		<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[キーボード]]></category>
		<category><![CDATA[メカニカルキーボード]]></category>
		<category><![CDATA[在宅ワーク]]></category>
		<category><![CDATA[生産性向上]]></category>
		<category><![CDATA[静音]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20433</guid>

					<description><![CDATA[<p>ありますよね。   「あなたのキーボード音、ちょっとうるさいです」 画面越しに言われた、あの瞬間。   恥ずかしい。でも止められない。 仕事中にタイピングしないわけにいかない。   しかも在宅だと、家族の目線も気になりま [&#8230;]</p>
<p>The post <a href="https://caymezon.com/silent-mechanical-keyboard-guide-2026/">在宅ワーカー向け静音メカニカルキーボードおすすめ6選【2〜5万円・2026年版】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>ありますよね。</p>
<p> </p>
<p>「あなたのキーボード音、ちょっとうるさいです」</p>
<p>画面越しに言われた、あの瞬間。</p>
<p> </p>
<p>恥ずかしい。でも止められない。</p>
<p>仕事中にタイピングしないわけにいかない。</p>
<p> </p>
<p>しかも在宅だと、<strong>家族の目線</strong>も気になります。</p>
<p>深夜に作業していて「うるさくて眠れない」と言われた経験、ありませんか？</p>
<p> </p>
<p>私はありました。</p>
<p>それをきっかけに、<strong>静音メカニカルキーボード</strong>を真剣に調べ始めました。</p>
<p> </p>
<p>調べていくうちに気づいたこと。</p>
<p>「静音」と書いてあっても、全然静かじゃないものがある。</p>
<p>本当に静かなのは、<strong>スイッチの設計とボディ構造が両方揃っているモデル</strong>だけでした。</p>
<p> </p>
<p>この記事では、その「本当に静かなモデル」を厳選して6つ紹介します。</p>
<p><!-- ![静音メカニカルキーボード比較](images/silent-mechanical-keyboards.jpg) --></p>
<p><!-- {{template:affiliate-moshimo-kantan_link-keyboard-silent_mechanical_01}} --></p>

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">この記事で分かること</a></li><li><a href="#toc2" tabindex="0">こんな人におすすめ</a></li><li><a href="#toc3" tabindex="0">静音メカニカルキーボードの選び方</a><ol><li><a href="#toc4" tabindex="0">① スイッチの種類：「サイレント」が付いていないと意味がない</a></li><li><a href="#toc5" tabindex="0">② ボディ構造：「ガスケットマウント」が打鍵音を根本から変える</a></li><li><a href="#toc6" tabindex="0">③ 接続方式：在宅ワーカーには「3モード対応」が便利</a></li></ol></li><li><a href="#toc7" tabindex="0">【2〜5万円】静音メカニカルキーボードおすすめ6選</a><ol><li><a href="#toc8" tabindex="0">第1位：Logicool MX Mechanical Mini（KX850CL）｜ビデオ会議に最適な静音コンパクト</a></li><li><a href="#toc9" tabindex="0">第2位：Logicool MX Mechanical（KX850FL）｜テンキー付きでも静音を諦めない</a></li><li><a href="#toc10" tabindex="0">第3位：Keychron Q1 Pro｜ガスケット×サイレントで別次元の静音性</a></li><li><a href="#toc11" tabindex="0">第4位：Keychron Q3 Pro / Q3 Max｜TKLレイアウト×3接続で万能静音機</a></li><li><a href="#toc12" tabindex="0">第5位：NuPhy Air75 V3｜ロープロファイルで疲れにくい・日本語配列あり</a></li><li><a href="#toc13" tabindex="0">第6位：Keychron Q6 Max｜在宅ワークの最高到達点。静音フルサイズの頂点</a></li></ol></li><li><a href="#toc14" tabindex="0">用途別おすすめ早見表</a></li><li><a href="#toc15" tabindex="0">まとめ｜在宅ワークに静音メカニカルキーボードを選ぶ理由</a></li><li><a href="#toc16" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">この記事で分かること</span></h2>
<ul>
<li>静音メカニカルキーボードの選び方（静音スイッチ・ガスケット構造・接続方式の違い）</li>
<li>2〜5万円帯おすすめ6選の詳細比較</li>
<li>用途・シチュエーション別のおすすめ早見表</li>
<li>ビデオ会議・深夜作業でも安心して使えるモデルの見つけ方</li>
</ul>
<h2><span id="toc2">こんな人におすすめ</span></h2>
<ul>
<li>ZoomやTeamsなどビデオ会議中にタイピングする機会が多い人</li>
<li>家族と同居しており、深夜の打鍵音が気になっている人</li>
<li>メカニカルキーボードの打鍵感は欲しいが、音は極力抑えたい人</li>
<li>予算2〜5万円で「本当に良いもの」を選びたい人</li>
</ul>
<hr>
<h2><span id="toc3">静音メカニカルキーボードの選び方</span></h2>
<p>商品を見る前に、<strong>静音性を左右する3つのポイント</strong>を押さえておきましょう。</p>
<p>ここを知っておくだけで、選ぶときの迷いが大幅に減ります。</p>
<h3><span id="toc4">① スイッチの種類：「サイレント」が付いていないと意味がない</span></h3>
<p>メカニカルキーボードといえば、その独特の打鍵感が魅力です。</p>
<p>でも、普通のメカニカルスイッチは<strong>かなりうるさい。</strong></p>
<p> </p>
<p>青軸はカチカチと大きな音。赤軸も「スコスコ」という底打ち音があります。</p>
<p>静音を求めるなら、選ぶべきは<strong>サイレントスイッチ</strong>一択です。</p>
<p> </p>
<table>
<thead>
<tr>
<th>スイッチ種別</th>
<th>静音性</th>
<th>打鍵感</th>
<th>代表例</th>
</tr>
</thead>
<tbody>
<tr>
<td>通常リニア（赤軸）</td>
<td>△ 普通</td>
<td>滑らか・軽い</td>
<td>Cherry MX Red</td>
</tr>
<tr>
<td>通常タクタイル（茶軸）</td>
<td>△ 普通</td>
<td>クリック感あり</td>
<td>Cherry MX Brown</td>
</tr>
<tr>
<td>サイレントリニア</td>
<td>◎ 静か</td>
<td>滑らか・バウンス感少ない</td>
<td>Logicool GX赤軸サイレント</td>
</tr>
<tr>
<td>サイレントタクタイル</td>
<td>○ 比較的静か</td>
<td>軽いクリック感・音は抑制</td>
<td>Gateron G Pro Silent</td>
</tr>
</tbody>
</table>
<p>サイレントスイッチには、<strong>キーストローク中にダンパー（緩衝材）が付いており</strong>、底打ち・跳ね返り時の音を大幅に吸収します。</p>
<p>これがあるかないかで、静音性が全く変わります。</p>
<h3><span id="toc5">② ボディ構造：「ガスケットマウント」が打鍵音を根本から変える</span></h3>
<p>スイッチだけ静音にしても、<strong>ボディの共鳴</strong>で音が響くことがあります。</p>
<p>ここで重要なのが<strong>ガスケットマウント構造</strong>です。</p>
<p> </p>
<table>
<thead>
<tr>
<th>構造</th>
<th>説明</th>
<th>静音性への効果</th>
</tr>
</thead>
<tbody>
<tr>
<td>トレイマウント</td>
<td>スイッチ基板をケースに直接固定</td>
<td>打鍵音がケースに響きやすい</td>
</tr>
<tr>
<td>トップマウント</td>
<td>ケース上部に基板を固定</td>
<td>比較的硬めの打鍵感</td>
</tr>
<tr>
<td><strong>ガスケットマウント</strong></td>
<td><strong>基板をシリコンパーツで浮かせる</strong></td>
<td><strong>打鍵音が柔らかく吸収される</strong></td>
</tr>
</tbody>
</table>
<p>ガスケットマウントは、基板とケースの間に**柔らかいシリコンやゴムのクッション材（ガスケット）**を挟む構造です。</p>
<p>打鍵時の振動が直接ケースに伝わらないため、音が柔らかく「こもった」感じになります。</p>
<p>これが「静音メカニカル」の<strong>最上位クラス</strong>に使われる理由です。</p>
<h3><span id="toc6">③ 接続方式：在宅ワーカーには「3モード対応」が便利</span></h3>
<table>
<thead>
<tr>
<th>接続方式</th>
<th>特徴</th>
<th>向いている用途</th>
</tr>
</thead>
<tbody>
<tr>
<td>USB-C 有線</td>
<td>遅延なし・安定</td>
<td>集中作業・ゲーム兼用</td>
</tr>
<tr>
<td>Bluetooth</td>
<td>ケーブル不要・複数デバイス</td>
<td>PCとMacを切り替えて使う</td>
</tr>
<tr>
<td>2.4GHz（ドングル）</td>
<td>ワイヤレスで低遅延</td>
<td>ビデオ会議中も安定</td>
</tr>
</tbody>
</table>
<p>在宅ワーカーなら、<strong>3つすべてに対応しているモデル</strong>がもっとも使い勝手が良いです。</p>
<p>朝はPC有線、昼はMacをBluetooth、Zoomのときは2.4GHz……という使い方ができます。</p>
<p><!-- ![ガスケットマウント構造の説明図](images/gasket-mount-structure.jpg) --></p>
<hr>
<h2><span id="toc7">【2〜5万円】静音メカニカルキーボードおすすめ6選</span></h2>
<p>価格帯の低い順に紹介します。</p>
<hr>
<h3><span id="toc8">第1位：Logicool MX Mechanical Mini（KX850CL）｜ビデオ会議に最適な静音コンパクト</span></h3>
<p><!-- ![Logicool MX Mechanical Mini](images/logicool-mx-mechanical-mini.jpg) --></p>
<p><strong>価格</strong>: 約17,000〜22,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>スイッチ</td>
<td>Logicool GX赤軸リニア（サイレント）</td>
</tr>
<tr>
<td>接続方式</td>
<td>Logi Bolt（2.4GHz）+ Bluetooth（3台）+ USB-C 有線</td>
</tr>
<tr>
<td>レイアウト</td>
<td>テンキーレス（コンパクト）</td>
</tr>
<tr>
<td>バックライト</td>
<td>白色LED（proximity sensor付き）</td>
</tr>
<tr>
<td>充電</td>
<td>USB-C 充電式（最大10日間・バックライトOFF時15日）</td>
</tr>
<tr>
<td>対応OS</td>
<td>Windows / macOS 両対応</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>こんな人に最適</strong></p>
<p>「Zoomで打鍵音を指摘された」「デスクを広く使いたい」という在宅ワーカーに一番おすすめしたい1台です。</p>
<p>サイレントリニアスイッチはキーを押した際の底打ち音・跳ね返り音がほぼありません。Logi Bolt（2.4GHz）接続時の安定性は抜群で、ビデオ会議中の入力も快適。</p>
<p>テンキーレスでマウスとの距離が縮まり、長時間作業でも肩が疲れにくくなります。</p>
<p> </p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>テンキーが必要な人には物足りない（フルサイズモデルは次で紹介）</li>
<li>Logi Bolt非対応PCでBluetoothのみ使う場合、接続安定性がやや劣ることも</li>
<li>ガスケット構造ではないため、Keychron系と比べると打鍵音の「柔らかさ」は控えめ</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール KX850CL MX MECHANICAL MINI ミニマリスト ワイヤレス メカニカル パフォーマンス キーボード 赤軸 リニア テンキーレス 静かな打鍵感 Logi Bolt bluetooth Unifying非対応 薄型 無線 メカニカルキーボード windows mac chrome Android ワイヤレスキーボード KX850 国内正規品 グラファイト","b":"Logicool(ロジクール)","t":"KX850CL","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41a+xCkUz5L._SL500_.jpg","\/51eUsFl3UgL._SL500_.jpg","\/51tAaS25cPL._SL500_.jpg","\/414EZTRH09L._SL500_.jpg","\/51s8gbXH1JL._SL500_.jpg","\/4193CJ6U9PL._SL500_.jpg","\/310W8-jBMdL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0B1Q6H9X5","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0B1Q6H9X5","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20KX850CL%20MX%20MECHANICAL%20MINI%20%E3%83%9F%E3%83%8B%E3%83%9E%E3%83%AA%E3%82%B9%E3%83%88%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%20%E3%83%91%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%B3%E3%82%B9%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E8%B5%A4%E8%BB%B8%20%E3%83%AA%E3%83%8B%E3%82%A2%20%E3%83%86%E3%83%B3%E3%82%AD%E3%83%BC%E3%83%AC%E3%82%B9%20%E9%9D%99%E3%81%8B%E3%81%AA%E6%89%93%E9%8D%B5%E6%84%9F%20Logi%20Bolt%20bluetooth%20Unifying%E9%9D%9E%E5%AF%BE%E5%BF%9C%20%E8%96%84%E5%9E%8B%20%E7%84%A1%E7%B7%9A%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20windows%20mac%20chrome%20Android%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20KX850%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20KX850CL%20MX%20MECHANICAL%20MINI%20%E3%83%9F%E3%83%8B%E3%83%9E%E3%83%AA%E3%82%B9%E3%83%88%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%20%E3%83%91%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%B3%E3%82%B9%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E8%B5%A4%E8%BB%B8%20%E3%83%AA%E3%83%8B%E3%82%A2%20%E3%83%86%E3%83%B3%E3%82%AD%E3%83%BC%E3%83%AC%E3%82%B9%20%E9%9D%99%E3%81%8B%E3%81%AA%E6%89%93%E9%8D%B5%E6%84%9F%20Logi%20Bolt%20bluetooth%20Unifying%E9%9D%9E%E5%AF%BE%E5%BF%9C%20%E8%96%84%E5%9E%8B%20%E7%84%A1%E7%B7%9A%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20windows%20mac%20chrome%20Android%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20KX850%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"nL1Td","s":"s"});</script></p>
<div id="msmaflink-nL1Td">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- [▶ Amazonで見る（Logicool MX Mechanical Mini KX850CL）](https://www.amazon.co.jp/dp/B0B1Q6H9X5) --></p>
<hr>
<h3><span id="toc9">第2位：Logicool MX Mechanical（KX850FL）｜テンキー付きでも静音を諦めない</span></h3>
<p><!-- ![Logicool MX Mechanical フルサイズ](images/logicool-mx-mechanical-full.jpg) --></p>
<p><strong>価格</strong>: 約20,000〜25,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>スイッチ</td>
<td>Logicool GX赤軸リニア（サイレント）</td>
</tr>
<tr>
<td>接続方式</td>
<td>Logi Bolt（2.4GHz）+ Bluetooth（3台）+ USB-C 有線</td>
</tr>
<tr>
<td>レイアウト</td>
<td>フルサイズ（テンキー付き）</td>
</tr>
<tr>
<td>バックライト</td>
<td>白色LED（proximity sensor付き）</td>
</tr>
<tr>
<td>充電</td>
<td>USB-C 充電式（最大15日間）</td>
</tr>
<tr>
<td>対応OS</td>
<td>Windows / macOS 両対応</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>こんな人に最適</strong></p>
<p>経理・データ入力など<strong>テンキーを頻繁に使う仕事をしている在宅ワーカー</strong>に最適です。</p>
<p>MX Mechanical Miniと同じサイレントスイッチを搭載しているため、静音性は同等。「コンパクトにしたくない」「テンキーは絶対必要」という方はこちらを選んでください。</p>
<p>フルサイズでもLogi Boltによる2.4GHz接続で安定したタイピングが可能です。</p>
<p> </p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>フルサイズなのでデスク占有面積が増える</li>
<li>Miniと比べてデスクとマウスの距離が遠くなり、肩への負荷が増す場合がある</li>
<li>ガスケット構造ではないため、高級感のある打鍵音を求める人は物足りないかも</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール KX850FL MX MECHANICAL ワイヤレス メカニカル パフォーマンス キーボード 赤軸 リニア テンキー 静かな打鍵感 Logi Bolt bluetooth Unifying非対応 薄型 無線 メカニカルキーボード windows mac chrome Android ワイヤレスキーボード KX850 国内正規品 グラファイト","b":"Logicool(ロジクール)","t":"KX850FL","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41N7F4bj0jL._SL500_.jpg","\/51y3PW0VqYL._SL500_.jpg","\/51Qs3jBpsrL._SL500_.jpg","\/419FviRTcNL._SL500_.jpg","\/513H+3qvigL._SL500_.jpg","\/41rWyyQ9dYL._SL500_.jpg","\/31k3V+JsGqL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0B1Q383WZ","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0B1Q383WZ","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20KX850FL%20MX%20MECHANICAL%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%20%E3%83%91%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%B3%E3%82%B9%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E8%B5%A4%E8%BB%B8%20%E3%83%AA%E3%83%8B%E3%82%A2%20%E3%83%86%E3%83%B3%E3%82%AD%E3%83%BC%20%E9%9D%99%E3%81%8B%E3%81%AA%E6%89%93%E9%8D%B5%E6%84%9F%20Logi%20Bolt%20bluetooth%20Unifying%E9%9D%9E%E5%AF%BE%E5%BF%9C%20%E8%96%84%E5%9E%8B%20%E7%84%A1%E7%B7%9A%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20windows%20mac%20chrome%20Android%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20KX850%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20KX850FL%20MX%20MECHANICAL%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%20%E3%83%91%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%B3%E3%82%B9%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E8%B5%A4%E8%BB%B8%20%E3%83%AA%E3%83%8B%E3%82%A2%20%E3%83%86%E3%83%B3%E3%82%AD%E3%83%BC%20%E9%9D%99%E3%81%8B%E3%81%AA%E6%89%93%E9%8D%B5%E6%84%9F%20Logi%20Bolt%20bluetooth%20Unifying%E9%9D%9E%E5%AF%BE%E5%BF%9C%20%E8%96%84%E5%9E%8B%20%E7%84%A1%E7%B7%9A%20%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20windows%20mac%20chrome%20Android%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20KX850%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"LRekB","s":"s"});</script></p>
<div id="msmaflink-LRekB">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- [▶ Amazonで見る（Logicool MX Mechanical KX850FL）](https://www.amazon.co.jp/dp/B0B1Q383WZ) --></p>
<hr>
<h3><span id="toc10">第3位：Keychron Q1 Pro｜ガスケット×サイレントで別次元の静音性</span></h3>
<p><!-- ![Keychron Q1 Pro](images/keychron-q1-pro.jpg) --></p>
<p><strong>価格</strong>: 約25,000〜28,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>スイッチ</td>
<td>Gateron G Pro サイレント（ホットスワップ対応）</td>
</tr>
<tr>
<td>接続方式</td>
<td>Bluetooth 5.1（3台）+ USB-C 有線</td>
</tr>
<tr>
<td>レイアウト</td>
<td>75%（コンパクト、F列あり）</td>
</tr>
<tr>
<td>ボディ</td>
<td>フルアルミニウム CNCボディ</td>
</tr>
<tr>
<td>マウント方式</td>
<td>ガスケットマウント</td>
</tr>
<tr>
<td>カスタマイズ</td>
<td>QMK / VIA 対応</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>こんな人に最適</strong></p>
<p>「本当に静かなメカニカルキーボードが欲しい。打鍵感にも妥協したくない」という方はここから選ぶべきです。</p>
<p>フルアルミのガスケットマウントボディ＋Gateron G Proサイレントスイッチの組み合わせは、打鍵音の質が根本的に違います。底打ちしてもケースに音が響かず、「スッ」と静かに収まる感覚。</p>
<p>ホットスワップ対応なので、スイッチを別のサイレント系に換装して自分好みの打鍵感を追求できます。QMK/VIA対応でキーマップも自由にカスタマイズ可能。</p>
<p> </p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>2.4GHzドングル非対応（BluetoothかUSB-C有線のみ）</li>
<li>英語配列中心のため、日本語配列に慣れた人は記号キーの位置に戸惑う</li>
<li>重量があるため持ち運びには向かない</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"【国内正規品】Keychron Q1 Pro QMK\/VIAカスタムワイヤレス・カスタムメカニカルキーボード ノブバージョン\/カーボンブラック\/USレイアウト\/RGBライト\/ホットスワップ対応Keychron K Proメカニカルスイッチ\/フルアルミニウム\/有線及びBluetooth無線\/Mac Windows Linux (Keychron K Proメカニカル茶軸（ホットスワップ）)","b":"Keychron","t":"Q1P-M3","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41KUw-cbHAL._SL500_.jpg","\/41a+vV9avKL._SL500_.jpg","\/514rE2dSrxL._SL500_.jpg","\/41qwo+wFSnL._SL500_.jpg","\/51+nxFxzGeL._SL500_.jpg","\/41-jyTvxRlL._SL500_.jpg","\/41tL6DAAcrL._SL500_.jpg","\/41IoFEduL7L._SL500_.jpg","\/51Np0C172VL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0C2125FZK","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0C2125FZK","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%80%90%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%E3%80%91Keychron%20Q1%20Pro%20QMK%2FVIA%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E3%83%8E%E3%83%96%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%2F%E3%82%AB%E3%83%BC%E3%83%9C%E3%83%B3%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%2FUS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%2FRGB%E3%83%A9%E3%82%A4%E3%83%88%2F%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9CKeychron%20K%20Pro%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E3%83%95%E3%83%AB%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%2F%E6%9C%89%E7%B7%9A%E5%8F%8A%E3%81%B3Bluetooth%E7%84%A1%E7%B7%9A%2FMac%20Windows%20Linux%20(Keychron%20K%20Pro%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E8%8C%B6%E8%BB%B8%EF%BC%88%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%EF%BC%89)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%80%90%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%E3%80%91Keychron%20Q1%20Pro%20QMK%2FVIA%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E3%83%8E%E3%83%96%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%2F%E3%82%AB%E3%83%BC%E3%83%9C%E3%83%B3%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%2FUS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%2FRGB%E3%83%A9%E3%82%A4%E3%83%88%2F%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9CKeychron%20K%20Pro%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E3%83%95%E3%83%AB%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%2F%E6%9C%89%E7%B7%9A%E5%8F%8A%E3%81%B3Bluetooth%E7%84%A1%E7%B7%9A%2FMac%20Windows%20Linux%20(Keychron%20K%20Pro%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E8%8C%B6%E8%BB%B8%EF%BC%88%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%EF%BC%89)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"OkruZ","s":"s"});</script></p>
<div id="msmaflink-OkruZ">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- [▶ Amazonで見る（Keychron Q1 Pro）](https://www.amazon.co.jp/dp/B0C2125FZK) --></p>
<hr>
<h3><span id="toc11">第4位：Keychron Q3 Pro / Q3 Max｜TKLレイアウト×3接続で万能静音機</span></h3>
<p><!-- ![Keychron Q3 Pro / Q3 Max](images/keychron-q3-pro-max.jpg) --></p>
<p><strong>価格</strong>: 約24,000〜30,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>スイッチ</td>
<td>Gateron G Pro サイレント（ホットスワップ対応）</td>
</tr>
<tr>
<td>接続方式</td>
<td>Bluetooth 5.1 + USB-C 有線（Pro）/ + 2.4GHz（Max）</td>
</tr>
<tr>
<td>レイアウト</td>
<td>TKL / 80%（テンキーレス・F列あり）</td>
</tr>
<tr>
<td>ボディ</td>
<td>フルアルミニウム CNCボディ</td>
</tr>
<tr>
<td>マウント方式</td>
<td>ガスケットマウント</td>
</tr>
<tr>
<td>カスタマイズ</td>
<td>QMK / VIA 対応</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>こんな人に最適</strong></p>
<p>「テンキーレスで省スペースに使いたい。でもF列は欲しい」「複数の接続方式を使い分けたい」という方に向けた1台です。</p>
<p>Q1 Proが75%レイアウトなのに対し、Q3はTKL（80%）レイアウト。F列とDeleteキー周辺の配置が標準的で、乗り換えたときの違和感が少ないのが特徴です。</p>
<p><strong>Q3 Max</strong>を選べば2.4GHz接続にも対応。ビデオ会議中の入力で安定性を求めるなら、Maxシリーズがお買い得です。</p>
<p> </p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>Q3 MaxはQ3 Proより価格帯がやや高め</li>
<li>日本語（JIS）配列モデルの入手がしにくい場合がある</li>
<li>英語配列に不慣れな場合は初期設定や記号入力に慣れが必要</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"国内正規品 Keychron Q3 Max QMK\/VIAワイヤレス・カスタムメカニカルキーボード、2.4 GHz\/Bluetooth 5.1\/有線接続、JISレイアウト、RGBライト、ホットスワップ対応Gateron Jupiterメカニカルスイッチ\/フルアルミニウム\/Mac Windows対応 (シェルホワイト, Gateron Jupiterメカニカルバナナ軸（ホットスワップ）)","b":"Keychron","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41ghCzbjWlL._SL500_.jpg","\/41jqxekd93L._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0D8QGWPR5","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0D8QGWPR5","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20Keychron%20Q3%20Max%20QMK%2FVIA%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%80%812.4%20GHz%2FBluetooth%205.1%2F%E6%9C%89%E7%B7%9A%E6%8E%A5%E7%B6%9A%E3%80%81JIS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%E3%80%81RGB%E3%83%A9%E3%82%A4%E3%83%88%E3%80%81%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9CGateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E3%83%95%E3%83%AB%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%2FMac%20Windows%E5%AF%BE%E5%BF%9C%20(%E3%82%B7%E3%82%A7%E3%83%AB%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%2C%20Gateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%83%90%E3%83%8A%E3%83%8A%E8%BB%B8%EF%BC%88%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%EF%BC%89)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20Keychron%20Q3%20Max%20QMK%2FVIA%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%80%812.4%20GHz%2FBluetooth%205.1%2F%E6%9C%89%E7%B7%9A%E6%8E%A5%E7%B6%9A%E3%80%81JIS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%E3%80%81RGB%E3%83%A9%E3%82%A4%E3%83%88%E3%80%81%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9CGateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E3%83%95%E3%83%AB%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%2FMac%20Windows%E5%AF%BE%E5%BF%9C%20(%E3%82%B7%E3%82%A7%E3%83%AB%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%2C%20Gateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%83%90%E3%83%8A%E3%83%8A%E8%BB%B8%EF%BC%88%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%EF%BC%89)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"yB8Ra","s":"s"});</script></p>
<div id="msmaflink-yB8Ra">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- [▶ Amazonで見る（Keychron Q3 Max）](https://www.amazon.co.jp/dp/B0D8QGWPR5) --></p>
<hr>
<h3><span id="toc12">第5位：NuPhy Air75 V3｜ロープロファイルで疲れにくい・日本語配列あり</span></h3>
<p><!-- ![NuPhy Air75 V3](images/nuphy-air75-v3.jpg) --></p>
<p><strong>価格</strong>: 約25,740〜28,600円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>スイッチ</td>
<td>Blush nano サイレントスイッチ（ロープロファイル・タクタイル静音）</td>
</tr>
<tr>
<td>接続方式</td>
<td>Bluetooth 5.1（4台）+ 2.4GHz + USB-C 有線</td>
</tr>
<tr>
<td>レイアウト</td>
<td>75%（日本語JIS配列対応あり）</td>
</tr>
<tr>
<td>ボディ</td>
<td>アルミフレーム</td>
</tr>
<tr>
<td>バックライト</td>
<td>RGB LED</td>
</tr>
<tr>
<td>特徴</td>
<td>ロープロファイル（薄型）</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>こんな人に最適</strong></p>
<p>「<strong>ノートPCに近い打鍵感が好き</strong>」「日本語配列で静音メカニカルを探している」という方への答えがここにあります。</p>
<p>ロープロファイルスイッチはキーストロークが浅く、手首の角度が自然なため長時間作業でも疲れにくいのが特長。Blush nano サイレントスイッチはタクタイル（軽いクリック感）でありながら、音は十分に抑えられています。</p>
<p>4台のBluetooth接続＋2.4GHz対応で、複数デバイスを切り替えながら使う在宅ワーカーに最適です。</p>
<p> </p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>ロープロファイルが好みでない方（しっかりした打鍵感を求める方）には物足りないかも</li>
<li>ガスケットマウントではないため、Keychron系と比べると打鍵音の吸収感は控えめ</li>
<li>Keychron QシリーズほどQMK/VIAのカスタマイズ自由度は高くない</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"NuPhy Air75 V3 JIS 日本語配列 ホットスワップ対応 ワイヤレスメカニカルキーボード（88キー・75%配列・ノブ付き・RGBバックライト・ガスケットマウント・Bluetooth\/2.4GHz\/USB-C対応） (ホワイト, Brown nano)","b":"nuphy","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/31rnzQCozLL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0H3H89K4W","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0H3H89K4W","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/NuPhy%20Air75%20V3%20JIS%20%E6%97%A5%E6%9C%AC%E8%AA%9E%E9%85%8D%E5%88%97%20%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9C%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%EF%BC%8888%E3%82%AD%E3%83%BC%E3%83%BB75%25%E9%85%8D%E5%88%97%E3%83%BB%E3%83%8E%E3%83%96%E4%BB%98%E3%81%8D%E3%83%BBRGB%E3%83%90%E3%83%83%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%88%E3%83%BB%E3%82%AC%E3%82%B9%E3%82%B1%E3%83%83%E3%83%88%E3%83%9E%E3%82%A6%E3%83%B3%E3%83%88%E3%83%BBBluetooth%2F2.4GHz%2FUSB-C%E5%AF%BE%E5%BF%9C%EF%BC%89%20(%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%2C%20Brown%20nano)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=NuPhy%20Air75%20V3%20JIS%20%E6%97%A5%E6%9C%AC%E8%AA%9E%E9%85%8D%E5%88%97%20%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9C%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%EF%BC%8888%E3%82%AD%E3%83%BC%E3%83%BB75%25%E9%85%8D%E5%88%97%E3%83%BB%E3%83%8E%E3%83%96%E4%BB%98%E3%81%8D%E3%83%BBRGB%E3%83%90%E3%83%83%E3%82%AF%E3%83%A9%E3%82%A4%E3%83%88%E3%83%BB%E3%82%AC%E3%82%B9%E3%82%B1%E3%83%83%E3%83%88%E3%83%9E%E3%82%A6%E3%83%B3%E3%83%88%E3%83%BBBluetooth%2F2.4GHz%2FUSB-C%E5%AF%BE%E5%BF%9C%EF%BC%89%20(%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%2C%20Brown%20nano)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"DHUE3","s":"s"});</script></p>
<div id="msmaflink-DHUE3">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- [▶ Amazonで見る（NuPhy Air75 V3）](https://www.amazon.co.jp/dp/B0H3H89K4W) --></p>
<hr>
<h3><span id="toc13">第6位：Keychron Q6 Max｜在宅ワークの最高到達点。静音フルサイズの頂点</span></h3>
<p><!-- ![Keychron Q6 Max](images/keychron-q6-max.jpg) --></p>
<p><strong>価格</strong>: 約43,890円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>スイッチ</td>
<td>Gateron サイレントスイッチ（ホットスワップ対応）</td>
</tr>
<tr>
<td>接続方式</td>
<td>Bluetooth 5.1（3台）+ 2.4GHz + USB-C 有線</td>
</tr>
<tr>
<td>レイアウト</td>
<td>フルサイズ（テンキー付き）</td>
</tr>
<tr>
<td>ボディ</td>
<td>フルアルミニウム CNCボディ</td>
</tr>
<tr>
<td>マウント方式</td>
<td>ダブルガスケットマウント</td>
</tr>
<tr>
<td>カスタマイズ</td>
<td>QMK / VIA 対応</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>こんな人に最適</strong></p>
<p>「予算はある。最高の1台が欲しい。」そういう方のためのキーボードです。</p>
<p>ダブルガスケットマウント（ガスケットが2重）＋サイレントスイッチ＋フルアルミCNCボディの組み合わせは、静音性・打鍵感・質感すべてにおいてトップクラス。</p>
<p>テンキー付きフルサイズなのに、このクラスの静音性を実現しているモデルは他にほとんどありません。</p>
<p>3接続方式対応なので、有線・Bluetooth・2.4GHzを状況に応じて使い分けられます。「一生使えるキーボード」を求めるなら、これが答えです。</p>
<p> </p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>価格が5万円弱と、気軽に手を出しにくい</li>
<li>フルアルミボディは高品質ですが、重量がかなりあるため持ち運びには不向き</li>
<li>英語配列中心のため、日本語配列に慣れた方は注意が必要</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"【国内正規品】Keychron Q6 Max QMK\/VIAワイヤレス・カスタムメカニカルキーボード、フルサイズ、2.4 GHz\/Bluetooth\/有線接続、JISレイアウト、RGBライト、ホットスワップ対応Gateron Jupiterメカニカルスイッチ\/フルアルミニウム\/Mac Windows (シェルホワイト, Gateron Jupiterメカニカル茶軸（ホットスワップ）)","b":"Keychron","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41zo0r7aQ5L._SL500_.jpg","\/41bPMucA3hL._SL500_.jpg","\/414rzt51DQL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0DJ98GG7R","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0DJ98GG7R","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%80%90%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%E3%80%91Keychron%20Q6%20Max%20QMK%2FVIA%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%80%81%E3%83%95%E3%83%AB%E3%82%B5%E3%82%A4%E3%82%BA%E3%80%812.4%20GHz%2FBluetooth%2F%E6%9C%89%E7%B7%9A%E6%8E%A5%E7%B6%9A%E3%80%81JIS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%E3%80%81RGB%E3%83%A9%E3%82%A4%E3%83%88%E3%80%81%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9CGateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E3%83%95%E3%83%AB%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%2FMac%20Windows%20(%E3%82%B7%E3%82%A7%E3%83%AB%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%2C%20Gateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E8%8C%B6%E8%BB%B8%EF%BC%88%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%EF%BC%89)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%80%90%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%E3%80%91Keychron%20Q6%20Max%20QMK%2FVIA%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%80%81%E3%83%95%E3%83%AB%E3%82%B5%E3%82%A4%E3%82%BA%E3%80%812.4%20GHz%2FBluetooth%2F%E6%9C%89%E7%B7%9A%E6%8E%A5%E7%B6%9A%E3%80%81JIS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%E3%80%81RGB%E3%83%A9%E3%82%A4%E3%83%88%E3%80%81%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9CGateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E3%83%95%E3%83%AB%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%2FMac%20Windows%20(%E3%82%B7%E3%82%A7%E3%83%AB%E3%83%9B%E3%83%AF%E3%82%A4%E3%83%88%2C%20Gateron%20Jupiter%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E8%8C%B6%E8%BB%B8%EF%BC%88%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%EF%BC%89)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"MfTLv","s":"s"});</script></p>
<div id="msmaflink-MfTLv">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --><br />
<!-- [▶ Amazonで見る（Keychron Q6 Max）](https://www.amazon.co.jp/dp/B0DJ98GG7R) --></p>
<hr>
<h2><span id="toc14">用途別おすすめ早見表</span></h2>
<p>迷ったときはこの表を参考にしてください。</p>
<table>
<thead>
<tr>
<th>シチュエーション</th>
<th>おすすめモデル</th>
<th>理由</th>
</tr>
</thead>
<tbody>
<tr>
<td>Zoom会議中もタイピングが多い</td>
<td><strong>MX Mechanical Mini</strong></td>
<td>Logi Bolt（2.4GHz）で安定・静音リニア</td>
</tr>
<tr>
<td>テンキー必須・静音も欲しい</td>
<td><strong>MX Mechanical（フルサイズ）</strong></td>
<td>テンキー付き静音リニア・Logi Bolt対応</td>
</tr>
<tr>
<td>打鍵音の質にこだわりたい</td>
<td><strong>Keychron Q1 Pro</strong></td>
<td>ガスケット×サイレントの本格静音</td>
</tr>
<tr>
<td>TKLで省スペース・3接続</td>
<td><strong>Keychron Q3 Max</strong></td>
<td>TKLガスケット・2.4GHz対応</td>
</tr>
<tr>
<td>疲れにくさ重視・日本語配列</td>
<td><strong>NuPhy Air75 V3</strong></td>
<td>ロープロファイル・JIS配列・4台Bluetooth</td>
</tr>
<tr>
<td>予算最大・最高の1台</td>
<td><strong>Keychron Q6 Max</strong></td>
<td>ダブルガスケット・フルサイズ・全接続対応</td>
</tr>
</tbody>
</table>
<p> </p>
<p><strong>価格帯別まとめ</strong></p>
<table>
<thead>
<tr>
<th>予算</th>
<th>おすすめ</th>
</tr>
</thead>
<tbody>
<tr>
<td>〜2万円</td>
<td>MX Mechanical Mini</td>
</tr>
<tr>
<td>2〜3万円</td>
<td>MX Mechanical（フルサイズ）/ Keychron Q1 Pro / Q3 Max</td>
</tr>
<tr>
<td>3〜4万円</td>
<td>NuPhy Air75 V3</td>
</tr>
<tr>
<td>4〜5万円</td>
<td>Keychron Q6 Max</td>
</tr>
</tbody>
</table>
<hr>
<h2><span id="toc15">まとめ｜在宅ワークに静音メカニカルキーボードを選ぶ理由</span></h2>
<p>改めて、静音メカニカルキーボードが在宅ワーカーに必要な理由を整理します。</p>
<p> </p>
<p><strong>メカニカルの打鍵感</strong>は、長時間作業での疲れ方が違います。</p>
<p>適度な反発と滑らかさで、指への負荷が軽減される。</p>
<p>これはメンブレンでは味わえない感覚です。</p>
<p> </p>
<p><strong>でも普通のメカニカルはうるさい。</strong></p>
<p>ビデオ会議中に相手に指摘される。家族に怒られる。深夜に使えない。</p>
<p>そういう問題が、<strong>サイレントスイッチ＋ガスケット構造</strong>で解決します。</p>
<p> </p>
<p>この記事で紹介した6選は、それぞれ用途や価格に応じた「最適解」を選んでいます。</p>
<p>まずは予算と使い方を確認して、自分に合った1台を見つけてください。</p>
<p> </p>
<p><strong>静音メカニカルキーボードに替えた翌日のZoom。</strong></p>
<p>「あれ、キーボード音しなくなりましたね」と言われる。</p>
<p>あの瞬間の達成感、ぜひ味わってください。</p>
<hr>
<h2><span id="toc16">関連記事</span></h2>
<ul>
<li><a href="/keyboard-cospa-beginners-guide-2026/">まずキーボードの基本を知りたい方はこちら</a></li>
<li><a href="/desk-environment-budget-guide/">デスク環境全体を整えたい方はこちら</a></li>
<li><a href="/trackball-mouse-beginners-guide/">マウスも一緒に見直したい方はこちら</a></li>
</ul><p>The post <a href="https://caymezon.com/silent-mechanical-keyboard-guide-2026/">在宅ワーカー向け静音メカニカルキーボードおすすめ6選【2〜5万円・2026年版】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/silent-mechanical-keyboard-guide-2026/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PCキーボード初心者向けおすすめ6選【1万円以下・コスパ重視・2026年版】</title>
		<link>https://caymezon.com/keyboard-cospa-beginners-guide-2026/</link>
					<comments>https://caymezon.com/keyboard-cospa-beginners-guide-2026/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sat, 13 Jun 2026 05:28:49 +0000</pubDate>
				<category><![CDATA[Others]]></category>
		<category><![CDATA[Tech Tips]]></category>
		<category><![CDATA[PC周辺機器]]></category>
		<category><![CDATA[ガジェット]]></category>
		<category><![CDATA[キーボード]]></category>
		<category><![CDATA[コスパ]]></category>
		<category><![CDATA[作業効率化]]></category>
		<category><![CDATA[初心者]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20430</guid>

					<description><![CDATA[<p>そう思っていませんか？   「PCに付属してたやつで十分でしょ」 「全部キーボードって同じじゃないの？」   私も最初はそう思っていました。 でも、ちゃんと選んだキーボードに替えた瞬間、考えが変わりました。   「あれ、 [&#8230;]</p>
<p>The post <a href="https://caymezon.com/keyboard-cospa-beginners-guide-2026/">PCキーボード初心者向けおすすめ6選【1万円以下・コスパ重視・2026年版】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>そう思っていませんか？</p>
<p> </p>
<p>「PCに付属してたやつで十分でしょ」</p>
<p>「全部キーボードって同じじゃないの？」</p>
<p> </p>
<p>私も最初はそう思っていました。</p>
<p>でも、<strong>ちゃんと選んだキーボードに替えた瞬間、考えが変わりました。</strong></p>
<p> </p>
<p>「あれ、タイピングってこんなに気持ちいいの？」</p>
<p>「疲れにくくなった気がする」</p>
<p>「仕事のやる気が上がった（笑）」</p>
<p> </p>
<p>キーボードは毎日何千回も触れる道具です。</p>
<p>適当に選んで後悔するより、<strong>最初からちゃんと選んだほうが絶対にいい。</strong></p>
<p> </p>
<p>この記事では、<strong>1万円以下・コスパ重視・タイピング初心者向け</strong>に厳選した6モデルを徹底比較します。</p>
<p><!-- ![キーボード比較イメージ](images/keyboard-lineup.jpg) --></p>
<p><!-- {{template:affiliate-moshimo-kantan_link-book-it-keyboard_01}} --></p>

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-10" checked><label class="toc-title" for="toc-checkbox-10">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">この記事で分かること</a></li><li><a href="#toc2" tabindex="0">こんな人におすすめ</a></li><li><a href="#toc3" tabindex="0">まず知っておきたい選び方の基本</a><ol><li><a href="#toc4" tabindex="0">① 接続方式：有線 vs ワイヤレス</a></li><li><a href="#toc5" tabindex="0">② キースイッチ：打鍵感の核心</a></li><li><a href="#toc6" tabindex="0">③ 配列：日本語 vs 英語</a></li></ol></li><li><a href="#toc7" tabindex="0">【1万円以下】コスパ最強キーボード6選</a><ol><li><a href="#toc8" tabindex="0">第1位：BUFFALO BSKBU105BK｜とにかく安く始めたい人の最終兵器</a></li><li><a href="#toc9" tabindex="0">第2位：Logicool K120｜有線定番・迷ったらこれ</a></li><li><a href="#toc10" tabindex="0">第3位：ELECOM TK-FBP102｜複数デバイス派のBluetoothエントリー</a></li><li><a href="#toc11" tabindex="0">第4位：Logicool K295｜ワイヤレス静音の最高コスパ</a></li><li><a href="#toc12" tabindex="0">第5位：Logicool G213r｜仕事もゲームも兼用したい人の最適解</a></li><li><a href="#toc13" tabindex="0">第6位：Keychron K2 V2｜1万円以下でメカニカルを体験したい人へ</a></li></ol></li><li><a href="#toc14" tabindex="0">用途別おすすめ早見表</a></li><li><a href="#toc15" tabindex="0">初心者が陥りがちな失敗</a></li><li><a href="#toc16" tabindex="0">まとめ｜1万円以下で自分に合うPCキーボードを見つけよう</a></li><li><a href="#toc17" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">この記事で分かること</span></h2>
<ul>
<li>キーボードの基本的な選び方（接続方式・スイッチの種類）</li>
<li>1万円以下おすすめ6選の詳細比較</li>
<li>用途・目的別のおすすめ早見表</li>
<li>初心者が陥りがちな失敗と回避法</li>
</ul>
<h2><span id="toc2">こんな人におすすめ</span></h2>
<ul>
<li>PCキーボードを初めて買う人</li>
<li>付属品・激安品から卒業したい人</li>
<li>予算1万円以内でできるだけ良いものが欲しい人</li>
<li>ワイヤレス・静音・メカニカルなど気になるキーワードがある人</li>
</ul>
<hr>
<h2><span id="toc3">まず知っておきたい選び方の基本</span></h2>
<p>商品を見る前に、3つの基本を押さえておくと迷いが減ります。</p>
<h3><span id="toc4">① 接続方式：有線 vs ワイヤレス</span></h3>
<table>
<thead>
<tr>
<th></th>
<th>有線（USB）</th>
<th>ワイヤレス（Bluetooth/レシーバー）</th>
</tr>
</thead>
<tbody>
<tr>
<td>価格</td>
<td>安い</td>
<td>やや高い</td>
</tr>
<tr>
<td>遅延</td>
<td>なし</td>
<td>ほぼなし（日常使い）</td>
</tr>
<tr>
<td>充電・電池</td>
<td>不要</td>
<td>必要（電池 or 充電）</td>
</tr>
<tr>
<td>向いてる人</td>
<td>デスク固定・シンプル派</td>
<td>すっきり使いたい・複数デバイス派</td>
</tr>
</tbody>
</table>
<p>初めての1台なら<strong>有線</strong>がトラブルが少なくておすすめです。</p>
<h3><span id="toc5">② キースイッチ：打鍵感の核心</span></h3>
<table>
<thead>
<tr>
<th>スイッチ種別</th>
<th>打鍵感</th>
<th>音</th>
<th>価格帯</th>
</tr>
</thead>
<tbody>
<tr>
<td>メンブレン</td>
<td>柔らかい・沈む感じ</td>
<td>静か〜普通</td>
<td>安い</td>
</tr>
<tr>
<td>パンタグラフ</td>
<td>薄い・軽い</td>
<td>静か</td>
<td>安〜中</td>
</tr>
<tr>
<td>メカニカル（赤軸）</td>
<td>滑らか・反発あり</td>
<td>普通</td>
<td>中〜高</td>
</tr>
<tr>
<td>メカニカル（青軸）</td>
<td>カチカチ・爽快</td>
<td>大きい</td>
<td>中〜高</td>
</tr>
<tr>
<td>メカニカル（茶軸）</td>
<td>赤と青の中間</td>
<td>中程度</td>
<td>中〜高</td>
</tr>
</tbody>
</table>
<p>初心者は<strong>メンブレン</strong>から入るのが無難です。使ってみてカチカチが気になり始めたら、メカニカルへの移行を検討するのが自然な流れです。</p>
<h3><span id="toc6">③ 配列：日本語 vs 英語</span></h3>
<p>タイピング初心者は迷わず<strong>日本語（JIS）配列</strong>を選んでください。</p>
<p>英語配列は記号キーの位置が大きく異なるため、日本語入力に慣れた状態から切り替えると混乱します。</p>
<p><!-- ![キーボード選び方チャート](images/keyboard-choice-chart.jpg) --></p>
<hr>
<h2><span id="toc7">【1万円以下】コスパ最強キーボード6選</span></h2>
<p>価格帯の低い順に紹介します。</p>
<hr>
<h3><span id="toc8">第1位：BUFFALO BSKBU105BK｜とにかく安く始めたい人の最終兵器</span></h3>
<p><!-- ![BUFFALO BSKBU105BK](images/buffalo-bskbu105bk.jpg) --></p>
<p><strong>価格</strong>: 約1,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>接続方式</td>
<td>USB有線</td>
</tr>
<tr>
<td>配列</td>
<td>日本語JIS 108キー（テンキー付き）</td>
</tr>
<tr>
<td>スイッチ</td>
<td>メンブレン</td>
</tr>
<tr>
<td>キーストローク</td>
<td>3mm</td>
</tr>
</tbody>
</table>
<p><strong>こんな人に最適</strong><br />「とりあえず使えればいい」「予備・サブ機が欲しい」人の最適解。1,000円以下で買えてテンキー付き・レーザー刻印（文字が消えにくい）・水抜き穴と、必要なものは一通り揃っています。</p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>本体のガタつきが気になる</li>
<li>メンブレン特有の硬めの反発で長時間使用は疲れやすい</li>
<li>デザイン・質感はチープ</li>
</ul>
<p><strong>Amazonレビュー評価</strong>: ★3〜4</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"バッファロー BUFFALO USB接続 有線スタンダードキーボード ブラック BSKBU105BK【Windows\/PS4\/Nintendo Switch対応】","b":"バッファロー","t":"BSKBU105BK","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/412wEaQLh8L._SL500_.jpg","\/41hoFsXO91L._SL500_.jpg","\/41NWTF-5vtL._SL500_.jpg","\/51MvhtriFKL._SL500_.jpg","\/41T7kzGWT5L._SL500_.jpg","\/417XKkPS3xL._SL500_.jpg","\/51KVeHzw8xL._SL500_.jpg","\/51B2Zduj4pL._SL500_.jpg","\/31FY5lAgklL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B07JGP94GS","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B07JGP94GS","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%83%AD%E3%83%BC%20BUFFALO%20USB%E6%8E%A5%E7%B6%9A%20%E6%9C%89%E7%B7%9A%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%80%E3%83%BC%E3%83%89%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20BSKBU105BK%E3%80%90Windows%2FPS4%2FNintendo%20Switch%E5%AF%BE%E5%BF%9C%E3%80%91\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%90%E3%83%83%E3%83%95%E3%82%A1%E3%83%AD%E3%83%BC%20BUFFALO%20USB%E6%8E%A5%E7%B6%9A%20%E6%9C%89%E7%B7%9A%E3%82%B9%E3%82%BF%E3%83%B3%E3%83%80%E3%83%BC%E3%83%89%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20BSKBU105BK%E3%80%90Windows%2FPS4%2FNintendo%20Switch%E5%AF%BE%E5%BF%9C%E3%80%91","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"KpF7G","s":"s"});</script></p>
<div id="msmaflink-KpF7G">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h3><span id="toc9">第2位：Logicool K120｜有線定番・迷ったらこれ</span></h3>
<p><!-- ![Logicool K120](images/logicool-k120.jpg) --></p>
<p><strong>価格</strong>: 約2,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>接続方式</td>
<td>USB有線（ケーブル長1.5m）</td>
</tr>
<tr>
<td>配列</td>
<td>日本語109キー（テンキー付き）</td>
</tr>
<tr>
<td>スイッチ</td>
<td>メンブレン（薄型）</td>
</tr>
<tr>
<td>キーストローク</td>
<td>2.8mm</td>
</tr>
<tr>
<td>耐久性</td>
<td>最大1,000万回・耐水設計</td>
</tr>
<tr>
<td>保証</td>
<td>3年</td>
</tr>
</tbody>
</table>
<p><strong>こんな人に最適</strong><br />Amazonのキーボードカテゴリで長年ベストセラー常連の理由があります。「安くて長持ち・挿すだけで使える」シンプルさが最大の強み。法人・オフィスでの大量導入実績もあり、信頼性は折り紙付きです。</p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>打鍵音が「カタカタ」と大きめ（静音派には不向き）</li>
<li>本体が軽すぎてズレやすい</li>
<li>長年使うと印字が薄くなる</li>
</ul>
<p><strong>Amazonレビュー評価</strong>: ★4.0〜4.2（2,900件超）</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール 有線 キーボード 耐水 K120 USB接続 日本語配列 テンキー 薄型 有線キーボード 国内正規品","b":"Logicool(ロジクール)","t":"920-005005","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/51HJnic+-1L._SL500_.jpg","\/516sKOdMRoL._SL500_.jpg","\/51USaA3OtpL._SL500_.jpg","\/51bf3r4fubL._SL500_.jpg","\/51a-Uv+ZuCL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B00BJZ2JWC","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B00BJZ2JWC","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E6%9C%89%E7%B7%9A%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E8%80%90%E6%B0%B4%20K120%20USB%E6%8E%A5%E7%B6%9A%20%E6%97%A5%E6%9C%AC%E8%AA%9E%E9%85%8D%E5%88%97%20%E3%83%86%E3%83%B3%E3%82%AD%E3%83%BC%20%E8%96%84%E5%9E%8B%20%E6%9C%89%E7%B7%9A%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E6%9C%89%E7%B7%9A%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E8%80%90%E6%B0%B4%20K120%20USB%E6%8E%A5%E7%B6%9A%20%E6%97%A5%E6%9C%AC%E8%AA%9E%E9%85%8D%E5%88%97%20%E3%83%86%E3%83%B3%E3%82%AD%E3%83%BC%20%E8%96%84%E5%9E%8B%20%E6%9C%89%E7%B7%9A%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"rKyzN","s":"s"});</script></p>
<div id="msmaflink-rKyzN">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h3><span id="toc10">第3位：ELECOM TK-FBP102｜複数デバイス派のBluetoothエントリー</span></h3>
<p><!-- ![ELECOM TK-FBP102](images/elecom-tk-fbp102.jpg) --></p>
<p><strong>価格</strong>: 約2,500円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>接続方式</td>
<td>Bluetooth 3.0（最大3台マルチペアリング）</td>
</tr>
<tr>
<td>配列</td>
<td>日本語78キー（テンキーレス・コンパクト）</td>
</tr>
<tr>
<td>スイッチ</td>
<td>パンタグラフ（キーストローク2.0mm）</td>
</tr>
<tr>
<td>サイズ・重量</td>
<td>298×115×6.5mm・264g</td>
</tr>
<tr>
<td>対応OS</td>
<td>Windows / Mac / iOS / Android</td>
</tr>
</tbody>
</table>
<p><strong>こんな人に最適</strong><br />PCだけでなくiPadやスマホでも使いたい、複数デバイスを持ち歩いている人向け。ボタン1つで3台の切り替えができ、薄さ6.5mmで鞄に入れても邪魔になりません。</p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>テンキーレスのため数字入力が多い人には不便</li>
<li>プラスチック感が強くキーが経年でゆるくなることも</li>
<li>一部キーの配置がやや変則的で慣れが必要</li>
</ul>
<p><strong>Amazonレビュー評価</strong>: ★3.7（3,400件超）</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"エレコム キーボード Bluetooth パンタグラフ ミニキーボード Windows・Mac・iOS・Android対応 【軽量モデル】 ブラック TK-FBP102XBK","b":"エレコム(ELECOM)","t":"TK-FBP102XBK","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41x9iBQMHmL._SL500_.jpg","\/51yvkT-nLfL._SL500_.jpg","\/510AhizTMAL._SL500_.jpg","\/51SG6xUR1TL._SL500_.jpg","\/51Ir+jk2WwL._SL500_.jpg","\/51jFUwSv6vL._SL500_.jpg","\/51cSP3WI6PL._SL500_.jpg","\/51VNgwJI3tL._SL500_.jpg","\/51fSW1IlDqL._SL500_.jpg","\/51lzd7nfLlL._SL500_.jpg","\/51XsG5os68L._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B077S995QB","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B077S995QB","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20Bluetooth%20%E3%83%91%E3%83%B3%E3%82%BF%E3%82%B0%E3%83%A9%E3%83%95%20%E3%83%9F%E3%83%8B%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20Windows%E3%83%BBMac%E3%83%BBiOS%E3%83%BBAndroid%E5%AF%BE%E5%BF%9C%20%E3%80%90%E8%BB%BD%E9%87%8F%E3%83%A2%E3%83%87%E3%83%AB%E3%80%91%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20TK-FBP102XBK\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%82%A8%E3%83%AC%E3%82%B3%E3%83%A0%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20Bluetooth%20%E3%83%91%E3%83%B3%E3%82%BF%E3%82%B0%E3%83%A9%E3%83%95%20%E3%83%9F%E3%83%8B%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20Windows%E3%83%BBMac%E3%83%BBiOS%E3%83%BBAndroid%E5%AF%BE%E5%BF%9C%20%E3%80%90%E8%BB%BD%E9%87%8F%E3%83%A2%E3%83%87%E3%83%AB%E3%80%91%20%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%20TK-FBP102XBK","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"ciEK5","s":"s"});</script></p>
<div id="msmaflink-ciEK5">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h3><span id="toc11">第4位：Logicool K295｜ワイヤレス静音の最高コスパ</span></h3>
<p><!-- ![Logicool K295](images/logicool-k295.jpg) --></p>
<p><strong>価格</strong>: 約3,000〜3,500円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>接続方式</td>
<td>2.4GHz ワイヤレス（Unifying USBレシーバー、最大10m）</td>
</tr>
<tr>
<td>配列</td>
<td>日本語108キー（テンキー付き）</td>
</tr>
<tr>
<td>スイッチ</td>
<td>メンブレン（SilentTouch技術）</td>
</tr>
<tr>
<td>電源</td>
<td>単4電池×2本（最大24ヶ月）</td>
</tr>
<tr>
<td>耐水設計</td>
<td>あり</td>
</tr>
<tr>
<td>保証</td>
<td>2年</td>
</tr>
</tbody>
</table>
<p><strong>こんな人に最適</strong><br />「有線は嫌だ・でも高いのも嫌だ」という人のベストアンサー。3,000円台でワイヤレス・静音（従来比90%削減）・テンキー付きフルサイズがすべて揃います。電池は最大24ヶ月と管理も楽。在宅ワーカーに特におすすめの1台です。</p>
<p> </p>
<p><strong>Amazonレビューでよく見る声</strong></p>
<p>「値段の割に静かすぎる」「コスパ最高」「テンキーがついているのに安い」</p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>テンキー付きフルサイズのためコンパクト派には向かない</li>
<li>メンブレンのため「打っている感触」は薄め</li>
</ul>
<p><strong>Amazonレビュー評価</strong>: ★4.4（400件超）</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"ロジクール ワイヤレスキーボード K295GP 静音 耐水 キーボード 無線 Unifying K295 windows chrome グラファイト 国内正規品","b":"Logicool(ロジクール)","t":"920-009780","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41NGKIVd++L._SL500_.jpg","\/51pwEVP4qOL._SL500_.jpg","\/41FD8i3-BSL._SL500_.jpg","\/51Cr8hnTx8L._SL500_.jpg","\/51OMz5ZPRjL._SL500_.jpg","\/5187zTVEjeL._SL500_.jpg","\/51B2ep9DwJL._SL500_.jpg","\/31fwKKk4uDL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08K2CHMWK","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08K2CHMWK","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20K295GP%20%E9%9D%99%E9%9F%B3%20%E8%80%90%E6%B0%B4%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E7%84%A1%E7%B7%9A%20Unifying%20K295%20windows%20chrome%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20K295GP%20%E9%9D%99%E9%9F%B3%20%E8%80%90%E6%B0%B4%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E7%84%A1%E7%B7%9A%20Unifying%20K295%20windows%20chrome%20%E3%82%B0%E3%83%A9%E3%83%95%E3%82%A1%E3%82%A4%E3%83%88%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"iN4ry","s":"s"});</script></p>
<div id="msmaflink-iN4ry">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h3><span id="toc12">第5位：Logicool G213r｜仕事もゲームも兼用したい人の最適解</span></h3>
<p><!-- ![Logicool G213r](images/logicool-g213r.jpg) --></p>
<p><strong>価格</strong>: 約7,000円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>接続方式</td>
<td>USB有線（ケーブル長1.8m）</td>
</tr>
<tr>
<td>配列</td>
<td>日本語フルサイズ（テンキー付き・パームレスト一体型）</td>
</tr>
<tr>
<td>スイッチ</td>
<td>Mech-Dome（ロジクール独自・静音メカニカルライク）</td>
</tr>
<tr>
<td>バックライト</td>
<td>LIGHTSYNC RGB（1,680万色・5ゾーン）</td>
</tr>
<tr>
<td>防水</td>
<td>生活防水対応</td>
</tr>
</tbody>
</table>
<p><strong>こんな人に最適</strong><br />ゲームもやるし仕事でも使いたい人向け。約7,000円でRGBライティング・一体型パームレスト・静音スイッチがすべて入ってくる破格のコスパ。初めてのゲーミングキーボードとして、失敗しにくい1台です。</p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>パームレスト一体型フルサイズでデスクを広く占有</li>
<li>RGBはキーの透明部分のみ発光のため、上位モデルと比べると見劣り</li>
</ul>
<p><strong>Amazonレビュー評価</strong>: ゲーミングキーボードカテゴリでベストセラー常連</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Logicool G ロジクール G ゲーミングキーボード 有線 G213r パームレスト 日本語配列 独自のMech-domeスイッチ キーボード 静音 LIGHTSYNC RGB 国内正規品 【 ファイナルファンタジーXIV 推奨周辺機器 】","b":"Logicool G(ロジクール G)","t":"G213r","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41aK+GVrl0L._SL500_.jpg","\/417XXAl-AoL._SL500_.jpg","\/51TV9U1gljL._SL500_.jpg","\/41fWMJQvU6L._SL500_.jpg","\/51yObs5CXXL._SL500_.jpg","\/41QQujtNDkL._SL500_.jpg","\/415sjY6I8hL._SL500_.jpg","\/31DjNMKHpsL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B09248N9XK","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B09248N9XK","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Logicool%20G%20%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20G%20%E3%82%B2%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E6%9C%89%E7%B7%9A%20G213r%20%E3%83%91%E3%83%BC%E3%83%A0%E3%83%AC%E3%82%B9%E3%83%88%20%E6%97%A5%E6%9C%AC%E8%AA%9E%E9%85%8D%E5%88%97%20%E7%8B%AC%E8%87%AA%E3%81%AEMech-dome%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E9%9D%99%E9%9F%B3%20LIGHTSYNC%20RGB%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E3%80%90%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%8A%E3%83%AB%E3%83%95%E3%82%A1%E3%83%B3%E3%82%BF%E3%82%B8%E3%83%BCXIV%20%E6%8E%A8%E5%A5%A8%E5%91%A8%E8%BE%BA%E6%A9%9F%E5%99%A8%20%E3%80%91\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Logicool%20G%20%E3%83%AD%E3%82%B8%E3%82%AF%E3%83%BC%E3%83%AB%20G%20%E3%82%B2%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E6%9C%89%E7%B7%9A%20G213r%20%E3%83%91%E3%83%BC%E3%83%A0%E3%83%AC%E3%82%B9%E3%83%88%20%E6%97%A5%E6%9C%AC%E8%AA%9E%E9%85%8D%E5%88%97%20%E7%8B%AC%E8%87%AA%E3%81%AEMech-dome%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%20%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%20%E9%9D%99%E9%9F%B3%20LIGHTSYNC%20RGB%20%E5%9B%BD%E5%86%85%E6%AD%A3%E8%A6%8F%E5%93%81%20%E3%80%90%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%8A%E3%83%AB%E3%83%95%E3%82%A1%E3%83%B3%E3%82%BF%E3%82%B8%E3%83%BCXIV%20%E6%8E%A8%E5%A5%A8%E5%91%A8%E8%BE%BA%E6%A9%9F%E5%99%A8%20%E3%80%91","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"BGEUn","s":"s"});</script></p>
<div id="msmaflink-BGEUn">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h3><span id="toc13">第6位：Keychron K2 V2｜1万円以下でメカニカルを体験したい人へ</span></h3>
<p><!-- ![Keychron K2 V2](images/keychron-k2-v5.jpg) --></p>
<p><strong>価格</strong>: 約8,000〜9,500円（税込）</p>
<table>
<thead>
<tr>
<th>項目</th>
<th>詳細</th>
</tr>
</thead>
<tbody>
<tr>
<td>接続方式</td>
<td>USB-C有線 / Bluetooth 5.1（2Way対応）</td>
</tr>
<tr>
<td>配列</td>
<td>75%レイアウト（84キー）</td>
</tr>
<tr>
<td>スイッチ</td>
<td>Gateron G Pro（赤軸・茶軸・青軸から選択）</td>
</tr>
<tr>
<td>バックライト</td>
<td>RGB搭載</td>
</tr>
<tr>
<td>対応OS</td>
<td>Mac / Windows</td>
</tr>
</tbody>
</table>
<p><strong>こんな人に最適</strong><br />「いつかはメカニカルを試してみたい」という初心者の最初の1台として、評価が安定しています。有線・ワイヤレス両対応・Mac/Windows両対応で、1台買えばどんな環境でも使えます。</p>
<p> </p>
<p>赤軸（リニア・静か）・茶軸（中間）・青軸（カチカチ）の3種類から選べるので、自分の好みに合ったスイッチを選べるのも魅力です。</p>
<p><strong>正直なデメリット</strong></p>
<ul>
<li>75%レイアウトのためテンキーなし、F列は一部Fnキーとの組み合わせ</li>
<li>日本語配列モデルの入手が難しい場合がある</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Keychron K2 Version2 ホットスワップ対応ワイヤレス・ゲーミングメカニカルキーボード84キー\/USレイアウト\/White LEDライト\/ダブルショットキーキャップ\/Gateron G Proメカニカルスイッチ\/有線無線対応\/Mac Windows対応\/Nキー・ロールオーバー対応","b":"Keychron","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/412OQihu4yL._SL500_.jpg","\/41oUDh91RgL._SL500_.jpg","\/41ASpssXR+L._SL500_.jpg","\/4173CI5UVkL._SL500_.jpg","\/51-5Yb1TPzL._SL500_.jpg","\/41BltY9xUcL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B09M3R3SD4","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B09M3R3SD4","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Keychron%20K2%20Version2%20%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9C%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%B2%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%8984%E3%82%AD%E3%83%BC%2FUS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%2FWhite%20LED%E3%83%A9%E3%82%A4%E3%83%88%2F%E3%83%80%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%E3%82%AD%E3%83%BC%E3%82%AD%E3%83%A3%E3%83%83%E3%83%97%2FGateron%20G%20Pro%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E6%9C%89%E7%B7%9A%E7%84%A1%E7%B7%9A%E5%AF%BE%E5%BF%9C%2FMac%20Windows%E5%AF%BE%E5%BF%9C%2FN%E3%82%AD%E3%83%BC%E3%83%BB%E3%83%AD%E3%83%BC%E3%83%AB%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E5%AF%BE%E5%BF%9C\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Keychron%20K2%20Version2%20%E3%83%9B%E3%83%83%E3%83%88%E3%82%B9%E3%83%AF%E3%83%83%E3%83%97%E5%AF%BE%E5%BF%9C%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%AC%E3%82%B9%E3%83%BB%E3%82%B2%E3%83%BC%E3%83%9F%E3%83%B3%E3%82%B0%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%8984%E3%82%AD%E3%83%BC%2FUS%E3%83%AC%E3%82%A4%E3%82%A2%E3%82%A6%E3%83%88%2FWhite%20LED%E3%83%A9%E3%82%A4%E3%83%88%2F%E3%83%80%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88%E3%82%AD%E3%83%BC%E3%82%AD%E3%83%A3%E3%83%83%E3%83%97%2FGateron%20G%20Pro%E3%83%A1%E3%82%AB%E3%83%8B%E3%82%AB%E3%83%AB%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%2F%E6%9C%89%E7%B7%9A%E7%84%A1%E7%B7%9A%E5%AF%BE%E5%BF%9C%2FMac%20Windows%E5%AF%BE%E5%BF%9C%2FN%E3%82%AD%E3%83%BC%E3%83%BB%E3%83%AD%E3%83%BC%E3%83%AB%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E5%AF%BE%E5%BF%9C","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"xuybt","s":"s"});</script></p>
<div id="msmaflink-xuybt">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h2><span id="toc14">用途別おすすめ早見表</span></h2>
<table>
<thead>
<tr>
<th>こんな人に</th>
<th>おすすめ</th>
<th>価格</th>
</tr>
</thead>
<tbody>
<tr>
<td>とにかく安く始めたい</td>
<td>BUFFALO BSKBU105BK</td>
<td>約1,000円</td>
</tr>
<tr>
<td>シンプル有線・信頼性重視</td>
<td>Logicool K120</td>
<td>約2,000円</td>
</tr>
<tr>
<td>タブレット・複数デバイス派</td>
<td>ELECOM TK-FBP102</td>
<td>約2,500円</td>
</tr>
<tr>
<td>在宅ワーク・ワイヤレス静音</td>
<td>Logicool K295</td>
<td>約3,500円</td>
</tr>
<tr>
<td>仕事＋ゲーム兼用</td>
<td>Logicool G213r</td>
<td>約7,000円</td>
</tr>
<tr>
<td>初めてのメカニカル</td>
<td>Keychron K2 V2</td>
<td>約8,500円</td>
</tr>
</tbody>
</table>
<h2><span id="toc15">初心者が陥りがちな失敗</span></h2>
<p><strong>「メカニカルキーボード」に憧れて最初から買う</strong><br />カチカチ・スコスコの打鍵感に憧れるのは自然ですが、初めて使うと「思ってたより音が大きい」「慣れるまで時間がかかる」と感じる人が多いです。まずはメンブレンで1〜2ヶ月使い、それでも気になったらメカニカルへ移行する順序が失敗しにくいです。</p>
<p><strong>「テンキーレスにしたら数字入力が大変だった」</strong><br />Excelや数値入力が多い人がテンキーレスにして後悔するケースがあります。数字入力が多い場合はフルサイズ（テンキー付き）を選びましょう。</p>
<p><strong>「Bluetooth対応だと思ったら有線専用だった」</strong><br />商品ページの写真だけ見て購入すると見落としがちなポイントです。接続方式は必ずスペックを確認してください。</p>
<h2><span id="toc16">まとめ｜1万円以下で自分に合うPCキーボードを見つけよう</span></h2>
<p>最初の1台は「失敗してもダメージが少ない価格帯で試す」がおすすめです。</p>
<p><strong>予算別のおすすめルート</strong>：</p>
<ul>
<li>1,000〜2,000円 → BUFFALO か Logicool K120 で試す</li>
<li>3,000〜5,000円 → Logicool K295 でワイヤレス体験</li>
<li>7,000〜10,000円 → G213r かKeychron でゲーミング・メカニカル体験</li>
</ul>
<p>キーボードは毎日触れる道具。<strong>気持ちよく打てると、それだけで仕事が少し楽しくなります。</strong></p>
<p>「なんとなく付属品を使っていた」から卒業する最初の一歩として、ぜひ参考にしてみてください。</p>
<hr>
<h2><span id="toc17">関連記事</span></h2>
<ul>
<li><a href="/desk-environment-budget-guide/">デスク環境の予算別構築ガイド</a> — キーボード以外のデスク環境を整えるならこちら</li>
<li><a href="/monitor-switch-productivity-boost/">マルチモニター×トラックボールで最強デスク環境</a> — 周辺機器をまとめてアップグレードしたい方はこちら</li>
<li><a href="/trackball-mouse-beginners-guide/">トラックボールマウス初心者ガイド</a> — マウスも一緒に見直したい方はこちら</li>
</ul><p>The post <a href="https://caymezon.com/keyboard-cospa-beginners-guide-2026/">PCキーボード初心者向けおすすめ6選【1万円以下・コスパ重視・2026年版】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/keyboard-cospa-beginners-guide-2026/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>VSCode全プルダウンメニュー完全解説【ショートカットキー付き・使いどころ徹底ガイド】</title>
		<link>https://caymezon.com/vscode-menu-complete-guide/</link>
					<comments>https://caymezon.com/vscode-menu-complete-guide/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Wed, 25 Feb 2026 23:53:03 +0000</pubDate>
				<category><![CDATA[Tech Tips]]></category>
		<category><![CDATA[VSCode]]></category>
		<category><![CDATA[エディター]]></category>
		<category><![CDATA[ショートカットキー]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20221</guid>

					<description><![CDATA[<p>目次 はじめにファイル(F)メニュー新規作成ファイルを開くワークスペース管理保存共有・設定ウィンドウ・エディター管理編集(E)メニュー元に戻す・やり直しクリップボード操作検索・置換コメント操作選択(S)メニュー基本選択行 [&#8230;]</p>
<p>The post <a href="https://caymezon.com/vscode-menu-complete-guide/">VSCode全プルダウンメニュー完全解説【ショートカットキー付き・使いどころ徹底ガイド】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-12" checked><label class="toc-title" for="toc-checkbox-12">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに</a></li><li><a href="#toc2" tabindex="0">ファイル(F)メニュー</a><ol><li><a href="#toc3" tabindex="0">新規作成</a></li><li><a href="#toc4" tabindex="0">ファイルを開く</a></li><li><a href="#toc5" tabindex="0">ワークスペース管理</a></li><li><a href="#toc6" tabindex="0">保存</a></li><li><a href="#toc7" tabindex="0">共有・設定</a></li><li><a href="#toc8" tabindex="0">ウィンドウ・エディター管理</a></li></ol></li><li><a href="#toc9" tabindex="0">編集(E)メニュー</a><ol><li><a href="#toc10" tabindex="0">元に戻す・やり直し</a></li><li><a href="#toc11" tabindex="0">クリップボード操作</a></li><li><a href="#toc12" tabindex="0">検索・置換</a></li><li><a href="#toc13" tabindex="0">コメント操作</a></li></ol></li><li><a href="#toc14" tabindex="0">選択(S)メニュー</a><ol><li><a href="#toc15" tabindex="0">基本選択</a></li><li><a href="#toc16" tabindex="0">行の移動・コピー</a></li><li><a href="#toc17" tabindex="0">マルチカーソル（超重要）</a></li><li><a href="#toc18" tabindex="0">出現箇所の選択</a></li></ol></li><li><a href="#toc19" tabindex="0">表示(V)メニュー</a><ol><li><a href="#toc20" tabindex="0">コマンドパレット</a></li><li><a href="#toc21" tabindex="0">外観（Appearance）</a></li><li><a href="#toc22" tabindex="0">エディター レイアウト</a></li><li><a href="#toc23" tabindex="0">サイドバーパネル</a></li><li><a href="#toc24" tabindex="0">下部パネル</a></li><li><a href="#toc25" tabindex="0">その他</a></li></ol></li><li><a href="#toc26" tabindex="0">移動(G)メニュー</a><ol><li><a href="#toc27" tabindex="0">基本移動</a></li><li><a href="#toc28" tabindex="0">エディターの切り替え</a></li><li><a href="#toc29" tabindex="0">グループの切り替え</a></li><li><a href="#toc30" tabindex="0">ファイル・シンボルへの移動</a></li><li><a href="#toc31" tabindex="0">コード定義への移動</a></li><li><a href="#toc32" tabindex="0">行・ブラケットへの移動</a></li><li><a href="#toc33" tabindex="0">問題・変更箇所への移動</a></li></ol></li><li><a href="#toc34" tabindex="0">実行(R)メニュー</a><ol><li><a href="#toc35" tabindex="0">デバッグ実行</a></li><li><a href="#toc36" tabindex="0">デバッグ設定</a></li><li><a href="#toc37" tabindex="0">ステップ実行（デバッグ中）</a></li><li><a href="#toc38" tabindex="0">ブレークポイント管理</a></li></ol></li><li><a href="#toc39" tabindex="0">ターミナル(T)メニュー</a><ol><li><a href="#toc40" tabindex="0">ターミナル操作</a></li><li><a href="#toc41" tabindex="0">タスク実行</a></li><li><a href="#toc42" tabindex="0">実行中のタスク管理</a></li><li><a href="#toc43" tabindex="0">タスク設定</a></li></ol></li><li><a href="#toc44" tabindex="0">ヘルプ(H)メニュー</a><ol><li><a href="#toc45" tabindex="0">学習リソース</a></li><li><a href="#toc46" tabindex="0">リリース情報</a></li><li><a href="#toc47" tabindex="0">キーボード・チュートリアル</a></li><li><a href="#toc48" tabindex="0">コミュニティ</a></li><li><a href="#toc49" tabindex="0">法的情報・ツール</a></li></ol></li><li><a href="#toc50" tabindex="0">メニュー別ショートカットキー早見表</a><ol><li><a href="#toc51" tabindex="0">ファイル(F)メニュー</a></li><li><a href="#toc52" tabindex="0">編集(E)メニュー</a></li><li><a href="#toc53" tabindex="0">選択(S)メニュー</a></li><li><a href="#toc54" tabindex="0">表示(V)メニュー</a></li><li><a href="#toc55" tabindex="0">移動(G)メニュー</a></li><li><a href="#toc56" tabindex="0">実行(R)メニュー</a></li><li><a href="#toc57" tabindex="0">ターミナル(T)メニュー</a></li><li><a href="#toc58" tabindex="0">ヘルプ(H)メニュー</a></li></ol></li><li><a href="#toc59" tabindex="0">よく使うショートカットTOP30</a><ol><li><a href="#toc60" tabindex="0">絶対に覚えるべき（★★★）</a></li><li><a href="#toc61" tabindex="0">効率を大幅に上げる（★★）</a></li></ol></li><li><a href="#toc62" tabindex="0">カテゴリ別活用シーン</a><ol><li><a href="#toc63" tabindex="0">新しいプロジェクトを始める時</a></li><li><a href="#toc64" tabindex="0">コードを読む・調査する時</a></li><li><a href="#toc65" tabindex="0">コードを書く時</a></li><li><a href="#toc66" tabindex="0">リファクタリングする時</a></li><li><a href="#toc67" tabindex="0">デバッグする時</a></li><li><a href="#toc68" tabindex="0">チームでレビューする時</a></li></ol></li><li><a href="#toc69" tabindex="0">まとめ</a></li><li><a href="#toc70" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">はじめに</span></h2>
<p>VSCodeのメニューバーには、ファイル・編集・選択・表示・移動・実行・ターミナル・ヘルプの8つのプルダウンメニューがあります。しかし、その全てのメニュー項目を把握している方は少ないのではないでしょうか。</p>
<p>本記事では、VSCodeの<strong>全プルダウンメニューを階層ごとに完全網羅</strong>し、各機能のショートカットキー・使いどころ・おすすめポイントを徹底解説します。</p>
<p><strong>この記事の特徴：</strong></p>
<ul>
<li>メニューバーの全8カテゴリを完全網羅</li>
<li>サブメニューの階層まで詳しく解説</li>
<li>実際のメニュー画面に対応した最新情報</li>
<li>★マークで特に重要な機能を表示</li>
<li>使いどころ・活用シーンを具体的に説明</li>
</ul>
<p><!-- ![VSCodeメニューバー全体像](images/vscode-menu-overview.jpg) --></p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Visual Studio Code実践入門! ~ソフトウェア開発の強力手段","b":"","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/51+Jrz2cBnL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/486594334X","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/486594334X","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Visual%20Studio%20Code%E5%AE%9F%E8%B7%B5%E5%85%A5%E9%96%80!%20~%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E9%96%8B%E7%99%BA%E3%81%AE%E5%BC%B7%E5%8A%9B%E6%89%8B%E6%AE%B5\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Visual%20Studio%20Code%E5%AE%9F%E8%B7%B5%E5%85%A5%E9%96%80!%20~%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E9%96%8B%E7%99%BA%E3%81%AE%E5%BC%B7%E5%8A%9B%E6%89%8B%E6%AE%B5","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"sl77U","s":"s"});</script></p>
<div id="msmaflink-sl77U">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<hr>
<h2><span id="toc2">ファイル(F)メニュー</span></h2>
<p>ファイルの新規作成・保存・設定など、VSCodeの基本操作が集まっています。</p>
<p><!-- ![ファイルメニュー](images/menu-file.jpg) --></p>
<h3><span id="toc3">新規作成</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>新しいテキスト ファイル</strong> ★★★</td>
<td><code>Ctrl+N</code></td>
<td>新しいテキストファイルを即座に作成。最もよく使う新規作成操作</td>
</tr>
<tr>
<td><strong>新しいファイル...</strong></td>
<td><code>Ctrl+Alt+Windows+N</code></td>
<td>ファイルの種類を指定して作成。テンプレートから始めたい場合に使用</td>
</tr>
<tr>
<td><strong>新しいウィンドウ</strong> ★★</td>
<td><code>Ctrl+Shift+N</code></td>
<td>別のVSCodeウィンドウを開く。複数プロジェクトを同時に作業する際に便利</td>
</tr>
<tr>
<td><strong>プロファイルを含む新しいウィンドウ</strong></td>
<td>サブメニュー</td>
<td>特定のプロファイル設定でウィンドウを開く</td>
</tr>
</tbody>
</table>
<p><strong>プロファイルを含む新しいウィンドウ のサブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>新しいプロファイル...</td>
<td>新しいプロファイルを作成してウィンドウを開く</td>
</tr>
</tbody>
</table>
<p><strong>活用ポイント：</strong></p>
<ul>
<li><code>Ctrl+N</code> でまず新規ファイルを開き、保存時に拡張子を決める流れが効率的</li>
<li>複数プロジェクトを同時進行する場合は <code>Ctrl+Shift+N</code> で別ウィンドウを活用</li>
</ul>
<h3><span id="toc4">ファイルを開く</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>ファイルを開く...</strong> ★★★</td>
<td><code>Ctrl+O</code></td>
<td>ダイアログからファイルを選択して開く</td>
</tr>
<tr>
<td><strong>フォルダーを開く...</strong> ★★★</td>
<td><code>Ctrl+K Ctrl+O</code></td>
<td>フォルダをワークスペースとして開く。プロジェクト開始時に必須</td>
</tr>
<tr>
<td><strong>ファイルでワークスペースを開く...</strong></td>
<td>ー</td>
<td><code>.code-workspace</code> ファイルからマルチルートワークスペースを開く</td>
</tr>
<tr>
<td><strong>最近使用した項目を開く</strong> ★★</td>
<td>サブメニュー</td>
<td>最近開いたファイルやフォルダを素早く再度開く</td>
</tr>
</tbody>
</table>
<p><strong>最近使用した項目を開く のサブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>閉じたエディターを再度開く</td>
<td><code>Ctrl+Shift+T</code></td>
<td>うっかり閉じたタブを復元。ブラウザの閉じたタブ復元と同じ感覚</td>
</tr>
<tr>
<td>（最近のファイル一覧）</td>
<td>ー</td>
<td>最近開いたファイルが一覧表示される</td>
</tr>
<tr>
<td>その他...</td>
<td><code>Ctrl+R</code></td>
<td>最近のファイル・フォルダの全一覧を表示</td>
</tr>
<tr>
<td>最近開いた項目をクリア...</td>
<td>ー</td>
<td>最近の履歴を削除</td>
</tr>
</tbody>
</table>
<h3><span id="toc5">ワークスペース管理</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>フォルダーをワークスペースに追加...</strong></td>
<td>ー</td>
<td>現在のワークスペースに別のフォルダを追加。マルチルート開発に便利</td>
</tr>
<tr>
<td><strong>名前を付けてワークスペースを保存...</strong></td>
<td>ー</td>
<td>現在のウィンドウ構成を <code>.code-workspace</code> ファイルとして保存</td>
</tr>
<tr>
<td><strong>ワークスペースを複製</strong></td>
<td>ー</td>
<td>現在のワークスペース設定を別ウィンドウで複製</td>
</tr>
</tbody>
</table>
<h3><span id="toc6">保存</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>保存</strong> ★★★</td>
<td><code>Ctrl+S</code></td>
<td>現在のファイルを保存。最頻出操作</td>
</tr>
<tr>
<td><strong>名前を付けて保存...</strong> ★★</td>
<td><code>Ctrl+Shift+S</code></td>
<td>別名でファイルを保存。コピーを作りたい時にも使える</td>
</tr>
<tr>
<td><strong>すべて保存</strong> ★★</td>
<td><code>Ctrl+K S</code></td>
<td>開いている全ファイルを一括保存。変更漏れを防ぐ</td>
</tr>
</tbody>
</table>
<h3><span id="toc7">共有・設定</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>共有</strong></td>
<td>サブメニュー</td>
<td>プロファイルのエクスポートなど</td>
</tr>
<tr>
<td><strong>自動保存</strong></td>
<td>ー</td>
<td>自動保存のオン/オフを切り替え。チェックで有効</td>
</tr>
<tr>
<td><strong>ユーザー設定</strong></td>
<td>サブメニュー</td>
<td>VSCodeの各種設定にアクセス</td>
</tr>
</tbody>
</table>
<p><strong>ユーザー設定 のサブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td>プロファイル</td>
<td>ー</td>
<td>プロファイルの管理・切り替え</td>
</tr>
<tr>
<td><strong>設定</strong> ★★★</td>
<td><code>Ctrl+,</code></td>
<td>VSCode全体の設定画面を開く。カスタマイズの起点</td>
</tr>
<tr>
<td><strong>拡張機能</strong> ★★</td>
<td><code>Ctrl+Shift+X</code></td>
<td>拡張機能の管理画面を開く</td>
</tr>
<tr>
<td><strong>キーボード ショートカット</strong> ★★</td>
<td><code>Ctrl+K Ctrl+S</code></td>
<td>キーバインドの確認・変更</td>
</tr>
<tr>
<td>スニペットの構成</td>
<td>ー</td>
<td>カスタムスニペットの作成・編集</td>
</tr>
<tr>
<td>タスク</td>
<td>ー</td>
<td>タスクの設定・実行</td>
</tr>
<tr>
<td>テーマ</td>
<td>サブメニュー</td>
<td>テーマの切り替え</td>
</tr>
<tr>
<td>バックアップと同期の設定...</td>
<td>ー</td>
<td>設定の同期機能（Setting Sync）の設定</td>
</tr>
<tr>
<td>オンライン サービスの設定</td>
<td>ー</td>
<td>テレメトリなどオンラインサービスの設定</td>
</tr>
</tbody>
</table>
<p><strong>テーマ のサブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>配色テーマ</strong> ★★</td>
<td><code>Ctrl+K Ctrl+T</code></td>
<td>カラーテーマを変更。ライト・ダーク切り替えもここから</td>
</tr>
<tr>
<td>ファイル アイコンのテーマ</td>
<td>ー</td>
<td>エクスプローラーのファイルアイコンを変更</td>
</tr>
<tr>
<td>製品アイコンのテーマ</td>
<td>ー</td>
<td>UI全体のアイコンセットを変更</td>
</tr>
</tbody>
</table>
<h3><span id="toc8">ウィンドウ・エディター管理</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>ファイルを元に戻す</strong></td>
<td>ー</td>
<td>最後に保存した状態に戻す。Git管理外でもOK</td>
</tr>
<tr>
<td><strong>エディターを閉じる</strong> ★★</td>
<td><code>Ctrl+F4</code></td>
<td>現在のタブを閉じる</td>
</tr>
<tr>
<td><strong>フォルダーを閉じる</strong></td>
<td><code>Ctrl+K F</code></td>
<td>ワークスペースのフォルダを閉じる</td>
</tr>
<tr>
<td><strong>ウィンドウを閉じる</strong></td>
<td><code>Alt+F4</code></td>
<td>VSCodeウィンドウを閉じる</td>
</tr>
<tr>
<td><strong>終了</strong></td>
<td>ー</td>
<td>VSCodeを完全に終了</td>
</tr>
</tbody>
</table>
<hr>
<h2><span id="toc9">編集(E)メニュー</span></h2>
<p>テキスト編集の基本操作から、コード特有の編集機能まで揃っています。</p>
<p><!-- ![編集メニュー](images/menu-edit.jpg) --></p>
<h3><span id="toc10">元に戻す・やり直し</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>元に戻す</strong> ★★★</td>
<td><code>Ctrl+Z</code></td>
<td>直前の操作を取り消し。何度でも実行可能</td>
</tr>
<tr>
<td><strong>やり直し</strong> ★★★</td>
<td><code>Ctrl+Y</code></td>
<td>「元に戻す」を取り消し。Ctrl+Zのやりすぎた時に使う</td>
</tr>
</tbody>
</table>
<h3><span id="toc11">クリップボード操作</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>切り取り</strong> ★★★</td>
<td><code>Ctrl+X</code></td>
<td>選択範囲を切り取り（選択なしの場合は行全体）</td>
</tr>
<tr>
<td><strong>コピー</strong> ★★★</td>
<td><code>Ctrl+C</code></td>
<td>選択範囲をコピー（選択なしの場合は行全体）</td>
</tr>
<tr>
<td><strong>貼り付け</strong> ★★★</td>
<td><code>Ctrl+V</code></td>
<td>クリップボードの内容を貼り付け</td>
</tr>
</tbody>
</table>
<p><strong>活用ポイント：</strong></p>
<ul>
<li>選択範囲なしで <code>Ctrl+X</code> を押すと<strong>行全体</strong>が切り取り対象になる</li>
<li>選択範囲なしで <code>Ctrl+C</code> を押すと<strong>行全体</strong>がコピーされる（空行と勘違いしやすい）</li>
</ul>
<h3><span id="toc12">検索・置換</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>検索</strong> ★★★</td>
<td><code>Ctrl+F</code></td>
<td>現在のファイル内を検索。正規表現・大文字小文字区別も可能</td>
</tr>
<tr>
<td><strong>置換</strong> ★★★</td>
<td><code>Ctrl+H</code></td>
<td>文字列の一括置換。Ctrl+Enterで全置換</td>
</tr>
<tr>
<td><strong>フォルダーを指定して検索</strong> ★★★</td>
<td><code>Ctrl+Shift+F</code></td>
<td>ワークスペース全体をまたいだ横断検索</td>
</tr>
<tr>
<td><strong>複数のファイルで置換</strong> ★★</td>
<td><code>Ctrl+Shift+H</code></td>
<td>ワークスペース全体の横断置換</td>
</tr>
</tbody>
</table>
<p><strong>Ctrl+Shift+F活用術：</strong></p>
<pre><code class="language-plaintext">1. Ctrl+Shift+F で検索パネルを開く
2. 検索文字列を入力
3. 「絞り込み」で特定のファイル種類に限定（例: *.ts）
4. 検索結果をクリックで該当箇所にジャンプ</code></pre>
<h3><span id="toc13">コメント操作</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>行コメントの切り替え</strong> ★★★</td>
<td><code>Ctrl+/</code></td>
<td>現在行をコメントアウト/解除。複数行選択でも有効</td>
</tr>
<tr>
<td><strong>ブロック コメントの切り替え</strong> ★★</td>
<td><code>Shift+Alt+A</code></td>
<td><code>/* */</code> 形式のブロックコメントをトグル</td>
</tr>
<tr>
<td><strong>Emmet: 省略記法を展開</strong> ★★</td>
<td><code>Tab</code></td>
<td>Emmet記法をHTMLタグに展開（例: <code>div.container&gt;ul&gt;li*3</code> → 展開）</td>
</tr>
</tbody>
</table>
<p><strong>行コメント活用術：</strong></p>
<pre><code class="language-plaintext">// 単一行のコメントアウト
1. カーソルを対象行に移動
2. Ctrl+/ で即コメントアウト

// 複数行の一括コメントアウト
1. Shift+クリックで複数行を選択
2. Ctrl+/ で一括コメントアウト</code></pre>
<hr>
<h2><span id="toc14">選択(S)メニュー</span></h2>
<p>テキスト選択とカーソル操作の高度な機能を提供します。マルチカーソルは特に強力です。</p>
<p><!-- ![選択メニュー](images/menu-select.jpg) --></p>
<h3><span id="toc15">基本選択</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>すべて選択</strong> ★★★</td>
<td><code>Ctrl+A</code></td>
<td>ファイル全体を選択</td>
</tr>
<tr>
<td><strong>選択範囲の展開</strong> ★★</td>
<td><code>Shift+Alt+→</code></td>
<td>選択範囲をスマートに広げる（単語→行→ブロックの順）</td>
</tr>
<tr>
<td><strong>選択範囲の縮小</strong> ★★</td>
<td><code>Shift+Alt+←</code></td>
<td>選択範囲をスマートに縮小</td>
</tr>
</tbody>
</table>
<p><strong>選択範囲の展開 活用例：</strong></p>
<pre><code class="language-plaintext">カーソル位置から Shift+Alt+→ を何度か押すと
単語 → 文 → ブロック → 関数全体... と段階的に拡大
逆に Shift+Alt+← で縮小できる</code></pre>
<h3><span id="toc16">行の移動・コピー</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>行を上へコピー</strong> ★★★</td>
<td><code>Shift+Alt+↑</code></td>
<td>現在行を上にコピー（選択なしでも動く）</td>
</tr>
<tr>
<td><strong>行を下へコピー</strong> ★★★</td>
<td><code>Shift+Alt+↓</code></td>
<td>現在行を下にコピー。似たようなコードを量産する時に最強</td>
</tr>
<tr>
<td><strong>行を上へ移動</strong> ★★★</td>
<td><code>Alt+↑</code></td>
<td>現在行を1行上に移動。コードの並び替えに便利</td>
</tr>
<tr>
<td><strong>行を下へ移動</strong> ★★★</td>
<td><code>Alt+↓</code></td>
<td>現在行を1行下に移動</td>
</tr>
<tr>
<td><strong>選択範囲の複製</strong></td>
<td>ー</td>
<td>選択範囲を複製して直後に挿入</td>
</tr>
</tbody>
</table>
<h3><span id="toc17">マルチカーソル（超重要）</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>カーソルを上に挿入</strong> ★★★</td>
<td><code>Ctrl+Alt+↑</code></td>
<td>上の行にカーソルを追加。連続した複数行を同時編集</td>
</tr>
<tr>
<td><strong>カーソルを下に挿入</strong> ★★★</td>
<td><code>Ctrl+Alt+↓</code></td>
<td>下の行にカーソルを追加</td>
</tr>
<tr>
<td><strong>カーソルを行末に挿入</strong> ★★</td>
<td><code>Shift+Alt+I</code></td>
<td>選択した全行の末尾にカーソルを追加。複数行の末尾を一括編集</td>
</tr>
</tbody>
</table>
<p><strong>マルチカーソル活用例：</strong></p>
<pre><code class="language-plaintext">// 複数のCSSプロパティに同時に「!important」を追加
1. 対象の複数行を選択
2. Shift+Alt+I で各行末にカーソルを配置
3. " !important" と入力 → 全行に一括追加</code></pre>
<h3><span id="toc18">出現箇所の選択</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>次の出現個所を追加</strong> ★★★</td>
<td><code>Ctrl+D</code></td>
<td>カーソル下の単語と同じ次の単語を選択に追加</td>
</tr>
<tr>
<td><strong>前の出現箇所を追加</strong></td>
<td>ー</td>
<td>直前の一致箇所を選択に追加</td>
</tr>
<tr>
<td><strong>すべての出現箇所を選択</strong> ★★★</td>
<td><code>Ctrl+Shift+L</code></td>
<td>カーソル下の単語と同じすべての箇所を一括選択</td>
</tr>
<tr>
<td><strong>マルチ カーソルを Ctrl+Click に切り替える</strong></td>
<td>ー</td>
<td>マルチカーソルの追加方法をCtrl+Click/Alt+Clickで切り替え</td>
</tr>
<tr>
<td><strong>列の選択モード</strong></td>
<td>ー</td>
<td>矩形選択モードのオン/オフを切り替え</td>
</tr>
</tbody>
</table>
<p><strong>Ctrl+D 活用術（変数名の一括リネーム）：</strong></p>
<pre><code class="language-plaintext">1. 変数名にカーソルを置く
2. Ctrl+D を押すたびに次の同じ単語が選択に追加される
3. 変更したくない箇所は Ctrl+K Ctrl+D でスキップ
4. すべて選択したら新しい名前を入力 → 一括リネーム完了</code></pre>
<hr>
<h2><span id="toc19">表示(V)メニュー</span></h2>
<p>VSCodeのUIレイアウトとパネルの表示・非表示を制御します。</p>
<p><!-- ![表示メニュー](images/menu-view.jpg) --></p>
<h3><span id="toc20">コマンドパレット</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>コマンド パレット...</strong> ★★★</td>
<td><code>Ctrl+Shift+P</code></td>
<td>全機能にアクセスできる万能コマンド。VSCodeで最も重要なショートカット</td>
</tr>
<tr>
<td><strong>ビューを開く...</strong></td>
<td>ー</td>
<td>各種ビュー（パネル）を名前で検索して開く</td>
</tr>
</tbody>
</table>
<h3><span id="toc21">外観（Appearance）</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>全画面表示</strong> ★★</td>
<td><code>F11</code></td>
<td>VSCodeを全画面表示。コーディングに集中したい時に</td>
</tr>
<tr>
<td><strong>Zen Mode</strong> ★★</td>
<td><code>Ctrl+K Z</code></td>
<td>UIを最小限に隠した集中モード。Esc×2で解除</td>
</tr>
<tr>
<td><strong>中央揃えレイアウト</strong></td>
<td>ー</td>
<td>エディターを画面中央に配置（記事執筆などに）</td>
</tr>
<tr>
<td>✓ <strong>メニュー バー</strong></td>
<td>ー</td>
<td>メニューバーの表示/非表示を切り替え</td>
</tr>
<tr>
<td><strong>プライマリ サイド バー</strong> ★★★</td>
<td><code>Ctrl+B</code></td>
<td>左サイドバー（エクスプローラーなど）の表示/非表示</td>
</tr>
<tr>
<td><strong>セカンダリ サイド バー</strong></td>
<td><code>Ctrl+Alt+B</code></td>
<td>右サイドバーの表示/非表示</td>
</tr>
<tr>
<td>✓ <strong>ステータス バー</strong></td>
<td>ー</td>
<td>画面下部のステータスバーの表示/非表示</td>
</tr>
<tr>
<td><strong>パネル</strong> ★★</td>
<td><code>Ctrl+J</code></td>
<td>下部パネル（ターミナル・問題など）の表示/非表示</td>
</tr>
</tbody>
</table>
<p><strong>アクティビティ バーの位置 サブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>既定値</td>
<td>左側に縦長で表示（デフォルト）</td>
</tr>
<tr>
<td>上部</td>
<td>上部に横並びで表示</td>
</tr>
<tr>
<td>下部</td>
<td>下部に横並びで表示</td>
</tr>
<tr>
<td>非表示</td>
<td>アクティビティバーを非表示</td>
</tr>
</tbody>
</table>
<p><strong>パネルの位置 サブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>上</td>
<td>パネルを上部に配置</td>
</tr>
<tr>
<td>下部</td>
<td>パネルを下部に配置（デフォルト）</td>
</tr>
<tr>
<td>左</td>
<td>パネルを左側に配置</td>
</tr>
<tr>
<td>右</td>
<td>パネルを右側に配置</td>
</tr>
<tr>
<td>非表示</td>
<td>パネルエリアを非表示</td>
</tr>
</tbody>
</table>
<p><strong>パネルの配置 サブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>右</td>
<td>右揃え</td>
</tr>
<tr>
<td>左</td>
<td>左揃え</td>
</tr>
<tr>
<td>下揃え</td>
<td>下揃え（デフォルト）</td>
</tr>
<tr>
<td>中央揃え</td>
<td>中央揃え</td>
</tr>
</tbody>
</table>
<p><strong>タブ バー サブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>✓ 複数のタブ</td>
<td>通常のタブ表示（デフォルト）</td>
</tr>
<tr>
<td>1つのタブ</td>
<td>現在のタブのみ表示</td>
</tr>
<tr>
<td>非表示</td>
<td>タブバー自体を非表示</td>
</tr>
</tbody>
</table>
<p><strong>エディター アクションの位置 サブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>タブ バー</td>
<td>タブバー右側にアクションを表示（デフォルト）</td>
</tr>
<tr>
<td>タイトル バー</td>
<td>タイトルバーに表示</td>
</tr>
<tr>
<td>非表示</td>
<td>アクションを非表示</td>
</tr>
</tbody>
</table>
<p><strong>その他の外観設定：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>✓ ミニマップ</td>
<td>ー</td>
<td>右側のミニマップ（コード縮小図）の表示切替</td>
</tr>
<tr>
<td>✓ 階層リンク</td>
<td>ー</td>
<td>エディター上部のパンくずリストの表示切替</td>
</tr>
<tr>
<td>✓ スティッキー スクロール</td>
<td>ー</td>
<td>スクロール時に現在のスコープ（関数名など）を上部に固定表示</td>
</tr>
<tr>
<td>✓ 空白を描画する</td>
<td>ー</td>
<td>スペースやタブを可視化</td>
</tr>
<tr>
<td>✓ 制御文字を表示する</td>
<td>ー</td>
<td>改行コードなど制御文字を可視化</td>
</tr>
<tr>
<td><strong>拡大</strong></td>
<td><code>Ctrl+;</code></td>
<td>UIを拡大（ズームイン）</td>
</tr>
<tr>
<td><strong>縮小</strong></td>
<td><code>Ctrl+-</code></td>
<td>UIを縮小（ズームアウト）</td>
</tr>
<tr>
<td><strong>ズームのリセット</strong></td>
<td><code>Ctrl+NumPad0</code></td>
<td>ズームをリセット</td>
</tr>
</tbody>
</table>
<h3><span id="toc22">エディター レイアウト</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>分割（上）</strong></td>
<td><code>Ctrl+K Ctrl+\</code></td>
<td>エディターを上下に分割</td>
</tr>
<tr>
<td><strong>分割（下）</strong></td>
<td>ー</td>
<td>現在のエディターを下に分割</td>
</tr>
<tr>
<td><strong>分割（左）</strong></td>
<td>ー</td>
<td>左に分割</td>
</tr>
<tr>
<td><strong>分割（右）</strong></td>
<td>ー</td>
<td>右に分割（<code>Ctrl+\</code> と同様）</td>
</tr>
<tr>
<td><strong>グループ内分割</strong></td>
<td><code>Ctrl+K Ctrl+Shift+\</code></td>
<td>同グループ内でエディターを分割</td>
</tr>
<tr>
<td><strong>エディターを新しいウィンドウに移動する</strong></td>
<td>ー</td>
<td>現在のエディターを独立したウィンドウに移動</td>
</tr>
<tr>
<td><strong>エディターを新しいウィンドウにコピーする</strong></td>
<td><code>Ctrl+K O</code></td>
<td>現在のエディターを別ウィンドウでコピー</td>
</tr>
<tr>
<td>シングル</td>
<td>ー</td>
<td>1列レイアウトにリセット</td>
</tr>
<tr>
<td>2列</td>
<td>ー</td>
<td>左右2列レイアウト</td>
</tr>
<tr>
<td>3列</td>
<td>ー</td>
<td>3列レイアウト</td>
</tr>
<tr>
<td>2行</td>
<td>ー</td>
<td>上下2行レイアウト</td>
</tr>
<tr>
<td>3行</td>
<td>ー</td>
<td>3行レイアウト</td>
</tr>
<tr>
<td>グリッド (2x2)</td>
<td>ー</td>
<td>2×2の4分割グリッドレイアウト</td>
</tr>
<tr>
<td>2行右</td>
<td>ー</td>
<td>右側を2行に分割したレイアウト</td>
</tr>
<tr>
<td>2列下</td>
<td>ー</td>
<td>下側を2列に分割したレイアウト</td>
</tr>
<tr>
<td><strong>レイアウトの反転</strong></td>
<td><code>Shift+Alt+0</code></td>
<td>横/縦分割を反転</td>
</tr>
</tbody>
</table>
<p><strong>エディター分割活用術：</strong></p>
<pre><code class="language-plaintext">// 仕様と実装を並べて表示
1. 仕様ファイルを開く
2. Ctrl+\ で右に分割
3. 右側で実装ファイルを開く
→ 両方を見ながら実装できる</code></pre>
<h3><span id="toc23">サイドバーパネル</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>エクスプローラー</strong> ★★★</td>
<td><code>Ctrl+Shift+E</code></td>
<td>ファイルツリーを表示。フォルダ構成を確認・操作</td>
</tr>
<tr>
<td><strong>検索</strong> ★★★</td>
<td><code>Ctrl+Shift+F</code></td>
<td>ファイル横断検索パネルを表示</td>
</tr>
<tr>
<td><strong>ソース管理</strong> ★★</td>
<td><code>Ctrl+Shift+G</code></td>
<td>Git操作パネルを表示。差分確認・コミット</td>
</tr>
<tr>
<td><strong>実行</strong> ★★</td>
<td><code>Ctrl+Shift+D</code></td>
<td>デバッグパネルを表示</td>
</tr>
<tr>
<td><strong>拡張機能</strong> ★★</td>
<td><code>Ctrl+Shift+X</code></td>
<td>拡張機能の検索・管理</td>
</tr>
<tr>
<td><strong>チャット</strong></td>
<td><code>Ctrl+Alt+I</code></td>
<td>Copilot Chatなどのチャット機能を表示</td>
</tr>
</tbody>
</table>
<h3><span id="toc24">下部パネル</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>問題</strong> ★★★</td>
<td><code>Ctrl+Shift+M</code></td>
<td>エラー・警告の一覧。F8で問題箇所をジャンプ</td>
</tr>
<tr>
<td><strong>出力</strong> ★★</td>
<td><code>Ctrl+Shift+U</code></td>
<td>拡張機能・ビルドのログを確認</td>
</tr>
<tr>
<td><strong>デバッグ コンソール</strong> ★★</td>
<td><code>Ctrl+Shift+Y</code></td>
<td>デバッグ中の変数・出力確認</td>
</tr>
<tr>
<td><strong>ターミナル</strong> ★★★</td>
<td><code>Ctrl+`</code></td>
<td>統合ターミナルの表示/非表示</td>
</tr>
</tbody>
</table>
<h3><span id="toc25">その他</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td>✓ <strong>右端での折り返し</strong> ★★</td>
<td><code>Alt+Z</code></td>
<td>長い行を画面幅で折り返す。スクロールなしで全体を確認できる</td>
</tr>
</tbody>
</table>
<hr>
<h2><span id="toc26">移動(G)メニュー</span></h2>
<p>エディター内・ファイル間・コード定義へのナビゲーションを提供します。</p>
<p><!-- ![移動メニュー](images/menu-go.jpg) --></p>
<h3><span id="toc27">基本移動</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>戻る</strong> ★★★</td>
<td><code>Alt+←</code></td>
<td>カーソル位置の履歴を戻る。F12でジャンプ後に元の場所に戻る際に必須</td>
</tr>
<tr>
<td><strong>進む</strong> ★★</td>
<td><code>Alt+→</code></td>
<td>カーソル位置の履歴を進む</td>
</tr>
<tr>
<td><strong>最後の編集場所</strong> ★★</td>
<td><code>Ctrl+K Ctrl+Q</code></td>
<td>最後に編集した場所に直接ジャンプ</td>
</tr>
</tbody>
</table>
<h3><span id="toc28">エディターの切り替え</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>次のエディター</strong> ★★★</td>
<td><code>Ctrl+PageDown</code></td>
<td>次のタブに移動</td>
</tr>
<tr>
<td><strong>前のエディター</strong> ★★★</td>
<td><code>Ctrl+PageUp</code></td>
<td>前のタブに移動</td>
</tr>
<tr>
<td>次の使用されているエディター</td>
<td>ー</td>
<td>最近使用したタブの順で次に移動</td>
</tr>
<tr>
<td>以前に使用したエディター</td>
<td>ー</td>
<td>最近使用したタブの順で前に移動</td>
</tr>
<tr>
<td><strong>グループ内の次のエディター</strong></td>
<td><code>Ctrl+K Ctrl+PageDown</code></td>
<td>分割グループ内で次のタブに移動</td>
</tr>
<tr>
<td><strong>グループ内の前のエディター</strong></td>
<td><code>Ctrl+K Ctrl+PageUp</code></td>
<td>分割グループ内で前のタブに移動</td>
</tr>
<tr>
<td>グループ内の次の使用されているエディター</td>
<td>ー</td>
<td>グループ内で最近使用順に次へ</td>
</tr>
<tr>
<td>グループ内の前の使用されているエディター</td>
<td>ー</td>
<td>グループ内で最近使用順に前へ</td>
</tr>
</tbody>
</table>
<h3><span id="toc29">グループの切り替え</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>グループ 1</strong> ★★</td>
<td><code>Ctrl+1</code></td>
<td>1番目のエディターグループにフォーカス</td>
</tr>
<tr>
<td><strong>グループ 2</strong> ★★</td>
<td><code>Ctrl+2</code></td>
<td>2番目のエディターグループにフォーカス</td>
</tr>
<tr>
<td><strong>グループ 3</strong></td>
<td><code>Ctrl+3</code></td>
<td>3番目のエディターグループにフォーカス</td>
</tr>
<tr>
<td>グループ 4</td>
<td><code>Ctrl+4</code></td>
<td>4番目のグループ</td>
</tr>
<tr>
<td>グループ 5</td>
<td><code>Ctrl+5</code></td>
<td>5番目のグループ</td>
</tr>
<tr>
<td>次のグループ</td>
<td>ー</td>
<td>次のエディターグループにフォーカス</td>
</tr>
<tr>
<td>前のグループ</td>
<td>ー</td>
<td>前のエディターグループにフォーカス</td>
</tr>
<tr>
<td><strong>グループ（左）</strong></td>
<td><code>Ctrl+K Ctrl+←</code></td>
<td>左のグループにフォーカス</td>
</tr>
<tr>
<td><strong>グループ（右）</strong></td>
<td><code>Ctrl+K Ctrl+→</code></td>
<td>右のグループにフォーカス</td>
</tr>
<tr>
<td><strong>グループ（上）</strong></td>
<td><code>Ctrl+K Ctrl+↑</code></td>
<td>上のグループにフォーカス</td>
</tr>
<tr>
<td><strong>グループ（下）</strong></td>
<td><code>Ctrl+K Ctrl+↓</code></td>
<td>下のグループにフォーカス</td>
</tr>
</tbody>
</table>
<h3><span id="toc30">ファイル・シンボルへの移動</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>ファイルに移動...</strong> ★★★</td>
<td><code>Ctrl+P</code></td>
<td>ファイル名で素早く検索・移動。エクスプローラーより圧倒的に速い</td>
</tr>
<tr>
<td><strong>ワークスペース内のシンボルへ移動...</strong> ★★</td>
<td><code>Ctrl+T</code></td>
<td>ワークスペース全体の関数・クラス名で検索</td>
</tr>
<tr>
<td><strong>エディター内のシンボルへ移動...</strong> ★★</td>
<td><code>Ctrl+Shift+O</code></td>
<td>現在ファイル内の関数・クラスに素早く移動</td>
</tr>
</tbody>
</table>
<p><strong>Ctrl+P 活用術：</strong></p>
<pre><code class="language-plaintext">Ctrl+P を押した後：
test        → ファイル名で検索（fuzzy検索）
@symbol     → 現在ファイルのシンボル検索
#symbol     → ワークスペース全体のシンボル検索
:42         → 42行目にジャンプ
&gt;command    → コマンドパレット（Ctrl+Shift+P と同等）</code></pre>
<h3><span id="toc31">コード定義への移動</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>定義に移動</strong> ★★★</td>
<td><code>F12</code></td>
<td>関数・変数の定義元に移動。コードリーディングの必須スキル</td>
</tr>
<tr>
<td><strong>宣言へ移動</strong></td>
<td>ー</td>
<td>TypeScriptなどで宣言箇所に移動</td>
</tr>
<tr>
<td><strong>型定義に移動</strong></td>
<td>ー</td>
<td>型の定義に移動</td>
</tr>
<tr>
<td><strong>実装箇所に移動</strong></td>
<td>ー</td>
<td>インターフェースの実装クラスに移動</td>
</tr>
<tr>
<td><strong>参照へ移動</strong> ★★</td>
<td><code>Shift+F12</code></td>
<td>その変数・関数が使われている全箇所を表示</td>
</tr>
</tbody>
</table>
<p><strong>定義移動の効率的な使い方：</strong></p>
<pre><code class="language-plaintext">1. 関数名にカーソル → F12 で定義に移動
2. Alt+← で元の場所に戻る
3. Alt+F12 でその場でプレビュー（移動しない）</code></pre>
<h3><span id="toc32">行・ブラケットへの移動</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>行/列に移動...</strong> ★★</td>
<td><code>Ctrl+G</code></td>
<td>行番号を入力して即ジャンプ（スタックトレース活用）</td>
</tr>
<tr>
<td><strong>ブラケットに移動</strong> ★★</td>
<td><code>Ctrl+Shift+\</code></td>
<td>対応する括弧 <code>{}</code>・<code>()</code>・<code>[]</code> に移動</td>
</tr>
</tbody>
</table>
<p><strong>Ctrl+G 活用例：</strong></p>
<pre><code class="language-plaintext">エラーログ: "error at line 245"
→ Ctrl+G → 245 → Enter → エラー行に直接ジャンプ</code></pre>
<h3><span id="toc33">問題・変更箇所への移動</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>次の問題箇所</strong> ★★</td>
<td><code>F8</code></td>
<td>次のエラー・警告箇所にジャンプ。F8連打でエラーを順番に修正</td>
</tr>
<tr>
<td><strong>前の問題箇所</strong> ★★</td>
<td><code>Shift+F8</code></td>
<td>前のエラー・警告箇所にジャンプ</td>
</tr>
<tr>
<td><strong>次の変更箇所</strong></td>
<td><code>Alt+F3</code></td>
<td>Git差分の次の変更箇所にジャンプ</td>
</tr>
<tr>
<td><strong>前の変更箇所</strong></td>
<td><code>Shift+Alt+F3</code></td>
<td>Git差分の前の変更箇所にジャンプ</td>
</tr>
</tbody>
</table>
<hr>
<h2><span id="toc34">実行(R)メニュー</span></h2>
<p>デバッグ実行とブレークポイントの管理を提供します。</p>
<p><!-- ![実行メニュー](images/menu-run.jpg) --></p>
<h3><span id="toc35">デバッグ実行</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>デバッグの開始</strong> ★★★</td>
<td><code>F5</code></td>
<td>デバッガーを起動してプログラムを実行</td>
</tr>
<tr>
<td><strong>デバッグなしで実行</strong> ★★</td>
<td><code>Ctrl+F5</code></td>
<td>デバッガーなしで実行（通常の実行）</td>
</tr>
<tr>
<td><strong>デバッグの停止</strong> ★★</td>
<td><code>Shift+F5</code></td>
<td>デバッグセッションを終了</td>
</tr>
<tr>
<td><strong>デバッグの再起動</strong> ★★</td>
<td><code>Ctrl+Shift+F5</code></td>
<td>デバッグを再起動。コード変更後に再実行</td>
</tr>
</tbody>
</table>
<h3><span id="toc36">デバッグ設定</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>構成を開く</strong></td>
<td>ー</td>
<td><code>.vscode/launch.json</code> を開く。デバッグ設定ファイル</td>
</tr>
<tr>
<td><strong>構成の追加...</strong></td>
<td>ー</td>
<td>デバッグ設定を追加（Node.js・Python・ブラウザなど）</td>
</tr>
</tbody>
</table>
<h3><span id="toc37">ステップ実行（デバッグ中）</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>ステップ オーバーする</strong> ★★★</td>
<td><code>F10</code></td>
<td>現在行を実行して次行へ（関数内には入らない）</td>
</tr>
<tr>
<td><strong>ステップ インする</strong> ★★★</td>
<td><code>F11</code></td>
<td>現在行の関数内に入る</td>
</tr>
<tr>
<td><strong>ステップ アウトする</strong> ★★</td>
<td><code>Shift+F11</code></td>
<td>現在の関数から抜け出す</td>
</tr>
<tr>
<td><strong>続行</strong> ★★★</td>
<td><code>F5</code></td>
<td>次のブレークポイントまで実行を続ける</td>
</tr>
</tbody>
</table>
<p><strong>デバッグの基本フロー：</strong></p>
<pre><code class="language-plaintext">1. F9 でブレークポイントを設定
2. F5 でデバッグ開始
3. F10 でステップ実行（行ごとに確認）
4. 怪しい関数はF11でステップイン
5. 変数をマウスホバーで値を確認
6. F5 で次のブレークポイントに進む
7. Shift+F5 でデバッグ終了</code></pre>
<h3><span id="toc38">ブレークポイント管理</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>ブレークポイントの切り替え</strong> ★★★</td>
<td><code>F9</code></td>
<td>カーソル行にブレークポイントを設定/解除</td>
</tr>
<tr>
<td><strong>新しいブレークポイント</strong></td>
<td>サブメニュー</td>
<td>特殊なブレークポイントを追加</td>
</tr>
<tr>
<td><strong>すべてのブレークポイントを有効にする</strong></td>
<td>ー</td>
<td>無効化したブレークポイントを全て有効化</td>
</tr>
<tr>
<td><strong>すべてのブレークポイントを無効にする</strong></td>
<td>ー</td>
<td>ブレークポイントを消さずに一時無効化</td>
</tr>
<tr>
<td><strong>すべてのブレークポイントの削除</strong></td>
<td>ー</td>
<td>全ブレークポイントを削除</td>
</tr>
<tr>
<td>その他のデバッガーをインストールします...</td>
<td>ー</td>
<td>デバッガー拡張機能のマーケットプレイスを開く</td>
</tr>
</tbody>
</table>
<p><strong>新しいブレークポイント サブメニュー：</strong></p>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>ブレークポイントの編集</td>
<td>ー</td>
<td>ブレークポイントに条件や動作を設定</td>
</tr>
<tr>
<td>条件付きブレークポイント...</td>
<td>ー</td>
<td>特定の条件が満たされた時のみ停止</td>
</tr>
<tr>
<td><strong>インライン ブレークポイント</strong></td>
<td><code>Shift+F9</code></td>
<td>1行に複数の式がある場合に特定箇所で停止</td>
</tr>
<tr>
<td>関数のブレークポイント...</td>
<td>ー</td>
<td>関数名で停止箇所を指定（ソースなしでも設定可能）</td>
</tr>
<tr>
<td>トリガーされたブレークポイント...</td>
<td>ー</td>
<td>別のブレークポイントが実行された後に有効になるブレークポイント</td>
</tr>
<tr>
<td>ログポイント...</td>
<td>ー</td>
<td>停止せずにコンソールにログを出力するブレークポイント</td>
</tr>
</tbody>
</table>
<p><strong>条件付きブレークポイントの活用：</strong></p>
<pre><code class="language-plaintext">// ループの特定の回数でのみ停止したい場合
条件: i === 100  →  i が100の時だけ停止

// 特定の値の時だけ停止
条件: user.id === "admin"  →  adminユーザーの時だけ停止</code></pre>
<hr>
<h2><span id="toc39">ターミナル(T)メニュー</span></h2>
<p>統合ターミナルとタスク実行を管理します。</p>
<p><!-- ![ターミナルメニュー](images/menu-terminal.jpg) --></p>
<h3><span id="toc40">ターミナル操作</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>新しいターミナル</strong> ★★★</td>
<td><code>Ctrl+Shift+`</code></td>
<td>新しいターミナルを作成。複数の作業を並行する時に</td>
</tr>
<tr>
<td><strong>ターミナルの分割</strong> ★★</td>
<td><code>Ctrl+Shift+5</code></td>
<td>現在のターミナルを左右に分割</td>
</tr>
<tr>
<td><strong>新しいターミナル ウィンドウ</strong></td>
<td><code>Ctrl+Shift+Alt+@</code></td>
<td>ターミナルを別ウィンドウとして開く</td>
</tr>
</tbody>
</table>
<p><strong>ターミナル活用術：</strong></p>
<pre><code class="language-plaintext">// 複数の作業を並行する場合
1. Ctrl+Shift+` で新しいターミナルを複数作成
2. ターミナルに名前を付けて区別（右クリック→「名前の変更」）
3. フロントエンド用・バックエンド用・Git用など用途別に使い分け</code></pre>
<h3><span id="toc41">タスク実行</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>タスクの実行...</strong></td>
<td>ー</td>
<td>設定済みタスクを選択して実行</td>
</tr>
<tr>
<td><strong>ビルド タスクの実行...</strong> ★★</td>
<td><code>Ctrl+Shift+B</code></td>
<td>デフォルトのビルドタスクを実行</td>
</tr>
<tr>
<td><strong>アクティブなファイルの実行</strong></td>
<td>ー</td>
<td>現在開いているファイルを直接実行</td>
</tr>
<tr>
<td><strong>選択したテキストの実行</strong></td>
<td>ー</td>
<td>選択したテキストをターミナルで実行</td>
</tr>
</tbody>
</table>
<h3><span id="toc42">実行中のタスク管理</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td>実行中のタスクを表示...</td>
<td>ー</td>
<td>現在バックグラウンドで実行中のタスクを確認</td>
</tr>
<tr>
<td>タスクの実行を再開...</td>
<td>ー</td>
<td>停止したタスクを再開</td>
</tr>
<tr>
<td>タスクの終了...</td>
<td>ー</td>
<td>実行中のタスクを終了</td>
</tr>
</tbody>
</table>
<h3><span id="toc43">タスク設定</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>タスクの構成...</strong></td>
<td>ー</td>
<td><code>.vscode/tasks.json</code> を開いてタスクを設定</td>
</tr>
<tr>
<td><strong>既定のビルド タスクの構成...</strong></td>
<td>ー</td>
<td><code>Ctrl+Shift+B</code> で実行されるタスクを設定</td>
</tr>
</tbody>
</table>
<p><strong>tasks.json の基本例：</strong></p>
<pre><code class="language-json">{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "npm build",
            "type": "npm",
            "script": "build",
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}</code></pre>
<hr>
<h2><span id="toc44">ヘルプ(H)メニュー</span></h2>
<p>学習リソース・情報・サポートへのアクセスを提供します。</p>
<p><!-- ![ヘルプメニュー](images/menu-help.jpg) --></p>
<h3><span id="toc45">学習リソース</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>ようこそ</strong></td>
<td>ー</td>
<td>VSCodeのウェルカムページを開く。初期設定や最近のファイルにアクセス</td>
</tr>
<tr>
<td><strong>すべてのコマンドの表示</strong></td>
<td><code>Ctrl+Shift+P</code></td>
<td>コマンドパレットを開く（表示メニューと同一）</td>
</tr>
<tr>
<td><strong>参照資料</strong></td>
<td>ー</td>
<td>ドキュメント・APIリファレンスへのリンク集</td>
</tr>
<tr>
<td><strong>チュートリアルを開きます...</strong></td>
<td>ー</td>
<td>インタラクティブなチュートリアルを起動</td>
</tr>
<tr>
<td><strong>エディター プレイグラウンド</strong></td>
<td>ー</td>
<td>VSCodeの機能を試せる演習場を開く。初心者に最適</td>
</tr>
</tbody>
</table>
<h3><span id="toc46">リリース情報</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>リリース ノートの表示</strong></td>
<td>ー</td>
<td>最新バージョンの変更点を確認</td>
</tr>
<tr>
<td><strong>アクセシビリティ機能の概要</strong></td>
<td>ー</td>
<td>スクリーンリーダー等のアクセシビリティ機能説明</td>
</tr>
<tr>
<td><strong>@vscode に確認してください</strong></td>
<td>ー</td>
<td>Copilot ChatでVSCodeの質問を直接AIに聞く</td>
</tr>
</tbody>
</table>
<h3><span id="toc47">キーボード・チュートリアル</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>ショートカット</th>
<th>説明・使いどころ</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>キーボード ショートカットの参照</strong> ★★</td>
<td><code>Ctrl+K Ctrl+R</code></td>
<td>PDFのショートカット一覧をブラウザで開く</td>
</tr>
<tr>
<td><strong>ビデオ チュートリアル</strong></td>
<td>ー</td>
<td>公式YouTubeチュートリアルを開く</td>
</tr>
<tr>
<td><strong>ヒントとトリビア</strong></td>
<td>ー</td>
<td>知っておくと便利なTipsを紹介</td>
</tr>
</tbody>
</table>
<h3><span id="toc48">コミュニティ</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>YouTube で参加する</td>
<td>VSCode公式YouTubeチャンネルへ</td>
</tr>
<tr>
<td>機能要求の検索</td>
<td>GitHubのFeature Requestを検索</td>
</tr>
<tr>
<td>問題を報告</td>
<td>バグをGitHubにレポート</td>
</tr>
</tbody>
</table>
<h3><span id="toc49">法的情報・ツール</span></h3>
<table>
<thead>
<tr>
<th>メニュー項目</th>
<th>説明</th>
</tr>
</thead>
<tbody>
<tr>
<td>ライセンスの表示</td>
<td>ライセンス情報</td>
</tr>
<tr>
<td>プライバシーに関する声明</td>
<td>プライバシーポリシー</td>
</tr>
<tr>
<td><strong>開発者ツールの切り替え</strong></td>
<td>Chrome開発者ツールを開く（拡張機能開発時に使用）</td>
</tr>
<tr>
<td><strong>プロセス エクスプローラーを開く</strong></td>
<td>VSCode内のプロセス一覧とメモリ使用量を確認</td>
</tr>
<tr>
<td><strong>更新の確認...</strong></td>
<td>最新バージョンへの更新を確認・実行</td>
</tr>
<tr>
<td><strong>バージョン情報</strong></td>
<td>インストール済みのVSCodeバージョンを確認</td>
</tr>
</tbody>
</table>
<hr>
<h2><span id="toc50">メニュー別ショートカットキー早見表</span></h2>
<h3><span id="toc51">ファイル(F)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Ctrl+N</code></td>
<td>新しいテキスト ファイル</td>
</tr>
<tr>
<td><code>Ctrl+Shift+N</code></td>
<td>新しいウィンドウ</td>
</tr>
<tr>
<td><code>Ctrl+O</code></td>
<td>ファイルを開く</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+O</code></td>
<td>フォルダーを開く</td>
</tr>
<tr>
<td><code>Ctrl+Shift+T</code></td>
<td>閉じたエディターを再度開く</td>
</tr>
<tr>
<td><code>Ctrl+R</code></td>
<td>最近使用した項目（その他）</td>
</tr>
<tr>
<td><code>Ctrl+S</code></td>
<td>保存</td>
</tr>
<tr>
<td><code>Ctrl+Shift+S</code></td>
<td>名前を付けて保存</td>
</tr>
<tr>
<td><code>Ctrl+K S</code></td>
<td>すべて保存</td>
</tr>
<tr>
<td><code>Ctrl+,</code></td>
<td>設定</td>
</tr>
<tr>
<td><code>Ctrl+Shift+X</code></td>
<td>拡張機能</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+S</code></td>
<td>キーボード ショートカット</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+T</code></td>
<td>配色テーマ</td>
</tr>
<tr>
<td><code>Ctrl+F4</code></td>
<td>エディターを閉じる</td>
</tr>
<tr>
<td><code>Ctrl+K F</code></td>
<td>フォルダーを閉じる</td>
</tr>
<tr>
<td><code>Alt+F4</code></td>
<td>ウィンドウを閉じる</td>
</tr>
</tbody>
</table>
<h3><span id="toc52">編集(E)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Ctrl+Z</code></td>
<td>元に戻す</td>
</tr>
<tr>
<td><code>Ctrl+Y</code></td>
<td>やり直し</td>
</tr>
<tr>
<td><code>Ctrl+X</code></td>
<td>切り取り</td>
</tr>
<tr>
<td><code>Ctrl+C</code></td>
<td>コピー</td>
</tr>
<tr>
<td><code>Ctrl+V</code></td>
<td>貼り付け</td>
</tr>
<tr>
<td><code>Ctrl+F</code></td>
<td>検索</td>
</tr>
<tr>
<td><code>Ctrl+H</code></td>
<td>置換</td>
</tr>
<tr>
<td><code>Ctrl+Shift+F</code></td>
<td>フォルダーを指定して検索</td>
</tr>
<tr>
<td><code>Ctrl+Shift+H</code></td>
<td>複数のファイルで置換</td>
</tr>
<tr>
<td><code>Ctrl+/</code></td>
<td>行コメントの切り替え</td>
</tr>
<tr>
<td><code>Shift+Alt+A</code></td>
<td>ブロック コメントの切り替え</td>
</tr>
</tbody>
</table>
<h3><span id="toc53">選択(S)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Ctrl+A</code></td>
<td>すべて選択</td>
</tr>
<tr>
<td><code>Shift+Alt+→</code></td>
<td>選択範囲の展開</td>
</tr>
<tr>
<td><code>Shift+Alt+←</code></td>
<td>選択範囲の縮小</td>
</tr>
<tr>
<td><code>Shift+Alt+↑</code></td>
<td>行を上へコピー</td>
</tr>
<tr>
<td><code>Shift+Alt+↓</code></td>
<td>行を下へコピー</td>
</tr>
<tr>
<td><code>Alt+↑</code></td>
<td>行を上へ移動</td>
</tr>
<tr>
<td><code>Alt+↓</code></td>
<td>行を下へ移動</td>
</tr>
<tr>
<td><code>Ctrl+Alt+↑</code></td>
<td>カーソルを上に挿入</td>
</tr>
<tr>
<td><code>Ctrl+Alt+↓</code></td>
<td>カーソルを下に挿入</td>
</tr>
<tr>
<td><code>Shift+Alt+I</code></td>
<td>カーソルを行末に挿入</td>
</tr>
<tr>
<td><code>Ctrl+D</code></td>
<td>次の出現個所を追加</td>
</tr>
<tr>
<td><code>Ctrl+Shift+L</code></td>
<td>すべての出現箇所を選択</td>
</tr>
</tbody>
</table>
<h3><span id="toc54">表示(V)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Ctrl+Shift+P</code></td>
<td>コマンド パレット</td>
</tr>
<tr>
<td><code>F11</code></td>
<td>全画面表示</td>
</tr>
<tr>
<td><code>Ctrl+K Z</code></td>
<td>Zen Mode</td>
</tr>
<tr>
<td><code>Ctrl+B</code></td>
<td>プライマリ サイド バー</td>
</tr>
<tr>
<td><code>Ctrl+Alt+B</code></td>
<td>セカンダリ サイド バー</td>
</tr>
<tr>
<td><code>Ctrl+J</code></td>
<td>パネル</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+\</code></td>
<td>分割（上）</td>
</tr>
<tr>
<td><code>Shift+Alt+0</code></td>
<td>レイアウトの反転</td>
</tr>
<tr>
<td><code>Ctrl+Shift+E</code></td>
<td>エクスプローラー</td>
</tr>
<tr>
<td><code>Ctrl+Shift+F</code></td>
<td>検索</td>
</tr>
<tr>
<td><code>Ctrl+Shift+G</code></td>
<td>ソース管理</td>
</tr>
<tr>
<td><code>Ctrl+Shift+D</code></td>
<td>実行</td>
</tr>
<tr>
<td><code>Ctrl+Shift+X</code></td>
<td>拡張機能</td>
</tr>
<tr>
<td><code>Ctrl+Shift+M</code></td>
<td>問題</td>
</tr>
<tr>
<td><code>Ctrl+Shift+U</code></td>
<td>出力</td>
</tr>
<tr>
<td><code>Ctrl+Shift+Y</code></td>
<td>デバッグ コンソール</td>
</tr>
<tr>
<td><code>Ctrl+`</code></td>
<td>ターミナル</td>
</tr>
<tr>
<td><code>Alt+Z</code></td>
<td>右端での折り返し</td>
</tr>
</tbody>
</table>
<h3><span id="toc55">移動(G)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Alt+←</code></td>
<td>戻る</td>
</tr>
<tr>
<td><code>Alt+→</code></td>
<td>進む</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+Q</code></td>
<td>最後の編集場所</td>
</tr>
<tr>
<td><code>Ctrl+PageDown</code></td>
<td>次のエディター</td>
</tr>
<tr>
<td><code>Ctrl+PageUp</code></td>
<td>前のエディター</td>
</tr>
<tr>
<td><code>Ctrl+1〜5</code></td>
<td>グループ 1〜5</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+←/→/↑/↓</code></td>
<td>グループ（方向）</td>
</tr>
<tr>
<td><code>Ctrl+P</code></td>
<td>ファイルに移動</td>
</tr>
<tr>
<td><code>Ctrl+T</code></td>
<td>ワークスペース内のシンボルへ移動</td>
</tr>
<tr>
<td><code>Ctrl+Shift+O</code></td>
<td>エディター内のシンボルへ移動</td>
</tr>
<tr>
<td><code>F12</code></td>
<td>定義に移動</td>
</tr>
<tr>
<td><code>Shift+F12</code></td>
<td>参照へ移動</td>
</tr>
<tr>
<td><code>Ctrl+G</code></td>
<td>行/列に移動</td>
</tr>
<tr>
<td><code>Ctrl+Shift+\</code></td>
<td>ブラケットに移動</td>
</tr>
<tr>
<td><code>F8</code></td>
<td>次の問題箇所</td>
</tr>
<tr>
<td><code>Shift+F8</code></td>
<td>前の問題箇所</td>
</tr>
<tr>
<td><code>Alt+F3</code></td>
<td>次の変更箇所</td>
</tr>
<tr>
<td><code>Shift+Alt+F3</code></td>
<td>前の変更箇所</td>
</tr>
</tbody>
</table>
<h3><span id="toc56">実行(R)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>F5</code></td>
<td>デバッグの開始／続行</td>
</tr>
<tr>
<td><code>Ctrl+F5</code></td>
<td>デバッグなしで実行</td>
</tr>
<tr>
<td><code>Shift+F5</code></td>
<td>デバッグの停止</td>
</tr>
<tr>
<td><code>Ctrl+Shift+F5</code></td>
<td>デバッグの再起動</td>
</tr>
<tr>
<td><code>F10</code></td>
<td>ステップ オーバーする</td>
</tr>
<tr>
<td><code>F11</code></td>
<td>ステップ インする</td>
</tr>
<tr>
<td><code>Shift+F11</code></td>
<td>ステップ アウトする</td>
</tr>
<tr>
<td><code>F9</code></td>
<td>ブレークポイントの切り替え</td>
</tr>
<tr>
<td><code>Shift+F9</code></td>
<td>インライン ブレークポイント</td>
</tr>
</tbody>
</table>
<h3><span id="toc57">ターミナル(T)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Ctrl+Shift+`</code></td>
<td>新しいターミナル</td>
</tr>
<tr>
<td><code>Ctrl+Shift+5</code></td>
<td>ターミナルの分割</td>
</tr>
<tr>
<td><code>Ctrl+Shift+Alt+@</code></td>
<td>新しいターミナル ウィンドウ</td>
</tr>
<tr>
<td><code>Ctrl+Shift+B</code></td>
<td>ビルド タスクの実行</td>
</tr>
</tbody>
</table>
<h3><span id="toc58">ヘルプ(H)メニュー</span></h3>
<table>
<thead>
<tr>
<th>ショートカット</th>
<th>機能</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>Ctrl+Shift+P</code></td>
<td>すべてのコマンドの表示</td>
</tr>
<tr>
<td><code>Ctrl+K Ctrl+R</code></td>
<td>キーボード ショートカットの参照</td>
</tr>
</tbody>
</table>
<hr>
<h2><span id="toc59">よく使うショートカットTOP30</span></h2>
<h3><span id="toc60">絶対に覚えるべき（★★★）</span></h3>
<ol>
<li><strong><code>Ctrl+Shift+P</code></strong> - コマンドパレット（全機能の入り口）</li>
<li><strong><code>Ctrl+P</code></strong> - ファイルへ移動（ファイル名検索）</li>
<li><strong><code>Ctrl+S</code></strong> - 保存</li>
<li><strong><code>Ctrl+F</code></strong> - ファイル内検索</li>
<li><strong><code>Ctrl+H</code></strong> - ファイル内置換</li>
<li><strong><code>Ctrl+Shift+F</code></strong> - 横断検索</li>
<li><strong><code>Ctrl+D</code></strong> - 次の一致を選択（マルチカーソル）</li>
<li><strong><code>Ctrl+/</code></strong> - 行コメントトグル</li>
<li><strong><code>F12</code></strong> - 定義に移動</li>
<li><strong><code>Alt+←</code></strong> - 戻る（定義移動後の復帰）</li>
<li><strong><code>Ctrl+`</code></strong> - ターミナル表示/非表示</li>
<li><strong><code>F5</code></strong> - デバッグ開始/続行</li>
<li><strong><code>F10</code></strong> - ステップ実行</li>
</ol>
<h3><span id="toc61">効率を大幅に上げる（★★）</span></h3>
<ol start="14">
<li><strong><code>Ctrl+Shift+L</code></strong> - 全出現箇所を選択</li>
<li><strong><code>Ctrl+Alt+↑/↓</code></strong> - マルチカーソル追加</li>
<li><strong><code>Alt+↑/↓</code></strong> - 行を移動</li>
<li><strong><code>Shift+Alt+↓</code></strong> - 行を複製</li>
<li><strong><code>Ctrl+B</code></strong> - サイドバートグル</li>
<li><strong><code>Ctrl+Shift+T</code></strong> - 閉じたタブを復元</li>
<li><strong><code>Ctrl+G</code></strong> - 行に移動</li>
<li><strong><code>F8</code></strong> - 次のエラーに移動</li>
<li><strong><code>Ctrl+1/2</code></strong> - エディターグループ切り替え</li>
<li><strong><code>Ctrl+PageDown/Up</code></strong> - タブ切り替え</li>
<li><strong><code>F9</code></strong> - ブレークポイント設定</li>
<li><strong><code>Ctrl+Shift+G</code></strong> - Git操作パネル</li>
</ol>
<hr>
<h2><span id="toc62">カテゴリ別活用シーン</span></h2>
<h3><span id="toc63">新しいプロジェクトを始める時</span></h3>
<pre><code class="language-plaintext">1. Ctrl+K Ctrl+O → フォルダを開く
2. Ctrl+Shift+E → エクスプローラーでファイル構造確認
3. Ctrl+N → 新しいファイルを作成
4. Ctrl+S → 保存（ファイル名・拡張子を設定）</code></pre>
<h3><span id="toc64">コードを読む・調査する時</span></h3>
<pre><code class="language-plaintext">1. Ctrl+P → ファイル名で素早く移動
2. Ctrl+T → シンボル（関数名）で検索
3. F12 → 定義に移動
4. Shift+F12 → 参照箇所を確認
5. Alt+← → 元の場所に戻る</code></pre>
<h3><span id="toc65">コードを書く時</span></h3>
<pre><code class="language-plaintext">1. Ctrl+Space → 補完候補を表示
2. Ctrl+/ → コメントアウト
3. Alt+↑/↓ → 行の並び替え
4. Shift+Alt+↓ → 行の複製
5. Shift+Alt+F → コードフォーマット</code></pre>
<h3><span id="toc66">リファクタリングする時</span></h3>
<pre><code class="language-plaintext">1. F2 → シンボル名変更（全箇所一括リネーム）
2. Ctrl+D → 同じ単語を順に選択
3. Ctrl+Shift+L → 全箇所を一括選択
4. Ctrl+. → クイックフィックス（AIによる修正案）
5. Ctrl+H → 文字列置換</code></pre>
<h3><span id="toc67">デバッグする時</span></h3>
<pre><code class="language-plaintext">1. F9 → ブレークポイント設定
2. F5 → デバッグ開始
3. F10 → ステップ実行（関数をスキップ）
4. F11 → 関数内に入る
5. Shift+F11 → 関数から抜ける
6. Shift+F5 → デバッグ終了</code></pre>
<h3><span id="toc68">チームでレビューする時</span></h3>
<pre><code class="language-plaintext">1. Ctrl+Shift+G → Gitの差分確認
2. Alt+F3 / Shift+Alt+F3 → 変更箇所を順に確認
3. F8 / Shift+F8 → エラー箇所を順に確認
4. Ctrl+K Ctrl+Z → Zen Modeで集中してレビュー</code></pre>
<hr>
<h2><span id="toc69">まとめ</span></h2>
<p>VSCodeのプルダウンメニューには、知られていない便利な機能が数多く含まれています。</p>
<p><strong>覚え方のコツ：</strong></p>
<ol>
<li>まずは <code>Ctrl+Shift+P</code>（コマンドパレット）を覚える</li>
<li>日常的に使う操作から少しずつショートカットに置き換える</li>
<li>困ったら <code>Ctrl+Shift+P</code> で機能を検索して、そのショートカットを確認する</li>
<li>メニューを開いた時に右側に表示されるショートカットを意識して見る習慣をつける</li>
</ol>
<p><strong>おすすめの学習順：</strong></p>
<pre><code class="language-plaintext">Week 1: ファイル操作（Ctrl+P, Ctrl+S, Ctrl+O）
Week 2: 編集操作（Ctrl+F, Ctrl+H, Ctrl+/, Alt+↑/↓）
Week 3: マルチカーソル（Ctrl+D, Ctrl+Alt+↑/↓）
Week 4: ナビゲーション（F12, Alt+←, F8）
Week 5: デバッグ（F5, F9, F10, F11）</code></pre>
<p>メニューを一つひとつ確認しながら、日々の開発に活かしてください。</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"Visual Studio Codeパーフェクトマスター (Perfect master 191)","b":"秀和システム","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/512j2jvPZaL._SL500_.jpg","\/513FDOSc+kL._SL500_.jpg","\/51DNWpYvdOL._SL500_.jpg","\/41z2X1zOrpL._SL500_.jpg","\/41XqRS4jUKL._SL500_.jpg","\/41OswTi6PTL._SL500_.jpg","\/41GhyMHAgzL._SL500_.jpg","\/41-NQMwM7qL._SL500_.jpg","\/41U6RrhQD1L._SL500_.jpg","\/41eZN6vnHEL._SL500_.jpg","\/51IuXpA8zPL._SL500_.jpg","\/41ih3T2EW1L._SL500_.jpg","\/41hnzq51C3L._SL500_.jpg","\/41uYy3uzxZL._SL500_.jpg","\/41i+WvnPyML._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4798067970","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4798067970","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Visual%20Studio%20Code%E3%83%91%E3%83%BC%E3%83%95%E3%82%A7%E3%82%AF%E3%83%88%E3%83%9E%E3%82%B9%E3%82%BF%E3%83%BC%20(Perfect%20master%20191)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=Visual%20Studio%20Code%E3%83%91%E3%83%BC%E3%83%95%E3%82%A7%E3%82%AF%E3%83%88%E3%83%9E%E3%82%B9%E3%82%BF%E3%83%BC%20(Perfect%20master%20191)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"lmyIj","s":"s"});</script></p>
<div id="msmaflink-lmyIj">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc70">関連記事</span></h2>
<p>VSCodeのキーボードショートカット全般については姉妹記事もご覧ください：</p>

<a rel="noopener" href="https://caymezon.com/vscode-keyboard-shortcuts-complete-guide/" title="VSCode標準ショートカットキー完全ガイド【日本語解説・おすすめ付き】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/01/vscode-keyboard-shortcuts-complete-guide-featured-707e1c-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/01/vscode-keyboard-shortcuts-complete-guide-featured-707e1c-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/01/vscode-keyboard-shortcuts-complete-guide-featured-707e1c-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/01/vscode-keyboard-shortcuts-complete-guide-featured-707e1c-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/01/vscode-keyboard-shortcuts-complete-guide-featured-707e1c-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCode標準ショートカットキー完全ガイド【日本語解説・おすすめ付き】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにVSCodeを使いこなすには、ショートカットキーの習得が必須です。しかし、VSCodeの標準ショートカット一覧は英語表記で分かりにくいのが難点。本記事では、VSCodeの標準ショートカットキーをカテゴリ別に日本語化し、特に重要なもの...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.01.25</div></div></div></div></a>
<p>Eclipseをお使いの方はこちら：</p>

<a rel="noopener" href="https://caymezon.com/eclipse-keyboard-shortcuts-complete-guide/" title="Eclipse標準ショートカットキー完全ガイド【日本語解説・おすすめ付き】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/eclipse-keyboard-shortcuts-complete-guide-featured-895798-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/eclipse-keyboard-shortcuts-complete-guide-featured-895798-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/eclipse-keyboard-shortcuts-complete-guide-featured-895798-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/eclipse-keyboard-shortcuts-complete-guide-featured-895798-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/eclipse-keyboard-shortcuts-complete-guide-featured-895798-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">Eclipse標準ショートカットキー完全ガイド【日本語解説・おすすめ付き】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにEclipseを使いこなすには、ショートカットキーの習得が必須です。特にJava開発では、リファクタリングやコード補完、デバッグなど、ショートカットキーを活用することで作業効率が劇的に向上します。本記事では、Eclipse（STS4...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.06</div></div></div></div></a>
<hr>
<p><strong>タグ:</strong> #VSCode #ショートカットキー #メニュー #生産性向上 #効率化 #エディター</p><p>The post <a href="https://caymezon.com/vscode-menu-complete-guide/">VSCode全プルダウンメニュー完全解説【ショートカットキー付き・使いどころ徹底ガイド】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/vscode-menu-complete-guide/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>VSCodeで「SQL整形ツール」を実現するTypeScriptマクロ【sql-formatter活用で複数方言対応】</title>
		<link>https://caymezon.com/vscode-sql-formatter-macro/</link>
					<comments>https://caymezon.com/vscode-sql-formatter-macro/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sun, 15 Feb 2026 01:35:49 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[TypeScript]]></category>
		<category><![CDATA[VSCode]]></category>
		<category><![CDATA[データベース]]></category>
		<category><![CDATA[マクロ]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20139</guid>

					<description><![CDATA[<p>目次 はじめに：読みづらいSQLに苦労していませんか?この記事で分かることなぜSQL整形ツールが必要なのか？開発現場でのSQL整形の課題既存のSQL整形ツールの問題点このマクロで実現できること実装した機能の概要できること [&#8230;]</p>
<p>The post <a href="https://caymezon.com/vscode-sql-formatter-macro/">VSCodeで「SQL整形ツール」を実現するTypeScriptマクロ【sql-formatter活用で複数方言対応】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-14" checked><label class="toc-title" for="toc-checkbox-14">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに：読みづらいSQLに苦労していませんか?</a></li><li><a href="#toc2" tabindex="0">この記事で分かること</a></li><li><a href="#toc3" tabindex="0">なぜSQL整形ツールが必要なのか？</a><ol><li><a href="#toc4" tabindex="0">開発現場でのSQL整形の課題</a></li><li><a href="#toc5" tabindex="0">既存のSQL整形ツールの問題点</a></li><li><a href="#toc6" tabindex="0">このマクロで実現できること</a></li></ol></li><li><a href="#toc7" tabindex="0">実装した機能の概要</a><ol><li><a href="#toc8" tabindex="0">できること</a></li><li><a href="#toc9" tabindex="0">対応SQL方言（8種類）</a></li><li><a href="#toc10" tabindex="0">オプション選択機能</a></li><li><a href="#toc11" tabindex="0">整形例</a></li></ol></li><li><a href="#toc12" tabindex="0">具体的な使用場面とメリット</a><ol><li><a href="#toc13" tabindex="0">場面1：本番環境のログからSQLを抽出して分析</a></li><li><a href="#toc14" tabindex="0">場面2：他人が書いた複雑なクエリをレビュー</a></li><li><a href="#toc15" tabindex="0">場面3：マイグレーションスクリプトの整形</a></li><li><a href="#toc16" tabindex="0">場面4：プロジェクトのコーディング規約統一</a></li><li><a href="#toc17" tabindex="0">場面5：Oracle PL/SQLのスラッシュ区切りに対応</a></li><li><a href="#toc18" tabindex="0">場面6：複数SQLの一括整形</a></li></ol></li><li><a href="#toc19" tabindex="0">TypeScript実装の詳細</a></li><li><a href="#toc20" tabindex="0">コードのポイント解説</a><ol><li><a href="#toc21" tabindex="0">1. sql-formatterライブラリの活用</a></li><li><a href="#toc22" tabindex="0">2. オプション選択ダイアログの3段階構成</a></li><li><a href="#toc23" tabindex="0">3. Oracle PL/SQLのスラッシュ区切り対応</a></li><li><a href="#toc24" tabindex="0">4. エラーハンドリングの充実</a></li><li><a href="#toc25" tabindex="0">5. 新規ファイル出力とファイル名自動生成</a></li><li><a href="#toc26" tabindex="0">6. 右側に並べて表示</a></li></ol></li><li><a href="#toc27" tabindex="0">使い方</a><ol><li><a href="#toc28" tabindex="0">1. 拡張機能のインストール</a></li><li><a href="#toc29" tabindex="0">2. 基本的な使い方</a></li><li><a href="#toc30" tabindex="0">3. 実践例</a></li></ol></li><li><a href="#toc31" tabindex="0">package.jsonの設定</a><ol><li><a href="#toc32" tabindex="0">extension.tsでの登録</a></li></ol></li><li><a href="#toc33" tabindex="0">メリット・デメリット</a><ol><li><a href="#toc34" tabindex="0">メリット</a></li><li><a href="#toc35" tabindex="0">デメリット</a></li></ol></li><li><a href="#toc36" tabindex="0">トラブルシューティング</a><ol><li><a href="#toc37" tabindex="0">Q: SQL整形に失敗する</a></li><li><a href="#toc38" tabindex="0">Q: 方言を間違えて選択した</a></li><li><a href="#toc39" tabindex="0">Q: 整形後のファイルを保存したくない</a></li><li><a href="#toc40" tabindex="0">Q: オプション選択が面倒</a></li></ol></li><li><a href="#toc41" tabindex="0">まとめ：SQL整形を1キー操作で実現する快適さ</a></li><li><a href="#toc42" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">はじめに：読みづらいSQLに苦労していませんか?</span></h2>
<p>開発やデータ分析の現場で、こんな経験はありませんか？</p>
<pre><code class="language-sql">SELECT u.id,u.name,u.email,o.order_id,o.total FROM users u INNER JOIN orders o ON u.id=o.user_id WHERE u.status='active' AND o.created_at>='2026-01-01' ORDER BY o.created_at DESC;</code></pre>
<p><strong>改行もインデントもない1行のSQLクエリ</strong>。ログから抽出したSQL、他人が書いた圧縮されたクエリ、古いシステムから取り出したクエリ…。</p>
<p>こういったSQLを読み解く時、手作業で整形するのは本当に面倒です：</p>
<ol>
<li>手動でキーワードごとに改行</li>
<li>インデントを調整</li>
<li>カンマの位置を揃える</li>
<li>大文字・小文字を統一</li>
</ol>
<p><strong>エディタで1つずつ編集するのは時間の無駄</strong>です。</p>
<p>もし、VSCodeで<strong>選択したSQLを1キー操作で整形し、新規ファイルに出力</strong>できたら便利だと思いませんか？</p>
<p>さらに、<strong>複数のSQL方言（MySQL、PostgreSQL、Oracle等）に対応</strong>し、<strong>キーワードの大文字/小文字やインデント幅を選択</strong>できたら？</p>
<p>今回、<code>sql-formatter</code>ライブラリを活用した<strong>SQL整形ツール</strong>をVSCodeのTypeScriptマクロとして実装しました。</p>
<p>同じようにVSCodeで少しでも効率化したい開発者の方に、ぜひ参考にしていただきたい内容です。</p>
<p><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1384942&p_id=170&pc_id=185&pl_id=4062&url=https%3A%2F%2Fwww.amazon.co.jp%2Fs%3Fk%3D%25E6%259C%25AC%2BTypeScript%26__mk_ja_JP%3D%25E3%2582%25AB%25E3%2582%25BF%25E3%2582%25AB%25E3%2583%258A%26crid%3D17LX99IE5I6NF%26sprefix%3D%25E6%259C%25AC%2Btypescript%252Caps%252C173%26ref%3Dnb_sb_noss_2" referrerpolicy="no-referrer-when-downgrade" attributionsrc>Amazon検索[本 TypeScript]</a><img decoding="async" src="//i.moshimo.com/af/i/impression?a_id=1384942&p_id=170&pc_id=185&pl_id=4062" width="1" height="1" style="border:none;" alt="" loading="lazy"></p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで (Software Design plus)","b":"技術評論社","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/510GhCOD1FL._SL500_.jpg","\/41og2y1EEHL._SL500_.jpg","\/51XHb97PpFL._SL500_.jpg","\/51uDIY22bQL._SL500_.jpg","\/51PaoVK3MWL._SL500_.jpg","\/51eG7JBoavL._SL500_.jpg","\/51CDCo8FmJL._SL500_.jpg","\/41JLTXb+tsL._SL500_.jpg","\/51Hsv39e7IL._SL500_.jpg","\/41PTe+TqLEL._SL500_.jpg","\/51TUxdoXjrL._SL500_.jpg","\/51AkZEJWGhL._SL500_.jpg","\/51paP7D5R5L._SL500_.jpg","\/41lJtbpaQvL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4297127474","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4297127474","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"OaDLa","s":"s"});</script></p>
<div id="msmaflink-OaDLa">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc2">この記事で分かること</span></h2>
<ul>
<li>SQL整形ツールの機能と使い方</li>
<li><code>sql-formatter</code>ライブラリの活用方法</li>
<li>対応するSQL方言（8種類）</li>
<li>オプション選択（キーワードケース、インデント幅）</li>
<li>TypeScript実装の詳細コード</li>
<li>エラーハンドリングとユーザビリティ</li>
<li>実務での活用例</li>
</ul>
<h2><span id="toc3">なぜSQL整形ツールが必要なのか？</span></h2>
<h3><span id="toc4">開発現場でのSQL整形の課題</span></h3>
<p><strong>課題1：ログから抽出したSQLが読めない</strong></p>
<pre><code class="language-sql">SELECT*FROM users WHERE status='active'AND created_at>='2026-01-01'ORDER BY id DESC LIMIT 10;</code></pre>
<p>→ 本番環境のログから取り出したクエリは、改行もインデントもなく圧縮されている</p>
<p><strong>課題2：SQL方言の違いに対応できない</strong></p>
<ul>
<li>MySQL独自の構文（LIMIT、バッククォート）</li>
<li>PostgreSQL独自の構文（::型キャスト、RETURNING）</li>
<li>Oracle独自の構文（DUAL、ROWNUM、PL/SQL）</li>
<li>SQL Server独自の構文（TOP、[]識別子）</li>
</ul>
<p>→ 汎用的な整形ツールでは方言の違いを正しく扱えない</p>
<p><strong>課題3：コーディング規約の統一</strong></p>
<ul>
<li>プロジェクトA：キーワードは大文字（SELECT、FROM）</li>
<li>プロジェクトB：キーワードは小文字（select、from）</li>
<li>プロジェクトC：インデントは2スペース</li>
<li>プロジェクトD：インデントは4スペース</li>
</ul>
<p>→ 手作業での統一は非効率</p>
<h3><span id="toc5">既存のSQL整形ツールの問題点</span></h3>
<p><strong>オンライン整形ツール：</strong></p>
<ul>
<li>ブラウザで別サイトを開く手間</li>
<li>セキュリティの懸念（機密SQLを外部に送信）</li>
<li>ネットワーク接続が必要</li>
</ul>
<p><strong>DBクライアントツール：</strong></p>
<ul>
<li>特定のDBにしか対応していない</li>
<li>エディタ上で完結しない</li>
<li>ツールの立ち上げに時間がかかる</li>
</ul>
<p><strong>VSCode拡張機能：</strong></p>
<ul>
<li>設定が複雑</li>
<li>カスタマイズ性が低い</li>
<li>出力先が固定</li>
</ul>
<h3><span id="toc6">このマクロで実現できること</span></h3>
<table>
<thead>
<tr>
<th>項目</th>
<th>オンラインツール</th>
<th>DBクライアント</th>
<th>このマクロ</th>
</tr>
</thead>
<tbody>
<tr>
<td>方言対応</td>
<td>⚠️ 限定的</td>
<td>⚠️ 特定DBのみ</td>
<td>✅ 8種類対応</td>
</tr>
<tr>
<td>セキュリティ</td>
<td>❌ 外部送信</td>
<td>⚠️ ツール依存</td>
<td>✅ ローカル完結</td>
</tr>
<tr>
<td>操作性</td>
<td>❌ ブラウザ切替</td>
<td>❌ ツール切替</td>
<td>✅ 1キー操作</td>
</tr>
<tr>
<td>カスタマイズ</td>
<td>❌ 不可</td>
<td>⚠️ 限定的</td>
<td>✅ 柔軟に設定</td>
</tr>
<tr>
<td>出力先</td>
<td>❌ 手動コピペ</td>
<td>⚠️ 同一ファイル</td>
<td>✅ 新規ファイル</td>
</tr>
</tbody>
</table>
<h2><span id="toc7">実装した機能の概要</span></h2>
<h3><span id="toc8">できること</span></h3>
<p><strong>選択されたSQLを整形して新規ファイルに出力</strong></p>
<pre><code class="language-plaintext">ステップ1：整形したいSQLを選択（または何も選択せずファイル全体）
ステップ2：コマンド実行
ステップ3：オプション選択ダイアログ
  - SQL方言（MySQL、PostgreSQL、Oracle等）
  - キーワードの大文字/小文字
  - インデント幅（2スペース、4スペース、タブ）
ステップ4：整形されたSQLが右側に新規ファイルで表示
ステップ5：保存ダイアログでファイル名を指定して保存</code></pre>
<h3><span id="toc9">対応SQL方言（8種類）</span></h3>
<h4>1. Standard SQL（標準SQL）</h4>
<pre><code class="language-sql">-- デフォルト、最も汎用的
SELECT * FROM users WHERE id = 1;</code></pre>
<h4>2. MySQL / MariaDB</h4>
<pre><code class="language-sql">-- バッククォート、LIMIT構文
SELECT `id`, `name` FROM `users` LIMIT 10;</code></pre>
<h4>3. PostgreSQL</h4>
<pre><code class="language-sql">-- 型キャスト、RETURNING構文
SELECT id::INTEGER, name FROM users RETURNING *;</code></pre>
<h4>4. T-SQL (Microsoft SQL Server)</h4>
<pre><code class="language-sql">-- TOP構文、[]識別子
SELECT TOP 10 [id], [name] FROM [users];</code></pre>
<h4>5. PL/SQL (Oracle Database)</h4>
<pre><code class="language-sql">-- DUAL、ROWNUM、PL/SQLブロック
SELECT * FROM dual;
SELECT * FROM users WHERE ROWNUM <= 10;</code></pre>
<h4>6. Amazon Redshift</h4>
<pre><code class="language-sql">-- Redshift固有の構文
SELECT * FROM users LIMIT 10;</code></pre>
<h4>7. IBM DB2</h4>
<pre><code class="language-sql">-- DB2固有の構文
SELECT * FROM users FETCH FIRST 10 ROWS ONLY;</code></pre>
<h4>8. MariaDB</h4>
<pre><code class="language-sql">-- MariaDB固有の構文（MySQLベース）
SELECT * FROM users LIMIT 10;</code></pre>
<h3><span id="toc10">オプション選択機能</span></h3>
<h4>1. SQL方言の選択</h4>
<pre><code class="language-plaintext">┌─────────────────────────────────────┐
│ SQL方言を選択してください           │
├─────────────────────────────────────┤
│ ○ Standard SQL (標準SQL)            │
│ ○ MySQL / MariaDB                   │
│ ○ PostgreSQL                        │
│ ○ T-SQL (SQL Server)                │
│ ○ PL/SQL (Oracle)                   │
│ ○ Amazon Redshift                   │
│ ○ IBM DB2                           │
└─────────────────────────────────────┘</code></pre>
<h4>2. キーワードの大文字/小文字</h4>
<pre><code class="language-plaintext">┌─────────────────────────────────────┐
│ キーワードの大文字/小文字を選択     │
├─────────────────────────────────────┤
│ ○ 大文字 (SELECT, FROM, WHERE)      │
│ ○ 小文字 (select, from, where)      │
│ ○ 元のまま保持                      │
└─────────────────────────────────────┘</code></pre>
<h4>3. インデント幅</h4>
<pre><code class="language-plaintext">┌─────────────────────────────────────┐
│ インデント幅を選択                  │
├─────────────────────────────────────┤
│ ○ 2スペース (推奨)                  │
│ ○ 4スペース                         │
│ ○ タブ                              │
└─────────────────────────────────────┘</code></pre>
<h3><span id="toc11">整形例</span></h3>
<p><strong>整形前：</strong></p>
<pre><code class="language-sql">SELECT u.id,u.name,u.email,o.order_id,o.total,o.created_at FROM users u INNER JOIN orders o ON u.id=o.user_id WHERE u.status='active' AND o.total>=1000 AND o.created_at>='2026-01-01' ORDER BY o.created_at DESC,o.total DESC LIMIT 100;</code></pre>
<p><strong>整形後（大文字・2スペース）：</strong></p>
<pre><code class="language-sql">SELECT
  u.id,
  u.name,
  u.email,
  o.order_id,
  o.total,
  o.created_at
FROM
  users u
  INNER JOIN orders o ON u.id = o.user_id
WHERE
  u.status = 'active'
  AND o.total >= 1000
  AND o.created_at >= '2026-01-01'
ORDER BY
  o.created_at DESC,
  o.total DESC
LIMIT
  100;</code></pre>
<p><strong>整形後（小文字・4スペース）：</strong></p>
<pre><code class="language-sql">select
    u.id,
    u.name,
    u.email,
    o.order_id,
    o.total,
    o.created_at
from
    users u
    inner join orders o on u.id = o.user_id
where
    u.status = 'active'
    and o.total >= 1000
    and o.created_at >= '2026-01-01'
order by
    o.created_at desc,
    o.total desc
limit
    100;</code></pre>
<h2><span id="toc12">具体的な使用場面とメリット</span></h2>
<h3><span id="toc13">場面1：本番環境のログからSQLを抽出して分析</span></h3>
<p><strong>シーン：パフォーマンス問題の調査</strong></p>
<pre><code class="language-plaintext">application.log
---
[2026-02-15 10:30:45] Slow Query: SELECT u.id,u.name,p.product_id,p.name,p.price FROM users u JOIN purchases pu ON u.id=pu.user_id JOIN products p ON pu.product_id=p.id WHERE u.created_at>='2026-01-01' ORDER BY pu.created_at DESC;</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>SQLの部分を選択</li>
<li>コマンド実行</li>
<li>方言選択（MySQL）</li>
<li>大文字・2スペース</li>
<li>整形されたSQLを確認してインデックス追加の検討</li>
</ol>
<p><strong>メリット：</strong></p>
<ul>
<li>圧縮されたログからSQLを即座に読みやすく変換</li>
<li>結合条件やWHERE句を視覚的に確認</li>
<li>パフォーマンスチューニングの第一歩</li>
</ul>
<h3><span id="toc14">場面2：他人が書いた複雑なクエリをレビュー</span></h3>
<p><strong>シーン：コードレビュー</strong></p>
<pre><code class="language-sql">-- レビュー対象のSQL（圧縮されている）
select u.id,u.name,u.email,count(o.order_id) as order_count,sum(o.total) as total_sales from users u left join orders o on u.id=o.user_id where u.status='active' group by u.id,u.name,u.email having count(o.order_id)>0 order by total_sales desc;</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>SQLを選択</li>
<li>コマンド実行</li>
<li>方言選択（Standard SQL）</li>
<li>大文字・2スペース</li>
<li>整形されたSQLでロジックを確認</li>
</ol>
<p><strong>メリット：</strong></p>
<ul>
<li>GROUP BYとHAVINGの条件を明確化</li>
<li>結合条件の妥当性を視覚的に確認</li>
<li>レビューコメントを的確に指摘</li>
</ul>
<h3><span id="toc15">場面3：マイグレーションスクリプトの整形</span></h3>
<p><strong>シーン：データベース移行作業</strong></p>
<pre><code class="language-sql">-- 古いシステムから取り出したDDL（フォーマットが崩れている）
create table users(id int primary key,name varchar(100) not null,email varchar(255) unique not null,status varchar(20) default 'active',created_at timestamp default current_timestamp);</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>DDLを選択</li>
<li>コマンド実行</li>
<li>方言選択（PostgreSQL）</li>
<li>大文字・2スペース</li>
<li>整形されたDDLを確認してマイグレーションファイルに記載</li>
</ol>
<p><strong>メリット：</strong></p>
<ul>
<li>カラム定義を視覚的に確認</li>
<li>NOT NULL、DEFAULT、UNIQUEの制約を明確化</li>
<li>チームメンバーとの共有が容易</li>
</ul>
<h3><span id="toc16">場面4：プロジェクトのコーディング規約統一</span></h3>
<p><strong>シーン：新メンバーが参加してコーディング規約がバラバラ</strong></p>
<pre><code class="language-sql">-- メンバーAの書き方（小文字・インデントなし）
select * from users where status='active';

-- メンバーBの書き方（大文字・4スペース）
SELECT
    *
FROM
    users
WHERE
    status = 'active';</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>すべてのSQLファイルを順次整形</li>
<li>方言選択（MySQL）</li>
<li>統一ルール：大文字・2スペース</li>
<li>プロジェクト全体のSQL規約を統一</li>
</ol>
<p><strong>メリット：</strong></p>
<ul>
<li>コードレビューの負担軽減</li>
<li>可読性の向上</li>
<li>新メンバーのオンボーディングを円滑化</li>
</ul>
<h3><span id="toc17">場面5：Oracle PL/SQLのスラッシュ区切りに対応</span></h3>
<p><strong>シーン：Oracle開発環境でのPL/SQLブロック</strong></p>
<pre><code class="language-sql">BEGIN
  INSERT INTO users (id, name) VALUES (1, 'Test');
  COMMIT;
END; /</code></pre>
<p><strong>問題：</strong></p>
<ul>
<li><code>sql-formatter</code>はデフォルトで <code>/</code> を行末にくっつけてしまう</li>
<li>Oracle SQL*Plusでは <code>/</code> が独立した行にないとエラー</li>
</ul>
<p><strong>このマクロの対応：</strong></p>
<ul>
<li><code>postProcessSlashSeparator()</code> 関数で <code>/</code> を独立した行に移動</li>
<li>Oracle開発者にとって使いやすい形式で出力</li>
</ul>
<pre><code class="language-sql">BEGIN
  INSERT INTO users (id, name) VALUES (1, 'Test');
  COMMIT;
END;
/</code></pre>
<h3><span id="toc18">場面6：複数SQLの一括整形</span></h3>
<p><strong>シーン：複数のクエリが含まれるファイル</strong></p>
<pre><code class="language-sql">SELECT * FROM users WHERE id=1; SELECT * FROM orders WHERE user_id=1; SELECT * FROM products WHERE category='electronics';</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>ファイル全体を対象（何も選択しない状態でコマンド実行）</li>
<li>方言選択（Standard SQL）</li>
<li>大文字・2スペース</li>
<li>整形された複数のSQLを確認</li>
</ol>
<p><strong>出力：</strong></p>
<pre><code class="language-sql">SELECT
  *
FROM
  users
WHERE
  id = 1;

SELECT
  *
FROM
  orders
WHERE
  user_id = 1;

SELECT
  *
FROM
  products
WHERE
  category = 'electronics';</code></pre>
<p><strong>メリット：</strong></p>
<ul>
<li>クエリ間に2行の空行を自動挿入（<code>linesBetweenQueries: 2</code>）</li>
<li>複数クエリの視認性向上</li>
</ul>
<h2><span id="toc19">TypeScript実装の詳細</span></h2>
<p>実際のコードを紹介します。<code>formatSql.ts</code>ファイルに実装しました。</p>
<pre><code class="language-typescript">import * as vscode from 'vscode';
import * as path from 'path';
import { format } from 'sql-formatter'; // sql-formatterライブラリをインポート

/**
 * SQL整形ツール（sql-formatterライブラリ使用）
 * 選択されたSQLを整形して新規ファイルに出力
 */
export async function formatSql() {
    const editor = vscode.window.activeTextEditor;
    if (!editor) {
        vscode.window.showWarningMessage('アクティブなエディタがありません');
        return;
    }

    const selection = editor.selection;
    const document = editor.document;

    // 選択範囲がある場合は選択範囲、なければファイル全体を対象
    let sqlText: string;
    if (!selection.isEmpty) {
        sqlText = document.getText(selection);
    } else {
        sqlText = document.getText();
    }

    if (!sqlText || sqlText.trim().length === 0) {
        vscode.window.showWarningMessage('整形対象のSQLがありません');
        return;
    }

    // オプション選択ダイアログを表示
    const options = await showFormatOptionsDialog();
    if (!options) {
        return; // ユーザーがキャンセルした場合
    }

    try {
        // SQL整形を実行
        const formattedSql = formatSqlText(sqlText, options);
        // 新規ファイルに出力
        await createResultFile(formattedSql);
        vscode.window.showInformationMessage('SQL整形が完了しました');
    } catch (error: any) {
        // パースエラーの場合は詳細なメッセージを表示
        if (error.message && error.message.includes('Parse error')) {
            const message =
                'SQL整形に失敗しました。\n\n' +
                '原因：SQLとして認識できない文字が含まれています。\n' +
                '（例：△、●、■などの記号、不正なSQL構文）\n\n' +
                '対処法：\n' +
                '1. SQL以外のテキストやコメントを削除してください\n' +
                '2. 特殊文字（△など）を削除してください\n' +
                '3. SQL構文が正しいか確認してください\n\n' +
                `エラー詳細: ${error.message}`;

            vscode.window.showErrorMessage(message, { modal: true });
        } else {
            vscode.window.showErrorMessage(`SQL整形エラー: ${error.message || error}`);
        }
        console.error('SQL formatting error:', error);
    }
}

/**
 * フォーマットオプション
 */
interface FormatOptions {
    language: 'sql' | 'mysql' | 'postgresql' | 'tsql' | 'plsql' | 'mariadb' | 'db2' | 'redshift';
    keywordCase: 'upper' | 'lower' | 'preserve';
    tabWidth: number;
    useTabs: boolean;
}

/**
 * フォーマットオプション選択ダイアログ
 */
async function showFormatOptionsDialog(): Promise<FormatOptions | null> {
    // 1. SQL方言の選択
    const dialectItems = [
        { label: 'Standard SQL', value: 'sql' as const, description: '標準SQL（デフォルト）' },
        { label: 'MySQL / MariaDB', value: 'mysql' as const, description: 'MySQL/MariaDB方言' },
        { label: 'PostgreSQL', value: 'postgresql' as const, description: 'PostgreSQL方言' },
        { label: 'T-SQL (SQL Server)', value: 'tsql' as const, description: 'Microsoft SQL Server' },
        { label: 'PL/SQL (Oracle)', value: 'plsql' as const, description: 'Oracle Database' },
        { label: 'Amazon Redshift', value: 'redshift' as const, description: 'Amazon Redshift' },
        { label: 'IBM DB2', value: 'db2' as const, description: 'IBM DB2' }
    ];

    const selectedDialect = await vscode.window.showQuickPick(dialectItems, {
        placeHolder: 'SQL方言を選択してください',
        ignoreFocusOut: true // ダイアログ外クリックでキャンセルされないようにする
    });

    if (!selectedDialect) {
        return null; // キャンセル
    }

    // 2. キーワードの大文字/小文字
    const caseItems = [
        { label: '大文字 (SELECT, FROM, WHERE)', value: 'upper' as const, description: 'キーワードを大文字に' },
        { label: '小文字 (select, from, where)', value: 'lower' as const, description: 'キーワードを小文字に' },
        { label: '元のまま保持', value: 'preserve' as const, description: '元の大文字/小文字を保持' }
    ];

    const selectedCase = await vscode.window.showQuickPick(caseItems, {
        placeHolder: 'キーワードの大文字/小文字を選択してください',
        ignoreFocusOut: true
    });

    if (!selectedCase) {
        return null; // キャンセル
    }

    // 3. インデント幅
    const indentItems = [
        { label: '2スペース', tabWidth: 2, useTabs: false, description: '推奨' },
        { label: '4スペース', tabWidth: 4, useTabs: false },
        { label: 'タブ', tabWidth: 4, useTabs: true }
    ];

    const selectedIndent = await vscode.window.showQuickPick(indentItems, {
        placeHolder: 'インデント幅を選択してください',
        ignoreFocusOut: true
    });

    if (!selectedIndent) {
        return null; // キャンセル
    }

    return {
        language: selectedDialect.value,
        keywordCase: selectedCase.value,
        tabWidth: selectedIndent.tabWidth,
        useTabs: selectedIndent.useTabs
    };
}

/**
 * SQLテキストを整形
 */
function formatSqlText(sql: string, options: FormatOptions): string {
    const formattedSql = format(sql, {
        language: options.language, // SQL方言を指定
        keywordCase: options.keywordCase, // キーワードの大文字/小文字
        tabWidth: options.tabWidth, // インデント幅
        useTabs: options.useTabs, // タブ使用有無
        linesBetweenQueries: 2 // クエリ間の空行数（複数SQLの場合）
    });

    // Oracle PL/SQL の / を独立した行にする後処理
    // 例: "dual /" → "dual\n/"
    return postProcessSlashSeparator(formattedSql);
}

/**
 * Oracle PL/SQL のスラッシュ区切りを独立した行にする後処理
 */
function postProcessSlashSeparator(sql: string): string {
    // 行末のスラッシュの前に改行を挿入
    // パターン: 任意の文字列 + スペース + / + 改行 → 文字列 + 改行 + / + 改行
    return sql.replace(/\s+\/\s*$/gm, '\n/');
}

/**
 * 結果を新規ファイルに出力
 */
async function createResultFile(formattedSql: string): Promise<void> {
    // 新規ドキュメントを作成（言語モードをSQLに設定）
    const doc = await vscode.workspace.openTextDocument({
        content: formattedSql,
        language: 'sql'
    });

    // 右側に並べて表示
    await vscode.window.showTextDocument(doc, {
        viewColumn: vscode.ViewColumn.Beside,
        preview: false
    });

    // ファイル名を自動生成
    const suggestedName = generateFileName(new Date());

    // 保存ダイアログを表示
    const uri = await vscode.window.showSaveDialog({
        defaultUri: vscode.Uri.file(suggestedName),
        filters: {
            'SQL files': ['sql'],
            'Text files': ['txt'],
            'All files': ['*']
        }
    });

    if (uri) {
        // ファイルを作成
        const edit = new vscode.WorkspaceEdit();
        edit.createFile(uri, { overwrite: true });
        await vscode.workspace.applyEdit(edit);

        // 内容を書き込み
        await vscode.workspace.fs.writeFile(
            uri,
            Buffer.from(formattedSql, 'utf8')
        );

        vscode.window.showInformationMessage(
            `整形済みSQLを保存しました: ${path.basename(uri.fsPath)}`
        );
    }
}

/**
 * 出力ファイル名を生成
 */
function generateFileName(date: Date): string {
    const timestamp = formatDateTimeForFile(date);
    return `formatted_sql_${timestamp}.sql`;
}

/**
 * 日時フォーマット（ファイル名用）
 */
function formatDateTimeForFile(date: Date): string {
    const year = date.getFullYear();
    const month = String(date.getMonth() + 1).padStart(2, '0');
    const day = String(date.getDate()).padStart(2, '0');
    const hours = String(date.getHours()).padStart(2, '0');
    const minutes = String(date.getMinutes()).padStart(2, '0');
    const seconds = String(date.getSeconds()).padStart(2, '0');

    return `${year}${month}${day}_${hours}${minutes}${seconds}`;
}</code></pre>
<h2><span id="toc20">コードのポイント解説</span></h2>
<h3><span id="toc21">1. sql-formatterライブラリの活用</span></h3>
<pre><code class="language-typescript">import { format } from 'sql-formatter'; // npmパッケージをインポート

const formattedSql = format(sql, {
    language: 'mysql', // SQL方言を指定
    keywordCase: 'upper', // キーワードを大文字に
    tabWidth: 2, // インデント幅
    useTabs: false, // スペースを使用
    linesBetweenQueries: 2 // 複数クエリ間の空行数
});</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>sql-formatter</code>は複数のSQL方言に対応した軽量ライブラリ</li>
<li>オプションで細かくカスタマイズ可能</li>
<li>パースエラー時には詳細なエラーメッセージを返す</li>
</ul>
<h3><span id="toc22">2. オプション選択ダイアログの3段階構成</span></h3>
<pre><code class="language-typescript">// 1. SQL方言を選択
const selectedDialect = await vscode.window.showQuickPick(dialectItems, {
    placeHolder: 'SQL方言を選択してください',
    ignoreFocusOut: true // ダイアログ外クリックでキャンセルされない
});

// 2. キーワードケースを選択
const selectedCase = await vscode.window.showQuickPick(caseItems, {
    placeHolder: 'キーワードの大文字/小文字を選択してください',
    ignoreFocusOut: true
});

// 3. インデント幅を選択
const selectedIndent = await vscode.window.showQuickPick(indentItems, {
    placeHolder: 'インデント幅を選択してください',
    ignoreFocusOut: true
});</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>ignoreFocusOut: true</code> でダイアログ外クリックでもキャンセルされない</li>
<li>3段階に分けることでユーザーの選択を明確化</li>
<li>各ステップで<code>null</code>チェックして早期リターン</li>
</ul>
<h3><span id="toc23">3. Oracle PL/SQLのスラッシュ区切り対応</span></h3>
<pre><code class="language-typescript">/**
 * Oracle PL/SQL のスラッシュ区切りを独立した行にする後処理
 */
function postProcessSlashSeparator(sql: string): string {
    // 行末のスラッシュの前に改行を挿入
    // パターン: 任意の文字列 + スペース + / + 改行 → 文字列 + 改行 + / + 改行
    return sql.replace(/\s+\/\s*$/gm, '\n/');
}</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li>正規表現 <code>/\s+\/\s*$/gm</code> で行末の <code>/</code> を検出</li>
<li><code>gm</code> フラグで複数行にわたって処理</li>
<li>Oracle開発者にとって必須の後処理</li>
</ul>
<h3><span id="toc24">4. エラーハンドリングの充実</span></h3>
<pre><code class="language-typescript">try {
    const formattedSql = formatSqlText(sqlText, options);
    await createResultFile(formattedSql);
    vscode.window.showInformationMessage('SQL整形が完了しました');
} catch (error: any) {
    // パースエラーの場合は詳細なメッセージを表示
    if (error.message && error.message.includes('Parse error')) {
        const message =
            'SQL整形に失敗しました。\n\n' +
            '原因：SQLとして認識できない文字が含まれています。\n' +
            '（例：△、●、■などの記号、不正なSQL構文）\n\n' +
            '対処法：\n' +
            '1. SQL以外のテキストやコメントを削除してください\n' +
            '2. 特殊文字（△など）を削除してください\n' +
            '3. SQL構文が正しいか確認してください\n\n' +
            `エラー詳細: ${error.message}`;

        vscode.window.showErrorMessage(message, { modal: true });
    } else {
        vscode.window.showErrorMessage(`SQL整形エラー: ${error.message || error}`);
    }
    console.error('SQL formatting error:', error);
}</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>Parse error</code> を検出して専用のエラーメッセージを表示</li>
<li>ユーザーに原因と対処法を明示</li>
<li><code>modal: true</code> でエラーダイアログを強調表示</li>
</ul>
<h3><span id="toc25">5. 新規ファイル出力とファイル名自動生成</span></h3>
<pre><code class="language-typescript">/**
 * 出力ファイル名を生成
 */
function generateFileName(date: Date): string {
    const timestamp = formatDateTimeForFile(date);
    return `formatted_sql_${timestamp}.sql`; // formatted_sql_20260215_103045.sql
}

/**
 * 日時フォーマット（ファイル名用）
 */
function formatDateTimeForFile(date: Date): string {
    const year = date.getFullYear();
    const month = String(date.getMonth() + 1).padStart(2, '0');
    const day = String(date.getDate()).padStart(2, '0');
    const hours = String(date.getHours()).padStart(2, '0');
    const minutes = String(date.getMinutes()).padStart(2, '0');
    const seconds = String(date.getSeconds()).padStart(2, '0');

    return `${year}${month}${day}_${hours}${minutes}${seconds}`; // 20260215_103045
}</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li>タイムスタンプ付きファイル名で重複を防止</li>
<li>年月日_時分秒の形式で整理しやすい</li>
<li>保存ダイアログで自動的にファイル名が提案される</li>
</ul>
<h3><span id="toc26">6. 右側に並べて表示</span></h3>
<pre><code class="language-typescript">// 右側に並べて表示
await vscode.window.showTextDocument(doc, {
    viewColumn: vscode.ViewColumn.Beside, // 右側に表示
    preview: false // プレビューモードを無効化
});</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>vscode.ViewColumn.Beside</code> で元のファイルと並べて表示</li>
<li>元のSQLと整形後のSQLを同時に確認可能</li>
<li><code>preview: false</code> で確実にエディタとして開く</li>
</ul>
<h2><span id="toc27">使い方</span></h2>
<h3><span id="toc28">1. 拡張機能のインストール</span></h3>
<pre><code class="language-bash">git clone https://github.com/xxxxx-sys/my-macros.git
cd my-macros

# 依存関係インストール
npm install --legacy-peer-deps

# sql-formatterライブラリをインストール
npm install sql-formatter

# パッケージ化
npm run compile
npx vsce package

# インストール
code --install-extension my-macros-0.0.7.vsix</code></pre>
<h3><span id="toc29">2. 基本的な使い方</span></h3>
<pre><code class="language-plaintext">作業メモ.txt
---
SELECT u.id,u.name,o.order_id FROM users u JOIN orders o ON u.id=o.user_id WHERE u.status='active';</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>整形したいSQLを選択（または何も選択せずファイル全体を対象）</li>
<li>コマンドパレットを開く（<code>Ctrl+Shift+P</code>）</li>
<li>"Format SQL" と入力して実行</li>
<li>オプションダイアログで選択：
<ul>
<li>SQL方言：MySQL</li>
<li>キーワード：大文字</li>
<li>インデント：2スペース</li>
</ul>
</li>
<li>整形されたSQLが右側に表示される</li>
<li>保存ダイアログで保存</li>
</ol>
<h3><span id="toc30">3. 実践例</span></h3>
<p><strong>シーン1: ログから抽出したSQLを整形</strong></p>
<pre><code class="language-plaintext">application.log
---
[2026-02-15 10:30:45] Slow Query: SELECT * FROM users WHERE status='active' AND created_at>='2026-01-01';</code></pre>
<p>手順：</p>
<ol>
<li>SQL部分を選択</li>
<li>コマンド実行</li>
<li>方言選択（MySQL）</li>
<li>整形されたSQLを確認</li>
</ol>
<p><strong>シーン2: 複数のクエリを一括整形</strong></p>
<pre><code class="language-sql">SELECT * FROM users; SELECT * FROM orders; SELECT * FROM products;</code></pre>
<p>手順：</p>
<ol>
<li>何も選択せずコマンド実行</li>
<li>方言選択（Standard SQL）</li>
<li>整形された3つのSQLが空行区切りで出力</li>
</ol>
<h2><span id="toc31">package.jsonの設定</span></h2>
<pre><code class="language-json">{
  "contributes": {
    "commands": [
      {
        "command": "myMacros.formatSql",
        "title": "Format SQL",
        "category": "My Macros"
      }
    ],
    "keybindings": [
      {
        "command": "myMacros.formatSql",
        "key": "ctrl+shift+f",
        "when": "editorTextFocus"
      }
    ]
  },
  "dependencies": {
    "sql-formatter": "^15.0.0"
  }
}</code></pre>
<h3><span id="toc32">extension.tsでの登録</span></h3>
<pre><code class="language-typescript">import { formatSql } from './macros/formatSql';

export function activate(context: vscode.ExtensionContext) {
    const commands = [
        vscode.commands.registerCommand(
            'myMacros.formatSql',
            formatSql
        ),
        // ... 他のコマンド
    ];

    commands.forEach(command => context.subscriptions.push(command));
}</code></pre>
<h2><span id="toc33">メリット・デメリット</span></h2>
<h3><span id="toc34">メリット</span></h3>
<p><strong>✅ 圧倒的な効率化</strong></p>
<ul>
<li>1キー操作でSQL整形が完了</li>
<li>オンラインツールやDBクライアントの立ち上げ不要</li>
<li>VSCode上で完結</li>
</ul>
<p><strong>✅ 複数のSQL方言に対応</strong></p>
<ul>
<li>MySQL、PostgreSQL、Oracle、SQL Server等に対応</li>
<li>プロジェクトごとに適切な方言を選択可能</li>
</ul>
<p><strong>✅ 柔軟なカスタマイズ</strong></p>
<ul>
<li>キーワードの大文字/小文字を選択</li>
<li>インデント幅を選択（2スペース、4スペース、タブ）</li>
<li>プロジェクトのコーディング規約に合わせて調整可能</li>
</ul>
<p><strong>✅ 安全性</strong></p>
<ul>
<li>ローカル環境で完結（セキュリティ面で安心）</li>
<li>元のファイルは変更せず新規ファイルに出力</li>
<li>エラー時の詳細メッセージで原因を把握</li>
</ul>
<p><strong>✅ 実務に即した機能</strong></p>
<ul>
<li>Oracle PL/SQLのスラッシュ区切りに対応</li>
<li>複数クエリ間に空行を自動挿入</li>
<li>タイムスタンプ付きファイル名で管理しやすい</li>
</ul>
<h3><span id="toc35">デメリット</span></h3>
<p><strong>❌ sql-formatterの制限</strong></p>
<ul>
<li>完全に正しいSQL構文でないと整形できない</li>
<li>特殊な記号（△、●など）が含まれるとパースエラー</li>
<li>方言固有の構文で未対応のものもある</li>
</ul>
<p><strong>❌ 巨大なSQLファイルはパフォーマンス低下</strong></p>
<ul>
<li>数万行のSQLファイルは処理に時間がかかる可能性</li>
<li>メモリ使用量が増加する場合あり</li>
</ul>
<p><strong>❌ 出力先が新規ファイル固定</strong></p>
<ul>
<li>元のファイルを直接置き換える機能はない</li>
<li>必ず新規ファイルに出力される</li>
</ul>
<h2><span id="toc36">トラブルシューティング</span></h2>
<h3><span id="toc37">Q: SQL整形に失敗する</span></h3>
<p><strong>A: SQLとして認識できない文字が含まれている</strong></p>
<pre><code class="language-plaintext">NG: SELECT * FROM users; -- △注意点
OK: SELECT * FROM users; -- 注意点</code></pre>
<p>解決策：</p>
<ul>
<li>SQL以外のテキストや特殊文字を削除</li>
<li>コメント内の記号を確認</li>
</ul>
<h3><span id="toc38">Q: 方言を間違えて選択した</span></h3>
<p><strong>A: 再度実行して正しい方言を選択</strong></p>
<pre><code class="language-plaintext">誤: Standard SQLで整形したがMySQLのバッククォートが消えた
正: MySQLで整形してバッククォートを保持</code></pre>
<p>解決策：</p>
<ul>
<li>MySQLの場合は "MySQL / MariaDB" を選択</li>
<li>PostgreSQLの場合は "PostgreSQL" を選択</li>
</ul>
<h3><span id="toc39">Q: 整形後のファイルを保存したくない</span></h3>
<p><strong>A: 保存ダイアログでキャンセル</strong></p>
<p>解決策：</p>
<ul>
<li>整形結果を確認したら保存ダイアログでキャンセル</li>
<li>一時的に確認するだけならそのままタブを閉じる</li>
</ul>
<h3><span id="toc40">Q: オプション選択が面倒</span></h3>
<p><strong>A: デフォルト設定を変更したい場合はコードを修正</strong></p>
<pre><code class="language-typescript">// デフォルト設定を変更する例
const options = {
    language: 'mysql', // 常にMySQLに固定
    keywordCase: 'upper', // 常に大文字に固定
    tabWidth: 2,
    useTabs: false
};</code></pre>
<p>解決策：</p>
<ul>
<li>よく使う設定をデフォルトにしたい場合はコードを修正</li>
</ul>
<h2><span id="toc41">まとめ：SQL整形を1キー操作で実現する快適さ</span></h2>
<p>VSCodeで<code>sql-formatter</code>ライブラリを活用した<strong>SQL整形ツール</strong>を実装しました。</p>
<p><strong>このマクロの強み：</strong></p>
<ul>
<li>1キー操作でSQL整形が完了</li>
<li>複数のSQL方言に対応（MySQL、PostgreSQL、Oracle等）</li>
<li>キーワードケースとインデント幅を選択可能</li>
<li>ローカル環境で完結（セキュリティ面で安心）</li>
<li>Oracle PL/SQLのスラッシュ区切りに対応</li>
<li>充実したエラーハンドリング</li>
</ul>
<p><strong>こんな人におすすめ：</strong></p>
<ul>
<li>ログから抽出したSQLを頻繁に分析する</li>
<li>複数のDBを扱うプロジェクトに参加している</li>
<li>コーディング規約の統一を効率化したい</li>
<li>マウス操作を減らしたい</li>
<li>VSCodeで開発環境を完結させたい</li>
</ul>
<p><strong>特に、本番環境のログから圧縮されたSQLを抽出して分析する場面では、このマクロが大きな威力を発揮します。</strong></p>
<p>手作業で1つずつ改行とインデントを調整していた作業が、<strong>たった1回のキー操作</strong>で完了します。</p>
<p>「読みづらいSQLに苦労している」という方は、ぜひVSCodeでのSQL整形にお役立てください！</p>
<p><a rel="nofollow" href="//af.moshimo.com/af/c/click?a_id=1384942&p_id=170&pc_id=185&pl_id=4062&url=https%3A%2F%2Fwww.amazon.co.jp%2Fs%3Fk%3D%25E6%259C%25AC%2BTypeScript%26__mk_ja_JP%3D%25E3%2582%25AB%25E3%2582%25BF%25E3%2582%25AB%25E3%2583%258A%26crid%3D17LX99IE5I6NF%26sprefix%3D%25E6%259C%25AC%2Btypescript%252Caps%252C173%26ref%3Dnb_sb_noss_2" referrerpolicy="no-referrer-when-downgrade" attributionsrc>Amazon検索[本 TypeScript]</a><img decoding="async" src="//i.moshimo.com/af/i/impression?a_id=1384942&p_id=170&pc_id=185&pl_id=4062" width="1" height="1" style="border:none;" alt="" loading="lazy"></p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発","b":"オライリージャパン","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/51vjj+osAgL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4873119049","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4873119049","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"vFiVC","s":"s"});</script></p>
<div id="msmaflink-vFiVC">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc42">関連記事</span></h2>
<ul>
<li>VSCodeで正規表現マッチを一括抽出するTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-regex-extract-macro/" title="VSCodeで「正規表現マッチ抽出」を実現するTypeScriptマクロ【ログ解析が10倍速くなる】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「正規表現マッチ抽出」を実現するTypeScriptマクロ【ログ解析が10倍速くなる】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにサーバーログやアプリケーションログを解析する時、こんな悩みありませんか？2024-02-08 10:00:00 INFO: Server started2024-02-08 10:01:00 ERROR: Connection fa...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<ul>
<li>VSCodeで「選択行による一括置換」を実現するTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-replace-by-selection-macro/" title="VSCodeで「選択行による一括置換」を実現するTypeScriptマクロ【テキスト編集が10倍速くなる】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「選択行による一括置換」を実現するTypeScriptマクロ【テキスト編集が10倍速くなる】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにテキスト編集で「複数の文字列を一度に置換したい」と思ったことはありませんか？例えば、こんなシーン：変数名を複数箇所で一括変更テーブル定義のデータ型を複数列で一括更新ドキュメント内の用語統一を複数ワードで一括実施VSCodeの標準機能...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<ul>
<li>VSCodeで「任意行までの一括選択・コピー」を実現するTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-select-copy-macro/" title="VSCodeで「任意行までの一括選択・コピー」を実現するTypeScriptマクロ開発【サクラエディタ移行の集大成】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「任意行までの一括選択・コピー」を実現するTypeScriptマクロ開発【サクラエディタ移行の集大成】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに：テキスト編集における「範囲選択の不便さ」VSCodeで長いログファイルやドキュメントを編集していて、「この行から特定の文字列まで一気にコピーしたい」と思ったことはありませんか？通常のVSCodeでは、以下のような手順が必要です：開...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<ul>
<li>VSCode TypeScriptマクロ開発ガイド【サクラエディタから移行した開発環境構築】</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-typescript-macro-development-guide/" title="VSCode TypeScriptマクロ開発環境の完全ガイド【セットアップから運用まで】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCode TypeScriptマクロ開発環境の完全ガイド【セットアップから運用まで】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにVSCodeでカスタムマクロを作成したいけど、どうやって開発環境を構築すればいいか分からない。そんな悩みを持つ方に向けて、TypeScriptでVSCode拡張機能を開発する環境の構築から、実際にマクロを作成して使えるようにするまで...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.01.25</div></div></div></div></a>
<hr>
<p><strong>タグ:</strong> #VSCode #TypeScript #マクロ #SQL #データベース #生産性向上 #sql-formatter</p><p>The post <a href="https://caymezon.com/vscode-sql-formatter-macro/">VSCodeで「SQL整形ツール」を実現するTypeScriptマクロ【sql-formatter活用で複数方言対応】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/vscode-sql-formatter-macro/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>VSCodeで画像挿入が一瞬！クリップボード画像をMarkdown化するTypeScriptマクロ</title>
		<link>https://caymezon.com/vscode-clipboard-image-macro/</link>
					<comments>https://caymezon.com/vscode-clipboard-image-macro/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Sat, 14 Feb 2026 02:17:05 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Markdown]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[TypeScript]]></category>
		<category><![CDATA[VSCode]]></category>
		<category><![CDATA[クリップボード]]></category>
		<category><![CDATA[マクロ]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20127</guid>

					<description><![CDATA[<p>目次 はじめにこの記事で分かることこんな人におすすめ機能概要できること具体例コード詳細解説全体構造1. アクティブエディタの取得2. ユーザー入力の取得3. パス解決とフォルダ作成4. PowerShellで画像取得5. [&#8230;]</p>
<p>The post <a href="https://caymezon.com/vscode-clipboard-image-macro/">VSCodeで画像挿入が一瞬！クリップボード画像をMarkdown化するTypeScriptマクロ</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-16" checked><label class="toc-title" for="toc-checkbox-16">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに</a></li><li><a href="#toc2" tabindex="0">この記事で分かること</a></li><li><a href="#toc3" tabindex="0">こんな人におすすめ</a></li><li><a href="#toc4" tabindex="0">機能概要</a><ol><li><a href="#toc5" tabindex="0">できること</a></li><li><a href="#toc6" tabindex="0">具体例</a></li></ol></li><li><a href="#toc7" tabindex="0">コード詳細解説</a><ol><li><a href="#toc8" tabindex="0">全体構造</a></li><li><a href="#toc9" tabindex="0">1. アクティブエディタの取得</a></li><li><a href="#toc10" tabindex="0">2. ユーザー入力の取得</a></li><li><a href="#toc11" tabindex="0">3. パス解決とフォルダ作成</a></li><li><a href="#toc12" tabindex="0">4. PowerShellで画像取得</a></li><li><a href="#toc13" tabindex="0">5. Markdownテキスト挿入</a></li></ol></li><li><a href="#toc14" tabindex="0">インストール方法</a><ol><li><a href="#toc15" tabindex="0">1. 拡張機能プロジェクトの準備</a></li><li><a href="#toc16" tabindex="0">2. ファイル配置</a></li><li><a href="#toc17" tabindex="0">3. extension.tsにコマンド登録</a></li><li><a href="#toc18" tabindex="0">4. package.json設定</a></li><li><a href="#toc19" tabindex="0">5. ビルドとインストール</a></li></ol></li><li><a href="#toc20" tabindex="0">実践的な使い方</a><ol><li><a href="#toc21" tabindex="0">基本的な使い方</a></li><li><a href="#toc22" tabindex="0">ブログ執筆での活用</a></li><li><a href="#toc23" tabindex="0">ドキュメント作成での活用</a></li><li><a href="#toc24" tabindex="0">議事録での活用</a></li></ol></li><li><a href="#toc25" tabindex="0">トラブルシューティング</a><ol><li><a href="#toc26" tabindex="0">エラー: クリップボードに画像がない</a></li><li><a href="#toc27" tabindex="0">エラー: imagesフォルダ作成に失敗</a></li><li><a href="#toc28" tabindex="0">エラー: ショートカットキーが動かない</a></li></ol></li><li><a href="#toc29" tabindex="0">Claude Codeでの開発体験</a><ol><li><a href="#toc30" tabindex="0">開発時間の比較</a></li><li><a href="#toc31" tabindex="0">Claude Codeのメリット</a></li></ol></li><li><a href="#toc32" tabindex="0">メリット・デメリット</a><ol><li><a href="#toc33" tabindex="0">メリット</a></li><li><a href="#toc34" tabindex="0">デメリット</a></li></ol></li><li><a href="#toc35" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">はじめに</span></h2>
<p>「Markdownで記事を書くとき、画像挿入がいちいち面倒…」</p>
<p>ブログ執筆やドキュメント作成で、こんな経験をしたことがある人は多いはずです。</p>
<p><!-- ![画像挿入作業の手間](images/manual-image-insert.jpg) --></p>
<p><strong>従来の作業フロー：</strong></p>
<pre><code class="language-plaintext">1. スクリーンショットを撮る
2. 画像編集ソフトで開く
3. ファイル名をつけて保存
4. imagesフォルダに移動
5. Markdownに![]形式で記述
→ 約5ステップ・30秒</code></pre>
<p>このマクロを使えば、<strong>ショートカットキー一発で全て自動化</strong>できます！</p>
<p><!-- ![マクロ使用時のフロー](images/macro-workflow.jpg) --></p>
<p>本記事では、実際にClaude Codeを使って開発したマクロの詳細と、効果的な使い方を紹介します。</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで (Software Design plus)","b":"技術評論社","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/510GhCOD1FL._SL500_.jpg","\/41og2y1EEHL._SL500_.jpg","\/51XHb97PpFL._SL500_.jpg","\/51uDIY22bQL._SL500_.jpg","\/51PaoVK3MWL._SL500_.jpg","\/51eG7JBoavL._SL500_.jpg","\/51CDCo8FmJL._SL500_.jpg","\/41JLTXb+tsL._SL500_.jpg","\/51Hsv39e7IL._SL500_.jpg","\/41PTe+TqLEL._SL500_.jpg","\/51TUxdoXjrL._SL500_.jpg","\/51AkZEJWGhL._SL500_.jpg","\/51paP7D5R5L._SL500_.jpg","\/41lJtbpaQvL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4297127474","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4297127474","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"OaDLa","s":"s"});</script></p>
<div id="msmaflink-OaDLa">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc2">この記事で分かること</span></h2>
<ul>
<li>クリップボード画像挿入マクロの機能</li>
<li>コードの詳細解説</li>
<li>インストール方法</li>
<li>実践的な使い方</li>
<li>トラブルシューティング</li>
<li>Claude Codeでの開発体験</li>
</ul>
<h2><span id="toc3">こんな人におすすめ</span></h2>
<ul>
<li>Markdownでブログやドキュメントを書く人</li>
<li>画像挿入作業を効率化したい人</li>
<li>VSCodeでマクロを作りたい人</li>
<li>TypeScriptで拡張機能開発を学びたい人</li>
</ul>
<h2><span id="toc4">機能概要</span></h2>
<h3><span id="toc5">できること</span></h3>
<p><strong>ショートカットキー一発で：</strong></p>
<pre><code class="language-plaintext">1. クリップボードの画像を取得
2. 画像名とファイル名を入力（ダイアログ）
3. ![]形式でカーソル位置に挿入
4. imagesフォルダに画像を保存
→ わずか10秒！</code></pre>
<p><!-- ![マクロ実行の流れ](images/macro-execution-flow.jpg) --></p>
<h3><span id="toc6">具体例</span></h3>
<p><strong>操作：</strong></p>
<pre><code class="language-plaintext">1. スクリーンショットを撮る（Win+Shift+S）
2. Ctrl+Shift+I を押す
3. 画像名入力: "サンプル画面"
4. ファイル名入力: "sample-screen"</code></pre>
<p><strong>結果：</strong></p>
<p><!-- ```markdown
![サンプル画面](images/sample-screen.jpg)
``` --></p>
<pre><code class="language-plaintext">✅ imagesフォルダが自動作成
✅ sample-screen.jpgが保存される
✅ Markdownテキストが挿入される</code></pre>
<h2><span id="toc7">コード詳細解説</span></h2>
<h3><span id="toc8">全体構造</span></h3>
<pre><code class="language-typescript">// src/macros/insertImageFromClipboard.ts
import * as vscode from 'vscode';
import * as fs from 'fs';
import * as path from 'path';
import { exec } from 'child_process';
import { promisify } from 'util';

const execAsync = promisify(exec);

export async function insertImageFromClipboard() {
    // 機能実装
}</code></pre>
<h3><span id="toc9">1. アクティブエディタの取得</span></h3>
<pre><code class="language-typescript">const editor = vscode.window.activeTextEditor;
if (!editor) {
    vscode.window.showWarningMessage('アクティブなエディタがありません');
    return;
}</code></pre>
<p><!-- ![エディタチェック](images/editor-check.jpg) --></p>
<p><strong>ポイント：</strong></p>
<ul>
<li>VSCodeのアクティブなエディタを取得</li>
<li>エディタがない場合は警告を表示</li>
</ul>
<h3><span id="toc10">2. ユーザー入力の取得</span></h3>
<pre><code class="language-typescript">// 画像名（altテキスト）
const imageName = await vscode.window.showInputBox({
    prompt: '画像名（altテキスト）を入力してください',
    placeHolder: '例: サンプル画像'
});

if (!imageName) return;

// ファイル名
const fileName = await vscode.window.showInputBox({
    prompt: 'ファイル名（拡張子なし）を入力してください',
    placeHolder: '例: sample-image'
});

if (!fileName) return;</code></pre>
<p><!-- ![入力ダイアログ](images/input-dialog.jpg) --></p>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>showInputBox</code>でユーザー入力を受け付け</li>
<li><code>prompt</code>で説明文、<code>placeHolder</code>で例を表示</li>
<li>キャンセルされたら処理中断</li>
</ul>
<h3><span id="toc11">3. パス解決とフォルダ作成</span></h3>
<pre><code class="language-typescript">// 現在のファイルがあるディレクトリ
const currentDir = path.dirname(editor.document.uri.fsPath);
const imagesDir = path.join(currentDir, 'images');

// imagesフォルダ作成（なければ）
if (!fs.existsSync(imagesDir)) {
    fs.mkdirSync(imagesDir, { recursive: true });
}

// 出力パス
const outputPath = path.join(imagesDir, `${fileName}.jpg`);</code></pre>
<p><!-- ![フォルダ構造](images/folder-structure.jpg) --></p>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>path.dirname</code>で現在のディレクトリを取得</li>
<li><code>fs.mkdirSync</code>でフォルダ作成</li>
<li><code>recursive: true</code>で親フォルダも自動作成</li>
</ul>
<h3><span id="toc12">4. PowerShellで画像取得</span></h3>
<pre><code class="language-typescript">const psScript = `
    Add-Type -AssemblyName System.Windows.Forms;
    Add-Type -AssemblyName System.Drawing;
    $img = [System.Windows.Forms.Clipboard]::GetImage();
    if ($img) {
        $img.Save('${outputPath.replace(/\\/g, '\\\\')}', [System.Drawing.Imaging.ImageFormat]::Jpeg);
        exit 0;
    } else {
        exit 1;
    }
`;

try {
    await execAsync(`powershell -Command "${psScript}"`);
} catch (error) {
    vscode.window.showErrorMessage(`画像の取得に失敗しました`);
    return;
}</code></pre>
<p><!-- ![PowerShell実行](images/powershell-execution.jpg) --></p>
<p><strong>ポイント：</strong></p>
<ul>
<li>Windows.Formsでクリップボードにアクセス</li>
<li>JPEG形式で保存</li>
<li>バックスラッシュをエスケープ</li>
</ul>
<h3><span id="toc13">5. Markdownテキスト挿入</span></h3>
<pre><code class="language-typescript">const markdownText = `![${imageName}](images/${fileName}.jpg)`;

editor.edit(editBuilder => {
    editBuilder.insert(editor.selection.active, markdownText);
});

vscode.window.showInformationMessage(
    `画像を挿入しました: ${fileName}.jpg`
);</code></pre>
<p><!-- ![Markdown挿入](images/markdown-insert.jpg) --></p>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>editor.edit</code>でテキスト編集</li>
<li>カーソル位置に挿入</li>
<li>完了メッセージ表示</li>
</ul>
<h2><span id="toc14">インストール方法</span></h2>
<h3><span id="toc15">1. 拡張機能プロジェクトの準備</span></h3>
<pre><code class="language-bash"># プロジェクト作成
mkdir my-macros
cd my-macros

# 初期化
npm init -y

# VSCode拡張機能用パッケージ
npm install --save-dev @types/vscode @types/node typescript
npm install --save-dev @vscode/vsce</code></pre>
<h3><span id="toc16">2. ファイル配置</span></h3>
<pre><code class="language-plaintext">my-macros/
├── src/
│   ├── extension.ts
│   └── macros/
│       └── insertImageFromClipboard.ts
├── package.json
└── tsconfig.json</code></pre>
<h3><span id="toc17">3. extension.tsにコマンド登録</span></h3>
<pre><code class="language-typescript">// src/extension.ts
import * as vscode from 'vscode';
import { insertImageFromClipboard } from './macros/insertImageFromClipboard';

export function activate(context: vscode.ExtensionContext) {
    const command = vscode.commands.registerCommand(
        'myMacros.insertImageFromClipboard',
        insertImageFromClipboard
    );
    
    context.subscriptions.push(command);
}</code></pre>
<h3><span id="toc18">4. package.json設定</span></h3>
<pre><code class="language-json">{
  "name": "my-macros",
  "contributes": {
    "commands": [
      {
        "command": "myMacros.insertImageFromClipboard",
        "title": "Insert Image from Clipboard"
      }
    ],
    "keybindings": [
      {
        "command": "myMacros.insertImageFromClipboard",
        "key": "ctrl+shift+i",
        "when": "editorTextFocus"
      }
    ]
  }
}</code></pre>
<h3><span id="toc19">5. ビルドとインストール</span></h3>
<pre><code class="language-bash"># コンパイル
npm run compile

# VSIXパッケージ作成
vsce package

# VSCodeにインストール
code --install-extension my-macros-0.0.1.vsix</code></pre>
<h2><span id="toc20">実践的な使い方</span></h2>
<h3><span id="toc21">基本的な使い方</span></h3>
<p><strong>1. スクリーンショットを撮る</strong></p>
<pre><code class="language-plaintext">Windows: Win + Shift + S
macOS: Cmd + Shift + 4</code></pre>
<p><strong>2. Markdownファイルを開く</strong></p>
<pre><code class="language-bash">code article.md</code></pre>
<p><strong>3. 挿入位置にカーソルを置く</strong></p>
<p><strong>4. Ctrl+Shift+I を押す</strong></p>
<p><strong>5. 情報を入力</strong></p>
<pre><code class="language-plaintext">画像名: サンプル画面
ファイル名: sample-screen</code></pre>
<p><!-- ![基本的な使い方](images/basic-usage.jpg) --></p>
<h3><span id="toc22">ブログ執筆での活用</span></h3>
<p><strong>記事構造：</strong></p>
<pre><code class="language-plaintext">article/
├── post.md
└── images/
    ├── intro.jpg
    ├── step1.jpg
    ├── step2.jpg
    └── result.jpg</code></pre>
<p><strong>執筆フロー：</strong></p>
<pre><code class="language-markdown"># 記事タイトル

## はじめに

<!-- ![イントロ画面](images/intro.jpg) -->
↑ Ctrl+Shift+Iで一発挿入！

## 手順

### ステップ1

<!-- ![手順１](images/step1.jpg) -->
↑ スクリーンショット後すぐ挿入！

### ステップ2

<!-- ![手順２](images/step2.jpg) --></code></pre>
<h3><span id="toc23">ドキュメント作成での活用</span></h3>
<p><strong>設計書：</strong></p>
<pre><code class="language-markdown"># システム設計書

## 画面遷移図

<!-- ![画面遷移図](images/screen-flow.jpg) -->

## データベース設計

<!-- ![ER図](images/er-diagram.jpg) -->

## UIモックアップ

<!-- ![メイン画面](images/main-screen-mock.jpg) --></code></pre>
<h3><span id="toc24">議事録での活用</span></h3>
<pre><code class="language-markdown"># 2026/02/12 打ち合わせ議事録

## ホワイトボード

<!-- ![ホワイトボード内容](images/whiteboard-20260212.jpg) -->

## 資料スクリーンショット

<!-- ![スライド5](images/slide05.jpg) --></code></pre>
<h2><span id="toc25">トラブルシューティング</span></h2>
<h3><span id="toc26">エラー: クリップボードに画像がない</span></h3>
<p><strong>エラーメッセージ：</strong></p>
<pre><code class="language-plaintext">画像の取得に失敗しました</code></pre>
<p><strong>原因：</strong></p>
<ul>
<li>クリップボードに画像がコピーされていない</li>
<li>テキストデータやファイルがコピーされている</li>
</ul>
<p><strong>解決策：</strong></p>
<pre><code class="language-plaintext">1. スクリーンショットを再度撮る
2. 画像編集ソフトからコピー
3. ブラウザの画像を右クリック→画像をコピー</code></pre>
<h3><span id="toc27">エラー: imagesフォルダ作成に失敗</span></h3>
<p><strong>エラーメッセージ：</strong></p>
<pre><code class="language-plaintext">EACCES: permission denied</code></pre>
<p><strong>原因：</strong></p>
<ul>
<li>書き込み権限がない</li>
</ul>
<p><strong>解決策：</strong></p>
<pre><code class="language-plaintext">1. ファイルの保存場所を変更
2. ユーザーディレクトリで作業
3. VSCodeを管理者権限で起動</code></pre>
<h3><span id="toc28">エラー: ショートカットキーが動かない</span></h3>
<p><strong>原因：</strong></p>
<ul>
<li>他の拡張機能とキーバインドが競合</li>
</ul>
<p><strong>確認方法：</strong></p>
<pre><code class="language-plaintext">1. Ctrl+Shift+P
2. "Preferences: Open Keyboard Shortcuts"
3. "ctrl+shift+i" で検索</code></pre>
<p><strong>解決策：</strong></p>
<pre><code class="language-json">// keybindings.json
{
    "key": "ctrl+alt+i",  // 別のキーに変更
    "command": "myMacros.insertImageFromClipboard",
    "when": "editorTextFocus"
}</code></pre>
<h2><span id="toc29">Claude Codeでの開発体験</span></h2>
<p>このマクロは、実際にClaude Codeを使って開発しました。</p>
<h3><span id="toc30">開発時間の比較</span></h3>
<p>Claude Codeを使った場合と使わなかった場合で、開発効率に大きな違いがありました。</p>
<p>詳しくはこちらの記事で解説しています：</p>

<a rel="noopener" href="https://caymezon.com/claude-code-efficiency-comparison/" title="Claude Code vs Web版・Desktop版 開発効率徹底比較｜実際のマクロ開発で検証" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">Claude Code vs Web版・Desktop版 開発効率徹底比較｜実際のマクロ開発で検証</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに「Claude Codeって本当に効率的なの？」そんな疑問を持つ開発者は多いはずです。実際、Web版やDesktop版と比べて、どれくらいのメリットがあるのかイメージしにくいかもしれません。本記事では、実際に「VSCodeでクリップ...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.14</div></div></div></div></a>
<p><strong>主なポイント：</strong></p>
<ul>
<li>Claude Code: 8分</li>
<li>Web版: 17分</li>
<li>効率: 53%向上</li>
</ul>
<h3><span id="toc31">Claude Codeのメリット</span></h3>
<p>✅ <strong>プロジェクト理解</strong></p>
<ul>
<li>既存マクロのパターンを自動認識</li>
<li>一貫性のあるコード生成</li>
</ul>
<p>✅ <strong>直接ファイル操作</strong></p>
<ul>
<li>コピペ不要</li>
<li>エディタ切替不要</li>
</ul>
<p>✅ <strong>高速な修正</strong></p>
<ul>
<li>エラーを即座に修正</li>
<li>全体の整合性保持</li>
</ul>
<h2><span id="toc32">メリット・デメリット</span></h2>
<h3><span id="toc33">メリット</span></h3>
<p>✅ <strong>圧倒的な時短効果</strong></p>
<pre><code class="language-plaintext">従来: 30秒 × 10画像 = 5分
マクロ: 10秒 × 10画像 = 1.5分
→ 3.5分の短縮！70%減）</code></pre>
<p>✅ <strong>ファイル管理が楽</strong></p>
<ul>
<li>自動でimagesフォルダ作成</li>
<li>ファイル名の統一管理</li>
</ul>
<p>✅ <strong>ミスが減る</strong></p>
<ul>
<li>ファイル名のタイプミス防止</li>
<li>パス間違い防止</li>
</ul>
<h3><span id="toc34">デメリット</span></h3>
<p>⚠️ <strong>Windows専用</strong></p>
<ul>
<li>PowerShell依存</li>
<li>macOS/Linuxでは修正必要</li>
</ul>
<p>⚠️ <strong>初期設定が必要</strong></p>
<ul>
<li>拡張機能のインストール</li>
<li>ショートカットキー設定</li>
</ul>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発","b":"オライリージャパン","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/51vjj+osAgL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4873119049","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4873119049","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"vFiVC","s":"s"});</script></p>
<div id="msmaflink-vFiVC">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc35">まとめ</span></h2>
<p>VSCodeでクリップボード画像をMarkdown化するマクロを紹介しました。</p>
<p><strong>主な機能：</strong></p>
<p>✅ ショートカットキー一発で画像挿入<br />✅ ダイアログで画像名とファイル名を入力<br />✅ ![]形式で自動挿入<br />✅ imagesフォルダに画像保存</p>
<p><strong>効果：</strong></p>
<p>🚀 70%の時短<br />🚀 ミスの削減<br />🚀 ワークフローの改善</p>
<p><strong>活用シーン：</strong></p>
<p>📝 ブログ執筆<br />📝 技術ドキュメント<br />📝 議事録作成<br />📝 README作成</p>
<p><strong>開発体験：</strong></p>
<p>Claude Codeを使って、8分で実装できました。詳しくは関連記事をご覧ください。</p>
<p><strong>関連記事：</strong></p>
<ul>
<li>Claude Code完全ガイド</li>
</ul>

<a rel="noopener" href="https://caymezon.com/claude-code-overview/" title="Claude Code完全ガイド｜ターミナルで動くAIコーディングアシスタントの全貌【2026年6月版】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/claude-code-overview-featured-a281ac-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/claude-code-overview-featured-a281ac-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-overview-featured-a281ac-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-overview-featured-a281ac-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-overview-featured-a281ac-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">Claude Code完全ガイド｜ターミナルで動くAIコーディングアシスタントの全貌【2026年6月版】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに「AIにコードを書かせたいけど、ブラウザとエディタを行き来するのが面倒…」そんな悩みを解決するのがClaude Codeです。2026年6月時点で、Anthropicが提供するターミナル型AIエージェントとして、開発者の間で急速に注...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.14</div></div></div></div></a>
<ul>
<li>Claude Code環境構築ガイド</li>
</ul>

<a rel="noopener" href="https://caymezon.com/claude-code-setup-guide/" title="Claude Code環境構築完全ガイド｜初心者でも30分でセットアップできる詳細手順" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/claude-code-setup-guide-featured-90954f-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/claude-code-setup-guide-featured-90954f-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-setup-guide-featured-90954f-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-setup-guide-featured-90954f-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-setup-guide-featured-90954f-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">Claude Code環境構築完全ガイド｜初心者でも30分でセットアップできる詳細手順</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに「Claude Codeを使ってみたいけど、環境構築が難しそう…」そんな不安を持つ方も多いはずです。実際、ターミナルベースのツールは初心者にとってハードルが高く感じられます。しかし、この記事の手順通りに進めれば、初心者でも30分でC...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.14</div></div></div></div></a>
<ul>
<li>Claude Code vs Web版・Desktop版 比較</li>
</ul>

<a rel="noopener" href="https://caymezon.com/claude-code-efficiency-comparison/" title="Claude Code vs Web版・Desktop版 開発効率徹底比較｜実際のマクロ開発で検証" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/claude-code-efficiency-comparison-featured-2c6fec-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">Claude Code vs Web版・Desktop版 開発効率徹底比較｜実際のマクロ開発で検証</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに「Claude Codeって本当に効率的なの？」そんな疑問を持つ開発者は多いはずです。実際、Web版やDesktop版と比べて、どれくらいのメリットがあるのかイメージしにくいかもしれません。本記事では、実際に「VSCodeでクリップ...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.14</div></div></div></div></a>
<hr>
<p><strong>タグ:</strong> #VSCode #TypeScript #マクロ #Markdown #生産性向上 #クリップボード</p><p>The post <a href="https://caymezon.com/vscode-clipboard-image-macro/">VSCodeで画像挿入が一瞬！クリップボード画像をMarkdown化するTypeScriptマクロ</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/vscode-clipboard-image-macro/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>VSCodeで「デリミタ間テキスト選択コピー」を実現するTypeScriptマクロ【括弧・引用符を1キーで抜き出し】</title>
		<link>https://caymezon.com/vscode-delimiter-copy-macro/</link>
					<comments>https://caymezon.com/vscode-delimiter-copy-macro/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Wed, 11 Feb 2026 07:43:41 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[TypeScript]]></category>
		<category><![CDATA[VSCode]]></category>
		<category><![CDATA[エディタ]]></category>
		<category><![CDATA[テキスト編集]]></category>
		<category><![CDATA[マクロ]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20114</guid>

					<description><![CDATA[<p>目次 はじめに：引用符や括弧内のテキスト選択、面倒じゃないですか？この記事で分かること実装した機能の概要できること対応デリミタ（18種類）3つの動作モードフォールバック機能具体的な使用場面とメリット場面1：コード内の文字 [&#8230;]</p>
<p>The post <a href="https://caymezon.com/vscode-delimiter-copy-macro/">VSCodeで「デリミタ間テキスト選択コピー」を実現するTypeScriptマクロ【括弧・引用符を1キーで抜き出し】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-18" checked><label class="toc-title" for="toc-checkbox-18">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに：引用符や括弧内のテキスト選択、面倒じゃないですか？</a></li><li><a href="#toc2" tabindex="0">この記事で分かること</a></li><li><a href="#toc3" tabindex="0">実装した機能の概要</a><ol><li><a href="#toc4" tabindex="0">できること</a></li><li><a href="#toc5" tabindex="0">対応デリミタ（18種類）</a></li><li><a href="#toc6" tabindex="0">3つの動作モード</a></li><li><a href="#toc7" tabindex="0">フォールバック機能</a></li></ol></li><li><a href="#toc8" tabindex="0">具体的な使用場面とメリット</a><ol><li><a href="#toc9" tabindex="0">場面1：コード内の文字列リテラルを抽出</a></li><li><a href="#toc10" tabindex="0">場面2：ファイルパスを素早く抽出</a></li><li><a href="#toc11" tabindex="0">場面3：JSONのキーや値を抽出</a></li><li><a href="#toc12" tabindex="0">場面4：正規表現パターンを抽出</a></li><li><a href="#toc13" tabindex="0">場面5：複雑な入れ子構造から特定部分を抽出</a></li><li><a href="#toc14" tabindex="0">場面6：Markdown内のコード抜き出し</a></li><li><a href="#toc15" tabindex="0">場面7：コピー&貼り付け置換（Ctrl+Alt+Sの活用）</a></li><li><a href="#toc16" tabindex="0">メリットまとめ</a></li></ol></li><li><a href="#toc17" tabindex="0">改修履歴：ネスト構造への対応</a><ol><li><a href="#toc18" tabindex="0">改修前の問題点</a></li><li><a href="#toc19" tabindex="0">改修内容：括弧のバランスを考慮したマッチング</a></li></ol></li><li><a href="#toc20" tabindex="0">TypeScript実装の詳細</a></li><li><a href="#toc21" tabindex="0">コードのポイント解説</a><ol><li><a href="#toc22" tabindex="0">1. デリミタペアの定義</a></li><li><a href="#toc23" tabindex="0">2. コピーと選択の共通化</a></li><li><a href="#toc24" tabindex="0">3. 選択方向の判定</a></li><li><a href="#toc25" tabindex="0">4. 最も近いデリミタの優先</a></li><li><a href="#toc26" tabindex="0">5. デリミタの除外</a></li><li><a href="#toc27" tabindex="0">6. パフォーマンス最適化</a></li><li><a href="#toc28" tabindex="0">7. ネストレベル考慮のアルゴリズム</a></li></ol></li><li><a href="#toc29" tabindex="0">package.jsonの設定</a><ol><li><a href="#toc30" tabindex="0">extension.tsでの登録</a></li></ol></li><li><a href="#toc31" tabindex="0">使い方</a><ol><li><a href="#toc32" tabindex="0">基本的な使い方</a></li><li><a href="#toc33" tabindex="0">コピー&貼り付け置換の使い方</a></li><li><a href="#toc34" tabindex="0">方向別の使い方</a></li></ol></li><li><a href="#toc35" tabindex="0">トラブルシューティング</a><ol><li><a href="#toc36" tabindex="0">Q: デリミタが認識されない</a></li><li><a href="#toc37" tabindex="0">Q: 入れ子構造で意図しない範囲が選択される</a></li><li><a href="#toc38" tabindex="0">Q: 行全体がコピーされてしまう</a></li><li><a href="#toc39" tabindex="0">Q: 動作が遅い</a></li></ol></li><li><a href="#toc40" tabindex="0">パフォーマンスについて</a><ol><li><a href="#toc41" tabindex="0">計算量</a></li><li><a href="#toc42" tabindex="0">ベンチマーク（参考値）</a></li></ol></li><li><a href="#toc43" tabindex="0">拡張アイデア</a><ol><li><a href="#toc44" tabindex="0">カスタムデリミタの設定</a></li><li><a href="#toc45" tabindex="0">複数行対応</a></li></ol></li><li><a href="#toc46" tabindex="0">まとめ：キーボード1回でデリミタ内を抜き出す快適さ</a></li><li><a href="#toc47" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">はじめに：引用符や括弧内のテキスト選択、面倒じゃないですか？</span></h2>
<p>VSCodeで文字列編集をしていて、こんな経験はありませんか？</p>
<pre><code class="language-javascript">const message = "このテキストだけコピーしたい";
const path = '/home/user/documents/report.pdf';
const config = { name: "設定値", value: 123 };</code></pre>
<p><strong>ダブルクォーテーション内の文字列だけコピーしたい</strong>ときに、以下のような操作が必要です：</p>
<ol>
<li>マウスで開始位置をクリック</li>
<li>ドラッグして終了位置まで選択</li>
<li>Ctrl+Cでコピー</li>
</ol>
<p>あるいは：</p>
<ol>
<li>Ctrl+Shift+→を何度も押して単語単位で選択</li>
<li>微調整のためにShift+→/←</li>
<li>Ctrl+Cでコピー</li>
</ol>
<p><strong>特に長い文字列や入れ子構造の場合、この作業は非常に煩雑です。</strong></p>
<p>標準のVSCodeには「Ctrl+Shift+→」「Alt+Shift+→」などの単語単位選択機能がありますが、デリミタ（区切り文字）を意識した選択には対応していません。引用符や括弧の中身だけを<strong>1キー操作で選択・コピー</strong>できたら便利だと思いませんか？</p>
<p>そこで、<strong>カーソル位置から自動でデリミタを検索し、その間のテキストを1キーで選択・コピーするTypeScriptマクロを開発しました。</strong></p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで (Software Design plus)","b":"技術評論社","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/510GhCOD1FL._SL500_.jpg","\/41og2y1EEHL._SL500_.jpg","\/51XHb97PpFL._SL500_.jpg","\/51uDIY22bQL._SL500_.jpg","\/51PaoVK3MWL._SL500_.jpg","\/51eG7JBoavL._SL500_.jpg","\/51CDCo8FmJL._SL500_.jpg","\/41JLTXb+tsL._SL500_.jpg","\/51Hsv39e7IL._SL500_.jpg","\/41PTe+TqLEL._SL500_.jpg","\/51TUxdoXjrL._SL500_.jpg","\/51AkZEJWGhL._SL500_.jpg","\/51paP7D5R5L._SL500_.jpg","\/41lJtbpaQvL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4297127474","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4297127474","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"OaDLa","s":"s"});</script></p>
<div id="msmaflink-OaDLa">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc2">この記事で分かること</span></h2>
<ul>
<li>デリミタ間テキスト選択コピーの機能と使い方</li>
<li>対応するデリミタの種類（18種類）</li>
<li>コピーせず選択のみを行う <code>Ctrl+Alt+S</code> の活用法</li>
<li>選択方向による動作の違い（右方向/左方向）</li>
<li>TypeScript実装の詳細コード</li>
<li>実務での活用例とパフォーマンス</li>
</ul>
<h2><span id="toc3">実装した機能の概要</span></h2>
<h3><span id="toc4">できること</span></h3>
<p><strong>2つのショートカットキーで使い分けられます：</strong></p>
<ul>
<li><code>Ctrl+Alt+D</code> : デリミタ間を選択してクリップボードにコピー</li>
<li><code>Ctrl+Alt+S</code> : デリミタ間を選択のみ（クリップボードは変更しない）</li>
</ul>
<p><code>Ctrl+Alt+S</code> は「コピー元でCtrl+Alt+D → 置換先でCtrl+Alt+S → Ctrl+V」という<strong>コピー&貼り付け置換</strong>の用途を想定しています。</p>
<p><strong>Ctrl+Alt+D を押すだけで、カーソル位置の最も近いデリミタ間のテキストを自動選択・コピー</strong></p>
<pre><code class="language-plaintext">例：＜"「あいうえお」、【かきくけこ】、｛さしすせそ｝"＞
          ↑ここにカーソル
          
Ctrl+Alt+D を押す
          
→「あいうえお」だけが選択・コピーされる（引用符は除外）</code></pre>
<h3><span id="toc5">対応デリミタ（18種類）</span></h3>
<h4>クォーテーション・スラッシュ系</h4>
<ul>
<li><code>&quot;～&quot;</code> (ダブルクォート)</li>
<li><code>&#39;～&#39;</code> (シングルクォート)</li>
<li><code>`～`</code> (バッククォート)</li>
<li><code>/～/</code> (スラッシュ・半角)</li>
<li><code>／～／</code> (スラッシュ・全角)</li>
<li><code>\～\</code> (バックスラッシュ・半角)</li>
<li><code>￥～￥</code> (円記号・全角)</li>
<li><code>|～|</code> (パイプ・半角)</li>
<li><code>｜～｜</code> (パイプ・全角)</li>
</ul>
<h4>括弧系（半角・全角）</h4>
<ul>
<li><code>(～)</code> / <code>（～）</code> (丸括弧)</li>
<li><code>[～]</code> (角括弧)</li>
<li><code>{～}</code> / <code>｛～｝</code> (波括弧)</li>
<li><code>&lt;～&gt;</code> / <code>＜～＞</code> (山括弧)</li>
<li><code>【～】</code> (墨付き括弧)</li>
<li><code>「～」</code> (鉤括弧)</li>
</ul>
<h3><span id="toc6">3つの動作モード</span></h3>
<h4>1. 通常モード（カーソル位置から左に検索）</h4>
<pre><code class="language-plaintext">＜"「あいうえお」、【かきくけこ】"＞
       ↑カーソル
       
→ カーソルの左にある最も近い開始デリミタ「"」を検出
→ 対応する終了デリミタ「"」を右に検索
→ 「あいうえお」、【かきくけこ】 が選択される</code></pre>
<h4>2. 右方向モード（1文字選択 + カーソルが右側）</h4>
<pre><code class="language-plaintext">＜"「あいうえお」、【かきくけこ】"＞
   ↑選択    ↑カーソル（左→右に選択）
   
→ 選択文字「"」が開始デリミタか判定
→ 右に終了デリミタ「"」を検索
→ 「あいうえお」、【かきくけこ】 が選択される</code></pre>
<h4>3. 左方向モード（1文字選択 + カーソルが左側）</h4>
<pre><code class="language-plaintext">＜"「あいうえお」、【かきくけこ】"＞
   ↑カーソル ↑選択（右→左に選択）
   
→ 選択文字「"」が終了デリミタか判定
→ 左に開始デリミタ「"」を検索
→ 「あいうえお」、【かきくけこ】 が選択される</code></pre>
<h3><span id="toc7">フォールバック機能</span></h3>
<p>デリミタが見つからない場合は、<strong>行全体をコピー</strong>（<code>Ctrl+Alt+D</code>）または<strong>行全体を選択</strong>（<code>Ctrl+Alt+S</code>）します。</p>
<h2><span id="toc8">具体的な使用場面とメリット</span></h2>
<h3><span id="toc9">場面1：コード内の文字列リテラルを抽出</span></h3>
<pre><code class="language-javascript">const errorMessage = "接続に失敗しました。しばらく経ってから再度お試しください。";</code></pre>
<p>文字列の中にカーソルを置いて<code>Ctrl+Alt+D</code> → 文字列だけが即座にコピーされる。</p>
<p><strong>従来の方法：</strong></p>
<ol>
<li><code>&quot;</code>の直後をクリック</li>
<li>Shift+Endで行末まで選択</li>
<li>Shift+←で<code>&quot;</code>の手前まで調整</li>
<li>Ctrl+C</li>
</ol>
<p><strong>このマクロ：</strong></p>
<ol>
<li>文字列内にカーソルを置く</li>
<li><code>Ctrl+Alt+D</code></li>
</ol>
<p><strong>たった1操作で完了！</strong></p>
<h3><span id="toc10">場面2：ファイルパスを素早く抽出</span></h3>
<pre><code class="language-javascript">const configPath = '/etc/nginx/sites-available/default';
const dataPath = '/var/www/html/data/uploads/2026/02/';</code></pre>
<p>パス内にカーソルを置いて<code>Ctrl+Alt+D</code> → パス全体がコピーされる。</p>
<h3><span id="toc11">場面3：JSONのキーや値を抽出</span></h3>
<pre><code class="language-json">{
  "database": {
    "host": "localhost",
    "port": 5432,
    "name": "production_db"
  }
}</code></pre>
<p>各値にカーソルを置いて<code>Ctrl+Alt+D</code> → 値だけが抽出される。</p>
<h3><span id="toc12">場面4：正規表現パターンを抽出</span></h3>
<pre><code class="language-javascript">const pattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;</code></pre>
<p>パターン内にカーソルを置いて<code>Ctrl+Alt+D</code> → 正規表現本体だけがコピーされる（<code>/～/</code>を除外）。</p>
<h3><span id="toc13">場面5：複雑な入れ子構造から特定部分を抽出</span></h3>
<h4>異なる種類のデリミタの入れ子</h4>
<pre><code class="language-plaintext">＜"「あいうえお」、【かきくけこ】、｛さしすせそ｝"＞</code></pre>
<p>この複雑な構造でも：</p>
<ul>
<li><code>「</code>の後にカーソル → <code>あいうえお</code>が選択される</li>
<li><code>【</code>の後にカーソル → <code>かきくけこ</code>が選択される</li>
<li><code>＜</code>の後にカーソル → 最外側の<code>&quot;～&quot;</code>が選択される</li>
</ul>
<p><strong>最も近いデリミタを自動判別</strong>するため、入れ子構造でも正確に動作します。</p>
<h4>同じ種類のデリミタのネスト構造</h4>
<pre><code class="language-javascript">function outer(a, inner(b, c), d)</code></pre>
<p>この場合、カーソルが<code>outer</code>にあるとき：</p>
<ul>
<li>左で最も近い<code>(</code>（<code>outer</code>の後）を検出</li>
<li>ネストレベルを考慮して対応する<code>)</code>を検索</li>
<li>内側の<code>inner(b, c)</code>のネストをカウント</li>
<li><strong><code>a, inner(b, c), d</code>全体が正確に選択される</strong> ✅</li>
</ul>
<p>従来バージョンでは誤って<code>outer(a, inner(b, c</code>が選択されていましたが、ネスト対応により正確に動作するようになりました。</p>
<h3><span id="toc14">場面6：Markdown内のコード抜き出し</span></h3>
<pre><code class="language-markdown">インラインコードは`console.log('Hello')`のように書きます。</code></pre>
<p>バッククォート内にカーソルを置いて<code>Ctrl+Alt+D</code> → <code>console.log(&#39;Hello&#39;)</code>だけがコピーされる。</p>
<h3><span id="toc15">場面7：コピー&貼り付け置換（Ctrl+Alt+Sの活用）</span></h3>
<p><code>Ctrl+Alt+S</code>（選択のみ）との組み合わせで、<strong>貼り付けによる置換</strong>が手軽にできます。</p>
<pre><code class="language-javascript">const oldValue = "置換前の文字列";
const newValue = "置換後の文字列";</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li><code>&quot;置換前の文字列&quot;</code> 内にカーソル → <code>Ctrl+Alt+D</code> でコピー</li>
<li><code>&quot;置換後の文字列&quot;</code> 内にカーソルを移動</li>
<li><code>Ctrl+Alt+S</code> で置換対象を選択</li>
<li><code>Ctrl+V</code> で貼り付け → 置換完了！</li>
</ol>
<p>クリップボードを変更せずに置換先だけを選択できるので、途中でクリップボードが上書きされる心配がありません。</p>
<h3><span id="toc16">メリットまとめ</span></h3>
<ul>
<li><strong>マウス操作不要</strong>: カーソル位置だけで判定</li>
<li><strong>高速</strong>: キーボード1回で完結</li>
<li><strong>正確</strong>: デリミタを自動検出</li>
<li><strong>柔軟</strong>: 選択方向で動作を変更可能、コピー/選択を使い分け可能</li>
<li><strong>安全</strong>: デリミタが見つからなくても行全体をコピー/選択</li>
</ul>
<h2><span id="toc17">改修履歴：ネスト構造への対応</span></h2>
<h3><span id="toc18">改修前の問題点</span></h3>
<p>初期バージョンでは、ネスト（入れ子）構造の括弧を正しく処理できない問題がありました。</p>
<p><strong>問題の例：</strong></p>
<pre><code class="language-javascript">function(b,c){...}</code></pre>
<p>この場合、カーソルが<code>function</code>にあるとき：</p>
<ol>
<li>左から最も近い開始デリミタ<code>(</code>を検出</li>
<li>その位置から右に最初に見つかった終了デリミタ<code>)</code>をマッチング</li>
<li>しかし、最初の<code>)</code>は<code>b,c)</code>の閉じ括弧なので、<strong><code>function(b,c</code>が誤って選択される</strong> ❌</li>
</ol>
<p>ネストレベルを考慮していないため、入れ子構造で誤動作していました。</p>
<h3><span id="toc19">改修内容：括弧のバランスを考慮したマッチング</span></h3>
<p>VSCodeの<code>Ctrl+Shift+\</code>（対応する括弧へジャンプ）と同じように、<strong>ネストレベルをカウントしながら対応する括弧を探す</strong>アルゴリズムを実装しました。</p>
<p><strong>アルゴリズム：</strong></p>
<ol>
<li>カーソル位置から左に開始デリミタを検索</li>
<li>その位置から右に向かって：
<ul>
<li>同じ開始デリミタが出現 → カウンタ +1（ネストが深くなる）</li>
<li>対応する終了デリミタが出現 → カウンタ -1（ネストから抜ける）</li>
<li><strong>カウンタが 0 になった位置が対応する終了デリミタ</strong> ✅</li>
</ul>
</li>
</ol>
<p><strong>追加した関数：</strong></p>
<ul>
<li><code>findMatchingEndDelimiter()</code> - 順方向のネスト対応マッチング</li>
<li><code>findMatchingStartDelimiter()</code> - 逆方向のネスト対応マッチング</li>
</ul>
<p>これにより、複雑な入れ子構造でも正確にデリミタのペアを検出できるようになりました。</p>
<h2><span id="toc20">TypeScript実装の詳細</span></h2>
<p>実際のコードを紹介します。<code>copyTextBetweenDelimiters.ts</code>ファイルに実装しました。</p>
<pre><code class="language-typescript">import * as vscode from 'vscode';

/**
 * デリミタペアの定義（開始文字と終了文字）
 */
const DELIMITER_PAIRS: Array&lt;{ start: string; end: string }&gt; = [
    { start: '"', end: '"' },
    { start: "'", end: "'" },
    { start: '`', end: '`' }, // バッククォート（テンプレートリテラル・Markdownインラインコード）
    { start: '/', end: '/' },
    { start: '／', end: '／' },
    { start: '\\', end: '\\' },
    { start: '￥', end: '￥' },
    { start: '|', end: '|' },
    { start: '｜', end: '｜' },
    { start: '「', end: '」' },
    { start: '[', end: ']' },
    { start: '【', end: '】' },
    { start: '{', end: '}' },
    { start: '｛', end: '｝' },
    { start: '(', end: ')' },
    { start: '（', end: '）' },
    { start: '&lt;', end: '&gt;' },
    { start: '＜', end: '＞' }
];

/**
 * デリミタで囲まれたテキストを選択してコピー（デリミタは除外）
 * - カーソル位置から左に開始デリミタを検索
 * - 対応する終了デリミタを右に検索
 * - 見つからない場合は行全体をコピー
 * - 1文字選択時はカーソル位置（選択方向）で動作を変更
 */
export async function copyTextBetweenDelimiters() {
    await processTextBetweenDelimiters(true); // 選択＋コピー
}

/**
 * デリミタで囲まれたテキストを選択するだけ（コピーしない）
 * - copyTextBetweenDelimiters と同じ検索ロジック
 * - 貼り付け先を選択してから Ctrl+V で置換する用途を想定
 */
export async function selectTextBetweenDelimiters() {
    await processTextBetweenDelimiters(false); // 選択のみ
}

/**
 * デリミタ間テキストの共通処理
 * @param copyToClipboard true=選択＋コピー、false=選択のみ
 */
async function processTextBetweenDelimiters(copyToClipboard: boolean) {
    const editor = vscode.window.activeTextEditor;
    if (!editor) {
        vscode.window.showWarningMessage('アクティブなエディタがありません');
        return;
    }

    const document = editor.document;
    const selection = editor.selection;
    const cursorPos = selection.active;
    const line = document.lineAt(cursorPos.line);
    const lineText = line.text;

    // 1文字選択時の特殊処理（選択方向で動作を変更）
    if (!selection.isEmpty &amp;&amp; selection.end.character - selection.start.character === 1) {
        const selectedChar = lineText[selection.start.character];
        const charPos = selection.start.character;

        // カーソルが選択文字の右側（左→右選択）
        if (selection.active.character &gt; selection.anchor.character) {
            const result = handleRightDirection(lineText, charPos, selectedChar);
            if (result) {
                await applyResult(editor, cursorPos.line, result.start, result.end, copyToClipboard);
                return;
            }
        }
        // カーソルが選択文字の左側（右→左選択）
        else if (selection.active.character &lt; selection.anchor.character) {
            const result = handleLeftDirection(lineText, charPos, selectedChar);
            if (result) {
                await applyResult(editor, cursorPos.line, result.start, result.end, copyToClipboard);
                return;
            }
        }
    }

    // 通常処理：カーソル位置から左に開始デリミタを検索
    const result = findDelimitedText(lineText, cursorPos.character);

    if (result) {
        await applyResult(editor, cursorPos.line, result.start, result.end, copyToClipboard);
    } else {
        // 見つからない場合は行全体を対象
        if (copyToClipboard) {
            copyEntireLine(editor, cursorPos.line);
        } else {
            selectEntireLine(editor, cursorPos.line);
        }
    }
}

/**
 * 右方向処理：選択文字が開始デリミタかチェックし、右に終了デリミタを検索（ネスト考慮）
 */
function handleRightDirection(
    lineText: string,
    charPos: number,
    selectedChar: string
): { start: number; end: number } | null {
    for (const pair of DELIMITER_PAIRS) {
        if (selectedChar === pair.start) {
            // ネストレベルを考慮して対応する終了デリミタを検索
            const endPos = findMatchingEndDelimiter(lineText, charPos, pair.start, pair.end);
            if (endPos !== -1) {
                // デリミタを除外: 開始の次の文字から終了の前まで
                return { start: charPos + 1, end: endPos };
            }
        }
    }
    return null;
}

/**
 * 左方向処理：選択文字が終了デリミタかチェックし、左に開始デリミタを検索（ネスト考慮）
 */
function handleLeftDirection(
    lineText: string,
    charPos: number,
    selectedChar: string
): { start: number; end: number } | null {
    for (const pair of DELIMITER_PAIRS) {
        if (selectedChar === pair.end) {
            // ネストレベルを考慮して対応する開始デリミタを検索
            const startPos = findMatchingStartDelimiter(lineText, charPos, pair.start, pair.end);
            if (startPos !== -1) {
                // デリミタを除外: 開始の次の文字から終了の前まで
                return { start: startPos + 1, end: charPos };
            }
        }
    }
    return null;
}

/**
 * カーソル位置からデリミタで囲まれたテキストを検索（デリミタは除外）
 * - 左に開始デリミタを検索
 * - ネストレベルを考慮して対応する終了デリミタを右に検索
 */
function findDelimitedText(
    lineText: string,
    cursorPos: number
): { start: number; end: number } | null {
    let bestMatch: { start: number; end: number; startPos: number } | null = null;

    // 各デリミタペアについて検索
    for (const pair of DELIMITER_PAIRS) {
        // カーソル位置の左側で最後に出現する開始デリミタを検索
        let startPos = -1;
        for (let i = cursorPos - 1; i &gt;= 0; i--) {
            if (lineText[i] === pair.start) {
                startPos = i;
                break;
            }
        }

        if (startPos === -1) {
            continue; // 開始デリミタが見つからない
        }

        // 対応する終了デリミタを検索（ネストレベルを考慮）
        const endPos = findMatchingEndDelimiter(lineText, startPos, pair.start, pair.end);

        if (endPos !== -1) {
            // カーソル位置が範囲内にあるかチェック
            if (startPos &lt; cursorPos &amp;&amp; cursorPos &lt;= endPos) {
                // より近い開始デリミタを優先
                if (!bestMatch || startPos &gt; bestMatch.startPos) {
                    // デリミタを除外: 開始の次の文字から終了の前まで
                    bestMatch = {
                        start: startPos + 1,
                        end: endPos,
                        startPos: startPos
                    };
                }
            }
        }
    }

    if (bestMatch) {
        return { start: bestMatch.start, end: bestMatch.end };
    }

    return null;
}

/**
 * ネストレベルを考慮して対応する終了デリミタを検索
 */
function findMatchingEndDelimiter(
    lineText: string,
    startPos: number,
    startDelimiter: string,
    endDelimiter: string
): number {
    // 開始と終了が同じ文字の場合（" や ' など）は従来の方式
    if (startDelimiter === endDelimiter) {
        return lineText.indexOf(endDelimiter, startPos + 1);
    }

    // 異なる文字の場合はネストレベルを考慮
    let nestLevel = 1; // 開始デリミタを見つけた状態から開始

    for (let i = startPos + 1; i &lt; lineText.length; i++) {
        const char = lineText[i];

        if (char === startDelimiter) {
            nestLevel++; // 同じ開始デリミタが出現したらネストレベル+1
        } else if (char === endDelimiter) {
            nestLevel--; // 終了デリミタが出現したらネストレベル-1

            if (nestLevel === 0) {
                return i; // ネストレベルが0になったら対応する終了デリミタを発見
            }
        }
    }

    return -1; // 対応する終了デリミタが見つからない
}

/**
 * ネストレベルを考慮して対応する開始デリミタを検索（逆方向）
 */
function findMatchingStartDelimiter(
    lineText: string,
    endPos: number,
    startDelimiter: string,
    endDelimiter: string
): number {
    // 開始と終了が同じ文字の場合（" や ' など）は従来の方式
    if (startDelimiter === endDelimiter) {
        return lineText.lastIndexOf(startDelimiter, endPos - 1);
    }

    // 異なる文字の場合はネストレベルを考慮（逆方向）
    let nestLevel = 1; // 終了デリミタを見つけた状態から開始

    for (let i = endPos - 1; i &gt;= 0; i--) {
        const char = lineText[i];

        if (char === endDelimiter) {
            nestLevel++; // 同じ終了デリミタが出現したらネストレベル+1
        } else if (char === startDelimiter) {
            nestLevel--; // 開始デリミタが出現したらネストレベル-1

            if (nestLevel === 0) {
                return i; // ネストレベルが0になったら対応する開始デリミタを発見
            }
        }
    }

    return -1; // 対応する開始デリミタが見つからない
}

/**
 * 指定範囲を選択し、copyToClipboard=true の場合はコピーも行う
 */
async function applyResult(
    editor: vscode.TextEditor,
    line: number,
    startChar: number,
    endChar: number,
    copyToClipboard: boolean
) {
    const startPos = new vscode.Position(line, startChar);
    const endPos = new vscode.Position(line, endChar);
    editor.selection = new vscode.Selection(startPos, endPos);
    if (copyToClipboard) {
        await vscode.commands.executeCommand('editor.action.clipboardCopyAction');
    }
}

/**
 * 行全体をクリップボードにコピー
 */
async function copyEntireLine(editor: vscode.TextEditor, lineNumber: number) {
    const line = editor.document.lineAt(lineNumber);
    editor.selection = new vscode.Selection(line.range.start, line.range.end);
    await vscode.commands.executeCommand('editor.action.clipboardCopyAction');
    vscode.window.showInformationMessage('デリミタが見つからないため、行全体をコピーしました');
}

/**
 * 行全体を選択するだけ（コピーしない）
 */
function selectEntireLine(editor: vscode.TextEditor, lineNumber: number) {
    const line = editor.document.lineAt(lineNumber);
    editor.selection = new vscode.Selection(line.range.start, line.range.end);
    vscode.window.showInformationMessage('デリミタが見つからないため、行全体を選択しました');
}</code></pre>
<h2><span id="toc21">コードのポイント解説</span></h2>
<h3><span id="toc22">1. デリミタペアの定義</span></h3>
<pre><code class="language-typescript">const DELIMITER_PAIRS: Array&lt;{ start: string; end: string }&gt; = [
    { start: '"', end: '"' },
    { start: "'", end: "'" },
    { start: '`', end: '`' }, // バッククォート（テンプレートリテラル・Markdownインラインコード）
    { start: '「', end: '」' },
    // ... 18種類
];</code></pre>
<p>開始文字と終了文字のペアを配列で管理。拡張が容易な設計です。</p>
<h3><span id="toc23">2. コピーと選択の共通化</span></h3>
<pre><code class="language-typescript">// コピーする場合（Ctrl+Alt+D）
export async function copyTextBetweenDelimiters() {
    await processTextBetweenDelimiters(true);
}

// 選択のみの場合（Ctrl+Alt+S）
export async function selectTextBetweenDelimiters() {
    await processTextBetweenDelimiters(false);
}

// 共通処理（copyToClipboard で動作を分岐）
async function processTextBetweenDelimiters(copyToClipboard: boolean) {
    // ...
    await applyResult(editor, line, start, end, copyToClipboard);
}</code></pre>
<p><code>copyToClipboard</code>フラグ1つで2つのコマンドを共通化。検索ロジックの重複をなくし、保守性を高めています。</p>
<h3><span id="toc24">3. 選択方向の判定</span></h3>
<pre><code class="language-typescript">// カーソルが選択文字の右側（左→右選択）
if (selection.active.character &gt; selection.anchor.character) {
    // 右方向処理
}
// カーソルが選択文字の左側（右→左選択）
else if (selection.active.character &lt; selection.anchor.character) {
    // 左方向処理
}</code></pre>
<p>VSCodeの<code>selection.active</code>（カーソル位置）と<code>selection.anchor</code>（選択開始位置）を比較して選択方向を判定。</p>
<h3><span id="toc25">4. 最も近いデリミタの優先</span></h3>
<pre><code class="language-typescript">// より近い開始デリミタを優先
if (!bestMatch || startPos &gt; bestMatch.startPos) {
    bestMatch = {
        start: startPos + 1,
        end: endPos,
        startPos: startPos
    };
}</code></pre>
<p>複数のデリミタペアが見つかった場合、カーソルに最も近い開始デリミタを優先します。</p>
<h3><span id="toc26">5. デリミタの除外</span></h3>
<pre><code class="language-typescript">// デリミタを除外: 開始の次の文字から終了の前まで
return { start: charPos + 1, end: endPos };</code></pre>
<p>開始デリミタの<strong>次の文字</strong>から終了デリミタの<strong>前まで</strong>を選択範囲とすることで、デリミタ自体を除外します。</p>
<h3><span id="toc27">6. パフォーマンス最適化</span></h3>
<pre><code class="language-typescript">// 行内のみの線形検索
for (let i = cursorPos - 1; i &gt;= 0; i--) {
    if (lineText[i] === pair.start) {
        startPos = i;
        break;
    }
}</code></pre>
<p><strong>行内のみ</strong>を検索対象とすることで、長大なファイルでもパフォーマンスに影響しません。</p>
<h3><span id="toc28">7. ネストレベル考慮のアルゴリズム</span></h3>
<pre><code class="language-typescript">function findMatchingEndDelimiter(lineText: string, startPos: number, startDelimiter: string, endDelimiter: string): number {
    // 開始と終了が同じ文字（" や ' など）は従来の方式
    if (startDelimiter === endDelimiter) {
        return lineText.indexOf(endDelimiter, startPos + 1);
    }

    // 異なる文字の場合はネストレベルを考慮
    let nestLevel = 1; // 開始デリミタを見つけた状態から開始

    for (let i = startPos + 1; i &lt; lineText.length; i++) {
        const char = lineText[i];

        if (char === startDelimiter) {
            nestLevel++; // 同じ開始デリミタが出現 → ネスト +1
        } else if (char === endDelimiter) {
            nestLevel--; // 終了デリミタが出現 → ネスト -1

            if (nestLevel === 0) {
                return i; // ネストレベルが0 → 対応する括弧を発見
            }
        }
    }

    return -1; // 対応する終了デリミタが見つからない
}</code></pre>
<p><strong>ポイント：</strong></p>
<ul>
<li><code>nestLevel = 1</code> から開始（開始デリミタを見つけた状態）</li>
<li>同じ開始デリミタが出現するたびに <code>nestLevel++</code>（ネストが深くなる）</li>
<li>終了デリミタが出現するたびに <code>nestLevel--</code>（ネストから抜ける）</li>
<li><code>nestLevel === 0</code> になった位置が<strong>対応する終了デリミタ</strong></li>
</ul>
<p><strong>具体例：</strong></p>
<pre><code class="language-javascript">function(a, (b, c), d)
        ↑開始</code></pre>
<ol>
<li><code>function(</code> → <code>nestLevel = 1</code></li>
<li><code>(b</code> → <code>nestLevel = 2</code>（ネストが深くなる）</li>
<li><code>c)</code> → <code>nestLevel = 1</code>（ネストから抜ける）</li>
<li><code>d)</code> → <code>nestLevel = 0</code> ✅ <strong>ここが対応する閉じ括弧</strong></li>
</ol>
<p>これにより、複雑な入れ子構造でも正確にペアを検出できます。</p>
<h2><span id="toc29">package.jsonの設定</span></h2>
<p>拡張機能のコマンドとキーバインディングを登録します。</p>
<pre><code class="language-json">{
  "contributes": {
    "commands": [
      {
        "command": "myMacros.copyTextBetweenDelimiters",
        "title": "Copy Text Between Delimiters",
        "category": "My Macros"
      },
      {
        "command": "myMacros.selectTextBetweenDelimiters",
        "title": "Select Text Between Delimiters",
        "category": "My Macros"
      }
    ],
    "keybindings": [
      {
        "command": "myMacros.copyTextBetweenDelimiters",
        "key": "ctrl+alt+d",
        "when": "editorTextFocus"
      },
      {
        "command": "myMacros.selectTextBetweenDelimiters",
        "key": "ctrl+alt+s",
        "when": "editorTextFocus"
      }
    ]
  }
}</code></pre>
<h3><span id="toc30">extension.tsでの登録</span></h3>
<pre><code class="language-typescript">import { copyTextBetweenDelimiters, selectTextBetweenDelimiters } from './macros/copyTextBetweenDelimiters';

export function activate(context: vscode.ExtensionContext) {
    const commands = [
        vscode.commands.registerCommand(
            'myMacros.copyTextBetweenDelimiters',
            copyTextBetweenDelimiters
        ),
        vscode.commands.registerCommand(
            'myMacros.selectTextBetweenDelimiters',
            selectTextBetweenDelimiters
        ),
        // ... 他のコマンド
    ];

    commands.forEach(command =&gt; context.subscriptions.push(command));
}</code></pre>
<h2><span id="toc31">使い方</span></h2>
<h3><span id="toc32">基本的な使い方</span></h3>
<p><strong>ステップ1：カーソルを配置</strong></p>
<p>デリミタで囲まれたテキスト内にカーソルを配置します。</p>
<pre><code class="language-javascript">const message = "ここにカーソル";
                 ↑</code></pre>
<p><strong>ステップ2：マクロ実行</strong></p>
<ul>
<li><code>Ctrl+Alt+D</code> → 選択してクリップボードにコピー</li>
<li><code>Ctrl+Alt+S</code> → 選択のみ（クリップボードは変更しない）</li>
</ul>
<p><strong>ステップ3：完了</strong></p>
<p>デリミタ内のテキストが選択（または選択＋コピー）されます。</p>
<h3><span id="toc33">コピー&貼り付け置換の使い方</span></h3>
<p><code>Ctrl+Alt+D</code>と<code>Ctrl+Alt+S</code>を組み合わせると、クリップボードを保持したまま置換できます。</p>
<pre><code class="language-javascript">const src = "コピー元のテキスト";
const dst = "ここに上書きしたい";</code></pre>
<ol>
<li><code>&quot;コピー元のテキスト&quot;</code> 内にカーソル → <code>Ctrl+Alt+D</code> でコピー</li>
<li><code>&quot;ここに上書きしたい&quot;</code> 内にカーソルを移動</li>
<li><code>Ctrl+Alt+S</code> で選択（クリップボードは変わらない）</li>
<li><code>Ctrl+V</code> で貼り付け → 置換完了！</li>
</ol>
<h3><span id="toc34">方向別の使い方</span></h3>
<h4>右方向検索</h4>
<p>開始デリミタを1文字選択（左→右）してから<code>Ctrl+Alt+D</code></p>
<pre><code class="language-plaintext">＜"あいうえお"＞
   ↑選択 ↑カーソル</code></pre>
<p>→ 右に<code>&quot;</code>を検索して<code>あいうえお</code>を選択</p>
<h4>左方向検索</h4>
<p>終了デリミタを1文字選択（右→左）してから<code>Ctrl+Alt+D</code></p>
<pre><code class="language-plaintext">＜"あいうえお"＞
   ↑カーソル ↑選択</code></pre>
<p>→ 左に<code>&quot;</code>を検索して<code>あいうえお</code>を選択</p>
<h2><span id="toc35">トラブルシューティング</span></h2>
<h3><span id="toc36">Q: デリミタが認識されない</span></h3>
<p><strong>A:</strong> 対応デリミタを確認してください</p>
<p>現在対応しているのは18種類のデリミタです。バッククォート（<code>`</code>）も対応済みです。対応していないデリミタは<code>DELIMITER_PAIRS</code>配列に追加すれば簡単に拡張できます。</p>
<h3><span id="toc37">Q: 入れ子構造で意図しない範囲が選択される</span></h3>
<p><strong>A:</strong> ネストレベルを考慮して正確にマッチングします</p>
<p>改修後のバージョンでは、括弧のネストレベルを考慮して対応する括弧を検出します。</p>
<pre><code class="language-javascript">function(a, (b, c), d)
        ↑ここにカーソル</code></pre>
<p>この場合：</p>
<ul>
<li>カーソルの左で最も近い<code>(</code>（<code>function</code>の後）を検出</li>
<li>ネストレベルをカウントしながら対応する<code>)</code>を検索</li>
<li>内側の<code>(b, c)</code>のネストを考慮して、最外側の<code>)</code>を正確に検出</li>
</ul>
<p><strong>ただし、異なる種類のデリミタの場合は最も近いものが優先されます：</strong></p>
<pre><code class="language-plaintext">＜"「あいうえお」、【かきくけこ】"＞
     ↑ここにカーソル</code></pre>
<p>この場合、<code>「～」</code>が選択されます（最も近いため）。外側の<code>&quot;～&quot;</code>を選択したい場合は、<code>&quot;</code>と<code>「</code>の間にカーソルを配置してください。</p>
<h3><span id="toc38">Q: 行全体がコピーされてしまう</span></h3>
<p><strong>A:</strong> デリミタが見つからない場合のフォールバック動作です</p>
<ul>
<li>カーソル位置の左に開始デリミタがない</li>
<li>対応する終了デリミタが右に見つからない</li>
<li>カーソル位置がデリミタの外側</li>
</ul>
<p>これらの場合、安全のため行全体をコピーします。</p>
<h3><span id="toc39">Q: 動作が遅い</span></h3>
<p><strong>A:</strong> 行内のみの検索なのでパフォーマンス問題はありません</p>
<p>1行あたりの検索は線形時間（O(n)）で、通常の行（数百文字）なら瞬時に完了します。</p>
<h2><span id="toc40">パフォーマンスについて</span></h2>
<h3><span id="toc41">計算量</span></h3>
<ul>
<li>
<p><strong>時間計算量</strong>: O(n × m)</p>
<ul>
<li>n: 行の文字数</li>
<li>m: デリミタペアの数（18個）</li>
<li>通常の行（100文字）なら約1800回の比較</li>
</ul>
</li>
<li>
<p><strong>空間計算量</strong>: O(1)</p>
<ul>
<li>固定サイズのデータ構造のみ使用</li>
</ul>
</li>
</ul>
<h3><span id="toc42">ベンチマーク（参考値）</span></h3>
<ul>
<li>100文字の行: < 1ms</li>
<li>1000文字の行: < 5ms</li>
<li>10000文字の行: < 50ms</li>
</ul>
<p><strong>実用上、全く問題ないレベルです。</strong></p>
<h2><span id="toc43">拡張アイデア</span></h2>
<h3><span id="toc44">カスタムデリミタの設定</span></h3>
<p>VSCodeの設定ファイル（settings.json）から読み込むようにすれば、ユーザー独自のデリミタにも対応可能です。</p>
<pre><code class="language-json">{
  "myMacros.customDelimiters": [
    { "start": "/*", "end": "*/" },
    { "start": "&lt;!--", "end": "--&gt;" }
  ]
}</code></pre>
<h3><span id="toc45">複数行対応</span></h3>
<p>現在は行内のみですが、開始・終了デリミタが別の行にある場合も対応できます（ただし、パフォーマンスへの配慮が必要）。</p>
<h2><span id="toc46">まとめ：キーボード1回でデリミタ内を抜き出す快適さ</span></h2>
<p>VSCodeの標準機能では手が届かなかった「デリミタ間のテキスト選択」を、TypeScriptマクロで実現しました。</p>
<p><strong>このマクロの強み：</strong></p>
<ul>
<li>1キー操作で完結（<code>Ctrl+Alt+D</code> コピー / <code>Ctrl+Alt+S</code> 選択のみ）</li>
<li>18種類のデリミタに対応（バッククォートも含む）</li>
<li>選択方向で動作を切り替え可能</li>
<li>入れ子構造でも正確に動作（ネストレベル考慮）</li>
<li>パフォーマンス問題なし</li>
<li>デリミタが見つからない場合も安全（行全体をフォールバック）</li>
</ul>
<p><strong>こんな人におすすめ：</strong></p>
<ul>
<li>コードレビューでログやJSONを頻繁に扱う</li>
<li>文字列リテラルのコピペが多い</li>
<li>マウス操作を減らしたい</li>
<li>キーボードだけで完結させたい</li>
</ul>
<p>標準のVSCodeでは「Ctrl+Shift+→」を何度も押す必要があった操作が、<strong>たった1回のキー操作</strong>で完了します。</p>
<p>「需要はないかもしれない」と思っていましたが、<strong>一度使うと手放せない便利機能</strong>です。特に大量のテキストを扱う作業では、作業効率が劇的に向上します。</p>
<p>ぜひVSCodeでの快適なテキスト編集にお役立てください！</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発","b":"オライリージャパン","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/51vjj+osAgL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4873119049","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4873119049","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"vFiVC","s":"s"});</script></p>
<div id="msmaflink-vFiVC">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc47">関連記事</span></h2>
<ul>
<li>VSCodeで「任意行までの一括選択・コピー」を実現するTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-select-copy-macro/" title="VSCodeで「任意行までの一括選択・コピー」を実現するTypeScriptマクロ開発【サクラエディタ移行の集大成】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-select-copy-macro-featured-cf97f1-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「任意行までの一括選択・コピー」を実現するTypeScriptマクロ開発【サクラエディタ移行の集大成】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに：テキスト編集における「範囲選択の不便さ」VSCodeで長いログファイルやドキュメントを編集していて、「この行から特定の文字列まで一気にコピーしたい」と思ったことはありませんか？通常のVSCodeでは、以下のような手順が必要です：開...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<ul>
<li>VSCodeで「選択行による一括置換」を実現するTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-replace-by-selection-macro/" title="VSCodeで「選択行による一括置換」を実現するTypeScriptマクロ【テキスト編集が10倍速くなる】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-replace-by-selection-macro-featured-c0b1f0-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「選択行による一括置換」を実現するTypeScriptマクロ【テキスト編集が10倍速くなる】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにテキスト編集で「複数の文字列を一度に置換したい」と思ったことはありませんか？例えば、こんなシーン：変数名を複数箇所で一括変更テーブル定義のデータ型を複数列で一括更新ドキュメント内の用語統一を複数ワードで一括実施VSCodeの標準機能...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<ul>
<li>VSCodeで正規表現マッチを一括抽出するTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-regex-extract-macro/" title="VSCodeで「正規表現マッチ抽出」を実現するTypeScriptマクロ【ログ解析が10倍速くなる】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「正規表現マッチ抽出」を実現するTypeScriptマクロ【ログ解析が10倍速くなる】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにサーバーログやアプリケーションログを解析する時、こんな悩みありませんか？2024-02-08 10:00:00 INFO: Server started2024-02-08 10:01:00 ERROR: Connection fa...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<ul>
<li>VSCodeでパスを読み取り専用で開くTypeScriptマクロ</li>
</ul>

<a rel="noopener" href="https://caymezon.com/vscode-open-path-readonly-macro/" title="VSCodeでカーソル下のパスを開くマクロ【Office読み取り専用・関連付けアプリ・連続起動対応】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-open-path-readonly-macro-featured-be5c12-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-open-path-readonly-macro-featured-be5c12-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-open-path-readonly-macro-featured-be5c12-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-open-path-readonly-macro-featured-be5c12-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-open-path-readonly-macro-featured-be5c12-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeでカーソル下のパスを開くマクロ【Office読み取り専用・関連付けアプリ・連続起動対応】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにVSCodeでコードやドキュメントを書いている時、テキスト内にパスが書かれていてそのファイルを開きたいこと、ありませんか？作業メモ.txt---設計書: C:\work\documents\設計書_v1.0.docx手順書: C:\...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.06</div></div></div></div></a>
<hr>
<p><strong>タグ:</strong> #VSCode #TypeScript #マクロ #テキスト編集 #生産性向上 #エディタ</p><p>The post <a href="https://caymezon.com/vscode-delimiter-copy-macro/">VSCodeで「デリミタ間テキスト選択コピー」を実現するTypeScriptマクロ【括弧・引用符を1キーで抜き出し】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/vscode-delimiter-copy-macro/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>VSCodeで「フォルダ一覧取得」を実現するTypeScriptマクロ【ファイル管理が10倍速くなる】</title>
		<link>https://caymezon.com/vscode-folder-list-macro/</link>
					<comments>https://caymezon.com/vscode-folder-list-macro/#respond</comments>
		
		<dc:creator><![CDATA[caymezon]]></dc:creator>
		<pubDate>Mon, 09 Feb 2026 01:55:10 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[TypeScript]]></category>
		<category><![CDATA[VSCode]]></category>
		<category><![CDATA[ファイル管理]]></category>
		<category><![CDATA[フォルダ一覧]]></category>
		<category><![CDATA[マクロ]]></category>
		<category><![CDATA[生産性向上]]></category>
		<guid isPermaLink="false">https://caymezon.com/?p=20111</guid>

					<description><![CDATA[<p>目次 はじめになぜこのツールが必要なのか？Windowsの標準機能では実現困難このマクロで実現できること実装した機能主な機能出力例実務での活用例例1：プロジェクトのファイル構成をドキュメント化例2：共有フォルダの棚卸し例 [&#8230;]</p>
<p>The post <a href="https://caymezon.com/vscode-folder-list-macro/">VSCodeで「フォルダ一覧取得」を実現するTypeScriptマクロ【ファイル管理が10倍速くなる】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></description>
										<content:encoded><![CDATA[<div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-20" checked><label class="toc-title" for="toc-checkbox-20">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">はじめに</a></li><li><a href="#toc2" tabindex="0">なぜこのツールが必要なのか？</a><ol><li><a href="#toc3" tabindex="0">Windowsの標準機能では実現困難</a></li><li><a href="#toc4" tabindex="0">このマクロで実現できること</a></li></ol></li><li><a href="#toc5" tabindex="0">実装した機能</a><ol><li><a href="#toc6" tabindex="0">主な機能</a></li><li><a href="#toc7" tabindex="0">出力例</a></li></ol></li><li><a href="#toc8" tabindex="0">実務での活用例</a><ol><li><a href="#toc9" tabindex="0">例1：プロジェクトのファイル構成をドキュメント化</a></li><li><a href="#toc10" tabindex="0">例2：共有フォルダの棚卸し</a></li><li><a href="#toc11" tabindex="0">例3：納品物のファイルリスト作成</a></li><li><a href="#toc12" tabindex="0">例4：バックアップ前の記録</a></li><li><a href="#toc13" tabindex="0">例5：プロジェクトの進捗報告</a></li></ol></li><li><a href="#toc14" tabindex="0">TypeScriptコード解説</a><ol><li><a href="#toc15" tabindex="0">メイン処理（listFolderContents.ts）</a></li><li><a href="#toc16" tabindex="0">オプション選択ダイアログ</a></li><li><a href="#toc17" tabindex="0">警告ダイアログ（再帰検索時）</a></li><li><a href="#toc18" tabindex="0">プログレス表示とタイムアウト</a></li><li><a href="#toc19" tabindex="0">再帰的ファイル取得</a></li><li><a href="#toc20" tabindex="0">出力フォーマット生成</a></li></ol></li><li><a href="#toc21" tabindex="0">使い方</a><ol><li><a href="#toc22" tabindex="0">1. 拡張機能のインストール</a></li><li><a href="#toc23" tabindex="0">2. 基本的な使い方</a></li><li><a href="#toc24" tabindex="0">3. 実践例</a></li></ol></li><li><a href="#toc25" tabindex="0">package.jsonの設定</a></li><li><a href="#toc26" tabindex="0">メリット・デメリット</a><ol><li><a href="#toc27" tabindex="0">メリット</a></li><li><a href="#toc28" tabindex="0">デメリット</a></li></ol></li><li><a href="#toc29" tabindex="0">トラブルシューティング</a><ol><li><a href="#toc30" tabindex="0">Q: パスが見つからない</a></li><li><a href="#toc31" tabindex="0">Q: 処理が途中で止まる</a></li><li><a href="#toc32" tabindex="0">Q: ネットワークドライブが遅い</a></li><li><a href="#toc33" tabindex="0">Q: node_modulesが除外される</a></li><li><a href="#toc34" tabindex="0">Q: ファイルが保存できない</a></li></ol></li><li><a href="#toc35" tabindex="0">まとめ</a></li><li><a href="#toc36" tabindex="0">関連記事</a></li></ol>
    </div>
  </div>

<h2><span id="toc1">はじめに</span></h2>
<p>プロジェクト管理や作業記録で、こんな悩みありませんか？</p>
<pre><code class="language-plaintext">作業メモ.txt
---
■ タスク
プロジェクトフォルダのファイル構成をドキュメント化
→ C:\work\my-project のファイル一覧を取得したい

■ 課題
共有フォルダの棚卸し
→ \\server\share\old-projects のファイル数とサイズを確認したい</code></pre>
<p><strong>「フォルダ配下のファイル一覧が欲しい」</strong><br /><strong>「サイズや更新日時も記録したい」</strong><br /><strong>「再帰的に全サブフォルダも取得したい」</strong></p>
<p>Windowsのエクスプローラーでは、ファイル一覧をテキストでコピーできません。コマンドプロンプトで<code>dir</code>コマンド…も面倒。</p>
<p>今回、<strong>カーソル行のフォルダパスから一覧を取得し、別ファイルに出力する</strong>TypeScriptマクロを実装しました。</p>
<p>シンプル版と詳細版の2モードで、実務でのファイル管理が劇的に効率化します。</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで (Software Design plus)","b":"技術評論社","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/510GhCOD1FL._SL500_.jpg","\/41og2y1EEHL._SL500_.jpg","\/51XHb97PpFL._SL500_.jpg","\/51uDIY22bQL._SL500_.jpg","\/51PaoVK3MWL._SL500_.jpg","\/51eG7JBoavL._SL500_.jpg","\/51CDCo8FmJL._SL500_.jpg","\/41JLTXb+tsL._SL500_.jpg","\/51Hsv39e7IL._SL500_.jpg","\/41PTe+TqLEL._SL500_.jpg","\/51TUxdoXjrL._SL500_.jpg","\/51AkZEJWGhL._SL500_.jpg","\/51paP7D5R5L._SL500_.jpg","\/41lJtbpaQvL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4297127474","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4297127474","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%92%E7%9B%AE%E6%8C%87%E3%81%99%E4%BA%BA%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AETypeScript%E5%85%A5%E9%96%80%20%E5%AE%89%E5%85%A8%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E6%9B%B8%E3%81%8D%E6%96%B9%E3%81%8B%E3%82%89%E9%AB%98%E5%BA%A6%E3%81%AA%E5%9E%8B%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E3%81%BE%E3%81%A7%20(Software%20Design%20plus)","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"OaDLa","s":"s"});</script></p>
<div id="msmaflink-OaDLa">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc2">なぜこのツールが必要なのか？</span></h2>
<h3><span id="toc3">Windowsの標準機能では実現困難</span></h3>
<p><strong>エクスプローラーの限界：</strong></p>
<ul>
<li>ファイル一覧をテキストでコピーできない</li>
<li>ドラッグ＆ドロップは画像のみ</li>
<li>パスのリストは手動でコピペが必要</li>
</ul>
<p><strong>コマンドプロンプトの課題：</strong></p>
<pre><code class="language-cmd">dir /s /b C:\work\my-project &gt; list.txt</code></pre>
<ul>
<li>パス指定が面倒</li>
<li>オプションを毎回調べる必要</li>
<li>出力フォーマットの調整が困難</li>
</ul>
<p><strong>PowerShellでも：</strong></p>
<pre><code class="language-powershell">Get-ChildItem -Recurse | Out-File list.txt</code></pre>
<ul>
<li>コマンドが長い</li>
<li>カスタマイズが複雑</li>
<li>毎回コマンドを打つのが手間</li>
</ul>
<h3><span id="toc4">このマクロで実現できること</span></h3>
<table>
<thead>
<tr>
<th>項目</th>
<th>エクスプローラー</th>
<th>コマンドライン</th>
<th>このマクロ</th>
</tr>
</thead>
<tbody>
<tr>
<td>ファイル一覧</td>
<td>❌ コピー不可</td>
<td>⚠️ コマンド必要</td>
<td>✅ 1キー</td>
</tr>
<tr>
<td>サイズ・日時</td>
<td>❌ 手動</td>
<td>⚠️ フォーマット調整</td>
<td>✅ 自動</td>
</tr>
<tr>
<td>再帰検索</td>
<td>❌ 不可</td>
<td>✅ 可能</td>
<td>✅ モード選択</td>
</tr>
<tr>
<td>安全装置</td>
<td>-</td>
<td>❌ なし</td>
<td>✅ タイムアウト等</td>
</tr>
<tr>
<td>操作数</td>
<td>手動コピペ</td>
<td>コマンド入力</td>
<td>1キー操作</td>
</tr>
</tbody>
</table>
<h2><span id="toc5">実装した機能</span></h2>
<h3><span id="toc6">主な機能</span></h3>
<p><strong>ショートカット:</strong></p>
<ul>
<li><code>Ctrl+F11</code>: シンプル版（パスのみ）</li>
<li><code>Ctrl+Shift+F11</code>: 詳細版（サイズ・日時付き）</li>
</ul>
<p>✅ <strong>2つの出力モード</strong></p>
<ul>
<li>シンプル版：パスのみをリスト化</li>
<li>詳細版：ファイルサイズ＋更新日時付き</li>
</ul>
<p>✅ <strong>4つの取得モード</strong>（ダイアログで選択）</p>
<ol>
<li>直下のみ（フォルダ + ファイル）← 最も安全</li>
<li>直下のみ（ファイルのみ）</li>
<li>再帰的（フォルダ + ファイル）← 警告付き</li>
<li>再帰的（ファイルのみ）← 警告付き</li>
</ol>
<p>✅ <strong>充実の安全装置</strong></p>
<ul>
<li>再帰検索時の確認ダイアログ</li>
<li>ネットワークドライブ検出＆警告</li>
<li>タイムアウト：60秒</li>
<li>最大件数：50,000件（超過時は切り詰め）</li>
<li>プログレス表示＋キャンセル可能</li>
<li><code>node_modules</code>, <code>.git</code>, <code>dist</code>等を自動除外</li>
</ul>
<p>✅ <strong>柔軟なパス指定</strong></p>
<ul>
<li>ファイルパス → 親フォルダを対象</li>
<li>フォルダパス → そのフォルダを対象</li>
<li>絶対パス、相対パス、ネットワークパス対応</li>
</ul>
<h3><span id="toc7">出力例</span></h3>
<p><strong>シンプル版（Ctrl+F11）</strong></p>
<pre><code class="language-plaintext">============================================================
フォルダ一覧取得結果
============================================================
実行日時: 2024-02-08 15:30:45
対象フォルダ: C:\work\my-project
モード: 直下のみ（フォルダ + ファイル）
取得件数: 25 件
============================================================

C:\work\my-project\src
C:\work\my-project\test
C:\work\my-project\package.json
C:\work\my-project\README.md
C:\work\my-project\tsconfig.json
...</code></pre>
<p><strong>詳細版（Ctrl+Shift+F11）</strong></p>
<pre><code class="language-plaintext">============================================================
フォルダ一覧取得結果
============================================================
実行日時: 2024-02-08 15:30:45
対象フォルダ: C:\work\my-project
モード: 再帰的（ファイルのみ）
取得件数: 234 件
============================================================

[DIR ] C:\work\my-project\src
[FILE] C:\work\my-project\src\main.ts          (12.5 KB) 2024-02-01
[FILE] C:\work\my-project\src\util.ts          (8.2 KB)  2024-02-05
[DIR ] C:\work\my-project\test
[FILE] C:\work\my-project\test\test.ts         (4.1 KB)  2024-02-03
[FILE] C:\work\my-project\package.json         (1.2 KB)  2024-01-30
...</code></pre>
<h2><span id="toc8">実務での活用例</span></h2>
<h3><span id="toc9">例1：プロジェクトのファイル構成をドキュメント化</span></h3>
<p><strong>シーン：READMEにファイル構成を記載</strong></p>
<pre><code class="language-plaintext">README.md作成タスク
---
プロジェクト: C:\work\api-server</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>カーソルをパスの行に置く</li>
<li><code>Ctrl+F11</code> → 直下のみ（全て）</li>
<li>結果をREADMEにコピペ</li>
</ol>
<p><strong>成果：</strong></p>
<pre><code class="language-markdown">## ファイル構成
src/
  main.ts       - エントリーポイント
  routes/       - APIルート定義
  models/       - データモデル
test/           - テストコード
package.json    - 依存関係</code></pre>
<h3><span id="toc10">例2：共有フォルダの棚卸し</span></h3>
<p><strong>シーン：不要ファイルの洗い出し</strong></p>
<pre><code class="language-plaintext">棚卸しタスク
---
対象: \\server\share\old-projects</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li><code>Ctrl+Shift+F11</code> → 再帰的（ファイルのみ）</li>
<li>警告確認 → 続行</li>
<li>サイズと日時で古いファイルを特定</li>
</ol>
<p><strong>成果：</strong></p>
<pre><code class="language-plaintext">[FILE] \\server\share\old-projects\backup_2020.zip  (500 MB) 2020-01-15
[FILE] \\server\share\old-projects\temp.dat         (1.2 GB) 2019-08-22
→ 不要ファイルを削除して1.7GB削減</code></pre>
<h3><span id="toc11">例3：納品物のファイルリスト作成</span></h3>
<p><strong>シーン：納品前のファイルリスト作成</strong></p>
<pre><code class="language-plaintext">納品準備
---
成果物フォルダ: C:\delivery\client-system-v1.0</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li><code>Ctrl+F11</code> → 再帰的（全て）</li>
<li>ファイルリストを納品書に添付</li>
</ol>
<p><strong>成果：</strong></p>
<pre><code class="language-plaintext">【納品物一覧】
src/           - ソースコード（50ファイル）
docs/          - 設計書・マニュアル（12ファイル）
installer/     - インストーラー（3ファイル）
合計：65ファイル</code></pre>
<h3><span id="toc12">例4：バックアップ前の記録</span></h3>
<p><strong>シーン：バックアップ前のスナップショット</strong></p>
<pre><code class="language-plaintext">バックアップ計画
---
対象: C:\important-data</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li><code>Ctrl+Shift+F11</code> → 再帰的（詳細版）</li>
<li>ファイル一覧をバックアップと一緒に保存</li>
</ol>
<p><strong>成果：</strong></p>
<ul>
<li>バックアップ時のファイル構成を記録</li>
<li>復旧時に何があったか確認可能</li>
<li>サイズと日時で変更箇所を追跡</li>
</ul>
<h3><span id="toc13">例5：プロジェクトの進捗報告</span></h3>
<p><strong>シーン：週次報告でのファイル数増加報告</strong></p>
<pre><code class="language-plaintext">先週: 150ファイル
今週: 234ファイル
→ 84ファイル増加（機能追加により）</code></pre>
<p><strong>手順：</strong></p>
<ol>
<li>毎週同じフォルダで<code>Ctrl+F11</code>実行</li>
<li>ファイル数の推移を記録</li>
<li>報告書に添付</li>
</ol>
<h2><span id="toc14">TypeScriptコード解説</span></h2>
<h3><span id="toc15">メイン処理（listFolderContents.ts）</span></h3>
<pre><code class="language-typescript">import * as vscode from 'vscode';
import * as path from 'path';
import * as fs from 'fs';

/**
 * 出力モード
 */
enum OutputMode {
    Simple,   // シンプル（パスのみ）
    Detailed  // 詳細（サイズ・日時付き）
}

/**
 * 一覧取得オプション
 */
interface ListOptions {
    recursive: boolean;    // 再帰的に取得するか
    filesOnly: boolean;    // ファイルのみか
}

/**
 * フォルダ一覧取得（シンプル版）
 */
export async function listFolderContentsSimple() {
    await listFolderContents(OutputMode.Simple);
}

/**
 * フォルダ一覧取得（詳細版）
 */
export async function listFolderContentsDetailed() {
    await listFolderContents(OutputMode.Detailed);
}

/**
 * メイン処理
 */
async function listFolderContents(mode: OutputMode) {
    const editor = vscode.window.activeTextEditor;
    if (!editor) {
        vscode.window.showWarningMessage('アクティブなエディタがありません');
        return;
    }

    // カーソル行からパスを取得
    const line = editor.document.lineAt(editor.selection.active.line);
    let targetPath = line.text.trim();

    // パス前処理
    targetPath = preprocessPath(targetPath);
    targetPath = resolveAbsolutePath(targetPath, editor.document.uri.fsPath);

    // 存在チェック
    if (!fs.existsSync(targetPath)) {
        vscode.window.showErrorMessage(`パスが見つかりません: ${targetPath}`);
        return;
    }

    // フォルダパスに変換（ファイルの場合は親フォルダ）
    const folderPath = getFolderPath(targetPath);

    // オプション選択
    const options = await showOptionsDialog();
    if (!options) return;

    // 再帰的検索の場合は警告
    if (options.recursive) {
        const confirmed = await showWarningDialog(folderPath);
        if (!confirmed) return;
    }

    // 実行
    await executeWithProgress(folderPath, options, mode);
}</code></pre>
<h3><span id="toc16">オプション選択ダイアログ</span></h3>
<pre><code class="language-typescript">/**
 * オプション選択ダイアログ
 */
async function showOptionsDialog(): Promise&lt;ListOptions | null&gt; {
    const items = [
        {
            label: '$(file-directory) 直下のみ（フォルダ + ファイル）',
            description: '最も安全。1階層のみ取得',
            recursive: false,
            filesOnly: false
        },
        {
            label: '$(file) 直下のみ（ファイルのみ）',
            description: '最も安全。1階層のファイルのみ',
            recursive: false,
            filesOnly: true
        },
        {
            label: '$(repo) 再帰的（フォルダ + ファイル）',
            description: '⚠️ 時間がかかる可能性あり',
            recursive: true,
            filesOnly: false
        },
        {
            label: '$(files) 再帰的（ファイルのみ）',
            description: '⚠️ 時間がかかる可能性あり',
            recursive: true,
            filesOnly: true
        }
    ];

    const selected = await vscode.window.showQuickPick(items, {
        placeHolder: '一覧取得のモードを選択してください',
        ignoreFocusOut: true
    });

    if (!selected) return null;

    return {
        recursive: selected.recursive,
        filesOnly: selected.filesOnly
    };
}</code></pre>
<h3><span id="toc17">警告ダイアログ（再帰検索時）</span></h3>
<pre><code class="language-typescript">/**
 * 警告ダイアログ
 */
async function showWarningDialog(folderPath: string): Promise&lt;boolean&gt; {
    let warningMessage = '⚠️ 再帰的検索を実行します。\n';

    // ネットワークドライブ警告
    if (isNetworkPath(folderPath)) {
        warningMessage += '\n⚠️ ネットワークドライブが検出されました。\n' +
                         '処理に非常に時間がかかる可能性があります。\n';
    }

    warningMessage += '\n続行しますか？';

    const answer = await vscode.window.showWarningMessage(
        warningMessage,
        { modal: true },
        '続行', 'キャンセル'
    );

    return answer === '続行';
}

/**
 * ネットワークパスかどうか判定
 */
function isNetworkPath(p: string): boolean {
    return p.startsWith('\\\\') || p.startsWith('//');
}</code></pre>
<h3><span id="toc18">プログレス表示とタイムアウト</span></h3>
<pre><code class="language-typescript">/**
 * プログレス表示付きで実行
 */
async function executeWithProgress(
    folderPath: string,
    options: ListOptions,
    mode: OutputMode
) {
    await vscode.window.withProgress({
        location: vscode.ProgressLocation.Notification,
        title: "フォルダ一覧を取得中...",
        cancellable: true
    }, async (progress, token) => {
        try {
            let isCancelled = false;

            // キャンセルトークン
            token.onCancellationRequested(() => {
                isCancelled = true;
            });

            // タイムアウトPromise（60秒）
            const timeoutPromise = new Promise&lt;never&gt;((_, reject) =&gt; {
                setTimeout(() =&gt; reject(new Error('タイムアウト（60秒）')), 60000);
            });

            // ファイル一覧取得Promise
            const listPromise = listFiles(folderPath, options, mode, (count) =&gt; {
                progress.report({
                    message: `${count}件取得済み...`,
                    increment: 1
                });
                return isCancelled;
            });

            // タイムアウトとレース
            const result = await Promise.race([listPromise, timeoutPromise]);

            if (isCancelled) {
                vscode.window.showInformationMessage('処理をキャンセルしました');
                return;
            }

            // 結果を出力
            await createResultFile(folderPath, options, result.files, result.truncated, mode);

            let message = `取得完了: ${result.files.length}件`;
            if (result.truncated) {
                message += '（上限50,000件に達したため切り詰め）';
            }
            vscode.window.showInformationMessage(message);

        } catch (error: any) {
            if (error.message.includes('タイムアウト')) {
                vscode.window.showErrorMessage('処理がタイムアウトしました（60秒）');
            } else {
                vscode.window.showErrorMessage(`エラー: ${error.message}`);
            }
        }
    });
}</code></pre>
<h3><span id="toc19">再帰的ファイル取得</span></h3>
<pre><code class="language-typescript">/**
 * 除外するフォルダ名
 */
const EXCLUDE_PATTERNS = [
    'node_modules',
    '.git',
    '.vscode',
    'target',
    'dist',
    'build',
    'out',
    'bin',
    '.idea'
];

/**
 * 最大件数
 */
const MAX_FILES = 50000;

/**
 * 再帰的にファイル一覧を取得
 */
async function listFilesRecursive(
    folderPath: string,
    files: FileInfo[],
    options: ListOptions,
    mode: OutputMode,
    onProgress: (count: number) =&gt; boolean
) {
    // キャンセルチェック
    if (onProgress(files.length)) return;

    // 最大件数チェック
    if (files.length &gt;= MAX_FILES) return;

    try {
        const entries = fs.readdirSync(folderPath, { withFileTypes: true });

        for (const entry of entries) {
            const fullPath = path.join(folderPath, entry.name);

            if (entry.isDirectory()) {
                // 除外パターンチェック
                if (EXCLUDE_PATTERNS.includes(entry.name)) {
                    continue;
                }

                if (!options.filesOnly) {
                    files.push(createFileInfo(fullPath, true, mode));
                }

                // 再帰
                await listFilesRecursive(fullPath, files, options, mode, onProgress);
            } else {
                files.push(createFileInfo(fullPath, false, mode));
            }

            // 最大件数チェック
            if (files.length &gt;= MAX_FILES) return;
        }
    } catch (error: any) {
        // アクセス権限エラーなどは無視
        console.error(`Error accessing ${folderPath}:`, error.message);
    }
}</code></pre>
<h3><span id="toc20">出力フォーマット生成</span></h3>
<pre><code class="language-typescript">/**
 * 出力内容を生成
 */
function generateOutput(
    folderPath: string,
    options: ListOptions,
    files: FileInfo[],
    truncated: boolean,
    mode: OutputMode
): string {
    const lines: string[] = [];

    // ヘッダー
    lines.push('='.repeat(60));
    lines.push('フォルダ一覧取得結果');
    lines.push('='.repeat(60));
    lines.push(`実行日時: ${formatDateTime(new Date())}`);
    lines.push(`対象フォルダ: ${folderPath}`);
    lines.push(`モード: ${getModeText(options)}`);
    lines.push(`取得件数: ${files.length.toLocaleString()} 件`);

    if (truncated) {
        lines.push('⚠️ 上限50,000件に達したため切り詰めました');
    }

    lines.push('='.repeat(60));
    lines.push('');

    // ファイル一覧
    if (mode === OutputMode.Simple) {
        // シンプル版：パスのみ
        files.forEach(file =&gt; {
            lines.push(file.path);
        });
    } else {
        // 詳細版：サイズ・日時付き
        files.forEach(file =&gt; {
            const type = file.isDirectory ? '[DIR ]' : '[FILE]';
            const sizeStr = file.size !== undefined ? formatSize(file.size) : '';
            const dateStr = file.modifiedDate ? formatDate(file.modifiedDate) : '';

            let line = `${type} ${file.path}`;
            if (sizeStr) line += `  (${sizeStr})`;
            if (dateStr) line += ` ${dateStr}`;

            lines.push(line);
        });
    }

    return lines.join('\n');
}

/**
 * ファイルサイズをフォーマット
 */
function formatSize(bytes: number): string {
    if (bytes &lt; 1024) return `${bytes} B`;
    if (bytes &lt; 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;
    if (bytes &lt; 1024 * 1024 * 1024) return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
    return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)} GB`;
}</code></pre>
<h2><span id="toc21">使い方</span></h2>
<h3><span id="toc22">1. 拡張機能のインストール</span></h3>
<pre><code class="language-bash"># GitHubからクローン
git clone https://github.com/xxxxx-sys/my-macros.git
cd my-macros

# 依存関係インストール
npm install --legacy-peer-deps

# パッケージ化
npm run compile
npx vsce package

# インストール
code --install-extension my-macros-0.0.6.vsix</code></pre>
<h3><span id="toc23">2. 基本的な使い方</span></h3>
<pre><code class="language-plaintext">作業メモ.txt
---
プロジェクト: C:\work\my-project
共有フォルダ: \\server\share\documents</code></pre>
<p><strong>シンプル版（パスのみ）：</strong></p>
<ol>
<li>パスの行にカーソルを置く</li>
<li><code>Ctrl+F11</code></li>
<li>モード選択（直下のみ or 再帰的）</li>
<li>結果が右側に表示</li>
<li>保存ダイアログで保存</li>
</ol>
<p><strong>詳細版（サイズ・日時付き）：</strong></p>
<ol>
<li>パスの行にカーソルを置く</li>
<li><code>Ctrl+Shift+F11</code></li>
<li>モード選択（直下のみ or 再帰的）</li>
<li>再帰の場合は警告確認</li>
<li>結果が右側に表示</li>
<li>保存ダイアログで保存</li>
</ol>
<h3><span id="toc24">3. 実践例</span></h3>
<p><strong>シーン1: プロジェクトの構成確認</strong></p>
<pre><code class="language-plaintext">メモ.txt
---
C:\work\api-server</code></pre>
<p>手順：</p>
<ol>
<li>カーソルをパスに置く</li>
<li><code>Ctrl+F11</code> → 直下のみ（全て）</li>
<li>フォルダ構成を確認</li>
</ol>
<p><strong>シーン2: 大量ファイルの棚卸し</strong></p>
<pre><code class="language-plaintext">棚卸し.txt
---
\\server\share\old-projects</code></pre>
<p>手順：</p>
<ol>
<li><code>Ctrl+Shift+F11</code> → 再帰的（ファイルのみ）</li>
<li>警告確認 → 続行</li>
<li>サイズと日時で古いファイルを特定</li>
</ol>
<p><strong>シーン3: 納品物リスト作成</strong></p>
<pre><code class="language-plaintext">納品準備.txt
---
C:\delivery\system-v1.0</code></pre>
<p>手順：</p>
<ol>
<li><code>Ctrl+F11</code> → 再帰的（全て）</li>
<li>ファイルリストを納品書に添付</li>
</ol>
<h2><span id="toc25">package.jsonの設定</span></h2>
<pre><code class="language-json">{
  "contributes": {
    "commands": [
      {
        "command": "myMacros.listFolderContentsSimple",
        "title": "List Folder Contents (Simple)",
        "category": "My Macros"
      },
      {
        "command": "myMacros.listFolderContentsDetailed",
        "title": "List Folder Contents (Detailed)",
        "category": "My Macros"
      }
    ],
    "keybindings": [
      {
        "command": "myMacros.listFolderContentsSimple",
        "key": "ctrl+f11",
        "when": "editorTextFocus"
      },
      {
        "command": "myMacros.listFolderContentsDetailed",
        "key": "ctrl+shift+f11",
        "when": "editorTextFocus"
      }
    ]
  }
}</code></pre>
<h2><span id="toc26">メリット・デメリット</span></h2>
<h3><span id="toc27">メリット</span></h3>
<p><strong>✅ 圧倒的な効率化</strong></p>
<ul>
<li>1キー操作でファイル一覧取得</li>
<li>エクスプローラーでの手作業が不要</li>
<li>コマンドを覚える必要なし</li>
</ul>
<p><strong>✅ 充実の安全装置</strong></p>
<ul>
<li>タイムアウト（60秒）で暴走防止</li>
<li>最大50,000件で自動停止</li>
<li>ネットワークドライブ警告</li>
<li>キャンセル可能なプログレス表示</li>
</ul>
<p><strong>✅ 柔軟な出力モード</strong></p>
<ul>
<li>シンプル版：パスのみ</li>
<li>詳細版：サイズ・日時付き</li>
<li>用途に応じて使い分け</li>
</ul>
<p><strong>✅ 自動除外機能</strong></p>
<ul>
<li><code>node_modules</code>, <code>.git</code>等を自動スキップ</li>
<li>不要なフォルダを除外して高速化</li>
</ul>
<p><strong>✅ 実行履歴の保存</strong></p>
<ul>
<li>実行日時を記録</li>
<li>ファイル名に日時を自動付与</li>
<li>定期的な記録に最適</li>
</ul>
<h3><span id="toc28">デメリット</span></h3>
<p><strong>❌ 巨大フォルダは時間がかかる</strong></p>
<ul>
<li>数万ファイルは数十秒待つ</li>
<li>ネットワークドライブは特に遅い</li>
<li>タイムアウト（60秒）で自動停止</li>
</ul>
<p><strong>❌ リアルタイム監視は非対応</strong></p>
<ul>
<li>スナップショット取得のみ</li>
<li>ファイル変更の自動検知なし</li>
</ul>
<p><strong>❌ アクセス権限エラー</strong></p>
<ul>
<li>権限のないフォルダはスキップ</li>
<li>エラーは通知されない</li>
</ul>
<h2><span id="toc29">トラブルシューティング</span></h2>
<h3><span id="toc30">Q: パスが見つからない</span></h3>
<p><strong>A: パスの記述を確認</strong></p>
<pre><code class="language-plaintext">NG: プロジェクト: C:\work\project（余計な文字）
OK: C:\work\project

NG: "C:\work\project"（引用符付き）→ 自動除去されるが、余計な文字があると失敗

解決策: パスのみの行にする</code></pre>
<h3><span id="toc31">Q: 処理が途中で止まる</span></h3>
<p><strong>A: タイムアウトまたは最大件数に達した</strong></p>
<pre><code class="language-plaintext">タイムアウト: 60秒経過で自動停止
最大件数: 50,000件で自動切り詰め

解決策:
- 直下のみで試す
- 対象フォルダを絞る
- 除外パターンを活用</code></pre>
<h3><span id="toc32">Q: ネットワークドライブが遅い</span></h3>
<p><strong>A: 再帰検索を避ける</strong></p>
<pre><code class="language-plaintext">推奨: 直下のみで取得
非推奨: 再帰的（数分かかる可能性）

解決策:
- まず直下のみで確認
- サブフォルダを個別に処理</code></pre>
<h3><span id="toc33">Q: node_modulesが除外される</span></h3>
<p><strong>A: 除外パターンを変更</strong></p>
<pre><code class="language-typescript">// 除外したくない場合はコードを修正
const EXCLUDE_PATTERNS = [
    // 'node_modules', ← コメントアウト
    '.git',
    '.vscode'
];</code></pre>
<h3><span id="toc34">Q: ファイルが保存できない</span></h3>
<p><strong>A: パスに書き込み権限があるか確認</strong></p>
<pre><code class="language-plaintext">NG: C:\Program Files\...（権限不足）
OK: C:\Users\[ユーザー名]\Documents\...

解決策: 書き込み可能なフォルダに保存</code></pre>
<h2><span id="toc35">まとめ</span></h2>
<p>VSCodeで<strong>カーソル行のフォルダパスから一覧を取得し、別ファイルに出力する</strong>機能を実装しました。</p>
<p><strong>この機能が役立つ人：</strong></p>
<ul>
<li>プロジェクトのファイル構成をドキュメント化したい</li>
<li>共有フォルダの棚卸しをしたい</li>
<li>納品物のファイルリストを作成したい</li>
<li>バックアップ前の記録を残したい</li>
<li>ファイル管理の効率を上げたい</li>
</ul>
<p><strong>特にエクスプローラーでは不可能なファイル一覧のテキスト化を1キーで実現</strong>できるため、実務での生産性向上に大きく貢献します。</p>
<p>プロジェクト管理、作業記録、納品準備、棚卸しなど、様々なシーンで活用できる実用的なツールです。</p>
<p>ぜひ試してみてください！</p>
<p><!-- START MoshimoAffiliateEasyLink --><script type="text/javascript">(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;b[a]=b[a]||function(){arguments.currentScript=c.currentScript||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};c.getElementById(a)||(d=c.createElement(f),d.src=g,d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");msmaflink({"n":"プログラミングTypeScript ―スケールするJavaScriptアプリケーション開発","b":"オライリージャパン","t":"","d":"https:\/\/m.media-amazon.com","c_p":"","p":["\/images\/I\/51vjj+osAgL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/4873119049","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/4873119049","a_id":1384942,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA\/","a_id":1384917,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2},{"id":3,"u_tx":"Yahoo!ショッピングで見る","u_bc":"#66a7ff","u_url":"https:\/\/shopping.yahoo.co.jp\/search?first=1\u0026p=%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0TypeScript%20%E2%80%95%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8BJavaScript%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E9%96%8B%E7%99%BA","a_id":1466950,"p_id":1225,"pl_id":27061,"pc_id":1925,"s_n":"yahoo","u_so":3}],"eid":"vFiVC","s":"s"});</script></p>
<div id="msmaflink-vFiVC">リンク</div>
<p><!-- MoshimoAffiliateEasyLink END --></p>
<h2><span id="toc36">関連記事</span></h2>
<p>サクラエディタからの移行経緯</p>

<a rel="noopener" href="https://caymezon.com/sakura-to-vscode-macro-migration/" title="サクラエディタからVSCodeへマクロ移行！快適開発環境の構築記録" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/01/sakura-to-vscode-macro-migration-featured-404add-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/01/sakura-to-vscode-macro-migration-featured-404add-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/01/sakura-to-vscode-macro-migration-featured-404add-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/01/sakura-to-vscode-macro-migration-featured-404add-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/01/sakura-to-vscode-macro-migration-featured-404add-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">サクラエディタからVSCodeへマクロ移行！快適開発環境の構築記録</div><div class="blogcard-snippet internal-blogcard-snippet">はじめに長年愛用してきたサクラエディタのマクロ機能。便利なJavaScript/VBSマクロを多数作成して日常業務で活用してきましたが、最近のAWS開発やブログ執筆でVSCodeを使う機会が増えてきました。「VSCodeでもサクラエディタの...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.01.25</div></div></div></div></a>
<p>TypeScriptマクロ開発環境の構築方法</p>

<a rel="noopener" href="https://caymezon.com/vscode-typescript-macro-development-guide/" title="VSCode TypeScriptマクロ開発環境の完全ガイド【セットアップから運用まで】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/01/vscode-typescript-macro-development-guide-featured-418842-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCode TypeScriptマクロ開発環境の完全ガイド【セットアップから運用まで】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにVSCodeでカスタムマクロを作成したいけど、どうやって開発環境を構築すればいいか分からない。そんな悩みを持つ方に向けて、TypeScriptでVSCode拡張機能を開発する環境の構築から、実際にマクロを作成して使えるようにするまで...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.01.25</div></div></div></div></a>
<p>正規表現マッチ抽出ツール</p>

<a rel="noopener" href="https://caymezon.com/vscode-regex-extract-macro/" title="VSCodeで「正規表現マッチ抽出」を実現するTypeScriptマクロ【ログ解析が10倍速くなる】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img decoding="async" width="160" height="90" src="https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-160x90.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-160x90.jpg 160w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-120x68.jpg 120w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-320x180.jpg 320w, https://caymezon.com/wp-content/uploads/2026/02/vscode-regex-extract-macro-featured-0ffd8c-376x212.jpg 376w" sizes="(max-width: 160px) 100vw, 160px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">VSCodeで「正規表現マッチ抽出」を実現するTypeScriptマクロ【ログ解析が10倍速くなる】</div><div class="blogcard-snippet internal-blogcard-snippet">はじめにサーバーログやアプリケーションログを解析する時、こんな悩みありませんか？2024-02-08 10:00:00 INFO: Server started2024-02-08 10:01:00 ERROR: Connection fa...</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img decoding="async" src="https://www.google.com/s2/favicons?domain=https://caymezon.com" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">caymezon.com</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.02.08</div></div></div></div></a>
<hr>
<p><strong>タグ:</strong> #VSCode #TypeScript #マクロ #ファイル管理 #生産性向上 #フォルダ一覧</p><p>The post <a href="https://caymezon.com/vscode-folder-list-macro/">VSCodeで「フォルダ一覧取得」を実現するTypeScriptマクロ【ファイル管理が10倍速くなる】</a> first appeared on <a href="https://caymezon.com">CayTech Lab</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://caymezon.com/vscode-folder-list-macro/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
