前端技術-開發工具


頁面制作之開發工具

開發工具介紹

開發工具一般分為兩種類型:文本編輯器和集成開發環境(IDE)

常用的文本編輯器:Sublime Text、Notepad++、EditPlus等

常用的IDE:WebStorm、Intellij IDEA、Eclipce等

我們這里主要介紹如何使用Sublime Text編輯器,它基本滿足我們對前端開發工具的需求。

一、Sublime Text的特點:

跨平台、啟動快

多行選擇

各種實用插件

Snippets

支持VIM兼容模式

Sublime Text獲取地址:http://www.sublimetext.com/

二、常用的插件

Package Control:安裝其他插件之前,首先先安裝Package Control

Emment:Web開發者的工具包,可以大大提高你的HTML和CSS的工作流程

SublimeCodeIntel:代碼提示

DocBlocker:對js代碼進行注釋

JSFormat:格式化js代碼

Terminal:使用vim命令

2.1 Package Control

安裝其他插件之前,首先先安裝Package Control,具體步驟如下:

使用Ctrl+`快捷鍵或者通過View->Show Console菜單打開命令行,

Sublime text3粘貼如下代碼:

import urllib.request,os; pf = 'PackageControl.sublime-package'; ipp = sublime.installed_packages_path();urllib.request.install_opener( urllib.request.build_opener(urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf),'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace('','%20')).read())

Sublime text2粘貼如下代碼:

import urllib2,os; pf='PackageControl.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs(ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf),'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( '','%20' )).read()); print( 'Please restart Sublime Text to finishinstallation')

如果順利的話,此時就可以在Preferences菜單下看到Package Settings和Package Control兩個菜單了。

可能由於各種原因,無法使用代碼安裝,那可以通過以下步驟手動安裝Package Control:

a.Package Control下載地址:http://files.cnblogs.com/files/jingwhale/PackageControl.zip
b.點擊Preferences>BrowsePackages菜單
c.進入打開的目錄的上層目錄,然后再進入Installed Packages/目錄
d.下載Package Control.sublime-package並復制到Installed Packages/目錄
e.重啟SublimeText。

2.2 Emment

Emment是一個Web開發者的工具包,可以大大提高你的HTML和CSS的工作流程。

基本上,大多數的文本編輯器都會允許你存儲和重用一些代碼塊,我們稱之為“片段”。雖然片段能很好地推動你得生產力,但大多數的實現都有這樣一個缺點:你必須先定義你得代碼片段,並且不能再運行時進行拓展。Emmet把片段這個概念提高到了一個新的層次:你可以設置CSS形式的能夠動態被解析的表達式,然后根據你所輸入的縮寫來得到相應的內容。Emmet是很成熟的並且非常適用於編寫HTML/XML 和 CSS 代碼的前端開發人員,但也可以用於編程語言。

jdfw

2.2.1 安裝Emment

a、通過快捷鍵組合ctrl+shift+P喚出命令面板
b、在面板中輸入“install package”后回車
c、接着輸入“Emment”,等待安裝完成。

2.2.2 使用Emment
1) html初始化

輸入“!”或“html:5”,然后按Tab鍵: 

html:5 或!:用於HTML5文檔類型
html:xt:用於XHTML過渡文檔類型
html:4s:用於HTML4嚴格文檔類型

2) head標簽內操作

引入外部樣式表:link:css+tab

<link rel="stylesheet" href="style.css">

引入內部樣式表:style+tab

<style></style>

引入外部js文件:script:src+tab

<script src=""></script>
引入內部js文件:script+tab
<script></script>

添加網站圖標:link:favicon+tab

<link rel="shortcut icon" type="image/x-icon" href="favicon.ico">
設置字符編碼:meta:utf+tab
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

設置兼容模式meta:compat+tab

<meta http-equiv="X-UA-Compatible" content="IE=7">

演示如下:

3)  body體內容編輯

●標簽:標簽名(+tab)

●id:標簽名#+類名稱(+tab),可以跟多個類

  類:標簽名.+id名稱(+tab),僅可以跟一個id

只輸入.item,則Emmet會根據父標簽進行判定,一般為div。比如在<ul>中輸入.item,就會生成<li class="item"></li>。

下面是所有的隱式標簽名稱:

li:用於ul和ol中
tr:用於table、tbody、thead和tfoot中
td:用於tr中
option:用於select和optgroup中

●標簽的內容:標簽名{內容}

標簽內的屬性:標簽名[屬性名=屬性值],如:a[href=www.baidu.com]

補充:

表單method屬性

form:post(get)

input屬性添加縮寫(部分)

input->inp
input:hidden->input:h
input:text->input:t
input:password->input:p
input:checkbox->input:c
input:radio->input:r
input:submit->input:s
input:button->input:b

●嵌套

>:子元素符號,表示嵌套的元素
+:同級標簽符號
^:可以使該符號前的標簽提升一行

●分組()
可以通過嵌套和括號來快速生成一些代碼塊,比如輸入(.foo>h1)+(.bar>h2),會自動生成如下代碼:

●定義多個元素*
要定義多個元素,可以使用*符號。比如,ul>li*3可以生成如下代碼

●計數器 $
在我們做”輪播“時,給元素的命名(id或者class),都會有一個計數位,這個時候,我們就可以使用 $ 它來實現了,如下:

可以合理組合各種操作來寫出復雜樣式的代碼塊。

2.2.3 CSS縮寫
1).  值

比如要定義元素的寬度,只需輸入w100,即可生成

width: 100px;


除了px,也可以生成其他單位,比如輸入h10p+m5e,結果如下

height: 10%;  
margin: 5em;

單位別名列表p 表示%、e 表示 em、x 表示 ex

2).  附加屬性

@f+

3).  模糊匹配

如果有些縮寫你拿不准,Emmet會根據你的輸入內容匹配最接近的語法,比如輸入ov:h、ov-h、ovh和oh,生成的代碼是相同的:

overflow: hidden;

4).  供應商前綴

如果輸入非W3C標准的CSS屬性,Emmet會自動加上供應商前綴,比如輸入trf,則會生成:

-webkit-transform: ;  
-moz-transform: ;  
-ms-transform: ;  
-o-transform: ;  
transform: ;

如果不希望加上所有前綴,可以使用縮寫來指定,比如-wm-trf表示只加上-webkit和-moz前綴:

前綴縮寫如下: w 表示 -webkit-、m 表示 -moz-、 s 表示 -ms-、o 表示 -o-

5).  漸變

輸入lg(left, #fff 50%, #000),會生成如下代碼:

background-image: -webkit-linear-gradient(left, #fff 50%, #000);
background-image: -o-linear-gradient(left, #fff 50%, #000);
background-image: linear-gradient(to right, #fff 50%, #000);
2.3、常用的快捷鍵
1)、命令板(Ctrl+Shift+p)

常用,新建文件時(為對文件進行保存),設置文件的語境:按Ctrl+Shift+p調出命令板,鍵入sshtml設置html語境sshtml,鍵入sscss設置css語境,鍵入ssjs設置js語境,這樣進行所在語境的代碼高亮和提示。

2)、查找(Ctrl+p)

: 查找行數,如::300,查找300行

@  定位js里的函數、css里的選擇器,如:@show,定位js文件中的show方法

# 查找關鍵字,如:#this,查找this

3)、將光標移動到img或background-image標簽上,按下ctrl+u,Emmet會自動讀取圖片的尺寸並添加。
4)、多行選擇

選中一個關鍵字,按Ctrl+d,可以選擇多個相同的關鍵字(每按一次,增加一個)。

5)、編輯點快捷鍵分別為ctrl+alt+left、ctrl+alt+right。
6)、快速的移除多余的匹配的開始標簽與閉合標簽,快捷鍵:ctrl+k。

在一些大型的HTML代碼中,有時標簽嵌套的太多,通過Emmet移除標簽這一功能。

7)、數字遞增/遞減,可以以0.1、1和10三個值進行遞增/遞減

快捷鍵分別是:alt+up/down、ctrl+up/down、和alt+shift+up/down

8)、上下移動移動代碼位置,ctrl+shift+alt+up/down
9)、數學計算表達式

有了Emmet在HTML和CSS文件中都可以進行簡單的數字運算,神奇了,輸入4*8再按ctrl+shift+y,Emmet能給出最終的結果。

2.4 DocBlocker

安裝

a、通過快捷鍵組合ctrl+shift+P喚出命令面板
b、在面板中輸入“install package”后回車
c、接着輸入“DocBlocker”,等待安裝完成

使用

在要注釋函數的上方,按‘/**’+tab鍵對代碼進行注釋。

jdfw

2.5 SublimeCodeIntel

SublimeCodeIntel是一個非常強大的代碼提示插件。

a、通過快捷鍵組合ctrl+shift+P喚出命令面板
b、在面板中輸入“install package”后回車
c、接着輸入“SublimeCodeIntel”,等待安裝完成。

2.6 JSFormat

安裝

a、首先通過以下路徑打開用戶按鍵綁定文件:
     Preferences → Key Bindings – User
b、然后在其中添加以下代碼(如果你有需要的話,其中的快捷鍵組合是可以自己定義的):
    {"keys": ["ctrl+shift+r"], "command": "reindent" , "args": {"single_line": false}}

c、安裝JSFormat
    ●通過快捷鍵組合ctrl+shift+P喚出命令面板
    ●在面板中輸入“install package”后回車
    ●接着輸入“format”(即格式化的意思),在彈出的列表中找到對應你所想要進行格式化操作的語言,這里我們是對js格式化,選擇JSFormat,等待安裝完成。

使用

選中沒有格式化的代碼,按‘Ctrl+Shift+r’對代碼進行格式化。

jdfw

2.7 Terminal

安裝

a、通過快捷鍵組合ctrl+shift+P喚出命令面板
b、在面板中輸入“install package”后回車
c、接着輸入“Terminal”,等待安裝完成。

使用

任意處按esc鍵進入vim命令狀態,可以使用vim命令。退出,按a。

三、snippet

Snippet 是插入到文本中的智能模板並使這段文本適當當前代碼環境。程序員總是會不斷的重寫一些簡單的代碼片段,這種工作乏味無聊,而Snippet的出現會讓Code更加高效。

Snippet可以存儲在任何的文件夾中,Snippet文件是以.sublime-snippet為擴展的XML文件,可以命名為XXX.sublime-snippet,創建自己的snippet的方式為菜單欄Tools->New Snippet

3.1 新建的文件如下:
<snippet>
    <content><![CDATA[
Hello, ${1:this} is a ${2:snippet}.
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <!-- <tabTrigger>hello</tabTrigger> -->
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <!-- <scope>source.python</scope> -->
</snippet>

為了方便理解簡化以上代碼:

<snippet>
    <content><![CDATA[Type your snippet here]]></content>
    <!-- Optional: Tab trigger to activate the snippet -->
    <tabTrigger>hello</tabTrigger>
    <!-- Optional: Scope the tab trigger will be active in -->
    <scope>source.python</scope>
    <!-- Optional: Description to show in the menu -->
    <description>My Fancy Snippet</description>
</snippet>

簡要介紹一下snippet四個組成部分:

content:其中必須包含<![CDATA[…]]>,否則無法工作, Type your snippet here用來寫你自己的代碼片段
tabTrigger:用來引發代碼片段的字符或者字符串, 比如在以上例子上, 在編輯窗口輸入hello然后按下tab就會在編輯器輸出Type your snippet here這段代碼片段
scope: 表示你的代碼片段會在那種語言環境下激活, 比如上面代碼定義了source.python, 意思是這段代碼片段會在python語言環境下激活.
description :展示代碼片段的描述, 如果不寫的話, 默認使用代碼片段的文件名作為描述

常用的scope(語言類source,標簽類text):

HTML: text.html
CSS: source.css
Javascript: source.js
JSON: source.json
SASS: source.sass
XML: text.xml
Markdown: text.html.markdown
Ruby: source.ruby
PHP: source.php
Latex: text.tex.latex

Java: source.java

JSP: text.html.jsp

3.2 修改新建的文件如下:
<snippet>
    <content><![CDATA[
<div>hello world!</div>
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>hello</tabTrigger>
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <scope>text.html</scope>
</snippet>
3.3 在html里輸入hello,按回車,顯示如下:
<div>hello world!</div>

jdfw

四、 [F5] Web開發免刷新(保存即刷新)

[F5]是支持所有編輯器和瀏覽器的網頁開發免刷工具,讓你在保存代碼的同時,自動刷新頁面。

獲取地址:http://getf5.com/

4.1 解壓,打開f5.exe,自動打開默認瀏覽器

image

4.2 新建項目文件夾,將項目文件夾路徑拷貝至添加項目列表框,點擊添加

image

4.3 將項目文件夾拖至sublime中,新建項目所需文件,並刷新瀏覽器

image

點擊進入要編輯的html頁面。

盡情的在sublime里編輯html、css代碼,並用F5實現保存(ctrl+s)頁面會自動刷新。

更多可以閱讀:

http://www.w3cplus.com/tools/emmet-cheat-sheet.html

http://www.douban.com/note/299431022/

轉載需注明轉載字樣,標注原作者和原博文地址。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM