LINUX.ORG.RU
ФорумTalks

Вимператороподобное поведение в GUI


0

0

Для тех, кто в танке - в вимператоре можно нажать f и набрать потом номер ссылки, чтобы по ней перейти (http://vimperator.org/screenshots/vimperator_hints.png)

Я вот думаю, а если сделать то же самое и для обычных окон (на уровне gtk, например), чтобы в конец забить на мышь, на хоткеи, которые ещё надо помнить, на мнемоники кнопок - будет ли это юзабельно?

★★★★★

По мне - наверно будет.

yoghurt ★★★★★
() автор топика

да, это будет удобно.

cuki ★★★★
()

Будет. Однозначно бы поставил себе такое.
Только это желательно не привязывать к конкретному тулкиту.

Breton
()
Ответ на: комментарий от k0l0b0k

>а вводить куда?

Ну, внизу активного окна может на время ввода появляться modeline какой нибудь, например

yoghurt ★★★★★
() автор топика

по номерам - неудобно, мне кажется, я использую вот такой костылик:

#!/bin/sh
FONT="-fn -*-terminus-*-*-*-*-*-220-*-*-*-*-iso10646-*"
COLORS="-nb #000000 -nf #FFFFFF -sb #0066ff"
MISC="-i"
PARAMS="${FONT} ${COLORS} ${MISC}"
wnds=`wmctrl -l | cut -d " " -f 5-`
wrks=`wmctrl -d | cut -d " " -f 13-`
bufs=`emacsclient --eval "(list-buffers-string)" | xargs echo -e`
sel=`echo "$wnds\n$bufs\n$wrks" | dmenu $PARAMS`
wrkid=`wmctrl -d | grep "$sel" | cut -d " " -f 1`
test $wrkid && wmctrl -s $wrkid || wmctrl -a "$sel" || emacsclient -c --eval "(switch-to-buffer \"$sel\")"

по хоткею появлется dmenu со списком окон, воркспейсов и буферов емакса(за исключением служебных), пара-тройка букаф, профит.

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

ах, да

(defun list-buffers-string ()
  (mapconcat '(lambda (s) (format "%s" s))
	     (remove-if '(lambda (name) (string= (substring name 0 1) " "))
			(mapcar 'buffer-name (buffer-list)))
	     "\n"))
lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

одно но - непривязанное к тулкиту (точнее привязанное ко всем популярным) будет сделать очень сложно.

У меня в голове появился такой вариант - «Наведение на цель». Суть такова:

Не подсвечивать-нумеровать отдельные контролы, а делить полупрозрачной(но заметной сеткой) активное окно на зоны, и нумеровать их. Если зона пронумерована как X, то для имитации нажатия мышкой нужно нажать X дважды, чтобы переразбить зону X ещё на несколько зон, нужно нажать X и какой-то другой хоткей. Повторять до просветления^Wпопадания цетральной части активной зоны на нужный контрол.

Бред?

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

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

ixrws ★★★
()
Ответ на: комментарий от Breton

> Только это желательно не привязывать к конкретному тулкиту.

Из-за того что все современные тулкиты забили на Xt этого не получится.

Darkman ★★★
()

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

andreyu ★★★★★
()
Ответ на: комментарий от ixrws

у меня она когда-то витала как раз применительно к браузеру :)

сетка клавиш 4x3, например, то есть, (для большинства окон) получатся приблизительно равносторонние прямоугольники

qwer
asdf 
xzcv 

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

lazyklimm ★★★★★
()
Ответ на: комментарий от andreyu

> В KDE-привязанных приложениях есть такая фича. Активируется то ли по Ctrl, то ли по Alt

По Ctrl в Konqueror'е, больше нигде не видел.

Darkman ★★★
()
Ответ на: комментарий от Darkman

Не в конкероре, а в KHTML => в акрегаторе, справке и т.п. работает.

vkos ★★
()
Ответ на: комментарий от Darkman

> По Ctrl в Konqueror'е, больше нигде не видел.

В Kmail (и во всем, что есть в Kontact) было такое.

andreyu ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.