インデントはタブかホワイトスペースか?
■ このスレッドは過去ログ倉庫に格納されています
2008/10/10(金) 21:13:57
どっちがいいの?
229デフォルトの名無しさん
2017/06/19(月) 21:51:24.30ID:NPLs9gl6 タブ派だったけどhaskellがタブを受け付けなくて愕然とした
世の中そういうもんかとスペース派になった
世の中そういうもんかとスペース派になった
230デフォルトの名無しさん
2017/06/20(火) 01:38:18.60ID:oes7eN32 >>272
Pythonみたいな言語はちょっと特殊だけど、
普通の言語はエディタの機能で文法的に正しいインデントの位置まで一発で移動できるだろ?
BS打ってインデント下げるとかメモ帳でも使ってるのか?
PythonもEmacsならTabキー押すと文法的に適切なインデント位置候補を循環的に移動してくれるのな
Pythonみたいな言語はちょっと特殊だけど、
普通の言語はエディタの機能で文法的に正しいインデントの位置まで一発で移動できるだろ?
BS打ってインデント下げるとかメモ帳でも使ってるのか?
PythonもEmacsならTabキー押すと文法的に適切なインデント位置候補を循環的に移動してくれるのな
231デフォルトの名無しさん
2017/06/21(水) 01:41:02.09ID:jyeYXdNW https://www.emacswiki.org/pics/static/SmartTabsScreenshot.png
とか >>197 の
https://blog.codinghorror.com/content/images/uploads/2009/04/6a0120a85dcdae970b012877709a74970c-pi.png
のように、構造はタブ文字でインデントして、
見た目の位置揃えはスペース文字で揃えるようにするのが理に適ってると思う
でも IDE で書くのならインデントについては
色を付けたり縦の線を引いたりしてネストの深さを分かりやすいようにしたりするけど
https://camo.githubusercontent.com/646b1ee420877d59b9f44fa46bb52c351b35db47/687474703a2f2f692e696d6775722e636f6d2f68487170322e706e67
http://loumo.jp/img/2016/11/atom-indent-guide-improved.jpg
インデントに使う文字はタブ文字だろうとスペース文字だろうと大差ないよね
とか >>197 の
https://blog.codinghorror.com/content/images/uploads/2009/04/6a0120a85dcdae970b012877709a74970c-pi.png
のように、構造はタブ文字でインデントして、
見た目の位置揃えはスペース文字で揃えるようにするのが理に適ってると思う
でも IDE で書くのならインデントについては
色を付けたり縦の線を引いたりしてネストの深さを分かりやすいようにしたりするけど
https://camo.githubusercontent.com/646b1ee420877d59b9f44fa46bb52c351b35db47/687474703a2f2f692e696d6775722e636f6d2f68487170322e706e67
http://loumo.jp/img/2016/11/atom-indent-guide-improved.jpg
インデントに使う文字はタブ文字だろうとスペース文字だろうと大差ないよね
232デフォルトの名無しさん
2017/06/21(水) 09:38:00.43ID:VAIiJv1j タブは人によって設定がまちまちなのが面倒でね。
233デフォルトの名無しさん
2017/06/21(水) 20:05:02.93ID:CSXEJ9e6 ?
個人個人でTABの表示幅が変わっても問題なかろう?
個人個人でTABの表示幅が変わっても問題なかろう?
234デフォルトの名無しさん
2017/06/21(水) 22:48:07.31ID:QmU4e+sR >>233
あんたバカ?
あんたバカ?
235デフォルトの名無しさん
2017/06/21(水) 23:41:39.11ID:gaF+3k9+ EditorConfigってどーなん?
なんかデメリットある?
なんかデメリットある?
236デフォルトの名無しさん
2017/06/22(木) 23:28:13.18ID:rywQppfm >>232 何が面倒なの?
237デフォルトの名無しさん
2017/06/23(金) 08:00:11.57ID:Zr/EANmn インデントの論理的な表現であるタブと物理的なスペース、意識の高い方々は
前者を好みそうなもんだが実際は逆の雰囲気なんだよな。
前者を好みそうなもんだが実際は逆の雰囲気なんだよな。
238デフォルトの名無しさん
2017/06/24(土) 16:48:04.44ID:+EJLhPmM239デフォルトの名無しさん
2017/06/24(土) 17:10:34.44ID:5HRkzvGx 小指が強くないと意識高くなれないよ。
240デフォルトの名無しさん
2017/06/24(土) 17:19:47.30ID:TM1thEne 最近はMacBookProでVimだから小指はそんなに強くないんじゃない?
おれも最近ちょっと仕事でMacBookProを使ってるんだが確かにこれでEmacsはちょっと厳しい
C-F押して右に何文字か移動しようとするとFFFFとか入力しちゃってつらい
小指でリンゴに穴を穿てる俺でこれだぜ?
若者がVimに移行するのもわかる
おれも最近ちょっと仕事でMacBookProを使ってるんだが確かにこれでEmacsはちょっと厳しい
C-F押して右に何文字か移動しようとするとFFFFとか入力しちゃってつらい
小指でリンゴに穴を穿てる俺でこれだぜ?
若者がVimに移行するのもわかる
241デフォルトの名無しさん
2017/06/24(土) 17:24:09.55ID:5HRkzvGx esc遠いじゃん。vim使うならかわりに ctrl+[ 多用するんじゃないの?
242デフォルトの名無しさん
2017/06/24(土) 17:33:05.91ID:TM1thEne うむ。単発コントロールはいいんだけど、
コントロール押し続けたままってのがキツイんだよね
いつまにかコントロールが押されてない状態になっちゃう
コントロール押し続けたままってのがキツイんだよね
いつまにかコントロールが押されてない状態になっちゃう
243デフォルトの名無しさん
2017/06/24(土) 19:58:52.29ID:Fu3zWmHz Tabキーは薬指の方が押しやすいと思うんだが小指で押すのが普通なのかな
それと、もしかしてスペースキーを連打してインデントしてたりするのか……
それと、もしかしてスペースキーを連打してインデントしてたりするのか……
244デフォルトの名無しさん
2017/06/24(土) 21:34:03.85ID:U0yocUue タブキー押すとスペースでインデントしてくれるエディタでも
BSキーは一文字しか消してくれなくて不便
BSキーは一文字しか消してくれなくて不便
245デフォルトの名無しさん
2017/06/24(土) 22:16:28.93ID:Fu3zWmHz TabキーもそうだけどBackspaceキーの挙動もエディタと設定次第じゃない?
https://blog.jetbrains.com/jp/2014/08/16/481
エディタによってはCtrl+IとかCtrl+]でインデントを増やしたり減らしたりできるね
https://blog.jetbrains.com/jp/2014/08/16/481
エディタによってはCtrl+IとかCtrl+]でインデントを増やしたり減らしたりできるね
246デフォルトの名無しさん
2017/06/24(土) 22:35:57.72ID:TM1thEne emacsなら行単位で文法フォーマットしてくれる機能があるからそれをTabというかCtrl+Iに割り当ててる
この機能は、
空行の場合には、それ以前の行のコードに合わせてインデント調整してくれて、そこからコード入力はじめられる
すでに何らかのコードが入力されている場合には、そのコードを前の行に合わせて正しい位置にインデントしてくれる
emacsには昔からある機能だけど、JetBrains系のIDEにもまんま同じ機能がemacs tabっていう名前で用意されていて便利に使えてる
VisualStudio系にはこれと同じ機能がなくてすごい不満
代わりにformat〜とかいう機能があるからそれをCtrl+Iに割り当てて使ってるけど、挙動が少し違うから困る
この機能は、
空行の場合には、それ以前の行のコードに合わせてインデント調整してくれて、そこからコード入力はじめられる
すでに何らかのコードが入力されている場合には、そのコードを前の行に合わせて正しい位置にインデントしてくれる
emacsには昔からある機能だけど、JetBrains系のIDEにもまんま同じ機能がemacs tabっていう名前で用意されていて便利に使えてる
VisualStudio系にはこれと同じ機能がなくてすごい不満
代わりにformat〜とかいう機能があるからそれをCtrl+Iに割り当てて使ってるけど、挙動が少し違うから困る
247デフォルトの名無しさん
2017/06/25(日) 00:26:30.48ID:W+t3LiWk タブを使った場合の問題点は以下のようなコメントが書きづらいということ
if (true) {
foo(); # ながーいいいいいいい
# コメント
}
これを正しくインデントするならば
[タブ]foo(); # ながーいいいいいいい
[タブ][空白] # コメント
としなければいけない。
なぜなら、こうしなければ以下場合にタブ幅が4ではなくて8になったら
コメントの位置がずれてしまうから
[タブ]foo(); # ながーいいいいいいい
[タブ][タブ] # コメント
タブとスペースの意味が同じであれば、こういう面倒な使い分けを
いちいちやる理由がない。理由がなければやらない(全部スペース)を使うのが合理的
if (true) {
foo(); # ながーいいいいいいい
# コメント
}
これを正しくインデントするならば
[タブ]foo(); # ながーいいいいいいい
[タブ][空白] # コメント
としなければいけない。
なぜなら、こうしなければ以下場合にタブ幅が4ではなくて8になったら
コメントの位置がずれてしまうから
[タブ]foo(); # ながーいいいいいいい
[タブ][タブ] # コメント
タブとスペースの意味が同じであれば、こういう面倒な使い分けを
いちいちやる理由がない。理由がなければやらない(全部スペース)を使うのが合理的
248デフォルトの名無しさん
2017/06/25(日) 07:07:58.87ID:wnVI7vr5249デフォルトの名無しさん
2017/06/25(日) 07:12:29.34ID:wnVI7vr5 >>247
コードのコメントならコードの上に書けばよい。特に関数のコメントなら上に書くべきで、関数の呼び出し行の右には書かない。
コードのコメントならコードの上に書けばよい。特に関数のコメントなら上に書くべきで、関数の呼び出し行の右には書かない。
250デフォルトの名無しさん
2017/06/25(日) 07:17:02.48ID:crK74dJZ >>247
そういうコメントのつけ方をしたらずれるのがわかってるから、TAB使う人はそういう書き方を
しないかあるいはそもそも位置合わせにこだわらない。
スペース前提でのやり方をそのまま持ち込んで問題があると言うのが的外れ。
個人的には、改行が必要なほど長いコメントをインラインで書くのがそもそもどうかと思う。
そういうコメントのつけ方をしたらずれるのがわかってるから、TAB使う人はそういう書き方を
しないかあるいはそもそも位置合わせにこだわらない。
スペース前提でのやり方をそのまま持ち込んで問題があると言うのが的外れ。
個人的には、改行が必要なほど長いコメントをインラインで書くのがそもそもどうかと思う。
251デフォルトの名無しさん
2017/06/25(日) 13:06:17.58ID:W+t3LiWk252デフォルトの名無しさん
2017/06/25(日) 14:26:54.32ID:un4XSpf2 コメントはともかく、関数の引数を開き括弧に揃えるといった場合に、位置揃えに
タブが使われると、タブの文字幅の設定によって縦位置がずれるって問題はあるな。
https://www.emacswiki.org/emacs/TabsAreEvil
確かに位置揃えにはスペースだけを使うようにすれば問題ない。
https://www.emacswiki.org/emacs/SmartTabs
(indenting with tabs and aligning with spaces)
しかし実際にはソースコード上でタブの使用を許すと
タブとスペースを上手く使い分けできずに最初のURLにあるようなコードを
書く奴が出てくるから、それならインデントも位置揃えもスペースのみを使用する
コーティングスタイルにしておいた方がましってところじゃないかな。
タブが使われると、タブの文字幅の設定によって縦位置がずれるって問題はあるな。
https://www.emacswiki.org/emacs/TabsAreEvil
確かに位置揃えにはスペースだけを使うようにすれば問題ない。
https://www.emacswiki.org/emacs/SmartTabs
(indenting with tabs and aligning with spaces)
しかし実際にはソースコード上でタブの使用を許すと
タブとスペースを上手く使い分けできずに最初のURLにあるようなコードを
書く奴が出てくるから、それならインデントも位置揃えもスペースのみを使用する
コーティングスタイルにしておいた方がましってところじゃないかな。
253デフォルトの名無しさん
2017/06/25(日) 14:30:51.14ID:un4XSpf2 関数の引数を開き括弧に揃えるってのはこんな感じのもの。
(タブをインデントに使う場合)
function bar(veryDescriptiveArgumentNumberOne,
veryDescriptiveArgumentTwo) {
[_タブ_]doSomething()
}
この場合は以下のように括弧の後で改行すべきってスタイルもあるけど。
function bar(
veryDescriptiveArgumentNumberOne,
veryDescriptiveArgumentTwo) {
[_タブ_]doSomething()
}
(タブをインデントに使う場合)
function bar(veryDescriptiveArgumentNumberOne,
veryDescriptiveArgumentTwo) {
[_タブ_]doSomething()
}
この場合は以下のように括弧の後で改行すべきってスタイルもあるけど。
function bar(
veryDescriptiveArgumentNumberOne,
veryDescriptiveArgumentTwo) {
[_タブ_]doSomething()
}
254デフォルトの名無しさん
2017/06/25(日) 15:04:49.06ID:z2WkcYdd 俺はタブを使ってないが、コーディングスタイルの問題として後者の方が良いと思う。
255デフォルトの名無しさん
2017/06/25(日) 15:17:52.38ID:wnVI7vr5256デフォルトの名無しさん
2017/06/25(日) 15:39:29.73ID:crK74dJZ 昔は前者のレイアウトはいちいち手でそろえるのがナンセンスだと思っていたけど、
今ならフォーマッタで一発だから、それが使える前提ならアリかなとも思う。
特にヘッダファイルの場合、後者のレイアウトだと関数名がパラメータに紛れて見にくい。
どっちにしても、引数の表示位置がずれることにこだわること自体はナンセンスだと思うけど。
今ならフォーマッタで一発だから、それが使える前提ならアリかなとも思う。
特にヘッダファイルの場合、後者のレイアウトだと関数名がパラメータに紛れて見にくい。
どっちにしても、引数の表示位置がずれることにこだわること自体はナンセンスだと思うけど。
257デフォルトの名無しさん
2017/06/25(日) 17:20:13.85ID:wnVI7vr5 >>256
昔から縦揃えはナンセンスなんだが、昔の言語は位置を揃えるのが普通で、C言語もそのなごりを受けているから、いまだに引数の記述位置を揃えたがるのはいる。
昔から縦揃えはナンセンスなんだが、昔の言語は位置を揃えるのが普通で、C言語もそのなごりを受けているから、いまだに引数の記述位置を揃えたがるのはいる。
258デフォルトの名無しさん
2017/06/25(日) 18:20:14.61ID:y65FaRS5 > 昔から縦揃えはナンセンスなんだが
それは間違い
実際に比較してみればわかるが
縦を揃えたほうが見やすいのは事実
CSVとかMarkdownのテーブルを見れば
一目瞭然だろう
見やすいというメリットと、メンテナンス性が
悪いというデメリットの両方を持ってる。
これは事実として受け容れなければいけない
その上で揃えたほうが見やすいけど、うちの会社が
使ってるエディタでは縦揃えが難しいから
揃えるのは諦めてる。と言わないと嘘つきになってしまう
それは間違い
実際に比較してみればわかるが
縦を揃えたほうが見やすいのは事実
CSVとかMarkdownのテーブルを見れば
一目瞭然だろう
見やすいというメリットと、メンテナンス性が
悪いというデメリットの両方を持ってる。
これは事実として受け容れなければいけない
その上で揃えたほうが見やすいけど、うちの会社が
使ってるエディタでは縦揃えが難しいから
揃えるのは諦めてる。と言わないと嘘つきになってしまう
259デフォルトの名無しさん
2017/06/25(日) 18:54:40.17ID:crK74dJZ その「見やすさ」にどういうメリットがあるかってことだろう。
ブロックのインデントはブロックの範囲を把握しやすくするという目的があって、
だからこそ同じブロック内は同じ高さに揃えて例外はあまりあってほしくないわけだが。
ブロックのインデントはブロックの範囲を把握しやすくするという目的があって、
だからこそ同じブロック内は同じ高さに揃えて例外はあまりあってほしくないわけだが。
260デフォルトの名無しさん
2017/06/25(日) 18:57:00.95ID:y65FaRS5 > その「見やすさ」にどういうメリットがあるかってことだろう。
「可読性」が大事って話をしろってこと?
それはレベルが低すぎるw
「可読性」が大事って話をしろってこと?
それはレベルが低すぎるw
261デフォルトの名無しさん
2017/06/25(日) 19:19:58.80ID:crK74dJZ ん、まぁ、「レベルが低い」でごまかさずにどういうメリットがあるのか説明してみてほしい。
262デフォルトの名無しさん
2017/06/25(日) 21:39:45.35ID:wnVI7vr5 >>260
それはその見た目に慣れているかどうかでしかない。
それはその見た目に慣れているかどうかでしかない。
263デフォルトの名無しさん
2017/06/25(日) 22:06:09.42ID:y65FaRS5 >>262
可読性=読みやすさだよ
可読性=読みやすさだよ
264デフォルトの名無しさん
2017/06/26(月) 12:43:08.60ID:dkXVfWFO >>263
おまえの可読性ってその程度のことなのか?
おまえの可読性ってその程度のことなのか?
265デフォルトの名無しさん
2017/06/26(月) 12:47:59.42ID:RRor8pec ふ、お前の可読性はまだまだそんなもんじゃないはずだ
見せてみろ!お前の真のチカラを!!
見せてみろ!お前の真のチカラを!!
266デフォルトの名無しさん
2017/06/26(月) 13:15:57.03ID:d5peAhA8 =を揃えるのに皆さんはどうやっていますか?
テキストエディタ派の人、よろしくお願いします。
テキストエディタ派の人、よろしくお願いします。
267デフォルトの名無しさん
2017/06/26(月) 19:10:34.66ID:zVIkxyOR タブって本来縦揃えのためのものでしょ
それをスペース何文字とかで表示している奴が悪い
それをスペース何文字とかで表示している奴が悪い
268デフォルトの名無しさん
2017/10/12(木) 10:17:32.20ID:AYgvyQvZ >>266
揃えない。揃えたいと思うほど連続する事がない
揃えない。揃えたいと思うほど連続する事がない
269デフォルトの名無しさん
2017/10/13(金) 14:21:12.67ID:KnON5zi3 揃えるメリットがない
270デフォルトの名無しさん
2017/10/13(金) 19:47:48.49ID:YzoEew6q いやwお前らの大好きな可読性という最強のメリットがあるだろw何意地張っちゃってんの?w
271デフォルトの名無しさん
2017/10/13(金) 22:44:03.32ID:s0+Jkp8l 読みやすいほうが大好きに決まってるよな
読みにくいコードのほうが好きっていう人はいないと思う
読みにくいコードのほうが好きっていう人はいないと思う
272デフォルトの名無しさん
2017/10/13(金) 23:04:14.48ID:H2iLhF3K 上で議論されていたのは、=の位置を揃えたからといって有意に可読性が上がるのか?ってことだろ。
273デフォルトの名無しさん
2017/10/13(金) 23:07:22.69ID:YzoEew6q つまり無意に可読性が上がることは認めるのか?
まずはそこをハッキリさせとこうぜ?
まずはそこをハッキリさせとこうぜ?
274デフォルトの名無しさん
2017/10/13(金) 23:07:41.69ID:s0+Jkp8l =の位置を揃えるのは有意に可読性が上がる。これは確かだよ
もちろん揃える意味があるのは3行以上で揃える行数が
増えれば増えるほど可読性に影響を与える
ただし、入力の手間が増える。というだけの話。
入力の手間は可読性とは関係ない。
これは単に入力の手間と可読性のどちらを取るかという話でしか無い
もちろん揃える意味があるのは3行以上で揃える行数が
増えれば増えるほど可読性に影響を与える
ただし、入力の手間が増える。というだけの話。
入力の手間は可読性とは関係ない。
これは単に入力の手間と可読性のどちらを取るかという話でしか無い
275デフォルトの名無しさん
2017/10/13(金) 23:09:23.03ID:s0+Jkp8l276デフォルトの名無しさん
2017/10/13(金) 23:10:40.14ID:s0+Jkp8l 揃えたほうが見やすいのは、CSVファイルや
Markdownのテーブルでも同じこと。
可読性は上がるがメンテナンス性が下がるというだけのこと
Markdownのテーブルでも同じこと。
可読性は上がるがメンテナンス性が下がるというだけのこと
277デフォルトの名無しさん
2018/05/23(水) 21:33:45.43ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
NTZHS
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
NTZHS
278デフォルトの名無しさん
2018/07/05(木) 00:25:00.00ID:RfoszcD2 P8S
279デフォルトの名無しさん
2018/07/05(木) 00:27:34.84ID:F5EmMeHI タブにきまってるやん
タブ幅は参照するヤツが任意に設定できる
SP入れるヤツはゴミといっていい
タブ幅は参照するヤツが任意に設定できる
SP入れるヤツはゴミといっていい
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「偽サッチャー」「自滅的」「時代遅れ」 高市首相の経済政策を海外メディアが酷評 [蚤の市★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- 【ド軍】山本由伸、WBC出場を決断!ドジャースが本人の意向を尊重、佐々木朗希はチームが故障歴を懸念で不参加 [鉄チーズ烏★]
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- 秋田内陸縦貫鉄道「列車が脱線、転覆」と通報 北秋田市、萱草駅付近 [蚤の市★]
- 今年の漢字、きょう発表😉 [583597859]
- 女の子集合!
- 中国人、超ド正論。「チベットやウイグルに住んでるのはチベット族やウイグル族だが、アイヌから奪った土地に住んでる日本人こそ侵略者」 [314039747]
- おまえらもうクリスマスツリー出した?
- 百合営業してるアイドル「これは営業だから…んっクチュクチュ」←これ
- (´・ω・`)ニュー速VIPのみんなへ
