Cài đặt plugin sublime-linter và plugin sublime-linter-phpcs thông qua trình quản lý gói Sublime Text. Bài viết này giả định rằng bạn đã cài đặt PHPCS trên toàn cầu trên máy của mình, nếu chưa, hãy làm theo hướng dẫn trên trang github PHPCS. Hoặc xem bài viết của tôi về Thiết lập tiêu chuẩn mã hóa WordPress (WPCS) trên toàn cầu
Khi cả hai plugin được cài đặt, hãy truy cập Sublime Text > Preferences > Package Settings > SublimeLinter > Settings. Các hướng dẫn này giả sử bạn đang chạy macOS
Trong cài đặt của bạn thêm các cấu hình sau. Các cài đặt này giả định rằng bạn sẽ có phpc của mình. xml ở thư mục gốc của dự án khi được mở trong Sublime Text. Bạn cũng sẽ muốn cho sublime-linter-phpcs biết vị trí của bạn. thư mục composer/vendor/bin nằm trong phần “đường dẫn” như bên dưới
{ "linters": { "phpcs": { "args": "--standard='${folder}/phpcs.xml'", "styles": [ { "icon": "triangle" } ] } }, "paths": { "linux": [], "osx": [ "~/.composer/vendor/bin" ], "windows": [] } }Khi bạn mở dự án của mình trong Sublime Text, bạn sẽ có thể thấy bất kỳ lỗi PHPCS nào được đánh dấu. Theo tùy chọn, bạn có thể mở bảng điều khiển Sublime Text bằng cách nhấp vào nút ở dưới cùng bên trái của trình chỉnh sửa Sublime Text và nhấp vào “Xuất ra. SublimeLinter”. Thao tác này sẽ hiển thị danh sách tất cả các lỗi/cảnh báo PHPCS trong danh sách cho tất cả các tệp đang mở
Tôi đã dành một khoảng thời gian đáng xấu hổ để cố gắng khắc phục các sự cố khác nhau trong khi cố gắng làm cho nó hoạt động. Sau đây là các bước tôi đã sử dụng để cuối cùng làm cho đúng
Phần mềm mà chúng tôi sẽ dựa vào
- Sublime Text 3 – vì đây là trình soạn thảo mã phổ biến và khá nhẹ nhàng nhất hiện có;
- PHP5. 4 hoặc cao hơn;
- PHP CodeSniffer 3. 3. 1 hoặc cao hơn. Nếu bạn có phiên bản thấp hơn, bạn sẽ gặp một số lỗi kỳ lạ khi chạy nó theo tiêu chuẩn của WordPress, vì WPS yêu cầu phiên bản đó;
- Trình phát hiện lộn xộn PHP;
- Gói mã PHP Sniffer Sublime;
- Gói PHP Code Beautifier Sublime;
- Nhà soạn nhạc;
- Linux dựa trên Debian. Bạn có thể thực hiện toàn bộ thiết lập đó trên hầu hết mọi hệ điều hành khác, nhưng sẽ có một số khác biệt trong các lệnh. Tôi đã làm điều đó trên Linux Mint 19. 2 Tina, dựa trên Ubuntu 18. 04 sinh học
Bước 1. Cài đặt
Giả sử rằng bạn đã cài đặt Sublime Text. Kiểm tra phiên bản của bạn chỉ để đảm bảo rằng bạn đang làm việc trên v3 hoặc cao hơn
subl -v
Kiểm tra phiên bản PHP được thực hiện theo cách tương tự
php -v
Có một số cách cài đặt PHP CodeSniffer, Mess Detector và Composer
1. 1. Bạn có thể bắt đầu với cách dễ nhất, cố gắng lấy các gói này từ trình quản lý gói của bản phân phối
sudo apt install composer php-codesniffer phpmd
Sau khi cài đặt xong kiểm tra xem phpcs bạn vừa cài có phải là 3 không. 3. 1 hoặc phiên bản cao hơn. Nếu nó thấp hơn, tốt hơn hãy loại bỏ nó và một cách tiếp cận thủ công hơn
1. 2. Việc cài đặt các gói cần thiết theo cách thủ công không phải là quá khó khăn, nhưng việc cập nhật chúng sẽ khiến bạn tốn thêm một số nỗ lực, so với việc có chúng thông qua trình quản lý gói của bạn. Dưới đây là các lệnh cho từng gói bạn cần. Nếu bạn có một số trong số chúng từ trình quản lý gói của mình, đừng lãng phí thời gian của bạn để lấy chúng thông qua phương pháp này
mkdir ~/bin && cd ~/bin // chuẩn bị một thư mục nơi chúng tôi sẽ tải xuống tất cả phần mềm chúng tôi cần
git clone //github.com/squizlabs/PHP_CodeSniffer.git phpcs
git clone git://github.com/phpmd/phpmd.git
curl -s //getcomposer.org/installer | php
Sau khi chúng tôi đã tải xuống chúng, chúng tôi cần làm cho chúng có thể thực thi được mà không cần phải viết đường dẫn tương đối hoặc tuyệt đối
sudo ln -s ~/bin/phpcs/bin/phpcs /usr/local/bin/phpcs
sudo ln -s ~/bin/phpmd/src/bin/phpmd /usr/local/bin/phpmd
subl -v0
php -v0
Cần thêm một bước nữa cho PHP Mess Detector
php -v1
Nếu cài đặt được thực hiện đúng cách, bạn sẽ có sẵn các lệnh đã cho. php -v2, php -v3, php -v4 và php -v5
Bước 2. Nhận tiêu chuẩn mã hóa WordPress
Bạn có thể sao chép repo trực tiếp từ GitHub
php -v6
Đó là nó. Bây giờ bạn cần phải
Bước 3. Định cấu hình PHP CodeSniffer để hoạt động với WPS
Hai lệnh là cần thiết ở đây. Đầu tiên sẽ cho phpc biết rằng có rất nhiều tiêu chuẩn mới trong thị trấn. Để xem những cái hiện tại, hãy chạy
php -v7
Nếu bạn không thấy WordPress ở đó, đây thực sự là điều thường xảy ra với bản cài đặt sạch, hãy chạy cái này
php -v8
Tại thời điểm này, nếu bạn kiểm tra lại với lệnh trước đó, bạn sẽ thấy như thế này
Các tiêu chuẩn viết mã được cài đặt là MySource, PSR12, PSR2, PSR1, PEAR, Zend, Squiz, WordPress-Docs, WordPress-Extra, WordPress-Core và WordPress
Mát mẻ. Bây giờ, hãy biến WordPress thành tiêu chuẩn mặc định
php -v9
Bước 4. Kiểm tra xem nó có hoạt động trong dòng lệnh không
Tạo một tệp thử nghiệm với một số PHP bị định dạng sai. Đây là một mẫu cho bạn
sudo apt install composer php-codesniffer phpmd0
Hãy để mã này trong một tệp mới, nằm ở sudo apt install composer php-codesniffer phpmd1
Bài kiểm tra sẽ là chạy sudo apt install composer php-codesniffer phpmd2. Kết quả chúng tôi đang tìm kiếm, là một cái gì đó như thế này
TỆP. /tmp/xấu xí. php
TÌM THẤY 11 LỖI VÀ 1 CẢNH BÁO ẢNH HƯỞNG ĐẾN 3 DÒNG
1. LỖI. [ ] Thiếu nhận xét về tài liệu tệp
1. LỖI. [ ] Biến “$JustAVar” không ở định dạng solid_case hợp lệ, hãy thử “$just_a_var”
1. LỖI. [x] Cần 1 dấu cách sau dấu “=”; . LỖI. [x] Cần có khoảng trống sau khi mở cấu trúc điều khiển
1 | ERROR | [x] Space after opening control structure is required
1. LỖI. [x] Cần 1 dấu cách sau từ khóa IF; . LỖI. [x] Cấu trúc điều khiển nội tuyến không được phép
1 | ERROR | [x] Inline control structures are not allowed
1. LỖI. [ ] Biến “$JustAVar” không ở định dạng solid_case hợp lệ, hãy thử “$just_a_var”
1. CẢNH BÁO. [ ] Tìm. ==. Sử dụng so sánh nghiêm ngặt (=== hoặc. ==).
1. LỖI. [ ] Sử dụng kiểm tra Điều kiện Yoda, bạn phải.
1. LỖI. [x] Mỗi câu lệnh PHP phải nằm trên một dòng riêng
2. LỖI. [x] Không tìm thấy khoảng trống trước văn bản bình luận; . LỖI. [ ] Lỗi cú pháp PHP. lỗi cú pháp, kết thúc tệp không mong muốn
3 | ERROR | [ ] PHP syntax error: syntax error, unexpected end of file
PHPCBF CÓ THỂ TỰ ĐỘNG KHẮC PHỤC 6 VI PHẠM SNIFF ĐƯỢC ĐÁNH DẤU
Thời gian. 130ms; . 8MB
Gọn gàng, phải không?
Đến lúc để
Bước 5. Định cấu hình văn bản tuyệt vời
Nếu bạn vẫn chưa có hai gói Sublime mà tôi đã đề cập trước đó, hãy cài đặt chúng
Nhấn sudo apt install composer php-codesniffer phpmd3, nhập “install” và chọn “phpcs”, sau đó lặp lại quy trình tương tự cho “CodeBeautifier”
Bây giờ bạn cần chỉnh sửa cấu hình gói PHP Code Sniffer để đặt đường dẫn thực thi cho phpcs, phpcbf và phpmd. Những gì tôi đã làm là sao chép cấu hình mặc định từ sudo apt install composer php-codesniffer phpmd4 trong sudo apt install composer php-codesniffer phpmd5 và chỉnh sửa các biến sau
sudo apt install composer php-codesniffer phpmd6
sudo apt install composer php-codesniffer phpmd7
sudo apt install composer php-codesniffer phpmd8
Hơn nữa, bạn nên nhận xét các cài đặt cho PHP-CS-Fixer hoặc thậm chí xóa chúng, vì bạn sẽ không sử dụng gói này (trừ khi bạn thực sự có kế hoạch sử dụng nó)
Cuối cùng, bạn nên đặt tiêu chuẩn được sử dụng cho tất cả các lệnh cho WordPress. Tìm các dòng có khóa sudo apt install composer php-codesniffer phpmd9 và đặt tất cả thành mkdir ~/bin && cd ~/bin0 như thế này
mkdir ~/bin && cd ~/bin1
Vui lòng kiểm tra phần còn lại của cài đặt, có sẵn trong cấu hình để tránh các sửa chữa hoặc kiểm tra tự động không mong muốn
Sau khi bạn lưu cấu hình, hãy mở lại tệp vui nhộn đó
mkdir ~/bin && cd ~/bin2
Lưu nó và xem bạn có nhận được bất kỳ thông báo nào về nó không. Sửa một số trong số này sẽ đơn giản như nhấp chuột phải vào trình chỉnh sửa và chọn mkdir ~/bin && cd ~/bin3
Xin lưu ý rằng có thể có một số vấn đề với cấu hình, dẫn đến việc kích hoạt sửa mã ngay cả khi bạn không đặt theo cách này, vì vậy hãy đảm bảo kiểm tra tất cả các vấn đề này trước khi chạy trên cơ sở mã của khách hàng