Vim 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Vim 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Vim 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Vim 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Vim 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。

主要功能

根据设定可以和原始vi完全兼容
多缓冲编辑
任意个数的分割窗口(横,竖)
具备列表和字典功能的脚本语言
可以在脚本中调用 Perl, Ruby, Python, Tcl, MzScheme
单词缩写功能
动态单词补完
多次撤销和重做
对应400种以上文本文件的语法高亮
C/C++, Perl, Java, Ruby, Python 等40种以上语言的自动缩排
利用ctags的标签中跳转
崩溃后文件恢复
光标位置和打开的缓冲状态的保存 复原(session功能)
可以对两个文件进行差分,同步功能的diff模式
远程文件编辑
Omni补完(上下文相关的补完)

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (16)

加载中
2019/07/15 15:04
回复
举报
#Vim# vs #Emacs# http://www.monkeyuser.com/2017/vim-vs-emacs/
2017/07/17 13:40
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
2011/09/09 19:19
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
该评论暂时无法显示,详情咨询 QQ 群:912889742
该评论暂时无法显示,详情咨询 QQ 群:912889742
该评论暂时无法显示,详情咨询 QQ 群:912889742
该评论暂时无法显示,详情咨询 QQ 群:912889742
该评论暂时无法显示,详情咨询 QQ 群:912889742
该评论暂时无法显示,详情咨询 QQ 群:912889742
更多评论
发表于大前端专区
2020/01/05 09:22

Vim 作者创建分支 Vim9 以改进 Vim 的性能

Vim 编辑器的创建者 Bram Moolenaar 最初开发了 Vim 以作为 Vi 编辑器的“增强版”,而现在,他希望通过一个名为 Vim9 的实验性分支对 Vim 本身进行改进。 Bram Moolenaar 表示,Vim9 是 Vim 的一个实验性分支,旨在探索使 Vim 脚本更好且更快执行的方式。这也是除“弹出窗口(Popup Windows)”和“文本属性(Text Properties)”之外,开发者呼声最大的功能需求。 为了能更快执行 Vim 脚本,Bram 思考了很多并得出如下结论:当...

14
13
发表于大前端专区
2019/12/15 07:58

Vim 8.2 发布

距推出 Vim 8.1 已过去一年多,Vim 8.2 也终于在近日发布了。除了修复错误、更新文档和改进测试覆盖率等常规更新外,此版本还带来了一些有趣的新功能。 Vim 开发团队的成员表示,在去年的 VimConf 2018 做主题演讲之前,他向 Vim 插件开发者询问了他们对 Vim 的功能需求。其中“弹出窗口(Popup Windows)”和“文本属性(Text Properties)”这两项呼声最大。经过一年多的开发,这两个新功能已顺利实现。 先简单介绍一下“弹出...

25
21
发表于大前端专区
2019/06/14 08:06

Vim 与 Neovim 曝出任意代码执行漏洞

安全研究人员发现 Vim 与 Neovim 中存在一个任意执行漏洞,允许黑客在用户打开恶意文本文件时控制计算机。漏洞影响 Vim 8.1.1365 与 Neovim 0.3.6 之前的所有版本。 该漏洞存在于编辑器的 modeline(模式行)功能,此功能允许用户在文本文件的开头或结尾设置窗口尺寸和其它自定义选项,它在一个被操作系统封锁的沙箱中运行,并且可用命令也被限制,但是研究人员 Arminius 发现了绕过该安全保护的方法。 目前漏洞已经被编号为 CV...

3
9
发表于大前端专区
2018/05/20 08:02

Vim 8.1 发布,支持在 Vim 窗口中运行终端

Vim 8.1 已发布,这是一个次要版本,包含自 Vim 8.0 以来的一些新特性、 Bug 修复和文档更新。其中最值得注意的,是支持在 Vim 窗口中运行终端。 该特性基于 Vim 8.0 新增的异步功能。终端窗口可以有很多用处,像是: 运行一个命令,比如“make”,同时继续在其他窗口中进行编辑。 运行一个可以执行一系列命令的 shell 。 使用新的终端调试器插件在 Vim 中进行调试。 更多细节可查阅: https://www.vim.org/vim-8.1-released.p...

18
6
发表了资讯
2017/06/03 07:58

易进难出,“Vim 退出” 难住百万程序员

“程序员一旦进入 Vim ,就再难以脱身。”这听起来像是一个恐怖故事,但是却真实的发生在程序员的身上, Stack Overflow 上关于如何退出 Vim 的问题,其点击量已有上百万次了。 问题原文为:   I'm stuck and cannot escape. It says:   "type :quit<Enter> to quit VIM"   But when I type that it simply appears in the object body. 你可能认为“我使用 Vim 很久了,我认为 Vim 很好用,没必要退出啊!”但是用户觉得没...

35
12
发表了资讯
2017/05/24 20:21

获得成就!Stackoverflow 已帮助一百万个开发者“退出” Vim

Stack Overflow 在其博客上表示,Stack Overflow 上一个流行的问题 — “如何退出 Vim(How to exit the Vim editor)”已经达到一个里程碑的阶段,目前已超过一百万用户浏览过这个问题。 Stack Overflow 还公布了哪些国家的开发者访问这个问题的次数最多,可以看到,Ukraine, Turkey 和 Indonesia 这几个国家占了其中的大部分。相比之下,中国开发者遇到这个问题的比例反而较少,当然也可能是通过别的途径解决了,这里暂不讨论...

39
8
发表了资讯
2016/10/29 00:00

开发者的实用 Vim 插件(二)

毫无疑问,Vim 是一个开箱即用并能够胜任编程任务的编辑器,但实际上是该编辑器中的插件帮你实现这些方便的功能。在 开发者的实用 Vim 插件(一),我们已经讨论两个编程相关的 Vim 插件——标签侧边栏(Tagbar)和定界符自动补齐(delimitMate)。作为相同系列,我们在本文讨论另一个非常有用、专门为软件开发正定制的插件——语法高亮插件。 请注意:本教程中列举的所有例示、命令和说明都是在 Ubuntu 16.04 环境下进行测试的...

2
64
发表了资讯
2016/10/28 00:00

开发者的实用 Vim 插件(一)

作为 Vi 的升级版,Vim 毫无争议是 Linux 中最受欢迎的命令行编辑器之一。除了是一个多功能编辑器外,世界各地的软件开发者将 Vim 当做 IDE(集成开发环境Integrated Development Environment)来使用。 事实上,因为 Vim 可以通过插件来扩展其自身功能才使得它如此功能强大。不用说,肯定有那么几个 Vim 插件是旨在提高用户的编程体验的。 特别是对于刚刚使用 Vim 或者使用 Vim 做开发的的软件开发者来说,我们将在本教程中讨论...

24
146
发表了资讯
2016/09/12 00:00

Vim 8.0 正式发布了

Vim8.0 正式版发布了。 经过十多年,Vim又发布了一个新的主要版本。它给你带来了很多有趣的新功能,例如channels, JSON, Jobs, Timers, Partials, Lambdas, Closures, 包管理等等。测试覆盖率一直在增加,许多错误已经被修复,这是一个稳定的版本。更多关于它消息请在公告中阅读。 新特性包括: 异步 I/O 支持, channels, JSON Jobs Timers Partials, Lambdas and Closures 包管理 新的样式测试 Viminfo 根据时间戳合并 GTK+ 3 支...

33
24
发表了资讯
2016/09/05 00:00

更好的使用 Vim

改键 我之前一直以为改键的操作做没有必要,但是在尝试了一个月以后我已经没办法重新使用别人的键盘了 ———— 太慢了。 改建的意义在于将 Ctrl 映射到 Caps Lock 上。原因在于小拇指很容易按到这个大写锁定而很难按到原来 ctrl 的位置。 改键对于 Emacs 用户更为重要。 操作方法:Ubuntu 参考这篇文章, windows是改注册表,自行google吧。 Tmux 我一直把 Ubuntu 作为工作写代码的操作系统,终端对于我来说有仅次于文本编辑器使...

10
92
发表了资讯
2016/08/30 00:00

爱 Vim 的七个理由

当我刚刚开始用 vi 文本编辑器的时候,我憎恨它!我认为这是有史以来设计上最痛苦和反人类的编辑器。但我还是决定我必须学会它,因为如果你使用的是 Unix,vi 无处不在并且是唯一一个保证你可以使用的编辑器。在 1998 年是如此,但是直到今天 vi 也仍然是可用的,现有的几乎每个发行版中,vi 基本上都是基础安装的一部分。 在我学会能使用任何功能前,我已经在 vi 上花费差不多 1 个月的时间,但是我仍然不喜欢它。不过那时我已...

37
53
发表了资讯
2016/08/08 00:00

不敢想象!Vim 使用者的“大脑”竟是这样

原始状态 我曾经观看过小提琴家非常有激情地拉弦演奏,我有了这种想法:也许我投入到文本编辑器中的脑细胞数量和他为投入所喜好的乐器的演奏中差不多吧。我还有种奇异的想象,当他独奏的时候,脑中的核磁共振图和我在使用 Vim 中操控代码的的图像也许不会相差太大吧? 如果你愿意的话请你仔细思考下,以下是一个 Vimmer 的学习旅程的剪辑。 Vim 涅磐所经历的漫长而艰苦的道路 星期一 “Eclipse 当然是简洁实用的。” “但是一些满...

15
26
发表了资讯
2016/08/06 00:00

Vim 用户的大脑变化

原始状态 我曾经观看过小提琴家非常有激情地拉弦演奏,我有了这种想法:也许我投入到文本编辑器中的脑细胞数量和他为投入所喜好的乐器的演奏中差不多吧。我还有种奇异的想象,当他独奏的时候,脑中的核磁共振图和我在使用VIM中操控代码的的图像也许不会相差太大吧? 如果你愿意的话请你仔细思考下,以下是一个vimmer的学习旅程的剪 Vim涅磐所经历的漫长而艰苦的道路 星期一 “Eclipse当然是简洁实用的” “但是一些满脸落腮胡的奇...

18
34
发表了资讯
2016/07/26 00:00

Vim 8.0 取得不错进展

早在今年4月宣布 Vim 8.0 的特性的时候,Vim 7.4.1689 中就已经初步实现 8.0的几大重要特性的实现了,经过了 3个月的稳定,共计修复了 323项缺陷,到如今的 7.4.2012 中,所有功能基本都已经准备就绪,Vim 8.0 正在做最后的收尾工作,接下来将以一个新 tag的形式发布出来。 Vim 的作者 Bram Moolenaar 说道:“在过去的几个月中 Vim 8.0 的所有新功能都已经被实现并稳定,包括异步通信,任务系统,时钟系统等。大量报上来的 BU...

12
14
发表了资讯
2016/04/14 00:00

Vim 8.0 即将发布

Vim 8.0 即将发布了! 该版本预计会带来以下新功能: 支持异步 I / O。 Vim支持多线程后台处理消息,当Vim在等待一个输入消息的时候,其他消息会在后台被接收处理。 管道命令支持JSON数据,比较容易的实现进程间的通信,允许写入服务器,专门提供了 |json_encode()| 和 |json_decode()|两个方法处理JSON数据。 详情请看这里。

40
27
发表了资讯
2015/08/19 00:00

Vim 将从 Google Code 迁移到 GitHub

Google Code 将会关闭,Vim 项目将迁移到 GitHub。迁移不会有任何变化。但是,现在请不要增加新的 issues 或者编辑现有的 issues,如果修改将会丢失。这是因为网站没有完全关闭的情况下没办法设置为只读模式。 Vim 还没完全迁移到 GitHub,如果迁移完成还会发布新的声明。 Vim GitHub 地址:https://github.com/vim/vim

19
10
发表了资讯
2014/07/04 00:00

如何将 Vim 打造成一个成熟的 IDE

