Điểm:2

Drush có thể hiển thị các tin nhắn đã dịch cho người dùng không?

lá cờ in

Tôi đang làm việc trên một mô-đun mở rộng DrushCommands để tạo các lệnh Drush tùy chỉnh. Người bảo trì muốn các lệnh tùy chỉnh đó hiển thị các thông báo tùy chỉnh có thể dịch được (cảnh báo, lỗi) khi sử dụng.

(Làm thế nào) Nó có thể đạt được?

Điểm:0
lá cờ in

Sau một số nghiên cứu, tôi đã có thể đạt được điều này bằng phương pháp logger của Drush cùng với phương pháp t().

$this->logger()->error($this->t('tin nhắn với @arg', ['@arg' => $arg]));

Cũng đã xác định const ERRORCODE = 0 và trả về self::ERRORCODE; để ngăn trình ghi nhật ký gửi dấu vết ngăn xếp hoàn chỉnh trên màn hình và đảm bảo rằng mã lỗi chính xác sẽ được trả về khi xảy ra lỗi.

Tôi cảm ơn tất cả sự giúp đỡ của bạn và tôi hy vọng điều này có thể hữu ích cho ai đó trong tương lai: D

leymannx avatar
lá cờ ne
Và tất cả những gì bạn muốn chỉ đơn giản là hiển thị các chuỗi này trên dòng lệnh bằng ngôn ngữ mặc định của trang web?
Bruno Branco Bicudo avatar
lá cờ in
Vâng, nó rất đơn giản, nhưng với tư cách là một người mới bắt đầu, tôi đã thực sự gặp khó khăn với điều đó. Cảm ơn rất nhiều vì sự giúp đỡ của bạn. Tôi tìm thấy logger trong khi tìm kiếm dt()
Điểm:-1
lá cờ ne

bên trong quá khứ có hệ thống đó dt() sẽ chỉ cần in các chuỗi đã dịch đã có bản dịch trong Drupal, nếu bạn đã đặt ngôn ngữ mặc định trong tệp drushrc.php.

Drush hiện đại giờ đây thực hiện điều tương tự chỉ đơn giản là tuân theo ngôn ngữ mặc định của trang web của bạn. Nhưng không có cách nào ghi đè điều này từ drush.yml nữa. Mặc dù điều này không quá khó để thực hiện.

Trích dẫn Moshe Weitzman, người bảo trì cốt lõi của Drush, tôi đã hỏi về điều đó trên drupal.slack.com trong kênh #drush:

Không có kế hoạch thêm bản dịch vào đầu ra của drush. Các ứng dụng Bảng điều khiển Symfony có một tiêu chuẩn nhưng bạn phải tách các chuỗi của mình khỏi mã của mình và đó là DX IMO kém.

Tôi đoán con đường duy nhất có thể đi bây giờ là tạo ra một vấn đề để thực hiện lại khả năng ghi đè lên ngôn ngữ_mặc định từ drush.yml và cung cấp điều đó trong một yêu cầu hợp nhất đẹp mắt.


Tuy nhiên, bạn vẫn cần tìm cách đưa các chuỗi lõi Drush vào cơ sở dữ liệu bằng cách nào đó. Có lẽ từ một mô-đun đóng góp mới, tốt đẹp để phân tích tất cả dt() chuỗi và thêm chúng vào cơ sở dữ liệu để sau này bạn có thể tìm thấy chúng trên trang dịch giao diện.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.