Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Notepad++ convert leading spaces to tabs upon entry

Very close to reverse of this question. I prefer coding with 2-whitespace indentation, but need to have files indented with tabs to align with project convention. What I would like to do is preferably automatically convert 2 spaces upon entry to tab symbol in Notepad++ and have the editor configured to tab length of 2.

A possible manual way for doing this could be Edit->Blank Operations->Space to TAB but this converts all of my spaces to tabs, even those of length 1 - which are, for example, spaces between function arguments, not just leading spaces.

In a perfect case scenario I'm trying to achieve formatting style as described in this question, but with typing just spaces and the editor taking care of the rest.
I'm on Notepad++ 6.0, but willing to upgrade if this helps

like image 669
Sergii Zaskaleta Avatar asked Jul 27 '15 14:07

Sergii Zaskaleta


People also ask

How do you convert tabs to space or code?

On Visual Studio, Ctrl+K+F did the trick for me. That's the "format selection" shortcut in Visual Studio, which may affect tabs/spaces depending on your formatting settings.

What is the difference between spaces and tabs?

Code is broken up into lines of letters and symbols on a page, which communicates to computers, iPads, smartphones, you name it what to do. You see, with spaces, you format each line of code using the spacebar. While, with tabs, you aligning it with the tab key.


2 Answers

Let me complete the answer of Ari Okkonen to add a workaround to the problem commented by Sergii Zaskaleta of mixed tabs and spaces at the beginning of the line.

  1. Settings->Preferences->Tab Settings->Tab size: 2 (if not already)
  2. Edit->Blank Operations->Space to TAB (Leading)
  3. Select a block of lines of text with the problem of mixed spaces and tabs. Press [Tab] and [Shift]+[Tab] to add and remove a tab from each line. In the process, the leading spaces had been converted to tabs.
like image 67
txema Avatar answered Nov 15 '22 09:11

txema


A manual way that seems to work: After having edited the file before saving you may try (Works in Notepad++ v6.8.3):

  1. Settings->Preferences->Tab Settings->Tab size: 2 (if not already)
  2. Edit->Blank Operations->Space to TAB (Leading)
like image 37
Ari Okkonen Avatar answered Nov 15 '22 10:11

Ari Okkonen