Very slow keyboard response when working with large comment-based help

This forum can be browsed by the general public. Posting is limited to current SAPIEN license holders with active maintenance and does not offer a response time guarantee.
Forum rules
DO NOT POST LICENSE NUMBERS, ACTIVATION KEYS OR ANY OTHER LICENSING INFORMATION IN THIS FORUM.
Only the original author and our tech personnel can reply to a topic that is created in this forum. If you find a topic that relates to an issue you are having, please create a new topic and reference the other in your post.

Any code longer than three lines should be added as code using the 'Select Code' dropdown menu or attached as a file.
This topic is 7 years and 7 months old and has exceeded the time allowed for comments. Please begin a new topic or use the search feature to find a similar but newer topic.
User avatar
adbertram
Posts: 99
Last visit: Fri Aug 18, 2017 11:31 am

Very slow keyboard response when working with large comment-based help

Post by adbertram »

http://www.screencast.com/t/1RC4kJ4TJxs

I'm not sure what led me to this point but it's terribly slow when adding new text to the large help snippet. However, when I make changes anywhere else not in that comment block, it's fine.
DevinL
Posts: 1098
Last visit: Tue Jun 06, 2017 9:15 am

Re: Very slow keyboard response when working with large comment-based help

Post by DevinL »

I opened a script of mine and created a help block of about 300 lines of text and was able to type with no delay at all:
http://screencast.com/t/BpcSH5rrr0

How large of a comment-based help is the snippet you're working with?
DevinL
SAPIEN Technologies, Inc.
User avatar
adbertram
Posts: 99
Last visit: Fri Aug 18, 2017 11:31 am

Re: Very slow keyboard response when working with large comment-based help

Post by adbertram »

Here's the comment block:

<#
.SYNOPSIS
Compare-EnvironmentManifest is used to compare two environment manifests for differences.

.DESCRIPTION
This function can be used in two ways. It can either compare two environemnt manifests given a soure and reference
manifest provided or can compare manifests by EnvironmentId/ServiceInstance.

To compare two manifests directly, use both the SourceEnvironmentManifest and RefernceEnvironmentManifest parameters.
These can be retrieved using the Get-EnvironmentManifest function. If either parameter is used, the other is
mandatory.

To eliminate the step of having to use Get-EnvironmentManifest to first find either manifest, you can also use
the environment ID and service instance directly. To do this, you will optionally use the EnvironmentId parameter
if specifying an environment ID other than a BDT environment such as C. If environment of C is used, you must then
provide the reference BDT service instance by using the BDTServiceInstance parameter. This will compare the latest
customer.local manifest against the latest BDT environment manifest for that service instance.

.EXAMPLE
PS> $Manifest1 = Get-EnvironmentManifest -ServiceInstance 97
PS> $Manifest2 = Get-EnvironmentManifest -ServiceInstance 11
PS> Compare-EnvironmentManfiest -SourceEnvironmentManifest $Manifest1 -ReferenceEnvironmentManifest $Manifest2

This example retrieves the latest environment manifest created for BDT service instance 97 and BDT service instance
11.

It then compares the two outputting any differences found. If any differences, it will output each one as a PSCustomObject.
hello, this is a test. I'm typing a lot faster than this.
.EXAMPLE
PS> Compare-EnvironmentManifest -EnvironmentId C -BdtServiceInstance 11

This example retrieves the latest environment manifest created for the C environment and the latest BDT service instance 11.

It then compares the two outputting any differences found. If any differences, it will output each one as a PSCustomObject.

.EXAMPLE
PS> Compare-EnvironmentManifest -EnvironmentId B -SourceServiceInstance 11 -ReferenceServiceInstance 97

This example returns the same results as EXAMPLE 1 although it explicitly defines the environment ID. This is the same
because the 'B' environment ID is default.

.PARAMETER SourceEnvironmentManifest
The XML element representing a single environment manifest. This must be an object of type System.Xml.XmlElement.
It is most easily retrieved using the Get-EnvironmentManifest function. This is a mandatory parameter if
ReferenceEnviromentManifest is used. This may only be used with ReferenceEnvironmentManifest.

.PARAMETER ReferenceEnvironmentManifest
The XML element representing another environment manifest. This must be an object of type System.Xml.XmlElement.
It is most easily retrieved using the Get-EnvironmentManifest function. This is a mandatory parameter if
SourceEnvironmentManifest is used. This may only be used with SourceEnvironmentManifest.

.PARAMETER EnvironmentId
By default this value is 'B'. However, it will typically be used to specify the 'C' environment ID to compare a
customer.local manifest to a BDT manifest. It is optional in any situation but can only be used when
SourceEnvironmentManifeest ane ReferenceEnviromentManifest are NOT used.

.PARAMETER SourceServiceInstance
The service instance to find the manifest for. By default, it will find the latest BDT service instance manifest.
This is only available if ReferenceServiceInstance is used and is mandatory at that time.

.PARAMETER ReferenceServiceInstance
The service instance to find the manifest for. By default, it will find the latest BDT service instance manifest.
This is only available if SourceServiceInstance is used and is mandatory at that time.

.PARAMETER BdtServiceInstance
The BDT reference service instance to find the manifest for. By default, it will find the latest BDT service instance manifest.
This is only available if EnvironmentId = C. If so, this is mandatory. Otherwise, this parameter is not available.

.PARAMETER IncludeEqual
By default, this function will only return rules that have values that differ. If this optional switch parameter
is used, it will return all values and set the IsEqual property to $true.

.OUTPUTS
System.Management.Automation.PSCustomobject (if any differences found). Null otherwise.
#>
User avatar
adbertram
Posts: 99
Last visit: Fri Aug 18, 2017 11:31 am

Re: Very slow keyboard response when working with large comment-based help

Post by adbertram »

I've ran into this sporadically for a long time. It seems when you have a large comment or larger string (in a here string) for example, it will sometimes start performing very slowly. I can't reliably reproduce it.
DevinL
Posts: 1098
Last visit: Tue Jun 06, 2017 9:15 am

Re: Very slow keyboard response when working with large comment-based help

Post by DevinL »

In that case I'll pass it along to the developers and see if they can think of any potential causes/solutions.
DevinL
SAPIEN Technologies, Inc.
This topic is 7 years and 7 months old and has exceeded the time allowed for comments. Please begin a new topic or use the search feature to find a similar but newer topic.