如果你稍微写过一点代码,就能知道“集成开发环境”(IDE)是多么的便利。不管是Java、C还是Python,当IDE会帮你检查语法、后台编 译,或者自动导入你需要的库时,写代码就变得容易许多。另外,如果你工作在Linux上,你也会知道Vim在进行文本编辑的时候是多么的方便。所以,你可 能会想从Vim中也获取这些IDE特性。 事实上,很少有方法可以帮你做到。有些人可能会想到试着把Vim打造成C语言IDE的,比如c.vim;也有把Vim集成到Ecl...

80
426
发表了资讯
2013/08/13 00:00

超过 130 个你需要了解的 vim 命令

从 1970 年开始,vi 和 vim 就成为了程序员最喜爱的文本编辑器之一。5年前,我写了一个问自己名为 “每个程序员都应该知道的 100 个 vim 命令” 这次算是之前那篇文章的改进版,希望你会喜欢。 基础 :e filename Open filename for edition :w Save file :q Exit Vim :q! Quit without saving :x Write file (if changes has been made) and exit :sav filename Saves file as filename . Repeats the last change made in norm...

83
955
发表了资讯
2013/08/11 00:00

VIM 7.4 正式版发布,文本编辑器标准

文本编辑Vim 7.4正式版发布!2013-08-10.上个版本7.3还是2010-08-16发布的。过了快3年,此版本增加了上千个补丁,重要的特性包括1.增强 了Python的支持。2.一个更快的正则表达式引擎。完整改进可以通过":help version7.4" 来查看。 下载地址:源码 ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2

73
39
发表了资讯
2013/07/07 00:00

Vim 7.4a 发布,全新更快的正则表达式引擎

Vim 发布 7.4 首个 beta 版本,与 7.3 比较最大改进是: 全新、更快的正则表达式引擎 修复了上千个 bug 和小改进 可使用如下方法获取 vim 7.4a: hg clone https://vim.googlecode.com/hg/ vim cd vim hg update 下载地址: ftp://ftp.vim.org/pub/vim/unstable/unix/vim-7.4a.tar.bz2 MS-WINDOWS one-size-fits-all: Self-installing, includes all runtime files, loads libraries dynamically: ftp://ftp.vim.org/pub/vim/u...

23
16
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于DevOps专区
2018/06/13 15:07

[vim]-vim基础

#### vim按键说明 | **移动光标的方法** || | --- | --- | | h 或 向左箭头键(←) | 光标向左移动一个字符 | | j 或 向下箭头键(↓) | 光标向下移动一个字符 | | k 或 向上箭头键(↑) | 光标向上移动一个字符 | | l 或 向右箭头键(→) | 光标向右移动一个字符 | | 如果你将右手放在键盘上的话,你会发现 hjkl 是排列在一起的,因此可以使用这四个按钮来移动光标。 如果想要进行多次移动的话,例如向下移动 30 行,可以使用 "30j...

0
0
发表了博客
2019/09/03 08:51

VIM | vim操作大全

<html> <head></head> <body> <div class="article-content"> <div> <h1><strong>1. 关于Vim</strong></h1> <p>vim是Linux下第二强大的编辑器。 虽然emacs是公认的世界第一,我认为使用emacs并没有使用vi进行编辑来得高效。 如果是初学vi,运行一下vimtutor是个聪明的决定。 (如果你的系统环境不是中文,而你想使用中文的vimtutor,就运行vimtutor zh)</p> <p><strong>1.1 Vim的几种模式</strong></p> <ul> <li>正常模式:可以...

0
0
发表了博客
2018/08/02 11:09

vim(一) vim与markdown

vim markdown 配置 vim高亮显示Markdown语法 在.vimrc添加 Plugin 'godlygeek/tabular' Plugin 'plasticboy/vim-markdonw' vim执行PluginInstall #vim即时预览Markdown 安装node.js sudo add-apt-repository ppa:chris-lea/node.js sudo apt-get update sudo apt-get install nodejs 安装instant-markdown-d sudo npm -g install instant-markdown-d 安装vim-instant-Markdown插件 在.vimrc添加 Plugin 'suan/vim-instant-Mar...

0
0
发表了博客
2019/02/13 16:32

Vim

## Vim的三种模式 ![](https://img2018.cnblogs.com/blog/1516667/201810/1516667-20181025135804061-1439733002.png) ``` i 光标后 a 光标前 o 光标下一行 ``` ## Vim配置 1. 进入 ``` sudo vim /etc/vim/vimrc ``` 2. 配置 ``` set nu //设置行号 set shiftwidth=4 //设置缩进的空格数 set cindent //设置自动缩进 set ts=4 //设置tab键的缩进为4个空格 set mouse=a    //允许使用鼠标 set noswapfile  //禁用交换文件 ...

0
0
发表了博客
2018/02/25 20:47

vim

接下来,我们来完成一个稍稍复杂一点的任务,当然这个任务也将涉及到 vim 更加高级的一些命令。 我们要完成的任务是这样的: 1. 请在 /tmp 这个目录下建立一个名为 vimtest 的目录, 进入 vimtest 这个目 录当中, 将 /etc/man.config 拷贝到本目录底下, 使用 vim 打开这个文本文 件; 2. 在 vim 中设定一下行号; 3. 移动到第 58 行行首, 再向右移动 30 个字符,移动到第 8 行行尾,再向左 移动 3 个单词; 4. 移动到第一行行...

0
0
发表于运维专区
2018/10/28 20:18

Vim

5.1 vim介绍 Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性,就是Vi的升级版。 Vim的安装命令为: yum install -y vim-enhanced 5.2 vim颜色显示和移动光标 相同的文件,在Linux系统的不同目录中,可能会显示不同的颜色,例如,我们把 /etc/passwd文件复制到 /tmp/下,再分别用vim打开看: 跟名字有关系,比如把/tmp/passwd改为/tmp/passwd.sh,再用vim打开,会发现颜色也有了...

0
0
发表了博客
2018/05/23 20:50

Vim

参考自:http://www.cnblogs.com/starspace/archive/2009/05/15/1458044.html 现在的工作是在unix平台,平时是用UE的ftp功能来写代码的,有时候文件大了,传输就很慢,而且经常不是很稳定。 下定决心要学学Vim(现在应该没有人用原始的vi了吧),在经过二周的使用后,发现Vim实在是非常不错的一个editor,现在我在Windows上也装了一个Vim,使用起来颇为顺手,基本上已经替代了UE。 下面介绍一些我在使用Vim的过程中得到的一些心...

0
0
发表于DevOps专区
2018/04/12 22:27

vim

vim介绍: • vim是vi的升级版本 • vim是带有颜色显示的 • yum install -y vim-enhanced • 一般模式、编辑模式、命令模式 一班模式下移动光标: 一般模式下复制粘贴: 进入编辑模式: vim实践操作: # cp /etc/dnsmasq.conf /tmp/1.txt (1) 分别向下、向右、向左、向上移动6个字符(6j 6l 6h 6k)。 (2) 分别向下、向上翻两页(分别按两次ctrl+f和ctrl+b)。 (3) 把光标移动到第49行(49G)。 (4) 把光标移动到行尾,再移动到...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表于大前端专区
2019/09/07 15:20

选择排序,为什么代码没写错,但做测试的时候给一个随机数组,偶尔会出现不排序的情况,原封不动的打印出来?

4
0
发表了问答
2016/11/12 20:14

vim编写c++时总是出现iostream.h file not found,是怎么回事,去掉.h也一样

3
0
发表了问答
2016/02/19 21:35

vim 安转 ycm之后经常报处理这几个错误,有碰到并解决的前辈吗

如题,linuxmint下安装youcompleteme后经常报 function <SNR>96_OnCursorMovedNormalMode..<SNR>96_OnFileReadyToParse..<SNR>96_UpdateDiagnosticNotifications 时发生错误: 第 9 行: Traceback (most recent call last)这几个错误,感觉莫名其妙的,希望有碰到并解决的前辈指点以下迷津...

2
0
发表于大前端专区
2018/04/29 15:02

vim 在上一行的行尾 附加字符

