文档库 最新最全的文档下载
当前位置:文档库 › sourceinsight使用技巧

sourceinsight使用技巧

sourceinsight使用技巧
sourceinsight使用技巧

sourceinsight使用技巧

1 sourceinsight screen font的默认字体是Verdana的,它是一直变宽字体。在Document style中可以将字体改为定宽的Courier

2 勾掉indent Open Brace和Indent Close Brace的效果: 继上一段,在相对缩进行里, 如果输入"{"或"}", 则自动和上一行列对齐

3 今天把一个用sourceinsight排版整齐的C文件,偶然用VC打开一看,全乱了。研究了半天,发现SI对每个字符的宽度不太一致。

发现选上"view --> draft view",就可以让每个字符的宽度一致了。快捷键是"Alt + F12"

4选中几行代码按tab键或者shift+tab可以左右移动代码,调整代码时很有用。

配置成简单好用的c/java代码编辑器

1、缩进与tab

(1)Options菜单Preferences Typing卡,勾掉下面两项∶

Typing tab indents line,regardless of selection,空行按tab无法前进

Typing tab replaces current selection,选定部分内容、再按tab时会清除所选

(2)Options菜单Document Options(针对不同文件类型,分别进行设置)下拉左上文件类型框、选择合适类型(c源文件)Editing Options框中,tab width=2 Editing Options

框中,勾选Expand tabs(这样,按tab键、等价于输入2个空格)

(3)Options菜单Document Options选择合适的文件类型点击右边中间的Auto Indent钮在弹出的框中,左边一定要点Smart,右边有两个复选框Indent Open Brace和Indent Close Brace,具体效果可以看SIS的HELP。按照部门里的编程风格要求,最方便的就是把两个

复选框都取消掉,然后点OK。

勾选Auto Indent之SMART的效果∶在C程序里, 如果遇到行末没有分号的语句,如IF, WHILE, SWITCH等, 写到该行末按回车,则新行自动相对上一行缩进两列。

勾掉Indent Open Brace和Indent Close Brace的效果∶继上一段,在相对缩进行里, 如果输入"}", 则自动和上一行列对齐(好像勾不勾都会有这个功能);而输入"{"时,不会与下面的行对

齐(这是勾上Indent Open Brace时的效果)。

2、向项目中添加文件时,只添加特定类型的文件(文件类型过滤器)

有个同事比较生猛,得整汇编代码,但在SIS里建立PROJECT并ADD TREE的时候,根据默认设置并不会把该TREE里面所有汇编文件都包含进来,只加了.inc和.asm后缀的,.s后缀的没有。而且用SIS打开.s的文件,一片黑白没有色彩,感觉回到DOS的EDIT时代了??解决方法是在Options->Document Options里面,点左上的Document Type下拉菜单,选择x86 Asm Source File,然后在右边的File filter里*.asm;*.inc;的后面加上*.s;接着CLOSE就可以了。上面两个问题解决了,但注意加入*.s后还需要重新ADD TREE一遍才能把这些汇编加到PROJECT里面。

3、去掉功能强大但是无用的自动完成功能

Options菜单Preferences Typing卡Auto Completion框,勾掉Use automatic symbol completion window(这里是SIS的全局设置)

Options菜单Document Options Editing Options框中,勾掉Allow auto-complete(局部设置)

上面两项必须全部勾选,才能启用Auto Completion功能

4、恢复小键盘的“+,-,*,/”功能

Options菜单Key assignments,通过关键词Scroll 找到Scroll Half Page Up,取消小键盘/;通过关键词Scroll 找到Scroll Half Page Down取消小键盘*;通过关键词Function找到Function Up,取消小键盘-,通过关键词Function找到Function down,取消小键盘+。

5、恢复ctrl+a的全选功能

通过关键词save 找到save all,更改为ctrl+shift+a,通过关键词select找到select all,更改为ctrl +a

6、解决字符等宽对齐问题。

SIS默认字体是VERDANA,很漂亮。这网页上应该也是用的VERDANA字体。但由于美观的缘故,VERDANA字体是不等宽的。比如下面两行

llllllllll

MMMMMMMMMM

同样10个字符,长度差多了.用VERDANA来看程序,有些本应该对齐的就歪了。解放方法

是使用等宽的字体,但肯定比较丑。可以用DOS字体,也就是记事本里的默认字体sysfixed 很丑,要有心理准备。比较推荐的是用Courier New。

SourceInsight提供的功能

1、解析日志信息时非常有用的Source Link

总地说来,SourceLink根据特定的搜索模式,把当前文件中满足模式的行、链接到由该行指

定的其他源文件中。

所谓特定的搜索模式,共有两种“File, then line”和“Line, then file”,其中前后两部分依

靠正则表达式的组的概念来予以分割。如果当前文件具有匹配行,比如“Error d:tcsrcq5.c 18: Lvalue required in function jsSort”,那么SourceInsight在该行创建SourceLink、把该行链接到由该行指定的文件中(即d:tcsrcq5.c,第18行)。

1.1 创建SourceLink

运行Search菜单的Parse Source Links?命令,在弹出的框中、选择搜索模式、并填入相

应的正则表达式串,点OK,SIS就会解析当前文件,如果有匹配,就创建SourceLink。

1.2 在解析日志信息时,使用SourceLink

可以打开日志信息,运行Parse Source Links命令,日志中能够匹配模式的每一行(通常是

含有错误信息的行)、就会被设置上一个SourceLink

1.3在解析自定义命令输出时,使用SourceLink

首先勾选Custom Command 中的“Parse Links in Output”,然后选择特定的搜索模式,

最后填入合适的正则表达式。这样,Source Insight把输出信息作为当前搜索用文件;并且,如

果有匹配行(通常即编译错误信息行),SIS为该行创建SourceLink、并把每一个错误信息中给

定的文件(和行号)作为link目的地,这对于我们修改源代码错误非常有帮助。

2、替换(Replace)VS 上下文敏感的智能重命名(Context-Sensitive Smart Rename)

2.1 替换(Replace)

目前来说,普通的替换命令、快捷键为ctrl+H,足以已满足工作要求。

在弹出的替换窗口中,在Search框中勾选Selection来只在所选文本区域中替换(当然这时你要先选定区域然后再按ctrl+H)、勾选WholeFile来在整个当前文件内替换、两者都不勾选来从当前光标处替换至文件末尾;点右边的Files?按钮,可选择替换多个文件的内容。

2.2上下文敏感的智能重命名(Context-Sensitive Smart Rename)

Smart Rename命令、快捷键是Ctrl+’,是上下文敏感的全局搜索替换。它可以智能地重命名全部项目文件中的一个标示符。SourceInsight的搜索索引(search index)使得搜索过程进行

地非常快。而且,使用Smart Rename所做的替换会被记录在Search Results窗口中,每一条替换记录旁有一个SourceLink链接到替换发生地文件。

项,Smart Rename就只在正确的上下文范围内进行重命名。它可以智能地重命名全部项目文件

中的一个标示符;它可以重命名函数本地变量,类或结构体成员、函数。

在弹出的Smart Rename窗口中有下面几项∶

填旧名称。光标下的词会被自动加载;光标的位置非常重要,这是因为Source Insight会根据本地上下文背景、准确地确定你想要重命名哪一个标记。

单个词、而不是字符串。

命名成员变量、或本地变量(),Old Name框中会显示完全标记名、即上层容器名+标记名。例如,框中的“DocDraw.paintStruc”代表DocDraw是函数名,paintStruc是函数的本地成员变量。

New Name 填新名称。只填标记名,不填上层容器名。

s 如果勾选,搜索替换结果日志会被输出到Search Results窗口中。可以通过Windows菜单来切换,或ctrl+tab切换察看。并且每一条记录旁会有SourceLink链接到替换发生地文件。

Confirm Each Replacement 每次替换询问。

Skip Comments 不重名注释部分。

【使用心得列表】

(1)如何用Smart Rename重命名数组的数组名?如果只选取数组名,会报错!

(2)如果勾掉Smart Reference Matching,会搜索全部项目文件,并且Old Name框中不显示完全限定名;如果勾选Smart Reference Matching,无法重命名数组名,而且鼠标位置不正确时会报错。应该如何应对?

3、在SourceInsight中提供的正则表达式

3.1在SourceInsight中提供的正则表达式

正则表达式,是用来匹配复杂模式的特殊搜索用字符串。正则表达式串中,许多字符具有特殊的含义。例如,有个特殊的字符代表“行首”。

