web-dev-qa-db-ja.com

IntelliJ / IDEA / PyCharmにリテラルの<TAB>文字を入力するにはどうすればよいですか?

私の構成は4つのスペースでインデントし、それを保持したいと思います。 (Makefileなどで)時々リテラルTAB文字を入力したい。

IntelliJ-IDEでタブまたはスペースを入力するように強制するには、そのインスタンスでタブまたはスペースを押しても入力できない場合はどうすればよいですか?

22
Robert Siemer

Makefileサポート用のプラグインをインストールします。 https://plugins.jetbrains.com/plugin/9333-makefile-support

今日試してみたところ、Makefileファイルのエディターでハードタブが自動的に使用されました。

9
Weiming

ここで2つの質問をしているようです:

1。 IntelliJを強制するにはどうすればよいですかIDEタブを入力したときにタブを入力しなかった場合、タブを入力しませんか?

そして

2。 IntelliJを強制するにはどうすればよいですかIDEスペースを入力したときにスペースを入力しなかった場合、スペースを入力しませんか?

2番目のケースがどのように発生するかわかりません。ただし、解決策も提供しています。

ケース1. IntelliJ IDEが構成のためにスペースで置き換えたい場合にタブ文字を挿入する

解決

検索と置換を使用します。

細部

  1. タブを配置する場所にカーソルを置きます
  2. Xキーを押します
  3. 入力したXを選択します
  4. メインメニューから[編集]を選択します。検索|置換して検索と置換ペインを表示します
  5. 検索フィールドにXがあることを確認してください
  6. 入る \t置換フィールド
  7. オプションRegexがオンになっていることを確認してください
  8. オプションIn Selectionがチェックされています
  9. Replaceボタンをクリックします

ケース2. IntelliJ IDEで入力できない場合にスペース文字を挿入する(???)

解決

検索と置換を使用します。

細部

  1. スペースを置きたい場所にカーソルを置きます
  2. Xキーを押します
  3. 入力したXを選択します
  4. メインメニューから[編集]を選択します。検索|置換して検索と置換ペインを表示します
  5. 検索フィールドにXがあることを確認してください
  6. 置換フィールドにスペースを1つ入力します
  7. オプションIn Selectionがチェックされています
  8. Replaceボタンをクリックします
7
Arno Dverjging

別のテキストエディターを開き、tabを入力して、コピーしてPyCharmエディターに貼り付けます。 MacOSXでは、これはSublime Text 2とTextEditの両方を使用して動作しました。

3
safay

「直接的な」方法は思いつきません。おそらく、私が考えることができる最も簡単な方法は、それを行うためのライブテンプレートを作成することです。詳細は ライブテンプレートのヘルプページ を参照してください。作成する際に、別のアプリケーションからタブ文字をコピーして貼り付ける必要がある場合があります。

しかし、試してみると、IDEAはそれを空のテキストと見なして保存しなかったため、「capitalize」関数で変数を使用してタブ文字を大文字にしました。

Screenshot of Live Template

これが私が作成したテンプレートで、テンプレートに貼り付けることができます。次にtabと入力し、 Tab キーとタブ文字を取得します。もちろん、略称は変更できます。

<template name="tab" value="$TAB$" description="Enter a tab Character" toReformat="false" toShortenFQNames="true">
  <variable name="TAB" expression="capitalize(&quot;&#9;&quot;)" defaultValue="&#9;" alwaysStopAt="false" />
  <context>
    <option name="OTHER" value="true" />
  </context>
</template>

アイデアを拡張して、複数のタブに入る複数のタブを作成できます。たとえば、tabは1つのタブに入る場合、tab2 2つのタブなど.

使用後のスクリーンショット: Screenshot of tabs used in code

マクロをハックしてそれを行う方法もあるかもしれません。次に、マクロをキーボードショートカットに割り当てます。私が何かを理解できるかどうかを確認し、可能であればこれを更新します。

0
Javaru

質問に対する@Morficのコメントに基づいて回答します。私はこれがここで最もクリーンで最も賢明な返信だと思うので、答えとして場所に値するものだと考えました(そして言うまでもなく、それは私にとってはうまくいきました)。

それらが異なる種類のファイルである場合は、ファイル->設定->エディタ->コードスタイル->タブとインデントを構成し、それぞれに応じてスペースまたはタブを使用できます。

0
Avision