Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Вставка символов в документ LibreOffice  (Прочитано 7774 раз)

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

roco.constantin.b

  • Автор темы
  • Гость
на винде это ALT+NumLock номер символа
как на ubuntu?
препробывал ctrl alt win shift - что-то ничего не работает

LibreOffice 3.5 ubuntu 11.04

Оффлайн vasilisc

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2563
  • г.Северодвинск - строим АПЛ
    • Просмотр профиля
    • Авторские статьи об OpenSource
Re: Вставка символов в документ LibreOffice
« Ответ #1 : 16 Марта 2012, 11:25:30 »
судя по http://help.libreoffice.org/Writer/Shortcut_Keys_for_Writer
такого на клавишах по-моему мнению сделать нельзя.
только через ГУИ - вставка спецсимвола
« Последнее редактирование: 19 Марта 2012, 08:58:57 от vasilisc »

Оффлайн s390

  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: Вставка символов в документ LibreOffice
« Ответ #2 : 16 Марта 2012, 13:59:50 »
Можно так (украл давно на просторах инета :)):

 Ввод произвольных символов при помощи Compose Key: настройка
Многие знают, что в Linux есть специальная кнопка: Compose. Её действие аналогично виндовым сочетаниям Alt+NumPad (Например, нажатие Alt+0169 даёт символ ©), но не требует хранить перед глазами таблицу кодов символов :) Если настроить правый Alt как Compose Key, то нажав RAlt+O+C получаем тот же значок копирайта: ©.

В статье я опишу способ назначения произвольных сочетаний клавиш для символов. Это будет удобно в первую очередь математикам: не нужно будет лазить в таблицу символов чтобы ввести «∀ε>0 ∃δ(ε)≕δ>0: ∀x∈O(x₀) |f(x)<A|» в любом приложении, поддерживающем юникод. Кроме математических символов, будут доступны всевозможные стрелочки (→↗⇖⇔⟲⟽), галочки (✘✔), буллеты (•‣★), кавычки («»), длинное тире (—), дроби(⅓, ⅞), диа⃫кр͎е̃ти⃰ческие зн⃫аки и всё что душе угодно в необъятном юникоде! :)

Включаем

Первое что нужно сделать чтобы получить доступ к Compose Key – включить его :) Достаточно удобно установить правый Alt в качестве составной кнопки: вряд ли он часто используется. Примеры будут для Ubuntu, в других дистрибутивах не должно быть большого отличия.

Есть три способа включить Compose Key:

   1. xorg.conf: Compose Key можно назначить в секции «InputDevice» конфига /etc/X11/xorg.conf. Например, так:
      Section "InputDevice"
      Driver "kbd"
      Option "CoreKeyboard"
      Option "XkbRules" "xorg"
      Option "XkbModel" "pc105"
      Option "XkbLayout" "us,ru"
      Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll,compose:ralt"
      EndSection
   2. Если у вас установлен Gnome, топаем по меню в System→Preferences→Keyboard→Layouts→[Layout Options] и устанавливаем «Compose key position» на правый Alt. У меня нет Gnome под рукой, списал отсюда :)
   3. Если у вас KDE4, то в System Settings→Regional&Language→Keyboard Layout→[Advanced] и в секции «Compose key position» ставим галку напротив «Right Alt»
   4. John_Minority подсказывает, что можно в файле ~/.xinitrc указать следующее: setxkbmap -options "compose:ralt..."


Может потребоваться перезапуск X сервера. Если всё сделано правильно, проверяем: жмём RAlt, отпускаем, потом (с шифтом) O и C. Должен получиться значок копирайта ©.

Конфиг

В инете полно списков доступных сочетаний, но ни один не описывает их полностью. Мы же будет умнее и не будет ничего запоминать: настроим всё под себя :)
Сочетания по умолчанию лежат в гигантском файле /usr/share/X11/locale/en_US.UTF-8/Compose. Его можно использовать как шпаргалку :) Трогать там ничего не надо: в домашней папке создаём файл ~/.XCompose и будем описывать там свои сочетания клавиш, которые отменят все стандартные.
Синтаксис файла прост: каждая строка описывает сочетание, комментарии начинаются с символа '#'. Рассмотрим на примере: добавляем в пустой файл ~/.XCompose строку:
<Multi_key> <o> <C> : "℃" U2103 # DEGREE CELSIUS и сохраняем файл.

В угловых скобках подряд описывается сочетание клавиш. Compose в терминах X-сервера называется «Multi_key». Дальше идёт двоеточие, и в кавычках указывается символ (или строка!), получающийся при нажатии этих клавиш. Последний – Unicode код символа, его вводить не обязательно. Хорошим тоном считается в комментарии дать оригинальное название символа, которое можно подсмотреть в таблице символов.
Добавленный символ будет доступен без перезагрузки иксов, но – только в новых приложениях. Поэтому запускаем новый текстовый редактор, и проверяем, нажимая и сразу же отпуская сочетания: RAlt, o, Shift+c. Ура :)

Важный момент: все названия клавиш в конфиге регистрозависимы: так, <Multi_key> и <Multi_Key> – разные клавиши, причём, второй вариант не будет распознан иксами. Внимательно!
Имена клавиш для литиницы и цифр совпадают с одиночной буквой: <a>-<z>,<A>-<Z>,<0>-<9> нам доступны. Стрелки <Left>,<Right>,<Up>,<Down> (первая буква – большая!) – тоже можно использовать. Но как же догадаться, что тильда называется <asciitilde> и никак иначе?

Узнаём названия клавиш

Открываем консоль, и выполняем следующее:
xev | fgrep "keysym"
Откроется окно xev. Делаем его активным, проверяем текущую раскладку и нежно нажимаем тильду (да, с шифтом). В консоли теперь видно название клавиши:
state 0x11, keycode 49 (keysym 0x7e, asciitilde), same_screen YES,
Для русских букв тоже есть названия:
state 0x2010, keycode 47 (keysym 0x6d6, Cyrillic_zhe), same_screen YES,

Настраиваем

Вооружившись всей этой информацией, можно сразу легко забацать целое семейство стрелочек, вводимых кнопкой «минус» и двойным нажатием стрелки в нужном направлении:
<Multi_key> <minus> <Right> <Right> : "→"
<Multi_key> <minus> <Left> <Left> : "←"
<Multi_key> <minus> <Up> <Up> : "↑"
<Multi_key> <minus> <Down> <Down> : "↓"
Однако сразу будет видно, что «минус» на цифровой клавиатуре не работает. Лезем в xev, и обнаруживаем, что он называется иначе: «KP_Subtract». Внимательно!
Можно добавить ещё алиасов для NumPad:
<Multi_key> <KP_Subtract> <Right> <Right> : "→"
<Multi_key> <KP_Subtract> <Left> <Left> : "←"
<Multi_key> <KP_Subtract> <Up> <Up> : "↑"
<Multi_key> <KP_Subtract> <Down> <Down> : "↓"
Теперь всё работает.
Есть ещё одни грабли: допустим, мы запишем в файл следующее:
<Multi_key> <minus> <minus> : "–" U2013 # EN DASH
<Multi_key> <minus> <minus> <minus> : "—" U2014 # EM DASH
И попробуем ввести EM-DASH (длинное тире): уже на втором нажатии минуса выдастся короткое тире. Причина в том, что X-сервер выбирает первую удавшуюся последовательность (EN DASH) и пишет её. При составлении файла нужно внимально следить чтобы ни одно сочетание не перекрывало другие!
Поэтому делаем так: для короткого тире добавляет точку:
<Multi_key> <minus> <minus> <period> : "–" U2013 # EN DASH
<Multi_key> <minus> <minus> <minus> : "—" U2014 # EM DASH

И последнее: если хочется просто расширить существующий набор символов и ничего не менять, в начале файла инклюдим стандартный:
include "/usr/share/X11/locale/en_US.UTF-8/Compose"

Готовое решение

Не буду приводить всю таблицу и расписывать её создание, лишь дам ссылку на проект на гуглокоде где можно скачать моё творение и подправить под себя. Файл будет обновляться в процесса расширения набора символов и поиска багов :)
Уклон выбранных символов весьма хабрахабровский: IT и математика :)

Enjoy!

UPD: исправил баг с пересекающимися © и Ⓒ. На гуглокоде лежит обновлённый файл и пхп скрипт, проверяющий все последовательности на пересечения.
 

roco.constantin.b

  • Автор темы
  • Гость
Re: Вставка символов в документ LibreOffice
« Ответ #3 : 16 Марта 2012, 22:33:45 »
спасибо
надо это в хелп для либры засунуть
кстати кто знает почему на украинской раскладке там где должна находится "ґ" находится "’"?
и как это изменить?


Оффлайн ING

  • Активист
  • *
  • Сообщений: 366
    • Просмотр профиля
Re: Вставка символов в документ LibreOffice
« Ответ #4 : 16 Марта 2012, 23:43:19 »
...
Не буду приводить всю таблицу и расписывать её создание, лишь дам ссылку на проект на гуглокоде где можно скачать моё творение и подправить под себя. Файл будет обновляться в процесса расширения набора символов и поиска багов :)
Уклон выбранных символов весьма хабрахабровский: IT и математика :)
...

А где ссылка?

roco.constantin.b

  • Автор темы
  • Гость

 

Страница сгенерирована за 0.042 секунд. Запросов: 25.