Insert sequential numbers at start of lines
-
@PeterJones said in Insert sequential numbers at start of lines:
No. You install the PythonScript plugin, which comes with an embedded Python interpreter, and follow the instructions in the FAQ on how to run a script using PythonScript
Thank you so much, Peter! :-D
-
-
@deleelee said in Insert sequential numbers at start of lines:
Here’s a slightly modified version
Sorry it’s taken me so long to check your scripts out. Thank you so much, they’re great but I’d like a kind of hybrid of them both.
InsertLineNumbersOnLines - Inserts numbers on all lines with the numbers followed by a colon.
TextFxInsertLineNumbers - Inserts numbers only on selected lines but with leading zeros.
I’d like to insert numbers only on selected lines, with no leading zeros, and numbers followed by a colon or a closing parentheses.
-
@deleelee said in Insert sequential numbers at start of lines:
@deleelee said in Insert sequential numbers at start of lines:
I’d like a kind of hybrid of them both.UPDATE: I managed to figure it out myself and modified your TextFxInsertLineNumbers script. I now have it inserting numbers with no leading zeros followed by a closing parentheses. Thank you so much for your help.
However, is it possible to have it insert numbers only for selected lines but exclude any selected lines that are empty?
-
@deleelee said in Insert sequential numbers at start of lines:
but exclude any selected lines that are empty?
Sure, most anything is possible with programming.
You’d want to look for a line-length of zero (e.g.len(line_content) == 0
) and then NOT insert a line number at the start of such lines, by appending only the content to the second list. Of course, this would cause gaps in your line numbering any time a blank line occurs, so you might need to maintain the line number counter yourself.Since you’ve already made changes to the script, go ahead and make some more! :-)
-
@Alan-Kilborn said in Insert sequential numbers at start of lines:
You’d want to look for a line-length of zero (e.g.
len(line_content) == 0
) and then NOT insert a line number at the start of such lines, by appending only the content to the second list. Of course, this would cause gaps in your line numbering any time a blank line occurs, so you might need to maintain the line number counter yourself.Thanks yet again. I’ll check it out :-D
-
@Alan-Kilborn I know it’s years later, but i found myself using your script. I’m a total noob when it comes to programming, all i could do is modify what goes after the numbers.
Now, how could i delete what the script just did (i.e delete the numbers, but leave the lines like they were before the script ran) ? I know i can use Undo to do it on the spot, but let’s say i wanna undo the numbering a day after. -
You don’t need programming to delete the line numbers that were inserted.
Here’s how to do it:
- Move the caret to line 1 and column 1
- Press Shift+Alt+b to Begin Select in Column mode
- Move the caret to the last line and put it right after the last digit of the line number (previously added by the script)
- Press Shift+Alt+b again to End Select in Column mode
At this point you should have the line numbers selected in a rectangular block so simply pressing Delete should eliminate them.
-
@Alan-Kilborn Okay, i knew how to do that, but it does not help me.
First, i’d have to do it twice, because i set the script up to put a number, then :, then a space (5: ), so till 9 its 3 characters long and after is 4 characters long.
And again, i have to do this multiple times in a document, every day and using the column mode is a bit tedious. I was hoping that i could do it with a script.
Now, i select the text i need, press a key and your script instantly does its job. I’d like to have the same thing with deleting, but i don’t know if it’s possible or not. :) -
@Ionut-Dorin said in Insert sequential numbers at start of lines:
i set the script up to put a number, then :, then a space (5: ), so till 9 its 3 characters long and after is 4 characters long
It would have been better to just show some of this text rather than describing it…
But I think if you do a replacement operation it will be good?:
Find:
^\d+:
Replace: set to nothing
Search mode: Regular expression
Options: Wrap around
Action: Replace allYou can record this replacement op as a macro.
-
@Alan-Kilborn
1: Line content
2: Line content
3: Line content
4: Line content
5: Line content
6: Line content
7: Line content
8: Line content
9: Line content
10: Line content
11: Line content
12: Line content
… and to become
Line content
Line content
Line content
Line content
etc.
Find: ^\d+: doesn’t work and plus, i don’t need it for the whole document, just for the lines i select. -
@Ionut-Dorin said in Insert sequential numbers at start of lines:
Find: ^\d+: doesn’t work
If you did exactly what I said to do, I see no reason why it wouldn’t work on your sample data.
i don’t need it for the whole document, just for the lines i select.
Ok, so don’t checkmark Wrap around but make your selection first and then checkmark In selection.
-
@Alan-Kilborn Yes, that did it, I think i read too fast and didn’t see that you said “Search mode: Regular expression” and i didn’t check that, so maybe that’s why it didnt work.
Also, i turned it into a macro for ease of use.
Thank you so much for your help and patience, you’re a lifesaver.