Linux управление без мыши

Без мыши

Материал из Xgu.ru

Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Короткий URL: mouseless

Здесь рассматриваются программы и техники, которые могут помочь обойтись без мыши или минимизировать её использование при работе в UNIX/Linux-системе.

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

Первый способ обычно проще — достаточно выучить клавиатурные комбинации (keyboard shortcuts). Второй более радикален и более трудоёмок, но может быть и более эффективным.

Содержание

[править] Программы

[править] Оконные менеджеры

  • xmonad — тайловый оконный менеджер для X Window System, ориентированный на использование клавиатуры.
  • wmii — оконный менеджер для X Window System, ориентированный на использование клавиатуры.
  • GNU Screen — текстовый оконный менеджер.
  • ratpoison — оконный менеджер, созданный на базе GNU Screen, не требующий мыши.
  • Quicksilver (Mac OS X) — инструмент, превращающий клавиатуру в сверхмощный пульт управления системой.
  • Katapult и подобные — им далеко до Quicksilver, но они работают под Linux и другие Unix, а не только Mac OS X

[править] Консольные приложения

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

  • a day without x (англ.) — статья, где автор пытается прожить один день без X-сервера. Если не обращать внимания на то, что для него подвиг то, что для многих многолетняя привычка, то что скриншоты сделаны из-под иксов, а также то, что постинг написан при помощи браузера Firefox из-под Windows, он сделал неплохую работу. В любом случае, список приведённых им приложений достоин внимательного изучения.

В комментариях к статье много интересного:

[править] Графические приложения с текстовым интерфейсом

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

  • Vimperator — браузер Firefox (Iceweasel) с интерфейсом Vim;
  • Conkeror — браузер Firefox (Iceweasel) с интерфейсом Emacs;
  • Muttator — почтовый клиент Thundebrid с интерфейсом Mutt.

[править] Совсем без мыши

В большинстве случаев, когда вы используете правильные программы, такие как wmii, Vimperator, GNU Screen, mutt, freetalk и им подобные, вы можете прекрасно обходиться без мыши, но есть некоторые ситуации, когда совсем без мыши всё же сложно.

Особенно, это касается работы с графическими приложениями, такими например как GIMP.

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

Координаты могут быть присвоены, например, так:

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

Если предположить, что на экране всего 1280×1024 точек, и при каждой итерации он разбивается на 12 секций, то получается, что потребуется не более ln(1280×1024)/ln(12)=5.66 нажатий, для того чтобы точно спозиционировать мышь. А если на 20, то для экрана такого размера достаточно и 4.7 нажатий. В действительности, такая точность позиционирования нужна редко, а для того чтобы спозиционировать с точностью до прямоугольника 20×20 будет достаточно и 3х.

При относительном позиционировании, то есть, сдвиге, нажатий может быть ещё меньше.

Существует программа keynav, которая умеет работать с такой сеткой. По умолчанию она разбивает экран сеткой из четырёх частей, что не очень удобно.

Вот конфигурационный файл для разбиения экрана на каждой итерации на 16 частей с привязкой клавиш, указанной выше:

Однако у keynav при всех его вкусностях, не хватает многих возможностей, из-за которых использовать его всё же сложно.

Что можно было бы в него добавить?

  • Относительное позиционирование (то есть курсор перемещается не в абсолютную точку, а относительно его текущей позиции). Иногда нужно мышь передвинуть чуть-чуть вправо или чуть-чуть влево, и теоретически должно хватить одной клавиши, а тут надо заново идти и позиционировать мышь;
  • Позиционирование в пределах текущего окна. Часто бывает нужно просто кликнуть мышью в какую-то точку, которая находится в текущем окне. Тогда позиционирование по всему экрану избыточно.
  • Отмена выбора области. При выполнении абсолютного позиционирования, если вы быстро выбираете нужный квадрат, то вы можете легко ошибиться (особенно, сначала, когда вы только привыкаете к такому способу управления), и тогда неплохо было бы сделать отмену и вернуться на шаг назад.

[править] Программное управление положением мыши

Для того чтобы программно переместить мышь в произвольную точку, можно использовать инструмент xdotool.

Переместить мышь в точку с координатами (100,200):

Этот скрипт крутит мышкой по кругу (сплюснутому):

Это если вам не будет хватать движения на экране.

Этот скрипт рисует на экране слово «Linux» написан для использования на http://chatroulette.com/

[править] Отключение курсора

Если вы всё равно не используете мышь, зачем вам нужен её курсор?

Программа unclutter скрывает курсор мыши, если им не двигать на протяжении 5 секунд.

Величину интервала неактивности можно регулировать при помощи опций программы.

[править] Запуск X Window без мыши