vim 在所有行首为 & 的行的 上一行 的行尾 附加 字符 & 例如 subroutine test( a, b, & c ) 要在 subroutine test( a, b, 后加 & subroutine test( a, b, & & c ) 或者有别的工具能方便的处理也行

2
0
发表了问答
2017/06/28 14:26

为毛我的Macvim 要按两次esc才能回到普通模式?

VIM - Vi IMproved version 8.0.648 by Bram Moolenaar et al.

1
0
发表了问答
2016/09/08 16:01

如何在使用全局替换后让vim显示已替换的数量?

如何在使用全局替换后让vim显示已替换的数量?

4
0
发表了问答
2016/10/24 09:41

在vim编译器下用从c语言编程换行符不起作用是什么情况

代码: 输出结果:

2
0
发表了问答
2016/10/05 22:48

Mac上sublime和vscode的vim模式不能够一直点hjkl来移动光标?

但是在terminal和Macvim是没有问题的,windows上也完全没有问题。

1
0
发表了问答
2016/07/22 16:28

适合python的vim插件,有哪些是必备(高度推荐)的?

初学者,请问适合python的vim插件,有哪些是必备(高度推荐)的? 最好稍微给解释下干什么的,感谢

2
0
发表了问答
2009/03/24 17:49

海盗用Emacs,忍者用Vi

经过数千小时的分析和猴子大脑试验之后,研究人员得出结论:海盗用Emacs,忍者用Vi。 首先是因为海盗和忍者身上流着与Emacs之父和Vi之父相同的基因特征——Emacs之父RMS一脸大胡子,Vi之父是Bill Joy没 胡子。其次是心理学、文化甚至是进化方面的原因——Vi有两大模式:“命令模式”和“插入模式”,忍者也有两大模式:“匿踪模式”和“战斗模式”;众所周 知Emacs拥有强大无比的定制和扩展能力,而海盗也无时不在定制化他们的趁...

24
2
发表了问答
2015/10/23 16:39

我在使用zsh的时候,发现它与vim冲突,导致的后果是vim无法实现自动补全功能,并且按tab键会报错。请问如何能解决这个冲突?

2
0
发表了问答
2015/09/06 20:00

vim报错_arguments:450: _vim_files: function definition file not found

普通用户用vim打开某文件在按tab键补全时出现这问题,图为tab补齐.zshrc。root用户使用vim没有问题,第一次遇到这样的问题

6
0
发表了问答
2016/04/27 22:01

vim背景怎么设置,在哪里设置

第一张用的是github的,整个背景是白色的。第二张背景颜色是默认的。是ubuntu14.04的vim。我想参考molokai.vim的配色自己配一款,找了就是找不到改在哪里设置这个背景色。如果有人知道,请告诉我下。

8
0
发表了问答
2016/04/28 12:43

如何通过shell脚本调用vim在不同选项卡中打开多个文件

由于每次编程都要在vim中输入完整的文件路径打开相应文件。 当需要编辑文件较多时比较繁琐,所以想通过shell脚本一次打开多个经常使用的文件。 正常在vim中打开文件方法如下: vim test.cpp 后面的文件通过下面的命令在不同选项卡中打开 :tab split test1.cpp 如何通过shell 脚本实现上面的功能呢? vim test.cpp test1.cpp 上面的代码在不同的窗口中打开了文件,没有在同一个选项卡中打开。 vim test.cpp : tab split test1.c...

4
0
发表了问答
2014/11/25 15:20

Vim插入模式下按键映射

我在vim中设置了这几组按键。 imap <C-h> <Left> imap <C-j> <Down> imap <C-k> <Up> imap <C-l> <Right> 其他按键在插入模式下都好好的,就是<Ctrl+h>变成了删除键,按一下删除一个字母,感觉好蛋疼。 插入模式下加Shift键组合会导致大写字母按不出来,alt+h又跟xshell的快捷键冲突,唯一能用的c-h还出了这样的问题。在线求帮助啊~~ 我查过/etc/vim/vimrc和 我个人目录下的.vimrc文件里面都找了,没发现有其他的<c-h>映射。百思...

6
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
16 评论
198 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部