Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ Ρ Π½Π΅ ΠΌΠΎΠ³Ρ ΡΠΎΡΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π½Π°ΡΠ°Π»ΡΡ, ΠΊΠΎΠ³Π΄Π° Ρ ΠΏΡΡΠ°ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ / searchString Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° searchString Π² ΡΠ°ΠΉΠ»Π΅, ΠΎΡΠΊΡΡΡΠΎΠΌ Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅, Ρ Π²ΠΈΠΆΡ ΡΡΠΎ Π² ΡΡΡΠΎΠΊΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ: / g / n / i / r / t / S / h / c / r / a / e / s. ΠΠ°ΠΆΠ°ΡΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π² ΡΡΠΎΠΉ ΡΠΎΡΠΊΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠΎΠΈΡΠΊΡ "g". Π― ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ Π½Π°ΡΠ΅Π» ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΡΡ. ΠΡΠ»ΠΈ Ρ Π½Π°Π±Π΅ΡΡ // searchString, ΠΏΠΎΠΈΡΠΊ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½, ΠΊΠ°ΠΊ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π»ΠΎΡΡ. ΠΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΠ΅Π³Π΄Π°, Π½Π΅Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎ ΡΡΠΎ Π·Π° ΡΡΡΠΎΠΊΠ° ΠΏΠΎΠΈΡΠΊΠ°. ΠΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Ρ? ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠ΅Ρ.
Π― Π½Π΅ ΠΏΠΎΠΌΠ½Ρ, ΡΡΠΎΠ±Ρ ΠΌΠ΅Π½ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΡΠΎΠΏΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ ΠΈΠ»ΠΈ Π²Π½ΠΎΡΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΌΠΎΠΈ ΡΠ°ΠΉΠ»Ρ Π·Π°ΠΏΡΡΠΊΠ° vim. Π’Π°ΠΊΠΎΠ΅ ΡΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΎ ΠΌΠ½ΠΎΠΉ Π² Visual Studio 2015 ΠΈ Visual Studio 2017. Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ vsvim Π²Π΅ΡΡΠΈΠΈ 2.5.0.0, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ 8 ΡΠ½Π²Π°ΡΡ 2018 Π³.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π»ΡΠ±ΡΠ΅ ΡΠΎΠ²Π΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΠΌΠ½Π΅ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π»ΠΈΡΠ½Π΅Π³ΠΎ / Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠΈΡΠΊ.
ΠΡΠΉΠ²
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΡΠ΅ΠΏΠΎΡΡΠ°ΠΆ. Π― Π·Π°ΠΌΠ΅ΡΠΈΠ» Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΎ ΡΡΡΠΎΠΊΠΎΠΉ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ. Π― Π΅ΡΠ΅ Π½Π΅ Π²ΠΈΠ΄Π΅Π» ΡΡΠΎΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½ΠΎ Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠΈΠΌΠΏΡΠΎΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠΆΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅Ρ ΠΈ Π·Π° ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. vsvim ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΌΠΎΠΈΠΌ ΡΡΠ΅Π½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ vi ΠΏΠ°Π»ΡΡΠ°ΠΌ ΠΈ ΠΌΠΎΠ·Π³Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ΄ΠΈΠΈ.
@jaredpar , Ρ Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΡΠ²ΡΠ·Π°Π½ΠΎ Π»ΠΈ ΡΡΠΎ, Π½ΠΎ Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠ°Π» ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅, ΠΊΠΎΠ³Π΄Π° Ρ ΠΏΡΡΠ°ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΠΎΠΈΡΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ /
. ΠΠΎ ΡΡΡΠΈ, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΠΈΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ: ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ActivityLog.xml, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π²ΠΊΠ»ΡΡΠ°Ρ Π΅Π³ΠΎ.
ΠΡΠΈΠ±ΠΊΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ Π²Π²ΠΎΠΆΡ ΡΠΈΠΌΠ²ΠΎΠ» ΠΏΠΎΡΠ»Π΅ /
. ΠΠΎΡΠ»Π΅ Π·Π°ΠΊΡΡΡΠΈΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° Ρ ΠΌΠΎΠ³Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Π² ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ
ΠΎΡΠΈΠ±ΠΎΠΊ.
ΠΡΡΠ°ΡΠΈ, ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ ΡΠ±ΠΎΡΠΊΠ°ΠΌΠΈ ΠΎΡ AppVeyor.
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΈΠ±ΠΊΠ° Π² ΡΠ°ΠΌΠΎΠΉ VS. ΠΠΎΡ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΡΠ΅ΠΊΠ° ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ:
System.ArgumentException: Value does not fall within the expected range.

at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)

at Microsoft.VisualStudio.Editor.Implementation.FontsAndColorsHelper.FillDictionaryForeground(ColorableItemInfo[] info, ResourceDictionary dictionary, Boolean fHasHierarchy)

at Microsoft.VisualStudio.Editor.Implementation.FontsAndColorsHelper.FillResourceDictionaryForegroundAndBold(ColorableItemInfo[] info, ResourceDictionary dictionary, Boolean fHasHierarchy)

at Microsoft.VisualStudio.Editor.Implementation.DataStorage.TryGetItemValueFromSubCategoryOfTextEditor(String itemKey, ResourceDictionary itemValue)

at Microsoft.VisualStudio.Editor.Implementation.DataStorage.TryGetItemValue(String itemKey, ResourceDictionary& itemValue)

at Microsoft.VisualStudio.Text.Classification.Implementation.EditorFormatMap.CreateResourceDictionaryFromProvision(String key)

at Microsoft.VisualStudio.Text.Classification.Implementation.EditorFormatMap.GetProperties(String key)

at Microsoft.VisualStudio.Text.Classification.Implementation.ViewSpecificFormatMap.GetProperties(String key)

at Microsoft.VisualStudio.Text.AdornmentLibrary.TextMarkers.Implementation.TextMarkerVisualManager.GetAdornmentForGeometry(Geometry geometry, IMappingTagSpan`1 tag)

at Microsoft.VisualStudio.Text.AdornmentLibrary.TextMarkers.Implementation.TextMarkerVisualManager.AddAdornment(SnapshotSpan span, IMappingTagSpan`1 tag, Dictionary`2 lineCache)

at Microsoft.VisualStudio.Text.AdornmentLibrary.TextMarkers.Implementation.TextMarkerVisualManager.AddAdornment(IMappingTagSpan`1 tag, Dictionary`2 lineCache, NormalizedSnapshotSpanCollection applicabilitySpans, NormalizedSnapshotSpanCollection formattedSpanAsNormalizedSnapshotSpanCollection)

at Microsoft.VisualStudio.Text.AdornmentLibrary.TextMarkers.Implementation.TextMarkerVisualManager.AddAdornments(NormalizedSnapshotSpanCollection spans, Double left, Double right)

at Microsoft.VisualStudio.Text.AdornmentLibrary.TextMarkers.Implementation.TextMarkerVisualManager.OnBatchedTagsChanged(Object sender, BatchedTagsChangedEventArgs e)

at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.RaiseEvent[TArgs](Object sender, EventHandler`1 eventHandlers, TArgs args)
--- End of stack trace from previous location where exception was thrown ---

at Microsoft.VisualStudio.Telemetry.WindowsErrorReporting.WatsonReport.GetClrWatsonExceptionInfo(Exception exceptionObject)
ΠΠ΅ ΠΏΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΡΡΠ°ΡΡΠ²ΡΠ΅Ρ VsVim.
@jaredpar Π― Π½Π°ΠΊΠΎΠ½Π΅Ρ Π½Π°ΡΠ΅Π» Π²ΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ ΠΎΡΠ»Π°Π΄ΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΈ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ΅ΠΌΡ ΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ° Π΄Π»Ρ VS2017.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ set incsearch
Π² ΠΌΠΎΠ΅ΠΌ ΡΠ°ΠΉΠ»Π΅ _vsvimrc
ΠΈ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²ΠΎΡΠ½ΠΎΠΌ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠ΅ΠΌΠ½ΠΎΠΉ ΡΠ΅ΠΌΡ ΠΏΠΎΠΈΡΠΊΠ° Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
Π‘ΡΠΎΠΈΡ Π»ΠΈ ΠΎΡΠΊΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π²ΡΠΏΡΡΠΊΠΈ?
Π‘ΡΠΎΠΈΡ Π»ΠΈ ΠΎΡΠΊΡΡΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ Π²ΡΠΏΡΡΠΊΠΈ?
ΠΠ»Ρ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π·Π΄Π΅ΡΡ, Ρ Π΄ΡΠΌΠ°Ρ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΊΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΡΠ²ΡΠ·ΠΈ VS. Visual Studio Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, ΠΈ ΠΌΡ ΠΌΠ°Π»ΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ Π΄Π»Ρ Π΅Π³ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ.
ΠΠ°ΠΊΡΡΡΠΈΠ΅ ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅Π³ΠΎ ΡΠ°ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ.
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅Ρ ΠΈ Π·Π° ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ. vsvim ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΌΠΎΠΈΠΌ ΡΡΠ΅Π½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ vi ΠΏΠ°Π»ΡΡΠ°ΠΌ ΠΈ ΠΌΠΎΠ·Π³Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ΄ΠΈΠΈ.