Если X Window System не хочет работать быз мыши, можно добавить в конфигурационный файл:

[править] Мышиный одометр

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

Мышиный одометр это программа, которая подсчитывает, сколько километров наездила мышь по столу за определённый интервал времени (например, с момента запуска программы, но не обязательно).

Популярные мышиные одометры:

[править] Буфер обмена

Буфер обмена — одно из важнейших приспособлений для обмена информацией между приложениями, с которыми работает пользователь. Уметь владеть искусством занесения и извлечения информации из буфера обмена без мыши очень важно, поскольку это заметно сокращает случаи использования снаряда и существенно ускоряет процесс работы.

[править] Основы

С мышью текст, скопированный в буфер обмена X Window System (в действительности в X Window System нет никакого буфера обмена, а есть скорее механизм обмена, который координирует X-сервер; когда говорят «буфер обмена в X Window», как правило, подразумевается этот механизм), вставляется при помощи нажатия средней кнопки мыши, колёсика мыши или двух кнопок нажатых одновременно.

Вставить текст без мыши можно с помощью комбинации ShiftInsert.

Если нужно скопировать текст из файла в буфер обмена, можно использовать программу xsel. На той же странице рассказано как можно ухитриться и быстро засовывать в буфер обмена адреса URL и прочие вещи, описываемые регулярными выражениями.

В desktop-менеджерах есть свои собственные инструменты для доступа к буферу обмена. Например, в KDE:

В Mac OS X аналогичная задача решается при помощи программ pbcopy и pbpaste.

Можно копировать в буфер обмена текст из консоли, если вы сидите в screen (а сидеть в нём имеет смысл), по методу, описанному в [1]. Кратко, идея заключается в том, чтобы дублировать буфер обмена screen в буфере обмена X Window через привязку соответствующих действий к соответствующим клавишам.

[править] Буфер обмена и X11-forwarding

Копирование не всегда может происходить локально. Вы можете работать в удалённой системе, и вам может понадобиться скопировать в буфер обмена текст из той системы.

Это можно сделать даже при помощи xsel, но для того чтобы такой метод работал, необходим X11-forwarding.

После этого в буфере обмена хоста host1 будет сообщение privet host1, несмотря на то, что команда была выполнена на хосте host2.

Для связи с X-сервером, работающем на клиентском компьютере, используются переменные окружения, которые автоматически устанавливаются при входе на удалённый хост.

Если же после подключения выполняется подключение к screen, переменные теряются, и для того чтобы передавать данные удалённому X-серверу, их нужно восстановить (это, кстати, касается и ситуации, когда вы не подключаетесь удалённо, а подключаетесь локально к сеансу screen, который запускался на виртуальном терминале или в X’ах, но он пережил X-сервер, под которым вы его запускали).

/bin/sx, который можно использовать для подключения к сеансу GNU Screen:

После этого в файле

/.sx находятся нужные нам переменные окружения. Их можно использовать тогда, когда мы хотим передать данные X-серверу.

/bin/url передаёт в буфер обмена последний URL, который был прислан в freetalk. Скрипт использует файл

/.sx, если может прочитать его, для того чтобы знать параметры SSH-соединения:

Последний URL скопируется из истории freetalk в буфер обмена, если вызвать команду url.

[править] Буфер обмена и XMPP

Другой способ передачи данных в буфер обмена по сети — использование XMPP.

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

Вот простейший пример такого скрипта, написанного на Ruby и использующего библиотеку xmpp4r.

Этот скрипт можно запускать при старте X-сервера, например, добавив в

Вместо my-clipoard@jabber.ru указывается JID, являющейся точкой входа в буфер обмена, а вместо password — пароль для подключения.

Отправлять текст из удалённой системы можно, например, с помощью sendxmpp или другим способом.

[править] Vim

Из редактора Vim можно копировать текст в буфер обмена X Window System без использования мыши. И наоборот, текст, находящийся в буфере обмена X Window System, можно вставлять в Vim операциями вклейки [2].

Буфер обмена X Window отражён на буфер * или + редактора Vim. Для обращения к определённому регистру в Vim необходимо нажать символ " и название этого регистра.

Например, скопировать строку в буфер обмена X Window можно командой:

(кавычки, звёздочка, два раза y).

Если вы уже находитесь в режиме вставки, то ctrl-r * (но если не включить set paste, текст в этом случае вставится лесенкой).

Для того чтобы всё это работало, vim должен быть собран с поддержкой xterm_clipboard:

Вклеивать текст можно и традиционным shift-insert, но при этом надо делать множество лишних операций:

  • :set paste
  • i для перехода в режим вставки
  • shift-insert
  • Esc для выхода из режима вставки
  • :set nopaste

