当前位置: 首页 > news >正文

Linux取消函数折叠,Linux下面对于VIM编辑器的代码折叠使用与screen

VIM设置代码折叠

1. 折叠方式

可用选项 'foldmethod' 来设定折叠方式:set fdm=*****。

有 6 种方法来选定折叠:

manual           手工定义折叠

indent             更多的缩进表示更高级别的折叠

expr                用表达式来定义折叠

syntax             用语法高亮来定义折叠

diff                  对没有更改的文本进行折叠

marker            对文中的标志折叠

注意,每一种折叠方式不兼容,如不能即用expr又用marker方式,我主要轮流使用indent和marker方式进行折叠。

使用时,用:set fdm=marker 命令来设置成marker折叠方式(fdm是foldmethod的缩写)。

要使每次打开vim时折叠都生效,则在.vimrc文件中添加设置,如添加:set fdm=syntax,就像添加其它的初始化设置一样。

2. 折叠命令

选取了折叠方式后,我们就可以对某些代码实施我们需要的折叠了,由于我使用indent和marker稍微多一些,故以它们的使用为例:

如果使用了indent方式,vim会自动的对大括号的中间部分进行折叠,我们可以直接使用这些现成的折叠成果。

在可折叠处(大括号中间):

zc      折叠

zC     对所在范围内所有嵌套的折叠点进行折叠

zo      展开折叠

zO     对所在范围内所有嵌套的折叠点展开

[z       到当前打开的折叠的开始处。

]z       到当前打开的折叠的末尾处。

zj       向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。

zk      向上移动到前一折叠的结束处。关闭的折叠也被计入。

当使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动之:)

我们可以使用下面的命令来创建和删除折叠:

zf      创建折叠,比如在marker方式下:

zf56G,创建从当前行起到56行的代码折叠;

10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。

10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。

在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。

zd      删除 (delete) 在光标下的折叠。仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。

zD     循环删除 (Delete) 光标下的折叠,即嵌套删除折叠。

仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。

zE     除去 (Eliminate) 窗口里“所有”的折叠。

仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。

Example:

[user@localhost] cd ~

[user@localhost] vim .vimrc

#vim里面打开文件注释代码用的紫色,修改数字表示其他color

hi Comment ctermfg=5;

#vim的代码折叠用marker方式

set foldmethod=marker

#折叠的代码为白底黑字

:highlight Folded ctermfg=0 ctermbg=7

写一个function时

public function test() {/*{{{*/

....

.....

}/*}}}*/

在function大括号中间的任何区域,用zc/zo 可以实现折叠和展开。

+--  4 lines: public function test() {----------------------

在linux端用vim编程时,结合screen是最好的方式,安装一个screen后,可以实现多页面,就不用在多个窗口中切来切去。

一般用: yum install screen 都可以安装

安装成功后,可以修改~/.screenrc 配置个人的喜好。

我的配置如下:

termcapinfo xterm|xterms|xs|rxvt ti@:te@

term xterm

defutf8 on

defflow off

vbell off

startup_message off

defscrollback 2048

hardstatus on

hardstatus alwayslastline "%{= wk} %{by} %H %{wk} | %-Lw%{kw} %{= g}%n%f* %t%{wk} %{wk}%+Lw%< %= %{kw} %{= R} [%m/%d %c] %{-}"

【转】Linux上vi&lpar;vim&rpar;编辑器使用教程

Linux上vi(vim)编辑器使用教程 ------------------------------------------------------------ ikong ------------ ...

Windows &amp&semi; Linux 安装使用 Vim 编辑器 3分钟入门 - 精简归纳

Windows & Linux 安装使用 Vim 编辑器 3分钟入门 - 精简归纳 JERRY_Z. ~ 2020 / 8 / 25 转载请注明出处! 目录 Windows & Lin ...

Linux系统Vi&sol;Vim编辑器的简单介绍、安装&sol;卸载、常用命令

Linux系统Vi/Vim编辑器的简单介绍.安装/卸载.常用命令 1.介绍 vi(Visual Interface)编辑器是Linux和Unix上最基本的文本编辑器,工作在字符模式下.由于不需要图形界 ...

【Linux 操作系统】vim编辑器配置及常用命令

最近工作不安分, 没有了刚入行时候的锐气, 不知道什么时候开始懈怠起来, 周末在电脑旁边看新闻, 搞笑图片, 追美剧, 一坐就是一天, 很是空虚. 我需要摆脱这种状态, 正好想学习一下安卓底层, An ...

Linux上vi&lpar;vim&rpar;编辑器使用教程

vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

Linux之vi&sol;vim编辑器

1.概述 所有的Unix like系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在,但是目前我们使用比较多的是 vim 编辑器. vim具有程序编辑的能力,可以主动地以字体颜色辨别语法的 ...

新手指南&colon;Linux上vi&lpar;vim&rpar;编辑器使用教程

vi(vim)是上Linux非常常用的编辑器,很多Linux发行版都默认安装了vi(vim).vi(vim)命令繁多但是如果使用灵活之后将会大大提高效率.vi是“visual interface”的缩 ...

Linux系统的vim编辑器的配置文件的初步说明

vim 编辑器的基本说明 vi编辑器的功能类似于Windows下的记事本,只能编辑普通文本,而vim编辑器则相当于Windows下的notepad++等高级编辑器,提升了代码开发效率. 将vi命令默认 ...

linux软件管理&lpar;Vim编辑器使用&rpar; ——(七)

windows : .exe     安装 .卸载 安装:  mysql.exe  cc.exe 卸载 : 该软件唯一的标识  ,包名   alibaba android : *.apk   卸载 包 ...

随机推荐

EFUpdate

using System; using System.Collections.Generic; using System.Configuration; using System.Data; using ...

锋利的jQuery-5--网页换肤

网页换肤原理:通过调用不同的样式表文件来实现不同的皮肤,并且将切换好的皮肤计入cookie. 例子:通过点击上边的颜色设置下边显示的背景色. html代码:

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • linux下如何修改终端名称,修改linux终端显示目录和主机名称
  • SQL 2008 T-Prep 之旅
  • 树莓派Linux中文怎样修改,树莓派修改键盘布局和支持中文
  • 计算机基础知识
  • linux中如何输入代码提示错误信息,在linux下代码运行出现段错误,求大神
  • BIEE安装及启动错误的处理(rhel5amp;hpux)
  • 制作linux发行程序,Linux发行版制作过程中的各个步骤
  • 使用screen管理会话
  • linux存储是什么意思,Linux 内存管理中的 RSS 和 VSZ 是什么意思?
  • Microsoft Licenses Flash Lite for Windows Mobile Users
  • HPUX下启动scheduler遇到的问题及解决
  • linux上samba配置全过程,Samba服务器配置和使用全过程
  • linux怎么查看32位,查看Linux是32位还是63位的方法
  • Unix下配置Scheduler的过程和出现的NQSError问题
  • .NET企业级应用架构设计系列之技术选型
  • 《深入 React 技术栈》
  • 「面试题」如何实现一个圣杯布局?
  • 【Amaple教程】5. 插件
  • gitlab-ci配置详解(一)
  • Java知识点总结(JavaIO-打印流)
  • Js基础知识(四) - js运行原理与机制
  • Promise面试题,控制异步流程
  • Vue实战(四)登录/注册页的实现
  • Zsh 开发指南(第十四篇 文件读写)
  • 记一次和乔布斯合作最难忘的经历
  • 今年的LC3大会没了?
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 协程
  • 【干货分享】dos命令大全
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • # 安徽锐锋科技IDMS系统简介
  • #Ubuntu(修改root信息)
  • #每天一道面试题# 什么是MySQL的回表查询
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (2)MFC+openGL单文档框架glFrame
  • (27)4.8 习题课
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (Matlab)使用竞争神经网络实现数据聚类
  • (力扣)循环队列的实现与详解(C语言)
  • (利用IDEA+Maven)定制属于自己的jar包
  • (面试必看!)锁策略
  • (七)Activiti-modeler中文支持
  • (强烈推荐)移动端音视频从零到上手(上)
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (五)网络优化与超参数选择--九五小庞
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)Mysql的优化设置
  • (自适应手机端)响应式服装服饰外贸企业网站模板
  • .net core 6 集成 elasticsearch 并 使用分词器
  • .NET Framework 3.5安装教程
  • .NET MVC之AOP
  • .Net Winform开发笔记(一)
  • .net2005怎么读string形的xml,不是xml文件。