Làm thế nào để bạn biết tên chính xác để sử dụng cho phông chữ X11 cho XTerm * faceName hoặc xterm -fa <NAME>?


17

Tôi đang sử dụng Mac OS X 10.8 và XQuartz 2.7.2. Tôi đã tải xuống và đặt một số phông chữ TrueType có tên *.ttftrong /Users/<name>/.fontsthư mục của mình . Khi chạy XQuartz, một số tệp bao gồm fonts.dirđược tạo. Tệp này có tên phông chữ X11 của các bảng mã khác nhau, v.v. cho mỗi phông chữ tôi đã cài đặt.

Vấn đề của tôi là tôi không thể luôn luôn "tìm ra" tên chính xác để sử dụng trong xterm -fa <NAME>hoặc trong .Xresources XTerm*faceNamemục nhập của mình . Đối với một số phông chữ, tên phông chữ lõi như được liệt kê trong tên phông chữ X11 chi tiết trong fonts.dirtệp hoạt động trong khi đối với các phông chữ khác thì không.


1
Nếu nó giúp: trang hướng dẫn FreeBSD 10.2 cho xterm (1) bao gồm thông tin trên -favà tài nguyên faceName .
Graham Perrin

Câu trả lời:


23

Một trong những lớp lót sau đây thường giúp tôi rất nhiều để tìm đúng tên phông chữ:

$ fc-list | cut -f2 -d: | sort -u

Đặc biệt với các phông chữ tiếng Nhật như 'IPAX0208Mincho', tôi sẽ không bao giờ có thể đoán đúng tên. Nếu bạn không bận tâm thêm một chút nỗ lực đánh máy, bạn thậm chí có thể thích

$ fc-list | cut -f2 -d: | sort -u | less -r

để có được một đầu ra phân trang.


5

Bạn có thể sử dụng xfontsel để lấy đúng tên:

$ xfontsel

nhập mô tả hình ảnh ở đây

Chọn phông chữ bạn quan tâm và sau đó nhấp vào nút "Chọn". Điều đó sẽ sao chép tên phông chữ vào clipboard. Sử dụng tên đó để chạy xterm. Ví dụ:

$ xterm -font -adobe-helvetica-*-r-normal-*-12-120-*-*-*-*-*-*

Không thể làm cho nó hoạt động trên hệ thống của tôi (linux) bằng cách sử dụng "-fa" nhưng "-font" hoạt động.


1
Có, tôi biết sử dụng xfontsel để lấy tên phông chữ X11 và sử dụng xterm -font để chọn nó. Điều kỳ lạ là đối với một số phông chữ tôi có thể sử dụng xterm -fa <tên phông chữ đơn giản> và nó hoạt động tốt trên các phông chữ khác. Tôi nghĩ rằng bạn phải có một cách viết rất cụ thể của <tên phông chữ đơn giản> bởi vì nếu tôi lấy một phông chữ nơi nó hoạt động và thay đổi một chữ cái thì nó không còn hoạt động nữa. Vì vậy, câu hỏi cơ bản của tôi là làm thế nào để bạn xác định một cách có hệ thống "chính xác" <tên phông chữ đơn giản> sao cho xterm -fa hoạt động.
Jason Waldrop

@JasonWaldrop Ah. Trong trường hợp đó, tôi đã bối rối.
terdon

Nếu nó giúp (từ trang man): "Nhận mặc dù xfd chấp nhận tùy chọn" -fa "để biểu thị phông chữ FreeType), xfontsel đã không được mở rộng tương tự như vậy"
Graham Perrin

@JasonWaldrop bạn có thể quan tâm đến nhận xét trên.
terdon

0

Nếu bạn sử dụng FontBook để tải phông chữ, nó sẽ hiển thị tên chính xác để sử dụng xterm -fa.


0

Những gì còn thiếu là các mục trong fonts.aliastệp:

/usr/share/X11/fonts/75dpi/fonts.alias

Những gì tập tin này làm là cung cấp tên ngắn ("bí danh") cho phông chữ X Window được cài đặt. Khi bạn cố gắng sử dụng một tên ngắn không có trong tệp, bạn sẽ có hành vi như thế này khi bắt đầu xterm:

lansdale:~> xterm -xrm \*font:courr12
xterm: cannot load font "courr12"

(Xterm xuất hiện và chạy với một phông chữ mặc định, khác nhau)

Các fonts.aliastập tin tồn tại vì chiều dài của tên phông chữ X11. Ví dụ, semr12 là tên viết tắt của:

-adobe-courier-medium-r-normal--12-120-75-75-m-70-iso10646-1

[Tên dài thực sự là 14 trường có thể chỉnh sửa khác nhau được ghép cùng với dấu gạch ngang / dấu gạch nối. Chạy chương trình xfontsel để xem chúng; nó sẽ bắt đầu với tất cả các trường hiển thị bằng dấu hoa thị, nghĩa là không được đặt thành một cái gì đó cụ thể.]

Mỗi dòng trong tệp bắt đầu bằng một tên ngắn (bí danh), để trống, sau đó là tên dài mà nó trỏ / đề cập đến. Bằng cách này, bạn không phải sử dụng tên dài mọi lúc, chỉ cần thiết lập bí danh và sử dụng tên đó. Khi đặt một dòng mới trong tệp, bạn quyết định tên ngắn sẽ là gì, chỉ có tên X11 đầy đủ phải có tệp phông chữ được cài đặt trên hệ thống.

Khi tôi lần đầu tiên cắt răng trên các hệ thống Unix vào những năm 1990, tôi đã chạy ngang qua sân 12 và sau đó đến để mong muốn phông chữ đó (Courier 'Roman' size 12) cho các xterms của tôi. Trên HP / UX và Solaris, fonts.aliastệp đã có courr12, vì vậy tôi chỉ cần đặt tệp "XTerm*font: courr12"của mình vào .Xdefaultsvà mọi thứ sẽ hoạt động tốt.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.