LINUX.ORG.RU

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

Control-Alt-i - completion в tkcon

Control-Alt-+, Control-Alt-- - изменение разрешения экрана в X Window (данные 1999 года, не проверял)

Unity Control-Alt-T - запуск терминала

Буду иметь в виду, но пока не убедил в том, что стоит закладываться в языке на такую возможность.

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

Control-Alt-+, Control-Alt-- - изменение разрешения экрана в X Window (данные 1999 года, не проверял)
Unity Control-Alt-T - запуск терминала

Ты какой-то «crazy midnight fantasy dimond» делаешь. Ктрл с альтом как альтгр работают ТОЛЬКО в винде. В лине всё по-другому и огород будет другой. Даже если допустить, что Control-Alt-+, Control-Alt-- Control-Alt-T относится к винде, то теряются символы — ≠ ™ і. Они не являются стандыртными символами даже английской раскладки и могут быть опущены в каких-то приложениях.

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

Есть ctrl-alt-break, ctrl-alt-backspace.

А под X Window Ctrl-Alt-Backspace = перезагрузить X Window. Не очень хорошая идея такое в программе пытаться использовать

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

Бекслеш в нормальных системах (не в офтопике) больше ассоциируется с отменой спец. значения буквы, чем с чем-то иным.

Ты хочешь добиться абсолютной однозначности символов что ли?

Ну вот на выбор: #, $, ~, >, |. Ну и ты всегда можешь использовать двойной слеш //.

ya-betmen ★★★★★
()
Ответ на: комментарий от Dreamject

Ктрл с альтом как альтгр работают ТОЛЬКО в винде. В лине всё по-другому и огород будет другой.

Да не суть важно. Мне вообще не нравится переключение режимов. Я (и большинство пользователей компьютера) постоянно путается даже в двух раскладках. Если есть три варианта раскладки - это тем более плохо. Вариант, когда для ввода особого символа нужно нажать префиксную клавишу, мне нравится гораздо больше - меньше неявного состояния.

К тому же я вчера посмотрел на наборы кодировок «из прошлого». Сейчас у меня всё заточено на utf-8, но если думать о переносимости, то это - не лучшее решение. utf-8 нужен далеко не всегда и не везде. Он сильно замедляет работу со строками и увеличивает объём памяти. Если разрабатывать универсальный язык, то не стоит включать нестандартные знаки utf-8 в синтаксис.

Я взял в Википедии общее между KOI-8R, WIN1251 и CP866 и оказывается очень мало значков вне стандартной Русской раскладки: {}[]@#$^&`' . Их не так-то много. °■√ находятся в местах, зависящих от кодировки - жди проблем с ними.

Нет самого лакомого: «»„” . А значит, эти кавычки нельзя вносить в основной синтаксис. И вопрос о нестандартных значках в целом остаётся открытым. Часть значков надо всё равно оставить под пользовательские DSL. Пользователь пусть радуется, что ему вообще даны эти значки и пусть эта радость ему перекроет неудобство от переключения раскладок. Потому что в большинстве языков все значки заняты и такого понятия, как DSL, вообще нет.

[] всё равно уйдут под массивы. {} оставим для пользователя. # используется в синтаксисе сериализации лиспа.

Так что весь вопрос - о ничтожном количестве значков.

Мораль: не буду морочиться с раскладкой. Но всё равно спасибо!

den73 ★★★★★
() автор топика
Ответ на: комментарий от ya-betmen

Ну вот на выбор: #, $, ~, >, |

Это всё в Английской раскладке.

Ну и ты всегда можешь использовать > двойной слеш //.

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

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

Документация больше похожа на мемуары, чем на формальное описание системы

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

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

Подвожу итог темы:

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

Само по себе понятие библиотеки есть как минимум в Питоне. Не сказать, что я полностью в нём разобрался, но мне достаточно самого факта.

Я сам понял, что текст написан плохо. Я его пока что понимаю, но его надо переделать, чтобы через месяц я продолжал его понимать.

Засим ставлю галочку в этой теме.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

. Я (и большинство пользователей компьютера) постоянно путается даже в двух раскладках. Если есть три варианта раскладки - это тем более плохо. Вариант, когда для ввода особого символа нужно нажать префиксную клавишу, мне нравится гораздо больше - меньше неявного состояния.

:“-« о какой третьей раскладке идет речь? Универсальная раскладка по идее должна стоять ВМЕСТО русской (английской). Как раз клавиша-модификатор и вызывает символы. И наличие на раскладке 100500 символов не заставляет включать в синтаксис их. Её можно использовать в том числе как самый быстрый вызов английских спец. Символов из русской. Грубо говоря, она не обязательно влияет на синтаксис. Почти в любом даже русском языке (1с) используются фигурные скобки. Можно их вызывать через Китай (английскую раскладку), тратя 6 клавиш, а можно через мою, тратя 2 клавиши.

6 клавиш - долго, и учиться русскому ЯП, чтобы страдать просто когда вводишь скобку - маразм.

Dreamject
()
Последнее исправление: Dreamject (всего исправлений: 1)
Ответ на: комментарий от den73

utf-8 нужен далеко не всегда и не везде. Он сильно замедляет работу со строками и увеличивает объём памяти.

Можно про «объём памяти подробнее»? Где он увеличивается?

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

Как раз клавиша-модификатор и вызывает символы

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

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

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

Напомни, где в 1С они?

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

Ну вот %. И как операция не применяется.

library%module:symbol
library/module:symbol

Видишь, слеш лучше визуально отделяет части слова, чем процент. Я это тоже учитывал при выборе. И к тому же слеш психологически проще воспринимается как разделитель. Другое дело, что естественно ожидать от него поведения библиотека/модуль/подмодуль и здесь как раз слеш нежелателен.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от ya-betmen

На самом деле, потеря деления не так страшна на фоне других проблем.

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

Сколько будет 2 делить на 6? 0.3333333333, 0.33, простая дробь 1/3 или 0?

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

С++ позволяет перегружать операции, доопределяя разные виды деления, но нет способа надёжно гарантировать, что будут использованы только операции нужного типа. Чтобы в этом убедиться, нужно проводить рассуждения о коде, зачастую сложные.

ocaml имеет отдельную операцию /. для деления целых. Это шаг в верном направлении, на мой взгляд.

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

Тогда можно будет написать:

печ 1 число_с_2_знаками:делить 3;
и получить 0.33 (кстати, тут всплывает вопрос о необходимости параметрических модулей, дабы не плодить модули для любого числа знаков после запятой - этот вопрос ещё не решён).

Как видишь, от лаконичности записи деления не осталось и следа.

В некоторых случаях можно изменить «ядро» языка, исключив стандартные арифметические операции и присоединив вместо них бухгалтерские. Тогда по умолчанию арифметика будет как на калькуляторе, а чтобы применить обычную арифметику, придётся использовать уже обычные операции через префикс, скажем, так:

печ 0.33 кодица/стандартная_арифметика:* 3;
Как видишь, от элегантности математической нотации всё равно почти ничего не остаётся. Можно пытаться вводить однобуквенные алиасы, но будет в лучшем случае
печ 0.33 ф:* 3;
Это коротко, но всё равно нужны два пробела по сторонам знака умножения (иначе он просто не прочитается), да и сам знак стал втрое длиннее. Итого, там где в С ты писал один значок, нужно теперь не меньше 5. На этом фоне потеря одного значка деления, которое используется явно не в каждой строчке программы, выглядит не такой уж большой.

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

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 5)
Ответ на: комментарий от DarkEld3r

Можно про «объём памяти подробнее»? Где он увеличивается?

Очевидно, за счёт того, что в букве больше одного байта.

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

Ты хочешь сказать, что нужно нажать alt-gr и одновременно букву?

А как еще?) Мне нужен был способ, чтобы ввести { в 2 нажатия, с 3 раскладкой это было бы не 6, а 8.

Когда нажимается вроде выделенная оранжевым кнопка (алтгр), вводятся оранжевые/слева нижние буквы. Если вместе с этим зеленая (шифт) - то зелёные. Но может я цвета перепутал. А замечания приму, спасибо.

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

Ты хочешь сказать, что нужно нажать alt-gr и одновременно букву?

А как еще?) Мне нужен был способ, чтобы ввести { в 2 нажатия, с 3 раскладкой это было бы не 6, а 8.

Когда нажимается вроде выделенная оранжевым кнопка (алтгр), вводятся оранжевые/слева нижние буквы. Если вместе с этим зеленая (шифт) - то зелёные. Но может я цвета перепутал, с телефона. А замечания приму, спасибо.

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

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

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

ya-betmen ★★★★★
()
Ответ на: комментарий от Dreamject

А как еще?)

Это не наезд, а просто вопрос. Я так понял, что надо нажать алтгр, отпустить его и тогда раскладка меняется. Если нужно _держать_ алтгр, то нужно учитывать, что при десятипальцевой раскладке неудобно одной рукой нажимать две кнопки. Именно по этой причине Control,Alt,Shift продублированы. Может быть, тебе стоит переставить часто набиваемые значки под левую руку.

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

Другое дело, возможно ли это с технической точки зрения.

На данный момент я (с твоей подачи) задумался уже не о языке, а об улучшении своей текущей работы, тем более вчера пришлось набирать русскоязычный текст в TeX. В итоге я просто-напросто в офтопике переделал сочетания для переключения на control-1 (Русская) и control-2 (Английская).

Теперь мне не надо вспоминать текущую раскладку, но и учить размещение иных значков тоже не надо. Посмотрим, что получится. А так у меня дома клавиатура X7 G800V, в которой куча программируемых кнопок. Другое дело, что нелегко сломать стереотипы и начать ими пользоваться.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 3)
Ответ на: комментарий от ya-betmen

Какой смысл тогда вводить разные операции деления

Смысл простой - сохранение инфиксной записи и приоритетов операций. Я довольно долго пишу на лиспе, где вообще нет инфиксной записи - привыкания не наступает. Всё равно

2 другой_плюс 2 другое_умножение 3
понятнее и приятнее, чем
(другой_плюс 2 (другое_умножение 2 3))
или, условно говоря
2.другой_плюс(2.другое_умножение(3))

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

НУ для тебя может быть, а по мне что так что так - фигня. При такой длине на приоритет уже пофиг, всё равно сложно ассоциировать «мой_самй_лучший_плюс» и +.

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

Хорошо. Так лучше?


2 _:+ 2 _:* 3

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

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

Не слишком сложнее, чем с шифтом. Почти все спец символы в английском и русском вводятся с помощью шифта (2 кнопки). У меня сделано так, чтобы любой АНГЛИЙСКИЙ символ вводился теми же двумя кнопками, только другими. Переучиваться таким образом для ввода английских символов особо не придется - оно стоять на том же месте, кроме нескольких символов (чтобы можно было в 2 клавиши ввести).

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

Не думаю, что ты меня понял. При слепом десятипальцевом методе, когда набираешь Щ, жмёшь левый шифт левой рукой и щ правой рукой. Когда набираешь Ф - жмёшь правый шифт правой рукой и ф левой рукой. Это так специально задумано, чтобы руки можно было не перемещать. Нажимать Альт-Гр и Ъ одной и той же рукой менее удобно.

Это некритично, но с префиксной буквой было бы удобнее.

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

~_~ я владею 10-пальцевым ывам толд,скорость ~350 символов в минуту, правым шифтом не пользуюсь почти. Да и привережцы обычной фыва не очень часто её используют, насколько знаю. На руке всё же 5 вполне самостоятельных пальцев, проблем не возникает.

Многие народы вообще используют правый альт для ввода БУКВ свого алфавита.

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

молодец, возможны задатки виртуозного гитариста

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

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

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

Думал, что мне первому пришла идея назначить {} на 90, ан нет). Но раскладка кроме программирования мало полезна, часть дублируется, символ 〈`〉 пропущен, вроде.

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

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

Я вернулся к этому вопросу, потому что оказалось изрядно неудобно набирать md файлы в кириллице.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

Апостроф проверить не могу, у меня на него горячая клавиша назначена.

Вроде бы по-русски, но ничего не понятно

Скачай готовую|сделайсам, про многосимволов хз, скорее всего можно.

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

Не суть важно, действительно апостроф не включен в эту раскладку.

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

Нашёл битую ссылку на загрузку с yar, поправил. Где ещё?

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

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

Поставил себе 1С-ную раскладку. Она хороша тем, что квадратные и фигурные скобки - на разных местах.

Набирать {}[] с AltGr, конечно же, неудобно. Но ладно, пусть будет пока так.

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

А я вообще не понял - у тебя фигурные скобки другим цветом. Но толком посмотреть я так ни разу и не успел.

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

Это означает, что надо обратить внимание (чтобы { не вводить по алтгр+шифт+[). Но галерею поправил, спасибо за совет).

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