1
1
mirror of https://github.com/qvacua/vimr.git synced 2024-11-23 19:21:53 +03:00

Merge branch 'master' into update-neovim

This commit is contained in:
Tae Won Ha 2022-09-13 23:19:11 +02:00
commit a08fc2c910
No known key found for this signature in database
GPG Key ID: E40743465B5B8B44
7 changed files with 68 additions and 26 deletions

View File

@ -222,8 +222,7 @@ extension NvimView {
columnRange: ClosedRange<Int> columnRange: ClosedRange<Int>
) -> [AttributesRun] { ) -> [AttributesRun] {
rowRange.map { row in rowRange.map { row in
self.ugrid.cells[row][columnRange] groupedRanges(of: self.ugrid.cells[row][columnRange])
.groupedRanges(with: { cell in cell.attrId })
.compactMap { range in .compactMap { range in
let cells = self.ugrid.cells[row][range] let cells = self.ugrid.cells[row][range]
@ -273,3 +272,38 @@ private let infoTextAttrs = [
] ]
private let colorSpace = NSColorSpace.sRGB private let colorSpace = NSColorSpace.sRGB
/// When we use the following private function instead of the public extension function in
/// Commons.FoundationCommons.swift.groupedRanges(with:), then, according to Instruments
/// the percentage of the function is reduced from ~ 15% to 0%.
/// Keep the logic in sync with Commons.FoundationCommons.swift.groupedRanges(with:). Tests are
/// present in Commons lib.
private func groupedRanges(of cells: ArraySlice<UCell>) -> [ClosedRange<Int>] {
if cells.isEmpty { return [] }
if cells.count == 1 { return [cells.startIndex...cells.startIndex] }
var result = [ClosedRange<Int>]()
result.reserveCapacity(cells.count / 2)
let inclusiveEndIndex = cells.endIndex - 1
var lastStartIndex = cells.startIndex
var lastEndIndex = cells.startIndex
var lastMarker = cells.first!.attrId // cells is not empty!
for i in cells.startIndex..<cells.endIndex {
let currentMarker = cells[i].attrId
if lastMarker == currentMarker {
if i == inclusiveEndIndex { result.append(lastStartIndex...i) }
} else {
result.append(lastStartIndex...lastEndIndex)
lastMarker = currentMarker
lastStartIndex = i
if i == inclusiveEndIndex { result.append(i...i) }
}
lastEndIndex = i
}
return result
}

View File

@ -1127,7 +1127,7 @@
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-"; CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO; COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 20220910.153746; CURRENT_PROJECT_VERSION = 20220913.230838;
DEBUG_INFORMATION_FORMAT = dwarf; DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES; ENABLE_TESTABILITY = YES;
@ -1188,7 +1188,7 @@
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-"; CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO; COPY_PHASE_STRIP = NO;
CURRENT_PROJECT_VERSION = 20220910.153746; CURRENT_PROJECT_VERSION = 20220913.230838;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO; ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_STRICT_OBJC_MSGSEND = YES;
@ -1217,7 +1217,7 @@
buildSettings = { buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
COMBINE_HIDPI_IMAGES = YES; COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 20220910.153746; CURRENT_PROJECT_VERSION = 20220913.230838;
DEFINES_MODULE = YES; DEFINES_MODULE = YES;
IBC_MODULE = VimR; IBC_MODULE = VimR;
INFOPLIST_FILE = VimR/Info.plist; INFOPLIST_FILE = VimR/Info.plist;
@ -1239,7 +1239,7 @@
buildSettings = { buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
COMBINE_HIDPI_IMAGES = YES; COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 20220910.153746; CURRENT_PROJECT_VERSION = 20220913.230838;
DEFINES_MODULE = YES; DEFINES_MODULE = YES;
IBC_MODULE = VimR; IBC_MODULE = VimR;
INFOPLIST_FILE = VimR/Info.plist; INFOPLIST_FILE = VimR/Info.plist;

View File

@ -1224,7 +1224,7 @@
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>0.42.1</string> <string>0.42.2</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleURLTypes</key> <key>CFBundleURLTypes</key>
@ -1241,7 +1241,7 @@
</dict> </dict>
</array> </array>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>20220910.153746</string> <string>20220913.230838</string>
<key>LSApplicationCategoryType</key> <key>LSApplicationCategoryType</key>
<string>public.app-category.productivity</string> <string>public.app-category.productivity</string>
<key>LSMinimumSystemVersion</key> <key>LSMinimumSystemVersion</key>

View File

@ -15,10 +15,10 @@
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>BNDL</string> <string>BNDL</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>0.42.1</string> <string>0.42.2</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>20220910.153746</string> <string>20220913.230838</string>
</dict> </dict>
</plist> </plist>

View File

@ -6,22 +6,22 @@
<description>Most recent changes with links to updates for VimR.</description> <description>Most recent changes with links to updates for VimR.</description>
<language>en</language> <language>en</language>
<item> <item>
<title>v0.42.1-20220910.153746</title> <title>v0.42.2-20220913.230838</title>
<link>https://twitter.com/vimrefined</link> <link>https://twitter.com/vimrefined</link>
<sparkle:version>20220910.153746</sparkle:version> <sparkle:version>20220913.230838</sparkle:version>
<sparkle:shortVersionString>v0.42.1</sparkle:shortVersionString> <sparkle:shortVersionString>v0.42.2</sparkle:shortVersionString>
<description><![CDATA[ <description><![CDATA[
<ul> <ul>
<li>Bugfix: Memory leak (custom tabs).</li> <li>Improve rendering performance.</li>
</ul> </ul>
]]></description> ]]></description>
<releaseNotesLink> <releaseNotesLink>
https://github.com/qvacua/vimr/releases/tag/v0.42.1-20220910.153746 https://github.com/qvacua/vimr/releases/tag/v0.42.2-20220913.230838
</releaseNotesLink> </releaseNotesLink>
<pubDate>2022-09-10T15:46:20.838961</pubDate> <pubDate>2022-09-13T23:18:03.725690</pubDate>
<minimumSystemVersion>10.13.0</minimumSystemVersion> <minimumSystemVersion>10.13.0</minimumSystemVersion>
<enclosure url="https://github.com/qvacua/vimr/releases/download/v0.42.1-20220910.153746/VimR-v0.42.1.tar.bz2" <enclosure url="https://github.com/qvacua/vimr/releases/download/v0.42.2-20220913.230838/VimR-v0.42.2.tar.bz2"
sparkle:edSignature="TVgFx+Ceev99TOq4Xc1iSu4uh7Ko+sS2tiyyM607inTsxbDNL3lr+Cm/WzloyNdrLC85ifMSq6AhPfAwkJaQCQ==" length="21437371" sparkle:edSignature="AbabQPPjogx60fPES3jGH0aqiko9Vc6d2+i+h6vycAlX8GQKNIGRjeEe7gx17pSrvfdMmHdztGE5hETOI6reBw==" length="21682056"
type="application/octet-stream"/> type="application/octet-stream"/>
</item> </item>
</channel> </channel>

View File

@ -6,22 +6,22 @@
<description>Most recent changes with links to updates for VimR.</description> <description>Most recent changes with links to updates for VimR.</description>
<language>en</language> <language>en</language>
<item> <item>
<title>v0.42.1-20220910.153746</title> <title>v0.42.2-20220913.230838</title>
<link>https://twitter.com/vimrefined</link> <link>https://twitter.com/vimrefined</link>
<sparkle:version>20220910.153746</sparkle:version> <sparkle:version>20220913.230838</sparkle:version>
<sparkle:shortVersionString>v0.42.1</sparkle:shortVersionString> <sparkle:shortVersionString>v0.42.2</sparkle:shortVersionString>
<description><![CDATA[ <description><![CDATA[
<ul> <ul>
<li>Bugfix: Memory leak (custom tabs).</li> <li>Improve rendering performance.</li>
</ul> </ul>
]]></description> ]]></description>
<releaseNotesLink> <releaseNotesLink>
https://github.com/qvacua/vimr/releases/tag/v0.42.1-20220910.153746 https://github.com/qvacua/vimr/releases/tag/v0.42.2-20220913.230838
</releaseNotesLink> </releaseNotesLink>
<pubDate>2022-09-10T15:46:20.838961</pubDate> <pubDate>2022-09-13T23:18:03.725690</pubDate>
<minimumSystemVersion>10.13.0</minimumSystemVersion> <minimumSystemVersion>10.13.0</minimumSystemVersion>
<enclosure url="https://github.com/qvacua/vimr/releases/download/v0.42.1-20220910.153746/VimR-v0.42.1.tar.bz2" <enclosure url="https://github.com/qvacua/vimr/releases/download/v0.42.2-20220913.230838/VimR-v0.42.2.tar.bz2"
sparkle:edSignature="TVgFx+Ceev99TOq4Xc1iSu4uh7Ko+sS2tiyyM607inTsxbDNL3lr+Cm/WzloyNdrLC85ifMSq6AhPfAwkJaQCQ==" length="21437371" sparkle:edSignature="AbabQPPjogx60fPES3jGH0aqiko9Vc6d2+i+h6vycAlX8GQKNIGRjeEe7gx17pSrvfdMmHdztGE5hETOI6reBw==" length="21682056"
type="application/octet-stream"/> type="application/octet-stream"/>
</item> </item>
</channel> </channel>

View File

@ -1,5 +1,13 @@
# Next # Next
* ...
# 0.42.2-20220913.230838
* Improve rendering performance.
# 0.42.1-20220910.153746
* Bugfix: Memory leak (custom tabs). * Bugfix: Memory leak (custom tabs).
# 0.42.0-20220703.104316 # 0.42.0-20220703.104316