Zen Coding在Notepad++中的高效使用方法

[b]Zen Coding下载[/b]

zen-Coding是一款快速编写HTML,CSS(或其他格式化语言)代码的编辑器插件,这个插件可以用缩写方式完成大量重复的编码工作,是web前端从业者的利器。 zen-Coding插件支持多种编辑器,如UltraEdit,Notepad++等。

zen-Conding下载地址:http://code.google.com/p/zen-coding/downloads/list (进入之后请下载:Zen Coding for Notepad++ v0.7)。

[b]Zen Coding的使用方法[/b]

zen-Coding的使用需要掌握CSS和HTML相关知识。其实只要对CSS的选择器比较熟悉,就可以得用简短的类似于CSS选择器的代码高效的编写出HTML代码。打开Notepad++编辑器,输入以下代码:

div#name

然后接着按一下快捷键ctrl+E,就会自动生成如下的HTML代码:



比如,我们想让写好的

hello world

,想在外层再套一个div,只需按下【Ctrl+Shift+A】,在弹出的对话框中输入: div.wrap,回车。此标签就能自动被嵌套。

甚至,我们可以玩的更炫一些,写好三行列表内容,此时没有任何标签。只需按下【Ctrl+Shift+A】,输入 ul>li* ,回车。这三行内容就能自动被ul li 嵌套起来。(不仅限于 li 列表哦)

Zen Coding 用法

【Ctrl+Shift+D】选中代码块(Balance Tag Inward/Outward)

选中当前光标所在的代码块,长按可依次选中父块

【Ctrl+Alt+[ , Ctrl+Alt+]】 转到上一个/下一个编辑点(Go to Next/Previous Edit Point)

按下可以依次跳到可输入内容的编辑点,省去了不停按方向键或鼠标来定位编辑点的麻烦。

Zen Coding 用法

【Ctrl+Alt+M 】合并行(Merge Lines)

将选中的多行代码合并为一行。压缩css、js代码为一行时,这个很方便。Ctrl+A,然后Ctrl+Alt+M,两下即可搞定,免去了动用压缩工具的麻烦。(当然这个只是简单地将代码合并为一行,并不能做更深入的代码压缩)

【Alt+/ 】添加、移除注释(Toggle Comment)

注释掉光标所在的代码块 (Notepad++ 自带的Ctrl+Shift+Q也可以用来注释代码)

【Ctrl+’ 】空标签转化(Split/Join Tag)

比如将
转化为
, 反向亦可。

【Ctrl+Shift+’ 】移除标签(Remove Tag)

比如将
hello world
移除div标签,留下hello world。
好了,目前 Notepad++ 的 Zen Coding 只有这几个快捷键,下面介绍一些常用到的缩写

不知道大家新建一个html 页面时,是如何输入文档声明和 head 那一坨东西的。现在有了Zen Coding,只需输入几个字母就能立马生成相应文档声明的 html 结构框架

html:4t (HTML 4.01 Transitional)
html:4s (HTML 4.01)
html:xt (XHTML 1.0)
html:xs (XHTML 1.0 Strict)
html:xxs (XHTML 1.1)
html:5 (HTML5)

head 中常用到的一些缩写

meta:utf, meta:compat
style, link:css, link:print, link:favicon, link:rss,
script, script:src

body 中会常用到的缩写

诸如 div, p, a, ul, ol, input:t, input:r 等等

其中,类似 ul+ 的形式可展开为(+号可自动生产默认的子元素)





类似的还有 ol+, dl+, table+, tr+, select+, map+, optg+ 等

IE 条件注释:

cc:ie6, cc:ie, cc:noie

[b]典型的用法[/b]

div#header>div#logo+ul.nav>li.item-$*5>a

按ctrl+E生成如下代码



Zend Coding语法

1.E | E#name | E.name

这里E表示元素,如p,div等。#name和.name分别表示ID和class属性。例:

div



div#main



ul.item



  • 如要显示一个id和多个class属性时,可以这样写

    ul#nav.one.two



    2.E>E | E#name>E#name | E.#name>E.name | E.name>E.name

    >表示父级嵌套子级。例:

    div>span



    div#nav>ul.main



    3.E+E | E#name+E#name | E.#name+E.name | E.name+E.name

    +号表示兄弟关系。例:

    p+p




    div#header+div#content+div#footer





    E+ (+号表示会生成默认的子元素)

    table+







    ul+





    dl+






    4.E*N

    N:表示某个元素需要重复的次数。例:

    p*3





    ul#nav>li.item*4



    5.E*N$

    $:表示序号。例:

    ul#nav>li.item-$*4



    6.E[attr]

    attr:表示元素属性。例:

    a[title]



    td[colspan=2]



    7.E|filter

    E|e

    |e输出转义字符

    div#wrap>div.content>p|e







    8.( )控制嵌套分组关系

    div#header>(h1.logo>a)+ul.nav>li.item*5>a



    div#header>h1.logo>a+ul.nav>li.item*5>a



    以上两种写法得到的结构是不一样的。 请大家注意观察。

    练习:将以下代码用zen-coding写出来。











    答案:(选中下一空行试试)
    div#page>(div#header>ul#nav>li*4>a)+(div#page>(h1>span)+p*2)+div#footer
    三、Notepad++中zen-coding的使用

    Expand Abbreviation(Ctrl+E):展开缩写

    用法:输入缩写代码后,在代码末尾直接按快捷键得到完整代码。

    Wrap with Abbreviation(Ctrl+Shift+A):嵌套父级元素

    用法:选中需要嵌套父级元素的标签,按快捷键,在弹出的对话框中输入父级标签回车即可。例:

    list1
    list2
    list3
    list4
    list5

    选中以上内容,然后按【Ctrl+Shift+A】在弹出的对话框中输入ul.nav>li.item-$*>a[title]后按【Enter】键,就会生成如下代码



    Balance TagInward/Outward(Ctrl+Shift+D):选中代码块

    选中当前光标所在的标记,再次按下可以依次选中其父标签。

    Go to Next/Previous Edit Point( Ctrl+Alt+] / Ctrl+Alt+[ ):转到下一个/上一个编辑点

    Merge Lines(Ctrl+Alt+M):合并行

    将选中的多行代码合并为一行。压缩css、js代码为一行时,这个很方便。Ctrl+A,然后Ctrl+Alt+M,两下即可搞定,免去了动用压缩工具的麻烦。(当然这个只是简单地将代码合并为一行,并不能做更深入的代码压缩)

    Toggle Comment(Alt+/):添加、移除注释

    注释掉光标所在的代码块 (Notepad++ 自带的Ctrl+Shift+Q也可以用来注释代码)

    Split/Join Tag(Ctrl+’ ):空标签转化

    比如将
    转化为
    , 反向亦可。

    Remove Tag(Ctrl+Shift+’ ):移除标签

    比如将
    hello world
    移除div标签,留下hello world。
    zen-coding常用缩写

    html:4t (HTML 4.01 Transitional)
    html:4s (HTML 4.01)
    html:xt (XHTML 1.0)
    html:xs (XHTML 1.0 Strict)
    html:xxs (XHTML 1.1)
    html:5 (HTML5)

    meta:utf, meta:compat
    style, link:css, link:print, link:favicon, link:rss,
    script, script:src

    div, p, a, ul, ol, input:t, input:r

    ol+, dl+, table+, tr+, select+, map+, optg+

    cc:ie6, cc:ie, cc:noie

    你可能感兴趣的:(Notepad++)