Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.12.2022, 04:58   #1
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию Смотреть текстовый файл

здравствуйте, возможно ли с помощью Python именно смотреть текстовый файл, то есть файл открыт в Notepad++ и определить какие строки выделены, что выделено?
решается всё просто, выделил в Notepad++ часть текста, скопировал и запустил скрипт на Python, всё что нужно сделает, хотел одно звено цепи убрать = "скопировал"
спасибо

Последний раз редактировалось Ципихович Эндрю; 14.12.2022 в 07:13.
Ципихович Эндрю вне форума Ответить с цитированием
Старый 14.12.2022, 09:41   #2
Valick
Форумчанин
 
Регистрация: 27.04.2022
Сообщений: 493
По умолчанию

скалималдер.jpg
Valick вне форума Ответить с цитированием
Старый 14.12.2022, 11:45   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Могу предположить, что это то, что вам нужно:
https://habr.com/ru/post/135822/
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 15.12.2022, 09:52   #4
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

спасибо за ответ
действую так
в каталог C:\Program Files (x86)\Notepad++\plugins поместил скачанный с сети файл PythonScript.dll
импортировал его в самом Notepad++
далее, выбрав в меню Notepad++ Plugins->Python Script->New Script
создал скрипт в файле getSelText
Код:
# -*- coding: utf-8 -*-

#Скрипт для Notepad++

# Получаем выделенный текст
text = editor.getSelText()
isSelection = True
перегрузил Notepad++
появилась опция >Python Script->Scripts->getSelText
потом как сказано в сети:
Чтобы добавить его кнопку на панель инструментов и сделать возможным запуск по клавиатурному сочетанию, в настройках плагина (Plugins->Python Script->Configuration) выбираем созданный нами скрипт и добавляем его в меню и на панель инструментов. Теперь после перезапуска Notepad++ соответствующая кнопка появится на панели инструментов.
сделал-не появилась, хз почему? ну и главное, как с Python получить доступ к выделенному, и если выделено будет в нескольких файлах, тогда как получить доступ к выделенному тексту у нужного файла? спасибо

Последний раз редактировалось Ципихович Эндрю; 15.12.2022 в 09:57.
Ципихович Эндрю вне форума Ответить с цитированием
Старый 15.12.2022, 14:00   #5
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,309
По умолчанию

Мне ваша задача неизвестна.
Но вот, например, выделил текст - запустил скрипт - скрипт получил выделенный фрагмент и запустил ваш скрипт-обработчик, передав ему, в качестве параметра, выделенный текст.
Ваш скрипт-обработчик выделенного фрагмента контролирует параметр и принимает решение на обработку или ...

Другой путь:
Ваш скрипт-обработчик контролирует некоторую папку на присутствие определённого файла(ов).
Выделили текст - запустили скрипт - скрипт сохранил выделение в некотором файле.

Так думаю, что все выделенные фрагменты можно оснастить заголовком и складывать в один файл для последующей обработки.
Скрипт- обработчик читает заголовок и ...

PS: На таком скудном материале о задаче можно фантазировать очень долго ...
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Старый 15.12.2022, 14:16   #6
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

а так нужно то в скрипте плагина писать? я рассчитывал, что запускать буду Питоновский скрипт с пайчарма....ясно, опробовал:
Код:
# -*- coding: utf-8 -*-

#Скрипт для Notepad++

# Получаем выделенный текст
text = editor.getSelText()
isSelection = True
print(f"getSelText работает")
получил:
Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)]
Initialisation took 297ms
Ready.
File "C:\Users\q8902\AppData\Roaming\Not epad++\plugins\Config\PythonScript\ scripts\getSelText.py", line 8
print(f"getSelText работает")
^
SyntaxError: invalid syntax
проблема видимо была в эф строке, убрал её метку - f, ошибки нет, но и результата проверочного нет
ЧЯДНТ?

Последний раз редактировалось Ципихович Эндрю; 15.12.2022 в 14:19.
Ципихович Эндрю вне форума Ответить с цитированием
Старый 15.12.2022, 19:07   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Цитата:
Сообщение от Ципихович Эндрю Посмотреть сообщение
сделал-не появилась, хз почему?
Может просто не нашли? У меня появился значок питона самым последним в тулбаре, по которому вызывается этот скрипт.
Цитата:
Сообщение от Ципихович Эндрю Посмотреть сообщение
ошибки нет, но и результата проверочного нет
Вы включили показ консоли (Plugins - Python Script - Show Console)? Вы вызываете скрипт?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 15.12.2022, 21:38   #8
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Вы включили показ консоли (Plugins - Python Script - Show Console)? Вы вызываете скрипт?
дельный совет, ок, теперь вижу

Цитата:
Сообщение от BDA Посмотреть сообщение
Может просто не нашли? У меня появился значок питона самым последним в тулбаре, по которому вызывается этот скрипт.
так и не вижу как он выглядит?
спасибо
Ципихович Эндрю вне форума Ответить с цитированием
Старый 15.12.2022, 22:05   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Цитата:
Сообщение от Ципихович Эндрю Посмотреть сообщение
так и не вижу как он выглядит?
Приложил скриншот. Может быть у вас просто отключена панель инструментов (Опции - Настройки - Основные - Панель инструментов - стоит галочка Скрыть)?
Изображения
Тип файла: jpg notepad++.jpg (19.7 Кб, 1 просмотров)
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 16.12.2022, 06:04   #10
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Опции - Настройки - Основные - Панель инструментов - стоит галочка Скрыть)?
нет, если бы так было - не было ни Копировать Сохранить и т.д.
а указанной на скрине питоновской иконки-так и нет
пока не критично))
спасибо за ответ
остановился пока на таком варианте:
Код:
# -*- coding: utf-8 -*-
# Скрипт для Notepad++
# Получаем выделенный текст
text = editor.getSelText()
print(text)
# f вызовет ошибку, требуется, чтобы НЕ включать показ консоли (Plugins=Плагины-Python Script-Show Console)
print(f"getSelText работает")
только странно, почему ответ такой:
getSelText работает
'[\"вылетел"\"вылетела"\"вылетело"\"в ылетели"\\ в кювет с трассы]',
'[\"вылетел"\"вылетела"\"вылетело"\"в ылетели"\\ с трассы в кювет]',
ведь строка print(f"getSelText работает") ниже строки print(text)

Последний раз редактировалось Ципихович Эндрю; 16.12.2022 в 06:17.
Ципихович Эндрю вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ИНСТАГРАМ убрал возможность смотреть лайки моих друзей. Как написать код, который будет смотреть скрытые лайки? KAMLS Общие вопросы Web 38 05.11.2019 11:19
как записать в текстовый файл данные, очистив файл от старых данных Drekon Win Api 2 01.06.2018 21:05
Изменить mysql на файл (вместо записи в БД записывать в текстовый файл) прак PHP 2 16.12.2015 23:21
Текстовый файл в текстовый массив Kimimaru Общие вопросы C/C++ 1 02.12.2007 11:55