下面是SourceInsight提供的所有可用特殊字符∶

Table 4.3: Regular Expression Characters

Character Matches

^ (at the beginning only)beginning of line。如^Hello,匹配Hello在句首。

.any single character

[abc]any single character that belongs to the set abc

[^abc]any single character that does not belong to the set abc

*zero or more occurrences of the preceding character +one or more occurrences of the preceding character

t a tab character

s a space character

w white space (a tab or a space character)

$the end of the line。如TRUE$,匹配TRUE在句尾。

转义字符。如果在它后面有元字符,取消其特殊含义。

可利用“(”和“)”、把正则表达式分割成不同的组;模式中的每个组自左向右指定为Group #n,n=1,2,?;组的概念在替换时很有用。

例如∶

abc(xyz)可匹配abcxyz,其中xyz被认为是group#1,

利用21来替换(abc)(xyz),替换结果为xyzabc。

3.2 正则表达式在配置tc编译器中的应用∶

正则表达式格式与源代码文件路径相对应,这里我的tc安装目录为d:tc,tc源文件放在d:tcsrc 下,并命名为qn.c或qtn.c(其中n=1,2,?)。

观察Tc编译器某一次输出错误信息的格式∶

Error d:tcsrcq5.c 18: Lvalue required in function jsSort

则我们要匹配“d:tcsrcq5.c 18”部分,进一步地,按照SourceInsight捕捉输出并加以解析

时的要求,要以组的形式、分别匹配“d:tcsrcq5.c 18”中的文件部分和行号部分∶

行号([1-9][0-9]*)

空格行号s([1-9][0-9]*)

文件名(d:tcsrc[qQ][tT][1-9][0-9]*.[cC])

全部加起来为∶

(d:tcsrc[qQ][tT]*[1-9][0-9]*.[cC])s([1-9][0-9]*)

3.3 正则表达式在配置javac编译器中的应用∶

我的JAVA_HOME是c:jdk,我的java源文件放于d:javasrc中,并命名为qn.java或qtn.java (其中n=1,2,?)。

观察JDK编译器某一次输出错误信息的格式∶

D:javasrcQ3.java:3: ';' expected

正则表达式为∶

([dD]:javasrc[qQ][tT]*[1-9][0-9]*.java):([1-9][0-9]*)

4、自定义命令

自定义命令与项目相关,在一个项目中定义的所有自定义命令属于该项目、只对该项目有效

(包括快捷键等)。

自定义命令类似于命令行批处理文件。SIS允许自定义命令在后台运行;并可以捕捉自定义

命令的输出、放置于文件中、或粘贴入当前光标插入点。

分别利用上面SIS对输出信息的处理方式,自定义命令对集成编译器相当有用,可以捕捉编

译器输出并创建SourceLink寻错;自定义命令对于文本过滤也相当有用,可选中待过滤区块、运行Sort自定义命令、粘贴回选定区块、即完成文本过滤。

请按下面步骤创建自定义命令∶

Options菜单Custom Command

点右边Add钮、填入新自定义命令名称,或下拉左边Commands、选择命令进行修改

Run框、填入待执行命令行,可含有特殊元字符,见后面的元字符表

Dir框、执行命令行时应处的目录,如不填,以源代码文件所在目录为命令执行目录

勾选Output框的Capture Output、输出被捕捉,如果勾选Paste Output,输出被粘贴

勾选Control Group框中的Save Files First、SIS会在运行命令前先检查文件是否保存

勾选Control Group框中的Pause When Done、SIS会在命令结束后暂停、方便检查

勾选Source Links in Output框中的Parse Source Links,?/p>

5使用最强大的宏功能,真的达到的完美境界

说明:

该宏文件实现一些编码程中能会到的功能, 如添加文件头、函数说明和宏定义等, 使用时能自动添加文件名、函数名和当前日期.

使用说明:

1. Project->Open Project... 打开Base工程(该工程一般在"我的文档/Source Insight/Projects/Base"中);

2. Project->Add and Remove Project Files... 加入宏文件(即mymacro.em);

3. Options->Menu Assignments 打开Menu Assignments窗口, 在Command中输入Macro, 选中要使用的宏, 添加到合适的菜单中.

在https://www.wendangku.net/doc/224797530.html,/public/macros/可以找到很多宏定义文件,但大多数没什么用。

/*附上宏定义文件(一下是我精心挑选的十分好用的宏定义,不试不知道,一试真有用)*/ /* mymacro.em - a small collection of useful editing macros */

/******************************************************************************

* InsFunHeader -- insert function's information

*

* modification history

* --------------------

* 01a, 23mar2003, added DESCRIPTION by t357

* 01a, 05mar2003, t357 written

* --------------------

******************************************************************************/ macro InsFunHeader()

{

// Get the owner's name from the environment variable: szMyName.

// If the variable doesn't exist, then the owner field is skipped.

/*######################################################### ######################################################### ####### Set szMyName variable to your name ########

####### for example szMyName = "t357" ########

######################################################### #########################################################*/ szMyName = "LW"

// Get a handle to the current file buffer and the name

// and location of the current symbol where the cursor is.

hbuf = GetCurrentBuf()

szFunc = GetCurSymbol()

ln = GetSymbolLine(szFunc)

// Get current time

szTime = GetSysTime(1)

Day = szTime.Day

Month = szTime.Month

Year = szTime.Year

if (Day < 10)

szDay = "0@Day@"

else

szDay = Day

szMonth = NumToName(Month)

szInf = Ask("Enter the information of function:")

szDescription = Ask("Enter the description of function:")

// begin assembling the title string

sz = "/******************************************************************************"

InsBufLine(hbuf, ln, sz)

InsBufLine(hbuf, ln + 1, " * @szFunc@ - @szInf@")

InsBufLine(hbuf, ln + 2, " * DESCRIPTION: - ")

InsBufLine(hbuf, ln + 3, " * @szDescription@ ")

// remove by t357. CutWord(szDescription)

InsBufLine(hbuf, ln + 4, " * Input: ")

InsBufLine(hbuf, ln + 5, " * Output: ")

InsBufLine(hbuf, ln + 6, " * Returns: ")

InsBufLine(hbuf, ln + 7, " * ")

InsBufLine(hbuf, ln + 8, " * modification history")

InsBufLine(hbuf, ln + 9, " * --------------------")

InsBufLine(hbuf, ln + 10, " * 01a, @szDay@@szMonth@@Year@, @szMyName@ written")

InsBufLine(hbuf, ln + 11, " * --------------------")

InsBufLine(hbuf, ln + 12, " ******************************************************************************/")

// put the insertion point inside the header comment

SetBufIns(hbuf, ln + 1, strlen(szFunc) + strlen(szInf) + 8)

}

/******************************************************************************

* NumToName -- change the month number to name

*

* modification history

* --------------------

* 01a, 05mar2003, t357 written

* --------------------

******************************************************************************/

macro NumToName(Month)

{

if (Month == 1)

return "jan"

if (Month == 2)

return "feb"

if (Month == 3)

return "mar"

if (Month == 4)

return "apr"

if (Month == 5)

return "may"

if (Month == 6)

return "jun"

if (Month == 7)

return "jul"

if (Month == 8)

return "aug"

if (Month == 9)

return "sep"

if (Month == 10)

return "oct"

if (Month == 11)

return "nov"

if (Month == 12)

return "dec"

}

/****************************************************************************** * CutWord -- auto newline

*

* modification history

* --------------------

* 01a, 24mar2003, t357 fix some bug

* 01a, 05mar2003, t357 written

* --------------------

******************************************************************************/ macro CutWord(ncurLine, szInf)

{

LENGTH = 63

nlength = StrLen(szInf)

i = 0 /* loop control */

begin = 0 /* first character's index of current line */

pre = 0 /* preceding word's index */

hbuf = GetCurrentBuf()

// nline = GetBufLnCur()

while (i < nlength)

{

/* remove by t357

nrow = 0

sz = ""

while (nrow < 80)

{

if (nlength < 0)

break

sz = Cat(sz, szInf[nrow])

nrow = nrow + 1

nlength = nlength - 1

}

InsBufLine(hbuf, nline, sz)

szInf = szInf[nrow]

}

*/

c = szInf[i]

if (" " == @c@ && (i - b < LENGTH))

{

pre = i

}

else if (" " == @c@)

{

szOutput = ""

k = begin /* loop control */

while (k < pre)

{

szOutput = Cat(szOutput, szInf[k])

k = k + 1

}

InsBufLine(hbuf, ncurLine, sz)

ncurLine = ncurLine + 1

begin = pre

}

i = i + 1

}

if (h != i - 1)

{

szOutput = ""

k = begin /* loop control */

while (k < pre)

{

szOutput = Cat(szOutput, szInf[k])

k = k + 1

}

InsBufLine(hbuf, ncurLine, sz)

ncurLine = ncurLine + 1

}

}

