Tuesday, May 12, 2015

Sublime Text 3 - Tuỳ chỉnh để tiện lợi cho develop ứng dụng PHP

Sublime Text 3 hiện đang là tools đình đám được các developer ưa dùng. Có thể bạn chưa biết hoặc đã biết, nhưng tôi không kìm được vẫn muốn nhắc tới mấy điểm mà tôi thích nhất khi sử dụng tools này để phát triển (không chỉ để làm web, mà còn tận dụng cho nhiều dự án khác nữa):


  • Chạy QUÁ NHẸ NHÀNG so với một full IDE mà vẫn thường được dùng trước kia như Eclipse, IntelljIDEA, VS, ... Bây giờ tôi mở cả chục projects, với hàng trăm hàng nghìn files không phải lăn tăn như trước nữa.
  • Do đang ở bản Beta, nên nó miễn phí, tuy nhiên bạn cứ yên tâm là chạy rất ổn định, hầu như không thấy bị crashed bao giờ cả (nếu bạn muốn crack nó thì làm theo hướng dẫn ở đây) và đa nền tảng: Mac OSX, Linux, Windows đều có, nên bạn không cần thiết phải đổi môi trường dev ưa thích của mình
  • Các extensions nhiều, phong phú, tiện lợi, cài đặt dễ dàng, và cũng hầu hết miễn phí
  • Open file nhanh bằng suggestion theo text mình gõ. Bạn không cần nhớ file nó nằm ở đâu, gõ tên, ST3 sẽ gợi ý file bạn muốn mở.
  • Chế độ tìm kiếm, replace, highlight rất dễ sử dụng
  • Chế độ Intelligent Suggestion hoạt động smooth, phù hợp nhu cầu sử dụng (tất nhiên không bằng tool chuyên dụng nhưng quá đủ để xài)
  • Có nhiều themes cả về text và giao diện tools, tha hồ chọn và tuỳ chỉnh theo cách bạn cho là chuyên nghiệp nhất
  • Sử dụng thêm phím Ctrl, bạn có thể edit cùng lúc nhiều chỗ khác nhau.
  • Tích hợp sẵn terminal vào nó luôn
  • Có nhiều extensions giúp bạn phát triển nhanh các PHP project dựa trên các OpenSource framework như Laravel, CakePHP,...
  • Vice versa.... :)


Dưới đây là một số các extensions mở rộng để cài đặt tiện lợi cho việc phát triển của chúng ta. Bạn nên cài chúng khi sử dụng Sublime Text 3 để phát triển ứng dụng của mình. Cách cài đặt cụ thể cũng như cách dùng tôi nghĩ là không làm khó được các developers chúng ta nên tạm thời không nêu ra ở đây.


Pack­age Con­trol (https://sublime.wbond.net)

Đây là ext để giúp bạn quản lý và cài đặt các exts khác dùng trong Sublime Text 3. Cách cài đặt, cũng như cách dùng thì bạn vào trang chủ của exts để xem. Nhờ có ext này mà việc cài đặt các plugin khác dễ dàng hơn rất nhiều và không tốn thời gian.


Sub­lime­CodeIn­tel (https://github.com/SublimeCodeIntel/SublimeCodeIntel)

Gói mở rộng này được dùng trong hầu hết trường hợp. Nó hỗ trợ cho bạn việc hiển thị các gợi ý ngay khi bạn code, về các functions, biến, object, string, ... Nó chính là bộ xương sống của tính năng Intelligent Suggesstion.

Sub­limeLin­ter (https://sublime.wbond.net/packages/SublimeLinter)

Gói mở rộng này sẽ giúp bạn biết ngay khi bạn gõ, rằng có thể bạn đã làm một điều gì đó sai, ví dụ, mở ngoặc mà quên đóng, quên dấu ; ở cuối dòng lệnh,...
Với riêng PHP + CSS + Javascript, bạn nên cài một số thành phần phụ cho SublimeLinter này, nhờ vào Package Control:
  • SublimeLinter-php
  • SublimeLinter-jshint
  • SublimeLinter-json
  • SublimeLinter-csslint

Side­BarEn­hance­ments (https://sublime.wbond.net/packages/SideBarEnhancements)

Cung cấp bạn một số tuỳ chỉnh khi bạn nhấn chuột phải vào các thành phần đang hiển thị ở sidebar bên trái (file, folders). Rất tiện lợi.


VCS Gut­ter (https://sublime.wbond.net/packages/VCS%20Gutter)

Exts hỗ trợ bạn trong khi làm việc với git/mercurial. Nó sẽ cập nhật thông tin & status tại real-time (thời gian thực) của một file. Nhờ đó bạn nhanh chóng biết được file nào đã được thêm, xoá, hoặc sửa đổi ....

Trail­ing­Spaces (https://github.com/SublimeText/TrailingSpaces)

Tiện lợi ở chỗ là các dấu trắng ở cuối dòng lệnh, hoặc dòng trắng cuối file sẽ tự động trim. Có thể bạn không biết, khi chúng ta dùng các tools/IDE khác nhau để code, có một số tools sẽ thêm vào các ký tự trắng này vào cuối dòng lệnh.

Brack­etHigh­lighter (https://github.com/facelessuser/BracketHighlighter)

Nhờ exts này, bạn khi di chuột đến dấu mở { / hoặc đóng } thì cả cặp sẽ tự động được highlight lên để bạn biết.

Ter­mi­nal (http://wbond.net/sublime_packages/terminal)

Chức năng của Terminal thì bạn biết rồi. Ext này sẽ đính sẵn terminal để bạn sẵn sàng sử dụng ngay trong Sublime Text 3.

Xde­bug Client (https://sublime.wbond.net/packages/Xdebug%20Client)

Xdebug Client tích hợp Xdebug vào ST3, bạn dễ dàng debug ứng dụng PHP của mình>

Một số gói khác ít dùng hơn, nhưng cũng tiện lợi, bạn nên thử:

- Sass (https://sublime.wbond.net/packages/Sass): Giúp bạn làm việc với file sass dễ dàng như là: highlight các từ khoá,...
- Sub­limerge (http://www.sublimerge.com/): Công cụ so sánh file, hay dùng khi bạn merge code, hoặc apply patch từ người khác vào code của mình.


Một số tuỳ chỉnh khác bạn nên dùng

Tôi rất hay dùng các tuỳ chỉnh cá nhân này, bạn có thể tham khảo:

Để sử dụng phần settings này, các bạn vào **Menu Sublime Text > Preferences > Settings - User** (Mac OS X, tương tự cho Windows hoặc Linux) để chỉnh.


{
"auto_indent": true,
"bold_folder_labels": true,
"caret_style": "phase",
"detect_indentation": false,
"draw_indent_guides": true,
"draw_white_space": "selection",
"fade_fold_buttons": false,
"find_selected_text": true,
"fold_buttons": true,
"font_size": 15.0,
"highlight_line": true,
"highlight_modified_tabs": true,
"ignored_packages":
[
"Vintage",
"Sublimerge Pro"
],
"line_padding_bottom": 2,
"line_padding_top": 2,
"rulers":
[
80,
120
],
"tab_size": 4,
"theme": "Soda Dark 3.sublime-theme",
"todo":
{
"case_sensitive": true,
"patterns":
{
"CHANGED": "CHANGED[\\s]*?:+(?P\\S.*)$",
"FIXME": "FIX ?ME[\\s]*?:+(?P\\S.*)$",
"NOTE": "NOTE[\\s]*?:+(?P.*)$",
"TODO": "TODO[\\s]*?:+(?P.*)$"
}
},
"translate_tabs_to_spaces": true,
"trim_automatic_white_space": true,
"trim_trailing_white_space_on_save": true,
"use_tab_stops": true,
"word_separators": "./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}`~?",
"word_wrap": true
}