为啥当我将文本从浏览器复制并粘贴到文件时,Vim 会再次缩进每一行?

     2023-02-26     235

关键词:

【中文标题】为啥当我将文本从浏览器复制并粘贴到文件时,Vim 会再次缩进每一行?【英文标题】:Why does Vim indent every line once more when I copy and paste text from my browser to a file?为什么当我将文本从浏览器复制并粘贴到文件时,Vim 会再次缩进每一行? 【发布时间】:2019-11-04 19:46:46 【问题描述】:

当我将一些文本从浏览器窗口复制到我正在使用 Vim 编辑的文件中时,为什么会出现这种情况?如何让线路正确排列?

from django.db import models
from django.contrib.gis.db import models

# Create your models here.
class WorldBorder(models.Model):
        # Regular Django fields corresponding to the attributes in the
            # world borders shapefile.
                name = models.CharField(max_length=50)
                    area = models.IntegerField()
                        pop2005 = models.IntegerField('Population 2005')
                            fips = models.CharField('FIPS Code', max_length=2)
                                iso2 = models.CharField('2 Digit ISO', max_length=2)
                                    iso3 = models.CharField('3 Digit ISO', max_length=3)
                                        un = models.IntegerField('United Nations Code')
                                            region = models.IntegerField('Region Code')
                                                subregion = models.IntegerField('Sub-Region Code')
                                                    lon = models.FloatField()
                                                        lat = models.FloatField()
                                                             # GeoDjango-specific: a geometry field (MultiPolygonField)
                                                                mpoly = models.MultiPolygonField()
                                                                     # Returns the string representation of the model.
                                                                       def __str__(self):              # __unicode__ on Python 2
                                                                                    return self.name

【问题讨论】:

Turning off auto indent when pasting text into vim的可能重复 【参考方案1】:

您可能打开了autoindentcindent。当您选择其中一个选项时,Vim 不知道粘贴到终端的换行符和您自己输入的换行符之间的区别。因此,当您粘贴换行符时,Vim 会缩进该行,然后您还会粘贴空格以提供额外的缩进,以此类推,直到您在屏幕上超出您想要的范围。

解决方法是使用:set paste设置粘贴模式再粘贴,然后:set nopaste关闭粘贴模式。在粘贴模式下,Vim 不会自动缩进行,因此将大量行粘贴到终端不会导致缩进不断增加。

