2016-06-19 13 views

Trả lời

16

Có, có, và có!

Để tùy chỉnh nhanh chóng, bạn sẽ cần một vài điều:

  • Một .iex.exs tập tin trong thư mục chính của bạn. Tạo tệp này nếu nó không tồn tại. Nó sẽ được thực thi khi iex khởi chạy.
  • [tùy chọn] Gọi điện đến Application.put_env để bật ANSI. Bạn có thể cần điều này nếu iex trên nền tảng của mình (ví dụ: Windows 10) không phát hiện hỗ trợ ANSI.
  • Gọi đến IEx.configure để bật màu và đặt lời nhắc.
  • ANSI escape codes để sửa vị trí con trỏ. Nếu không có điều này, sử dụng các mũi tên lên/xuống để chuyển qua lịch sử lệnh sẽ di chuyển con trỏ xa hơn về phía bên phải. IO.ANSI hiện không hiển thị tất cả mã chuyển động của con trỏ, nhưng mã thô sẽ hoạt động đối với các thiết bị đầu cuối hỗ trợ chúng.
  • IO.ANSI chức năng định dạng.
  • Văn bản nhắc.
  • IO.ANSI.reset để tắt mọi định dạng còn lại.
  • Chuyển đổi thành chuỗi có IO.chardata_to_string.

Đây là những gì làm việc cho tôi với iex 1.3.0 trong Terminal và iTerm2 3.0.3 trên OS X 10.11.5 và Console, GitBash, và ConEmu trên Windows 10:

# ~/.iex.exs 
Application.put_env(:elixir, :ansi_enabled, true) 
IEx.configure(
    colors: [enabled: true], 
    default_prompt: [ 
    "\e[G", # ANSI CHA, move cursor to column 1 
    :magenta, 
    "%prefix", # IEx prompt variable 
    ">",  # plain string 
    :reset 
    ] |> IO.ANSI.format |> IO.chardata_to_string 
) 

Mã này hoạt động khá tốt , nhưng lời nhắc của tôi chỉ có hiệu lực sau lần tương tác đầu tiên: khi iex lần khởi chạy đầu tiên, lời nhắc của nó sẽ hiển thị dấu nhắc dựng sẵn. Nếu tôi nhấn trở lại, thì lời nhắc của tôi sẽ có hiệu lực. Nếu có ai biết cách sửa lỗi đó, hãy chia sẻ.

[CẬP NHẬT: sửa đổi để làm việc tốt hơn trên Windows.]

+0

IEx.configure màu: [eval_result: [: xanh,: sáng]] # Tôi tự hỏi tại sao chương trình xanh như màu vàng? – sheriffderek

+0

@sheriffderek Tên màu ANSI ánh xạ tới các chỉ mục trong bảng màu được xác định ở nơi khác (ví dụ: trong chương trình đầu cuối.) Nhiều chương trình đầu cuối hỗ trợ các lược đồ màu (ví dụ: https://github.com/lysyi3m/osx-terminal-themes) – jwfearn

+3

trên Windows 10, vị trí của tệp cấu hình là '% USERPROFILE% \. iex.exs' –

Các vấn đề liên quan