source insight 保存时删除多余空格,去除多余空格 space tab键【转】

简介:

转自:http://blog.csdn.net/lanmanck/article/details/8638391

上传源码时最好把空格行去掉,以前介绍了使用notepad++,现在发现,习惯用source insight的人士也可以很easy的去掉了:

Options->Perferences->Files-> Remove extra white space when saving。保存时自动去除每行尾部的空格和tab。

 

以下是另一个兄弟的心得:

http://blog.csdn.net/ison81/article/details/3510043

 

用si有好几年了,零零散散也累积了不少心得,但总觉得还有一些内容是不知道的,所以今天干脆来个大清扫,把所有的选项都研究一遍,并把自认为有用的内容在这里整理一下。

si的主要配置都在Options->Perferences菜单里,

1、General

Project File Synchronization->Remove missing file from project选上可以避免因文件找不到而弹出错误对话框。

把Misc->Use stricter confirmation dialog选项去掉可以使确认时不输入"yes"。

2、Typing

Source Editing->Indent commands affect #-preprocessor statements。去掉后(默认值),进行多行缩进时不会影响预处理语句(如#if...#endif)。

Auto Completion->Use detailed completion window,选上后,联想时可以出现该函数的详细信息。见下图:

(简单)

(详细)


Auto Completion->Insert paremeters for functions,去掉后,自动联想不会把整个参数都输出到当前行。

Browsing in Lists->Match syllables while typing(slower)。在symbol list框检索符号时是否采用音节匹配方式,如对于函数FindNext,输入find或者next都可以找到该函数。该功能可能导致反应缓慢(视工程和机器配置而定),建议关闭,因为即使在关闭状态下也可以通过先输入空格再输入单词来动态启用该功能。

注意Browsing in Lists里其实有两个功能,但一般我们只能看到Match syllables while typing这一条,应该是si的菜单设计没有做好,导致在中文windows下不能显示全,另一个功能是Match members while typing,用于打开/关闭按成员变量名来检索类/结构体的功能。

3、Files

Opening Files->Sharing: Let other programs modify files,以共享方式打开文件,这个很重要,保证可以在其它编辑中同时编辑该文件。典型的场景就是用ide环境去动态编译调试,而用si静态阅读。

Customize 'Open' Command...,用于设置Ctrl+O打开的页面,默认选项是 Project File list view in Project Window,建议保持默认。

Saving Files->Preserve Undo data and revision marks after saving,如果发现保存后就不能undo了,请检查该选项是否选中。

Remove extra white space when saving。保存时自动去除每行尾部的空格和tab。建议选中。

4、Languages

自定义其它编程语言的语法解析,这个...还是另写一篇来讲吧。

Conditional Parsing不要错过了,这里的Conditions功能实在让人喜欢。Conditions是什么意思呢?我们的代码中一般都会有一些开关宏,通过在Conditions中配置这些宏的默认值,可以让si把配置为不开启的宏视为无效代码,从而不进行符号检索。

如果源代码中的开关宏太多,还可以使用Condition Parsing中的Scan Files来自动找出所有开关宏。

5、Symbol Lookups

没太多特别的。

6、Display

显示配置和个人喜好和显示器的状态有关,偶用的x60小本,屏幕资源有限,所以在Display Elements里把Project Window, Status Bar, Tool Bar,Clip Window都关了,基本用快捷键可以代替它们。

Options->Horizontal scroll bars for each new window。很多大师都教导我们说一行不要写太多代码。在这个指导思想下,我们不需要这个东东。

Show exact case of file names。如果看不惯si把所有的文件名首字母都大写就勾上这个选项吧。

Tile source and destination windows for Source Link commands。Source Link很多时候用于外部命令输出结果的解析(如Make, lint),这个功能会把解析结果与目标窗口自动tile,很实用。

Trim long path names with ellipses。这个建议不要选中。事实上这个主要影响标题栏,但一般来说标题栏上的空间是充裕的,选上之后往往会令我们不知道所编辑文件的具体位置。

7、Color

这个不用多说了。自己怎么喜欢怎么配吧。

8、Syntax Formatting

如果让大家说出喜欢si的几个理由,我想语法着色一定会是其中之一。

Basics->Use only color formatting。只启用style中关于颜色的设置。其它如粗体、斜体、阴影等都不启用。