// Wrap ifdeinef .. endif around the current selection macro IfdefineSz(sz)

{

hwnd = GetCurrentWnd()

lnFirst = GetWndSelLnFirst(hwnd)

lnLast = GetWndSelLnLast(hwnd)

hbuf = GetCurrentBuf()

InsBufLine(hbuf, lnFirst, "#ifndef @sz@")

InsBufLine(hbuf, lnFirst + 1, "#define @sz@") InsBufLine(hbuf, lnLast + 3, "#endif /* @sz@ */") SetBufIns(hbuf, lnFirst + 2, 0)

}

/* A U T O E X P A N D */

/*-------------------------------------------------------------------------

Automatically expands C statements like if, for, while, switch, etc..

To use this macro,

1. Add this file to your project or your Base project.

2. Run the Options->Key Assignments command and assign a convenient keystroke to the "AutoExpand" command.

3. After typing a keyword, press the AutoExpand keystroke to have the statement expanded. The expanded statement will contain a ### string which represents a field where you are supposed to type more.

The ### string is also loaded in to the search pattern so you can

use "Search Forward" to select the next ### field.

For example:

1. you type "for" + AutoExpand key

2. this is inserted:

for (###; ###; ###)

{

###

}

3. and the first ### field is selected.

-------------------------------------------------------------------------*/

/******************************************************************************

* AutoExpand - Automatically expands C statements

*

* DESCRIPTION: - Automatically expands C statements like if, for, while, * switch, etc..

*

* Input:

* Output:

* Returns:

*

* modification history

* --------------------

* 01a, 27mar2003, t357 modified

* --------------------

******************************************************************************/ macro AutoExpand()

