Sunday, March 28, 2010

Thursday, February 25, 2010

Wednesday, February 17, 2010

Полезный Compiz

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

Ниже описаны горячие клавиши и опции плагинов Compiz, которые помогают эффективно управлять окнами.

Многие опции из перечисленных ниже включены по умолчанию, некоторые требуют вручную назначить им удобную комбинацию клавиш. Все настройки производятся из меню Preferences > Advanced Desktop Effects Settings.

Edge Detection - Как перетаскивать окна?

На этой демонстрации видно, как окно браузера приклеивается к краям экрана и как окно терминала приклеивается к окну браузера.



 

Удобно, когда окна приклеиваются к сторонам экрана и других окон при перетаскивании. Я рекомендую включить обе опции, Edge Resistance и Edge Attraction.

Place Windows - Где откроется новое окно?

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



Самый простой, но удобный плагин. Когда открывается новое окно, оно будет расположено максимально умно: там, где ещё нет открытых окон или где они меньше всего перекрываются. Как вариант, можно использовать стандартные "Каскадом" и "Сеткой".

Put Window - Куда передвинуть окно?

Compiz позволяет одним нажатием клавиши переместить окно в любой угол или сторону экрана, а также центрировать его. На этой демонстрации окно перемещается из угла в угол комбинациями клавиш Super и цифровой клавиатуры.



Можно очень быстро отправить окно в любой угол или бок экрана, центрировать, или переслать на другой рабочий стол (Put within Viewport). Проще всего настроить этот плагин на 9 клавиш цифровой клавиатуры:
Соответственно, клавиша 5 центрирует окно, 7 и 9 помещают его в верхний левый и правый углы, и так далее.


UPD: Долгие годы практики показали, что куда удобнее настроить Win+Z, Win+X и Win+C для перемещения окна соответственно влево, по центру и вправо. Удобно нажимается одной рукой, и в остальные углы обычно нет необходимости гонять окно. 

Maximumize - Заполнить окном свободную область экрана

На этой демонстрации окно терминала открывается рядом с окном браузера, а затем заполняет всю свободную площадь. Потом оно закрывается, и два новых окна терминала делают то же самое.





Если на большом мониторе хочется открыть новое окно так, чтобы оно заняло всё свободное от других окон пространство, Maximumize делает как раз это. Удобно, например, открыть браузер на половину экрана, и PDF-Viewer на другую половину экрана, одной кнопкой заставив его занять ровно столько места, сколько осталось от браузера.

Show Desktop - Показать рабочий стол!




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

Для пущей красоты можно включить плагин Fade to Desktop -- тогда окна будут изящно исчезать, вместо того чтоб просто сворачиваться. На этой демонстрации окна исчезают и появляются дважды.




Show Window Previews - Показать предпросмотр свернутых окон



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

Make Screenshots - Снимок экрана в одно касание

На этой демонстрации я снимаю кусочки экрана, они сразу же сохраняются в открытую папку и открываются в просмотрщике. 




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

Desktop Wall -- Что там, на других столах? 

Если у вас всего два-три рабочих стола, включать Desktop Cube нет необходимости, Desktop Wall выглядит нагляднее. Мгновенно переместиться на следующий стол обычно помогают горячие клавиши, селектор рабочих столов или комбинация клавиш и мыши.


Увидеть все столы сразу, как на картинке выше, позволяет плагин Expo. В режиме Expo можно перетаскивать окна между столами и закрывать лишние.


Toggle On Top - Закрепить окно поверх других


Чтобы закрепить окно поверх других, то есть включить режим Always On Top, достаточно нажать заранее определенную комбинацию клавиш. Это быстрее и эргономичнее, чем вызывать оконное меню и ставить галочку Always On Top.

Wednesday, September 30, 2009

Sunday, September 6, 2009

Customs?

Забавно. Чтобы послать международную посылку в США, Канаду, Францию, Великобританию, Ирландию, Италию - нужно приложить 2 накладных. В Украину, Казахстан -- 3. В Таджикистан, Кыргызстан, Узбекистан, и подобные -- 4.

Занимательная арифметика.

Tuesday, May 5, 2009

Как настроить поддержку Билайн MMS на Android

Отправка MMS на андроиде HTC G1 с моего номера Beeline не работала, пока я не догадался сделать так, как делают на Водафоне.

Делаем две APN, одна для GPRS, вторая для MMS. Это делается в меню Settings > Wireless controls > Mobile networks > Access Point Names:

Первая APN:

Name: Beeline
APN: internet.beeline.ru
MCC: 250
MNC: 99
APN type: default
Остальные параметры не устанаваливать

(MCC и MNC должны подцепиться автоматически)

Вторая APN:

Name: BeeMMS
APN: mms.beeline.ru
User ID: beeline
Password: beeline
MMSC: http://mms/
MMS Proxy: 192.168.94.23
MMS Port: 8080
MCC: 250
MNC: 99
APN type: mms

После этого телефон перезагрузить (Airplane mode не достаточно).

Monday, May 4, 2009

Сборка браузера Chromium на Athlon XP

На моём компьютере с процессором Athlon XP 1600+ не запускается bleeding edge браузер Chromium, потому что бинарная сборка оптимизирована под Pentium4 и SSE2. SSE2 мой Атлон не поддерживает, вестимо.

$ chromium-browser
[28898:28898:32389465322:ERROR:/build/buildd/chromium-browser-2.0.178.0~svn20090430r14953/build-tree/src/chrome/common/temp_scaffolding_stubs.cc(132)] Not implemented reached in static bool FirstRun::IsChromeFirstRun()
Illegal instruction
$


Как в Ubuntu перекомпилировать Chromium под Athlon XP и прочие не-SSE2 процессоры? Можно либо последовать совету разработчиков и собрать его просто из исходников, либо пересобрать сам пакет по-дебиановски вот так:

1. Точно так же, как ночные бинарники, скачиваем пакет свежего исходного кода:

$ apt-get source chromium-browser

2. Скачиваем и устанавливаем зависимости:

$ sudo apt-get build-dep chromium-browser

3. В текущем каталоге появится исходный код (метров триста) и папка chromium-browser-3.0* c правилами сборки и пакетом того же самого исходного кода chromium-browser-2.0.178.0~svn20090502r15142-source.tar.bz2.

4. Однако, в файле build-tree/src/build/common.gypi прописаны те самые параметры оптимизации под P4 и SSE2 для профиля Debug (для Release их нет):

      'cflags': [
'-m32',
'-pthread',
'-march=pentium4',
'-fno-exceptions',
'-mfpmath=sse',
'-msse2',
'-Wall',
Мы можем либо заменить их, например, на
      'cflags': [
'-m32',
'-pthread',
'-mtune=athlon-xp',
'-fno-exceptions',
'-mfpmath=sse',
'-msse',
'-Wall',
Для этого пишем патч:


Index: src/build/common.gypi
===================================================================
--- src.orig/build/common.gypi 2009-05-29 19:01:23.000000000 +0200
+++ src/build/common.gypi 2009-05-30 19:02:27.000000000 +0200
@@ -285,7 +285,7 @@
# Some utility binaries need to be build with the host's native
# config (i.e. no 32-bit override).
'Tool': {
- 'cflags!': ['-m32', '-march=pentium4', '-msse2', '-mfpmath=sse'],
+ 'cflags!': ['-m32', '-mtune=athlon-xp', '-msse', '-mfpmath=sse'],
'ldflags!': ['-m32'],
'cflags': [ '-O2' ],
},
@@ -343,8 +343,8 @@
'conditions': [
['branding=="Chromium"', {
'cflags': [
- '-march=pentium4',
- '-msse2',
+ '-mtune=athlon-xp',
+ '-msse',
'-mfpmath=sse',
],
}],


и кладем его в файл chromium-browser-3.0*/debian/patches/drop_sse2.patch

5. Теперь этот пакет можно собрать, как обычно,

$ debuild -uc -us

7. Всё. На моём несчастном Athlon XP 1600+ сборка пакета занимает 6 часов, зато браузер
потом работает.

Update: Быстрый какой, как настоящий! Супер! Жаль только, что рамка окна видна и настройки пока не все можно менять. Ну и ещё много багов наверняка найдётся.