Підвищений текст 2 редагування рядків


147

Я хочу редагувати кілька рядків і кожне "слово" у цьому рядку. Наприклад:

45 28 42 65
24 87 47 95
01 25 87 98

Я хочу вибрати все ціле число у всіх рядках і поставити перед ним "0x", щоб воно виглядало так:

0x45 0x28 0x42 0x65
0x24 0x87 0x47 0x95
0x01 0x25 0x87 0x98

Я знаю Ctrl+ shift+, Lщоб отримати курсори на кожному рядку, але як я можу змусити курсори перед кожним номером масово редагувати всі відразу?


На це, можливо, пізно відповісти на це питання, але ось посилання, де ви можете знайти відповідь на запитання. sublimetext.com/docs/3/…
Олександр

Відповіді:


282

Виділіть лінії та використовуйте:

  • Windows: Ctrl+ Shift+L
  • Mac: Cmd ⌘+ Shift+L

Потім ви можете перемістити курсор до вмісту серця та відредагувати всі рядки одночасно.

Його також називають "Розбити на лінії" в меню "Виділення".


Так, але як я можу редагувати кожне число в рядках одночасно? Так як, якби я робив лише перший рядок, я міг би відредагувати одразу кожне число першого рядка? Якщо це має сенс
Syperus

ви не можете - курсор можна мати лише в одному місці в будь-якому заданому рядку. Але ви можете перемістити його до початку рядка, додати 0x, використовувати alt> для переміщення по одному слову і знову додати 0x.
Оуен

28
Це неправда - у вас може бути стільки курсорів, скільки вам потрібно на лінії. Все, що вам потрібно зробити, це Ctrl-click(в Windows), щоб розмістити їх.
MattDMo

3
@MattDMo ТАК !! Саме це я і шукав. Чи випадково ви знаєте комбінацію клавіш до вибору всіх таких? Я озирнусь і побачу, чи зможу його знайти.
Сипер

коли я використовував Ctrl+ Shift+ L, він вибирає всі рядки, але курсор у кожному рядку знаходиться або на початку, або в кінці рядка. якщо я потім натискаю стрілку ліворуч, намагаючись повернути всі курсори до початку кожного рядка, він переміщує курсори назад відносно місця, де вони знаходяться, тому вони все ще не є рівномірно на тому самому положенні в рядку. як я можу отримати всі курсори на початку рядка? (для контексту я просто намагаюся додати [space]*[space]на початку кожного рядка).
користувач1063287

84

Використовуйте кілька курсорів та вибір стовпців.

У вашому випадку вам просто потрібно розмістити курсори на початку кожного стовпця, що містить "слова".

Linux та Windows

  • Клацніть та перетягніть, щоб вибрати стовпці: Shift +RightMouseBtn
  • Додайте до вибору інші стовпці (колони) натисканням та перетягуванням: Ctrl+Shift +RightMouseBtn
  • Віднімайте стовпці з вибору: Alt+Shift+RightMouseBtn
  • Додайте окремі курсори: Ctrl +LeftMouseBtn
  • Видаліть окремі курсори: Alt +LeftMouseBtn

Мак

  • Клацніть та перетягніть, щоб вибрати стовпці: Option⌥ +LeftMouseBtn
  • Додайте інші колонки до вибору, натиснувши та перетягнувши: Option⌥+LeftMouseBtn
  • Віднімайте стовпці з вибору: Cmd⌘+ Option⌥+shift +LeftMouseBtn
  • Додайте окремі курсори: Cmd⌘ +LeftMouseBtn
  • Видаліть окремі курсори: Cmd⌘+ Option⌥+ shift+LeftMouseBtn

Потім відредагуйте за потребою. У вашому випадку введіть 0,x .

Ви також можете переходити до необхідності до кінця чи початку слів, вибирати слова та оточувати лапки чи дужки тощо.


Список літератури:



3

Я не впевнений, що це можливо "поза коробкою". І, на жаль, я також не знаю відповідного плагіна. Для вирішення запропонованої вами проблеми можна використовувати регулярні вирази.

  1. Cmd + F (Знайти)
  2. Regexp: [^ ]+(або \d+, або що завгодно більше)
  3. Варіант + F (Знайти всіх)
  4. Відредагуйте його

Клавіші швидкого доступу можуть відрізнятися залежно від вашої ОС та особистих переваг (мої стосуються ОС X).


Не потрібен плагін. Використовуйте Alt + Enter наприкінці для Linux.
еломаж

2

Я зіткнувся з тією ж проблемою в Linux, що я зробив, це вибрати весь вміст (ctrl-A), а потім натиснути ctrl + shift + L, це дає курсор у кожному рядку, а потім ви можете додавати подібний вміст до кожного стовпця .

Також ви можете виконувати інші операції, такі як вирізати, скопіювати та вставити стовпчик.

PS: - Якщо ви хочете вибрати прямокутний набір даних з тексту, ви також можете натиснути зсув і утримувати праву кнопку миші, а потім вибрати дані прямокутним способом. Потім натисніть CTRL + SHIFT + L, щоб отримати курсор у кожному рядку.


2

Windows: Я віддаю перевагу Alt + F3 для пошуку рядка та зміни всіх екземплярів рядка пошуку одразу.

http://www.sublimetext.com/docs/selection


Alt + F3 працює і в Linux, і з Sublime Text 3. Це швидкий і простіший спосіб редагування одного і того ж рядка у файлі.
kiamlaluno

2

У Windows я віддаю перевагу Ctrl+ Alt+ Down.

Він вибирає рядки по одному і автоматично запускає режим багаторядкового редактора. Це трохи швидше. Якщо у вас є багато рядків для редагування, то вибір тексту та Ctrl+ Shift+ L- кращий вибір.


0

ctrl + shift + клацання правою кнопкою миші працює так краще


-1

Добре вручну вибирати кожне число для невеликого набору чисел, як у вашому прикладі, але для більших колекцій ви можете здійснити пошук по регулярному вираженню, який зробить роботу за вас.

Ctrl+ Fвідкриє панель пошуку.

Пошук у Regex вмикається натисканням кнопки ". *" В лівій крайній частині.

Введіть "\ d +", щоб шукати всі випадки з 1 або більше цифр. Натиснувши кнопку "Знайти всіх", виберіть кожне з цих номерів окремо.

Тоді ви можете використовувати Ctrl+ Shift+ Lдля перетворення вибору у кілька курсорів. Звідси ви можете робити як завгодно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.