Первый:
- Перейдите в раскрывающееся меню "Плагины".
- Откройте
Plugins Manager
.
- Загрузите
PythonScript
для Notepad++.
- Через приглашение перезагрузите Блокнот ++.
Следующий:
- Перейти к плагинам в раскрывающемся меню.
- Нажмите
PythonScript -> new script
.
- Сохраните скрипт с расширением
.py
.
Скопируйте и вставьте этот код, затем отредактируйте его:
#*** IMPORTS ***
from Npp import *
#*** DEFINITIONS ***
#*** http://docs.python.org/release/1.4/tut/node70.html (.h triple-string variables)***
initial_string="""
THIS IS A HUGE
STRING
WITH COMMENTS
AND FUNCTIONS
AND
NESTING varr
MISSPELLEDD WORDS
VARIABLES Varr
ALL KINDS OF CRAZY STUFF"""
#*** I am using a case-sensitive replacement; ***
#*** therefore, I use two replacement operations ***
#*** First replacement, lowercase ***
print initial_string
user_replacement_string=notepad.prompt(notepad, 'Replace', "")
#*** Second replacement, uppercase ***
editor.replace("varr", user_replacement_string)
user_replacement_string=notepad.prompt(notepad, 'Replace', "")
editor.replace("Varr", user_replacement_string)
Сохранить
Теперь создайте новый файл ctrl-n и протестируйте скрипт. Перейдите в Plugins->PythonScript->Run Last Script
. Если это работает, вы можете применить его к файлу, над которым работаете.
Для удобства я сделал ctrl-shift-e
сочетанием клавиш для команды « Run Previous Script (#yourscriptname.py)
. В раскрывающемся меню выберите « Настройки» ->
Ярлык ярлыков» . Перейдите на вкладку « Plugin commands
». Ближе к концу, Run Previous Script
. Очень кстати.
Интересно, что вы можете использовать этот скрипт, чтобы дублировать себя для различных шаблонов. Я действительно хотел бы знать, как сделать это возможным. Пожалуйста, смотрите редактирование на мой вопрос.
ВАЖНОЕ РЕДАКТИРОВАНИЕ
Приведенный ниже код сделает так, что ваш Notepad++ будет создавать свои собственные скрипты. Запустите этот скрипт и сохраните файл в каталоге c:/program files/Notepad++/plugins/config/PythonScript/scripts
{ Windows default }:
#imports
from Npp import *
#variables
pattern_string=notepad.prompt(notepad, 'Pattern String')
number_of_replacements=int(notepad.prompt(notepad, 'Number of Replacements'))
variable_to_replace = []
replacement_title = []
the_header = """#imports
from Npp import *
#definitions
"""
a = "pattern_string = """ + '"' + '""' + pattern_string + '""' + '"'
b = """
print pattern_string
user_replacement_string"""
c = """=notepad.prompt(notepad, 'Replace', "Replaces: """
d = '"' + """)
editor.replace(""" + '"'
e = """", user_replacement_string"""
f = ")"
#function
for i in range (0, number_of_replacements):
replacement_title.append(str("Replacement Item ") + str(i+1))
variable_to_replace.append(notepad.prompt(notepad, replacement_title))
print the_header + a
print b + str(i) + c + variable_to_replace[i] + d + variable_to_replace[i] + e + str(i) + f
#thanks Wolfpack08.
Это позволит импортировать строки, которые вы часто вставляете в ваш файл, вместе с переменными, которые вам часто приходится заменять. Напишите ваш шаблон ввода с переменными (т.е.
This is my stupid input pattern foo, and I use the common variable bar
.
Когда вы запускаете скрипт, вы указываете этот шаблон ввода в первом всплывающем окне. Затем вы указываете количество переменных в шаблоне ввода: foo и bar (например, "2" переменные). В появившихся всплывающих полях ввода вы указываете переменные в том порядке, в котором вы хотите их заменить: (" foo ", " bar ").
Я не вставил функцию «значение по умолчанию», потому что думал, что будет неприятно заменить то, что я могу себе представить, быть действительно случайным внутри лексики. Я думаю, что было бы очень полезно иметь значения по умолчанию для людей, которые много вводят данные и нуждаются в этом виде макросов. Если кто-то сделает запрос на один, я добавлю его.