Sử dụng Emmet để cải thiện quy trình làm việc bằng cách tăng tốc mã hóa và chỉnh sửa trong các tệp [X]HTML, CSS, XML, XSL và JSP. Emmet tăng tốc độ mã hóa bằng cách chuyển đổi các từ viết tắt thành các khối mã có cấu trúc và cải thiện việc chỉnh sửa với điều hướng và lựa chọn mã tốt hơn.
Tính năng này có trong MyEclipse, CodeMix và Angular IDE
MyEclipse
Java EE IDE cho nhà phát triển ngăn xếp đầy đủ
CodeMix
Plugin Eclipse cho nhà phát triển web hiện đại
IDE góc cạnh
IDE độc lập cho nhà phát triển góc
Sử dụng Emmet
Để truy cập các lệnh Emmet, nhấp chuột phải vào trình chỉnh sửa, chọn Emmet rồi chọn một lệnh Emmet. Hoặc, sử dụng phím tắt được gán cho lệnh Emmet. Nếu bạn thích các phím tắt khác nhau, bạn có tùy chọn chỉnh sửa các tổ hợp phím trong Window>Preferences>General> Keys
Sign Up
Ghi chú. Truy cập tài liệu Emmet để tìm hiểu cách sử dụng cú pháp viết tắt
Nếu chúng tôi cần viết tắt cụ thể này thường xuyên, chúng tôi có thể lưu nó dưới dạng một đoạn trích để cải thiện quy trình làm việc của mình hơn nữa
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
Bây giờ chúng ta có thể gõ
{
"html": {
"snippets": {
"img:l": "img[width height loading='lazy']"
}
}
}
7 và nhấn Enter hoặc Tab và chúng ta sẽ nhận được kết quả tương tự. Tôi sẽ giải thích cách tạo đoạn trích trongEmmet đi kèm với một loạt các đoạn mã HTML theo mặc định. Ví dụ:
{
"html": {
"snippets": {
"img:l": "img[width height loading='lazy']"
}
}
}
8 tạo cấu trúc cơ bản của tài liệu HTML________số 8_______Điều đó thật tuyệt, nhưng nếu chúng tôi muốn điều chỉnh đoạn mã này bằng cách xóa hoặc thêm các thành phần và thuộc tính, chúng tôi phải ghi đè lên đoạn mã đó và tạo đoạn mã của riêng mình
Tạo và ghi đè đoạn mã
Nếu chúng tôi muốn tạo đoạn mã Emmet của riêng mình hoặc ghi đè lên đoạn mã hiện có trong Mã VS, thì cần thực hiện các bước sau
- Tạo một đoạn trích. json, hãy thêm cấu trúc JSON cơ bản này và lưu nó ở đâu đó trên đĩa cứng của bạn
{ "html": { "snippets": { } }, "css": { "snippets": { } } }
- Mở cài đặt Mã VS [Mã → Tùy chọn → Cài đặt] và tìm kiếm “Đường dẫn tiện ích mở rộng Emmet”
- Nhấp vào "Thêm mục", nhập đường dẫn đến thư mục mà bạn đã lưu các đoạn trích. json mà bạn đã tạo trước đó và nhấn “OK”
Đó là nó. Bây giờ chúng ta đã sẵn sàng để tạo các đoạn trích bằng cách thêm các thuộc tính vào các đối tượng
{
"html": {
"snippets": {
"img:l": "img[width height loading='lazy']"
}
}
}
9 và
0 trong đó
1 là tên của đoạn trích và
2 là chữ viết tắt hoặc một chuỗiMột số đoạn mã HTML tùy chỉnh của tôi
Trước khi chúng ta đi sâu vào việc tạo đoạn trích và tôi sẽ chỉ cho bạn cách tôi tạo một đoạn mã cho bản tóm tắt HTML của mình, trước tiên chúng ta hãy làm nóng với một số đoạn mã nhỏ nhưng hữu ích mà tôi đã tạo.
tải chậm
Ra khỏi hộp, có một chữ viết tắt
3, nhưng không có chữ viết tắt nào dành cho hình ảnh được tải chậm. Chúng ta có thể sử dụng chữ viết tắt mặc định và chỉ cần thêm các thuộc tính và giá trị thuộc tính bổ sung mà chúng ta cần trong ngoặc vuông{
"html": {
"snippets": {
"img:l": "img[width height loading='lazy']"
}
}
}
4 + Enter/Tab hiện tạo đánh dấu sau
Trang
Hầu hết các trang tôi tạo bao gồm các mốc đánh dấu
5,
6 và
7 và một
8. Chữ viết tắt
9 tùy chỉnh cho phép tôi tạo cấu trúc đó một cách nhanh chóng"snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
9 + Enter/Tab tạo đánh dấu sau
©
Chữ viết tắt đó khá dài, vì vậy hãy chia nhỏ nó thành các phần nhỏ hơn
Phá vỡ
Tạo phần tử
5 và phần tử con
8header>h1
Di chuyển lên, trở lại mức của
5 và tạo một
7 theo sau
6^main+footer
Đặt điểm dừng tab cuối cùng trong
7 và đặt văn bản mặc định thành "snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
7{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
0dẫn đường
Chữ viết tắt
"snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
8 chỉ tạo thẻ bắt đầu và thẻ kết thúc "snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
9 theo mặc định, nhưng những gì tôi thường cần là một "snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
9 với các phần tử và liên kết
©
1,
©
2 lồng nhau [
©
3]. Nếu có nhiều phần tử "snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
9 trên một trang, chúng cũng nên được gắn nhãn, ví dụ bằng cách sử dụng
©
5{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
1Điều đó có vẻ hoang dã, vì vậy hãy phá vỡ nó một lần nữa
Phá vỡ
Chúng ta bắt đầu với một phần tử
"snippets": {
"page": "header>h1^main+footer{${0:©}}"
}
9 với thuộc tính
©
5 và một
©
1 lồng nhau.
©
9 điền thuộc tính bằng văn bản “Main” và tạo một điểm dừng tab tại giá trị thuộc tính bằng cách di chuyển con trỏ đến nó và tô sáng nó khi tạo{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
2Sau đó, chúng tôi tạo bốn mục danh sách với các liên kết lồng nhau. Mục đầu tiên đặc biệt vì nó đánh dấu trang đang hoạt động bằng cách sử dụng
header>h1
0. Chúng tôi tạo một điểm dừng tab khác và điền vào liên kết bằng văn bản “Trang hiện tại”{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
3Cuối cùng, chúng tôi thêm ba mục danh sách khác có liên kết và văn bản liên kết “Trang khác”
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
4Trước khi điều chỉnh, chúng tôi đã nhận được điều này
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
5Bây giờ chúng tôi nhận được điều này
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
6Thêm sau khi nhảy. Tiếp tục đọc bên dưới ↓
Gặp gỡ “TypeScript trong 50 bài học”, hướng dẫn mới tuyệt vời của chúng tôi về TypeScript. Với các hướng dẫn chi tiết về mã, các ví dụ thực hành và các vấn đề phổ biến — tất cả được chia thành các bài học ngắn, dễ quản lý. Đối với những nhà phát triển biết đủ JavaScript để trở nên nguy hiểm
Chuyển đến mục lục ↬Phong cách
Chữ viết tắt
header>h1
1 mặc định chỉ tạo thẻ bắt đầu và thẻ kết thúc header>h1
2, nhưng thông thường khi tôi sử dụng phần tử header>h1
2, tôi làm điều đó vì tôi muốn nhanh chóng kiểm tra hoặc gỡ lỗi điều gì đóHãy thêm một số quy tắc mặc định vào thẻ
header>h1
2{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
7Phá vỡ
Một số nhân vật [e. g.
header>h1
5, header>h1
6, header>h1
7 hoặc header>h1
8] phải được thoát bằng cách sử dụng header>h1
9{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
8^main+footer
0 tạo ngắt dòng và ^main+footer
1 đặt điểm dừng tab đầu tiên tại bộ chọn header>h1
6{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
9- Trước.
3^main+footer
- Sau đó
0Document
Được rồi, khởi động thế đủ rồi. Hãy tạo các đoạn mã phức tạp. Lúc đầu, tôi muốn tạo một đoạn mã duy nhất cho bản soạn sẵn của mình, nhưng tôi đã tạo ba từ viết tắt phục vụ các nhu cầu khác nhau
nồi hơi nhỏ
Đây là một bản soạn sẵn cho các bản trình diễn nhanh, nó tạo ra những điều sau đây
- Cấu trúc trang web cơ bản,
4 thẻ meta,^main+footer
- Tiêu đề trang,
2 phần tử,header>h1
- Một
8
Document
1Phá vỡ
Một chuỗi với loại tài liệu
Document
2Phần tử
^main+footer
7 với thuộc tính ^main+footer
8. Giá trị của thuộc tính ^main+footer
8 là một biến bạn có thể thay đổi trong cài đặt mã VS [Mã → Tùy chọn → Cài đặt]
Document
3Bạn có thể thay đổi ngôn ngữ tự nhiên mặc định của trang bằng cách tìm kiếm “biến emmet” trong cài đặt Mã VS và thay đổi biến
^main+footer
8. Bạn cũng có thể thêm các biến tùy chỉnh của mình tại đây{
"html": {
"snippets": {
"img:l": "img[width height loading='lazy']"
}
}
}
5 bao gồm thẻ meta {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
02, thẻ meta ^main+footer
4, thẻ {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
04 và thẻ header>h1
2. {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
06 tạo một dòng mới
Document
4Hãy có một cái nhìn nhanh đầu tiên về những gì điều này mang lại cho chúng ta
Document
5Có vẻ ổn, nhưng chữ viết tắt
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
07 tạo ra cách cũ trong HTML để xác định {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
02 và {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
09 tạo ra hai điểm dừng tab mà tôi không cần vì tôi không bao giờ sử dụng cài đặt khác cho ^main+footer
4Hãy ghi đè lên những đoạn trích này trước khi chúng ta tiếp tục
Document
6Cuối cùng nhưng không kém phần quan trọng, phần tử
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
11, một
8 với văn bản mặc định, theo sau là dấu tab cuối cùng
Document
7Bản mẫu cuối cùng
Document
8Đối với tôi, đó là thiết lập sửa lỗi tối thiểu hoàn hảo
nồi hơi trung bình
Mặc dù tôi chỉ sử dụng bản soạn sẵn đầu tiên cho các bản trình diễn nhanh, nhưng bản soạn sẵn thứ hai có thể được sử dụng cho các trang phức tạp. Đoạn mã tạo ra như sau
- Cấu trúc trang web cơ bản,
4 thẻ meta,^main+footer
- Tiêu đề trang,
14/_______5_______15 lớp,{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
- Màn hình bên ngoài và biểu định kiểu in,
- Thẻ meta
16 và{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
17,{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
- cấu trúc trang
Document
9Yeah, tôi biết, điều đó có vẻ vô nghĩa. Hãy mổ xẻ nó
Phá vỡ
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
18 và phần tử gốc giống như trong ví dụ đầu tiên, nhưng có thêm lớp {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
19 và nhận xét nhắc tôi thay đổi thuộc tính ^main+footer
8, nếu cần{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
0Tiện ích TODO Highlight làm cho nhận xét thực sự nổi bật
{
"html": {
"snippets": {
"img:l": "img[width height loading='lazy']"
}
}
}
5 bao gồm thẻ meta {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
02, thẻ meta ^main+footer
4, {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
04. {
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
06 tạo một dòng mới{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
1Một tập lệnh có một dòng JavaScript. Tôi đang cắt mù tạt ở phần hỗ trợ mô-đun JS. Nếu một trình duyệt hỗ trợ các mô-đun JavaScript, điều đó có nghĩa là trình duyệt đó hỗ trợ JavaScript hiện đại [e. g. mô-đun, cú pháp ES 6, tìm nạp, v.v.]. Tôi chỉ gửi hầu hết JS cho các trình duyệt này và tôi sử dụng lớp
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
26 trong CSS, nếu kiểu dáng của một thành phần khác, khi JavaScript đang hoạt động{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
2Hai phần tử
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
27; {
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
3Mô tả trang
{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
4Thẻ meta
{
"html": {
"snippets": {
"signup": "p>a{Sign Up}"
}
}
}
17{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
5Phần tử nội dung và cấu trúc trang cơ bản
{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
6Bản tóm tắt cuối cùng trông như thế này
{
"html": {
"snippets": {
}
},
"css": {
"snippets": {
}
}
}
7đầy đủ nồi hơi
Bản mẫu đầy đủ tương tự như bản mẫu thứ hai;
Đoạn mã tạo ra như sau
- Cấu trúc trang web cơ bản,
4 thẻ meta,^main+footer
- Tiêu đề trang,
26/{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
19 lớp,{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
- Màn hình bên ngoài và biểu định kiểu in,
16 và mở các thẻ meta biểu đồ,{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
17 thẻ meta,{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
- thẻ
27 chính tắc,{ "html": { "snippets": { "signup": "p>a{Sign Up}" } } }
- thẻ yêu thích,
- Cấu trúc trang,
-