вторник, 28 ноября 2017 г.

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

Очень часто мы создаем документы методом копипасты кусков текста из разных источников и последующего приведения этих кусков текста к единому виду и более или менее наличию смысла в тексте в общем.
С чем чаще всего мы сталкиваемся в этих кусках скопированного текста?
Более одного пробела идущего подряд, знаки разрыва строки вместо знака абзаца, абзацы разделены друг от друга пустыми абзацами, некие спецсимволы в большом количестве.
Перво наперво нужно включить отображение непечатаемых символов. Делается это путем нажатия на соответствующий значок на панели инструментов или нажать сочетание клавиш Ctrl + F10, или выбрать пункт меню Вид > Непечатаемые символы.
Для устранения этих "проблем" в тексте нужно использовать диалог "Найти и заменить", вызываемый по нажатию сочетания клавиш Ctrl+H или из меню "Правка".
Замена множества знаков пробелов идущих подряд на один такой же знак:
1. В диалоге "Найти и заменить" в строку "Найти" вбиваем \s+
2. В строку "Заменить" вбиваем один пробел (он не будет обозначен каким-то специальным символом, его не будет видно, но по положению курсора в строке понятно, что пробел таки есть)
3. Далее раскрываем "Другие параметры" и отмечаем галочкой опцию "Регулярные выражения"
4. Нажимаем на кнопку "Заменить все". На этом всё.
Замена знака разрыва строки на знак абзаца (если этого не сделать, то, не смотря на перенос строки, Либра будет считать текст одним абзацем и применять стили соответственно, что может весьма удивить пользователя):
1. В диалоге "Найти и заменить" в строку "Найти" вбиваем \n
2. В строку "Заменить" также вбиваем \n
3. "Регулярные выражения" также должны быть активированы
4. Нажимаем на кнопку "Заменить все". На этом всё.
Замена нескольких подряд идущих знаков абзаца на один знак абзаца:
1. В диалоге "Найти и заменить" в строку "Найти" вбиваем ^$ (знак доллара!)
2. В строку "Заменить" ничего не вбиваем!
3. "Регулярные выражения" также должны быть активированы
4. Нажимаем на кнопку "Заменить все". На этом всё.

Вся эта информация есть на просторах интернета, этот пост я сделал больше для себя. 

четверг, 16 ноября 2017 г.

Crazy Idea для LibreOffice Online

Встречался в Москве с Майком. Хорошо пообщались, реально интересно и познавательно было. И под конец встречи зашел разговор про Коллабору и ее вклад в ЛибреОфис. И глядя на звезды я думал о проекте CODE. Это онлайн ЛибреОфис от Коллабора, который можно юзать совершенно свободно. Однако эта штука подразумевает использование выделенного сервера более или менее могучего, в зависимости от количества одновременно подключенных юзеров. Я подумал про общедоступный всему миру сервисе Google Docs, который тоже суть онлайн офис. Однако Google имеет огромные финансовые возможности и серверную инфраструктуру, чтобы обеспечить весь мир всегда доступным онлайн офисом. При этом огромным минусом сервиса является 146% гарантия того, что Google ваши документы читает. О конфиденциальности речь не идет ни разу. Коллабора такого сервиса людям во всем мире предложить не может, несравнимые весовые категории ну и непонятно, как монетизировать это именно Коллаборе. И у меня возникла идея, как "осчастливить" весь мир доступом к свободному от слежки онлайн офису на основе ЛибреОфиса. Сначала подумалось о некоей технологии на основе битторрент, исходя из идеи, что каждый юзер предоставлял бы каждому нуждающемуся юзеру ресурсы, но Майк раскритиковал ее на корню. Потом подумалось о такой штуке: люди по всему миру добровольно ставят себе некую серверную часть либры онлайн, и предоставляют ресурсы своего компа для запуска либры онлайн кем-то со стороны. Центральный сервер той же Коллабора занимается тем, что знает обо всех запущенных юзерами серверах либры онлайн и при запросе от юзера-пользователя направляет его на ближайший запущенный юзер-сервер с минимальным пингом относительно запрашивающего. Документы юзера держатель серверной части не должен видеть или контролировать ни при каких обстоятельствах. Если юзер-запрашивающий желает, то документы он может хранить в облачном сервисе, том же дропбоксе или я.диске, и конечно локально, при этом он должен явно сделать осознанный выбор.
Идея возникла спонтанно, в порядке бреда и живого общения. Есть 99,(9)% вероятность того, что на это даже смотреть не будут, но для памятки я это тут расписал. Это конечно всё можно еще больше конкретизировать, уточнить кучу рабочих моментов и т.д. и т.п.