Как я могу напечатать выделенный синтаксисом код Ruby? - PullRequest
3 голосов
/ 21 января 2010

Я использую TextMate для своего редактирования на Ruby, но при печати файлов код не выделяется синтаксисом. Есть ли хорошие программы для печати хорошо отформатированного кода Ruby с цветным выделением?

Ответы [ 6 ]

2 голосов
/ 22 января 2010

Хорошее решение, которое я использую, - это печать из TextMate через vim, который дает вам результат с подсветкой синтаксиса и нумерацией строк (или как бы вы ни выбрали его настройку). В дополнение к vim требуется ps2pdf но их легко установить с помощью macports и т. д.

Единственное ограничение заключается в том, что файл должен быть сохранен первым.

См. на этой странице , на которой показанокак настроить макрос как команду TextMate.

1 голос
/ 24 февраля 2014

Очевидно, что принтеру трудно сообщить, что файл, эквивалентный * .txt, должен быть раскрашен, но это, очевидно, можно сделать. Создатель TextMate просто сообщил, что он не считает, что это достаточно важная функция, которая в сущности означает, что ее чрезвычайно сложно реализовать.

Aptana может сделать это без проблем, но для загрузки требуется вечность.

Введите vim. vim, вероятно, уже установлен на вашем компьютере.

vim filename.m
:syntax on
:hardcopy

Опять же, не будет никакого запроса, какой принтер использовать, поэтому убедитесь, что принтер вашей системы по умолчанию настроен правильно.

Если вам нужно было использовать команду :syntax on для получения vim для раскрашивания вашего кода:

Чтобы установить vim по умолчанию для подсветки синтаксиса:

nano ~/.vimrc
syntax on

сохранить и выйти

1 голос
/ 21 января 2010

Я бы, вероятно, использовал Ультрафиолет , чтобы создать файл HTML с подсветкой синтаксиса для распечатки ...

1 голос
/ 21 января 2010

Я не знаю, насколько это актуально в Mac-мире, но редактор SciTE в комплекте с помощью установщика в один клик для Windows цветная печать на нашем HP Laserjet. Я не пробовал печатать из разных IDE - я должен попробовать.

1 голос
/ 21 января 2010

Синтаксис gem очень хорош.

require 'hpricot'               
require 'syntax/convertors/html'
def filter_content(content)
    h = Hpricot(content)
    c = Syntax::Convertors::HTML.for_syntax "ruby"
    h.search('//pre[@class="ruby"]') do |e|
        e.inner_html = c.convert(e.inner_text,false)
    end
    h.to_s
end

Редактировать: О, вы имеете в виду печать ... Ну, вы можете конвертировать ее в HTML, а затем распечатать из браузера.

0 голосов
/ 24 декабря 2016

Спасибо, boulder_ruby

Пара дополнительных очков в конце 2016 года (через 2 года и 10 месяцев):

Если вы работаете в Windows, вы не можете рассчитывать на то, что VIM уже установлен. Членство в Stack Overflow увеличивает шансы, но, вероятно, не до 90%). Однако VIM для Windows легко получить. www.vim.org/download.php

Mac поставляются с MacVim по умолчанию.

На Mac, используя MacVim, следуя вашим советам, я тщательно установил принтер по умолчанию на тот, на котором я мог очистить очередь, прежде чем тратить бумагу на тестирование.

Затем я использовал команду: hardcopy VIM. Печатная версия пошла прямо в PDF и открылась в Preview. Он никогда не показывался в очереди принтера по умолчанию.

Кроме того, edavey выше указывает на http://biztos.blogspot.com/2008/06/printing-with-textmate-vim-and-friends.html, который содержит ссылку на страницу справки TextMate при печати. Справка TextMate гласит:

Есть планы улучшить возможности печати, но до тех пор, также есть команда в комплекте с исходным кодом (Просмотр исходного кода в формате PDF) который создает PDF из текущего источника с использованием enscript и имеет Подсветка синтаксиса включена для поддерживаемых языков.

Это говорит о том, что (я еще не разобрался с «исходным комплектом»), что вы можете перейти прямо к PDF с синтаксической раскраской из TextMate. Если я это выясню, я добавлю кое-что здесь (в конце концов).

Надеюсь, это поможет.

...