21 апреля 2011 г.

coffee-script на html страничке

Coffee-script Кофи скрипт Кофе скрипт — в общем не знаю как написать вступление. Тем кому приходится прилично кодить на javascript е неверное про coffee script  уже слышали. Любые попытки создать что-нибудь приличное по масштабам на javascript  заканчивались созданием или приводили к использованию какого нибудь фреймворка (Jquery, prototype & etc.). Причина — код на javascript довольно громоздкий и трудно читаемый.
Coffee script ruby style язык транслируемый в javascript, т. е. Транслятор Вы можете скачать на сайте проекта: http://jashkenas.github.com/coffee-script/
там же небольшое руководство по использованию.
Все.

Coffee script — это такая вещь которая позволяет нудные выкладки на javascript представить в синтаксисе похожем на ruby — гораздо удобном и понятном. Сам Coffee-script браузерами не поддерживается (надеюсь, что пока, ну или хотя бы в виде плагина к браузеру). Поэтому нам нужен транслятор на javascript он может быть инсталлируемым или в виде подключаемого javascript скрипта.
Coffee script не одинок существует к примеру Objective-J (Читайте на wikipedia).

Главное что я хочу показать в этом посте — это то как запустить coffee-script на страничке. Как ни странно, когда я искал информацию как «готовить» скрипты на coffeescriptе, нигде не было примера того. как прикрутить скрипт к обычной html страничке без предварительной трансляции в javascript. Такая возможность позволит протестировать код и посмотреть кофе скрипт в действии. Для production он может быть тяжеловат — транслятор у меня весил 160 Kb.
В общем, смотрите
<!DOCTYPE html>
<html lang="ru">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>CoffeeScript</title>
<!-- Указываем транслятор coffee: -->
<!--<script src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js"></script>-->
<script src="coffee-script.js"></script>
<!-- Демонстрация возможности запуска coffee скрипта + взаимодействие с объектами DOM -->
<script type="text/coffeescript">
# coffee class:
class Demo1
  constructor: (@name) ->
  show1: (param1) ->
    console.log "#1: "+@name + " &&& " + param1
  show2: (param1) ->
    console.log "#2: "+@name + " &&& " + param1
# object:
math =
  cube: (x) -> x * x * x
  square: (x) -> x * x
# coffee function
demo_function = () -> alert "You click on test node"
# глобальные объекты javascript доступны и из coffee-script
window.onload = () -> console.log "Welcome"
# добавляем обработчик события onclick
document.getElementById('testNode1').onclick= demo_function
document.getElementById('testNode2').onclick= ()-> alert "Hello 2"
# autostart as window.onload :
(() ->
demo= new Demo1 "xxx"
demo.show1 "yyy"
demo.show2 "www"
)
# end without '()' at the end, because no input's!
# Look on next ... on load:
((x) -> console.log "input value: "+x )(2)
</script>
</head>
<body>
<h1>hello <span id="message"></span></h1>
<p id="testNode1">Test Node 1</p>
<p id="testNode2">Test Node 2</p>
</body>
</html>

* This source code was highlighted with Source Code Highlighter.

Так же можете почитать http://blog.w3orme.com/2011/04/coffeescript.html

6 апреля 2011 г.

MSI Wind работаем с вебкамерой

На своем нетбуке MSI Wind u90X поставил вновь OpenSuse 11.4.
Все работает пока без нареканий (кроме WI-FI, не удалось настроить).

Относительно легко нашел на форуме (http://unixforum.org/index.php?showtopic=83408) как можно пробудить к жизни встроенную веб камеру.
Решение для ubuntu, но на OpenSuse можно и своим ходом установить пакет 'luvcview' (через Yast к примеру):

sudo apt-get install luvcview 
dmesg |grep -i "uvc"
luvcview -f yuv

Так же можно почитать: ещё одну статью по настройке системы (Описанные проблемы пока не встретил).

5 апреля 2011 г.

Сдаем лампу Аладина в утиль

Сделаем Санкт-Петербург чище будем сдавать отработавшие люминесцентные - галогенные - энергосберегающие лампы на утилизацию, а не в мусорный бак, как обычно.
ГУП "ЭКОСТРОЙ" в городе Санкт-Петербург по адресу  В.О. 13-я линия д. 22 принимает на утилизацию отработанные энергосберегающие лампы.
Так же туда можно сдать:

  1. градусники;
  2. таблетки - лекарства (кому уже не нужно).

Подробнее по ссылке на оф. сайт
Так же http://www.infoeco.ru/