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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

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

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
     
    Любое упоминание политических аспектов, не касающихся непосредственного функционирования ПО, в данной теме будет заканчиваться запретом на пост.


  • Всего записей: 1952 | Зарегистр. 19-03-2006 | Отправлено: 01:23 02-12-2015 | Исправлено: MAX63ru, 09:05 20-02-2024
    DmitryFedorov

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

    Всего записей: 1952 | Зарегистр. 19-03-2006 | Отправлено: 15:40 22-06-2017
    jFobos



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    DmitryFedorov
    Сделайте уже пожалуйста такой диалог, а то ппц как не удобно со стандартным

    Всего записей: 452 | Зарегистр. 03-12-2007 | Отправлено: 17:34 22-06-2017
    AZJIO



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Я намёком  между делом предложил добавить кнопку "Копировать выделенное" в поле замены. К примеру нужно многострочный текст заменить на многострочный. Первый вставить не проблема, выделяем текст, жмём Ctrl+V и он вставлен. А вот в поле замены только заменой переносов на \r\n. А зачем такие сложности? Кнопка была бы кстати.
    Я не против метода "Перетащить и бросить", он же работает в пределах редактируемого текста, почему бы его не перетащить в диалоговое окно?

    Всего записей: 4407 | Зарегистр. 03-05-2006 | Отправлено: 19:52 22-06-2017 | Исправлено: AZJIO, 19:55 22-06-2017
    DmitryFedorov

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    AZJIO
    Мечталок можно наплодить сколько хошь.
     
    Для начала инфо: я твою фразу на русском - понял лишь раза с пятого.  
    Подробнее...
     
     
    Кардинальным изменением возможностей поиска и замены является "послойный поиск"
    Подробнее...
    Может ты возмешься?
     
    jFobos  

    Цитата:
    DmitryFedorov
    Сделайте уже пожалуйста такой диалог, а то ппц как не удобно со стандартным

    Я выложу попозже. Дней через несколько.  
    Надо привыкнуть и убедиться что все тип-топ, чтобы не плодить переводы.  
    Пока вроде более менее удобно. Раздражает лишь эта всплывающая подсказка.
    Будь она неладна.
    Надо подумать, может её как-то можно перенести в другое место или хотя бы на одну из кнопок.
     
     
     
    Добавлено:
    AZJIO
    У меня к тебе просьба.
    Может забабахаешь, а потом отшлифуешь макрос для такого рода вставки текста в поле замены.
    Т.е. что надо?
    При нажатии сочетания клавиш -  
    1) Надо скопировать выделенный текст
    2) В скопированном тексте символ перевода строки заменить на его аналог в регулярных выражениях
    3) вставить то что получилось конкретно в поле "заменить".
     
    Тут вся сложность в том чтобы сделать пункт номер два. Понятия не имею как. Может даже средствами самого макроса.
    Одно дело запись макроса "живьем", а другое - нацарапать вручную то, что реально надо.
    Там вроде как много возможностей. Где то я видел описание чего там можно накарябать. Может ты разберешься.
     
    Макрос должен иметь имя латинскими буквами, чтобы его можно было прочитать в файле, где он хранится.
    Ну и этот кусок кода надо в общем то и выдать нам для пользования.
    Чтобы тупо этот код вставить в файл и пользоваться.
    ----------
    В итоге получится ничуть не хуже чем ты хотел.
    Даже на одно - два действия меньше.
    Выделил, нажал сочетание клавиш и все готово. Текст уже и скопирован и всунут куда надо и как надо.

    Всего записей: 1952 | Зарегистр. 19-03-2006 | Отправлено: 07:25 23-06-2017 | Исправлено: DmitryFedorov, 07:59 23-06-2017
    AZJIO



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

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

    Цитата:
    "послойный поиск"  

    Я у себя в проге делал аналог, но там в исключения попадают не найденные вхождения, а файлы. Нашёл что-то в 1000 файлах из 5000, сохранил список этих файлов, далее вместо каталога кидаешь список и ищешь уже по списку, осталось к примеру 100 файлов, опять сохранил список и используешь его.
    По поводу конкретно вхождений, ну сделал вывод в консоль, там же он даёт номер строки и всю строку. Скопировал вывод в новый документ и снова в нём можно искать. Хотя конечно это немного ручной способ. Ну если предлагаешь придумай хотя бы механизм. Например нашёл пометил, потом ищешь то что в помеченном отсутствует или присутствует и далее снимает пометки или оставляет только их. Я же тоже не понимаю, что ты имеешь ввиду, искать внутри вхождения, искать в строках с вхождениями.
     

    Цитата:
    Может забабахаешь

    Можно скриптом AutoIt'a сделать или PureBasic. Макрос же не предлагает сделать замены к примеру в буфере обмена, можно только создать документ, вставить из буфера, заменить, скопировать, закрыть документ, вставить в поле поиска (хотя этот поиск уже по умолчанию на верхнем поле будет иметь другой текст)
    Кстати, зачем рег.выр. в данном случае, если проще задействовать "расширенный". А если всё же нужен рег.выр. при условии что верхнее поле поиска будет содержать рег.выр., то разница, те же \r\n, но нужно будет экранировать спец-символы, чтобы рег.выр. считал их текстом. Для режима "расширенный" это тоже имеет смысл.
     

    Всего записей: 4407 | Зарегистр. 03-05-2006 | Отправлено: 12:41 23-06-2017 | Исправлено: AZJIO, 12:59 23-06-2017
    DmitryFedorov

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

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

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

    Всего записей: 1952 | Зарегистр. 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, в любом случае первый вызов вставляет в верхнее поле, второй в нижнее.
     
    отписал хотелку

    Всего записей: 4407 | Зарегистр. 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
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    нид хэлп. пропали вкладки. логики не вижу почему. как-то можно вернуть? (все так удобно уже было настроено). есть ли вообще подобие сохранения сессий, как в браузерах? (уж сколько с ними намучился с этим, на каждом по два резервных хранителя теперь стоит, не думал, что и тут будет так).

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



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

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

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

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

    Compare strings

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



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

    Всего записей: 1221 | Зарегистр. 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++
    когда тебе действительно будет это нужно для твоего дела, ты будешь использовать любую возможность, а не придумывать причины почему ты не будешь это использовать... это не оправдание.

    Всего записей: 4407 | Зарегистр. 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
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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

    Компьютерный форум 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