вторник, 29 сентября 2015 г.

"Бесполезная" клавиша Insert..

Как известно, клавиша "с кривым окошком" контекстного меню очень даже полезна - уже по умолчанию это вызов командной строки в Emacs. Ну вот и для Insert`a нашлось дело, причем даже по смыслу соответствующее - выполнение команды xfce4-popup-clipman.

понедельник, 28 сентября 2015 г.

zypper: обновление пакетов

Список репо, в котором наведен порядок:
zypper lr
#  | Псевдоним          | Имя                          | Включён | Обновление
---+--------------------+------------------------------+---------+-----------
 1 | debug              | openSUSE-13.1-Debug          | Нет     | Нет       
 2 | editors            | editors                      | Да      | Да        
 3 | gnome-new          | GNOME:STABLE:3.12            | Да      | Да        
 4 | nvidia             | nVidia Graphics Drivers      | Да      | Да        
 5 | openSUSE-13.1-1.10 | openSUSE-13.1-1.10           | Нет     | Нет       
 6 | oss                | openSUSE-13.1-Oss            | Да      | Да        
 7 | packman-e          | packman-essentials           | Да      | Нет       
 8 | packman-m          | packman-multimedia           | Да      | Нет       
 9 | repo-non-oss       | openSUSE-13.1-Non-Oss        | Да      | Да        
10 | update             | openSUSE-13.1-Update         | Да      | Да        
11 | update-debug       | openSUSE-13.1-Update-Debug   | Нет     | Нет       
12 | update-n.oss       | openSUSE-13.1-Update-Non-Oss | Да      | Да        
13 | x11-utils          | X11:utilites                 | Нет     | Нет       
14 | x11-xfce           | X11:xfce                     | Да      | Да 
В "экстремальных" для обычного пользователя случаях (все же привыкли к Ясту) ему придется иметь дело именно с zypper, да и в сложный случаях так быстрее. Поэтому для быстрого доступа к конкретному репо неплохо бы присвоить ему короткое имя - алиас. Это легко сделать такой командой:

zypper nr alias|name|URI new-alias

Механизм исключения репозитариев- увы, отсутствует, поэтому при обновлении из конкретных репозиториев следует их указывать явно (здесь-то и нужны короткие алиасы):

zypper up -r packman-e -r x11-xfce

Следует отметить, что применение патчей командой 'zypper patch' не требует указания репо, так как они все равно берутся из Update.

Откат на старую версию после неудачного обновления, если при запуске появляется что-то вроде:
    symbol lookup error: /usr/lib/libwebkit2gtk-3.0.so.25: undefined symbol: ...
- да элементарно!

zypper in -f -r update libwebkit2gtk-3_0-25

zypper бла-бла-бла
Будет обновлён до более старой версии следующий 1 пакет:
  libwebkit2gtk-3_0-25
Следующий 1 пакет изменит производителя:
  libwebkit2gtk-3_0-25  obs://build.opensuse.org/GNOME -> openSUSE
бла-бла-бла
Продолжить? [y/n/? выводит все параметры] (y): y

пятница, 11 сентября 2015 г.

Emacs: Agenda Calendar

Как обычно, вначале я не пользовался этим непонятным режимом, посчитав его чем-то ненужным. И очень зря! ;) Итак, перечислим часть возможностей и фичей по порядку:
  • команда org-agenda выводит приглашение и список "видов" (которые можно настрить, подробности ниже),
  • допустим мы нажали "a", выбрав этим вид За текущую неделю,
  • который представляет собой вертикальную временную шкалу с датами и заголовками событий,
  • по правому клику на событии содержимое нашего орг-файла прокручивается до соответствующей записи, и она разворачивается.
Необходимые, но очень краткие пояснения:
1. Все данные берутся из орг-файла (но не только), но для этого его первым делом нужно добавить в список с помощью комбинации "C-c ["
2. Чтобы событие появилось в буфере agenda, оно должно содержать дату в специальном формате, которая добавляется в один клик из "всплывающего календаря":


 - командой org-time-stamp.
3. "Виды", а точнее команды, которые отображаются в приглашении можно настроить абсолютно как угодно:
просмотр событий за неделю/месяц/год/-15..+15 дней от текущей даты и так далее (см. список переменных org-agenda-..),
можно например настроить показ записей со статусом TODO, а выполненные (DONE) скрыть из просмотра.

С таким мощным функционалом все прочие календари и планировщики, вроде Osmo, GTG или Gnome Calendar становятся абсолютно не-нуж-ны.


воскресенье, 6 сентября 2015 г.

Калькулятор в Whisker Menu


calc.sh: notify-send "Результат: " $(calc $1 $2 $3)

вторник, 1 сентября 2015 г.

Запуск emacsclient с произвольной темой

При создании нового фрейма (и соответственно нового окна) с помощью 'emacsclient -с' наследуются все родительские настройки, в том числе и цветовая тема. Можно конечно передать emacsclient`у в виде alist некоторые дополнительные параметры, например цвет фона окна, но тему целиком так передать не выйдет. Допустим, мне нужно, чтобы при открытии текстового файла из Thunar новое окно Emacs мимикрировало под "обычный текстовый редактор", ну и просто отличалось от основного окна - а если поменять только фон, то может оказаться сломана подсветка синтаксиса, например выйти синее на синем. Не вариант. Собственно, хинт:
  1. Установить load-theme-buffer-local.el
  2. Добавить в конфиг (add-hook 'server-switch-hook (lambda () (load-theme-buffer-local 'adwaita (current-buffer))))

Следующие Предыдущие Главная страница

Blogger Template by Blogcrowds