如果您的特定平台上有支持剪贴板的 Vim,您也可以使用 "*"+ 寄存器进行粘贴(例如,使用 "*p 进行粘贴),这也不会有这个问题。

【讨论】:

实现相同结果的另一种方法::set noai 禁用autoindent 模式,:set ai 再次启用它

当我从excel复制并粘贴到记事本时,每个引号后都有额外的引号

】当我从excel复制并粘贴到记事本时,每个引号后都有额外的引号【英文标题】:ExtraquotesaftereveryquoteswhenIcopyandpastetonotepadfromexcel【发布时间】:2016-04-2910:23:21【问题描述】:我将以下文本存储在工作表的单元格中<tronmouseove... 查看详情

一文搞懂vim复制粘贴(代码片段)

...ttps://liushiming.cn/2020/01/18/copy-and-paste-in-vim/概述复制粘贴是文本编辑最常用的功能,但是在vim中复制粘贴还是有点麻烦的,有一点学习成本。本文总结了使用vim复制粘贴的典型场景和使用方法,希望对读者有帮助。vim内部复制、粘... 查看详情

linux下vim如何全选复制?

在VIM里怎么全选复制,然后粘贴到浏览器里??网上说什么ggVG+y是什么意思?比如有一下文本qwertasdfgvbhjtyu我怎么快捷键把它全部选中然后复制??具体按哪个键输入什么?我知道gg是命令(光标到文件首处),,那VG是什么意思... 查看详情

从 xlsm 复制并粘贴到 csv

...帮我弄清楚为什么它不会粘贴到它复制的相同单元格中。当我逐步运行宏时,它可以完美运行,但是当它自己运行时,它会将所有数据粘贴到A列中。Sheets("Input").Se 查看详情

Vim 在复制粘贴时缩进每一行代码

...copying-pasting【发布时间】:2017-04-2713:45:09【问题描述】:当我在Vim中复制并粘贴一段代码时,每一行都会缩进一个。例如,我有这个来源:print"Hello"print"World"print"I\'mcopying"print"andpasting"粘贴到Vim时会变得混乱:print"Hell 查看详情

从剪贴板粘贴代码时,Vim 会放置很多制表符 [重复]

...2015-06-1222:55:41【问题描述】:我从github页面复制了代码。当我将它粘贴到我的vim编辑器时,它会为每个缩进块放置四个tabcharacters。看起来像这样,由于.vimrc中的setlist,所有制表符都 查看详情

vim 下粘贴复制,如何做到最快

...常用的一些场景:需要从别的地方复制粘贴到vim里,比如浏览器上的一段代码;在vim中,同一个文件,从一处复制粘贴到另一处;第一种场景可以通过ctrl+c和ctrl+v粘贴,但是会有效率问题,如果大量文本粘贴会很慢甚至导致vim卡... 查看详情

vim文本编辑工具

4文本编辑工具VimVim是vi的升级版,编辑文本时vi不会显示颜色而vim会显示颜色。安装vim工具#yum install –y vim-enhanced Vim有三种模式:一般模式、编辑模式和命令模式4.1.1一般模式Ctrl+z退出vim编辑一般模式下,可以... 查看详情

闪烁:从闪烁复制并粘贴到记事本中会丢失新行

...【问题描述】:我在我的WPF应用程序中使用Scintilla控件。当我打开应用程序并在Scintilla控件中键入内容时,然后从控件中复制一些文本(不将其保存在对象中),并将其粘贴到记事本中,它工作正常。例如: 查看详情

vim复制和粘贴内容(代码片段)

vi编辑器可以在编辑模式和命令模式下复制文本。常用的复制文本的命令如表1所示。表1:命令模式下常用的文本复制命令文本复制命令命令的意义文本复制命令命令的意义yy复制光标所在的整行y复制到上一段的开始Y或 y$复... 查看详情

我有一个 vim 配置。但是,当我粘贴文本时

】我有一个vim配置。但是,当我粘贴文本时【英文标题】:Ihaveavimconfig.However,whenIpastetext【发布时间】:2010-12-0612:52:21【问题描述】:我做“设置:粘贴”这将使我可以很好地将文本粘贴到腻子中。但是,我原来的配置中的“智... 查看详情

用securecrt登陆linux服务器,从windows复制到vi/vim编辑的文件中,会在行首多很多缩进和空格

...ctrl+c复制,不知道是哪里设置的不对secureCRT会将你原来的文本原封不动的按照字符串的样式发送给服务器。所以当你的服务器上的vim设置为autoindent的话,在i模式下,那么它会将secureCRT传输而来的这些字符串再进行一下缩进。若... 查看详情

vim快速复制多行(代码片段)

...多行,然后粘贴。 这样做:1.将光标移动到要复制的文本开始的地方,按v进入可视模式。2.将光标移动到要复制的文本的结束的地方,按y复制。此时vim会自动将光标定位到选中文本的开始的地方,并退出可视模式。3.我移动... 查看详情

Vim - 在可视模式下复制/粘贴时保留上次复制的文本

】Vim-在可视模式下复制/粘贴时保留上次复制的文本【英文标题】:Vim-Preservelastcopiedtextwhencopy/pastinginvisualmode【发布时间】:2013-09-1419:34:25【问题描述】:我想更改在可视模式下粘贴文本的默认(和愚蠢)行为。以下是当前的步... 查看详情

从 Apache Zeppelin 复制/粘贴时不保留换行符

...lin(MacOS10.14.6、GoogleChrome、pyspark、Python3.6.8)中打印CSV,当我将结果复制并粘贴到另 查看详情

vim编辑命令

使用vim创建修改文件vim文本编辑器格式vim[[/目录/]文件名]三种模式命令模式输入模式(插入模式)输入内容末行模式保存并退出要在相应的模式敲相应的命令命令模式按i进入输入模式(按Esc返回命令模式)按:从命令模式到末行... 查看详情

从浏览器地址栏中复制 URL 并使用 html 粘贴到表单中?

】从浏览器地址栏中复制URL并使用html粘贴到表单中?【英文标题】:CopyURLfrombrowseraddressbarandpastingintoformusinghtml?【发布时间】:2012-03-2508:44:35【问题描述】:我希望创建一个表面上非常基本的在线表单。目标是创建一个带有提交... 查看详情

为啥当我将数字添加到字符串时,它会在 C++ 中显示随机文本?

】为啥当我将数字添加到字符串时,它会在C++中显示随机文本?【英文标题】:Whywheniaddnumbertostringitshowsrandomtextinc++?为什么当我将数字添加到字符串时,它会在C++中显示随机文本?【发布时间】:2016-11-0312:18:45【问题描述】:当... 查看详情