Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Vimscript 中的坑

Vimscript 中的坑

作者头像
mzlogin
发布于 2020-04-16 07:31:53
发布于 2020-04-16 07:31:53
5650
举报
文章被收录于专栏:闷骚的程序员闷骚的程序员

本文内容为学习 「笨方法学 Vimscript」 过程中,觉得 Vimscript 语法中与所掌握的其它语言的定义有明显区别,需要特别记忆的内容。

  1. 使用 == 进行字符串比较是否忽略大小写与用户的设置相关。 比如 "foo" == "FOO" 在 &ignorecase 为 1 时,结果为 True; 在 &ignorecase 为 0 时,结果为 False。 最佳实践:总是使用 ==?==# 来指定忽略还是不忽略大小写。
  2. 当字符串转换为整形时,以数字开头的字符串会转换为整数,非数字开头的将转换为 0。 比如 10.10 将被转换成 10。
  3. 没有作用域限制的函数名必须以大写字母开头。
  4. 传给函数的参数需要带作用域前缀才能使用。 function FunA(name) echom 'Your name is ' . a:name endfunction
  5. + 不能用来连接字符串,它们将被转换为整形然后相加。 比如 "1flower" + "1world" 的结果为 2。 所以有连接字符串需求使用连接符 . 吧!另外注意 10.1 . "hello" 会报错 using Float as a String,有这种需求的话建议写成 "" . 10.1 . "hello"
  6. 列表和字符串的切片操作代表的下标区间是 [m, n],而不是像 Python 那样是 [m, n)。 比如 ['a', 'b', 'c', 'd'][0:2] 在 Python 里结果将为 ['a', 'b']; 而在 Vimscript 里结果将为 ['a', 'b', 'c']
  7. 如果一个 Vimscript 变量要引用一个函数,即它的类型为 Funcref,它就要以大写字母开头;引用函数的列表的命名不受此限制。 "let myFunc = function("len") let MyFunc = function("len") 如果像注释掉的那行那么写会报错 E704: Funcref variable name must start with a capital: myFunc
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015/10/31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Vimscript 中的坑
本文内容为学习 过程中,觉得 Vimscript 语法中与所掌握的其它语言的定义有明显区别,需要特别记忆的内容。
零式的天空
2022/03/28
3220
python 函数式编程 sorted
排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是字符串或者两个dict呢?直接比较数学上的大小是没有意义的,因此,比较的过程必须通过函数抽象出来。
葫芦
2019/04/17
3870
Guava-1.5 类Ascii
从属于ASCII字符的静态方法,也属于包含这些字符的字符串。 ASCII也被用于这个包的其他类中:
悠扬前奏
2019/05/30
5410
vim 个性化设置
Vimscript,一门用于定制Vim的脚本语言。它其实就是 Vim命令。如,在Vim中,保存一个文件使用命令:write(或者缩写 :w)并回车确认。在Vimscript中,使用write实现文件保存功能。
PedroQin
2019/12/18
1.6K0
vim 个性化设置
Python|Python基本数据类型
字符串类型 str 是常用的数据类型之一,开发者可以使用引号(单引号或双引号)来创建字符串。创建python字符串的方法非常简单,只需为变量分配一个值即可。
Java小技巧
2022/05/23
6610
Python|Python基本数据类型
Sorted
Python内置的sorted()函数就可以对list进行排序 sorted()也是一个高阶函数。用sorted()排序的关键在于实现一个映射函数,也就是key函数
py3study
2020/01/17
3690
java string 比较前几个字符_Java基础之字符串详细比较
String类包括了几个用于比较字符串或字符串内子字符串的方法。下面分别对它们进行介绍。
用户7886150
2021/04/29
2.2K0
Python-map、reduce、fi
map函数接受两个参数,一个是函数,一个是Iterable(迭代对象),map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。
py3study
2020/01/15
8550
SQL排序(二)
InterSystems SQL提供了排序规则功能,可用于更改字段的排序规则或显示。
用户7741497
2022/06/06
1.7K0
『Go 内置库第一季:strings』
这一季的系列主题,主要围绕内置库进行。如果一个人写的代码比你的赞,那么他对内置库的熟悉程度一定比你强。
谢伟
2018/12/05
4840
全栈工程师看过来!PHP Javascript语法对照、速查
全栈工程师看过来,学的计算机语言多了,往往会把不同语言的各个函数搞混。作为一个全栈PHPer,往往PHP、JavaScript 语法傻傻分不清楚,百度一下,查手册要网速。不如收藏下这篇文章,打印出来,贴到一旁快速查阅。
很酷的站长
2022/12/01
3.6K0
Python中sort与sorted函数
python中列表的内置函数sort()可以对列表中的元素进行排序,而全局性的sorted()函数则对所有可迭代的序列都是适用的;
全栈程序员站长
2022/11/15
7210
【JavaScript】 基础
简称JS,是一种浏览器解释型语言,嵌套在HTML文件中交给浏览器解释执行。主要用来实现网页的动态效果,用户交互及前后端的数据传输等。
杨丝儿
2022/02/24
2.2K0
【JavaScript】 基础
【Go 语言社区】Go学习笔记:json处理
Encode 将一个对象编码成JSON数据,接受一个interface{}对象,返回[]byte和error: func Marshal(v interface{}) ([]byte, error) Marshal函数将会递归遍历整个对象,依次按成员类型对这个对象进行编码,类型转换规则如下: bool类型 转换为JSON的Boolean 整数,浮点数等数值类型 转换为JSON的Number string 转换为JSON的字符串(带""引号) struct 转换为JSON的Object,再根据各个成员的类
李海彬
2018/03/20
2.2K0
SQL函数 UPPER
UPPER 函数将所有字母字符转换为大写字母。这是 LOWER 函数的反函数。 UPPER 保留不变的数字、标点符号和前导或尾随空格。
用户7741497
2022/08/02
1.1K0
字母大小写转换
从键盘输入一个字符串,如何实现大小写字母反转,小写英文字母转换为大写英文字母,大写字母转换为小写字母、首字母大写和把第一个字母转换为大写其余为小写字母,并将其结果保存到一个文件中。
算法与编程之美
2023/11/30
3090
字母大小写转换
Python变量:创建、类型、命名规则和作用域详解
变量可以具有短名称(如x和y)或更具描述性的名称(age、carname、total_volume)。Python变量的规则如下:
小万哥
2023/09/18
7050
Python变量:创建、类型、命名规则和作用域详解
正则表达式
一、概述 正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用作按照“给定模式”匹配文本的工具。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。 JavaScript通过内置对象RegExp支持正则表达式,有两种方式创建正则表达式对象。例如,如果我们想匹配字符串中所有"at"的实例,可以这么写: 第一种:使用字面量,以斜杠表示开始和结束。 var
小胖
2018/06/27
5650
SQL语言元素(一)
InterSystems SQL命令(也称为SQL语句)以关键字开头,后跟一个或多个参数。其中一些参数可能是子句或函数,由它们自己的关键字标识。
用户7741497
2022/06/02
1.5K0
50个Pandas的奇淫技巧:向量化字符串,玩转文本处理
对于文本数据的处理(清洗),是现实工作中的数据时不可或缺的功能,在这一节中,我们将介绍Pandas的字符串操作。Python内置一系列强大的字符串处理方法,但这些方法只能处理单个字符串,处理一个序列的字符串时,需要用到for循环。
小小詹同学
2022/11/18
6.2K0
50个Pandas的奇淫技巧:向量化字符串,玩转文本处理
相关推荐
Vimscript 中的坑
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档