这两个变量的值可以使用如下命令查看: :echo $VIM :echo $HOME VIM 是 Vim 安装目录, VIM 可写为 vim, 不区分大小写, HOME 是用户目录, Windows 版的 set cursorline " 开启自动缩进 set autoindent " 智能缩进 set smartindent " 编辑时按一个 Tab 键相当于输入4个空格 set tabstop=4 " 格式化时缩进尺寸为 这里我们根据一个例子, 来理解 Vim 的按键映射. 在命令模式下执行下面的命令可以将 F3 映射为一个功能: 在文件最底部输入文件名. :map <F3> GoFile Name: <Esc>"%p 在命令模式下输入上述命令, 回车, 然后在普通模式下按 F3, 你会发现文件底部输入了当前文件名, 很神奇吧. 接下来解释一下上面的命令干了什么: 首先使用 map 命令进行按键映射, 要映射的键是 <F3>, 然后空格后面的内容就都是新的按键序列了, G 移动到最后一行, o 开始一个新行并进入插入模式, 然后插入文本
vim使用
3.1 Vim 简介 功能: 命令行模式下的文本编辑器。 根据文件扩展名自动判别编程语言。支持代码缩进、代码高亮等功能。 使用方式:vim filename 如果已有该文件,则打开它。 粘贴模式 :set paste 设置成粘贴模式,取消代码自动缩进 :set nopaste 取消粘贴模式,开启代码自动缩进 :set nu 显示行号 :set nonu 隐藏行号 gg=G:将全文代码格式化 : 强制保存并退出 ---- 3.8 异常处理 Ctrl + q:当vim卡死时,可以取消当前正在执行的命令 每次用vim编辑文件时,会自动创建一个.filename.swp的临时文件。
在上一篇中,我们提到vim的几种模式,并且给出了一些基本的操作命令,包括移动光标,删除、替换操作。并且给出了几个重要的公式,理解这个公式对于理解vim和提高使用vim的效率来说至关重要。 位置 我们也可以使用 t 来跳转光标到搜索的字符处,它与 f 的区别在于 f 直接跳转光标到指定字符处,t 跳转光标到指定字符的前一个位置 例如使用 tr 跳转到第一个r的左边 使用3tr 要解释这个问题,我们先看一个例子 例如使用 3gg 可以跳转到文件的第三行。 进入插入模式插入对应字符 使用$ 跳转到行尾,使用 i 进入插入模式进行修改 从上面的例子来看,使用 f t 之类的指令相比使用 l、w 更加高效,毕竟数单词个数和字符格式是很低效而且容易出错的 例3: 这就涉及到vim中一个非常重要的概念——文本对象 还记得最开始我们说过,vim将文本分为 字符、单词、句子、段落嘛,这可不是为了方便而人为划分的,而是vim在处理文本的时候就是真么做的。
一、%格式化 1.整数输出 %d # 十进制 %o # 八进制 %x # 十六进制 print("%d"%23) # 23 print("%o"%23) # 27 print("%x"% 2.3333) #2.333300 print("%.2f"%2.8888) #2.89 四舍五入 print("%e"%2.3333) #2.333300e+00 print("%.3e #2222.33 print("%g"%22888822.3333) #2.28888e+07 print("%.7g"%2222.8888) #2222.889 .7是有效数字的个数 print("%.3g 通过下标或key值匹配参数 c1 = [2, 3, 4] c2 = [5, 6, 7] print('{} {} {}'.format(c1[0],c1[1],c1[2])) # 2 3 4 print ('{0[1]} {0[2]} {1[1]}'.format(c1, c2)) # 3 4 6 6.
mug =("我的名字%s,我的年龄%d,我的身高%d")%(name,age,height) print(mug 在格式化输出中 1,3>4 or 4<3 and 1==1 2,1 < 2 and 3 < 4 or 1>2 3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1 4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8 5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 记住 : x or y , x为真,值就是x,x为假,值是y; x and y, x为真,值是y,x为假,
1.2检查环境 1.检查vim版本,如果没有“+python3”关键字,则需要升级vim # 可见vim版本为7.4 [root@drp-monitor-20210426165633-mojh ~]# :指定VIM将要安装到的路径 (自行创建) #python3/dyn 含义如下,表示同时支持python2和python3 No Python support (-python, -python3) Python 2 support only (+python or +python/dyn, -python3) Python 3 support only (-python, +python3 or +python3 plugin indent on 2).vundle安装插件 # 1)vim命令进入vim程序 # vim # 2)命令模式下执行:PluginList列出你所有的插件 :PluginList # 3) git submodule sync git submodule update --init --recursive #Q3:报错3--缺少动态链接库 #A3:下载python源码包,重新编译,并复制到指定目录
使用 format 方法,可以很方便的对字符串进行格式化输出 1. name is {name}, {name} age is {age}'.format(name='wang',age=10) >>> 'my name is wang, wang age is 10' 3. 10} 'my name is {name}, {name} age is {age}'.format(**msg) >>> 'my name is wang, wang age is 10' 5.设置格式化的输出宽度 '1.236913e+10' # 根据数字位数选择输出格式 '{0:g} {1:g}'.format(12369132698,12.2) >>> '1.23691e+10 12.2' 传统 % 格式化备忘
什么不会,就 `:help` 什么 - 命令有完整和简写两种模式 - `:help` 和 `:h` - `:quit` 和 `:q` - 注意`:`是左右手小拇指配合输入的 - `vim # 用 `vi` 打开一个 `oeasy.txt` ```bash vi oeasy.txt ``` - 我们可以看到在`标准屏幕(80*24)`上 - 显示出了 `oeasy.txt` - 当前 `vim [vim_oeasy](https://labfile.oss.aliyuncs.com/courses/2840/vim_oeasy.png) - 我怎么才能知道 vim 当前编辑的是哪个文件呢? - `:fi` - `:f` - 使用 <kbd>ctrl</kbd>+<kbd>G</kbd> 也有同样的作用 ## 总结 - 我们制作了 `oeasy.txt` - 我们用 `vim
打开文件 回忆上节课内容 什么不会,就 :help 什么 命令有完整和简写两种模式 :help 和 :h :quit 和 :q 注意:是左右手小拇指配合输入的 vim 有 6 种基本模式 但是我们还没有打开过文件 oeasy.txt 的内容 cat oeasy.txt 打开 用 vi 打开一个 oeasy.txt vi oeasy.txt 我们可以看到在标准屏幕(80*24)上 显示出了 oeasy.txt 当前 vim 处于 正常模式(Normal mode) 我怎么才能知道 vim 当前编辑的是哪个文件呢? 输入命令 :h :file,查一下 :f[ile]可简写为 :fi :f 使用 ctrl+G 也有同样的作用 总结 我们制作了 oeasy.txt 我们用 vim 打开了 oeasy.txt 我们分析了
比较好用的vim,gedit。 注:vi和vim的关系:vim是vi的升级版,推荐使用vim。 vi里面所有操作都只能使用指令,包括像我们的退格键之类都不能用,现在我们都不使用这种古老的了,我们在后面提到vi时,其实都是指vim。 * 行删除 命令模式下,先将光标移动到要删除的行,然后输入dd 如果要删除连续多行,譬如要删除连续的3行,使用3dd * 行复制粘贴 复制:命令模式下,nyy (n是行号) 粘贴:命令模式下,p 细节, 这里稍微注意一下:如果我们在vi编辑器中不能使用方向键,按下方向键后变成了字母,那么我们需要卸载重装一下vim编辑器就能解决。 apt-get remove vim apt-get install vim 这样的话就行了。 这里顺带说一下Linux中的用户和权限管理。 特权用户是系统的管理员,对系统内所有文件具有操作权限。
# -*- coding:utf-8 -*- #用户输入 && 格式化输出 #getpass 模块是内置的,可以将输入的内容隐藏 import getpass username = input("username print(info) info1 = ''' ---- info of {0} ---- username = {0} password = {1} age = {2} job = {3} _age=age, _job=job) print(info2) ###说明 #1、python 2.x zhong de raw_input() 和python 3. x 中的input() 效果相同 python2.x中 input() 接的是变量名 #2、print (type(变量)) 打印变量类型 #3、默认类型为字符串(string) str--->整数 用 age = int (input("变量")) #4、'''*''' 有两个意思,分别为多行注释和多行打印 #5、%s 占位符表示字符串 %d 表示整数 %f 表示浮点,小数 #6、格式化输出有以下三种实现方式
Vim 的配置涉及很多东西,如果对 Vim 配置不太熟悉的话,建议直接用 Github 上的配置,比较流行的有 ultimate vim 和 spacevim,其中前者在 star 数上是更多,也更流行的 ,笔者用过 spacevim,有时候会有些奇怪的报错,因为作为用户来说没有太大必要去了解 Vim 的配置,所以最后还是选择回了 ulimate vim,相对比较简单无脑。 git clone --depth=1 https://github.com/amix/vimrc.git ~/.vim_runtime sh ~/.vim_runtime/install_awesome_vimrc.sh
此外,vim 社区中,虽有 spf13-vim, k-vim 等一些比较有名的 vim 配置,但始终整合的不够,散落着很多适用特定环境的很好的配置,比如针对 c-c++, python, ruby 等等不同语言环境 还有asyncrun.vim 等等,都会成为我们新的选择。 spf13-vim 等的更新似乎不太跟得上步伐,希望集体智慧能够给我们带来一个更好用的 vim 配置。 [图片上传失败... 中,所谓的一个 Layer ,其实很简单,就是集成了一些相关的 vim 插件及其配置,涉及到两个文件: config.vim 与 packages.vim. 不难理解,config.vim 为该 Layer 的相关配置信息,packages.vim 则为该 Layer 所需的一些 vim 插件。 :space-vim 致谢 spacemacs spf13-vim ......
我们知道Python3.x引入了新的字符串格式化语法。 不同于Python2.x的 "%s %s "%(a,b) Python3.x是 "{0} {1}".format(a,b) '{0},{1}'.format('jack',22) Out[32]:
并没有这么做,只有按下 <C-c>才能停下来,而且vim中多出了许多空白行。 neovim 定义了一系列的函数帮助我们定义、获取和删除快捷键 vim.api.nvim_set_keymap: 设置快捷键 vim.api.nvim_get_keymap: 获取快捷键 vim.api.nvim_del_keymap lua 中自定义变量可以直接定义,但是 mapleader 明显是vim 自带的变量。跟设置选项类似,neovim 提供了两种访问 vim 内部变量的方式,一种是使用函数,一种是使用 元访问器。 跟变量有关的函数主要有: vim.api.nvim_set_var():设置全局变量的值 vim.api.nvim_get_var():获取全局变量 vim.api.nvim_del_var():删除全局变量 当然使用元访问器会更加简便,对应的元访问器为 vim.g。
还是继续重复造轮子吧 vim Linux vi/vim | 菜鸟教程 (runoob.com)
vim有三种模式vim file 即可创建file并进行编辑,自动进入命令模式命令模式^ 移动光标至行首$ 移动光标至行尾 中传递文件并运行时,可能会涉及到文件格式转换替换 %s///g %s/// s///g s///异常处理vim 或者vim -r 文件继续编辑
第 3 章仍是本书的基础章节。本章将会给大家介绍盒模型相关的概念、几种常见的可见格式化模型(包括定位、浮动、格式化上下文)以及新型布局模块,其中较新的布局方式将在后续章节详细介绍。 这时可以用我们第二章提到的样式重置,推荐大家使用 Eric Meyer 的CSS Reset[2]和Nicolas Gallagher 的 Normalize.css[3]。 如果我们不想让第二组的盒子 1 挂在第一组的盒子 3 左边应该如何处理呢? 很简单,我们可以通过clear属性的left、right、both、none来指定盒子的哪一侧不应该紧挨着浮动盒子。 3.2.3 格式化上下文 CSS 中有一个很重要的概念,叫做格式化上下文(formatting context)。其中行级格式化上下文前面略有提及,如垂直外边距对于行内盒子无效。 fontsize=14&hidenavigation=1&theme=dark [2]CSS Reset: https://meyerweb.com/eric/tools/css/reset/ [3]Nicolas
[TOC] 0x00 前言简述 本章节,主要介绍HTML定义很多供格式化输出的元素, 比如粗体和斜体字以及删除线等,具体讲解如下述所示: 常规格式输出标签 通常,使用格式化标签定义文本展示与含义,在html5 例如,W3School 经常对重要的术语使用 标签, 标签可以用来把这些名称和其他斜体字区别开来。 -- 示例3.使用 CSS 可以为 <var> 元素覆盖样式。 温馨提示:W3C 标准允许在 元素中包含引用内容的作者信息。然而 WHATWG 规范不允许在 元素中出现人名。 -- 示例3 --> <!