Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Notepad++ (часть 2)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177

Открыть новую тему     Написать ответ в эту тему

DmitryFedorov

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущая часть темы: часть 1
 

 
Notepad++ — это бесплатный редактор текстовых файлов (замена стандартного Блокнота) с поддержкой синтаксиса большого количества языков программирования, ориентирован для работы в операционной системе MS Windows. Этот проект базируется на компоненте Scintilla (очень мощном компоненте для редактирования) написанном на C++ с использованием только Win32 API и STL (что гарантирует максимальную скорость выполнения при минимальном размере программы), распространяется под лицензией GPL.  
 

Переводы на русский
 
  • (полный перевод!) Npp_exe_7.9.5_Ru + Плагины_RU от Dm.Fedorov
  • Русификатор 7.8.9 без сКаКаНиЯ текста от wvxwxvw
  • Notepad++Portable 7.9.1 AkulaBig от 21.11.2020 г.  
  • Как в Notepad++ включить проверку орфографии
     

    ! Проблема с "макинтош"-распознаванием кириллицы в кодировке 1251 (и другим неверным авто-распознаванием, где часть символов отображается кракозябрами) решается снятием галки "Autodetect character encoding" в Preferences|Misc.
    - Если в NP++ до v7.32 ссылка не подчеркивается, нужно применить плагин ScrollPastEOF


    ! Все вопросы и обсуждения по поводу поиска/замены текста задавайте пожалуйста в теме Регулярные выражения
     
    Системные требования, совместимость с Win2K,WinXP
     
    Любое упоминание политических аспектов, не касающихся непосредственного функционирования ПО, в данной теме будет заканчиваться запретом на пост.


  • Всего записей: 1977 | Зарегистр. 19-03-2006 | Отправлено: 01:23 02-12-2015 | Исправлено: Van9, 10:11 13-05-2024
    DmitryFedorov

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AZJIO
    Послойный поиск  
    Он был реализован в одном из плагинов, но неправильно насколько я помню.
    Я тебе предлагал именно озаботиться созданием плагина. Новое для тебя.
     
    Если иммитировать такой поиск, то вручную я такое в принципе делал.
    Если вручную - конечно морока. Но результат - ты можешь сделать все чего хочешь, не имея особых навыков в создании регулярных выражений.
     
    Надо например сделать сложный поиск. Рег-выражение получается жутко сложным и не работает.
     
    Тогда берешь и метишь специальными символами начало и конец найденного при первом поиске.
    Т.е. вставляешь эти символы тупо в текст.  
    (символы легко удалить потом, т.к. они уникальны)
    Итак нужные мне вхождения помечены спец-символами.  
    Зная их, я второй поиск делаю уже "от сих до сих".
    Т.е. от символа начала разметки до символа конца разметки.
    Результат второго поиска - это новая разметка найденного и опять спец уникальными символами.
    После того как новое "Найденное" помечено - первые спец-символы удаляются.
    ----------
    В итоге при иммитации нужно лишь две пары спец символов для поиска и замены.  
     
    Далее все зависит от создателя плагина: будет ли размеченный текст выделен, или неразмеченый текст будет блеклым. Будет ли показываться весь файл или только части с вхождениями.  
    Будет ли возможность в послойном поиске делать лишь одно "действо" замены или будет что-то покруче.
    Типа сделал один простой поиск, второй, третий, наконец сделал замену и продолжаешь карусель с этой уже изменённой копией файла. Пока не скажешь стоп. "Харэ".
    ------------
    Но это тот способ который я когда-то делал, опробованный.  
    А ведь можно и по-другому.  Подробнее...  
    В конце хочу обратить внимание. Что такая послойная замена - будет как правило содержать простые замены.  
    Потому что как говорил один мой начальник "лучше сорок раз по разу, чем ни разу сорок сразу".  
    Ну и конечно в этом случае это чисто визуальный способ поиска и замены.
    Попробовал первый шаг, если не то что надо - вернулся назад, сделал другую попытку.
    Главное видеть результат глазами.
     
    Макрос

    Цитата:
    Макрос же не предлагает сделать замены к примеру в буфере обмена

    Это не предлагает. Но там было чегой-то такое.
    Подробнее...

    Всего записей: 1977 | Зарегистр. 19-03-2006 | Отправлено: 15:58 23-06-2017 | Исправлено: DmitryFedorov, 16:39 23-06-2017
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    DmitryFedorov
    сохрани код в au3

    Код:
    ; AutoIt
    #NoTrayIcon
    $label = 'Extended'
    ; Send('^{INS}') ; копировать выделенное
    ControlSend("[CLASS:Notepad++]", "", "", '^{INS}')
    $s='h'
    If @OSLang = 0419 Then $s='р' ; удали эту строку если по умолчанию англ. яз.
    If Not WinExists("[CLASS:#32770]", $label) Then ; если не отсутствует окно поиска, то
        ControlSend("[CLASS:Notepad++]", "", "[CLASS:SysTabControl32]", '^' & $s)
    EndIf
    $hWnd = WinWait("[CLASS:#32770]", $label, 2)
    If Not $hWnd Then Exit
    $hControl = ControlGetHandle($hWnd, $label, 'SysTabControl321') ; Получаем дескриптор вкладки
    If Not $hControl Then Exit
    $iNumTab = ControlCommand($hWnd, $label, $hControl, "CurrentTab")
    Switch $iNumTab ; Взависимости от текущего номера вкладки переключаем на нужную вкладку
        Case 1
            ControlCommand($hWnd, "", $hControl, "TabRight")
        Case 2
            Sleep(10)
        Case 3
            Sleep(10)
            ; ControlCommand($hWnd, "", $hControl, "TabLeft")
        Case 4
            ControlCommand($hWnd, "", $hControl, "TabLeft")
            ControlCommand($hWnd, "", $hControl, "TabLeft")
        Case Else ; если что то иное, значит это неправильно и выход
            Exit
    EndSwitch

     
    ControlSetText($hWnd, $label, "Edit2", ClipGet())

    В shortcuts.xml добавь команду

    Код:
    <Command name="copy_multiline" Ctrl="no" Alt="yes" Shift="no" Key="112">&quot;$(NPP_DIRECTORY)\script\AutoIt3.exe&quot; &quot;$(NPP_DIRECTORY)\script\copy_multiline.au3&quot;</Command>

     
    в папке Notepad++ создай папку "script" и в неё положи "copy_multiline.au3" и "AutoIt3.exe". Всё!
    Выделяешь текст, жмёшь Alt+F1, если не было окна поиска, то открывается, если вкладка не "Заменить" то выбирается она и вставляется. При чём ничего форматировать не пришлось, вставляется также как в строке поиска символы переноса выглядят квадратами. То есть активировать диалог замены можно хоть с Ctrl+H, хоть Alt+F1, в любом случае первый вызов вставляет в верхнее поле, второй в нижнее.
     
    отписал хотелку

    Всего записей: 4414 | Зарегистр. 03-05-2006 | Отправлено: 22:59 24-06-2017 | Исправлено: AZJIO, 12:04 25-06-2017
    Hjkma

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Существует ли способ удаления дубликатов строков без сортировки через TextFX? Скрипты, плагины, что угодно. Просто сортировка мне не нужна, хотелось бы сохранить текст как есть, только с удалением строк-дубликатов. Можно и через рэгексп (если найдется такой), только нужно учесть, что строки-дубликаты находятся не рядом с оригинальными строками (назовем их так), а в разных местах текстового файла.

    Всего записей: 242 | Зарегистр. 04-03-2015 | Отправлено: 12:12 25-06-2017 | Исправлено: Hjkma, 12:15 25-06-2017
    Frantishek



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    нид хэлп. пропали вкладки. логики не вижу почему. как-то можно вернуть? (все так удобно уже было настроено). есть ли вообще подобие сохранения сессий, как в браузерах? (уж сколько с ними намучился с этим, на каждом по два резервных хранителя теперь стоит, не думал, что и тут будет так).

    Всего записей: 1235 | Зарегистр. 02-05-2006 | Отправлено: 21:46 25-06-2017
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Frantishek

    Цитата:
    есть ли вообще подобие сохранения сессий

    Файл -> Сохранить сессию
     
    Hjkma

    Цитата:
    Существует ли способ удаления дубликатов строков без сортировки через TextFX? Скрипты, плагины, что угодно.  

    Compare strings

    Всего записей: 4414 | Зарегистр. 03-05-2006 | Отправлено: 21:58 25-06-2017
    Frantishek



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ну и плагин еще есть для автосохранения, как оказалось. правда кривоватый слегка.

    Всего записей: 1235 | Зарегистр. 02-05-2006 | Отправлено: 23:48 25-06-2017
    regist123



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Frantishek 22:46 25-06-2017
    Цитата:
    пропали вкладки. логики не вижу почему.

    У меня иногда такое бывает, если система пытается завершить работу Npp и там вылазит окно, типа вы хотите сохранить изменения в этом файле. И там если нажать нет обычно все вкладки закрываются, поэтому последнее время жму отмена и потом закрываю эту вкладку, но всё равно порой все вкладки закрываются. Что будет если нажать ДА не пробовал. Такое поведение заметил уже достаточно давно.
    А как сохранить сессию на случай подобного выше написали.

    Всего записей: 7189 | Зарегистр. 20-03-2009 | Отправлено: 00:14 26-06-2017
    Hjkma

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AZJIO
    Я ищу не внешние решения, а именно посредством Notepad++. Мне нужно построить в нем макрос включительно с удалением дубликатов. К слову, нашел регэксп, который решает это:

    Цитата:
    ^(.*?)$\s+?^(?=.*^\1$)

    Но он удаляет самые верхние дубликаты, хотелось бы найти решение, которое бы удаляло дубликаты, которые размещаются ниже.

    Всего записей: 242 | Зарегистр. 04-03-2015 | Отправлено: 00:24 26-06-2017
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Hjkma

    Цитата:
    Я ищу не внешние решения, а именно посредством Notepad++
    когда тебе действительно будет это нужно для твоего дела, ты будешь использовать любую возможность, а не придумывать причины почему ты не будешь это использовать... это не оправдание.

    Всего записей: 4414 | Зарегистр. 03-05-2006 | Отправлено: 22:18 26-06-2017
    Hjkma

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AZJIO
    И как мне по-вашему встроить внешние решения в макрос?

    Всего записей: 242 | Зарегистр. 04-03-2015 | Отправлено: 11:06 27-06-2017
    dertaker

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Ужасный редактор. Это правда. Ужасная визуально программа.

    Всего записей: 9 | Зарегистр. 29-06-2017 | Отправлено: 02:33 29-06-2017
    Xant1k



    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    dertaker
    С первым соглашусь. Столько лет автор не может сделать чтобы url в котором присутствует кириллица полностью был гиперссылкой.

    Всего записей: 2918 | Зарегистр. 20-02-2009 | Отправлено: 05:24 29-06-2017
    dertaker

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Xant1k
    Это один пункт.
    1 Неквадратная кнопка с буквой Х в правом верхнем углу
    2 На каждый диалог свой стиль и API
    3 Значки на панели инструментов с огромным незанятым пространством.
    4 Меню, которое не раскрывается полностью, если окно в нижней части экрана
    5 Меню, которое блокирует сам пункт меню
    6 Разная логика диалогов Поиска и Замены

    Цитата:
    Столько лет автор не может сделать чтобы url в котором присутствует кириллица полностью был гиперссылкой
    Гг. Ток это не кириллица. А какой редактор это уже осилил?

    Всего записей: 9 | Зарегистр. 29-06-2017 | Отправлено: 16:28 29-06-2017
    Nch



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте.  
    Есть ли какой-нибудь способы выделить и скопировать в буфер обмена все строки со "стилем 1"?

    Всего записей: 99 | Зарегистр. 18-08-2008 | Отправлено: 18:53 02-07-2017 | Исправлено: Nch, 18:54 02-07-2017
    regist123



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nch
    а стиль как выставляется, по какому принципу? Есть способ скопировать в буфер все строки отмеченные закладками.
    А также пометить через поиск все строки в которых будет найдено совпадение закладкой.

    Всего записей: 7189 | Зарегистр. 20-03-2009 | Отправлено: 20:16 02-07-2017
    Nch



    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    regist123
     
    Да, с закладками оказалось проще. Стиль выделяет похожие слова, а в этом нет необходимости.

    Всего записей: 99 | Зарегистр. 18-08-2008 | Отправлено: 22:03 02-07-2017
    regist123



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nch
    если поищите, тут в теме я выкладывал макрос для копирования закладок. Точней цель макроса была, чтобы можно было копировать закладки по горячей клавише, а не искать это в меню.

    Всего записей: 7189 | Зарегистр. 20-03-2009 | Отправлено: 23:06 02-07-2017
    dertaker

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Xant1k
    Ждем.
    github.com/notepad-plus-plus/notepad-plus-plus/issues/2798

    Всего записей: 9 | Зарегистр. 29-06-2017 | Отправлено: 10:48 03-07-2017
    igr65

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Русификатор 7.33 и сборка от AZJIO  
    перейти по ссылке

    Цитата:
    сборка Notepad++ v6.5.3 (20.03.2015).

     выдает:
    502 Bad Gateway
     можно перезалить?

    Всего записей: 43 | Зарегистр. 28-12-2012 | Отправлено: 17:15 03-07-2017
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    igr65
    nativeLang.7z и сборка

    Всего записей: 4414 | Зарегистр. 03-05-2006 | Отправлено: 19:30 03-07-2017
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177

    Компьютерный форум Ru.Board » Компьютеры » Программы » Notepad++ (часть 2)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru