質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
font

近年は、コンピュータ上、紙面上で利用できる書体データのことをfontといいます。数える時の単位は「書体」で、データとしてのフォントは、デジタルフォントと呼ばれる場合があります。 HTML/CSSでは要素を指定し、フォント情報を調整することができます。

Q&A

解決済

3回答

6701閲覧

プロポーショナルフォントでプログラミングすることのメリット

argius

総合スコア9388

font

近年は、コンピュータ上、紙面上で利用できる書体データのことをfontといいます。数える時の単位は「書体」で、データとしてのフォントは、デジタルフォントと呼ばれる場合があります。 HTML/CSSでは要素を指定し、フォント情報を調整することができます。

0グッド

1クリップ

投稿2015/08/06 08:05

編集2015/08/08 12:37

私はフォントが選べないCUIしか無かった環境でプログラミングを学び始めたので、等幅フォント(monospaced font)でコードを書くのが当たり前と思っています。現在の自由にフォントを設定できる環境でも、等幅フォントを設定します。もし使おうとしているエディターのデフォルトフォントがプロポーショナルに設定されていたら当然、等幅フォントを設定します。
コンソールも同様です。

ところが、世の中には等幅フォント以外、プロポーショナルフォントでコーディングすることに抵抗が無い人が少なからずいるようです。
プロポーショナルフォントでプログラミングすることに何かメリットがあるのでしょうか。

また、等幅フォントのデメリットもあればお教えください。

よろしくお願いします。


(追記)

あらためて自分で試してみたのですが、プロポーショナルフォントはフォントによっては記号の視認性が良くないように思いました。これも慣れの問題なのかも知れませんけれど。

  • 空の丸カッコと角カッコはフォントによっては1文字に見える
  • 半角スペースが連続している場合に、いくつ連続しているのか分かりにくい

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ShintaroIshida

2015/08/06 08:32

異論や反論があるわけではないのですが、等幅フォントを使うメリットを逆に知りたいです。
argius

2015/08/06 08:43

等幅フォントのメリットについては私も完全に把握できていません。 実際にプロポーショナルフォントを使ってみた経験では、桁をそろえることができない、見分けにくい文字(1とlなど)があるとかでしょうか。これの反対が等幅フォントのメリットかと。 それにこれがプロポーショナルフォントの絶対的なデメリットかどうかは分かりません。
guest

回答3

0

ベストアンサー

ところが、世の中には等幅フォント以外、プロポーショナルフォントでコーディングすることに抵抗が無い人が少なからずいるようです。
プロポーショナルフォントでプログラミングすることに何かメリットがあるのでしょうか。

単純に慣れではないでしょうか。

環境は忘れましたが、私があるエディタを使っていた時に public などの予約後を「太字」で装飾してくれました。
しかしその残念なエディタは太字にしたせいで横幅が広がり、折角の等幅フォントが等幅に表示されませんでした。

またあるエディタは「コメントはプロポーショナルフォントで表示する」のが初期設定で、ドキュメントコメント中のソースコードですらそう表示されてしまいました。(これはたぶん Notepad++)

そういう環境に「仕方ないね」と我慢するとそのうち「プロポーショナルが好きなわけじゃないけど、初期設定だからまあいいか」となるのではないでしょうか


あるHaskellの本ではコードにプロポーショナルフォントが使われています。

どんな感じかは、このStackoverflowの記事の途中にある画像を参照してください
http://stackoverflow.com/questions/6172004/writing-foldl-using-foldr
この数式っぽい部分は普通にHaskellのコードです

投稿2015/08/10 02:58

編集2015/08/10 12:12
hello-world

総合スコア1342

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

argius

2015/08/10 12:04

回答ありがとうございます! > その残念なエディタは太字にしたせいで横幅が広がり、折角の等幅フォントが等幅に表示されませんでした。 昔のEclipseがまさにそれでした。 なので太字を解除して使っていました。 今はちゃんと太字でも桁がそろっているということは、幅をそろえることに一定の需要があるからなんじゃないかと思うんですよね。 デフォルトでコメントはプロポーショナルフォントにするエディターがあるというのは、少なくともコメントはプロポーショナルフォントにする需要があるということなのかも知れませんね。 でも、やはりというか、多くの場合は消極的な理由になってしまうんでしょうか。
hello-world

