Поделиться через


Объект ISEEditor

Объект ISEEditor является экземпляром класса Microsoft.PowerShell.Host.ISE.ISEEditor. Область консоли — это объект ISEEditor. Каждый объект ISEFile имеет связанный объект ISEEditor. В следующих разделах перечислены методы и свойства объекта ISEEditor.

Методы

Clear()

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Удаляет текст в редакторе.

# Clears the text in the Console pane.
$psISE.CurrentPowerShellTab.ConsolePane.Clear()

EnsureVisible(int lineNumber)

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Прокручивает редактор таким образом, чтобы отображалась строка, соответствующая значению параметра lineNumber. Метод создает исключение, если указанный номер строки находится за пределами диапазона 1, последнего номера строки, который определяет допустимые номера строк.

lineNumber — номер строки, которая будет отображена.

# Scrolls the text in the Script pane so that the fifth line is in view.
$psISE.CurrentFile.Editor.EnsureVisible(5)

Focus()

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Помещает редактор в фокус.

# Sets focus to the Console pane.
$psISE.CurrentPowerShellTab.ConsolePane.Focus()

GetLineLength(int lineNumber )

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Получает длину строки (в виде целого числа) по указанному номеру строки.

lineNumber — номер строки, длину которой необходимо получить.

Возвращаемое значение — длина строки с указанным номером.

# Gets the length of the first line in the text of the Command pane.
$psISE.CurrentPowerShellTab.ConsolePane.GetLineLength(1)

GoToMatch()

Поддерживается в интегрированной среде сценариев Windows PowerShell 3.0 и более поздних версия и отсутствует в более ранних версиях.

Перемещает курсор в соответствующий знак, если свойству CanGoToMatch объекта редактора присвоено значение $true, которое присваивается, когда курсор находится непосредственно перед открывающей круглой, квадратной или фигурной скобкой (т. е. (,[,{) или сразу после закрывающей круглой, квадратной или фигурной скобки (т. е. ),],}). Курсор помещается перед открывающим символом или после закрывающего символа. Если свойство CanGoToMatch имеет значение $false, этот метод не выполняет никаких действий.

# Goes to the matching character if CanGoToMatch() is $true
$psISE.CurrentPowerShellTab.ConsolePane.GoToMatch()

InsertText( text )

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Заменяет выделенную область текстом или вставляет текст в текущей позиции курсора.

text — строка. Вставляемый текст.

См. пример сценария далее в этом разделе.

Select( startLine, startColumn, endLine, endColumn )

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Выделяет текст в области, определяемой параметрами startLine, startColumn, endLine и endColumn.

startLine — целое число. Строка, в которой начинается выделение.

startColumn — целое число. Столбец в строке, в которой начинается выделение.

endLine — целое число. Строка, в которой заканчивается выделение.

endColumn — целое число. Столбец в строке, в которой заканчивается выделение.

См. пример сценария далее в этом разделе.

SelectCaretLine()

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Выделяет всю строку текста, в которой в данный момент находится курсор.

# First, set the caret position on line 5.
$psISE.CurrentFile.Editor.SetCaretPosition(5,1)
# Now select that entire line of text
$psISE.CurrentFile.Editor.SelectCaretLine()

SetCaretPosition( lineNumber, columnNumber )

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Задает положение курсора по номеру строки и номеру столбца. Метод создает исключение, если номер строки или номер столбца курсора находятся вне соответствующих допустимых диапазонов.

lineNumber — целое число. Номер строки курсора.

columnNumber — целое число. Номер столбца курсора.

# Set the CaretPosition.
$psISE.CurrentFile.Editor.SetCaretPosition(5,1)

ToggleOutliningExpansion()

Поддерживается в интегрированной среде сценариев Windows PowerShell 3.0 и более поздних версия и отсутствует в более ранних версиях.

Выполняет свертывание или развертывание всех разделов структуры.

# Toggle the outlining expansion
$psISE.CurrentFile.Editor.ToggleOutliningExpansion()

Свойства

CanGoToMatch

Поддерживается в интегрированной среде сценариев Windows PowerShell 3.0 и более поздних версия и отсутствует в более ранних версиях.

Логическое свойство, доступное только для чтения, которое указывает, находится ли курсор рядом с круглой, квадратной или фигурной скобкой — (), [], {}. Если курсор находится непосредственно перед открывающим символом или сразу после парного закрывающего символа, то это свойство имеет значение $true. В противном случае значение равно $false.

# Test to see if the caret is next to a parenthesis, bracket, or brace
$psISE.CurrentFile.Editor.CanGoToMatch

CaretColumn

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

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

# Get the CaretColumn.
$psISE.CurrentFile.Editor.CaretColumn

CaretLine

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Свойство только для чтения, которое получает номер строки, содержащей курсор.

# Get the CaretLine.
$psISE.CurrentFile.Editor.CaretLine

CaretLineText

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Свойство только для чтения, которое получает полную строку текста, содержащую курсор.

# Get all of the text on the line that contains the caret.
$psISE.CurrentFile.Editor.CaretLineText

LineCount

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Свойство только для чтения, которое получает число строк из редактора.

# Get the LineCount.
$psISE.CurrentFile.Editor.LineCount

SelectedText

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Свойство только для чтения, которое получает выделенный текст из редактора.

См. пример сценария далее в этом разделе.

Текст

Поддерживается в интегрированной среде сценариев Windows PowerShell 2.0 и более поздних версий.

Свойство для чтения и записи, которое получает или задает текст в редакторе.

См. пример сценария далее в этом разделе.

Пример сценария

# This illustrates how you can use the length of a line to
# select the entire line and shows how you can make it lowercase.
# You must run this in the Console pane. It will not run in the Script pane.
# Begin by getting a variable that points to the editor.
$myEditor = $psISE.CurrentFile.Editor
# Clear the text in the current file editor.
$myEditor.Clear()

# Make sure the file has five lines of text.
$myEditor.InsertText("LINE1 `n")
$myEditor.InsertText("LINE2 `n")
$myEditor.InsertText("LINE3 `n")
$myEditor.InsertText("LINE4 `n")
$myEditor.InsertText("LINE5 `n")

# Use the GetLineLength method to get the length of the third line.
$endColumn = $myEditor.GetLineLength(3)
# Select the text in the first three lines.
$myEditor.Select(1, 1, 3, $endColumn + 1)
$selection = $myEditor.SelectedText
# Clear all the text in the editor.
$myEditor.Clear()
# Add the selected text back, but in lower case.
$myEditor.InsertText($selection.ToLower())

См. также