Нажатие p
вещи вставок ревут текущую строку, dit
удаляет вещи в тегах HTML. Как я вставляю что-то в тегах HTML?
Nor here
<p>I want to paste something here</p>
Not here
Результат нажатия P
и p
зависит от того, что у вас есть в выбранном регистре в данный момент. Если вы удалили или выдернули одну или несколько целых строк (например, с помощью команд dd
, Y
или Vd
), то нажатие P
вставит содержимое вашего регистра на line выше текущей строки, тогда как p
вставит на строку ниже курсора.
Если вы удалите или выдернете участок текста меньше строки (например, с помощью команд D
или yw
), то P
вставит содержимое вашего регистра непосредственно перед текущей позицией курсора, а p
вставит непосредственно после курсора (то есть на той же строке).
Если это поможет, можно считать, что выделение по строке аналогично block html-элементам (таким как Итак, чтобы ответить на ваш вопрос: это зависит от ситуации. Предположим, что у вас в регистре есть линейный участок текста, то перед операцией вставки вы захотите разбить целевой тег на две строки. В вашем примере вместо того, чтобы выполнить Если вы не хотите разбивать тег на несколько строк, то вам нужно убедиться, что вы выделили в регистр посимвольный выбор. Затем вы можете выполнить: span
).
dit
для удаления содержимого тега, выполните cit
для удаления того же участка и перехода в режим вставки. Нажмите return
один раз, чтобы вставить новую строку, затем esc
, чтобы вернуться в обычный режим, затем P
, чтобы вставить ваш регистр через строку над строкой с закрывающим тегом. "_ditP
"_
удаляет текст в регистр black hole, гарантируя, что он не перезапишет то, что находится в вашем регистре по умолчанию. dit
удаляет содержимое тега, а P
вставляет содержимое вашего регистра по умолчанию перед позицией курсора.
Я обычно просто выполняю vitp
, который визуально выделяет внутреннее содержимое тега, а затем вставляет его поверх что выбрано.
У меня работает.
удалите текущее содержимое между тегами с помощью команды
cit
, которая «изменится в тегах» и как только это содержимое пропал, вы можете вставить средним щелчком или, если вам нужно вернуться в командный режим и использовать свой обычный p / etc.
Ответ одинаков для всех языков с поддержкой оптимизации хвостового вызова и поддержкой первоклассных функций (типов функций): так легко эмулировать циклические структуры.
let rec x = seq { yield 1; yield! x};;
Это самый простой способ эмулировать эту структуру, используя лень последовательности. Конечно, вы можете взломать представление списка, как описано здесь .
-121--4112661-На основе ответа Карра я сделал этот небольшой метод полезности:
private static string ToDelimitedString(string input, int position, string delimiter)
{
StringBuilder sb = new StringBuilder(input);
int x = input.Length / position;
while (--x > 0)
{
sb = sb.Insert(x * position, delimiter);
}
return sb.ToString();
}
Вы можете использовать его так:
string result = ToDelimitedString("F4194E7CC775F003", 4, "-");
И тестовый случай:
[Test]
public void ReturnsDelimitedString()
{
string input = "F4194E7CC775F003";
string actual = ToDelimitedString(input, 4, "-");
Assert.AreEqual("F419-4E7C-C775-F003", actual);
}
-121--3926311- vitp
должен обрабатывать линейную пасту.
Вы можете нажать" v
"для визуального отображения, затем перейдите туда, где находится курсор, и нажмите p
или P
.