Apply Styles for Lanugage Elements。把分类启用style,都选上吧。

Symbol Reference Lookups->Qualify references to members。检测成员的有效性,如果不是类/结构体中的一部分,则不启用style。虽然可能导致性能降低,但还是建议打开。同样Qualify references to functions也是。

这里有个按钮可以进入Doc Types页面(Options菜单也可以进入),里面有很多重要选项:

Editing Options中,

Expand tabs, Visible tabs可以帮助我们发现并转换tab。
Show right margint和Margin width可以提醒我们是否把一行写得太长。
Symbol Window选项建议关闭(因为有快捷键)。

Auto Indent对话框中,
如果没有特别喜好,建议把Smart Indent Options的两个勾都去掉。同时Auto Indent Type选Smart。

9、Syntax Decorations

可以把一些符号转换成特殊形式显示,如->转换成→。如果要使用该功能,不能开启Syntax Formatting->Basics->Use only color formatting。

Auto annotations下的三个功能都比较有用,

Show arrows at goto statements可以在goto时显示一个向上或向下的箭头,表示是向上goto还是向下goto。不过我们还是尽量不要用goto了。

Annotate closing braces with end-statement。在"}"后显示标识,表示该"}"与哪个if/switch配对。而下面的Annotate closing braces only for long blocks则是一个补充选项,表示只在较长的语句块时才显示标识。

10、Searching

没什么特别的,注意Automatically load selection into Find pattern。

11、Remote

与远程登录相关的一些选项。可以提高远程使用的显示性能。

12、Folders

没什么特别的。


最后简单说下si的配置文件。可以通过Options->Load Configuration/Save Configuration来导入/导出配置,可以导出全部,也可以导出某几个部分(如style)。si的配置有两级,一是全局配置,一是项目配置。出入方便考虑,统一一个配置就好了,在创建项目时选择用全局配置(默认值)。

导入配置也可以通过双击配置文件来完成。









本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/sky-heaven/p/5381352.html,如需转载请自行联系原作者

相关文章
|
7月前
|
数据安全/隐私保护
【VS2017】怎么调整Tab键的顺序和回车直接登录
【VS2017】怎么调整Tab键的顺序和回车直接登录
44 0
Notepad++ 设置tab为N个空格
Notepad++ 设置tab为N个空格
130 1
|
Shell Perl
把一个文档前五行中包含字母的行删掉,同时删除6到10行包含的所有字母
把一个文档前五行中包含字母的行删掉,同时删除6到10行包含的所有字母
119 1
|
Shell
Shell 删除多余重复的字符(tr -s)
Shell 删除多余重复的字符(tr -s)
149 0
|
机器学习/深度学习 移动开发 Unix
如何使用UE去除复制文本中的空格、换行符和TAB
如何使用UE去除复制文本中的空格、换行符和TAB
如何使用UE去除复制文本中的空格、换行符和TAB
|
Shell Perl Linux
去掉Enter字符(\r)的几个方法
数据:test.txt: f1:f2:f3:0#1 Shell:   #!/bin/bash while read line do echo $line result1=$(echo $line|awk -F ':' '{print $4}' ) echo $re...
1376 0
去掉多余的空格---输入一个字符串,字符串中可能包含多个连续的空格,请将多余的空格去掉,只留下一个空格。输入格式
输入一个字符串,字符串中可能包含多个连续的空格,请将多余的空格去掉,只留下一个空格。 输入格式 共一行,包含一个字符串。 输出格式 输出去掉多余空格后的字符串,占一行。 数据范围 输入字符串的长度不超过 200200。 保证输入字符串的开头和结尾没有空格。
327 0
|
移动开发 Windows
ES6字符串模板多行清除行头空格制表符
最近在撸项目工程化的时侯,需要输出一些文案提示, 对于多行文本我肯定优先考虑用 ES6字符串模板来实现,直接使用的效果并不是很符合想要的。 因为字符串模板会默认保留你换行的格式,包括缩进这些。
364 0
|
JavaScript 前端开发
按一下删除键删除整个单词
按一下删除键删除整个单词
按一下删除键删除整个单词
intellij tab键改为4个空格
intellij tab键改为4个空格
249 0
intellij tab键改为4个空格