如何使用 vim 使用命令删除所选行的前几个字符?

如何使用 vim 使用命令删除所选行的前几个字符?

如何删除前几个字符,例如删除使用命令从选定的行中?我切换到插入模式,但不知道该怎么做。

;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_fileinfo.dll
;extension=php_ftp.dll
;extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_exif.dll      ; Must be after mbstring as it depends on it
;extension=php_mysqli.dll
;extension=php_oci8_12c.dll  ; Use with Oracle Database 12c Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll

答案1

  1. 将光标置于第一个或最后一个;
  2. Ctrl+v进入视觉块模式
  3. 使用箭头键 或j,k选择;要删除的字符(或其他“前几个字符”)
  4. x一下即可将其全部删除

答案2

通常你会在 ex 模式下执行此操作,例如,如果这是整个文件,你可以这样做

:%s/^;//

删除所有前导分号。

当然,如果还有其他几行你不想修改,那就变得更复杂了。

答案3

techraf的答案对我有用。另一种选择是使用 vim 的 :norm-命令。

  1. 将光标置于第一行
  2. 按此键Shift+V进入视线模式
  3. 16j选择当前行以下 16 行
  4. 类型:norm ^x

:进入命令模式,norm指定将在所有行上执行的命令,^转到行的开头,并x删除第一个字符。

相关内容