{

// get window, sel, and buffer handles

hwnd = GetCurrentWnd()

if (hwnd == 0)

stop

sel = GetWndSel(hwnd)

if (sel.ichFirst == 0)

stop

hbuf = GetWndBuf(hwnd)

// get line the selection (insertion point) is on

szLine = GetBufLine(hbuf, sel.lnFirst);

// parse word just to the left of the insertion point

wordinfo = GetWordLeftOfIch(sel.ichFirst, szLine)

ln = sel.lnFirst;

chTab = CharFromAscii(9)

// prepare a new indented blank line to be inserted.

// keep white space on left and add a tab to indent.

// this preserves the indentation level.

ich = 0

while (szLine[ich] == ' ' || szLine[ich] == chTab)

{

ich = ich + 1

szLine = strmid(szLine, 0, ich)

sel.lnFirst = sel.lnLast

sel.ichFirst = wordinfo.ich

sel.ichLim = wordinfo.ich

// expand szWord keyword...

if (wordinfo.szWord == "if" ||

wordinfo.szWord == "while" ||

wordinfo.szWord == "elseif")

{

SetBufSelText(hbuf, " (###)")

InsBufLine(hbuf, ln + 1, "@szLine@" # "{");

InsBufLine(hbuf, ln + 2, "@szLine@" # chTab); InsBufLine(hbuf, ln + 3, "@szLine@" # "}");

}

else if (wordinfo.szWord == "for")

{

SetBufSelText(hbuf, " (###; ###; ###)")

InsBufLine(hbuf, ln + 1, "@szLine@" # "{");

InsBufLine(hbuf, ln + 2, "@szLine@" # chTab); InsBufLine(hbuf, ln + 3, "@szLine@" # "}");

}

else if (wordinfo.szWord == "switch")

{

SetBufSelText(hbuf, " (###)")

InsBufLine(hbuf, ln + 1, "@szLine@" # "{")

InsBufLine(hbuf, ln + 2, "@szLine@" # "case ") InsBufLine(hbuf, ln + 3, "@szLine@" # chTab) InsBufLine(hbuf, ln + 4, "@szLine@" # chTab # "break;") InsBufLine(hbuf, ln + 5, "@szLine@" # "default:") InsBufLine(hbuf, ln + 6, "@szLine@" # chTab) InsBufLine(hbuf, ln + 7, "@szLine@" # "}")

else if (wordinfo.szWord == "do")

{

InsBufLine(hbuf, ln + 1, "@szLine@" # "{")

InsBufLine(hbuf, ln + 2, "@szLine@" # chTab);

InsBufLine(hbuf, ln + 3, "@szLine@" # "} while ();")

}

else if (wordinfo.szWord == "case")

{

SetBufSelText(hbuf, " ###")

InsBufLine(hbuf, ln + 1, "@szLine@" # chTab)

InsBufLine(hbuf, ln + 2, "@szLine@" # chTab # "break;")

}

else

stop

SetWndSel(hwnd, sel)

LoadSearchPattern("###", true, false, false);

Search_Forward

}

/* G E T W O R D L E F T O F I C H */ /*------------------------------------------------------------------------- Given an index to a character (ich) and a string (sz),

return a "wordinfo" record variable that describes the

text word just to the left of the ich.

Output:

wordinfo.szWord = the word string

wordinfo.ich = the first ich of the word

wordinfo.ichLim = the limit ich of the word

-------------------------------------------------------------------------*/ macro GetWordLeftOfIch(ich, sz)

{

wordinfo = "" // create a "wordinfo" structure

chTab = CharFromAscii(9)

// scan backwords over white space, if any

ich = ich - 1;

if (ich >= 0)

while (sz[ich] == " " || sz[ich] == chTab)

{

ich = ich - 1;

if (ich < 0)

break;

}

// scan backwords to start of word

ichLim = ich + 1;

asciiA = AsciiFromChar("A")

asciiZ = AsciiFromChar("Z")

while (ich >= 0)

{

ch = toupper(sz[ich])

asciiCh = AsciiFromChar(ch)

if ((asciiCh < asciiA || asciiCh > asciiZ) && !IsNumber(ch))

break // stop at first non-identifier character

ich = ich - 1;

}

ich = ich + 1

wordinfo.szWord = strmid(sz, ich, ichLim)

wordinfo.ich = ich

wordinfo.ichLim = ichLim;

return wordinfo

}

//

// Comment the selected block of text using single line comments and indent it //

hbuf = GetCurrentBuf();

hwnd = GetCurrentWnd();

sel = GetWndSel(hwnd);

iLine = sel.lnFirst;

while (iLine <= sel.lnLast)

{

szLine = GetBufLine(hbuf, iLine);

szLine = cat("// ", szLine);

PutBufLine(hbuf, iLine, szLine);

iLine = iLine + 1;

}

if (sel.lnFirst == sel.lnLast)

{

tabSize = _tsGetTabSize() - 1;

sel.ichFirst = sel.ichFirst + tabSize;

sel.ichLim = sel.ichLim + tabSize;

}

SetWndSel(hwnd, sel);

}

//

// Undo the CommentBlock for the selected text. //

macro UnCommentBlock()

{

hbuf = GetCurrentBuf();

hwnd = GetCurrentWnd();

sel = GetWndSel(hwnd);

iLine = sel.lnFirst;

tabSize = 0;

while (iLine <= sel.lnLast)

{

szLine = GetBufLine(hbuf, iLine);

len = strlen(szLine);

szNewLine = "";

if (len > 1)

{

if (szLine[0] == "/" && szLine[1] == "/")

{

if (len > 2)

{

if (AsciiFromChar(szLine[2]) == 9)

{

tabSize = _tsGetTabSize() - 1;

szNewLine = strmid(szLine, 3, strlen(szLine));

}

}

if (szNewLine == "")

{

szNewLine = strmid(szLine, 2, strlen(szLine));

tabSize = 2;

}

PutBufLine(hbuf, iLine, szNewLine);

}

}

iLine = iLine + 1;

}

if (sel.lnFirst == sel.lnLast)

{

sel.ichFirst = sel.ichFirst - tabSize;

sel.ichLim = sel.ichLim - tabSize;

SetWndSel(hwnd, sel);

}

macro _tsGetT abSize()

{

szTabSize = GetReg("TabSize");

if (szTabSize != "")

{

tabSize = AsciiFromChar(szTabSize[0]) - AsciiFromChar("0");

}

else

{

tabSize = 4;

}

return tabSize;

}

//

// Reformat a selected comment block to wrap text at 80 columns.

// The start of the selection (upper left most character of the selection) is

// handled specially, in that it specifies the left most column at which all

// lines will begin. For example, if the following block was selected starting

// at the @ symbol, through the last line of the block...

//------------------------------------------------------------------------------

// preamble: @ This is a line that will be wrapped keeping the "at" symbol in its current column.

// All lines following it that are selected will use that as their starting column. See below to

see how the wrapping

flash常用快捷键

菜单命令: 新建FLASH文件【Ctrl】+【N】 打开FLA文件【Ctrl】+【O】 作为库打开【Ctrl】+【Shift】+【O】 关闭【Ctrl】+【W】 保存【Ctrl】+【S】 另存为【Ctrl】+【Shift】+【S】 导入【Ctrl】+【R】 导出影片【Ctrl】+【Shift】+【Alt】+【S】发布设置【Ctrl】+【Shift】+【F12】 发布预览【Ctrl】+【F12】 发布【Shift】+【F12】 打印【Ctrl】+【P】 退出FLASH【Ctrl】+【Q】 撤消命令【Ctrl】+【Z】 剪切到剪贴板【Ctrl】+【X】 拷贝到剪贴板【Ctrl】+【C】 粘贴剪贴板容【Ctrl】+【V】 粘贴到当前位置【Ctrl】+【Shift】+【V】清除【退格】 复制所选容【Ctrl】+【D】 全部选取【Ctrl】+【A】

取消全选【Ctrl】+【Shift】+【A】 剪切帧【Ctrl】+【Alt】+【X】 拷贝帧【Ctrl】+【Alt】+【C】 粘贴帧【Ctrl】+【Alt】+【V】 清除帧【Alt】+【退格】 选择所有帧【Ctrl】+【Alt】+【A】 编辑元件【Ctrl】+【E】 首选参数【Ctrl】+【U】 放大视图【Ctrl】+【+】 缩小视图【Ctrl】+【-】 100%显示【Ctrl】+【1】 缩放到帧大小【Ctrl】+【2】 全部显示【Ctrl】+【3】 显示\隐藏时间轴【Ctrl】+【Alt】+【T】 显示\隐藏工作区以外部分【Ctrl】+【Shift】+【W】显示\隐藏标尺【Ctrl】+【Shift】+【Alt】+【R】 显示\隐藏网格【Ctrl】+【’】 对齐网格【Ctrl】+【Shift】+【’】 编辑网络【Ctrl】+【Alt】+【G】 显示\隐藏辅助线【Ctrl】+【;】 锁定辅助线【Ctrl】+【Alt】+【;】 对齐辅助线【Ctrl】+【Shift】+【;】

SourceInsight和UltraEdit技巧

Source Insight使用技巧 默认情况下,SI已经定义了很多非常实用的快捷键: F5 指定行号,实现行跳转,在遇到编译错误的时候,能特别方便的找到出错行。Shift+F8 高亮显示指定标识,快速浏览标识的使用情况。 Ctrl+鼠标点击标识 直接跳转至标识定义处。 Ctrl+F 本文件内查找。 F3 本文件查找结果的上一个。 F4 本文件查找结果的下一个。 F7 打开Browse Project Symbols窗口,快速浏览工程内标识定义。 Ctrl+M Source Insight设置 1、背景色选择 要改变背景色Options->preference->windows background->color设置背景色2、解决字符等宽对齐问题。 SIS默认字体是VERDANA,很漂亮。这网页上应该也是用的VERDANA 字体。但由于美观的缘故,VERDANA字体是不等宽的。比如下面两行llllllllll MMMMMMMMMM 同样10个字符,长度差多了.用VERDANA来看程序,有些本应该对齐的就歪了。解放方法是使用等宽的字体,但肯定比较丑。比较推荐的是用Courier New。 3、解决TAB键缩进问题 Options-> Document Options里面的右下角Editing Options栏里,把Expand tabs勾起来,然后确定。OK,现在TAB键的缩进和四个空格的缩进在SIS里面看起来就对齐咯 4、SI中的自动对齐设置: 在C程序里, 如果遇到行末没有分号的语句,如IF, WHILE, SWITCH等, 写到该行末按回车,则新行自动相对上一行缩进两列。 Option->Document option下的Auto Indient中Auto Indient Type有三种类型None,Simple,Smart。个人推荐选用Simple类型。 5、向项目中添加文件时,只添加特定类型的文件(文件类型过滤器) 编辑汇编代码时,在SIS里建立PROJECT并ADD TREE的时候,根据默认设置并不会把该TREE里面所有汇编文件都包含进来

阿里旺旺在线客服对答(解答技巧)

阿里旺旺在线客服对答: 常用语: 一、客人来了欢迎语 亲,您好,欢迎光临***专营店。请问有什么可以帮助您的吗? 二.问:你们的价格太贵了,能不能再便宜一点 亲,小店微利,只为赚人气!而且淘宝商城店客服是无法操作改价格的,目前的价格已经是最低价!我们追求的是高性价比,而不是最低价,如果您实在想买更便宜的,欢迎您货比三家。还请亲能够谅解! 三.问:你们的货这么久了,怎么还没有到 亲,快递接货后发车不是直达,都是需要经过几次中转,所以一般正常到货时间为3-5天,边远地区7天左右,碰到周末有可能会延迟1-2天!也不排除各种原因出现的特殊情况,所以请亲们耐心等候! 四.针对买家要详细的发货时间 亲,我们这儿 16点之前付款订单会在当日发货,16点之后订单在隔日发货,礼拜天仓库发货,节假日发货见店铺公告。EMS隔天发货,周日及节假日发。我们默认发韵达和圆通,如亲们还需其他快递公司,请在备注中注明或联系客服,以免给亲们带来便。 五.针对买家对话结束。 亲,非常感谢您对***的支持,您的满意就是我们的追求,期待您的下次光临,祝您购物愉快。 六.问:我已经拍下来了,请早点给我发货

谢谢亲的支持,我们会在今明两天给你发货的,亲收到货满意的话,请给我们全部5分好评支持哦,如有问题及时联系我们,我们一定给你一个满意的处理结果,祝您购物愉快!天天快乐 七.问:收到的包袱是破的 温馨提示:亲在收货时,一定要检查一下包装是否完好,在确认无误时再签收哦。如果外包装破损请亲当面拒收,并且当着快递公司人员的面及时联系我们售后服务。我们会为您解决问题。而由于长途运输所带来挤压外盒变形,请买家谅解,谢谢支持! 八.如何改评价回复 登录“我的淘宝”—“信用管理”—点击“评价管理”,然后点“给他人的评价”---然后点击“给他人的评价”,找到相应评价,点击“我要修改” 买家可能会问的问题: 一.问:商品图片是否是实物拍的? 答:本店所有商品均为实物拍摄,请亲放心。 二.问:商品图片是否有色差? 答:网上购物色差是无法避免的,每张照片我们都会根据实物校对过颜色,但在不同的环境灯光,显示器下都会有色差问题,但请亲放心,我们已经把它降到最低了。望亲谅解! 三.问:关于商品品质问题? 答:我们在发货前都会进行质量检查,而且我们在选购商品的时候是非常严格的,质量这块请亲放心。

flash快捷键大全

flash快捷键大全 flash学习者快来看看,总有你想要的!工具 箭头工具【V】部分选取工具【A】线条工具【N】 套索工具【L】钢笔工具【P】文本工具【T】 椭圆工具【O】矩形工具【R】铅笔工具【Y】 画笔工具【B】任意变形工具【Q】填充变形工具【F】 墨水瓶工具【S】颜料桶工具【K】滴管工具【I】 橡皮擦工具【E】手形工具【H】缩放工具【Z】,【M】 菜单命令 新建FLASH文件【Ctrl】+【N】 打开FLA文件【Ctrl】+【O】 作为库打开【Ctrl】+【Shift】+【O】 关闭【Ctrl】+【W】 保存【Ctrl】+【S】 另存为【Ctrl】+【Shift】+【S】 导入【Ctrl】+【R】 导出影片【Ctrl】+【Shift】+【Alt】+【S】 发布设置【Ctrl】+【Shift】+【F12】 发布预览【Ctrl】+【F12】 发布【Shift】+【F12】

打印【Ctrl】+【P】 退出FLASH【Ctrl】+【Q】 撤消命令【Ctrl】+【Z】 剪切到剪贴板【Ctrl】+【X】 拷贝到剪贴板【Ctrl】+【C】 粘贴剪贴板内容【Ctrl】+【V】 粘贴到当前位置【Ctrl】+【Shift】+【V】清除【退格】 复制所选内容【Ctrl】+【D】 全部选取【Ctrl】+【A】 取消全选【Ctrl】+【Shift】+【A】 剪切帧【Ctrl】+【Alt】+【X】 拷贝帧【Ctrl】+【Alt】+【C】 粘贴帧【Ctrl】+【Alt】+【V】 清除贴【Alt】+【退格】 选择所有帧【Ctrl】+【Alt】+【A】 编辑元件【Ctrl】+【E】 首选参数【Ctrl】+【U】 转到第一个【HOME】 转到前一个【PGUP】 转到下一个【PGDN】 转到最后一个【END】

Source Insight用法精细

Source Insight实质上是一个支持多种开发语言(java,c ,c 等等) 的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我 们当成源代码阅读工具使用。 作为一个开放源代码的操作系统,Linux附带的源代码库使得广大爱好者有了一个广泛学习、深入钻研的机会,特别是Linux内核的组织极为复杂,同时,又不能像windows平台的程序一样,可以使用集成开发环境通过察看变量和函数,甚至设置断点、单步运行、调试等手段来弄清楚整个程序的组织结构,使得Linux内核源代码的阅读变得尤为困难。 当然Linux下的vim和emacs编辑程序并不是没有提供变量、函数搜索,彩色显示程序语句等功能。它们的功能是非常强大的。比如,vim和emacs就各自内嵌了一个标记程序,分别叫做ctag和etag,通过配置这两个程序,也可以实现功能强大的函数变量搜索功能,但是由于其配置复杂,linux附带的有关资料也不是很详细,而且,即使建立好标记库,要实现代码彩色显示功能,仍然需要进一步的配置(在另一片文章,我将会讲述如何配置这些功能),同时,对于大多数爱好者来说,可能还不能熟练使用vim和emacs那些功能比较强大的命令和快捷键。 为了方便的学习Linux源程序,我们不妨回到我们熟悉的window环境下,也算是“师以长夷以制夷”吧。但是在Window平台上,使用一些常见的集成开发环境,效果也不是很理想,比如难以将所有的文件加进去,查找速度缓慢,对于非Windows平台的函数不能彩色显示。于是笔者通过在互联网上搜索,终于找到了一个强大的源代码编辑器,它的卓越性能使得学习Linux内核源代码的难度大大降低,这便是Source Insight3.0,它是一个Windows平台下的共享软件,可以从https://www.wendangku.net/doc/224797530.html,/上边下载30天试用版本。由于Source Insight是一个Windows平台的应用软件,所以首先要通过相应手段把Linux系统上的程序源代码弄到Windows平台下,这一点可以通过在linux平台上将 /usr/src目录下的文件拷贝到Windows平台的分区上,或者从网上光盘直接拷贝文件到Windows平台的分区来实现。 下面主要讲解如何使用Source Insight,考虑到阅读源程序的爱好者都有相当的软件使用水平,本文对于一些琐碎、人所共知的细节略过不提,仅介绍一些主要内容,以便大家能够很快熟练使用本软件,减少摸索的过程。 安装Source Insight并启动程序,可以进入图1界面。在工具条上有几个值得注意的地方,如图所示,图中内凹左边的是工程按钮,用于显示工程窗口的情况;右边的那个按钮按下去将会显示一个窗口,里边提供光标所在的函数体内对其他函数的调用图,通过点击该窗体里那些函数就可以进入该函数所在的地方。

FLASH快捷键大全

FLASH快捷键大全箭头工具【v】 部分选取工具【a】 线条工具【n】 套索工具【l】 钢笔工具【p】 文本工具【t】 椭圆工具【o】 矩形工具【r】 铅笔工具【y】 画笔工具【b】 任意变形工具【q】 填充变形工具【f】 墨水瓶工具【s】 颜料桶工具【k】 滴管工具【i】 橡皮擦工具【e】 手形工具【h】 缩放工具【z】,【m】 菜单命令类 新建flash文件【ctrl】+【n】 打开fla文件【ctrl】+【o】 作为库打开【ctrl】+【shift】+【o】 关闭【ctrl】+【w】 保存【ctrl】+【s】 另存为【ctrl】+【shift】+【s】 导入【ctrl】+【r】 导出影片【ctrl】+【shift】+【alt】+【s】 发布设置【ctrl】+【shift】+【f12】 发布预览【ctrl】+【f12】 发布【shift】+【f12】 打印【ctrl】+【p】 退出flash【ctrl】+【q】 撤消命令【ctrl】+【z】 剪切到剪贴板【ctrl】+【x】 拷贝到剪贴板【ctrl】+【c】 粘贴剪贴板内容【ctrl】+【v】 粘贴到当前位置【ctrl】+【shift】+【v】 清除【退格】

复制所选内容【ctrl】+【d】 全部选取【ctrl】+【a】 取消全选【ctrl】+【shift】+【a】 剪切帧【ctrl】+【alt】+【x】 拷贝帧【ctrl】+【alt】+【c】 粘贴帧【ctrl】+【alt】+【v】 清除贴【alt】+【退格】 选择所有帧【ctrl】+【alt】+【a】 编辑元件【ctrl】+【e】 首选参数【ctrl】+【u】 转到第一个【home】 转到前一个【pgup】 转到下一个【pgdn】 转到最后一个【end】 放大视图【ctrl】+【+】 缩小视图【ctrl】+【-】 100%显示【ctrl】+【1】 缩放到帧大小【ctrl】+【2】 全部显示【ctrl】+【3】 按轮廓显示【ctrl】+【shift】+【alt】+【o】 高速显示【ctrl】+【shift】+【alt】+【f】 消除锯齿显示【ctrl】+【shift】+【alt】+【a】 消除文字锯齿【ctrl】+【shift】+【alt】+【t】 显示隐藏时间轴【ctrl】+【alt】+【t】 显示隐藏工作区以外部分【ctrl】+【shift】+【w】显示隐藏标尺【ctrl】+【shift】+【alt】+【r】 显示隐藏网格【ctrl】+【’】 对齐网格【ctrl】+【shift】+【’】 编辑网络【ctrl】+【alt】+【g】 显示隐藏辅助线【ctrl】+【;】 锁定辅助线【ctrl】+【alt】+【;】 对齐辅助线【ctrl】+【shift】+【;】 编辑辅助线【ctrl】+【shift】+【alt】+【g】 对齐对象【ctrl】+【shift】+【/】 显示形状提示【ctrl】+【alt】+【h】 显示隐藏边缘【ctrl】+【h】 显示隐藏面板【f4】 转换为元件【f8】 新建元件【ctrl】+【f8】 新建空白贴【f5】 新建关键贴【f6】 删除贴【shift】+【f5】 删除关键帧【shift】+【f6】 显示隐藏场景工具栏【shift】+【f2】

阿里巴巴后台操作技巧

操作与发布技巧 前期准备 1.首先,以买家的仪态登陆阿里巴巴国际站的首页,查看大致的板块分布。 2.输入与你产品相干的关键词,看同行的环境: A.产物品名称称 B.产品图片 C.扼要描述 D.最小订淘宝大学教程单量 E. 价格 3.针对排名靠前的网站或与你产品十分相似的网站多留心,进去看看他们网站的群体状况: A. 公司橱窗的设置(首要是关键词) B. 产品分组 C. 公司栏目 D. New products(可以懂得同行的最新动向) E. 产品内容 4.收集信息: A.产品图片:这个就不消多讲了,你可以自己弄,也能够从人家网站里copy! B.根据第2条,收集相干的关键词,当然也能够借助Google 等关键词工具来找关键词;关键词越多越好,关键词越多(至少达到三位数),覆盖面越广,被搜刮到的几率也就越大;

当然要是与你产品相干的关键词,不相干的设置了也没有什么意思,反而会影响你的专业度。汇集关键词的时辰要已买家的仪态去收集。比如说你们公司产品型号为ABC,这对于你来说很熟悉,也许它是非常畅销的产品,但是对于老外来说他并比不知晓,你设置了也没有什么用,常称之为"无效关键词"。找出来的关键餐饮创业策划书范文词可以先输入到Google、阿里巴巴等网站的首页,如果出来的内容很少,申明使用率不高。 C. 产品的相干描述:在发布产品的时辰填写详细描述时用到。如果你们公司有现存的英文资料,那就很好了。如果没有,根据第3 条,直接copy同行较为好的产品描述(当然产品要一样)。 后台管理 收集好了相干的信息,关键就是怎么样实其实在的去操作了。 1. 网站非产品信息的完善。 A. 公司介绍尽量把能天完备的信息填好,像主营业务之类的全数充塞;公司形象图:一般挨次为公司外观形象图-办公室---水流线。认证信息全数填好,传上公司相干证书的图片。栏目一栏全数填好,能上传图片的传图片;管理层,最佳做一个清晰的组织布局图,那样子显得很专业。 B. 企业网站设计里面可以选择很多风格,选出几个感觉还行的,有个图片是可以上怎样举行网上开店传的,这个提议做一张带有公司产品认证等的图片传上去(花钱不多),注意每

Flash知识点总结(有用哦)

Flash基础知识点总结(一) Flash的工作界面 标题栏 主工具栏 文档选 项卡 工具箱 舞台属性面板编辑栏库面板

舞台:进行创作的主要工作区域。 标尺、网格、编辑栏中设置显示比例。 场景概念: 时间轴窗口:由一系列的帧组成,每一帧是一幅瞬时图。分为:图层控制区和时间轴控制区。时间线是通过时间变化精确控制图层在每一秒的位置的工具。默认12帧/秒。Fps(framepersecond) 工具箱:主要绘图工具 动画播放控制器面板 属性窗口:设置对象属性 动作窗口:编写动作脚本 浮动面板:如:库窗口:用于存放重复元素。 (二)Flash动画的制作原理 在时间轴的不同帧上放置不同的对象或设置同一对象的不同属性,例如形状、位置、大小、颜色和透明度等,当播放指针在这些帧之间移动时,便形成了动画。

(三)重要概念 图形:是组成Flash动画的基本元素。制作动画时,可利用Flash的工具箱提供的工具绘制出动画需要的任何图形。 元件:是指可以在动画场景中反复使用的一种动画元素。它可以是一个图形,也可以是一个小动画,或者是一个按钮。 图层:图层就像好多透明的纸,用户可以在不同的纸上绘制各种图画,然后再将所有的纸叠在一起就构成了一幅完整的图画。位于下层的图形将在上层中空白或者透明的地方显示出来。 帧:帧分为关键帧、空白关键帧和普通帧三种类型。 关键帧是可以直接在舞台上编辑其内容的帧, 记录动画内容发生根本性变化的画面。只有关键帧才能进行编辑。F6:插入关键帧。插入关键帧时将上一状态的帧内容完全复制。 空白关键帧帧内没有画面,帧标识是空心小圆圈; 普通帧的作用是延伸关键帧上的内容。 帧频:每秒钟播放的帧数,默认12fps 一般认为是网页上最合适的速度。

FLASH最常用快捷键

FLASH课上常用快捷键 绘图工具的使用 1、Shift:绘制正圆 2、Alt:由中心向四周绘制椭圆 3、Alt+Shift:由中心向四周绘制正圆 任意变形工具 1、Shift : 等比例缩放。 2、Alt : 对称缩放。 3、Alt+shift:由中心向四周等比例缩放。 4、Ctrl : 任意自由变形。 5、Ctrl+shift:透视。 F8:散件转变成元件 Ctrl+F8:直接新建元件 Ctrl+B:打散 Ctrl+G(修改—组合):组合 Ctrl + shift + G : 取消组合 F5:一直显示上一帧的画面 F6:插入关键帧,并复制上一关键帧的画面。F7:插入空白关键帧 F5:加帧(延长帧) Shift+F5:删除帧 Ctrl+2:满画布显示 Shift:水平或垂直移动对象Enter : 用flash软件播放动画 Ctrl+Enter : 用flash播放器播放动画。 Ctrl+Z : 撤消 Ctrl+Y : 恢复 Ctrl+C:复制 Ctrl+V:粘贴(默认是粘贴画布的中心)Ctrl+shift+v:原位置粘贴 按住Alt键用鼠标拖动图形可以复制对象Alt键单击: 设置其它所有图层的显示方式按住Shift键 : 水平或垂直移动 Ctrl+Shift+R(视图—标尺) : 显示标尺 视图—贴紧—贴紧对齐 缓动:数值大越慢数值小越快 Alt+Shift+F9:颜色 Ctrl+Shift+H(修改-形状):添加形状提示Ctrl+Alt+H(视图):显示形状提示点 窗口—公用库—按钮 Ctrl+L:打开库面板 Ctrl+J:文档属性 Ctrl+T:变形面板 Ctrl+K:对齐面板

SourceInsight3.5软件安装流程.V1.0.0

文档类型开发文档 保密级别公开 技术报告 名称:SourceInsight3.5软件安装流程 编号: 版本号:V1.0.0 负责人:董磊 成员: 日期:2016年06月01日

目录 目录 (1) 版本 (2) 1文档目的 (3) 2安装SourceInsight3.5 (3) 3配置SourceInsight3.5 (9) 4使用SourceInsight3.5新建工程 (11) 图表目录 (16)

版本

1文档目的 Source Insight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++,C#和Java等程序的分析。能分析源代码并在工作的同时动态维护它自己的符号数据库,并自动显示有用的上下文信息。Source Insight不仅仅是一个强大的程序编辑器,它还能显示reference trees,class inheritance diagrams和call trees。Source Insight提供了最快速的对源代码的导航和任何程序编辑器的源信息。Source Insight提供了快速和革新的访问源代码和源信息的能力。与众多其它编辑器产品不同。 本文档详细介绍了SourceInsight3.5软件的安装流程、配置以及使用方法。2安装SourceInsight3.5 解压SourceInsight3.5压缩包并打开此文件夹,运行“InsightSetup”,当弹出如下图所示界面时,点击“Agree”,表示同意条款。 图2-1 当弹出如下图所示界面时,点击“Next”。

图2-2 当弹出如下图所示界面时,点击“Next”。 图2-3 当弹出如下图所示界面时,保持默认的安装路径,点击“Next”。

flash使用代码大全

外部调用swf on (release) { loadMovieNum("", 1); } 外部调用数据 loadVariablesNum("", 0); = true;wf和.exe),在Flash制作过程中,按“Ctrl+Enter”预览动画,以及把动画发布成网页文件时,此指令无法发挥它的功能。 Fscommand指令使用的语法是:Fscommand("command","arguments") Command是指令的相关命令,arguments是命令的参数。 下面我们就来讲讲如何通过Fscommand指令来实现全屏播放、取消Flash播放时的右键菜单以及关闭Flash动画。 1、全屏播放Flash “Fullscreen”是全屏的意思,在默认的情况下,Flash动画不是以全屏播放(false ),如果需要让动画以全屏状态播放,就必须把Fullscreen命令设置为True,写为:Fscommand ("Fullscreen","True"); 根据需要,我们可以把它写到帧、按钮、MC(Movie Clip)中。 2、取消右键菜单 Showmenu命令是用来设置是(True)否(false)显示Flash动画播放器的快捷菜单的全部指令,即右击鼠标时弹出的菜单,默认为True,如果要取消弹出的菜单,必须在第一帧这样设置: Fscommand ("showmenu","false"); 3、关闭动画 quit命令是用来关闭播放器的.swf和.exe文件,该命令没有参数,写为: fscommand ("quit"); 如果你想在flash动画结束时出现一个关闭动画的按钮,可以按下面的步骤做。 执行“Insert”下的“New Symbol”(或按Ctrl+F8),在弹出的窗口中选Button,然后制作一个简单的按钮,回到场景中,选中最后一帧,从“Library”中把刚刚建立的按钮拖到场景中,因为该按钮在动画的最后才显示。 给按钮写上如下代码,则实现按下按钮即关闭flash动画。 on (release) { fscommand ("quit"); } 一、几种Action命令

sourceinsight 快捷键 大全

SourceInsight 快捷方式大全 完成语法: Ctrl+E 复制一行: Ctrl+K 恰好复制该位置右边的该行的字符: Ctrl+Shift+K 复制到剪贴板: Ctrl+Del 剪切一行: Ctrl+U 剪切该位置右边的该行的字符: Ctrl+; 剪切到剪贴板: Ctrl+Shift+X 剪切一个字: Ctrl+, 左边缩进: F9 右边缩进: F10 插入一行: Ctrl+I 插入新行: Ctrl+Enter 加入一行: Ctrl+J 从剪切板粘贴: Ctrl+Ins 粘贴一行: Ctrl+P 重复上一个动作: Ctrl+Y 重新编号: Ctrl+R 重复输入: Ctrl+\ 替换: Ctrl+H 智能重命名: Ctrl+' 关闭文件: Ctrl+W 关闭所有文件: Ctrl+Shift+W 新建: Ctrl+N 转到下一个文件: Ctrl+Shift+N 打开: Ctrl+O 重新装载文件: Ctrl+Shift+O 另存为: Ctrl+Shift+S 显示文件状态: Shift+F10 激活语法窗口: Alt+L 回到该行的开始: Home 回到选择的开始: Ctrl+Alt+[ 到块的下面: Ctrl+Shift+] 到块的上面: Ctrl+Shift+[ 书签: Ctrl+M 到文件底部: Ctrl+End, Ctrl+(KeyPad) End 到窗口底部: (KeyPad) End (小键盘的END) 到一行的尾部: End 到选择部分的尾部: Ctrl+Alt+] 后退: Alt+,, Thumb 1 Click 后退到索引: Alt+M 向前: Alt+., Thumb 2 Click 转到行: F5, Ctrl+G

做天猫客服的一点心得,和一些小技巧分享给大家

做天猫客服的一点心得,和一些小技巧分享给大家从做客服到现在差不多有3个月的时间了,因为还是在校应届毕业生,所以一直是实习生的身份,这点其实倒是无所谓,重要的是希望自己能利用在校实习的这段时间尽快成长,正式毕业之后,可以实现一个良好的转型,更好地走好自己的电商路。目前在一家天猫月销量排行第一的童装店铺做售前客服,作为一个电子商务专业的本科生,学校也不错,我还是很愿意从基础做起,了解第一手的资料,更好的积累,为以后做准备。 客服的工作比较繁琐,每天都是一样的工作内容,不同的是你面对的顾客在变化,今天你遇到一个很烦的顾客,明天你遇到一个很好说话的顾客,自己一天天没有变化,跟你聊天的顾客却在不断地变化,更多客服迷失在了这日复一日的重复工作。反向,这中间其实也有一个问题值得我们客服去思考,如何在每天不变的自己中,最大限度地稳定一批不变的顾客,为店铺积累更多的忠实粉丝,这些忠实的粉丝,不仅需要店铺的宝贝品质的强力支持,也非常需要客服极具技巧性的沟通与服务。 作为一个网店客服,售前要做的基础就是熟悉阿里旺旺的各项操作及卖家后台的具体使用,这点是基础,就不多说了,但是有几点需要强调一下: 1丶把自己的旺旺添加好友验证设置为不用我验证就可以添加为好友,不要将想加你为好友的顾客拒之千里,验证会降低客户体验,。 2丶客服工作台的设置,尽量设置一个顾客等待多久之后的一个提醒,防止咨询量大的时候忽略某些已等待过久的顾客,降低顾客的服务体验。 3丶自动回复的设置:首次接到顾客的自动回复设置不要过长,最好不要超出4行,字数过多,会影响人们的阅读习惯,字体也不要太大,10号字就好了,字体颜色不要太花俏,一段文字含多种颜色是禁忌,一般两种颜色还是可以接受的,但

[完整版]Source_Insight教程及技巧

Source Insight使用简单说明 Source Insight是一个功能十分强大、使用也很方便的程序编辑器。它内置对C/C++、Java 甚至x86汇编语言程序的解析,在你编程时提供有用的函数、宏、参数等提示,因而,Source Insight正在国际、国内众多的IT公司使用。 Source Insight功能强大,它的窗口、菜单初一看来似乎很多,所以刚刚开始使用Source Insight的朋友往往觉得很麻烦。这里本人结合自己的使用经验,简单说说Source Insight的使用。(本文以McuSystem为例,Source Insight 以3.0版本为例。其他版本的Source Insight 大同小异) 和众多程序编辑环境一样,Source Insight中也有Project。 建立工程的方法很简单: 1.打开Source Insight,选择Project菜单->New Project; 2.在出现的对话框中选择并选择存放工程文件的文件夹,输入工程名(比如 McuSystem),点击“保存”; 3.又出现一个对话框,在Configuration部分可以选择这个工程使用全局配置文件还 是自己单独的配置文件,这个无所谓,(不过最好选择单独的配置文件),再点击 “OK”; 4.再次出现一个对话框,这是选择文件添加到Project中,通过左边的树状图找到你 想添加的文件,点击Add就可以了(如图1)。你可以将不通路径下的文件添加到 同一个工程中,而不用拷贝源文件。选择完后点击Close; 图1 这样工程就建立好了,文件列表就出现在Project Window中(如果Project Window被关闭了,可以选中View菜单->Project Window)。点击Project Window中任意一个文件,文件的内容出现在中央的编辑区了。(如图2)

淘宝网店推广营销工具使用技巧分析

淘宝网店推广营销工具使用技巧分析

淘宝网店推广营销工具使用技巧分析 很多卖家听到网店推广,主要想的是商品推广和淘宝站外推广,但是对淘宝店内的营销设置可能做的不够多,其实我觉得作为一个淘宝卖家,在考虑淘宝网店推广这个问题,必须要考虑两方面:其一是提高流量,其二是提高转化率,两者相辅相成,哪一方面做的不好都会导致推广效用降低,有流量没有转化率那么辛辛苦苦做来的很多流量就会浪费。那如何提高店铺的转化率呢?这个涉及到很多方面,比如你的店铺装修、商品描述等,这几方面之后的文章我会着重写。本文主要分析淘宝提供的一些营销工具的作用和使用技巧,从而增加店铺转化率,一些工具利用好了往往能起到事半功倍的效果。

抽奖工具,这个工具对于吸引新顾客和回头客的效果还是不错的,使用起来注意这个几个技巧,效果会更佳。 1、小奖要多,提高小奖的中奖率,这些小奖要选用一些低成本但是又实用的而且档次却不显低的商品,选实用的商品顾客抽到后他才会想要,竟而在你店里购买其他商品,而成本低但是却有一定档次的商品,那作为抽奖商品时他的定价就可以高一点,这样既能降低你的成本,又能提高买家中奖后喜悦度。 2、大奖够大(关键因素),而且产品要有吸引力,可你设置为是你店铺的热销商品之一,顾客来抽奖都是冲这大奖来的,大奖产品没吸引力也就没人会抽了。

3、充分展示。广告打在醒目位置,店铺的首页,或者产品的描述里都放上,让每一个买家进店就知道有抽奖活动。有的卖家搞了抽奖,没有让买家知道,那就是白做。 会员关系管理:会员制作分两种,1种是按照买家交易额,另一种是按照买家交易笔数,需要我们划定一个规则,达到多少是高级会员,再到多少就是VIP会员。会员卡也是提升回头率一个非常有效的方法,比如我有某个店里的会员卡,恰巧我要买的东西他的店里有,那我一定先去他的店里看一看,算一下这个折扣是不是更合适一些,没有用的朋友可以去阿里旺旺网店版研究下。会员关系管理的主要作用有

source insight代码格式化

source insight代码格式化(Astyle) GNU的astyle是一个免费的代码格式化工具,能够格式化c/c++等代码,我们可以将Astyle.exe外挂到SourceInsight中,具体步骤如下: 1、下载Astyle工具 在网站https://www.wendangku.net/doc/224797530.html,/projects/astyle/下载 2、source insight中挂载Astyle工具 a、将AStyle_2.02_windows.zip解压到D:\lb\目录下(可以放在任意目录)。 b、在SourceInsight菜单栏里,Options-->Custom Commands界面上选择:Add,在弹出对话框写入命令名,在run中添加相应的命令。 1)ansi C格式化当前文件的命令为:"D:\lb\AStyle\bin\Astyle.exe"--style=ansi -s4-S-N-L-m0-M40--convert-tabs--suffix=.pre%f

2)ansi C格式化某个目录下所有文件的命令为:"D:\lb\AStyle\bin\Astyle.exe" Z:\LocalProject\DEZHOU3716/*.c Z:\LocalProject\DEZHOU3716/*.h-- style=ansi-s4-S-N-L-m0-M40--recursive--convert-tabs--suffix=.pre %f c、在SourceInsight菜单栏里,Options-->Custom Commands界面上选择:Keys,在弹出对话框的Command框的列表中找到你定义的命令名,然后点击

FLASH的所有快捷键

调试影片命令 文件(F) 新建(N)… Ctrl+N 打开(O)… Ctrl+O 在Bridge 中浏览Ctrl+Alt+O 关闭(C) Ctrl+W 全部关闭Ctrl+Alt+W 共享我的屏幕… 退出(X) Ctrl+Q 编辑(E) 复制(C) Ctrl+C 全选(L) Ctrl+A 查找(N)… Ctrl+F 再次查找(A) F3 转到行(G)… Ctrl+G 首选参数(F)… Ctrl+U 快捷键(K)… 视图(V) 隐藏字符(C) Ctrl+Shift+8 自动换行(W) Ctrl+Shift+W 隐藏面板(P) F4 调试(D) 继续(C) Alt+F5 结束调试会话(E) Alt+F12 跳入(I) Alt+F6 跳过(V) Alt+F7 跳出(O) Alt+F8 切换断点(B) Ctrl+B 删除所有断点(A) Ctrl+Shift+B 开始远程调试会话(R) ActionScript 3.0 ActionScript 2.0 窗口(W) 工具栏(O) 主工具栏(M) 控制器(O) 编辑栏(E) 时间轴Ctrl+Alt+T 工具Ctrl+F2 属性(P) Ctrl+F3 库(L) Ctrl+L, F11 公用库(B) libraries

动作(A) F9 行为Shift+F3 编译器错误Alt+F2 调试面板(D) 调试控制台 变量 ActionScript 2.0 调试器Shift+F4 影片浏览器(M) Alt+F3 输出(U) F2 对齐(G) Ctrl+K 颜色(C) Shift+F9 信息(I) Ctrl+I 样本(W) Ctrl+F9 变形(T) Ctrl+T 组件(X) Ctrl+F7 组件检查器(R) Shift+F7 其他面板 辅助功能(A) Shift+F11 历史记录(H) Ctrl+F10 场景(S) Shift+F2 屏幕(C) 字符串(T) Ctrl+F11 Web 服务(W) Ctrl+Shift+F10 项目 扩展 工作区(S) 隐藏面板(H) F4 帮助(H) Flash 帮助(H) F1 Adobe 产品改进计划(I)… Flash Exchange 管理扩展功能(M)… Flash 技术支持中心(S) Adobe 在线论坛(F) Adobe 培训(T) Updates… 关于Adobe Flash CS4 Professional (A) 绘画菜单命令 文件(F) 新建(N)… Ctrl+N 打开(O)… Ctrl+O 在Bridge 中浏览Ctrl+Alt+O 关闭(C) Ctrl+W

Source Insight中添加自定义功能

在Source Insight中添加自定义功能的步骤如下 1.Source Insight中,Options->Custom Commands...->Add...,New Command name 随便写,我的是"Edit with Vim" 2.Run中写入: "C:\Program Files\Vim\vim63\gvim.exe" --remote-silent +%l %f 意思是在当前已经打开的gvim窗口里面打开当前的文件,并且跳转到指定行 %l为当前的行号,%f为文件名 使用--remote-silent 的作用是,如果已经打开了对应文件,就不会打开第二次,而是在已经打开的文件里跳转到对应行 3.还是同一个对话框里面,选择Keys->Assign New Key...->按F12,如果你已经将F12设置给其他命令,选择其他的按键就行了 下面是一些常用自定义功能:( CUSTOM COMMANDS ) 打开资源管理器并选中当前文件 ShellExecute open explorer /e,/select,%f 查看log "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:log /path:%f /notempfile /closeonend diff "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:diff /path:%f /notempfile /closeonend 取得锁定(check out) "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:lock /path:%f /notempfile /closeonend 提交(check in) "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:%f /notempfile /closeonend 更新(update) "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:%f /notempfile /closeonend 更新整个目录(update all) "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:*.* /notempfile /closeonend 取消锁定(undo check out) "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:revert /path:%f /notempfile /closeonend 在ultriEdit中编辑 "C:\Program Files\UltraEdit-32/uedit32" %f 在vim中编辑并定位到当前行 "C:\Program Files\Vim\vim63\gvim.exe" --remote-silent +%l %f 汇总其他小技巧: 让{ 和} 不缩进: Options->Document Options->Auto Indent->Indent Open Brace/Indent Close Brace hao space: SourceInsight 小技巧 1、按住"ctrl", 再用鼠标指向某个变量,点击一下,就能进入这个变量的定义。

Source Insight 常用设置和快捷键大全

1.括号配对高亮: “在前括号左侧,后括号左侧”双击鼠标左键,可以选定匹配括号和其中内容(<>,(),L{R},[]之间) 2.让{ 和} 不缩进: Options -> Document Options -> Auto Indenting -> Auto Indent Type 选Simple 还有:让{ 和} 不缩进:options->document options->auto indent 去掉indent Open Brace和Indent Close Brace。(不好使,括号无法配对对齐!) 3.添加文件类型 用户可以定义自己的类型,Options->Document Options->add type,定义文件类型名以及文件名后缀。 勾选include when adding to projects在添加目录下文件到工程是该类文件就会添加进SI的工程。 如果需要将所有文件添加进SI的工程,可以定义一种文件类型*.*。 4.恢复ctrl+a的全选功能 Options -> Key Assignments:通过关键词save 找到save all,更改为ctrl+shift+a,通过关键词select找到select all,更改为ctrl +a 5.设置背景色: Options->preference->color->windows background设置背景色(护眼色:85,90,205) 6.字符大小不一: 方法1:选上"view --> draft view",就可以让每个字符的宽度一致了。快捷键是"Alt + F12" 方法2:解决中文注释字体间距太大: (1).Options->Style Properties (2). 在左边Style Name下找到Comment Multi Line和Comment.在其右边对应的Font属性框下的Font Name中选“Pick...”设置为宋体、常规、小四。确定,退回Style Properties界面,Size设为10。最后设置Clolors框下Foreground,点“Pick...”选择一种自己喜欢的颜色就OK了

阿里旺旺的使用技巧

用好阿里旺旺,让你的生意旺上加旺 开店指导 阿里旺旺是淘宝网为店主量身定做的免费网上商务沟通软件。它能帮商家轻松联系客户,发布、管理商业信息;及时把握商机,随时洽谈做生意。本章主要介绍阿里旺旺一些鲜为人知的使用技巧,掌握了这些技巧会大大提高网店的销售量,为店主节省时间和广告费用。 第1讲巧妙设置旺旺状态信息为店铺做广告 在淘宝开店的卖家,每天首先要做的事情就是登录阿里旺旺,与买家交流,进行交易管理。登录阿里旺旺后,在操作界面中就可以看到联系人及其自定义状态信息,如图2-1所示。很多卖家运用自定义状态来宣传店铺的优惠活动或热销商品。如果淘友对店铺所售商品感兴趣,可以进入到店铺中购买,这在很大程度上增加了浏览量,进而提高了商品的销售量,是推广店铺的一条捷径。

图2-1 阿里旺旺操作界面 要设置滚动的自定义状态广告,就要先设置好两条或者以上的信息。使用阿里旺旺设置滚动自定义状态广告具体操作步骤如下。 (1)在阿里旺旺操作界面中单击“点此输入个性签名”状态信息旁的下三角,如图2-2所示。 (2)在下拉菜单中,可以看到已经设置好的几种状态信息,选择“设置”,如图2-3所示。 图2-2 状态信息菜单图2-3 选择“设置” (3)进入“系统设置”对话框,选择左侧的基本设置下的“签名、回复和短语”选项,在右侧出现“个性签名”文本框,如图2-4所示。 图2-4 “系统设置”对话框

(4)单击“新增”按钮,打开“新增个性签名”信息对话框,在对话框中输入想要显示的自定义状态,如图2-5所示。 (5)单击底部的“保存”按钮,“系统设置”对话框中的“设置状态”信息栏中将显示刚才设置的自定义状态,按照同样的方法,再次单击“新增”按钮,添加自定义状态,如图2-6所示。 图2-5 添加自定义状态信息图2-6 添加自定义状态 (6)添加完自定义状态信息后,还可以单击对话框右边的“修改”、“删除”按钮修改或删除自定义状态信息,如图2-7所示。 图2-7 修改删除自定义状态信息 (7)当添加了两条以上的自定义状态后,勾选“滚动显示”前的复选框,在“时间”后面的下拉菜单中选择滚动显示的时间间隔,如图2-8所示。 (8)设置完后,单击底部的“确定”按钮,自定义状态信息即可设置完成。随后在阿里旺旺操作界面中将显示第一条自定义状态信息,如图2-9所

相关文档