インデントはタブかホワイトスペースか?
■ このスレッドは過去ログ倉庫に格納されています
タブ派だったけどhaskellがタブを受け付けなくて愕然とした
世の中そういうもんかとスペース派になった >>272
Pythonみたいな言語はちょっと特殊だけど、
普通の言語はエディタの機能で文法的に正しいインデントの位置まで一発で移動できるだろ?
BS打ってインデント下げるとかメモ帳でも使ってるのか?
PythonもEmacsならTabキー押すと文法的に適切なインデント位置候補を循環的に移動してくれるのな ?
個人個人でTABの表示幅が変わっても問題なかろう? EditorConfigってどーなん?
なんかデメリットある? インデントの論理的な表現であるタブと物理的なスペース、意識の高い方々は
前者を好みそうなもんだが実際は逆の雰囲気なんだよな。 >>237
ホームポジションから遠いから・小指が疲れるから
もしもTABとスペースのキー位置が逆な平行世界だったら
タブでインデントすることに全く疑問を持たないw 最近はMacBookProでVimだから小指はそんなに強くないんじゃない?
おれも最近ちょっと仕事でMacBookProを使ってるんだが確かにこれでEmacsはちょっと厳しい
C-F押して右に何文字か移動しようとするとFFFFとか入力しちゃってつらい
小指でリンゴに穴を穿てる俺でこれだぜ?
若者がVimに移行するのもわかる esc遠いじゃん。vim使うならかわりに ctrl+[ 多用するんじゃないの? うむ。単発コントロールはいいんだけど、
コントロール押し続けたままってのがキツイんだよね
いつまにかコントロールが押されてない状態になっちゃう Tabキーは薬指の方が押しやすいと思うんだが小指で押すのが普通なのかな
それと、もしかしてスペースキーを連打してインデントしてたりするのか…… タブキー押すとスペースでインデントしてくれるエディタでも
BSキーは一文字しか消してくれなくて不便 TabキーもそうだけどBackspaceキーの挙動もエディタと設定次第じゃない?
https://blog.jetbrains.com/jp/2014/08/16/481
エディタによってはCtrl+IとかCtrl+]でインデントを増やしたり減らしたりできるね emacsなら行単位で文法フォーマットしてくれる機能があるからそれをTabというかCtrl+Iに割り当ててる
この機能は、
空行の場合には、それ以前の行のコードに合わせてインデント調整してくれて、そこからコード入力はじめられる
すでに何らかのコードが入力されている場合には、そのコードを前の行に合わせて正しい位置にインデントしてくれる
emacsには昔からある機能だけど、JetBrains系のIDEにもまんま同じ機能がemacs tabっていう名前で用意されていて便利に使えてる
VisualStudio系にはこれと同じ機能がなくてすごい不満
代わりにformat〜とかいう機能があるからそれをCtrl+Iに割り当てて使ってるけど、挙動が少し違うから困る タブを使った場合の問題点は以下のようなコメントが書きづらいということ
if (true) {
foo(); # ながーいいいいいいい
# コメント
}
これを正しくインデントするならば
[タブ]foo(); # ながーいいいいいいい
[タブ][空白] # コメント
としなければいけない。
なぜなら、こうしなければ以下場合にタブ幅が4ではなくて8になったら
コメントの位置がずれてしまうから
[タブ]foo(); # ながーいいいいいいい
[タブ][タブ] # コメント
タブとスペースの意味が同じであれば、こういう面倒な使い分けを
いちいちやる理由がない。理由がなければやらない(全部スペース)を使うのが合理的 >>237
テキストエディタでタブを何文字分のスペースとするか決まってないからだけど、俺は半角スペースのインデントは手間がかかるから嫌い。
特に後から直すときにスペースでインデントしていると面倒。 >>247
コードのコメントならコードの上に書けばよい。特に関数のコメントなら上に書くべきで、関数の呼び出し行の右には書かない。 >>247
そういうコメントのつけ方をしたらずれるのがわかってるから、TAB使う人はそういう書き方を
しないかあるいはそもそも位置合わせにこだわらない。
スペース前提でのやり方をそのまま持ち込んで問題があると言うのが的外れ。
個人的には、改行が必要なほど長いコメントをインラインで書くのがそもそもどうかと思う。 >>249-250
つまりタブを使うとずれる場合があるから書き方に制限が出るわけだよね?
そういう風に気を使うことで得られるものは何かあるの?
スペースでいいじゃん コメントはともかく、関数の引数を開き括弧に揃えるといった場合に、位置揃えに
タブが使われると、タブの文字幅の設定によって縦位置がずれるって問題はあるな。
https://www.emacswiki.org/emacs/TabsAreEvil
確かに位置揃えにはスペースだけを使うようにすれば問題ない。
https://www.emacswiki.org/emacs/SmartTabs
(indenting with tabs and aligning with spaces)
しかし実際にはソースコード上でタブの使用を許すと
タブとスペースを上手く使い分けできずに最初のURLにあるようなコードを
書く奴が出てくるから、それならインデントも位置揃えもスペースのみを使用する
コーティングスタイルにしておいた方がましってところじゃないかな。 関数の引数を開き括弧に揃えるってのはこんな感じのもの。
(タブをインデントに使う場合)
function bar(veryDescriptiveArgumentNumberOne,
veryDescriptiveArgumentTwo) {
[_タブ_]doSomething()
}
この場合は以下のように括弧の後で改行すべきってスタイルもあるけど。
function bar(
veryDescriptiveArgumentNumberOne,
veryDescriptiveArgumentTwo) {
[_タブ_]doSomething()
} 俺はタブを使ってないが、コーディングスタイルの問題として後者の方が良いと思う。 >>253
後者の方がコメントを書きやすい
インデントとスペースにすると書き直すのに手間取る 昔は前者のレイアウトはいちいち手でそろえるのがナンセンスだと思っていたけど、
今ならフォーマッタで一発だから、それが使える前提ならアリかなとも思う。
特にヘッダファイルの場合、後者のレイアウトだと関数名がパラメータに紛れて見にくい。
どっちにしても、引数の表示位置がずれることにこだわること自体はナンセンスだと思うけど。 >>256
昔から縦揃えはナンセンスなんだが、昔の言語は位置を揃えるのが普通で、C言語もそのなごりを受けているから、いまだに引数の記述位置を揃えたがるのはいる。 > 昔から縦揃えはナンセンスなんだが
それは間違い
実際に比較してみればわかるが
縦を揃えたほうが見やすいのは事実
CSVとかMarkdownのテーブルを見れば
一目瞭然だろう
見やすいというメリットと、メンテナンス性が
悪いというデメリットの両方を持ってる。
これは事実として受け容れなければいけない
その上で揃えたほうが見やすいけど、うちの会社が
使ってるエディタでは縦揃えが難しいから
揃えるのは諦めてる。と言わないと嘘つきになってしまう その「見やすさ」にどういうメリットがあるかってことだろう。
ブロックのインデントはブロックの範囲を把握しやすくするという目的があって、
だからこそ同じブロック内は同じ高さに揃えて例外はあまりあってほしくないわけだが。 > その「見やすさ」にどういうメリットがあるかってことだろう。
「可読性」が大事って話をしろってこと?
それはレベルが低すぎるw ん、まぁ、「レベルが低い」でごまかさずにどういうメリットがあるのか説明してみてほしい。 >>260
それはその見た目に慣れているかどうかでしかない。 >>263
おまえの可読性ってその程度のことなのか? ふ、お前の可読性はまだまだそんなもんじゃないはずだ
見せてみろ!お前の真のチカラを!! =を揃えるのに皆さんはどうやっていますか?
テキストエディタ派の人、よろしくお願いします。 タブって本来縦揃えのためのものでしょ
それをスペース何文字とかで表示している奴が悪い >>266
揃えない。揃えたいと思うほど連続する事がない いやwお前らの大好きな可読性という最強のメリットがあるだろw何意地張っちゃってんの?w 読みやすいほうが大好きに決まってるよな
読みにくいコードのほうが好きっていう人はいないと思う 上で議論されていたのは、=の位置を揃えたからといって有意に可読性が上がるのか?ってことだろ。 つまり無意に可読性が上がることは認めるのか?
まずはそこをハッキリさせとこうぜ? =の位置を揃えるのは有意に可読性が上がる。これは確かだよ
もちろん揃える意味があるのは3行以上で揃える行数が
増えれば増えるほど可読性に影響を与える
ただし、入力の手間が増える。というだけの話。
入力の手間は可読性とは関係ない。
これは単に入力の手間と可読性のどちらを取るかという話でしか無い 揃えたほうが見やすいのは、CSVファイルや
Markdownのテーブルでも同じこと。
可読性は上がるがメンテナンス性が下がるというだけのこと 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
NTZHS タブにきまってるやん
タブ幅は参照するヤツが任意に設定できる
SP入れるヤツはゴミといっていい ■ このスレッドは過去ログ倉庫に格納されています