К вечной теме, на чем смотреть видео и слушать аудио. Ок?
Имхо для Linux систем VLC не подходит, ну никак! После мытарства по его плейлисту, который просто отвратителен в пользовании, я решил забить на него. Даже скины, которые на вид привлекательно изменяли внешность плеера, не помогут.
Два если:
- хотите слушать музыку, то поставьте foobar2000, да придется ставить wine, но линуксоиды? у кого он не стоит? -) Или можно поставить amarok, в общем для прослушивания музыки в линуксе достаточно софта, а вот с поддержкой cue не так уж и много, и все хромают когда в листе русские названия. А я любитель русского рока и lossless форматов :)
- хотите посмотреть видео, то пересоберите mplayer с выводом графики через видеокарту, потому что процессор со скаченными HD фильмам просто тупит. Да и вообще mplayer приятнее и пошустрее VLC.
Разместил: Виталий Волков в 13:07 Июль 11, 2009. Комментарии выключены
Рубрики: Без рубрики.
Предлагаю вашему вниманию небольшой снипет, который мы написали, когда понадобилось сделать вывод объектов по колонкам.
-
from django import template
-
-
-
register = template.Library()
-
-
-
class SplitObjectsNode(template.Node):
-
def __init__(self, objects, list):
-
self._objects = template.Variable(objects)
-
self._list = list
-
-
def render(self, context):
-
import math
-
columns_count = len(self._list)
-
objects = self._objects.resolve(context)
-
-
for item in self._list:
-
context[item] = []
-
-
if len(objects) == 0:
-
return ”
-
-
dec = float(len(list(objects))) / columns_count
-
mid = int(math.ceil(dec))
-
pass_part = len(list(objects)) % columns_count
-
count_full_cols = columns_count – pass_part
-
-
idx = 0
-
index = 0
-
for item in self._list:
-
step = mid
-
if idx >= pass_part and pass_part != 0:
-
step = mid – 1
-
context[item] = objects[index: step + index]
-
index += step
-
idx += 1
-
return ”
-
-
-
@register.tag
-
def split_objects(parser, token):
-
"""
-
Split content of the objects to equal parts. Number of parts is a count of passed arguments to tag.
-
-
Example:
-
{% split_objects objects col1 col2 col3 %}
-
<table><tr><td>
-
{% for item in col1 %} {{ item.title }} {% endfor %}
-
</td><td>
-
{% for item in col2 %} {{ item.title }} {% endfor %}
-
</td><td>
-
{% for item in col3 %} {{ item.title }} {% endfor %}
-
</td></tr></table>
-
"""
-
parts = token.contents.split()
-
if len(parts) < 3:
-
raise template.TemplateSyntaxError, "Tag should get at the least 3 arguments. Example usage is {% split_objects objects col1 col2 %}"
-
-
tagname = parts.pop(0)
-
objects = parts.pop(0)
-
return SplitObjectsNode(objects, parts)
Разместил: Виталий Волков в 11:06 Июнь 25, 2009. Комментарии выключены
Рубрики: Без рубрики. Теги: django, python.
Если вы работаете с текстом в консоли, возможно правите какую то конфигурацию на сервере под никсами (к примеру генту), то возможно вам будет интересно и полезно узнать некоторые горячие клавиши которые вы вероятно никогда не использовали.
Возвратится на начало текущей строки Ctrl + A
Возвратится в конец текущей строки Ctrl + E
Удалить слово назад Alt + BackSpace
Удалить слово вперед Alt + D
Переместить курсор к началу следующего слова Alt + F
Переместить курсор к началу предыдущего слова Alt + B
Удалить символ перед курсором Ctrl + D
Данные комбинации поддерживаюца большинством никсовых систем.
PS.: имхо иногда удобно очень, чем тыкать мышкой
Разместил: Виталий Волков в 16:05 Май 24, 2009. Комментарии выключены
Рубрики: Полезное. Теги: linux, горячие клавиши, консоль.
Сегодня установил себе на рабочий компьютер довольно занятный дистрибутив Zenwalk . Понравилось что зен это полноценный домашний десктоп да и еще к тому же абсолютно не избалованный гномами и кедами, и несет на своем борту такой легкий оконный менеджер xfce.
Очередным сюрпризом после установки явилось то, что версия питона стояла 2.6, так что обновлять его мне не пришлось, а сразу пошли установки пакетов – django, wxWidgets, wxPython, и еще всякого по мелочи.
Ну и плюс как обычно сделал себе полный набор девелоперского софта – Eclipse, lighttpd, php, mysql. Подумалось то что каждыйраз когда идет настройка новой оси или не совсем новой, то такие действия я повторяю из раза в раз. Пришла мысль сделать какой то пакет который бы при установке сразу же имел все необходимые мне вещи.
Возможно примусь за это в скором времени.
Разместил: Виталий Волков в 20:04 Апрель 21, 2009. Комментарии выключены
Рубрики: Без рубрики. Теги: zenwalk, ос.
После поисков редактора питоновских скриптов я прошустил довольно много, спрашивал, читал, изучал. Мне не нужен был ни Eclipse ни IDEA. Для моего домашнего ноута честно признатся таких монстров вообще не нужно.
В итоге остановился на emacs. Сейчас читаю классную статью, которую, если вы так же как и я решили перейти на emacs, можете прочитать вот
Кстати под Mac OS X есть отличная обертка над emacs Aquamacs
Разместил: Виталий Волков в 12:04 Апрель 19, 2009. Комментарии выключены
Рубрики: Познание нового, Полезное. Теги: emacs, python.
Христос Воскрес!
Воистину все постигается в чтении умных книг. Буквально недавно сообразил, какую возможно грубейшую ошибку мы совершили в создании одного приложения на Python. Мы использовали для вызова методов родительского класса super.
Пример:
-
class B:
-
-
def __init__(x, y):
-
self.x = x
-
self.y = y
-
-
def setX(x):
-
self.x = x
-
-
-
class A(B):
-
def __init__(x, y, r):
-
super(A, self).__init__(x, y)
-
self.r = r
-
-
def setX(x):
-
super(A, self).setX(x + self.r)
А теперь посмотрим как было бы правильнее
-
class B:
-
-
def __init__(self, x, y):
-
self.x = x
-
self.y = y
-
-
def setX(self, x):
-
self.x = x
-
-
-
class A(B):
-
def __init__(self, x, y, r):
-
B.__init__(self, x, y)
-
self.r = r
-
-
def setX(self, x):
-
B.setX(self, x + self.r)
Разместил: Виталий Волков в 10:04 Апрель 19, 2009. Комментарии выключены
Рубрики: Познание нового. Теги: python, наследование.
В последнее время перешел с GUI аплоада на утилиту rsync. А что? Очень даже удобно если набросать для проекта скрипт обновления. Но в простом случае я просто делаю что то вроде этого
rsync ~/workspace/example.php username@example.com:/var/www/example.com
Но можно и все содержимое каталога
rsync -r ~/workspace/* username@example.com:/var/www/example.com
Разместил: Виталий Волков в 16:04 Апрель 17, 2009. Комментарии выключены
Рубрики: Без рубрики. Теги: linux, rsync, обновление.
Решили перевести наш сервер на версию Python 2.6. Замечу что до этого использовали 2.5, что как оказалось является довольно устаревшей. Ну решили – начал переводить.
Казалось бы что сложного, но Gentoo всячески отказывалась принимать версию из-за того что она была замаскирована. Что это означает я даже не подозреваю, поэтому раз через emerge не хотела, то решил просто собрать исходники.
Скачал необходимую версию питона, скомпилил – все отлично, осталось перевести ссылку python и python-config на новую версию.
# rm /usr/bin/python /usr/bin/python-config
# ln -s /usr/local/bin/python2.6 /usr/bin/python
# ln -s /usr/local/bin/python2.6-config /usr/bin/python-config
Все отличненько и
# python --version
вернула 2.6.2, осталось пересобрать mod_python, чтобы он использовал обновленный питон. Сделал через обычный emerge.
В итоге все довольны, и осталось только переустановить все необходимые пакеты (дада, именно переустановить, обычное линкование не очень хороший метод), чтобы все проекты поднялись.
Разместил: Виталий Волков в 12:04 Апрель 16, 2009. Комментарии выключены
Рубрики: Без рубрики. Теги: apache, gentoo, mod_python, python.
Была поставлена задача перевести существующую базу с Drupal’а на BigStreet. Скажу сразу что скрипт писался исключительно в личных целях и на скорую руку.
Скрипт генерирует необходимые SQL запросы для их выполнения над базой BigStreet. Будьте осторожны в плане того что он не смотрит какие id у вас уже есть в существующей базе и некоторые запросы просто выдадут ошибку.
Я не учитывал комментарии незарегистрированных пользователей, поэтому если используете скрипт и вам они просто необходимы то можете немного дописать скрипт или сам БигСтрит на поддержку анонимных комментаторов.
Ну и собственно сам скрипт можно взять отсюда.
Скрипт можно выполнять через командную строку перенаправив вывод в отдельный файл.
Разместил: Виталий Волков в 13:04 Апрель 15, 2009. Комментарии выключены
Рубрики: Без рубрики. Теги: bigstreet, Drupal, база данных.
Каким то чудом на меня легла обязанность администратора в нашей фирме, в принципе доволен, всегда любил чо нить пошаманить с бубном. И вот на днях случилась заморочка, которая ввела меня – неопытного начинающего администратора в ступор.
После поднятия NAT на Gentoo Linux, самым неведомым образом стал пропадать интернет, стал шурстить и дошурстил google до дырок. С сетевого адреса через утилиту arping удалось выявить виновника такого поведения, звонок в службу поддержки и выдача чужого MAC адреса поставила точку на наших бедах (ох надеюсь что это так)
Итак, если у вас пропадает интернет и появляется только после рестарта интерфейса, то будьте готовы что кто то использует ваш IP.
Исключительно эта ситуация касается только для выделенных внешних IP.
Разместил: Виталий Волков в 12:04 Апрель 14, 2009. 2 комментария(ев)... »
Рубрики: Без рубрики. Теги: gentoo, администрирование, конфликты.