Вставить столбец текста с возвышенным текстом 3


26

Как вырезать и вставить столбец текста в Sublime text 3 -

Например:

Файл А

Alpha
Beta
Gamma
Delta

Файл Б

AAA
BB
CCCCC

Я хочу закончить с файлом B, имеющим

Alpha AAA
Beta  BB
Gamma CCCCC
Delta

Ответы:


14

Сначала выберите строки в файле B, которые вы хотите скопировать. Обратите внимание на количество строк (это должно отображаться в нижней части экрана). Это количество строк X. Скопируйте эти строки.

Во-вторых, выберите первые X строк файла A, чтобы в конце был курсор. Для этого переместите курсор в конец первой строки, перейдите в меню выбора и используйте ярлык «Добавить следующую строку», пока не будет выбрано X строк. На OSX его управление-сдвиг. В этом примере в конце файла A будет 3 курсора, которые выглядят так:

Alpha|
Beta|
Gamma|
Delta

Наконец, нажмите Tab один раз, затем вставьте свои строки. Вы должны иметь результаты, которые вы хотите.

Благодаря тому, как это делается, легче вставить его в файл A. Однако, если вы действительно хотите вставить файл B или другой файл, просто скопируйте строки из файла A в целевой файл перед началом и выполните команду тот же процесс.


1
Я принимаю ваш ответ, поскольку он отвечает на мой вопрос, как указано. К сожалению, я действительно хотел чего-то более похожего на вставку столбца, доступную в других редакторах, таких как Notepadd ++ или Visual Studio, но похоже, что в Sublime нет простого способа сделать это. Я не думаю, что ваше решение будет работать, если я хочу вставить столбец в середине строки, а не в конце. Кроме того, я получил некоторые странные результаты для окон, когда попытался расширить выделение линий с помощью рваного набора линий. У меня не было времени, чтобы исследовать это дальше сейчас.
Майк поддерживает GoFundMonica

Искал этот ответ, не мог сделать это с возвышенным, атомным, визуальным студийным кодом; однако Visual Studio выручил благодаря вашему комментарию!
oyalhi

16

Выберите и скопируйте строки в файле B, который вы хотите скопировать. Перейдите в файл A, выберите строки, в которые вы хотите скопировать. Нажмите Ctrl + Shift + L, чтобы разделить выделение на выделение из нескольких строк, переместите курсоры туда, куда вы хотите, и вставьте.

Единственным ограничением является то, что курсоры будут сохранять свои относительные позиции, вы можете не захотеть этого. Возможно, вы хотите, чтобы они все оставались в фиксированной колонке.

Удерживая нажатой среднюю кнопку мыши, перетащите курсор, чтобы выделить один или несколько столбцов текста, снова нажмите Ctrl + Shift + L, чтобы разбить выделенный фрагмент на строки и продолжить, как и раньше.


1
Фантастика! Спасибо. Для тех, кто на Mac: используйте Command-Shift-L, чтобы получить Selection> Split to Lines. Также, возможно, стоит добавить, что «перемещать курсоры туда, куда вы хотите» обычно означает «нажать клавишу со стрелкой вправо» :).
Сэм Даттон

Это намного лучше, чем принятый ответ.
UnclickableCharacter

2
Я думаю, что чего-то не хватает: каждый раз, когда я вставляю, полное содержимое Bпоявляется в каждом выбранном месте A.
Мартин Р.

1
@MartinR. Это происходит, если количество выбранных строк не соответствует количеству вставленных строк.
juanitogan

1
@juanitogan Спасибо! Ваш комментарий спас мою задницу. Я не понимал, что это так важно, чтобы скопированное количество строк соответствовало целевому числу строк вставки.
elbowlobstercowstand

9

Этапы:

  1. Перейдите в Файл B и введите множественный выбор ( + + LИЛИ Ctrl+ shift+ L) в

    AAA
    BB
    CCCCC
    

    убедитесь, что выбрано все, а не только части строк, которые вы хотите скопировать.

  2. В режиме множественного выбора скопируйте ( + CИЛИ Ctrl+ C)

    AAA|
    BB|
    CCCCC|
    
  3. Перейдите к файлу A и убедитесь, что вводите множественный выбор на одном и том же количестве строк (в данном случае 3).

    Alpha|
    Beta|
    Gamma|
    Delta
    
  4. Вставить ( + VИЛИ Ctrl+ V) и вуаля :)

Дайте мне знать, если это работает для вас!


Это сработало идеально для меня.
jefffan24

@ jefffan24 хорошо, спасибо, что дали мне знать!
Q8i

@ Q80, я задал дополнительный вопрос superuser.com/q/930035/319136 , Не могли бы вы ответить, если знаете решение, пожалуйста? Thx
Nehemiah

Точное количество строк является ключевым здесь, спасибо!
Андрей

2

Немного поздно, но нашел этот пакет на форуме SublimeText под названием Paste as Column. Вы можете найти его в Package Control.

Работает хорошо, по крайней мере, достаточно, чтобы получить данные в нужной области

RE: Оригинальная страница форума: https://www.sublimetext.com/forum/viewtopic.php?f=4&t=10008.


намного проще. Работает на ST3 и Mac тоже. Примечание: после установки вы используете его, щелкнув правой кнопкой мыши в нужном месте и выбрав в Paste in Columnправой верхней части выпадающего меню. Другой пункт, который ST3, по цене, действительно должен включать в себя и документ из коробки. Не удалось заставить работать CTRL / Command-Shift-L, или, по крайней мере, я недостаточно хорошо это понял.
JL Peyret

0

Я нашел простое решение в руководстве

Я просто использовал среднюю кнопку мыши (см. Руководство по другим параметрам), чтобы выбрать точку вставки, а затем набрал то, что хотел (или вставил), и это сработало.


0

перейдите к файлу B -> сделать многострочное выделение, что в макросах может быть сделано с помощью option и мыши нажмите и перетащите.

перейти к файлу A -> сделать многострочное выделение и вставить.

Что меня смущало в предыдущих ответах, так это то, как сделать выделение в файле B. Я делал cmd + A, выбирая все.

Таким образом, единственное из очевидного здесь - это сделать многострочное выделение в файле B.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.