LINUX.ORG.RU
ФорумTalks

[ru,us] Линакс не готов для десктопа


0

0

У кого из присутвующих работают шорткаты в гноме и KDE если первой поставить русскую раскладку?

<merge key="input.xkb.layout" type="string">ru,us</merge>

А у кого работают шорткаты хоть где-нибудь если оставить толкьо русскую раскладку?

<merge key="input.xkb.layout" type="string">ru</merge>

А в винде между тем все работает в обоих вариантах. Единственное приложение которое работает с ru,us это огнелис, потому что там другой механизм обработки шорткатов.

Информация к размышлению:

https://bugzilla.gnome.org/show_bug.cgi?id=162726 с 2005 года!!!

http://helgo.net/simon/hacking/shortcut.html

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

Ответ на: комментарий от guest095433

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

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

Вот именно! Если Вы говорите об абстрактных модификаторах - извольте говорить и об абстрактных клавишах. А то Вы хотите, чтоб модификаторы использовались через маппинг (это и делает их абстрактными), а клавиши - без него. Это криво.

На самом деле, ЕМНИП внутри они все работает через кейкоды. После того, как приложение дает указание иксам "Хочу ловить клавишу". Но для того, чтобы указать эту клавишу, приложение должно от чего-то отталкиваться. Оно переводит кейсимволы "C", "Z", ... в кейкоды и далее их использует. И вот теперь вопрос в том, как правильно переводить - через какую группу?

Или Вы предлагаете хардкодить в гтк значения кейкодов??

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

ИЗ ЧЕГО получать "рав код" (кейкод)? Стандартный подход - из кейсимвола и имеющихся иксовых маппингов (алгоритмы могут быть разными, что и наблюдаем). С обратной трансляцией (для отображения) вообще проблем нет, тут все однозначно.

svu ★★★★★
()

линупс готов для десктопа

толсто

гном не нужен (с мигелем и моной)

выкладывай пароль уже

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

> Вот именно! Если Вы говорите об абстрактных модификаторах - извольте говорить и об абстрактных клавишах. А то Вы хотите, чтоб модификаторы использовались через маппинг (это и делает их абстрактными), а клавиши - без него. Это криво.

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

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

> >Ох! Как толсто... Ну тогда Винда не готова стать десктопом еще больше. Потому что переключение на русский по CapsLook не было, нет и не предвидится.

>Зато переключалка на alt+shift или ctrl+shift ен ломает жругие хоткеи, где задействованы эти клавиши.

Еще толще. И чем-же CapsLook в этом плане отличается от alt, ctrl, shift? Почему в Винде нельзя настроить переключение по двум shift?

Beria1937
()
Ответ на: комментарий от elipse

> Когда, ракеты были на мази - тогда вообще за бугром ложили на ru-локализацию приложений. Сами при совке не могли родить единую кирилицу - только развели зверинец на ровном месте.

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

Единую кирилицу при СССР вполне родили. КОИ-8 называется. Но Билли Гейц, как всегда, на юзеров болт положил.

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

>Еще толще. И чем-же CapsLook в этом плане отличается от alt, ctrl, shift? Почему в Винде нельзя настроить переключение по двум shift?

Можно, но не из коробки.

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

> зачем мелочиться? заменить официальный алфавит на латинский, и всего то делов, все счастливы

Ok , какой смысл (кроме "вот я так хочу") в первой русской раскладке ?
Мне сложно представить современую OS без раскладки с какой-нибудь латиницей, а без кириллицы - да, вполне могу :))

Можно и ботинки напялить на разные ноги и обьявить, что обувь еще "не готова" для людей, перевернуть вазу и обьявить, что нет у нее дна, запаяна горловина и цветы "не лезут" туда ....:))

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

>Единую кирилицу при СССР вполне родили. КОИ-8 называется. Но Билли Гейц, как всегда, на юзеров болт положил.

В венде вообще очень забавно было - система везде использует 1251, а имена файлов на ФС - 866.

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

>Ok , какой смысл (кроме "вот я так хочу") в первой русской раскладке ?
>Мне сложно представить современую OS без раскладки с какой-нибудь латиницей, а без кириллицы - да, вполне могу :))


Тем более, как kapsh выше намекает, дефолтность раскладки не привязана к ее номеру.

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

> Но для того, чтобы указать эту клавишу, приложение должно от чего-то отталкиваться. Оно переводит кейсимволы "C", "Z", ... в кейкоды и далее их использует. И вот теперь вопрос в том, как правильно переводить - через какую группу?

Раскладка для такого перевода должна задаваться отдельно от языковых раскладок. Определяется она моделью клавиатуры (какие надписи наклеены на какую кнопку), в 99% случаев это обыкновенная querty.

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

> Единую кирилицу при СССР вполне родили. КОИ-8 называется. Но Билли Гейц, как всегда, на юзеров болт положил.

Новости из ЦК КПСС :))
Всякие внутриведомственные перепихоны в CCCР - это еще не официальная позиция страны.
Разумеется, что мания величия предполагает скурпулезное изучение и глубокое, заинтересованное изучение и понимание проиходящего в CCCР, а так же "документов партии и правительства", а иначе - "мы за себя не ручаемся".

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

>Тем более, как kapsh выше намекает, дефолтность раскладки не привязана к ее номеру.

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

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

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

Видимо гномопереключалка так умеет
http://www.linux.org.ru/jump-message.jsp?msgid=4149616&cid=4150411

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

ни от чего не зависят?????? Офигеть дайте две. Под иксами SDL использует кейкоды или кейсимволы?

ЗЫ Вы догадываетесь, что независимо от ответа на этот вопрос я приведу Вам пример того, как можно это покорежить?

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

> Раскладка для такого перевода должна задаваться отдельно от языковых раскладок.
Лишняя сущность.

> какие надписи наклеены на какую кнопку

Увы, на сегодня клавиатуры не предоставляют такую информацию. А оставлять это софту - значит, опять создавать неодозначности всякие. Захачат ведь до смерти...

> в 99% случаев это обыкновенная querty.

4.2ссимо. Во-первых, qwerty, во-вторых в мире есть другие страны, кроме Штатов и России. Если говорить о процентах - надо посмотреть, что там выгравировано у Китайцев;)

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

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

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

FYI
В гноме до 2.28 можно было выбирать дефолтную (=используемую при создании окна, если такой режим включен). В следующем гноме дефолтной всегда будет первая.

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

> Лишняя сущность.

Напротив, это корректная альтернатива просмотру всех доступных раскладок.

> Захачат ведь до смерти...


Уже захачили :) Вопрос сейчас в том, как расхачить назад.

> 4.2ссимо. Во-первых, qwerty


Ай-ай-ай, как некрасиво придираться к опечаткам

> во-вторых в мире есть другие страны, кроме Штатов и России. Если говорить о процентах - надо посмотреть, что там выгравировано у Китайцев;)


У китайцев таки qwerty :) Пруф http://www.worldlanguage.com/ProductScreenShots/102714-1.jpg

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

> Невозможно. Есть разные драйверы, есть разные платформы.

В рамках тулкита (kde/gtk/sdl), наверное, все-таки возможно.

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

>ни от чего не зависят??????

Имеется ввиду от раскладок, капсолоков и тп

>Под иксами SDL использует кейкоды или кейсимволы?


Как-то так:
KeyCode keycode = xevent.xkey.keycode;

>ЗЫ Вы догадываетесь, что независимо от ответа на этот вопрос я приведу Вам пример того, как можно это покорежить?


Пример адекватный или через keymap, а то и linux/include/linux/input.h можно подредактировать...

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

> Напротив, это корректная альтернатива просмотру всех доступных раскладок.
Это не большая проблема. Раскладок больше 4х не бывает;)

> Ай-ай-ай, как некрасиво придираться к опечаткам

Я сначала подумал, что опечатка. Но ведь это ж надо постараться так опечататься! Вместо того, чтоб нажать 6 в линейку стоящих клавиш...;)

> У китайцев таки qwerty :)

Ок, с китайцами ясно. Но все-таки тех, у кого не qwerty - думаю, сильно больше 1%. Судя по базе раскладок...

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

Кейкоды - это то, что приходит СНИЗУ в тулкит. Оно не стандартизуется, ибо внешняя сущность.

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

Если там кейкоды - простите, это ж им самим приходится реализовывать все то, в иксах в XKB? В частности, должна быть собственная база раскладок. Она есть?

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

> Раскладок больше 4х не бывает;)

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

> Я сначала подумал, что опечатка. Но ведь это ж надо постараться так опечататься! Вместо того, чтоб нажать 6 в линейку стоящих клавиш..


Видимо, я слишком часто набираю слово queue. На автомате вылетело.

> Ок, с китайцами ясно. Но все-таки тех, у кого не qwerty - думаю, сильно больше 1%. Судя по базе раскладок...


Кмк, они все - вторые после кверти.

> Кейкоды - это то, что приходит СНИЗУ в тулкит. Оно не стандартизуется, ибо внешняя сущность.


Для приложений кейкоды - это то, что тулкит назовёт кейкодами :)

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

> Вот и получится, что в каждой раскладке на одно и то же нажатие нашлось по _разному_ хоткею.
Да. Соббсно на это народ и жалуется в той баге, ссылку на которую я дал ниже. Но это реальность. Мне кажется, если человек использует дворак и у него клавиша C находится ... там, где находится - у него и Ctrl-C должен работать соответственно. И пофиг что там выгравировано.

> они все - вторые после кверти.

Наверняка. У меня была претензия именно к цифре 99% ;)

> Для приложений кейкоды - это то, что тулкит назовёт кейкодами :)

Значит, придется создавать уровень отображения нижних кейкодов в верхние. Очевидно, конфигурируемый в рантайме и пр. и пр. Дык нафига - если оно в иксах уже все сделано (только верхние кейкоды называются кейсимволами)? Разумеется, я говорю о платформе именно иксовой...

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

> Дык нафига - если оно в иксах уже все сделано (только верхние кейкоды называются кейсимволами)?

Если сделано, почему хоткеи с русской раскладкой не работают? :)

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

Потому что на уровне иксов нет понятия хоткея. Отдано на откуп тулкитам и приложениям. А те реализовывают по-разному. Иногда не так, как нам бы хотелось.

svu ★★★★★
()
Ответ на: комментарий от MuZHiK-2

us,ru - ok
ru,us - not ok
by,us - not ok
ua,us - not ok
Отваливается везде (сейчас - gentoo x86 с xkeyboard-config из git).

Deleted
()
Ответ на: комментарий от elipse

>А на фига гномотерминале включать русскую раскладку ?
Даже на активной us-раскладке. Да-да.

Deleted
()
Ответ на: комментарий от kapsh

setxkbmap ru,us
Не дефолтовой, а первой.

Deleted
()
Ответ на: комментарий от svu

>Потому что на уровне иксов нет понятия хоткея

А прикрутить это астральное знание там совсем никак?

// не тролль, просто интересно, а что там внутри я не особо в курсе :}

Deleted
()
Ответ на: комментарий от svu

> Потому что на уровне иксов нет понятия хоткея. Отдано на откуп тулкитам и приложениям. А те реализовывают по-разному. Иногда не так, как нам бы хотелось.

Те маппинги, которые реализуют искы, для хоткеев толком не годятся. Выше объяснено, почему. В попытке эмулировать недостающую сущность через имеющиеся, всё обрасло хаками.

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

>Если там кейкоды - простите, это ж им самим приходится реализовывать все то, в иксах в XKB? В частности, должна быть собственная база раскладок. Она есть?

Зачем это, кроме как для ввода текста?

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

> Мне кажется, если человек использует дворак и у него клавиша C находится ... там, где находится - у него и Ctrl-C должен работать соответственно. И пофиг что там выгравировано.

Хоткей не должен зависеть от динамически переключаемой раскладки. Это абсолютно не юзабельно.

Если ему непременно хочется хоткеи с дворак, пусть соверрайдит хоткейную раскладку из кверти в дворак.

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

Это вопрос полиси. Традиционно иксы живут по правилу "мы даем Вам механизм, а полиси вы определяете сами". Иногда это рулит, этогда сосет.

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

Да нет там хаков. Просто надо тулкиты починить. Вполне себе прямым образом. Используя кейсимволы, не кейкоды.

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

> Зачем это, кроме как для ввода текста?
Клавиатура обычно используется для ввода текста.

ИОКО.

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

> Это абсолютно не юзабельно.
Надо провести опрос среди пользователей дворака. Возможно, они не согласятся. Не знаю.

> пусть соверрайдит хоткейную раскладку из кверти в дворак.

Нет, надо просто использовать имеющуюся.

Идея хоткейной раскладки возникает только потому, что тулкиты криво реализовывают шорткаты. Достаточно выпрямить тулкиты.

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

Возможно, стоит немного обновить полиси…

Хотя, впрочем, особенность, что здесь описывается, меня никак не затрагивает.

Deleted
()
Ответ на: комментарий от svu

> Нет, надо просто использовать имеющуюся.
> Достаточно выпрямить тулкиты.


Допустим, единственная раскладка у меня - русская. Мне надо, чтобы работало Ctrl+s. Что для этого нужно починить в тулките? :)

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

>> Зачем это, кроме как для ввода текста?
>Клавиатура обычно используется для ввода текста.


Оказываеся, еще и для хоткеев.

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

>Допустим, единственная раскладка у меня - русская. Мне надо, чтобы работало Ctrl+s. Что для этого нужно починить в тулките? :)

Работать с keycode

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