1 điểm bởi GN⁺ 5 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Theme Builder của Zed cần được mở trên ứng dụng desktop để dùng đầy đủ tính năng; trên web, bạn có thể xem các tiện ích mở rộng giao diện chủ đề hiện có tại View Theme Extensions
  • Màn hình chỉnh sửa gồm ColorsSyntax, trong đó màu sắc được chia thành nhiều danh mục như Surface, Border, Text, Icon, Editor, Navigation, Terminal, Players, v.v.
  • Danh mục Surface có các giá trị chi tiết như Background, Surface Background, Elevated Surface Background, Panel Background; trong đó Background hiển thị là #3b414dff, còn Surface Background là #2f343eff
  • Một số giá trị chủ đề không dùng mã màu trực tiếp mà liên kết với giá trị khác; Elevated Surface Background và Panel Background được liên kết tới surface.background, còn Panel Focused Border và Pane Focused Border được liên kết tới border.focused
  • Phần xem trước hiển thị các nút thao tác như Create New Theme, Reset, Import, Export cùng trạng thái của trình soạn thảo như scheduler.tsx, catware.rs, chẩn đoán TypeScript/React, zed.dev — zsh, Version: 1.1.7, 9 Changes

Phạm vi màu có thể chỉnh sửa

  • Các danh mục màu được chia thành Surface, Border, Text, Icon, Editor, Navigation, Element, Ghost Element, Drop Target, Tabs, Scrollbar, Minimap, Status, Version Control, Terminal, Players, v.v.
  • Trong mục Surface có các giá trị chi tiết như Background, Surface Background, Elevated Surface Background, Panel Background, Panel Focused Border, Panel Indent Guide, Panel Overlay Background, Pane Focused Border
  • Có cả các giá trị được hiển thị bằng mã màu trực tiếp và các giá trị liên kết tới giá trị khác; Background hiển thị là #3b414dff, còn Surface Background là #2f343eff
  • Elevated Surface Background và Panel Background được liên kết tới surface.background, còn Panel Focused Border và Pane Focused Border được liên kết tới border.focused

Nút thao tác và trạng thái xem trước

  • Trên màn hình có các nút thao tác chủ đề như Create New Theme, One / One Dark, Reset, Import, Export
  • Phần xem trước chủ đề hiển thị các tab tệp như scheduler.tsx, catware.rs cùng trạng thái kho lưu trữ zed.dev main/main
  • Phần xem trước mã là ví dụ TypeScript/React, kèm các chẩn đoán như cảnh báo couldHaveBeenAnEmail không được sử dụng, lỗi kiểu khi gán string cho number, gợi ý dùng attendees thay cho atendees, và chẩn đoán rằng agendaItem có thể được khai báo bằng const
  • Phần xem trước terminal hiển thị zed.dev — zsh, Editor: Zed, Version: 1.1.7, Platform: macOS
  • Phần xem trước quản lý phiên bản hiển thị 9 Changes, Stage All, Tracked, Untracked, Fetch, Commit Tracked, và thông điệp commit Fixed the thing that broke the thing

1 bình luận

 
Ý kiến trên Hacker News
  • Rất vui khi cuối cùng cũng có tính năng này. Tôi đã nhiều lần thử dùng Zed, nhưng những chi tiết liên quan đến theme tưởng nhỏ mà lại khá đáng kể
    Ví dụ ở https://imgur.com/a/ia2GCgg, phía trên là VSCode, phía dưới là Zed, và cả hai đều dùng Svelte với theme khá giống nhau
    Màu của dấu ngoặc nhọn, màu của các component tích hợp bắt đầu bằng chữ in hoa, màu của thuộc tính boolean, màu của dấu ngoặc và văn bản đều khác nhau
    Trình inspector là tính năng thay đổi cuộc chơi, và việc có thể nhấp vào từng phần tử trong bản xem trước được cung cấp là cực kỳ hữu ích

    • Tôi không dùng Zed hay Svelte, nhưng màn hình này trông như phía Zed đang thiếu parser tree-sitter cho Svelte. Nhiều trình soạn thảo cung cấp tô sáng dựa trên regex mặc định cho nhiều ngôn ngữ, rồi thêm tô sáng nâng cao qua extension
      Nếu trình soạn thảo dùng Language Server Protocol thì cũng có thể nhận được semantic highlighting do language server cung cấp
      Tôi tìm thử thì thấy có một extension này, không biết bạn đã thử chưa: https://zed.dev/extensions/svelte
    • Cái đó gần với syntax highlighting hơn là theme. Tôi không rõ nó liên quan gì đến theme
      Tôi không phải người dùng Zed, nhưng nhìn vào https://zed.dev/docs/reference/all-settings#colorize-brackets thì có vẻ mấy thứ kiểu này chỉnh được
    • Nhân tiện, việc chuyển đổi theme giữa các app/IDE cho kết quả khá ổn khi giao cho LLM
  • Cuối cùng cũng có thể thực tế tạo ra thứ gì đó thật sự gần với độ tương phản cao, thay vì chỉ “gần như tương phản cao” như các theme dựng sẵn trước đây. Thay đổi nhỏ thôi, nhưng Zed liên tục chỉnh rất khéo các chi tiết, nên sau 15 năm dùng vim, nó đã đi từ “trình soạn thảo thú vị” thành “trình soạn thảo tôi thích hơn”
    Follow mode của Git đặc biệt hay trong quá trình việc dùng LLM trong phát triển ngày càng tăng, và thật vui khi thấy đội ngũ tiếp tục cải thiện những phần nhỏ như vậy

  • Với tôi thì Zed gần như đã tới nơi rồi. Theme builder tốt và dễ dùng, chỉ mất vài phút là tôi làm được theme của mình
    Màu cú pháp gần như ổn nhưng vẫn còn thiếu, và với người dùng C/C++ như tôi thì vẫn có chỗ chưa đã
    Các chỉnh sửa hình ảnh nhỏ như chiều cao dòng của văn bản UI chưa có đủ thiết lập, chỉ có hai lựa chọn
    Cuộn nên có tùy chọn mượt. Không có lý do gì để chặn nó, mà có vẻ cũng dễ thêm, nhất là trên màn hình 240Hz thì mắt dễ chịu hơn nhiều khi di chuyển trong mã
    Bản thân trải nghiệm soạn thảo là tốt, khởi chạy nhanh, không crash, phản hồi tốt, mức dùng bộ nhớ cũng ổn

    • Chỉ cần dùng Mos là được. Ưu điểm là cuộn mượt hoạt động giống nhau trên mọi ứng dụng. Tốc độ và gia tốc cũng thống nhất
      https://mos.caldis.me/
    • Tôi vừa thử lần đầu thì chưa đến 5 phút đã gặp lỗi lớn, UI bị treo hoàn toàn. Lúc đầu tôi tưởng chỉ cuộn bị treo, nhưng thử tái hiện lại thì hóa ra toàn bộ UI đứng luôn
      Chuyển sang app khác rồi quay lại thì nó hoạt động trở lại. Tôi chưa từng thấy hành vi này ở ứng dụng nào khác
      Định báo lỗi thì hiện ra một form dài còn hơn cả tờ khai thuế. Báo lỗi có vẻ là lĩnh vực rất hợp cho AI, cả ở khâu nhập liệu lẫn phân loại sau đó
    • Nếu dùng trackpad thì cuộn hoàn toàn mượt. Cá nhân tôi thấy chuột bánh xe click là công nghệ đã lỗi thời cho việc cuộn
      Ngay cả khi dùng Windows, tôi vẫn dùng Magic Trackpad bằng tay trái để có cuộn analog mượt
  • Nghe có vẻ nông cạn, nhưng một trong những lý do lớn nhất khiến tôi không dùng được Zed là nó không có theme tối mặc định tử tế
    Các theme mặc định đều tương phản thấp, xám trên nền xám, nên dù bản thân trình soạn thảo rất tốt thì trải nghiệm dùng vẫn thấy u ám và khó chịu

    • Để sửa độ tương phản trong mọi dark theme, chỉ cần thêm thiết lập này:
      "experimental.theme_overrides": {
      "background": "#111",
      "panel.background": "#111",
      "text": "#eee",
      "text.muted": "#ccc",
      "title_bar.background": "#111",
      "tab_bar.background": "#111",
      "toolbar.background": "#111",
      "status_bar.background": "#111",
      "element.selected": "#333",
      "editor.background": "#000",
      "editor.gutter.background": "#000"
      }
    • Đây không chỉ là vấn đề của riêng Zed, dark theme nói chung thường hay bị kiểu tương phản thấp, xám trên xám
      Thường thì tôi tìm một dark theme trông đẹp, rồi tự làm bản tùy chỉnh với nền tối hơn và màu tiền cảnh sáng hơn
      Có lẽ giờ đã đến lúc công khai một dark theme tương phản cao thay vì chỉ tự sửa để dùng riêng
    • Có thể nghe còn nông cạn hơn, nhưng lý do tôi vẫn ở lại với emacs là vì modus-themes. Nếu may mắn thì bạn có thể tìm được theme tạm ổn cho trình soạn thảo hay IDE mình muốn, nhưng tìm được một light theme tương phản cao tốt thì gần như bất khả thi
    • Nếu tìm theme trong cửa sổ Extensions của Zed thì chắc bạn có thể cài một dark theme tương phản cao khá ổn trong vòng 1 phút
      Dù vậy, tôi đồng ý là chẳng có lý do gì để không kèm sẵn vài dark theme tương phản cao tốt làm mặc định
    • Đây là theme tôi thích nhất gần đây và cũng khá hoàn thiện: https://zed.dev/extensions/amp-theme
  • Nếu bạn dùng Omarchy thì bản cập nhật 3.8 có kèm theme động cho Zed. Khá ngầu: https://github.com/APS6/omazed

  • Thật vui khi thấy Zed phát triển, nhưng tôi có cảm giác nó bị buộc quá chặt vào tài khoản người dùng. Có nút “Sign In” rất dễ thấy và cả quảng bá kiểu “Try our new agentic...”
    Tôi hiểu họ phải kiếm tiền, nhưng động lực bắt đầu theo cách này quá thường xuyên lại trôi sang hướng làm hỏng ứng dụng
    Tiếp theo là quảng cáo chèn vào tìm file à? Ubuntu từng mắc kiểu sai lầm này và bị cộng đồng phản ứng mạnh. Kiểu như “LQQKING for something? try new ai search by blah blah corp!” ấy
    Vì thế nên dù có bỏ công tinh chỉnh trình soạn thảo và theme, tôi vẫn khó đầu tư vì luôn có cảm giác sau này có thể bị phản bội. VSCode đã đi theo con đường này rồi, đến mức commit message còn bị ký bằng Copilot

  • Tôi đã cố tái tạo phối màu Soda Dark / Sunburst mà tôi thích từ Sublime Text, và đó thực sự là một công việc kiểu Sisyphe
    Cuối cùng tôi đưa vài ảnh chụp màn hình cùng cấu hình ST4 gốc vào AI Studio thì cũng ra kết quả dùng tạm được, nhưng không phải bản sao chính xác. Điều đó cũng dễ hiểu vì mỗi trình soạn thảo có semantic token khác nhau

    • Nếu đưa định nghĩa JSON của theme Sublime Text cho LLM rồi bảo nó chuyển sang đặc tả theme của Zed thì có lẽ giải quyết khá dễ. Không cần ảnh chụp màn hình
  • Ồ, hay đấy. Tôi đã thử Zed nhưng không thể làm được bảng màu tổng thể giống cobalt cổ điển của gedit/gtksourceview
    Nếu ai đó làm được theme như vậy, tôi sẵn sàng trả một khoản hợp lý một cách nghiêm túc

    • Tôi thực sự đã thử bắt các mô hình AI làm theme như thế, nhưng chúng không làm đúng được. Chúng cứ liên tục tạo ra kết quả sai
      Nếu việc này hoạt động tốt thì tôi có hứng thú
  • Tôi tò mò không biết Zed có cờ kiểu “ở công ty thì chỉ cho phép GitHub Copilot, không muốn autocomplete miễn phí hay bất kỳ tính năng nào gửi mã cho bên thứ ba” hay không

    • Có. Bạn có thể tắt Zed AI và kết nối với GitHub Copilot qua LLM Providers UI
    • https://zed.dev/business
    • Nếu muốn dùng Zeta, AI dự đoán của Zed, để nhận 2000 lượt dự đoán miễn phí thì bạn phải tạo tài khoản Zed và đăng nhập
      https://zed.dev/docs/ai/edit-prediction