2009-11-01 42 views
25

Tôi có dịp cần phải in mã (Horrors !!!;)), và tôi đã tự hỏi những gì biên tập viên hoặc công cụ tôi sẽ sử dụng để in mã ra với định dạng thích hợp và làm nổi bật cú pháp? Nếu nó quan trọng, nó sẽ là mã C# nhưng lý tưởng là công cụ sẽ làm việc cho nhiều ngôn ngữ nhất có thể. Có thể Notepad ++ hoặc một cái gì đó xử lý này?Mã in có tô sáng cú pháp?

+2

superuser này câu hỏi có một vài gợi ý, trong đó có một cho Notepad ++: http://superuser.com/questions/39571/how-do-i-easily-highlight cú pháp-of-php-code-in-word –

Trả lời

12

Có, Notepad ++ chắc chắn có thể in mã với tô sáng cú pháp.

In màu rõ ràng là thích hợp hơn, nhưng trong những dịp tôi đã in màu đen và trắng, sự khác biệt tinh tế về màu sắc [được hiển thị dưới dạng màu xám, tất nhiên] có thể khó phân biệt.

Tuy nhiên, tôi nghĩ rằng một chút tùy chỉnh các lược đồ màu sẽ làm cho vấn đề này ít hơn.

8

http://pygments.org/ là một tùy chọn. Nó hỗ trợ tấn ngôn ngữ và vì nó được viết dưới dạng thư viện python, bạn có thể viết quy trình chuyển đổi theo bất kỳ cách nào bạn muốn.

29

Bạn có thể sử dụng vim! :syntax sẽ bật tô sáng cú pháp và :hardcopy sẽ in. Có syntax highlighting definitions cho nhiều ngôn ngữ ngoài kia.

Giao diện mặc định thường được tối ưu hóa để hiển thị màn hình, nhưng bạn có thể fixthat.

+19

@RCIX Đừng nói xin lỗi - chúng tôi xin lỗi vì bạn! –

+4

Bạn cũng có thể đưa ra lệnh ': TOhtml' để chuyển đổi mã nguồn thành tệp HTML với màu sắc và mọi thứ. –

3

Visual Studio sẽ và cho phép bạn có cấu hình hoàn toàn riêng để in.

+0

Ở đâu? Tôi chỉ có thể in trong B/W – Revious

+0

Tôi không thể nhớ lại, nhưng dựa trên tuổi của câu trả lời tôi đã đề cập đến Visual Studio * 2008 * có hỗ trợ bản địa cho in màu. VS2010 và VS2012 có thể sử dụng phần mở rộng [In màu] (http://visualstudiogallery.msdn.microsoft.com/00ec88c2-1553-47d2-8170-3c5baa0c6e44) [sic]. Có vẻ như không tương đương với VS2013. – Richard

1

Dưới chế độ unix, bạn có thể muốn thử a2ps. Nó là linh hoạt và tạo ra kết quả tốt đẹp.

1

Tôi trong khi trước đây tôi đã tạo một hộ gia đình python script kết thúc các vật phẩm vào một tiện ích bảng điều khiển nhỏ. Nó hoạt động với bất kỳ ngôn ngữ nào được hỗ trợ bởi pygments. Ngoài ra nếu bạn sử dụng nhật thực, bạn có thể chỉ cần sao chép văn bản đã chọn trong trình chỉnh sửa và sau đó dán nó vào trình soạn thảo RTF như MS Word - nó sẽ giữ lại tất cả các màu, phông chữ và định dạng.

+0

chưa thử nghiệm, âm thanh đẹp, hy vọng nó hoạt động ok :) tuy nhiên, trong trường hợp in theo lô nhiều hơn (đối với số lượng tệp lớn hơn), tôi vẫn quan tâm đến một số công cụ HTML-tới-máy in có thể được sử dụng như một người bạn đồng hành? – akavel

11

Sử dụng vim. Phương pháp dễ nhất của nó để làm điều đó trong kinh nghiệm của tôi cho đến nay, đó là, một khi bạn biết làm thế nào.

Vim được cài đặt sẵn trên máy Mac, btw. Và tôi biết làm thế nào bạn đặc biệt những người thích màu sắc, vì vậy tôi sẽ làm cho impatientbusinessman-proof này vì lợi ích của tất cả.

1.) tập tin mở

vim filename.m

2.) cho phép màu cú pháp (tôi đã không có được kích hoạt theo mặc định)

: cú pháp trên

3.) in

:hardcopy 

Vim sẽ chọn máy in mặc định của hệ thống mà không hỏi bạn để đảm bảo bạn đã thiết lập máy in đó trước.

4.) thoát khỏi chương trình (điều này là thực sự không phải là một trao)

:q 

HOẶC

Sử dụng Aptana. Aptana khá ngọt ngào, miễn phí và có chức năng ftp tuyệt vời.

1

Nếu bạn có vấn đề với Visual Studio 2012 liên quan đến việc in một handeling vấn đề nổi bật được mô tả:

  • Tải về và cài đặt Power Tool này mà thực hiện việc in ấn màu , bên cạnh một số tính năng khác và sửa lỗi. Làm việc cho tôi!
3

Gần đây tôi đã so sánh 2 giải pháp đã được đề cập: vim & pygments. Cả hai đều cho kết quả tuyệt vời, nhưng có cách bạn có thể sử dụng chúng một cách nhanh chóng:

  • pygments không cung cấp xuất trực tiếp sang PDF. Do đó, giải pháp đơn giản nhất tôi tìm thấy là xuất sang HTML và sau đó sử dụng wkhtmltopdf. Bạn có thể kết hợp cả hai hoạt động bằng cách sử dụng kịch bản sau đây bash:
src2pdf() { 
    local noext="${1%.*}" 
    pygmentize -O full -o "$noext.html" "$1" 
    # enabling line wrapping in <pre> blocks 
    perl -i -wpe '/<style.*>$/&&($_.="pre{white-space:pre-wrap;}\n")' "$noext.html" 
    wkhtmltopdf "$noext.html" "$noext.pdf" 
    rm "$noext.html" 
} 
  • cho vim, nó cũng đơn giản như thế này: TERM=xterm-256color vim '+hardcopy >out.ps' +q code.src tôi phát hiện ra rằng biến $TERM môi trường có thể ảnh hưởng đến sản lượng màu sắc, vì vậy tôi thích để đặt nó một cách rõ ràng. Và cuối cùng, bạn có thể cần phải tinh chỉnh của bạn vimrc một chút:
set printfont=:h9 
set printoptions=number:y,left:5pc 
1

Các công cụ gọi là enscript là rất nhiều công cụ để làm điều này. Nó rất mạnh mẽ, không gắn với một trình soạn thảo hay ngôn ngữ và bạn có thể tạo PDF với cú pháp tô sáng.

Tài liệu này nói khá nhiều.

enscript man page

0

Giải pháp Đối với Bash Shell

  1. Thêm dòng này để ~/.bashrc nếu bạn đang sử dụng Ubuntu
    hay, để ~/.bash_profile nếu bạn đang sử dụng MAC
    Nếu tập tin đó không tồn tại, tạo ra nó.

    alias lprc = 'vim -me -c ": cú pháp trên" -c ": cưng" -c ": q"'

  2. source ~/.bashrc hay source ~/.bash_profile

  3. Để in chào màu.py chỉ làm điều này:
    lprc hello.py thay vì lpr hello.py

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