Конечно, это не может сравниться с нажатием "*p.

[править] Vimperator

URL, находящийся в буфере обмена, можно вклеить непосредственно в Vimperator буквой P. Он откроется в новом табе.

[править] Устройства

  • Foot Mouse (Footime) — ножная мышь. Управление происходит при помощи ног
  • Griffin Technology PowerMate — многие вещи, которые вы привыкли делать при помощи мыши, намного удобнее и быстрее делать при помощи этого девайса
  • VIM — жестокий и беспощадный (рус.) — жестокое устройство для переключения режима работы Vim ногой

[править] Дополнительная информация

[править] RSI из-за мыши

Что такое RSI и как с ним бороться:

  • RSI (англ.)
  • 10 Simple RSI Prevention Tips (англ.)
  • Of Mice and Men — Mice and RSI (англ.) — RSI связанный с мышью
  • REAL Ergonomics- Mouse Vs Trackball Vs Touchpad (англ.) — сообщение в списке рассылки, посвящённом эргономике, с развёрнутой критикой мышей
  • Track Pads vs Track Ball vs Mouse (англ.) — спор на тему того, что лучше тачпад или мышь

Источник

Горячие клавиши Linux

В далеком 1963 году Дуглас Энгельбарт изобрел манипулятор «мышь», который через двадцать с лишним лет стал неотъемлемым атрибутом каждого писишника. Мышь начала распространятся с появлением графического интерфейса пользователя. Прототипом современного GUI (Graphic User Interface) послужил интерфейс компа Apple, в котором были воплощены современные принципы: иконки, меню, принцип Drag-and-Drop. Современные юзеры не представляют работу без мыши, с появлением которой работа с компом.значительно упростилась. Графический интерфейс Линукс также использует мышку, однако в Линукс существуют такие операции, которые невозможно выполнить при помощи мыши, к примеру, переключение между консолями.

В данной записи мы поговорим о горячих клавишах в Линукс, не зная которых вы просто не сможете полноценно работать в операционной системе.

Горячие клавиши условно можно разделить на следующие группы:

  • Общесистемные горячие клавиши
  • Комбинации клавиш для работы в консоли
  • Комбинации клавиш системы X-Window
  • Комбинации клавиш среды KDE

Общесистемные горячие клавиши

Все мы знаем «комбинацию из трех пальцев»: Ctrl + Alt + Del. В Виндовс она юзалась для вызова окна процессов. Повторное нажатие Ctrl + Alt + Del перезагружало компьютер. В Линукс реакция на нажатие данной комбинации задается в файле /etc/inittab:

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

Параметр –r now команды shutdown означает, что систему надо перезагрузить (-r) сейчас же (now). У вас может стоять другая команда, к примеру, reboot или же вообще реакция на Ctrl + Alt + Del может быть отключена.

Следующая общесистемная комбинация клавиш – это Ctrl + Alt + Backspace. Нажатие данной комбинации клавиш приведет к перезагрузке сервера X Window, если он запущен.

Комбинации клавиш для работы в терминале

Виртуальных консолей в Линуксе может быть несколько (обычно 6). Переключаться между ними позволяют комбинации клавиш Alt + Fn, где n – это номер консоли. Однако эта комбинация клавиш будет работать только, если вы сейчас работаете в консоли, а не в KDE или другой графической среде. К примеру, вы сейчас работаете в консоли 1, а вам следует переключить на консоль 4, тогда нажмите сочетание клавиш Alt + F4, для обратного переключения нажмите Alt + F1.

Нажатие комбинации Alt + F7, как правило, переключает вас в графический режим – систему X Window.

Клавиша Tab в консоли (или терминале системе X Window) реализует автозаполнение командной строки. Предположим, что вы забыли точное имя команды, при помощи которой запускается нужная вам программа. Введите начальные буковки команды и нажмите Tab – система сама дополнит командную строку. Если после нажатия Tab вы услышите звуковой сигнал, значит, возможных вариантов несколько, к примеру, вы ввели da, а система нашли две (или более) команды, которые начинаются на “da”, и она не знает, какую команду надо «вписать» в командную строку. В данном случае нажмите еще раз Tab, чтобы увидеть весь список команд, которые начинаются на “da”.

Вы нашли нужную вам команду, ввели ее, программа вывела на экран какую-то информацию. Но вывод программы оказался настолько объемным, что не поместился на экране. Можно, конечно, перенаправить вывод в файлик или программу less, но если данный вывод вы не будете юзать в дальнейшем, не надо этого делать. Просто листайте его при помощи комбинаций клавиш Shift + PgUp и Shift+PgDn.

Комбинации клавиш системы X-Window

