Có ai biết về một phần mở rộng VS2010 cho các vùng CSS không? Tôi có một số tệp CSS khá lớn và dường như tôi không thể tìm thấy cách tạo các vùng cho những vùng này. Tôi có phần mở rộng vùng JavaScript nhưng không có phần mở rộng cho CSS?
Có ai biết về một phần mở rộng VS2010 cho các vùng CSS không? Tôi có một số tệp CSS khá lớn và dường như tôi không thể tìm thấy cách tạo các vùng cho những vùng này. Tôi có phần mở rộng vùng JavaScript nhưng không có phần mở rộng cho CSS?
Câu trả lời:
Bạn có thể thử sụp đổ JavaScript vĩ mô và thay đổi //#region
cho/*#region*/
Kiểm tra http://blog.devarchive.net/2008/04/USE-region-directive-with-javascript.html .
Tất nhiên bạn nên tạo một macro mới và sao chép / dán cùng một tập lệnh.
Option Strict Off
Option Explicit Off
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports System.Diagnostics
Imports System.Collections
Public Module JsMacros
Sub OutlineCssRegion()
Dim selection As EnvDTE.TextSelection = DTE.ActiveDocument.Selection
'Const REGION_START As String = "//#region"
'Const REGION_END As String = "//#endregion"
Const REGION_START As String = "/*#region*/"
Const REGION_END As String = "/*#endregion*/"
selection.SelectAll()
Dim text As String = selection.Text
selection.StartOfDocument(True)
Dim startIndex As Integer
Dim endIndex As Integer
Dim lastIndex As Integer = 0
Dim startRegions As Stack = New Stack()
Do
startIndex = text.IndexOf(REGION_START, lastIndex)
endIndex = text.IndexOf(REGION_END, lastIndex)
If startIndex = -1 AndAlso endIndex = -1 Then
Exit Do
End If
If startIndex <> -1 AndAlso startIndex < endIndex Then
startRegions.Push(startIndex)
lastIndex = startIndex + 1
Else
' Outline region ...
selection.MoveToLineAndOffset(CalcLineNumber(text, CInt(startRegions.Pop())), 1)
selection.MoveToLineAndOffset(CalcLineNumber(text, endIndex) + 1, 1, True)
selection.OutlineSection()
lastIndex = endIndex + 1
End If
Loop
selection.StartOfDocument()
End Sub
Private Function CalcLineNumber(ByVal text As String, ByVal index As Integer)
Dim lineNumber As Integer = 1
Dim i As Integer = 0
While i < index
If text.Chars(i) = vbCr Then
lineNumber += 1
i += 1
End If
i += 1
End While
Return lineNumber
End Function
End Module
Đây là một bài viết cũ, nhưng tôi nghĩ tôi sẽ theo dõi vì nó vẫn xuất hiện như một kết quả hàng đầu trong Google (VS CSS khu vực).
Xem http://jse.codeplex.com/ - tiện ích mở rộng này cho phép thu gọn lớp và vùng với các tệp CSS trong VS 2010.
Thí dụ:
/* #region Generic class collection */
.GenericClass {
border: 1px solid #000000;
}
.GenericClass2 {
border: 2px solid #000000;
}
/* #endregion */
Tính năng này cuối cùng đã xuất hiện trên Visual Studio 2012. :)
Cách sử dụng như @Bjorn Aadnesgaard mô tả.