@Linda-chan

Тег ruby в блоге Linda-chan

Linda-chan

Вечный вопрос: нужно ли удалять ненужные гемы, если вопрос места на диске не стоит на повестке дня?

#ozmph
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Кстати, прикол от Nanoc. Там есть возможность писать свои фильтры и вообще внедрять свой код в процесс компиляции сайта, достаточно закинуть модули в папку lib. Ну я и закинула. А у меня один главный файл, к которому через require_relative прицеплены другие. В standalone режиме всё прекрасно работало, а тут компиляция начала валиться с сообщением, что дескать unicode normalization не применима к US-ASCII. С этого момента началось перелопачивание исходников в поисках, где он нашёл US-ASCII. Думала, что из-за включения гема unicode, пихала всё в module, чтобы не светилось наружу – нифига. Потом от отчаяния догадалась убрать require_relative, раз уж оно грузит все модули, что есть в папке без дополнительных пинков, и ошибка пропала. Короче, мистика.

#ojufm
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Собственно, чего это я? Сегодня вместо работы сидела портировала код, конвертирующий текст в HTML с сохранением внешнего вида (в том числе и табов), с VBScript на Руби. Тоесть код нужен был для обновления программы на VB6, но на работе VB6 нет поэтому сначала писала на VBScript, а потом в VBA приводила в чувства. Собственно, на Руби я это дело перевести тоже хотела, а всё для чего? Для того чтобы у меня был свой собственный фильтр для Nanoc, чтобы обычный текст выводился нормально без всех Markdown премудростей. И фильтр я таки сделала, теперь нужно допилить его для нормального состояния, чтобы параметры были и всё такое. А там уже можно будет придумать, как мелкие рассказики пачкой публиковать, конвертируя из CherryTree XML ^^'

#ojujh
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Терпеть не могу блоки в Руби. Тут пиши «then/end», там - «do/end», сям - «begin/end». Всё время путаюсь. Есть фигурные скобки, но смотрятся они некрасиво и как-то чужеродно =_=

#ojubf 7
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Взяла код на VBScript, взяла свой модуль vb.rb и начала построчно переводить код на Руби. Этим язык меня и привлекает.

#ojuza 2
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Из пятого HAML'а убрали опцию «ugly», и всё стало очень печально =_=

#owsao 6
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Gopher сервер на Руби OO
https://github.com/muffinista/gopher2000
На нём сделан Gopher гейт к Википедии:
gopher://gopherpedia.com

#oktjh 4
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Если у нас сокеты, скажем, в каком-нибудь Net::HTTP, и случается ошибка, то вот вот это:

$stderr.puts "Ошибка: #{ e.message }"

может кончиться этим:

incompatible character encodings: UTF-8 and ASCII-8BIT (Encoding::CompatibilityError)

Поэтому нужно делать так:

$stderr.puts "Ошибка: #{ e.message.force_encoding("windows-1251").encode("UTF-8") }"

Собственно, это результат мышления в стиле «двух кодировок» и «какой-такой UTF-16 я в линупсах привык к UTF-8 и доки не читаю».

#owjgg 1
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Я, конечно, ещё только начинаю осваивать Руби, но из всех языков с которыми я за последнее время познакомилась, именно Руби оставляет какое-то чувство комфорта при написании кода. Словно пишешь на VB7.

#okgpf 1
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

tumblelogs.sort_by! do |tumblelog|
tumblelog["title"]
end

Не перестаю удивляться!

#okgmq 11
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

[ file_contents ].pack("u")

И никаких сторонних утилит OO

#okocd
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Как заставить RVM работать не только в запущенном Баше, но и за его пределами, в тех же Иксах? А то Баш при запуске читает ~/.bashrc и запускает специальный скрипт, после чего все переменные окружения красиво устанавливаются, и нужная версия Руби подменяет системную (если есть). Иксы же при логоне запускают ~/.profile и даже выполняют указанный там скрипт, но переменные окружения так и не устанавливаются. В итоге работает только системная версия Руби, устаревшая лет пять назад == Приходится городить костыли с промежуточными скриптами, которые врукопашную устанавливают нужные переменные и запускают правильную версию Руби. Та же фигня с неинтерактивными пользователями вроде www-data в рамках вэб-сервера. У них вообще нет ~, а при системной установке RVM для них не выполняется обновлятор переменных окружения == И при запуске от суперпользователя (скажем, через крон) – RVM большими красными буквами не рекомендуют запускать от рута =_= Короче, пичалька.

#ceesp 7
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Bing Logger переписала на Руби. До этого было на VBScript только для Windows, а тут прямо кроссплатформенно всё.

#ceenx 6
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

То, что у функций в Руби есть опциональные параметры с дефолтным значением, это, конечно, хорошо. А то, что нельзя пропустить один опциональный параметр и указать значения следующих вызовом вида «byaka(12, , 34)», это, конечно, очень плохо =_=

#ojxfu 29
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Пилю модуль со строковыми функциями в стиле VB6. В качестве упражнения и безболезненного погружения. Сначала хотела стандартный класс переопределить, но потом решила не делать этого. Собственно, узнала кое-что новое про сами VB функции. Например, в Replace() есть параметр Start, который по идее только сообщает с какого символа начинать поиск и замену, а на деле (и это задокументировано!) срезает всё, что было до этого символа. Я прямо в шоке, всегда думала, что активно использую этот параметр, ан нет, видать, ни разу не использовала.

#ojxiy
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

То ли я невнимательно читала спецификацию syslog, то ли авторы класса Syslog в Руби, но ихние функции debug(), error() и прочие не соответствуют тому, что я вижу в своём syslog сервере. Тоесть отправляю error(), а оно появляется как Warning, falal() – как Error и так далее. Разве что только info() нормально выходит.

#ojsms 3
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Пишу в начале скрипта на Руби:

!/usr/bin/env ruby

Запускаю, Баш начинает вести себя неадекватно, словно это – его собственный скрипт. Вспоминаю, убираю BOM, запускаю. Баш сообщает, что файл не найден. Вспоминаю, CRLF превращаю в LF. Запускаю, скрипт стартует без проблем.
При этом самого Руби это всё не смущает. Башу не хватает гибкости™

#cegvu 19
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Руби мог написать только японец =_=

#oozqul
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

О! Раз у меня появился линупс на соседней машине, то можно сделать на нём TSS12 и снова спамить в Тумблер!

#igorp 2
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Linda-chan

Мейл гейт Тумблера написан на Руби. А ты продолжай закатывать глазки и морщить носик, делая сайтики на жумоле в фирме из полутора студентов.

#ipjkg
Вы можете выбрать до 10 файлов общим размером не более 10 МБ.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.