Сейчас вы наслаждаетесь работой в X Window. Но порой надо переключиться в консоль, ввиду того, что графический терминал вам просто надоел. Это можно проделать при помощи комбинации клавиш Ctrl + Alt + Fn, где n – это номер консоли (1..6). Обратно переключиться можно при помощи комбинации клавиш Alt + F7.

Для изменения разрешения монитора вам не надо запускать никакой конфигуратор. Просто нажмите Ctrl + “+” (на цифровой клавиатуре) для увеличения разрешения (до максимально допустимого) или Ctrl + “-“ (на цифровой клавиатуре) для уменьшения.

Небольшой совет: если у вас слабенькая плата (к примеру, RivaTNT2 Vanta 8MB) и любимая игрушка (ясное дело – tuxracer) «тормозит», уменьшите разрешение до 640×480.

Поскольку в «чистой» системе X Window с ее классическими менеджерами окон практически никто не работает, смысла рассматривать дополнительные комбинации клавиш я не вижу. Перейдем сразу к KDE.

Комбинации клавиш среды KDE

Компания Майкрософт предлагает начать работу в Виндовс с нажатия клавишу Пуск (Start). В KDE для этого используется кнопочка с надписью K (точнее с логотипом самого KDE). Если у вас большой монитор (дюймов этак 19 или больше) и вам лень тянуть мышь (которую вы забыли почистить) из верхнего правого в нижний левый угол, нажмите Alt + F1, и меню KDE появится в текущей позиции указателя мыши.

Если вам следует запустить одну команду, вряд ли для этого надо запускать терминал (при условии, что вызываемая программа графическая), нажмите Alt + F2 для открытия окна запуска программы – введите команду или выберите ее из списка и нажмите Выполнить.

Рис. 1. Окно запуска программы

Переключаться между запущенными программами можно при помощи комбинации клавиш Alt + Tab – как в Windows. Если на рабочем столе – хаос, значит, пришло время перейти на другой рабочий стол. Переключаться между рабочими столами можно при помощи комбинации клавиш Ctrl + Tab или Ctrl + Fn, где n – это номер нужного вам рабочего стола. Помните, что комбинация клавиш Alt + Tab работает только в пределах текущего рабочего стола. Если у вас на первом рабочем столе запущено десятка два прог, а на втором – ни одной, при нажатии Alt + Tab на втором столе вы увидите сообщение «Нет задач».

Просмотреть весь список задач можно, нажав комбинацию Alt + F5. Если вам «не понравился» какой-то процесс, его можно «убить», вызвав менеджера задач (комбинация клавиш Ctrl + Escape).

Раскладка клавиатуры не переключается обычным способом? Не помогает, ни Ctrl, ни Ctrl + Shift? Тогда нажмите сочетание клавиш Ctrl + Alt + K. Это комбинация сработает в KDE всегда.

Комбинации клавиш для работы с буфером обмена самые обычные – Ctrl + C (копировать), Ctrl + X (вырезать) и Ctrl + V (вставить). Кроме этих трех комбинаций, KDE предоставляет пользователю еще две:

  • Ctrl + Alt + V – показать меню буфера обмена
  • Ctrl + Alt + R – «ручная» работа с буфером обмена

А как же работа с окнами? Комбинация Alt + F4, как и в Виндовс, закрывает окно, а Alt + F3 – выводит меню действий с окном.

Очень полезной является комбинация Ctrl + Alt + Esc, вызывающая программу xkill. После ее вызова указатель мышки превращается в череп с косточками. Щелкнув «черепом» по какому-то окну, оно будет уничтожено, даже если программа зависла. Для выхода из программы xkill без уничтожения окна нажмите Esc.

В Виндовс можно было сфотографировать экран, нажав клавишу Print Screen. В Линуксе тоже это можно сделать, но для фиксации всего рабочего стола надо нажать Ctrl + Print Screen, а активного окна — Alt + Print Screen. После чего скрин будет помещен в буфер обмена и его можно будет вставить в любое KDE-приложение, поддерживающее работу с графикой. Однако я рекомендую делать снимки экрана специальными программами, к примеру, ksnapshot. Полученные при помощи данной программы снимки экранов будут намного качественнее, чем снимки, полученные предложенным выше способом, а также они будут занимать мало места на диске (потому что программа ksnapshot использует формат PNG).

Как изменить комбинации клавиш в KDE? Откройте Центр управления и перейдите в раздел Внешний вид, Горячие клавиши (или Привязки клавиш – во второй версии KDE).

Рис. 2. Привязки клавиш

В данный момент подытожим и создадим таблицу с комбинациями клавиш. Распечатайте ее и используйте до тех пор, пока не выучите нужные вам в повседневной работе комбинации.

Источник

Читайте также:  Windows 10 display images
Оцените статью