Удалите грязный ведущий пробел в Vim на Mac OS X

Не обязательно более простой, но различный путь, если Вы более знакомы с семьей ре.

import re, string
s = "string. With. Punctuation?" # Sample string 
out = re.sub('[%s]' % re.escape(string.punctuation), '', s)
5
задан Peter Mortensen 6 May 2011 в 16:34
поделиться

5 ответов

Используйте команду : set paste перед вставкой текста. Это отключает автоотступ и другие вещи, которые могут мешать вставке. Чтобы восстановить нормальную работу, используйте : установить nopaste .

17
ответ дан 18 December 2019 в 08:30
поделиться

Или используйте : r! Pbpaste - который вставляет вывод команды pbpaste (который является текущим буфером вставки) под текущим линия; не нужно возиться с режимами и тому подобным.

2
ответ дан 18 December 2019 в 08:30
поделиться

Если нужно, вы можете просто использовать cat (1) :

$ cat > newfile.py
Paste the code here, then press Ctrl-D for EOF.
Make sure to type EOF on an otherwise empty line
or bad things will happen to your children.
$ vi newfile.py

Должно работать.

1
ответ дан 18 December 2019 в 08:30
поделиться

Помимо уже упомянутой команды : set paste , вы всегда можете выполнить "+ p , чтобы вставить содержимое буфера обмена в текущий местоположение. Я не использовал Vim в Mac OS X, но уверен, что это все еще актуально. В Linux есть "* p для буфера обмена выбора и " + p для буфера обмена для копирования и вставки; в Windows они оба указывают на системный буфер обмена. "+ p сначала выглядит немного странно, но как только вы привыкнете использовать этот тип команда, становится очень быстро. В качестве альтернативы вы можете использовать : put + , чтобы сделать то же самое.

:help quote
:help put
:help :put
:help registers
0
ответ дан 18 December 2019 в 08:30
поделиться

Если бы вы использовали emacs, это было бы просто: Mx mark-all-buffer и Mx indent-region .

-1
ответ дан 18 December 2019 в 08:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: