Làm cách nào để in từ Vim sang pdf?


11

Tôi đã nghĩ rằng điều này khá đơn giản, nhưng tôi không hoàn thành nó: Tôi sử dụng gVim và muốn lấy văn bản dưới dạng tệp pdf. Trong các ứng dụng khác như Firefox, hộp thoại in hiển thị cho tôi các máy in có sẵn và tôi có thể chọn in trực tiếp ra tệp pdf. Tuy nhiên, trong Vim không có hộp thoại như vậy và tệp chỉ được gửi đến máy in tiêu chuẩn của hệ thống.

Tôi đã thử như sau:

  • Tôi không thể thực hiện "in-to-pdf" theo cách in tiêu chuẩn của mình thông qua cửa sổ máy in của Ubuntu.
  • :ha > filechuyển đổi tập tin của tôi thành tập tin .ps. Điều đó thật tuyệt, nhưng .pdf sẽ đẹp hơn ...

Không phải là một câu trả lời, nhưng bạn có thể sử dụng ps2pdfcông cụ dòng lệnh sau đó, với tệp poscript làm đầu vào.
kebs

Câu trả lời:


21

Vimsẽ không hiển thị cho bạn hộp thoại in. Thay vào đó, bạn có thể in ra tệp PS, mở tệp trong trình xem PS và in từ đó.

Để in ra tệp PS từ Vim:

:hardcopy > myfile.ps

Bạn cũng có thể chuyển đổi pssang pdfsử dụng ps2pdf:

ps2pdf myfile.ps

1
Đề xuất đầu tiên có nghĩa là chỉ cần thay đổi phần mở rộng tệp ... Cái thứ hai có thể hoạt động trong ánh xạ hoặc một cái gì đó tương tự, tôi sẽ phải thực hiện thêm một số nghiên cứu để hoàn thành nó ... Cảm ơn cho đến nay ...
caligula

1
Nó dễ dàng như thay đổi một phần mở rộng;)
Ron

1
Điều này thật tuyệt vời, chắc chắn không biết đây là một điều! Bạn có thể nhận được nhiều tập tin vào một tài liệu không?
Ben Kushigian 30/03/2017

2
(người dùng cygwin) :ha > file.pdfkhông tạo tệp pdf hợp lệ. Kết hợp nó với ps2dpfcông việc đã làm nhưng cho tôi nền trắng. Tôi hạnh phúc nhất :TOhtml file.htmlvà sau đó in tệp html này sang pdf
lucidbrot

Tôi đã sử dụng một biến thể của lệnh này ngày hôm nay :: 1,50 bản cứng, nó không tạo ra một tệp, chỉ được in từ dòng 1 đến 50.
Tiến sĩ Beco

8

Dựa trên những gì người khác đã nêu ...

Bạn có thể sử dụng lệnh vim một dòng sau đây để tạo tệp .pdf:

:hardcopy > %.ps | !ps2pdf %.ps && rm %.ps

Ghi chú:

  • Viết %tắt cho tên tệp hiện tại, vì vậy HelloWorld.Csẽ in raHelloWorld.C.pdf
  • Nếu bạn cũng muốn giữ lại tệp .ps trung gian, chỉ cần bỏ qua && rm %.ps, lấy: :hardcopy > %.ps | !ps2pdf %.ps

Ngoài ra, để thay đổi phông chữ được hiển thị, hãy đặt printfont trước khi thực hiện lệnh hardcopy. Ví dụ: để chọn Chuyển phát nhanh 8:

:set printfont=Courier:h8

Đặt tất cả lại với nhau, tôi đã chọn đặt các mục sau vào .vimrctệp của mình để tôi có thể thực hiện :HardcopyPdflệnh một cách đơn giản . Lệnh này cũng có thể hoạt động trên một phạm vi được chọn trong một tệp:

set printfont=Courier:h8 "select the font to use when printing
command! -range=% HardcopyPdf <line1>,<line2> hardcopy > %.ps | !ps2pdf %.ps && rm %.ps && echo 'Created: %.pdf'
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.