2015/08/10 12:13

プロポーショナルフォントが使われている例を追記しました
argius

2015/08/10 12:30

論文ではこういうのはあるみたいですね。 これはどちらかというと、数式という色合いが濃いように思います。 でも、こういうのをサポートしてくれるエディターがあれば、積極的にプロポーショナルフォントを使いたくなるかも知れませんね。Haskellくらいしか需要がないかもしれませんが。
guest

0

私は等幅フォントで行うので想像ですが、プロポーショナルフォントの利点は次のようなものだと思います。

  • 1行辺りの文字数が多くなり、改行無しで書けるコードが増える
  • 同じような行が続く場合、タイプミスがあるとずれるので発見しやすい(0とo,Oでも文字幅が異なる為)
  • 英語に頻繁に触れる人にとっては可読性が増す(通常の文章はプロポーショナルフォントで見るため)

等幅フォントのメリットは次のようなもの?

  • 一部エディタのサポートがあると、デバッグ時にxx文字目というのを把握し易い。
  • 誰が見ても同じように見えていることを期待できる
  • 記号で囲んだり装飾したベーシック時代のようなコメントが崩れない
  • 同文字数変数の左辺が揃って気持ちが良い

プロポーショナルフォントのデメリット(?)(イメージだけの誤解かも知れません)は、他人が同じフォントを使っている可能性が低くなること?
等幅フォントだと(多分)OS毎に1,2種類しかメジャーなものがありませんし、フォントが変わっても1文字のサイズは大体同じです。しかしプロポーショナルフォントは、Windowsなら誰しもメイリオを使うのでしょうか?
もし人によってばらばらだと、小さく詰めて表示するフォントで作成したコードは、メイリオで改行だらけになるかも知れません。

等幅フォントのデメリット(?)は、綺麗に揃うが故に行の途中や後半部分まで(スペースやtabを使って無理に)揃えようとする人が後を立たないことでは無いでしょうか?これの弊害はよく話題に上っている気がします。

投稿2015/08/06 19:59

hirohiro

総合スコア2068

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

argius

2015/08/08 12:42

遅くなりました、回答ありがとうございます! また、双方のメリデメも書いていただき、重ねてありがとうございます。 > 同じような行が続く場合、タイプミスがあるとずれるので発見しやすい(0とo,Oでも文字幅が異なる為) なるほど。幅の違いで違和感を覚えるので気づくのはありますね。 私は少し勘違いしていましたが、プロポーショナルフォントの方が似たような文字が見分けやすいみたいです。 > 英語に頻繁に触れる人にとっては可読性が増す これはありますね。特に英語で書かれたコメントは読みやすくなると思いました。 コード部分も、英語に慣れている人にとっては読みやすいのかも知れません。 等幅フォントは揃えようとしすぎてしまうのはありますね。 私はフォーマッターにまかせているので必要以上に揃えることはしませんが。
guest

0

皆様の深い考察、大変興味深いですね。
メリット・デメリットについてはもはや付け加える余地が無いので、ご質問の主旨からは外れますが・・・

全ての人がメリット故に意図的に選択している訳でもないように思います。

フォントの選択は好みに因るところが大きいと思いますが、少なくとも自分の周りには、無頓着な人、面倒臭がり屋さん、フォントの変更について考えもしない人も結構いらっしゃいます。

それで、プロポーショナルフォントの利用者数とその『メリット』は必ずしも強い相関が有るわけではないのではないかと推察致します。

投稿2015/08/11 11:16

pi-chan

総合スコア5936

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

argius

2015/08/11 12:22

回答ありがとうございます! やはりというか、なんというか、無関心・無頓着な人が多いということなんでしょうね。 あえて等幅フォントを使わずにいるツワモノの回答を期待したんですけど、残念です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問