Как вставить символ в lng файл

Обновлено: 04.07.2024

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

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

ускорение ПК

Вставка редких символов в текст

Вариант №1

Большинство пользователей при работе с документами используют Word (самый популярный редактор в Мире!). Разумеется, он бы не был таким популярным, если бы в его арсенале не было никаких значков.

Покажу пару способов для современной версии Word (2016).

1. Зайдите в меню "Вставка", и выберите элемент "Фигуры". В этой вкладке очень много различных фигурок: стрелки, линии, треугольники, квадраты, сердечки и т.д.

Вставка фигур в Word

Вставка фигур в Word

2. Если вам нужны различные омеги, альфы, сигмы - то в том же разделе "Вставка" есть вкладка "Символы". Открыв ее, можно найти все математические элементы: знаки равенства, суммы, интеграла, больше/меньше и т.д. Пример на скрине ниже.

Вставка - другие символы

Вставка - другие символы

Отмечу, что все-таки в Word есть далеко не все, что может потребоваться. К тому же, те же фигуры, вставленные в документ, не перенесешь в текстовый блокнот или чат (просто невозможно).

Поэтому, рекомендую также ознакомиться с остальными вариантами.

Вариант №2

Еще один очень простой и быстрый способ - это просто скопировать символ (значок) с какой-нибудь понравившийся веб-странички. Можно даже в отдельном документе Word собрать для себя самые часто-используемые символы.

Пример копирования и вставки символов

Пример копирования и вставки символов

Символ собаки

Вариант №3

В Windows есть специальная таблица символов (там их сотни и самых разных). Чтобы ее открыть:

  1. нажмите сочетание кнопок Win+R ;
  2. введите команду charmap и нажмите OK.

charmap - открываем таблицу символов

charmap - открываем таблицу символов

Далее, должна открыться таблица (см. скрин ниже). Найдя нужный символ, просто нажмите последовательно две кнопки: "Выбрать", "Копировать". Всё, теперь символ можно куда-нибудь вставить.

Таблица символов в Windows

Таблица символов в Windows

В качестве теста использовал блокнот - стрелочка была добавлена.

Блокнот - правка\вставить

В общем-то, один из самых надежных способов: будет работать, даже если у вас нет интернета и не установлен редактор Word.

Вариант №4

Ну и последний вариант, конечно, не относится к значкам, но все-таки. Если вам нужен какой-то спец. символ, которого в принципе нет (не существует) - то вариант только один: нарисовать его самостоятельно, сохранить в виде картинки и вставить в документ.

Рисовать можно, как в специализированном софте, так и в обычном Paint (чтобы его открыть, нажмите Win+R , и введите команду mspaint ) .

Paint - рисуем свой значок

Paint - рисуем свой значок (Рисунок из мультфильма "Трое из Простоквашино")

Чтобы вставить в документ нарисованную картинку в документ Word, просто перейдите в раздел "Вставка" и выберите вкладку "Рисунки". Далее просто укажите на диске месторасположение сохраненной картинки.

БлогNot. Word: специальные символы и подстановочные знаки

Word: специальные символы и подстановочные знаки

В окне "Найти и заменить" Microsoft Word есть два типа подстановок - специальные символы и подстановочные знаки. Те и другие можно вводить в строки поиска и замены, включив используя список "Special" ("Специальный") в полностью открытом окне "Найти и заменить" (нажать комбинацию клавиш Ctrl+H , потом кнопку " Больше>> ").

Специальные символы - это те, которых нет на клавиатуре или которые нельзя непосредственно вписать в строки поиска/замены, например, разрыв строки.

Если в окне поиска/замены включен чекбокс Use wildcards (Подстановочные знаки), то можно задавать достаточно сложные условия поиска и замены, потому что подстановчные знаки - это офисная реализация всё тех же регулярных выражений.

Чекбокс "Подстановочные знаки" в работе - убираем лишние пробелы в тексте


Чекбокс "Подстановочные знаки" в работе - убираем лишние пробелы в тексте

Некоторые символы и знаки можно использовать только в строке поиска, а некоторые — только в строке замены. При этом возможность применения части символов зависит от того, включен ли чекбокс Use wildcards (Подстановочные знаки).

Полный список подстановок в самом Word отсутствует или я его не нашёл, поэтому ниже приводится более-менее адекватный список, актуальный для всех версий Word плюс немного примеров.

1. Строка поиска
2. Строка замены

Примечание 1. В операторах и точка с запятой означает List separator (Разделитель элементов списка) из настроек операционной системы, завиящих от локали (например, в США - запятая, в России - точка с запятой).

Примечание 2. Для поиска в документе символов, которые в строке поиска "заняты" как специальные перед ними ставится обратный слэш ( \ ). Например, если включена опция Use wildcards (Подстановочные знаки), для поиска восклицательного знака в строке поиска вводится \!

Как добавить свой символ во все шрифты в Windows

Наверняка при работе с документами многим из нас хотелось бы иметь в наличии простой и быстрый инструмент для вставки своих личных символов. Таких, которых больше ни у кого нет. Например, это может быть подпись или какой-то логотип. И среди множества утилит Windows существует так называемый Редактор личных символов. Он позволяет нарисовать и добавить свой символ во все шрифты на своём компьютере. В общей сложности можно создать до 6 400 уникальных символов для использования в имеющейся библиотеке шрифтов.

Чтобы открыть редактор личных символов, открываем консоль в меню Пуск – Выполнить и вводим команду eudcedit.

Запуск редактора личных символов

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

Выбор кода личного символа

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

Рисование в редакторе личного символа

Помимо этого, в меню Инструменты есть функция Отразить/Повернуть для вращения или зеркального отражения всего изображения.

Меню поворота и отражения символа

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

Просмотр списка символов в выбранном шрифте

Через меню Окно – Образец открывается ещё одно окно с редактируемым символом. Это поможет редактировать личный символ и видеть его исходное изображение одновременно.

Окно образец личного символа

Сохранение личного символа выполняется каждый раз при закрытии редактора или в меню Правка – Сохранить символ. В меню Файл – Связи шрифтов можно настроить и выбрать шрифты, с которыми будет связан созданный нами личный символ. По умолчанию символ связывается со всеми установленными в системе шрифтами.

Окно выбора связей шрифтов в редакторе личных символов

Напоследок рассмотрим, как использовать созданные личные символы в приложениях и редакторах. Открываем таблицу символов (Пуск – Все программы – Стандартные – Служебные – Таблица символов) и в выпадающем списке Шрифт выбираем самый последний пункт Все шрифты (личные символы). В таблице отображается список и уменьшенные изображения всех созданных личных символов. Остаётся только указать символ и нажать кнопки [Выбрать] и [Копировать], после чего вставить символ в приложении любым доступным способом, например комбинацией клавиш Ctrl + V .

Выбор личного символа в таблице символов

После вставки личного символа в текст, к нему применимы все доступные функции по работе со шрифтами. Вот так будет выглядеть редактирование личных символов в текстовом редакторе Word:

Редактирование личного символа в текстовом редакторе Word


Характеристики:
Язык интерфейса: русский
ОС: Windows 2000, XP, Vista
Размер файла: 193 Кб
Лицензия: бесплатная, уже установлена в Windows

Есть файл в котором написано Helo, я хочу вставить l до o не затерев его. тоесть именно вставить. Это возможно или мне надо будет потом вписывать o?

lseek(fd, -1, 0_SETEND); write(. );


Тоесть мне надо сохранить все что после в буфер и переписать?

Да. Если файл большой, сдвигай циклом блоками.

lseek(fd,-80,O_SETEND); read(fd,buff,80); lseek(fd, -79,O_SETEND);

Проще говоря, перейди файловым курсором в позицию N на начало lo, прочитай lo, перезапиши lo в позицию N+1, запиши l в позицию N.


Возможно. Делаешь mmap() на файл, ищешь нужную позицию, сдвигаешь хвост через memmove(), вставляешь символ, munmap(). Про увеличившийся размер файла при mmap не забудь.


Тоесть мне надо сохранить все что после в буфер и переписать?


тут никакого сдвига не происходит, а создаётся временный файл, который затем переименовывается в старое имя, а старый удаляется. Для коротких файлов самый оптимальный метод. Всякие vim & kate делают точно также (потому можно редактировать файлы без доступа на запись).


Проще говоря, перейди файловым курсором в позицию N на начало lo, прочитай lo, перезапиши lo в позицию N+1, запиши l в позицию N.

ну типа того, сначала o из N, потом l из позиции N-1 и т.д. Проще и быстрее весь файл переписать. (обычно).

Проще и быстрее, как предложил mv, но ТСу пока ни к чему такие наверное такие изыски, поэтому я дал лобовое решение.

А временный файл имхо плохая идея, вместо перезаписи только хвоста файла, ты предлагаешь переписать его целиком.

ну типа того, сначала o из N, потом l из позиции N-1 и т.д.

Зачем побайтово? Я не предлагал дергать файловый курсор туда-сюда, записывать в буфер, и все дела.


А временный файл имхо плохая идея, вместо перезаписи только хвоста файла, ты предлагаешь переписать его целиком.

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

не побайтово. Пусть по 64К, общая скорость от этого слабо изменится (даже если ты попытаешься писать побайтово, ОС тебе этого не даст сделать, она будет сама кешировать).

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

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

не побайтово. Пусть по 64К, общая скорость от этого слабо изменится (даже если ты попытаешься писать побайтово, ОС тебе этого не даст сделать, она будет сама кешировать).

Эти кэши снизят нагрузку на винт, но от (размер файла)*2 прыжков файлового указателя не избавит. Даже простое чтение вперед побайтово многократно сливает вручную буферизированному именно из-за множества вызовов чтения/сдвига.


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

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

Эти кэши снизят нагрузку на винт, но от (размер файла)*2 прыжков файлового указателя не избавит. Даже простое чтение вперед побайтово многократно сливает вручную буферизированному именно из-за множества вызовов чтения/сдвига.

ну не знаю, fread(3)/fwrite(3) буферизует, причём лучше чем в ручную (откуда мне знать, куда это всё пишется? На мой диск будет писать идеально, а в продакшене диск совсем другой будет)

Читайте также: