インデントの反対語[閉じた]


11

コードをインデントすると言います。コードをインデントするためにタブを追加/削除できる文字列ビルダーを書いています。

サンプル:

builder.Add("<ul>");
builder.Indent();
builder.Add("<li></li>");
builder.Dedent(); // <-- what should this be named.
builder.Add("</ul>");   

メソッドの名前は何にする必要がありますか?


3
多少話題から外れていますが、Add( "<ul>")およびIdent()呼び出しをインデントロジックを含むBeginElement( "ul")に置き換えた場合、明示的にindent / dedentを呼び出すことを避けることができます。(もちろんEndElementメソッドも)
デビッド

@David:+1、しかしもちろん、入れ子になったインライン要素を考慮したいでしょう:)
デミアンブレヒト

11
どうoutdent
ケビン

@Kevin:すばらしい代替案ですが、答えとして追加してみませんか?
-jgauffin

@David:フレームワーク内で使用され、ユーザーには公開されません(クラスはパブリックですが、ユーザーは独自の目的で使用できます)。また、単なるマークアップ以外にも使用できるため、BeginElementetcなどは適切ではありません。
-jgauffin

回答:


24

outはinの反対で、誰もがこれを知っています。なぜIndent()andを使用しないのOutdent()ですか?


これは少なくとも私が常にそれを呼んでいることです。
カラムロジャース

ここでも同じですが、私はいつもアウトデントと呼ばれています。
ブライアンノブラウフ

17

反対の場合はindent、を使用しますunindent。ウィクショナリーから:

インデント解除

語源
un- +インデント。1980年代にコンピューターがページ上のテキストを移動するのを誰もが簡単にしたときに始まりました。
動詞
unindent三人称単数現在形 unindents現在分詞 unindenting単純過去および過去分詞 unindented
1. インデントを削除します。テキストのブロックを左マージンの近くに移動します。エッセイが紙の片面に収まるように、各段落の最初の行のインデント
解除する必要がありました。

Online Etymology Dictionaryによると、インデントは次のものから得られます。

15c初期、インデンテン/エンデンテン「刻み目をつける;歯またはぎざぎざの外観を(何か)与えるため」、また「合法的な義歯を作るため」、O.Fr。endenter「刻み目またはへこみに、鋸歯状のエッジを与える」、ML indentareから 「歯を提供する」、in-「into、in、on、on」(in-(2)を参照)+ L. dens(gen 。dentis) "歯"(歯を参照してください)。関連: インデント。インデント。印刷感覚は最初に1670年代に証明されました。名詞は、動詞から1590年代に初めて記録されます。「書面による合意」(後期15c。)の以前の名詞の意味は、「中世の英語辞典」で「enentureの略語」と記述されています。

したがって、インデントは、ソースコードに「ノッチ」を入れるようなものです。そのノッチを削除するには、インデントを元に戻します:インデントを解除します。


16
Indent
Dedent

これをバックアップするために、簡単なグーグルが役立ちます:undentは290,000ヒット、dedentは1,920,000ヒットを持ち、後者がより広く使用されていることを大まかに示しています。これは引数として非常に慎重に使用する必要がありますが。

DedentPython docsで使用される標準的な用語でもあります。


2
実際、 "dedent"を引用符で囲むと321,000ヒットしかなく、それらのヒットの多くはインデントとは関係なく、名前やその他のもの(歯科用語かもしれません)です。「unindent」のヒット数は267.000です。
ファルコン

2
Dedentは実際の英語の単語ではありません。優れたAPIは明確であり、ソースを読んでいる人なら誰でも簡単に理解できます(私はPythonを愛しているのと同じくらい、これは私がまったく好きではない奇妙な風変わりをもたらしました)。互いに隣り合って、これは理にかなっていますが、そうでない場合もあります(または英語がまったく流ではない人にとって)。
デミアンブレヒト

1
@Demianもちろん、これは英語の単語です。私たちはそれを使用しています。存在しなかった場合、どのように使用できますか?英語は厳しく規制された規範主義言語ではありません。
コンラッドルドルフ

6
「アウトデント」のヒット数はほぼ1400万です。
マイクシェリル 'キャットリコール'

2
@Demian Brecht:それは単なる新語です。プログラマーとして、あなたは毎日それらに没頭しています。それに慣れる。
ジョンパーディ

12

インデントを意味しませんか?

意図とは、まったく異なるものを意味します。

そうでなければ、多分Unindent

サイドノート:

  • タブを使用してコードをインデントするのは悪い(imho)-スペースはより移植性が高い
  • このAPIをクライアントに公開することはありません。builder何を、何にないインデントを知っているスマート十分なはずです。

4
Jeff Atwoodの投稿は、タブの使用が悪い理由を述べていません。最後にタブユーザーにin辱を投げかけるだけです。
ピーターテイラー

16
「スペースはよりポータブルです」:それは一体何を意味しますか?!?!?...また、タブが悪いことに同意しません。実際、個人的にはタブが良いと思います。簡潔で解析しやすく、ユーザーがビューでどのように表示されるかを選択できます。前述の利点を持たないスペースとは対照的に、それらにマイナスのマイナス面はありません。
-dagnelies

3
@arnaud:タブとスペースを比較してください。それは主に宗教的な議論ですが、私の経験では、スペースが常に優勢でした(特に、OSプロジェクトに取り組んでいる場合や、異なるエディターを使用する複数の開発者がいる場合)。本当に、結局のところ、重要なことは一貫性です。
デミアンブレヒト

2
最も良いのは、Tabを押すと自動的にXスペースを挿入するエディターを使用することです。
ホセファエティ

2
@Konrad:タブをサポートしないエディターに名前を付けますか?
カラムロジャース

5

どうでしょう SetIndentLevel(int level)

インデントを削除すると、レベルが0に設定されます。この操作の反対の用語はありません。


+1-インデントレベルを増減する2つの関数呼び出しよりも優れたアプローチです。
mcottle

6
2つの方法よりも優れているかどうかはわかりません。setIndentLevelメソッドを使用するということは、ドキュメント内にネストされた要素がある場合にインデントがどの程度深くなったかを覚えておく必要があるということです。それはカウンターを維持することを意味します。いいえ、間違いなくあなたの責任ではなく、ビルダーの責任であるべきです。
デビッド

1
@David:2つのラッパーメソッドを簡単に作成して追跡できます。場合によっては、より使いやすいか、使いやすいかもしれませんが、そうでない場合もあります。他のインターフェイスでは、増減メソッドを複数回またはループで呼び出す必要があります。セット/増加/減少:私はおそらく、すべての3つのバージョンがしたいと思うので
ファルコン

1
@David- setIndentLevel(1 + getIndentLevel())両方の長所。
イズカタ

5

「インデント」という単語は、実際には「空白を挿入する」という意味ではなく、「物事が揃うように空白を調整する」という意味です。したがって、インデントとは、タブの追加または削除の両方を意味する場合があります。「ウォーク」の反対がないように、概念的には「インデント」の反対はありません。インデントを削除したり、インデントを取り消したり、インデントレベルを変更したりできます。これらはそれぞれ、何らかの方法でインデントの効果を元に戻す、または変更する操作ですが、インデントの「反対」ではありません。人気のある「dedent」と「unindent」は、「unwalk」または「defest」と同じように間違っています。(ところで、これはenglish.seに良い質問になるかもしれません)

あなたのケースでは、私が一緒に行くだろうIncreaseIndentationLevelDecreaseIndentationLevel


1
english.seは、プログラミング用語について議論することをあまり好みません。
-jgauffin

それはプログラミング用語というより組版用語ですが、OKです。
-tdammers

「インデント」ではなく「インデント」。
マイクシェリル 'キャットリコール'

1
同意すると、「インデントを増やす」と「インデントを減らす」は厳密に言えば正しい用語です。プログラマーが使用して理解できる言語になると期待しています。車を停止させることについて話すとき、あなたは「負の加速」を使いますか?
スティーブンV

4

たとえば、Wikipedia Template:Outdentページで「アウトデント」という単語を見ました

インデントが深くなりすぎたときにトークページで返信をアウトデントするため。トークページのインデントは、タブを作成するためにコロン文字(:)を使用して行われます。このテンプレートは、前のインデントで使用されたコロンの数に基づいて、アウトデントを示すコネクタバーと初期テキストを生成します...



2

FWIW Google DocsおよびMS Wordは、「Indentase Indent」および「Decrease Indent」を使用します。どのエディター(TinyMCEで、最近作業していたのかもしれません)を忘れていますが、「インデント」と「アウトデント」を見たことがあることは知っています。


1

インデントの定義:

テキストの主要部分よりもマージンから遠くに開始(テキストの行)または位置(テキストのブロック、表など)

これと正反対のことはありません。むしろ、指定された行よりもメインテキストをインデントします。

より良い用語は、RemoveIndent()またはReduceIndent()だと思います

そうは言っても、「インデントの反対」という用語をグーグルで検索すると、次の用語が明らかになります:Outdenthttp://www.urbandictionary.com/define.php?term=indentこれも適切です。


OutdentはDedentと同じくらいasいです。「インデント」の「イン」は接頭辞ではなく、実際には、英語の文法の乱用であるかのように置き換えられます。
-tdammers

@tdammers-ある意味ではそうです。段落を内側に凹ませているので、反対は外側に凹ませることです-凹みます。個人的に私は...関数名のためにも)削除/ ReduceIndentを(好む
ギャビン・コーツ

1
@tdammers:インデントの 「in-」接頭辞(「into、in、on、on」– etymonline.com/index.php?term=indent)のようです。重要ではない-民間語源について「虐待的」なものは見当たらない(en.wikipedia.org/wiki/Folk_etymology)。それは言語の進化の一部です。そして、私はそれに反対アウトデントが醜いようですDEDENT。私は、どの音節がへこみで強調するのかさえ分かりません。どちらにしても非常にugいです。しかし、アウトデントは素晴らしく、明白です。インデントを完全に補完します。2つの単語は、非常に視覚的なコントラストで互いに定義された素晴らしいペアを作成します。私はそれが好きです。
コールム

申し訳ありませんが、この質問またはその回答を適切に読むことができなかったことに気付きました。テキストエディタでの折り返された行の自動表示に関するものだと思いました。その場合、アウトデント上のよりも左に行を表示するオプションを意味する)は、私の意見では完璧でしょう。しかし、この質問は実際には既に存在するインデントを削除することに関するものです。たとえば、Shift + Tabを押したときに何が起こるかということです。その場合、私は同意するreduceIndent()、あるいはunindent()
コールム

私自身の研究をしました; はい、「in-」は実際には接頭辞ですが、callumが示すように、「outdent」は左端の左から始まる行を意味します。IIRC、このようなことは組版では負のインデントと呼ばれ、アウトデントではありません。とにかくここで話していることではありません。
-tdammers

0

私はパーティーに少し遅れていることを知っていますが、の反対を見つけるのと同じ問題を抱えていましたIndent。こことしてその質問には、いくつかの異なる答えがあり、私は彼が選ぶだろうどのような英語の同僚(UK)を尋ねた:彼の最初のヒントだったIncreaseIndentDecreaseIndent。しかしIndentDetentまた機能します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.