Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

Компьютерная аббревиация

Автор Квас, апреля 24, 2012, 22:58

0 Пользователи и 1 гость просматривают эту тему.

Квас

Сабж обозначает общую проблему создания таких сокращений, которые при печати раскрывались бы в полные слова. Язык — русский. Цель — создание удобного инструмента для использования при наборе сокращений.

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

::кр::компьютер
::кра::компьютера
::кру::компьютеру
...

Беда, естественно, в окончаниях. Кажется разумным разделять слово на основу (в буквенном смысле) и окончание. Для основы вводится аббревиатура, к которой на печати присоединяются нужные окончания; весь компендиум должен раскрываться в полное слово.

Последний раз я со склонениями-спряжениями ещё в школе встречался, поэтому хочется поддержки ЛФ. :)

Существительные

Разбить на три склонения, первое дополнительно на твёрдое и мягкое (а/я), второе — на мужской и средний род, каждый из которых на твёрдое/мягкое подсклонение. В окончаниях можно для «е» всегда давать вариант «ё», потому что печатающий всё равно набирает окончание сам. В род. мн. можно присоединять все окончания: -0, -ов, -ев, -ёв, -ей.

Что я пропустил существенного? Слова типа «имя», но их мало. Ещё что-то?

Прилагательные

Наверно, достаточно твёрдое/мягкое склонения (о,а/е,я), а в им. ед. м. р. сделать -ый, ой.

Глагол пока вообще страшно помыслить. У нас есть какие-то стандартные формы, по которым остальные можно вычислить?
Пишите письма! :)

Валентин Н

Что-то ничо не понятно. Зачем вам на склонения разбивать‽
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 24, 2012, 23:33
Что-то ничо не понятно.

Я этого и боялся. :(

Цитата: Валентин Н от апреля 24, 2012, 23:33
Зачем вам на склонения разбивать‽

Я не хочу прописывать руками всю парадигму. Я хочу сказать компьютеру: «компьютер кр 2мт» (слово—сокращение основы—2 склонение, м. р., твёрдое), а он сам сделал бы парадигму и запустил автозамены. Если это дело повесить на хоткей, должно получиться достаточно ненапряжно для практического использования.
Пишите письма! :)

Валентин Н

Цитата: Квас от апреля 24, 2012, 23:37
Я хочу сказать компьютеру: «компьютер кр 2мт» (слово—сокращение основы—2 склонение, м. р., твёрдое), а он сам сделал бы парадигму и запустил автозамены.
Вот теперь понятно!
А как он должен угадать какую форму вставлять в предложение?
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 24, 2012, 23:53
А как он должен угадать какую форму вставлять в предложение?

Окончание должен печатать человек.

«У моего кра много памяти. Я покопался в кре и достал из него провод.»
Пишите письма! :)

Квас

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

Квас

Такое обстоятельство: после шипящих и велярных могут выступать и «твёрдые», и «мягкие» окончания. Наверно, лучше просто лепить к основе все возможные и невозможные окончания: твёрдые, мягкие, -ь, -й. С «дерево/деревья», правда, всё равно пролёт.

Ещё надо подумать о сокращении словосочетаний. Вот здесь надо интеллектуально склонять.
Пишите письма! :)

Hellerick

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

Квас

Цитата: Hellerick от апреля 25, 2012, 13:45
Не знаю, о какой софтверной реализации автозамен вы думаете

Интерфейс может быть примерно следующим: выделяется слово «компьютер», нажимается какая-нибудь волшебная клавиша, вводится сокращение «кр», и после этого «кр» разворачивается в «компьютер», а «кра» разворачивается в «компьютера». Реализовать всё это очень просто, нужно просто автоматическое создание некоторого числа автозамен для каждой такой аббревиатуры. Вопрос только лингвистический: как научить компьютер склонять и спрягать слова с наименьшими трудозатратами для пользователя.

Цитата: Hellerick от апреля 25, 2012, 13:45
было бы круто прикрутить автоматическое согласование прилагательных.

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

Меня интересует в таком разрезе. Предположим, я пишу текст о динамических системах. Мне естественно ввести сокращение «дкаясма», которое раскрывалось бы в «динамическая система». При этом надо, чтобы сама собой создалась автозамена «дкиесмы», которая раскрывалась бы в «динамические системы». К сожалению, окончание прилагательного тоже надо выписывать, потому что иначе неясно, во что должно раскрываться «дсмы». Наверно, и нет смысла вводить одну аббревиатуру для согласованного словосочетания. :???
Пишите письма! :)

Валентин Н

Цитата: Квас от апреля 25, 2012, 00:06
Окончание должен печатать человек.

«У моего кра много памяти. Я покопался в кре и достал из него провод.»
Если окончания должен писать человек, тогда что должен склонять автомат???

Цитата: Квас от апреля 25, 2012, 14:43
как научить компьютер склонять и спрягать слова с наименьшими трудозатратами для пользователя.
зачем — вы же сами будуте дописывать окончания.
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 25, 2012, 19:19
Цитата: Квас от апреля 25, 2012, 00:06Окончание должен печатать человек.

«У моего кра много памяти. Я покопался в кре и достал из него провод.»
Если окончания должен писать человек, тогда что должен склонять автомат???

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

То есть цель — автоматизировать такие сокращения, которые на бумаге делаются через дефис. А о падежах и связи слов в предложении должен, конечно, человек заботиться.
Пишите письма! :)

Квас

Цитата: Валентин Н от апреля 25, 2012, 19:19
Цитата: Квас от апреля 25, 2012, 14:43как научить компьютер склонять и спрягать слова с наименьшими трудозатратами для пользователя.
зачем — вы же сами будуте дописывать окончания.

Это в тексте. Но скрипт с автозаменами должен порождаться автоматически. Руками прописывать всю парадигму
::кр::компьютер
::кра::компьютера
::кру::компьютеру
::кром::компьютером
::кре::компьютере
::кры::компьютеры
::кров::компьютеров
::крам::компьютерам
::крами::компьютерами
::крах::компьютерах
неэффективно.
Пишите письма! :)

Валентин Н

Я ничо не понял. в какой миг скрипт должен писать парадигму‽‽‽
Вы пишете кр, а полчуаете компьютер, окончание сами дописываете если надо.
Скрипт что тдолжен делать‽‽‽
Вы хотите писать ВСЕГДА кр‽ А чтоб скрипт сам окончания писал‽
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 25, 2012, 21:44
Я ничо не понял. в какой миг скрипт должен писать парадигму‽‽‽
Вы пишете кр, а полчуаете компьютер, окончание сами дописываете если надо.
Скрипт что тдолжен делать‽‽‽
Вы хотите писать ВСЕГДА кр‽ А чтоб скрипт сам окончания писал‽

1. Я прикидываю, что при написании некоего текста часто буду употреблять слово компьютер.

2. Я делаю некоторый финт ушами (нажимаю сочетание клавиш, щёлкаю мышкой — не суть важно), появляется окошко с полем ввода, в которое я записываю что-то навроде «компьютер сущ. 2 скл. кр» и нажимаю Enter. После нажатия клавиши Enter программа заносит в скрипт со списком автозамен парадигму
::кр::компьютер
::кра::компьютера
::кру::компьютеру
::кром::компьютером
::кре::компьютере
::кры::компьютеры
::кров::компьютеров
::крам::компьютерам
::крами::компьютерами
::крах::компьютерах

3. После этого при работающем скрипте мне достаточно написать «крах», чтобы получить «компьютерах». Профит: экономятся буквы «омпьюте», что совсем неплохо. (Правда, если в тексте я буду писать и о крахах, конкретно эту замену нельзя признать удачной.)

Детали интерфейса и реализации меня сейчас не интересуют — это под силу даже любителю. Меня волнует лингвистический аспект.
Пишите письма! :)

Валентин Н

Зачем это всё? В вводите слово компютер-кр и всё. Этого достаточно.
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 25, 2012, 23:47
Зачем это всё? В выодите слово компютер-кр и всё. Этого достаточно.

Тогда «крокодил» превращается в «компьютерокодил», а «секрет» — в «секомпьютерет». Одно дело автозамена из отдельного слова, другое — автозамена, которая раскрывается и внутри слов.

В принципе, можно сделать «кр<пробел>»⇒«компьютер<без пробела>» или «кр<Tab>»⇒«компьютер». Но мне сейчас интересно попробовать сделать без лишних клавиш. Мне кажется, это интуитивней.
Пишите письма! :)

Валентин Н

ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 26, 2012, 00:10
А нельзя сделать пробелКРпробел?

Можно, я и пишу:
Цитата: Квас от апреля 25, 2012, 23:56
В принципе, можно сделать «кр<пробел>»⇒«компьютер<без пробела>» или «кр<Tab>»⇒«компьютер». Но мне сейчас интересно попробовать сделать без лишних клавиш. Мне кажется, это интуитивней.
Пишите письма! :)

Валентин Н

Цитата: Квас от апреля 26, 2012, 00:18
Но мне сейчас интересно попробовать сделать без лишних клавиш. Мне кажется, это интуитивней.
Причём тут лишние клавиши???
Я имею ввиду чтоб кр переделывался в комп-р только если до и после него знаки препинания стоят, вы же их в любом случае ставите.

У меня сломался кр, старый был. Тогда крокодил ни как не переделается.
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 26, 2012, 00:22
Цитата: Квас от апреля 26, 2012, 00:18Но мне сейчас интересно попробовать сделать без лишних клавиш. Мне кажется, это интуитивней.
Причём тут лишние клавиши???
Я имею ввиду чтоб кр переделывался в комп-р только если до и после него знаки препинания стоят, вы же их в любом случае ставите.

У меня сломался кр, старый был. Тогда крокодил ни как не переделается.

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

Валентин Н

Правильно говорят: "пока сам не попробуешь — не поймёшь". Попробовал прогнать через транслитератор "компьютер-кр" и понял вашу проблему.
У меня вот какая идея появилась, жаль, что из-за недоработок тр-ла её там нельзя применить.
Суть: можно сделать замену " крХ" на " компьютерХ" где Х это список окончаний (а, ов, ом, у, ами,,,).
И этот Х можно добавлять и к другим словам тоже, н-р: " мпХ" на " метрополитенХ".
Вместо Х можно писать род и номер склонения, н-р: 2м.
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 26, 2012, 17:42
Суть: можно сделать замену " крХ" на " компьютерХ" где Х это список окончаний (а, ов, ом, у, ами,,,).

ДА! Иными словами, надо сразу создавать несколько замен, причём автоматически.

Цитата: Валентин Н от апреля 26, 2012, 17:42
н-р: 2м.

Вот тут начинаются сложности. Потому что есть стол, есть конь, а есть нож — наборы окончаний у всех разные. Вот я думаю, что проще всего приделывать все возможные и невозможные окончания второго склонения:
::сл::стол
::сла::стола
::слём::столём
::сль::столь
::слей::столей
and so on and so forth. Тогда будет из чего выбирать.
Пишите письма! :)

Валентин Н

Вы просто сделйте несколько списков окончаний и цепляйте их к конкретным словам.
Например в моём траснлитераторе могло бы быть так:

var 2м = "ом*ами*у*ам*а*е*ов*ах* *,*.";
Array(" ","кр","компьютер",2м)

(" ","кр","компьютер",2м) расшифровывается так: кр заменить на компьютер после пробела и перед списком сочетаний из группы 2м.
Только туда надо бы ещё знаков препинаний добавить.

Но у меня такой не будет работать, тк в группы можно пихать только отдельные знаки, но не знакосочетания, увы.
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Квас

Цитата: Валентин Н от апреля 26, 2012, 19:08
Вы просто сделйте несколько списков окончаний и цепляйте их к конкретным словам.

Да, мысль такая и есть.

Дело в том, что в русском, оказывается, слишком много парадигм, и выяснять «на лету», к какой именно принадлежит то или иное слово, неэффективно. Ведь по задумке большинство сокращений окказиональны, делаются под конкретный текст.

Существительные логично раскидать по склонениям, потому что вроде как из школы остались в голове. Но во втором склонении различаются мужской и средний род, основа на твёрдый и мягкий согласный — уже четыре подсклонения. И это ещё не всё: например,

нож, ножа (тв.), но ножи (мягк.)
край — особое окончание -й в им. п.

Не говоря о род. мн.

(Разумеется, окончания и твёрдость/мягкость я понимаю в орфографическом смысле.)

Нужен разумный компромисс: вешать на каждое слово заведомо лишние окончания, но не слишком много лишнего.
Пишите письма! :)

Валентин Н

Ну вам-то какие слова сокращать? какие-то длинные, а они стандартно склоняются.
ЗАБАНИЛ ВИКИПЕДИЮ
Нижниь ıндэкс в ҷıсʌах — степень тıсяҷı
Препинания авторские!

Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр