Mahou: Есть такая возможность в сниппетах?

Created on 20 Jan 2020  ·  21Comments  ·  Source: BladeMight/Mahou

В сниппетах можно ли автоматически добавить тексты с форматированием?

Например:
->аа====>**Автор статьи**<====
Автор статьи

**->аа====>Фото от **автора статьи**<====**
Фото от автора статьи

**->аа====>_Фото от_ **автора статьи**<====**
_Фото от_ автора статьи

Это для программах, которые поддерживают форматирование (Telegram, Word, LibreOffice, GoogleDocs, Wordpad и т.д.). А в программах, похожие на Notepad+++, Блокнот и т.д. нужно отображаться без стиля.

Most helpful comment

  1. Сделал в fa30c1a, теперь нужно указать в скрытой настройке имена процессов которые исключать, разделитель: |, гифка:
    Mahou-onlySnipExcluded

All 21 comments

которые поддерживает (Telegram, Word, LibreOffice, GoogleDocs, Wordpad и т.д.).

А во всех этих программах формат одинаковый? Проверь, скопируй "форматированную" строку из Word в LibreOffice и из неё, а потом в GoogleDocs и из неё, а потом в Wordpad и из неё, а потом в Telegram и чтобы текст остался "форматированным", если да тогда это не так уж и сложно сделать, если нет, то тогда нужно будет придумывать распознавание для КАЖДОГО ФОРМАТА _каждой программы_, а это... немного слишком... но возможно.

КАЖДОГО ФОРМАТА _каждой программы_,

И не факт что они "отправляют" форматированную строку после "копирования в буфер обмена", может они при копировании копируют его как "просто текст"? Тогда сохранение формата - невозможно.

КАЖДОГО ФОРМАТА _каждой программы_,

И не факт что они "отправляют" форматированную строку после "копирования в буфер обмена", может они при копировании копируют его как "просто текст"? Тогда сохранение формата - невозможно.

которые поддерживает (Telegram, Word, LibreOffice, GoogleDocs, Wordpad и т.д.).

А во всех этих программах формат одинаковый? Проверь, скопируй "форматированную" строку из Word в LibreOffice и из неё, а потом в GoogleDocs и из неё, а потом в Wordpad и из неё, а потом в Telegram и чтобы текст остался "форматированным", если да тогда это не так уж и сложно сделать, если нет, то тогда нужно будет придумывать распознавание для КАЖДОГО ФОРМАТА _каждой программы_, а это... немного слишком... но возможно.

Тестировал.
Копировал текст с форматированием с Ворда на Либре, и тот же текст с Либре на ГуглДокс и из него в Вордпад и Телеграм отдельно.

До ГуглДокс все в норме, стили сохранились. А с гуглдокс на Вордпад и Телеграм текст вставлен без формата. Кстати, текст на Телеграм всегда вставляется без формата, с любой программы.

С ворд или с Либре на Вордпад - формат сохраняется.

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

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

А можно после сниппета который не хочешь чтобы срабатывал нажимать не пробел, а влево, вправо, пробел. (ну или любую другую клавишу которая меняет позицию каретки, тем самым очищая "слово" сниппета в Mahou)

С ворд или с Либре на Вордпад - формат сохраняется.

Через ClipView можешь посмотреть в каком формате строки после копирования в буфера из разных программ, если форматы одинаковые тогда можно сделать "правило/обработчик" данного формата.

А можно после сниппета который не хочешь чтобы срабатывал нажимать не пробел, а влево, вправо, пробел.

Ведь в наборе обычно с пробелом напишем.

Ведь в наборе обычно с пробелом напишем.

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

Создать правило-исключение

Можно, но мне следует понять насколько это нужно.

Думаю, я не мог обьяснить.

  1. Хотел дать текст с форматированием в сниппетах. Как в Ворд или Либреоффис. Там на автозамене могу сделать так:

бб => Большой брат смотрит.

  1. Если такой возможность нет или трудно внедрять мне нужно исключить Ворд, Либреофис и так прочие. Чтобы там я пользовался автозаменой. А в других программах, у которых нет функция автозамена, например Телеграм, Ноутпад и т.д., хочу свободно использовать сниппет Mahou.
  1. Я попробую что-то придумать.
  2. Это могу быстро сделать как скрытую функцию в Mahou.ini, сейчас сделаю...
  1. Сделал в fa30c1a, теперь нужно указать в скрытой настройке имена процессов которые исключать, разделитель: |, гифка:
    Mahou-onlySnipExcluded
1. Сделал в [fa30c1a](https://github.com/BladeMight/Mahou/commit/fa30c1ac1750e103facb45e9ad18d5c600a609be), теперь нужно указать в скрытой настройке имена процессов которые исключать, разделитель: `|`, гифка:
   ![Mahou-onlySnipExcluded](https://user-images.githubusercontent.com/11931888/72753319-521a2100-3bcd-11ea-8fd7-f800fd7dcbb6.gif)

Ну пока ты сделал это я ночью подумал об этом и утром нашёл способ Mahou для и текстовых редакторов. Вот такой:

->аа
====>__keyboard(ctrl+b)Автор статьи__keyboard(ctrl+b)<====
->ааа
====>__keyboard(ctrl+b)Автор статьи__keyboard(ctrl+b)__keyboard(enter)__keyboard(ctrl+i)опубликовал и фото.__keyboard(ctrl+i)<====

Ну, это не сработает на Телеграме. Потому что там (ctrl+b) и набор не сработает, надо сначала набирать текст, потом выделять и после этого (ctrl+b). Тогда текст будет жирным.

А, в блокнот, ноутпад++ и т.п. форматирование естественно нет. Там тоже сработает сниппеты, конечно без форматирования.

И ноутпад++ съел enter:
Авторопубликовал и фото.

А блокнот видел enter как enter+tab:

    опубликовал и фото.

Но, это ничего. Такие трудные сниппеты не использую в ноутпад++ и в блокноте. Они мне нужны только в текстовых редакторах, браузерах и в телеграме. Пока.

Ну, ладно. _Результаты пока удовлетворительны._

А onlySnippetsExcluded тоже надо оставить. Другие необходимости могут возникнуть.

->аа
====>__keyboard(ctrl+b)Автор статьи__keyboard(ctrl+b)<====

Неплохо. А я и забыл про ctrl+b.

Ну, это не сработает на Телеграме. Потому что там (ctrl+b) и набор не сработает, надо сначала набирать текст, потом выделять и после этого (ctrl+b). Тогда текст будет жирным.

А это всё можно сделать с помощью __keyboard(), для этого в 1d5d420 я добавил новый функционал, теперь рядом с клавишей можно ставить * и цифру количества раз, её нажимать.

Раньше можно было так:

->aat
====>Автор статьи__keyboard(shift+ctrl+left)__keyboard(ctrl+shift+left)__keyboard(ctrl+b)__keyboard(ctrl+shift+right)__keyboard(ctrl+shift+right)__keyboard(ctrl+b)<====

А теперь с * можно так:

->aat
====>Автор статьи__keyboard(shift+ctrl+left*2)__keyboard(ctrl+b)__keyboard(ctrl+shift+right*2)__keyboard(ctrl+b)<====

Но этот сниппет не работал из-за того что __keyboard слишком быстро посылал клавиши, теперь в a8eb8af я добавил возможность указывать "задержку" между отправкой клавиш в __keyboard(), в конце функции(обязательно в конце!) нужно ввести | и цифру задержки в миллисекундах, пример: __keyboard(shift+a*4|300) - этот код будет работать так:

  1. Нажмет shift,
  2. и 4 раза подождет 300 мс, нажмет a.

Вот сниппет который работает с использованием задержки:

->aat
====>Автор статьи__keyboard(shift+ctrl+left*2|5)__keyboard(ctrl+b)__keyboard(ctrl+shift+right*2|5)__keyboard(ctrl+b)<====

P.S. Первый сниппет работал потому что между функциями __keyboard - есть задержка в 25 мс

Или можно еще так:

->aat
====>Автор статьи__keyboard(shift+left*12|2)__keyboard(ctrl+b)__keyboard(shift+right*12|2)__keyboard(ctrl+b)<====

Т.е. Автор статьи - 12 символов, (shift+left*12) или 2 слова (ctrl+shift+left*2).

@yuklov Ну как?

@yuklov Ну как?

Я был здесь: https://github.com/BladeMight/Mahou/issues/259#

Пришёл здесь только что.

Пришёл здесь только что.

На Github, есть уведомления где показывается в какой теме тебе кто-то что-то написал:
Нажимаешь на колокольчик и выводится список новых уведомлений(так можно проверять где тебе написали).
2020 01 21 - 17'05'18_rect

P.S. Я написал тебе в #259, в страничке "колокольчика" должно отобразится что я тебе написал(если ты еще не открывал #259).

Пришёл здесь только что.

На Github, есть уведомления где показывается в какой теме тебе кто-то что-то написал:
Нажимаешь на колокольчик и выводится список _новых уведомлений_(так можно проверять где тебе написали).
2020 01 21 - 17'05'18_rect

P.S. Я написал тебе в #259, в страничке "колокольчика" должно отобразится что я тебе написал(если ты еще не открывал #259).

ОК. Время от времени посмотрю на "колокольчик".

->aat
====>Автор статьи__keyboard(shift+ctrl+left2|5)__keyboard(ctrl+b)__keyboard(ctrl+shift+right2|5)__keyboard(ctrl+b)<====

Этот код сработал на Телеграм отлично (другие коды, которые без задержки, не сработал на TG) . Но на Ворде не получилось на всех кодах:
изображение

====>Автор статьи__keyboard(shift+left12|2)__keyboard(ctrl+b)__keyboard(shift+right12|2)__keyboard(ctrl+b)<====

Это с этим кодом:
изображение

Это на телеграме тоже не сработал.

Этот код сработал на Телеграм отлично

Ну, нашёл решение. Для телеграма буду создать отдельные сниппеты.

Ну, вот и хорошо.

Was this page helpful?
0 / 5 - 0 ratings