【2026年10月20日時点の情報です】
2026年10月に、このブログの前に書いた技術記事を1本ずつ書き直していました。そのとき、コマンドのオプションの --test が、公開したページでは –test になっている記事を見つけました。
先頭のハイフン2つが、長いダッシュ1つに変わっていたのです。このままコピーして打つと、コマンドは思ったとおりに動きません。この記事では、なぜ変わるのかと、変わらないようにする書き方をまとめます。
場面1:オプションのハイフン2つが、ダッシュ1つになっていた
見つけたのは、Laravelというフレームワークのコマンド(php artisan make:)の使い方を書いた記事です。オプションを説明する文の中で、--test と書いたつもりのところが、次のように変わっていました。
| No. | 書いたつもりのもの | 公開したページでの見え方 |
|---|---|---|
| 1 | --test(ハイフン2つ) | –test(ダッシュ1つ) |
ハイフン(-)とダッシュ(–)は、見た目はよく似ていますが、別の文字です。コマンドのオプションは、ハイフンで始まっていることで「これはオプション」と読まれます。ダッシュに変わったものをコピーして打つと、オプションとして読まれません。
読む人は、記事のコマンドをそのままコピーして使うことが多いので、動かない理由が分からずに困ってしまいます。
場面2:WordPressが、ハイフン2つをダッシュに変える
WordPressには、本文の文字を読みやすい記号に自動で変える仕組みがあります。そのひとつが、ハイフン2つをダッシュに変えることです。ふつうの文章では便利ですが、コマンドを書いた技術記事では、これが逆にはたらきます。
この変換は、ふつうの文として書いた部分で起きます。インラインコードやコードブロックの中の文字は、変わりません。
| No. | 書いた場所 | ハイフン2つ |
|---|---|---|
| 1 | ふつうの文(段落・箇条書き・表のセル) | ダッシュに変わる |
| 2 | インラインコード | そのまま |
| 3 | コードブロック | そのまま |
場面3:オプションを、インラインコードかコードブロックに入れる
書き直しでは、記事の中のオプションを、次のどちらかに入れました。
- 文の中のオプションは、インラインコードにする:
--testや--all、--helpのように、文の中でオプションの名前だけを書くときは、WordPressの書式のツールバーの「インラインコード」にしました - コマンドは、コードブロックに書く:
オプションを付けたコマンドは、全体をコードブロックに入れました
このブログでは、ほかの記事でも、ハイフン2つのオプションを付けたコマンドはコードブロックに書いています。例えば、記事の控えを取るコマンドは、次のように書いています。
sudo mysqldump wordpress wp_posts --where="ID IN (1235,1239,1259)" > ~/work/wp_posts-backup-20261016-laravel.sqlコードブロックの中なので、--where はハイフン2つのまま表示されます。
場面4:公開する前に、プレビューで確かめる
ハイフンとダッシュは、ぱっと見では見分けにくいです。オプションを書いた記事は、公開する前にプレビューを開いて、オプションの先頭が長いダッシュに変わっていないかを確かめると安心です。
| No. | 確かめるところ | 見るポイント |
|---|---|---|
| 1 | 文の中のオプション | インラインコードの見た目になっていて、ハイフン2つのままか |
| 2 | 表の中のオプション | セルの中もインラインコードになっているか |
| 3 | コードブロックの中のコマンド | ハイフン2つのままか |
まとめ
WordPressは、ふつうの文として書いたハイフン2つを、長いダッシュ1つに変えます。コマンドのオプションがダッシュに変わると、コピーしても動きません。
オプションは、文の中ならインラインコード、コマンドならコードブロックに入れる。そして、公開する前にプレビューで確かめる。この2つで防げます。
同じように、WordPressやテーマが自動で文字を変えて困ったことは、例のURLが勝手にブログカードになった記事にもまとめています。ハイフン2つのオプションを使ったコマンドの例は、bash のコマンドの記事やデータベースのコマンドの記事で見られます。



コメント