Compare commits

..

136 Commits

Author SHA1 Message Date
Yee Cheng Chin 2c88928f02 MacVim r181
Copied from https://macvim.org/appcast/latest.xml

Note: There is currently no plan to further update this deprecated
branch. Users using very old versions of MacVim will update to r181,
which will know how to update itself to later versions.
2025-02-20 21:49:22 -08:00
Yee Cheng Chin 8a6708e69a MacVim r180
Copied from https://macvim.org/appcast/latest.xml
2024-09-11 02:30:46 -07:00
Yee Cheng Chin 731b3aad86 MacVim r179
Copied from https://macvim.org/appcast/latest.xml
2024-01-04 22:02:25 -08:00
Yee Cheng Chin 5294013d41 MacVim r178
Copied from https://macvim.org/appcast/latest.xml
2023-09-12 06:49:50 -07:00
Yee Cheng Chin 952d45c066 MacVim r177
Copied from https://macvim.org/appcast/latest.xml
2023-07-09 20:44:32 -07:00
Yee Cheng Chin 896307f2f9 Update README.md to include notes on Sparkle 1 2023-05-25 09:50:32 -07:00
Yee Cheng Chin 54b911e075 Add redirect and README for old gh-pages branch
This branch is now obsolete, with the new macvim-dev.github.io branch
serving as the canonical website, as it makes more sense to host this on
a root organizational level instead.

Set up a redirect to point to the new site, and add README for
explanation (especially how the appcast/latest.xml file is still
important to keep around for now to support older versions of MacVim).
2023-03-10 19:55:21 -08:00
Yee Cheng Chin 49c8bdd0c6 Add link to new documentation page 2023-03-07 22:54:02 -08:00
Yee Cheng Chin 751144d731 release-176 2023-02-07 04:54:46 -08:00
Yee Cheng Chin d10a4523ff Revert "Revert "release-175 / Add additional links for legacy builds, system reqs""
This reverts commit aaf987387d.
2023-02-07 04:53:17 -08:00
Yee Cheng Chin aaf987387d Revert "release-175 / Add additional links for legacy builds, system reqs"
The current build seems to be having some issues with resizing. Need to
do some debugging before pushing this out further.

This reverts commit 11a5cd8e06.
2023-02-07 02:01:47 -08:00
Yee Cheng Chin 11a5cd8e06 release-175 / Add additional links for legacy builds, system reqs
Abstract out the index.html to use Jekyll to template out the version
number, and add new links for downloading the now split legacy builds
(for macOS 10.9 - 10.12).

Also, bump version from r174 to the new r175.
2023-02-07 01:44:26 -08:00
Yee Cheng Chin 6d15994125 Merge pull request #1294 from pusewicz/patch-1
Update the link to self
2022-09-28 14:52:52 -07:00
Piotr Usewicz 57ac1f43e1 Update the link to self
This got updated in https://github.com/macvim-dev/macvim/commit/d65c0f2016711dbbe5c0a1db8a752d2334e0240d
2022-09-21 15:31:38 +02:00
Yee Cheng Chin 1936879867 Add full release notes URL to point to GitHub releases
This only applies to Sparkle 2 (MacVim is only using Sparkle 1). Adding
this for now to help testing Sparkle 2 migration.
2022-09-16 18:31:15 -07:00
Yee Cheng Chin 5bf8f1ef93 Fix snapshot->release renaming not reflected in web page 2022-09-15 14:14:55 -07:00
Yee Cheng Chin 0bc7cd1e50 release-174 2022-09-15 14:08:01 -07:00
Yee Cheng Chin 7b3dea9023 snapshot-173 2022-07-25 04:38:12 -07:00
Yee Cheng Chin 591d8fc766 Add warning message about error when updating from 166 to 172 directly
This was due to a wrong public EdDSA key in release 166. Given enough
time and releases have passed since then, this should not be a huge
problem.
2021-09-24 18:44:40 -07:00
Yee Cheng Chin 099e55ec35 snapshot-172 2021-09-24 18:28:28 -07:00
Yee Cheng Chin 2415dd8f62 snapshot-171 2021-04-01 02:24:11 -07:00
Yee Cheng Chin 5c628fb880 snapshot-170 2021-03-08 00:37:17 -08:00
Yee Cheng Chin 94ab78aaea snapshot-169 2020-12-19 14:35:30 -08:00
Yee Cheng Chin efb196d8b4 Update min OS requirement for snapshot-168 to macOS 10.14
The latest build broke 10.13 due to a build issue linking against newer
symbols. Simply disable this version for older versions of macOS for now
before snapshot-169 fixes this.

Also, include snapshot-166 in the appcast so people running macOS 10.13
or below will still be able to update to it successfully and Sparkle
will show that their MacVim is up to date instead of an error message.
2020-12-13 13:35:45 -08:00
Yee Cheng Chin 48c55ee503 Fix wrong XML format in appcast 2020-12-11 23:04:03 -08:00
Yee Cheng Chin a8f2f92780 snapshot-168 2020-12-11 22:52:32 -08:00
Yee Cheng Chin 8e73b009c9 Revert "snapshot-167"
This reverts commit 581f58f6ac.

It appears that the update is not working. Revert for now while it's
being diagnosed.
2020-12-11 13:59:12 -08:00
Yee Cheng Chin 581f58f6ac snapshot-167 2020-12-11 13:43:22 -08:00
Yee Cheng Chin 808ccdba71 snapshot-166 2020-09-20 22:16:09 -07:00
Yee Cheng Chin 14f9556df8 Switch download link to directly link to dmg file
Also, provide a separate link to link to the release notes. This is more
in tune with what other software projects do and more user-friendly as
most people just want a direct link to download the dmg file.

This does create more release burden as we now have to go through and
update the links every time we release but it's not a big deal.
2020-09-20 22:10:44 -07:00
Yee Cheng Chin 020c5d0408 snapshot-165 2020-08-15 14:32:07 -07:00
Yee Cheng Chin 13d5221ed7 Revert "snapshot-164"
This reverts commit 0ec13c58a8.

Reverting this because seeing issues with gettext dynamic linkage
issues, leading to MacVim crashing on launch.
2020-08-13 05:15:13 -07:00
Yee Cheng Chin 0ec13c58a8 snapshot-164 2020-08-13 03:00:04 -07:00
Yee Cheng Chin 5f70c8b7ba Fix markdown list formatting 2020-04-11 23:47:08 -07:00
Yee Cheng Chin e9969158b8 snapshow-163 2020-04-11 23:43:01 -07:00
Yee Cheng Chin dd31e93867 snapshot-162 2020-03-03 05:02:36 -08:00
Yee Cheng Chin 7847450f1b Use Sparkle binary deltas for updating as well 2019-10-30 06:48:01 -07:00
Yee Cheng Chin 7cc94eb0d2 snapshot-161 2019-10-30 06:41:33 -07:00
Yee Cheng Chin e5db65a0cc snapshot-160 2019-10-28 05:20:10 -07:00
Yee Cheng Chin 776fd25da0 Fix web page dark modes for Chrome/FF (they don't support color-scheme) 2019-10-17 04:03:54 -07:00
Yee Cheng Chin 264ab99a52 Add support for dark mode in web page stylesheet 2019-10-17 03:30:17 -07:00
Yee Cheng Chin fed313070c Update release notes to support dark mode 2019-10-17 02:48:16 -07:00
Yee Cheng Chin f9e219077a snapshot-159 2019-10-17 02:26:23 -07:00
Yee Cheng Chin de8726ab8f snapshot-157 2019-07-27 22:11:11 -07:00
Yee Cheng Chin dcb1d78155 Fix snapshot-156 release notes message
Typo in which Vim version the vulnerability was fixed.
2019-06-12 00:27:04 -07:00
Yee Cheng Chin efd005f008 snapshot-156 2019-06-11 02:50:19 -07:00
Yee Cheng Chin cd3568c182 Update index.html to say "macOS" instead of "Mac OS X" 2019-03-23 20:01:39 -07:00
Yee Cheng Chin 88443ae876 snapshot-155 2019-02-18 17:04:02 -08:00
Yee Cheng Chin 4943bae84c snapshot-154 2019-02-04 00:51:34 -08:00
Yee Cheng Chin fb49c75b0e snapshot-153 2018-12-13 01:40:50 -08:00
Yee Cheng Chin 0114cc51c0 snapshot-152
Fixed up the binary with the proper asset catalog with Dark Mode tab
colors.
2018-12-05 06:25:52 -08:00
Yee Cheng Chin ffa7051c1a Revert "snapshot-152"
This reverts commit c4967f7800.

Travis CI's build has some weird tabs artifacts.
2018-12-05 05:15:02 -08:00
Yee Cheng Chin c4967f7800 snapshot-152 2018-12-05 05:07:48 -08:00
Kazuki Sakamoto 8ca157a3c8 snapshot-151 2018-08-13 22:37:53 -07:00
Kazuki Sakamoto a4eace222a snapshot-150 2018-08-05 18:59:14 -07:00
Kazuki Sakamoto 0d619d0e74 snapshot-149 2018-06-17 19:40:58 -07:00
Kazuki Sakamoto c63ac12984 snapshot-146 2018-03-24 01:53:48 -07:00
Kazuki Sakamoto 0e51c47db3 snapshot-145 2018-02-17 20:25:10 -08:00
Kazuki Sakamoto eb705c0a08 snapshot-144 2017-12-21 20:02:44 -08:00
Kazuki Sakamoto 68e7f052ac snapshot-143 2017-12-07 08:21:12 -08:00
Kazuki Sakamoto b1a5dc0d4e snapshot-142 2017-11-05 18:50:34 -08:00
Kazuki Sakamoto ff53a554ad snapshot-141 2017-11-03 21:45:16 -07:00
Kazuki Sakamoto e857f2e795 snapshot-140 2017-10-20 20:33:21 -07:00
Kazuki Sakamoto 14df568fb1 snapshot-138 2017-10-04 22:27:59 -07:00
Kazuki Sakamoto 12c7f3b47c snapshot-137 2017-09-12 21:27:41 -07:00
Kazuki Sakamoto 839c2a9322 snapshot-136 2017-08-07 20:33:40 -07:00
Kazuki Sakamoto f9965d86de snapshot-135 2017-07-24 22:11:27 -07:00
Kazuki Sakamoto 85e67db5a8 Revert "snapshot-135"
This reverts commit 3a03956405.
2017-07-24 21:47:47 -07:00
Kazuki Sakamoto 3a03956405 snapshot-135 2017-07-24 20:50:06 -07:00
Kazuki Sakamoto 3b8d18d92e snapshot-134 2017-06-21 23:32:57 -07:00
Kazuki Sakamoto ab502ae107 snapshot-133 2017-05-08 09:49:44 -07:00
Kazuki Sakamoto e0a43e2170 snapshot-132 2017-05-04 20:42:30 -07:00
Kazuki Sakamoto 268341c726 snapshot-131 2017-04-18 22:14:39 -07:00
Kazuki Sakamoto a6f4a725fc snapshot-130 2017-03-30 08:46:53 -07:00
Kazuki Sakamoto c20f1c1407 snapshot-129 2017-03-22 20:59:55 -07:00
Kazuki Sakamoto ece5e9efe3 snapshot-128 2017-03-21 18:54:19 -07:00
Kazuki Sakamoto e9a93f649c snapshot-127 2017-02-15 21:08:56 -08:00
Kazuki Sakamoto e1527c270d snapshot-126 2017-02-03 09:14:18 -08:00
Kazuki Sakamoto 9980a5d31e snapshot-124 2017-01-25 09:05:13 -08:00
Kazuki Sakamoto a606ed9ad0 snapshot-122 2017-01-23 13:37:06 -08:00
Kazuki Sakamoto 23043f1857 snapshot-121 2017-01-11 19:12:38 -08:00
Kazuki Sakamoto 2ff58d67fe snapshot-120 2017-01-03 20:03:51 -08:00
Kazuki Sakamoto e6d0f243be snapshot-119 2016-12-09 00:08:10 -08:00
Kazuki Sakamoto 02ab595c3d snapshot-118 2016-12-07 18:19:24 -08:00
Kazuki Sakamoto 8fffdcb24a snapshot-117 2016-12-01 21:39:28 -08:00
Kazuki Sakamoto 3c4452d38d snapshot-116 2016-11-20 01:23:01 -08:00
Kazuki Sakamoto 6044bba640 snapshot-115 2016-11-17 21:27:38 -08:00
Kazuki Sakamoto 04bb1caaf0 snapshot-114 2016-10-28 23:24:15 -07:00
Kazuki Sakamoto ba7e7be841 snapshot-113 2016-10-22 00:27:33 -07:00
Kazuki Sakamoto 29cc7a3e42 snapshot-112 2016-10-14 21:40:19 -07:00
Kazuki Sakamoto 9608c271e9 snapshot-111 2016-10-09 10:52:59 -07:00
Kazuki Sakamoto d720c39612 Update index.html 2016-09-13 22:06:08 -07:00
Kazuki Sakamoto ba25a8fcf0 snapshot-110 2016-09-13 20:49:23 -07:00
Kazuki Sakamoto 8440e54efa Revert "snapshot-109"
This reverts commit 95bb069fb2.
2016-09-13 07:03:55 -07:00
Kazuki Sakamoto 95bb069fb2 snapshot-109 2016-09-12 23:12:59 -07:00
Kazuki Sakamoto 9916e6bbdb Revert "snapshot-109"
109 might have if_python issue
2016-09-12 22:57:18 -07:00
Kazuki Sakamoto e4b862947e Fix version 2016-09-12 20:51:43 -07:00
Kazuki Sakamoto 94825a34da snapshot-109 2016-09-12 20:46:50 -07:00
Kazuki Sakamoto bf44ab0a1a snapshot-108 2016-09-11 21:22:03 -07:00
Kazuki Sakamoto 0fd8c4f5eb snapshot-107 2016-08-27 19:57:43 -07:00
Kazuki Sakamoto fda04022c6 snapshot-106 2016-08-10 19:37:04 -07:00
Kazuki Sakamoto 9bbd58ee73 snapshot-105 2016-08-05 23:24:28 -07:00
Kazuki Sakamoto 208eb80ec3 snapshot-104 2016-05-17 17:29:24 -07:00
Kazuki Sakamoto c3961e472f snapshot-103 2016-05-04 11:00:24 -07:00
Kazuki Sakamoto 138ac066a9 snapshot-102 2016-04-30 20:50:12 -07:00
Kazuki Sakamoto 536cb9365e snapshot-101 2016-04-03 20:20:50 -07:00
Kazuki Sakamoto 8407829c8b snapshot-100 2016-03-26 00:38:17 -07:00
Kazuki Sakamoto 247684f19c snapshot-99 2016-03-12 21:30:47 -08:00
Kazuki Sakamoto 9c7086198a snapshot-98 2016-03-01 21:33:19 -08:00
Kazuki Sakamoto 65f60bafbf snapshot-97 2016-02-19 23:24:23 -08:00
Kazuki Sakamoto ea1103f323 snapshot-96 2016-02-05 21:52:04 -08:00
Kazuki Sakamoto 1f2319de7b snapshot-95 2016-01-29 22:30:06 -08:00
Kazuki Sakamoto 68d79b6549 snapshot-94 2016-01-20 21:03:59 -08:00
Kazuki Sakamoto cd955e032e snapshot-93 2016-01-17 22:54:48 -08:00
Kazuki Sakamoto f8aeeef2fb snapshot-93 2016-01-17 22:50:03 -08:00
Kazuki Sakamoto a220a19234 snapshot-92 2016-01-17 10:20:53 -08:00
Kazuki Sakamoto af4ffc7a6d snapshot-91 2016-01-16 02:40:35 -08:00
Kazuki Sakamoto c1a78cdb89 Sparkle feed 2016-01-16 02:16:28 -08:00
Kazuki Sakamoto f74c8bab5b s/Macvim/MacVim/g 2015-12-18 08:27:42 -08:00
Kazuki Sakamoto 936e910937 Update index.html 2015-12-18 07:12:20 -08:00
Kazuki Sakamoto 9b97928856 Create gh-pages branch via GitHub 2015-12-18 07:05:09 -08:00
Douglas Drumond 83455f6aa9 Create gh-pages branch via GitHub 2015-07-07 05:40:51 -03:00
Bjorn Winckler c25c055a37 Fix typo in appcast relase notes 2010-08-15 22:24:56 +02:00
Bjorn Winckler 3bd36b3047 Add stable appcast, both points to build 53 2010-08-15 22:21:43 +02:00
Bjorn Winckler 6531a68bc2 Appcast points to version 52.8 2010-08-14 21:09:35 +02:00
Bjorn Winckler 5145cf5030 Appcast points to version 52.7 2010-08-08 23:23:40 +02:00
Bjorn Winckler d5accc8493 Fix corrupt appcast 2010-08-04 19:52:31 +02:00
Bjorn Winckler 0ad40fadfb Appcast points to version 52.6 2010-08-04 19:49:21 +02:00
Bjorn Winckler 4662d59c27 Appcast points to version 52.5 2010-08-01 21:46:17 +02:00
Bjorn Winckler df0d398d4a Appcast points to version 52.4 2010-07-26 00:02:23 +02:00
Bjorn Winckler 4bad2b9e34 Appcast points to version 52.3 2010-07-23 17:20:43 +02:00
Bjorn Winckler 6ea57a2e10 Appcast points to version 52.2 2010-06-09 19:34:40 +02:00
Bjorn Winckler be4dbef5f3 Add 'appcast/unstable73.xml' 2010-06-06 18:57:04 +02:00
Bjorn Winckler c2b026b208 Automatically redirect to Google Code page 2010-06-06 16:02:05 +02:00
Bjorn Winckler 39835384ff Remove some auto-generated stuff from 'index.html' 2010-06-06 15:42:09 +02:00
b4winckler a64a0d33a4 github generated gh-pages branch 2010-06-06 06:31:24 -07:00
7009 changed files with 1510 additions and 2074651 deletions
-52
View File
@@ -1,52 +0,0 @@
version: "{build}"
image: Visual Studio 2015
skip_tags: true
environment:
matrix:
- FEATURE: HUGE
# Alternate environments, not used right now. 2022 is a lot slower.
#
# - job_name: VS-2015
# appveyor_build_worker_image: Visual Studio 2015
# FEATURE: HUGE
# - job_name: VS-2017
# appveyor_build_worker_image: Visual Studio 2017
# FEATURE: HUGE
# - job_name: VS-2019
# appveyor_build_worker_image: Visual Studio 2019
# FEATURE: HUGE
# - job_name: VS-2022
# appveyor_build_worker_image: Visual Studio 2022
# FEATURE: HUGE
# disabled
# - FEATURE: TINY
# - FEATURE: NORMAL
matrix:
fast_finish: true
before_build:
- call ver
- ci\appveyor.bat install
build_script:
- ci\appveyor.bat build
test_script:
- ci\appveyor.bat test
artifacts:
- path: src/vim.exe
name: vim
- path: src/gvim.exe
name: gvim
# vim: sw=2 sts=2 et ts=8 sr
-31
View File
@@ -1,31 +0,0 @@
env:
CIRRUS_CLONE_DEPTH: 3
FEATURES: huge
freebsd_task:
name: FreeBSD
matrix:
- name: FreeBSD 14.2
freebsd_instance:
image_family: freebsd-14-2
timeout_in: 20m
install_script:
- pkg install -y gettext
build_script:
- NPROC=$(getconf _NPROCESSORS_ONLN)
- ./configure --with-features=${FEATURES}
- make -j${NPROC}
test_script:
- src/vim --version
# run tests as user "cirrus" instead of root
- pw useradd cirrus -m
- chown -R cirrus:cirrus .
- sudo -u cirrus make test
on_failure:
test_artifacts:
name: "Cirrus-CI-freebsd-failed-tests"
path: |
runtime/indent/testdir/*.fail
runtime/syntax/testdir/failed/*
src/testdir/failed/*
type: application/octet-stream
-254
View File
@@ -1,254 +0,0 @@
---
Language: Cpp
AccessModifierOffset: -4
AlignAfterOpenBracket: Align
AlignArrayOfStructures: None
AlignConsecutiveAssignments:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveBitFields:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveDeclarations:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveMacros:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCompound: false
AlignFunctionPointers: false
PadOperators: false
AlignConsecutiveShortCaseStatements:
Enabled: false
AcrossEmptyLines: false
AcrossComments: false
AlignCaseColons: false
AlignEscapedNewlines: DontAlign
AlignOperands: Align
AlignTrailingComments:
Kind: Leave
OverEmptyLines: 0
AllowAllArgumentsOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false
AllowBreakBeforeNoexceptSpecifier: Never
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortCompoundRequirementOnASingleLine: true
AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: Never
AllowShortLambdasOnASingleLine: None
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: All
AlwaysBreakAfterReturnType: AllDefinitions
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
BinPackArguments: true
BinPackParameters: false
BitFieldColonSpacing: Both
BraceWrapping:
AfterCaseLabel: true
AfterClass: true
AfterControlStatement: Always
AfterEnum: true
AfterExternBlock: true
AfterFunction: true
AfterNamespace: true
AfterObjCDeclaration: true
AfterStruct: true
AfterUnion: true
BeforeCatch: true
BeforeElse: true
BeforeLambdaBody: false
BeforeWhile: true
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakAdjacentStringLiterals: true
BreakAfterAttributes: Leave
BreakAfterJavaFieldAnnotations: false
BreakArrays: true
BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: Always
BreakBeforeBraces: Custom
BreakBeforeInlineASMColon: OnlyMultiline
BreakBeforeTernaryOperators: true
BreakConstructorInitializers: BeforeColon
BreakInheritanceList: BeforeColon
BreakStringLiterals: true
ColumnLimit: 80
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
DerivePointerAlignment: false
DisableFormat: false
EmptyLineAfterAccessModifier: Never
EmptyLineBeforeAccessModifier: LogicalBlock
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: false
IfMacros:
- KJ_IF_MAYBE
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 2
SortPriority: 0
CaseSensitive: false
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
Priority: 3
SortPriority: 0
CaseSensitive: false
- Regex: '.*'
Priority: 1
SortPriority: 0
CaseSensitive: false
IncludeIsMainRegex: '(Test)?$'
IncludeIsMainSourceRegex: ''
IndentAccessModifiers: false
IndentCaseBlocks: false
IndentCaseLabels: true
IndentExternBlock: AfterExternBlock
IndentGotoLabels: true
IndentPPDirectives: AfterHash
IndentRequiresClause: true
IndentWidth: 4
IndentWrappedFunctionNames: false
InsertBraces: false
InsertNewlineAtEOF: false
InsertTrailingCommas: None
IntegerLiteralSeparator:
Binary: 0
BinaryMinDigits: 0
Decimal: 0
DecimalMinDigits: 0
Hex: 0
HexMinDigits: 0
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
KeepEmptyLinesAtEOF: false
LambdaBodyIndentation: Signature
LineEnding: DeriveLF
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: None
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 4
ObjCBreakBeforeNestedBlockParam: true
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PackConstructorInitializers: BinPack
PenaltyBreakAssignment: 4
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 1000000000
PenaltyBreakFirstLessLess: 120
PenaltyBreakOpenParenthesis: 0
PenaltyBreakScopeResolution: 500
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyIndentedWhitespace: 0
PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Right
PPIndentWidth: 1
QualifierAlignment: Leave
ReferenceAlignment: Pointer
ReflowComments: false
RemoveBracesLLVM: false
RemoveParentheses: Leave
RemoveSemicolon: false
RequiresClausePosition: OwnLine
RequiresExpressionIndentation: OuterScope
SeparateDefinitionBlocks: Leave
ShortNamespaceLines: 1
SkipMacroDefinitionBody: false
SortIncludes: CaseSensitive
SortJavaStaticImport: Before
SortUsingDeclarations: LexicographicNumeric
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceAroundPointerQualifiers: Default
SpaceBeforeAssignmentOperators: true
SpaceBeforeCaseColon: false
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeJsonColon: false
SpaceBeforeParens: ControlStatementsExceptControlMacros
SpaceBeforeRangeBasedForLoopColon: true
SpaceBeforeSquareBrackets: false
SpaceInEmptyBlock: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: Never
SpacesInContainerLiterals: true
SpacesInLineCommentPrefix:
Minimum: 1
Maximum: -1
SpacesInParens: Never
SpacesInParensOptions:
InCStyleCasts: false
InConditionalStatements: false
InEmptyParentheses: false
Other: false
SpacesInSquareBrackets: false
Standard: c++03
TabWidth: 8
UseTab: Never
VerilogBreakBetweenInstancePorts: true
WhitespaceSensitiveMacros:
- BOOST_PP_STRINGIZE
- CF_SWIFT_NAME
- NS_SWIFT_NAME
- PP_STRINGIZE
- STRINGIZE
# Taken from:
# git grep '^#define *FOR_*' src | cut -d':' -f2 | grep -o '[A-Z]*_.*(' \
# | tr -d '(' | LC_ALL=C sort -u
ForEachMacros:
- 'FOR_ALL_AUTOCMD_PATTERNS'
- 'FOR_ALL_BUFFERS'
- 'FOR_ALL_BUFS_FROM_LAST'
- 'FOR_ALL_BUF_WININFO'
- 'FOR_ALL_CHANNELS'
- 'FOR_ALL_CHILD_MENUS'
- 'FOR_ALL_DIFFBLOCKS_IN_TAB'
- 'FOR_ALL_FRAMES'
- 'FOR_ALL_HASHTAB_ITEMS'
- 'FOR_ALL_JOBS'
- 'FOR_ALL_LIST_ITEMS'
- 'FOR_ALL_MENUS'
- 'FOR_ALL_NODE_SIBLINGS'
- 'FOR_ALL_POPUPWINS'
- 'FOR_ALL_POPUPWINS_IN_TAB'
- 'FOR_ALL_QFL_ITEMS'
- 'FOR_ALL_SIGNS'
- 'FOR_ALL_SIGNS_IN_BUF'
- 'FOR_ALL_SPELL_LANGS'
- 'FOR_ALL_SYNSTATES'
- 'FOR_ALL_TABPAGES'
- 'FOR_ALL_TAB_WINDOWS'
- 'FOR_ALL_TERMS'
- 'FOR_ALL_TIMERS'
- 'FOR_ALL_WATCHERS'
- 'FOR_ALL_WINDOWS'
- 'FOR_ALL_WINDOWS_IN_TAB'
...
-14
View File
@@ -1,14 +0,0 @@
coverage:
range: "80...100"
status:
project:
default:
threshold: 0.05%
comment: false
# Files not run by tests
ignore:
- "src/dosinst.c"
- "src/dosinst.h"
- "src/uninstall.c"
-41
View File
@@ -1,41 +0,0 @@
# https://spec.editorconfig.org/#supported-pairs
root = true
[*]
indent_style = tab
tab_width = 8
trim_trailing_whitespace = true
insert_final_newline = true
[*.{c,h,proto}]
indent_size = 4
[src/MacVim/**]
indent_style = space
indent_size = 4
[*.{md,yml,sh,bat}]
# This will become the default after we migrate the codebase
indent_style = space
indent_size = 2
[*.md]
# Markdown uses trailing whitespaces to do an hard line break
# https://spec.commonmark.org/0.31.2/#hard-line-breaks
trim_trailing_whitespace = false
[*.vim]
indent_style = space
indent_size = 2
[runtime/pack/dist/opt/{comment,nohlsearch}/**.vim]
indent_style = space
indent_size = 4
[runtime/doc/**.txt]
# It can mess up some documentation by trying to strip trailing whitespaces
trim_trailing_whitespace = false
[src/testdir/test*.vim]
# Some tests need trailing whitespaces, for example `set showbreak=>>\ `
trim_trailing_whitespace = false
-15
View File
@@ -1,15 +0,0 @@
# When making commits that are strictly formatting/style changes, add the
# commit hash here, so git blame can ignore the change. See docs for more details:
#
# https://git-scm.com/docs/git-config#Documentation/git-config.txt-blameignoreRevsFile
#
# Run this command to always ignore formatting commits in git blame
# git config blame.ignoreRevsFile .git-blame-ignore-revs
# Patch v9.1.0829 expanded tabs to spaces in sound.c
8ce738de3fd7192fa6274730594305cde780074c
# Patch v9.1.0879 reformated sound.c and sign.c
3cf094edaff815141d9941b8dba52b9e77d8dfc1
# change indentation style of netrw plugin
c363ca1ecd1f8db03663ef98dcf41eeacc3c22c7
c673b805ad80d0aef07e745d412a2bf298ba1c07
-1
View File
@@ -1 +0,0 @@
src/testdir/test42.in diff
-2
View File
@@ -1,2 +0,0 @@
github: macvim-dev
open_collective: macvim
-85
View File
@@ -1,85 +0,0 @@
---
name: Bug report
description: Create a report to help us improve MacVim.
labels: [bug]
body:
- type: markdown
attributes:
value: |
Thanks for reporting issues of MacVim!
If you want to report a security issue, instead of reporting it here publicly, please disclose it using the steps listed at https://github.com/macvim-dev/macvim/security/policy.
To make it easier for us to help you please enter detailed information below.
- type: textarea
attributes:
label: Steps to reproduce
placeholder: |
1.
2.
3.
4.
validations:
required: true
- type: textarea
attributes:
label: Expected behaviour
placeholder: A clear and concise description of what you expected to happen.
validations:
required: true
- type: input
attributes:
label: Version of Vim and architecture
description: >
Including patch level, use ":version" to see it [e.g. 8.2.1234, GUI, arm64]
validations:
required: true
- type: textarea
attributes:
label: Environment
description: >
OS and architecture [e.g. Big Sur, arm64], terminal [e.g. Apple Terminal/iTerm], value of $TERM, shell [e.g. zsh 5.8]; anything that might matter
placeholder: |
Operating system:
Terminal:
Value of $TERM:
Shell:
validations:
required: true
- type: input
attributes:
label: How MacVim was installed
description: >
MacVim has been downloaded from GitHub, installed via Homebrew, MacPorts or builed from git
- type: textarea
attributes:
label: Logs and stack traces
placeholder: Insert log or other text here (if necessary)
render: shell
- type: input
attributes:
label: Vim configuration where issue is reproducable
description: 'e.g. link to your vimrc configuration: url to file/gist/repo..'
- type: checkboxes
attributes:
label: Issue has been tested with given configuration
description: This will help us to narrow down the problem more quickly
options:
- label: by running MacVim.app from GUI macOS interface
- label: by running vim/gvim/etc installed by MacVim
- label: by running other versions of vim (e.g. /usr/bin/vim)
- type: checkboxes
attributes:
label: Issue has been tested with no configuration
description: This will help us to narrow down the problem more quickly
options:
- label: by running `mvim --clean` (or `gvim`, supplied by MacVim distribution)
- label: by running `vim --clean` (in terminal, supplied by MacVim distribution)
- label: by running `vim --clean` (in terminal, other suppliers, e.g. /usr/bin/vim)
- type: checkboxes
attributes:
label: Other conditions
description: This will help us to narrow down the problem more quickly
options:
- label: The both Homebrew packages "vim" and "macvim" are installed
-22
View File
@@ -1,22 +0,0 @@
---
name: Feature request
about: Suggest an enhancement for Vim
title: ''
labels: enhancement
---
_Instructions: Replace the template text and remove irrelevant text (including this line)_
**Is your feature request about something that is currently impossible or hard to do? Please describe the problem.**
A clear and concise description of what is hard to do. Ex. It is difficult to [...] when [...]
(If it is related to runtime files, please check their header for where to discuss enhancements.)
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
-682
View File
@@ -1,682 +0,0 @@
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# You can use github users with @user or email addresses
# These owners will be the default owners for everything in the repo.
#* @brammool
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
# will be requested to review.
nsis/lang/russian.nsi @RestorerZ
runtime/autoload/freebasic.vim @dkearns
runtime/autoload/hare.vim @selenebun
runtime/autoload/haskell.vim @alx741
runtime/autoload/hcl.vim @gpanders
runtime/autoload/javascript.vim @jsit
runtime/autoload/modula2.vim @dkearns
runtime/autoload/php.vim @david-szabo97
runtime/autoload/rubycomplete.vim @segfault @dkearns
runtime/autoload/rust.vim @lilyball
runtime/autoload/typst.vim @saccarosium
runtime/autoload/xmlformat.vim @chrisbra
runtime/autoload/dist/json.vim @habamax
runtime/colors/blue.vim @habamax @romainl @neutaaaaan
runtime/colors/darkblue.vim @habamax @romainl @neutaaaaan
runtime/colors/default.vim @habamax @romainl @neutaaaaan
runtime/colors/delek.vim @habamax @romainl @neutaaaaan
runtime/colors/desert.vim @habamax @romainl @neutaaaaan
runtime/colors/elflord.vim @habamax @romainl @neutaaaaan
runtime/colors/evening.vim @habamax @romainl @neutaaaaan
runtime/colors/habamax.vim @habamax @romainl @neutaaaaan
runtime/colors/industry.vim @habamax @romainl @neutaaaaan
runtime/colors/koehler.vim @habamax @romainl @neutaaaaan
runtime/colors/lunaperche.vim @habamax @romainl @neutaaaaan
runtime/colors/morning.vim @habamax @romainl @neutaaaaan
runtime/colors/murphy.vim @habamax @romainl @neutaaaaan
runtime/colors/pablo.vim @habamax @romainl @neutaaaaan
runtime/colors/peachpuff.vim @habamax @romainl @neutaaaaan
runtime/colors/quiet.vim @habamax @romainl @neutaaaaan
runtime/colors/retrobox.vim @habamax @romainl @neutaaaaan
runtime/colors/ron.vim @habamax @romainl @neutaaaaan
runtime/colors/shine.vim @habamax @romainl @neutaaaaan
runtime/colors/slate.vim @habamax @romainl @neutaaaaan
runtime/colors/sorbet.vim @habamax @romainl @neutaaaaan
runtime/colors/tools @habamax @romainl @neutaaaaan
runtime/colors/torte.vim @habamax @romainl @neutaaaaan
runtime/colors/wildcharm.vim @habamax @romainl @neutaaaaan
runtime/colors/zaibatsu.vim @habamax @romainl @neutaaaaan
runtime/colors/zellner.vim @habamax @romainl @neutaaaaan
runtime/compiler/checkstyle.vim @dkearns
runtime/compiler/cm3.vim @dkearns
runtime/compiler/cucumber.vim @tpope
runtime/compiler/dart.vim @dkearns
runtime/compiler/dart2js.vim @dkearns
runtime/compiler/dart2native.vim @dkearns
runtime/compiler/dartanalyser.vim @dkearns
runtime/compiler/dartdevc.vim @dkearns
runtime/compiler/dartdoc.vim @dkearns
runtime/compiler/dartfmt.vim @dkearns
runtime/compiler/dotnet.vim @nickspoons
runtime/compiler/eruby.vim @dkearns
runtime/compiler/fbc.vim @dkearns
runtime/compiler/gawk.vim @dkearns
runtime/compiler/gjs.vim @dkearns
runtime/compiler/gm2.vim @dkearns
runtime/compiler/go.vim @dbarnett
runtime/compiler/groff.vim @Konfekt
runtime/compiler/haml.vim @tpope
runtime/compiler/hare.vim @selenebun
runtime/compiler/icon.vim @dkearns
runtime/compiler/javac.vim @dkearns
runtime/compiler/jest.vim @dkearns
runtime/compiler/jjs.vim @dkearns
runtime/compiler/jshint.vim @dkearns
runtime/compiler/jsonlint.vim @dkearns
runtime/compiler/jq.vim @vito-c
runtime/compiler/lazbuild.vim @dkearns
runtime/compiler/pandoc.vim @Konfekt
runtime/compiler/perl.vim @petdance @heptite
runtime/compiler/perlcritic.vim @petdance @dkearns
runtime/compiler/php.vim @dkearns
runtime/compiler/podchecker.vim @petdance @dkearns
runtime/compiler/powershell.vim @heaths
runtime/compiler/raco.vim @benknoble
runtime/compiler/racomake.vim @benknoble
runtime/compiler/racosetup.vim @benknoble
runtime/compiler/racotest.vim @benknoble
runtime/compiler/rake.vim @tpope @dkearns
runtime/compiler/rhino.vim @dkearns
runtime/compiler/rspec.vim @tpope @dkearns
runtime/compiler/rubocop.vim @dkearns
runtime/compiler/ruby.vim @tpope @dkearns
runtime/compiler/rubyunit.vim @dkearns
runtime/compiler/sass.vim @tpope
runtime/compiler/sdoc.vim @gpanders
runtime/compiler/se.vim @dkearns
runtime/compiler/shellcheck.vim @dkearns
runtime/compiler/sml.vim @dkearns
runtime/compiler/spectral.vim @romainl
runtime/compiler/svelte-check.vim @Konfekt
runtime/compiler/stylelint.vim @dkearns
runtime/compiler/tcl.vim @dkearns
runtime/compiler/tidy.vim @dkearns
runtime/compiler/ts-node.vim @dkearns
runtime/compiler/tsc.vim @dkearns
runtime/compiler/typedoc.vim @dkearns
runtime/compiler/typst.vim @saccarosium
runtime/compiler/xmllint.vim @dkearns
runtime/compiler/xo.vim @dkearns
runtime/compiler/yamllint.vim @romainl
runtime/compiler/zsh.vim @dkearns
runtime/doc/ft_hare.txt @selenebun
runtime/doc/ps1.txt @heaths
runtime/doc/evim-ru.1 @RestorerZ
runtime/doc/evim-ru.UTF-8.1 @RestorerZ
runtime/doc/vim-ru.1 @RestorerZ
runtime/doc/vim-ru.UTF-8.1 @RestorerZ
runtime/doc/vimdiff-ru.1 @RestorerZ
runtime/doc/vimdiff-ru.UTF-8.1 @RestorerZ
runtime/doc/vimtutor-ru.1 @RestorerZ
runtime/doc/vimtutor-ru.UTF-8.1 @RestorerZ
runtime/doc/xxd-ru.1 @RestorerZ
runtime/doc/xxd-ru.UTF-8.1 @RestorerZ
runtime/ftplugin/abaqus.vim @costerwi
runtime/ftplugin/antlr4.vim @jiangyinzuo
runtime/ftplugin/apache.vim @dubgeiser
runtime/ftplugin/arduino.vim @k-takata
runtime/ftplugin/asciidoc.vim @saccarosium
runtime/ftplugin/astro.vim @romainl
runtime/ftplugin/asy.vim @avidseeker
runtime/ftplugin/autohotkey.vim @telemachus
runtime/ftplugin/awk.vim @dkearns
runtime/ftplugin/basic.vim @dkearns
runtime/ftplugin/bst.vim @tpope
runtime/ftplugin/c3.vim @ttytm
runtime/ftplugin/cabal.vim @ribru17
runtime/ftplugin/cedar.vim @ribru17
runtime/ftplugin/cfg.vim @chrisbra
runtime/ftplugin/chatito.vim @ObserverOfTime
runtime/ftplugin/chicken.vim @evhan
runtime/ftplugin/clojure.vim @axvr
runtime/ftplugin/cmakecache.vim @ribru17
runtime/ftplugin/cook.vim @ribru17
runtime/ftplugin/cs.vim @nickspoons
runtime/ftplugin/csh.vim @dkearns
runtime/ftplugin/css.vim @dkearns
runtime/ftplugin/csv.vim @habamax
runtime/ftplugin/cucumber.vim @tpope
runtime/ftplugin/cuda.vim @ribru17
runtime/ftplugin/dart.vim @ribru17
runtime/ftplugin/deb822sources.vim @jamessan
runtime/ftplugin/debchangelog.vim @jamessan
runtime/ftplugin/debcontrol.vim @jamessan
runtime/ftplugin/debsources.vim @jamessan
runtime/ftplugin/desktop.vim @e-kwsm
runtime/ftplugin/dnsmasq.vim @dringsim
runtime/ftplugin/dosbatch.vim @mrdubya
runtime/ftplugin/editorconfig.vim @ribru17
runtime/ftplugin/eiffel.vim @dkearns
runtime/ftplugin/elixir.vim @mhanberg
runtime/ftplugin/erlang.vim @hcs42
runtime/ftplugin/eruby.vim @tpope @dkearns
runtime/ftplugin/expect.vim @dkearns
runtime/ftplugin/exports.vim @mperry2
runtime/ftplugin/fennel.vim @gpanders
runtime/ftplugin/fetchmail.vim @dkearns
runtime/ftplugin/forth.vim @jkotlinski
runtime/ftplugin/fpcmake.vim @dkearns
runtime/ftplugin/freebasic.vim @dkearns
runtime/ftplugin/fstab.vim @rid9
runtime/ftplugin/gdb.vim @xeyownt
runtime/ftplugin/gdscript.vim @habamax
runtime/ftplugin/gdshader.vim @habamax
runtime/ftplugin/git.vim @tpope
runtime/ftplugin/gitattributes.vim @ObserverOfTime
runtime/ftplugin/gitcommit.vim @tpope
runtime/ftplugin/gitconfig.vim @tpope
runtime/ftplugin/gitignore.vim @ObserverOfTime
runtime/ftplugin/gitrebase.vim @tpope
runtime/ftplugin/gitsendemail.vim @tpope
runtime/ftplugin/gleam.vim @trilowy
runtime/ftplugin/go.vim @dbarnett
runtime/ftplugin/goaccess.vim @meonkeys
runtime/ftplugin/gomod.vim @yu-yk
runtime/ftplugin/gprof.vim @dpelle
runtime/ftplugin/graphql.vim @jparise
runtime/ftplugin/gyp.vim @ObserverOfTime
runtime/ftplugin/haml.vim @tpope
runtime/ftplugin/hare.vim @selenebun
runtime/ftplugin/haredoc.vim @selenebun
runtime/ftplugin/heex.vim @cvincent
runtime/ftplugin/hcl.vim @gpanders
runtime/ftplugin/hgcommit.vim @k-takata
runtime/ftplugin/hlsplaylist.vim @avidseeker
runtime/ftplugin/hog.vim @wtfbbqhax
runtime/ftplugin/html.vim @dkearns
runtime/ftplugin/http.vim @ribru17
runtime/ftplugin/hyprlang.vim @ribru17
runtime/ftplugin/i3config.vim @hiqua
runtime/ftplugin/icon.vim @dkearns
runtime/ftplugin/indent.vim @dkearns
runtime/ftplugin/ishd.vim @dkearns
runtime/ftplugin/j.vim @glts
runtime/ftplugin/java.vim @zzzyxwvut
runtime/ftplugin/javacc.vim @ribru17
runtime/ftplugin/javascript.vim @dkearns
runtime/ftplugin/javascriptreact.vim @dkearns
runtime/ftplugin/jjdescription.vim @gpanders
runtime/ftplugin/json.vim @dbarnett
runtime/ftplugin/json5.vim @dkearns
runtime/ftplugin/jsonc.vim @izhakjakov
runtime/ftplugin/julia.vim @carlobaldassi
runtime/ftplugin/just.vim @pbnj
runtime/ftplugin/jq.vim @vito-c
runtime/ftplugin/kconfig.vim @chrisbra
runtime/ftplugin/kdl.vim @imsnif @jiangyinzuo
runtime/ftplugin/kivy.vim @ribru17
runtime/ftplugin/kotlin.vim @udalov
runtime/ftplugin/ldapconf.vim @ribru17
runtime/ftplugin/leo.vim @ribru17
runtime/ftplugin/less.vim @genoma
runtime/ftplugin/lex.vim @ribru17
runtime/ftplugin/liquid.vim @tpope
runtime/ftplugin/lua.vim @dkearns
runtime/ftplugin/lc.vim @ribru17
runtime/ftplugin/lynx.vim @dkearns
runtime/ftplugin/m17ndb.vim @dseomn
runtime/ftplugin/m3build.vim @dkearns
runtime/ftplugin/m3quake.vim @dkearns
runtime/ftplugin/markdown.vim @tpope
runtime/ftplugin/mediawiki.vim @avidseeker
runtime/ftplugin/meson.vim @Liambeguin
runtime/ftplugin/modula2.vim @dkearns
runtime/ftplugin/modula3.vim @dkearns
runtime/ftplugin/mojo.vim @ribru17
runtime/ftplugin/mss.vim @Freed-Wu
runtime/ftplugin/nginx.vim @chr4
runtime/ftplugin/nim.vim @ribru17
runtime/ftplugin/nroff.vim @a-vrma
runtime/ftplugin/nsis.vim @k-takata
runtime/ftplugin/nu.vim @mrcjkb
runtime/ftplugin/octave.vim @dkearns
runtime/ftplugin/ondir.vim @jparise
runtime/ftplugin/opencl.vim @Freed-Wu
runtime/ftplugin/openvpn.vim @ObserverOfTime
runtime/ftplugin/org.vim @saccarosium
runtime/ftplugin/pascal.vim @dkearns
runtime/ftplugin/pbtxt.vim @lakshayg
runtime/ftplugin/pdf.vim @tpope
runtime/ftplugin/perl.vim @petdance @dkearns
runtime/ftplugin/php.vim @dkearns
runtime/ftplugin/plsql.vim @lee-lindley
runtime/ftplugin/pod.vim @petdance @dkearns
runtime/ftplugin/poefilter.vim @ObserverOfTime
runtime/ftplugin/postscr.vim @mrdubya
runtime/ftplugin/prisma.vim @ribru17
runtime/ftplugin/proto.vim @Limero
runtime/ftplugin/ps1.vim @heaths
runtime/ftplugin/ps1xml.vim @heaths
runtime/ftplugin/ptx.vim @jiangyinzuo
runtime/ftplugin/purescript.vim @ribru17
runtime/ftplugin/pymanifest.vim @ObserverOfTime
runtime/ftplugin/python.vim @tpict
runtime/ftplugin/qb64.vim @dkearns
runtime/ftplugin/qml.vim @ChaseKnowlden
runtime/ftplugin/racket.vim @benknoble
runtime/ftplugin/rasi.vim @fymyte
runtime/ftplugin/readline.vim @dkearns
runtime/ftplugin/rescript.vim @ribru17
runtime/ftplugin/routeros.vim @zainin
runtime/ftplugin/rst.vim @marshallward
runtime/ftplugin/ruby.vim @tpope @dkearns
runtime/ftplugin/rust.vim @lilyball
runtime/ftplugin/samba.vim @mperry2
runtime/ftplugin/sass.vim @tpope
runtime/ftplugin/scala.vim @derekwyatt
runtime/ftplugin/scheme.vim @evhan
runtime/ftplugin/scss.vim @tpope
runtime/ftplugin/sdoc.vim @gpanders
runtime/ftplugin/sed.vim @dkearns
runtime/ftplugin/sh.vim @dkearns
runtime/ftplugin/shaderslang.vim @mTvare6
runtime/ftplugin/slint.vim @ribru17
runtime/ftplugin/snakemake.vim @ribru17
runtime/ftplugin/solidity.vim @cothi
runtime/ftplugin/solution.vim @dkearns
runtime/ftplugin/spajson.vim @dseomn
runtime/ftplugin/spec.vim @ignatenkobrain
runtime/ftplugin/squirrel.vim @ribru17
runtime/ftplugin/ssa.vim @ObserverOfTime
runtime/ftplugin/sshdconfig.vim @jiangyinzuo
runtime/ftplugin/svelte.vim @igorlfs
runtime/ftplugin/sway.vim @ribru17
runtime/ftplugin/swayconfig.vim @jamespeapen
runtime/ftplugin/systemverilog.vim @Kocha
runtime/ftplugin/swig.vim @jmarrec
runtime/ftplugin/tap.vim @petdance
runtime/ftplugin/tcsh.vim @dkearns
runtime/ftplugin/tera.vim @MuntasirSZN
runtime/ftplugin/terraform.vim @JannoTjarks
runtime/ftplugin/tf.vim @ribru17
runtime/ftplugin/thrift.vim @jiangyinzuo
runtime/ftplugin/tiasm.vim @Freed-Wu
runtime/ftplugin/tidy.vim @dkearns
runtime/ftplugin/tmux.vim @ericpruitt
runtime/ftplugin/toml.vim @averms
runtime/ftplugin/tt2html.vim @petdance
runtime/ftplugin/typescript.vim @dkearns
runtime/ftplugin/typescriptreact.vim @dkearns
runtime/ftplugin/typst.vim @saccarosium
runtime/ftplugin/unison.vim @chuwy
runtime/ftplugin/v.vim @ribru17
runtime/ftplugin/vdf.vim @ObserverOfTime
runtime/ftplugin/vim.vim @dkearns
runtime/ftplugin/wast.vim @rhysd
runtime/ftplugin/wget.vim @dkearns
runtime/ftplugin/wget2.vim @dkearns
runtime/ftplugin/xcompose.vim @ObserverOfTime
runtime/ftplugin/xml.vim @chrisbra
runtime/ftplugin/xs.vim @petdance
runtime/ftplugin/yacc.vim @ribru17
runtime/ftplugin/zsh.vim @chrisbra
runtime/import/dist/vimhighlight.vim @lacygoill
runtime/indent/arduino.vim @k-takata
runtime/indent/astro.vim @wuelnerdotexe
runtime/indent/basic.vim @dkearns
runtime/indent/bst.vim @tpope
runtime/indent/cdl.vim @dkearns
runtime/indent/chatito.vim @ObserverOfTime
runtime/indent/clojure.vim @axvr
runtime/indent/config.vim @dkearns
runtime/indent/cs.vim @nickspoons
runtime/indent/css.vim @dkearns
runtime/indent/cucumber.vim @tpope
runtime/indent/d.vim @dkearns
runtime/indent/dosbatch.vim @k-takata
runtime/indent/dtd.vim @dkearns
runtime/indent/dylan.vim @dkearns
runtime/indent/eiffel.vim @jocelyn
runtime/indent/elm.vim @andys8
runtime/indent/erlang.vim @hcs42
runtime/indent/eruby.vim @tpope @dkearns
runtime/indent/eterm.vim @dkearns
runtime/indent/falcon.vim @steveno
runtime/indent/framescript.vim @dkearns
runtime/indent/freebasic.vim @dkearns
runtime/indent/gdscript.vim @habamax
runtime/indent/gitconfig.vim @tpope
runtime/indent/gitolite.vim @sitaramc
runtime/indent/glsl.vim @gpanders
runtime/indent/go.vim @dbarnett
runtime/indent/graphql.vim @jparise
runtime/indent/gyp.vim @ObserverOfTime
runtime/indent/haml.vim @tpope
runtime/indent/hare.vim @selenebun
runtime/indent/hcl.vim @gpanders
runtime/indent/hog.vim @wtfbbqhax
runtime/indent/idlang.vim @dkearns
runtime/indent/j.vim @glts
runtime/indent/java.vim @xuhdev
runtime/indent/javascript.vim @bounceme
runtime/indent/json.vim @elzr
runtime/indent/jsonc.vim @izhakjakov
runtime/indent/julia.vim @carlobaldassi
runtime/indent/just.vim @pbnj
runtime/indent/kdl.vim @imsnif @jiangyinzuo
runtime/indent/kotlin.vim @udalov
runtime/indent/krl.vim @KnoP-01
runtime/indent/ld.vim @dkearns
runtime/indent/less.vim @genoma
runtime/indent/liquid.vim @tpope
runtime/indent/lua.vim @marcuscf
runtime/indent/m17ndb.vim @dseomn
runtime/indent/make.vim @dkearns
runtime/indent/meson.vim @Liambeguin
runtime/indent/mma.vim @dkearns
runtime/indent/mojo.vim @ribru17
runtime/indent/nginx.vim @chr4
runtime/indent/nsis.vim @k-takata
runtime/indent/occam.vim @dkearns
runtime/indent/perl.vim @petdance
runtime/indent/php.vim @2072
runtime/indent/postscr.vim @mrdubya
runtime/indent/prolog.vim @dkearns
runtime/indent/proto.vim @Limero
runtime/indent/ps1.vim @heaths
runtime/indent/qb64.vim @dkearns
runtime/indent/qml.vim @ChaseKnowlden
runtime/indent/racket.vim @benknoble
runtime/indent/rapid.vim @KnoP-01
runtime/indent/readline.vim @dkearns
runtime/indent/ruby.vim @AndrewRadev @dkearns
runtime/indent/sass.vim @tpope
runtime/indent/scala.vim @derekwyatt
runtime/indent/scheme.vim @evhan
runtime/indent/scss.vim @tpope
runtime/indent/sh.vim @chrisbra
runtime/indent/solidity.vim @cothi
runtime/indent/spajson.vim @dseomn
runtime/indent/systemverilog.vim @Kocha
runtime/indent/tcl.vim @dkearns
runtime/indent/tcsh.vim @dkearns
runtime/indent/teraterm.vim @k-takata
runtime/indent/terraform.vim @gpanders
runtime/indent/thrift.vim @jiangyinzuo
runtime/indent/typescript.vim @HerringtonDarkholme
runtime/indent/typst.vim @saccarosium
runtime/indent/vroom.vim @dbarnett
runtime/indent/wast.vim @rhysd
runtime/indent/xml.vim @chrisbra
runtime/indent/zsh.vim @chrisbra
runtime/keymap/armenian-eastern_utf-8.vim @blinskey
runtime/keymap/armenian-western_utf-8.vim @blinskey
runtime/keymap/russian-typograph.vim @RestorerZ
runtime/keymap/tamil_tscii.vim @yegappan
runtime/keymap/ukrainian-enhanced.vim @Dolfost
runtime/lang/menu_en_gb.latin1.vim @mrdubya
runtime/lang/menu_ru_ru.cp1251.vim @RestorerZ
runtime/lang/menu_ru_ru.koi8-r.vim @RestorerZ
runtime/lang/menu_ru_ru.utf-8.vim @RestorerZ
runtime/pack/dist/opt/cfilter/plugin/cfilter.vim @yegappan
runtime/pack/dist/opt/comment/ @habamax
runtime/pack/dist/opt/matchit/ @chrisbra
runtime/pack/dist/opt/nohlsearch/ @habamax
runtime/plugin/manpager.vim @Konfekt
runtime/syntax/shared/hgcommitDiff.vim @vegerot
runtime/syntax/abaqus.vim @costerwi
runtime/syntax/abnf.vim @A4-Tacks
runtime/syntax/aidl.vim @dpelle
runtime/syntax/ant.vim @dkearns
runtime/syntax/antlr4.vim @jiangyinzuo
runtime/syntax/arduino.vim @johshoff
runtime/syntax/asciidoc.vim @aerostitch
runtime/syntax/asm.vim @dkearns
runtime/syntax/asmh8300.vim @dkearns
runtime/syntax/asterisk.vim @jaunis
runtime/syntax/astro.vim @wuelnerdotexe
runtime/syntax/asy.vim @avidseeker
runtime/syntax/autohotkey.vim @mmikeww
runtime/syntax/awk.vim @dkearns
runtime/syntax/basic.vim @dkearns
runtime/syntax/bst.vim @tpope
runtime/syntax/bzl.vim @dbarnett
runtime/syntax/bzr.vim @hdima
runtime/syntax/cabal.vim @coot
runtime/syntax/cabalconfig.vim @coot
runtime/syntax/cabalproject.vim @coot
runtime/syntax/cf.vim @ernstvanderlinden
runtime/syntax/chatito.vim @ObserverOfTime
runtime/syntax/chicken.vim @evhan
runtime/syntax/chuck.vim @gacallea
runtime/syntax/clojure.vim @axvr
runtime/syntax/cs.vim @nickspoons
runtime/syntax/csv.vim @habamax
runtime/syntax/cucumber.vim @tpope
runtime/syntax/d.vim @JesseKPhillips
runtime/syntax/dart.vim @pr3d4t0r
runtime/syntax/datascript.vim @dpelle
runtime/syntax/deb822sources.vim @jamessan
runtime/syntax/debchangelog.vim @jamessan
runtime/syntax/debcontrol.vim @jamessan
runtime/syntax/debcopyright.vim @jamessan
runtime/syntax/debsources.vim @jamessan
runtime/syntax/dep3patch.vim @jamessan
runtime/syntax/desktop.vim @e-kwsm
runtime/syntax/dosbatch.vim @mrdubya
runtime/syntax/dosini.vim @xuhdev
runtime/syntax/dot.vim @mmottl
runtime/syntax/doxygen.vim @frogonwheels
runtime/syntax/dtd.vim @chrisbra
runtime/syntax/dts.vim @zonque
runtime/syntax/editorconfig.vim @gpanders
runtime/syntax/eiffel.vim @jocelyn
runtime/syntax/erlang.vim @hcs42
runtime/syntax/eruby.vim @tpope @dkearns
runtime/syntax/expect.vim @dkearns
runtime/syntax/falcon.vim @steveno
runtime/syntax/fennel.vim @gpanders
runtime/syntax/fetchmail.vim @dkearns
runtime/syntax/forth.vim @jkotlinski
runtime/syntax/fpcmake.vim @dkearns
runtime/syntax/freebasic.vim @dkearns
runtime/syntax/fstab.vim @rid9
runtime/syntax/gdresource.vim @habamax
runtime/syntax/gdscript.vim @habamax
runtime/syntax/gdshader.vim @habamax
runtime/syntax/git.vim @tpope
runtime/syntax/gitattributes.vim @ObserverOfTime
runtime/syntax/gitcommit.vim @tpope
runtime/syntax/gitconfig.vim @tpope
runtime/syntax/gitignore.vim @ObserverOfTime
runtime/syntax/gitolite.vim @sitaramc
runtime/syntax/gitrebase.vim @tpope
runtime/syntax/glsl.vim @gpanders
runtime/syntax/go.vim @bhcleek
runtime/syntax/goaccess.vim @meonkeys
runtime/syntax/godoc.vim @dbarnett
runtime/syntax/gp.vim @KBelabas
runtime/syntax/gprof.vim @dpelle
runtime/syntax/graphql.vim @jparise
runtime/syntax/groff.vim @jmarshall
runtime/syntax/gyp.vim @ObserverOfTime
runtime/syntax/haml.vim @tpope
runtime/syntax/hare.vim @selenebun
runtime/syntax/haredoc.vim @selenebun
runtime/syntax/haskell.vim @coot
runtime/syntax/hcl.vim @gpanders
runtime/syntax/help_ru.vim @RestorerZ
runtime/syntax/hgcommit.vim @k-takata
runtime/syntax/hitest.vim @lacygoill
runtime/syntax/hog.vim @wtfbbqhax
runtime/syntax/hollywood.vim @sodero
runtime/syntax/html.vim @dkearns
runtime/syntax/htmlangular.vim @dlvandenberg
runtime/syntax/hyprlang.vim @saccarosium
runtime/syntax/i3config.vim @hiqua
runtime/syntax/icon.vim @dkearns
runtime/syntax/indent.vim @dkearns
runtime/syntax/j.vim @glts
runtime/syntax/jargon.vim @h3xx
runtime/syntax/java.vim @zzzyxwvut
runtime/syntax/javascript.vim @fleiner
runtime/syntax/jinja.vim @gpanders
runtime/syntax/jjdescription.vim @gpanders
runtime/syntax/json.vim @vito-c
runtime/syntax/jsonc.vim @izhakjakov
runtime/syntax/julia.vim @carlobaldassi
runtime/syntax/just.vim @pbnj
runtime/syntax/jq.vim @vito-c
runtime/syntax/karel.vim @kirillmorozov
runtime/syntax/kconfig.vim @chrisbra
runtime/syntax/kivy.vim @prophittcorey
runtime/syntax/kotlin.vim @udalov
runtime/syntax/kdl.vim @imsnif @jiangyinzuo
runtime/syntax/krl.vim @KnoP-01
runtime/syntax/less.vim @genoma
runtime/syntax/lf.vim @andis-sprinkis
runtime/syntax/liquid.vim @tpope
runtime/syntax/lua.vim @marcuscf
runtime/syntax/lyrics.vim @ObserverOfTime
runtime/syntax/lynx.vim @dkearns
runtime/syntax/m17ndb.vim @dseomn
runtime/syntax/m3build.vim @dkearns
runtime/syntax/m3quake.vim @dkearns
runtime/syntax/mailcap.vim @dkearns
runtime/syntax/make.vim @rohieb
runtime/syntax/mallard.vim @jhradilek
runtime/syntax/markdown.vim @tpope
runtime/syntax/mason.vim @petdance
runtime/syntax/mediawiki.vim @avidseeker
runtime/syntax/meson.vim @Liambeguin
runtime/syntax/modula2.vim @dkearns
runtime/syntax/modula2/opt/iso.vim @trijezdci
runtime/syntax/modula2/opt/pim.vim @trijezdci
runtime/syntax/modula2/opt/r10.vim @trijezdci
runtime/syntax/modula3.vim @dkearns
runtime/syntax/mss.vim @Freed-Wu
runtime/syntax/n1ql.vim @pr3d4t0r
runtime/syntax/nginx.vim @chr4
runtime/syntax/ninja.vim @nico
runtime/syntax/nix.vim @equill
runtime/syntax/nroff.vim @jmarshall
runtime/syntax/nsis.vim @k-takata
runtime/syntax/omnimark.vim @kennypete
runtime/syntax/ondir.vim @jparise
runtime/syntax/opencl.vim @Freed-Wu
runtime/syntax/openvpn.vim @ObserverOfTime
runtime/syntax/org.vim @saccarosium
runtime/syntax/pacmanlog.vim @rpigott
runtime/syntax/pascal.vim @dkearns
runtime/syntax/pbtxt.vim @lakshayg
runtime/syntax/pdf.vim @tpope
runtime/syntax/perl.vim @petdance
runtime/syntax/php.vim @TysonAndre
runtime/syntax/plsql.vim @lee-lindley
runtime/syntax/pod.vim @petdance
runtime/syntax/poefilter.vim @ObserverOfTime
runtime/syntax/postscr.vim @mrdubya
runtime/syntax/privoxy.vim @dkearns
runtime/syntax/progress.vim @rdnlsmith
runtime/syntax/prolog.vim @XVilka
runtime/syntax/prql.vim @vanillajonathan
runtime/syntax/ps1.vim @heaths
runtime/syntax/ps1xml.vim @heaths
runtime/syntax/psl.vim @danielkho
runtime/syntax/ptx.vim @jiangyinzuo
runtime/syntax/pymanifest.vim @ObserverOfTime
runtime/syntax/qb64.vim @dkearns
runtime/syntax/qml.vim @ChaseKnowlden
runtime/syntax/racket.vim @benknoble
runtime/syntax/raml.vim @in3d
runtime/syntax/rapid.vim @KnoP-01
runtime/syntax/ratpoison.vim @trapd00r
runtime/syntax/rasi.vim @fymyte
runtime/syntax/rc.vim @chrisbra
runtime/syntax/rcs.vim @hdima
runtime/syntax/rebol.vim @mrdubya
runtime/syntax/rego.vim @zenmatic
runtime/syntax/resolv.vim @rid9
runtime/syntax/rng.vim @jhradilek
runtime/syntax/routeros.vim @zainin
runtime/syntax/rst.vim @marshallward
runtime/syntax/ruby.vim @dkearns
runtime/syntax/salt.vim @gpanders
runtime/syntax/sass.vim @tpope
runtime/syntax/scala.vim @derekwyatt
runtime/syntax/scheme.vim @evhan
runtime/syntax/scss.vim @tpope
runtime/syntax/sdoc.vim @gpanders
runtime/syntax/sed.vim @dkearns
runtime/syntax/shared/debversions.vim @jamessan
runtime/syntax/shaderslang.vim @mTvare6
runtime/syntax/solidity.vim @cothi
runtime/syntax/spajson.vim @dseomn
runtime/syntax/spec.vim @ignatenkobrain
runtime/syntax/sqloracle.vim @chrisbra
runtime/syntax/squirrel.vim @zenmatic
runtime/syntax/srt.vim @ObserverOfTime
runtime/syntax/ssa.vim @ObserverOfTime
runtime/syntax/sshconfig.vim @Jakuje
runtime/syntax/sshdconfig.vim @Jakuje
runtime/syntax/sudoers.vim @e-kwsm
runtime/syntax/svn.vim @hdima
runtime/syntax/swayconfig.vim @jamespeapen
runtime/syntax/swig.vim @jmarrec
runtime/syntax/systemverilog.vim @Kocha
runtime/syntax/tap.vim @petdance
runtime/syntax/tcsh.vim @dkearns
runtime/syntax/tera.vim @MuntasirSZN
runtime/syntax/teraterm.vim @k-takata
runtime/syntax/terraform.vim @gpanders
runtime/syntax/thrift.vim @jiangyinzuo
runtime/syntax/tiasm.vim @Freed-Wu
runtime/syntax/tidy.vim @dkearns
runtime/syntax/tmux.vim @ericpruitt
runtime/syntax/toml.vim @averms
runtime/syntax/tt2.vim @petdance
runtime/syntax/tt2html.vim @petdance
runtime/syntax/tt2js.vim @petdance
runtime/syntax/typescript.vim @HerringtonDarkholme @rhysd
runtime/syntax/typescriptreact.vim @HerringtonDarkholme @rhysd
runtime/syntax/typst.vim @gpanders
runtime/syntax/shared/typescriptcommon.vim @HerringtonDarkholme @rhysd
runtime/syntax/unison.vim @chuwy
runtime/syntax/vdf.vim @ObserverOfTime
runtime/syntax/vroom.vim @dbarnett
runtime/syntax/wast.vim @rhysd
runtime/syntax/wdl.vim @zenmatic
runtime/syntax/wget.vim @dkearns
runtime/syntax/wget2.vim @dkearns
runtime/syntax/xbl.vim @dkearns
runtime/syntax/xcompose.vim @ObserverOfTime
runtime/syntax/xml.vim @chrisbra
runtime/syntax/xs.vim @petdance
runtime/syntax/xslt.vim @Boobies
runtime/syntax/zserio.vim @dpelle
runtime/syntax/zsh.vim @chrisbra
runtime/tutor/tutor.eo @dpelle
runtime/tutor/tutor.eo.utf-8 @dpelle
runtime/tutor/tutor.fr @dpelle
runtime/tutor/tutor.fr.utf-8 @dpelle
runtime/tutor/tutor.ru @RestorerZ
runtime/tutor/tutor.ru.cp1251 @RestorerZ
runtime/tutor/tutor.ru.utf-8 @RestorerZ
src/iscygpty.* @k-takata
src/libvterm/ @leonerd
src/po/am.po @gagikh
src/po/ca.po @nfdisco
src/po/de.po @chrisbra
src/po/eo.po @dpelle
src/po/es.po @victorhck
src/po/fi.po @flammie
src/po/fr.po @dpelle
src/po/ga.po @kscanne
src/po/it.po @azc100
src/po/ja.po @k-takata
src/po/ru.po @RestorerZ
src/po/sr.po @eevan78
src/po/tr.po @bitigchi
src/po/uk.po @sakhnik
src/xxd/ @jnweiger
-5
View File
@@ -1,5 +0,0 @@
# Security Policy
**Please do not report security vulnerabilities through public GitHub issues.**
To report a security vulnerability for MacVim, please either email security@macvim.org, or visit https://github.com/macvim-dev/macvim/security/advisories/new.
-27
View File
@@ -1,27 +0,0 @@
name: 'test_artifacts'
description: "Upload failed test artifacts"
runs:
using: "composite"
steps:
- name: Upload failed tests
uses: actions/upload-artifact@v4
with:
# Name of the artifact to upload.
name: ${{ github.workflow }}-${{ github.job }}-${{ join(matrix.*, '-') }}-failed-tests
# A file, directory or wildcard pattern that describes what
# to upload.
path: |
${{ github.workspace }}/runtime/indent/testdir/*.fail
${{ github.workspace }}/runtime/syntax/testdir/failed/*
${{ github.workspace }}/src/testdir/failed/*
# The desired behavior if no files are found using the
# provided path.
if-no-files-found: ignore
# Duration after which artifact will expire in days. 0 means
# using repository settings.
retention-days: 0
# If true, an artifact with a matching name will be deleted
overwrite: true
@@ -1,26 +0,0 @@
# This is a clone of test_artifacts for MacVim-specific files
name: 'test_macvim_artifacts'
description: "Upload failed MacVim test artifacts"
runs:
using: "composite"
steps:
- name: Upload failed tests
uses: actions/upload-artifact@v4
with:
# Name of the artifact to upload.
name: ${{ github.workflow }}-${{ github.job }}-${{ join(matrix.*, '-') }}-failed-macvim-tests
# A file, directory or wildcard pattern that describes what
# to upload.
path: |
/Users/runner/Library/Developer/Xcode/DerivedData/MacVim-*/Logs/Test/*.xcresult
# The desired behavior if no files are found using the
# provided path.
if-no-files-found: ignore
# Duration after which artifact will expire in days. 0 means
# using repository settings.
retention-days: 0
# If true, an artifact with a matching name will be deleted
overwrite: true
@@ -1,95 +0,0 @@
name: Universal package
description: Create universal Homebrew package which contains x86_64 and arm64
# Instead of using the default binary installed by Homebrew, we need to build our own because third-party libraries are
# statically linked in MacVim, and need to be built against MACOSX_DEPLOYMENT_TARGET to ensure the built binary will
# work on supported macOS versions. Another reason for building our own custom package is to build a unviersal binary
# that has both x86_64 and arm64 arch, as Homebrew's distributed bottles are thin binaries with only one arch.
#
# We still use Homebrew to manage the library because their formulas are up to date and have correct build instructions
# that will work. This way we don't have to manually configuring and building and updating the package info.
inputs:
formula:
description: Formura name
required: true
contents:
description: Path for contents in package's keg
required: true
runs:
using: 'composite'
steps:
- name: Set up formula
id: setup-formula
shell: bash
run: |
echo '::group::Set up formula'
set -o pipefail
formula=${{ inputs.formula }}
# Need to make sure we get the latest before patching. Otherwise Homebrew may later try to get the latest
# version and stomp what we have here.
brew update
# Patch the official Homebrew formula to explicitly build for min deployment target and a universal binary. We
# also need to explicitly use system Clang because Homebrew's bundled clang script tries to inject -march
# compiler flags that will cause universal builds to fail as Clang does not like that.
brew cat ${formula} | \
sed '/^[[:blank:]]*def install$/a\'$'\n ENV["MACOSX_DEPLOYMENT_TARGET"] = "'${MACOSX_DEPLOYMENT_TARGET}$'"\n' | \
sed '/^[[:blank:]]*def install$/a\'$'\n ENV["CC"] = "/usr/bin/clang"\n' | \
sed '/^[[:blank:]]*def install$/a\'$'\n ENV["CFLAGS"] = "-arch x86_64 -arch arm64"\n' | \
sed '/^[[:blank:]]*def install$/a\'$'\n ENV["LDFLAGS"] = "-arch x86_64 -arch arm64"\n' >${formula}.rb
# Uninstall the already installed formula because we want to build our own
brew uninstall --ignore-dependencies ${formula} || true
# Extract Xcode version to serve as part of the key for caching
xcode_version=$(xcodebuild -version | tail -1 | sed -E 's/Build version (.*)/\1/')
echo "xcode_version=$xcode_version" >> $GITHUB_OUTPUT
# Find Homebrew's install location which could be /usr/local or /opt/homebrew
brew_prefix=$(brew --prefix)
echo "brew_prefix=$brew_prefix" >> $GITHUB_OUTPUT
echo '::endgroup::'
- name: Cache keg
id: cache-keg
uses: actions/cache@v4
with:
path: ${{ steps.setup-formula.outputs.brew_prefix }}/Cellar/${{ inputs.formula }}
key: ${{ inputs.formula }}-homebrew-cache-custom-unified-prefix${{ steps.setup-formula.outputs.brew_prefix }}-xcode${{ steps.setup-formula.outputs.xcode_version }}-${{ hashFiles(format('{0}.rb', inputs.formula)) }}
- name: Install formula
shell: bash
run: |
echo '::group::Install formula'
formula=${{ inputs.formula }}
# We don't want brew to go upgrade all our dependents for now. They are
# time consuming and sometimes cause problems with the CI environment
# where they fail to link in random binaries (e.g. Python's 2to3),
# which cause brew install to return non-zero and fail the build.
export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
# This will be a no-op if formula was cached. We check if the package
# exists first just to avoid an "already installed" warning.
brew list ${formula} &>/dev/null || brew install --quiet --formula -s ./${formula}.rb
# If formula was cached, this step is necessary to relink it to brew prefix (e.g. /usr/local)
brew unlink ${formula} && brew link ${formula}
echo '::endgroup::'
echo '::group::Verify built version'
contents=($(IFS=,; for x in ${{ inputs.contents }}; do echo ${x}; done))
for content in "${contents[@]}"; do
# Print out the archs and verify they are universal fat binary.
lipo -info $(brew --prefix)/${content} | grep 'x86_64 arm64'
# Make sure deployment target is correct. Later macOS versions have a different binary format (just search for
# "minos") but for 10.13 we need to look for LC_VERSION_MIN_MACOSX.
otool -l $(brew --prefix)/${content} | grep -A 2 LC_VERSION_MIN_MACOSX | tail -1 | grep "${MACOSX_DEPLOYMENT_TARGET}"
done
echo '::endgroup::'
-8
View File
@@ -1,8 +0,0 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
commit-message:
prefix: "CI"
-155
View File
@@ -1,155 +0,0 @@
# list of labels and minimatch globs to match to apply the label.
CI:
- all:
- changed-files:
- any-glob-to-any-file:
- '.cirrus.yml'
- '.github/dependabot.yml'
- '.github/labeler.yml'
- '.github/workflows/*'
- '.appveyor.yml'
- '.codecov.yml'
documentation:
- all:
- changed-files:
- any-glob-to-all-files:
- '*/doc/*'
translation:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/po/*.po'
if_lua:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/if_lua.c'
- 'src/proto/if_lua.pro'
- 'runtime/doc/if_lua.txt'
if_mzscheme:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/if_mzsch.c'
- 'src/if_mzsch.h'
- 'src/proto/if_mzsch.pro'
- 'runtime/doc/if_mzsch.txt'
if_perl:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/if_perl.xs'
- 'src/if_perlsfio.c'
- 'src/proto/if_perl.pro'
- 'src/proto/if_perlsfio.pro'
- 'runtime/doc/if_perl.txt'
if_python:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/if_py_both.h'
- 'runtime/doc/if_pyth.txt'
- 'src/if_python.c'
- 'src/if_python3.c'
- 'src/proto/if_python.pro'
- 'src/proto/if_python3.pro'
if_ruby:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/if_ruby.c'
- 'src/proto/if_ruby.pro'
- 'runtime/doc/if_ruby.txt'
if_tcl:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/if_tcl.c'
- 'src/proto/if_tcl.pro'
- 'runtime/doc/if_tcl.txt'
installer:
- all:
- changed-files:
- any-glob-to-any-file:
- 'nsis/**'
- 'src/dosinst.*'
- 'src/uninstall.c'
platform-mac:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/INSTALLmac.txt'
- 'src/os_mac*'
- 'src/proto/os_mac*'
platform-windows:
- all:
- changed-files:
- any-glob-to-any-file:
- 'nsis/**'
- 'src/*.bat'
- 'src/*.bmp'
- 'src/*.ico'
- 'src/GvimExt/*'
- 'src/INSTALLpc.txt'
- 'src/Make_cyg*.mak'
- 'src/Make_ming.mak'
- 'src/Make_mvc.mak'
- 'src/dosinst.*'
- 'src/gui_dwrite.*'
- 'src/gui_w32*'
- 'src/if_ole.*'
- 'src/iid_ole.c'
- 'src/os_mswin*'
- 'src/os_w32*'
- 'src/os_win32.*'
- 'src/proto/gui_w32.pro'
- 'src/proto/os_mswin.pro'
- 'src/proto/os_win32.pro'
- 'src/proto/winclip.pro'
- 'src/uninstall.c'
- 'src/vim.manifest'
- 'src/vim.rc'
- 'src/vimrun.c'
- 'src/winclip.c'
- 'src/xpm/**'
- 'src/xpm_w32.*'
runtime:
- all:
- changed-files:
- any-glob-to-any-file:
- 'runtime/ftplugin'
- 'runtime/syntax'
- 'runtime/indent'
- 'runtime/pack/dist/opt/termdebug/plugin/termdebug.vim'
termdebug:
- all:
- changed-files:
- any-glob-to-any-file:
- 'runtime/pack/dist/opt/termdebug/plugin/termdebug.vim'
plugin-netrw:
- all:
- changed-files:
- any-glob-to-any-file:
- 'runtime/plugin/netrwPlugin.vim'
- 'runtime/autoload/netrw*'
xxd:
- all:
- changed-files:
- any-glob-to-any-file:
- 'src/xxd/*'
-7
View File
@@ -1,7 +0,0 @@
# Customize GitHub release notes generation. This is only used for pre-release builds for now as
# main releases have hand-written release notes.
changelog:
exclude:
labels:
- dependencies
- Non User Facing
-60
View File
@@ -1,60 +0,0 @@
name: MacVim GitHub CI
# Main CI workflow for MacVim. Will build and test MacVim on different platforms.
on:
push:
pull_request:
# Cancels all previous workflow runs for pull requests that have not completed.
concurrency:
# The concurrency group contains the workflow name and the branch name for
# pull requests or the commit hash for any other events.
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
jobs:
# Builds and test MacVim
build-and-test:
strategy:
fail-fast: false
matrix:
include:
# Self-hosted runner with old enough software (Xcode 14.0.1) to be
# able to make legacy builds. We only run this when making a full
# release build.
- os: macos-13-xcode14-self-hosted
publish: true
publish_postfix: '_10.9'
skip: ${{ ! startswith(github.ref, 'refs/tags/release') }}
legacy: true
- os: macos-13
xcode: '15.2'
testgui: true
extra: [vimtags, check-xcodeproj-compat]
# Below runners use Apple Silicon.
- os: macos-14
xcode: '15.4'
testgui: false
# Most up to date OS and Xcode. Used to publish release for the main build.
- os: macos-15
xcode: '16.2'
testgui: true
publish: true
optimized: true
uses: ./.github/workflows/macvim-buildtest.yaml
with:
skip: ${{ matrix.skip && true || false }}
os: ${{ matrix.os }}
legacy: ${{ matrix.legacy && true || false }}
xcode: ${{ matrix.xcode }}
testgui: ${{ matrix.testgui && true || false }}
publish: ${{ matrix.publish && true || false }}
publish_postfix: ${{ matrix.publish_postfix }}
optimized: ${{ matrix.optimized && true || false }}
vimtags: ${{ contains(matrix.extra, 'vimtags') }}
check-xcodeproj-compat: ${{ contains(matrix.extra, 'check-xcodeproj-compat') }}
-76
View File
@@ -1,76 +0,0 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
name: "CodeQL"
on:
push:
branches: [master]
pull_request:
# The branches below must be a subset of the branches above
branches: [master]
schedule:
- cron: '0 18 * * 1'
# Cancels all previous workflow runs for pull requests that have not completed.
concurrency:
# The concurrency group contains the workflow name and the branch name for
# pull requests or the commit hash for any other events.
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }}
cancel-in-progress: true
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
analyze:
permissions:
contents: read # to fetch code (actions/checkout)
security-events: write # (github/codeql-action/autobuild)
name: Analyze
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Override automatic language detection by changing the below list
# Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
language: ['cpp', 'python']
# Learn more...
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
steps:
- name: Checkout repository from github
uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v3
# ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
-86
View File
@@ -1,86 +0,0 @@
name: Coverity
on:
schedule:
- cron: '42 0 * * *' # Run once per day, to avoid Coverity's submission limits
workflow_dispatch:
permissions:
contents: read # to fetch code (actions/checkout)
jobs:
scan:
runs-on: ubuntu-22.04
env:
CC: gcc
DEBIAN_FRONTEND: noninteractive
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
steps:
- name: Checkout repository from github
if: env.TOKEN
uses: actions/checkout@v4
- name: Download Coverity
if: env.TOKEN
run: |
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=vim" -O coverity_tool.tgz
mkdir cov-scan
tar ax -f coverity_tool.tgz --strip-components=1 -C cov-scan
- name: Install packages
if: env.TOKEN
run: |
sudo apt-get update && sudo apt-get install -y \
autoconf \
gettext \
libcanberra-dev \
libperl-dev \
python2-dev \
python3-dev \
liblua5.4-dev \
lua5.4 \
ruby-dev \
tcl-dev \
libgtk2.0-dev \
desktop-file-utils \
libtool-bin \
libsodium-dev
- name: Set up environment
if: env.TOKEN
run: |
echo "$(pwd)/cov-scan/bin" >> $GITHUB_PATH
(
echo "NPROC=$(getconf _NPROCESSORS_ONLN)"
echo "CONFOPT=--enable-perlinterp --enable-pythoninterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
) >> $GITHUB_ENV
- name: Configure
if: env.TOKEN
run: |
./configure --with-features=huge ${CONFOPT} --enable-fail-if-missing
# Append various warning flags to CFLAGS.
sed -i -f ci/config.mk.sed src/auto/config.mk
sed -i -f ci/config.mk.${CC}.sed src/auto/config.mk
# -O2 gives false warning and turns it into an error:
# warning: function may return address of local variable [-Wreturn-local-addr]
sed -i 's/-O2 \?//' src/auto/config.mk
- name: Build/scan vim
if: env.TOKEN
run: |
cov-build --dir cov-int make -j${NPROC}
- name: Submit results
if: env.TOKEN
run: |
tar zcf cov-scan.tgz cov-int
curl --form token=$TOKEN \
--form email=$EMAIL \
--form file=@cov-scan.tgz \
--form version="$(git rev-parse HEAD)" \
--form description="Automatic GHA scan" \
'https://scan.coverity.com/builds?project=vim'
env:
EMAIL: ${{ secrets.COVERITY_SCAN_EMAIL }}
-22
View File
@@ -1,22 +0,0 @@
# This workflow will triage pull requests and apply a label based on the
# paths that are modified in the pull request.
#
# To use this workflow, you will need to set up a .github/labeler.yml
# file with configuration. For more information, see:
# https://github.com/actions/labeler
name: Labeler
on: [pull_request_target]
jobs:
label:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- uses: actions/labeler@v5
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
-418
View File
@@ -1,418 +0,0 @@
name: MacVim Build and Test
# Child workflow to be called by other workflows for building/testing MacVim
on:
workflow_call:
inputs:
skip:
type: boolean
os:
type: string
legacy:
type: boolean
xcode:
type: string
testgui:
type: boolean
publish:
type: boolean
publish_postfix:
type: string
optimized:
type: boolean
vimtags:
type: boolean
check-xcodeproj-compat:
type: boolean
env:
MACOSX_DEPLOYMENT_TARGET: '10.13'
MACOSX_DEPLOYMENT_TARGET_LEGACY: '10.9'
MACVIM_ARCHS: "x86_64 arm64" # Universal app for Intel/Apple Silicon
MACVIM_ARCHS_LEGACY: "x86_64 arm64" # Build universal for legacy too, mostly just to make building/testing on Apple Silicon CI work. In reality all Apple Silicon Macs shoud use non-legacy.
CC: clang
MAKE_BUILD_ARGS: LINK_AS_NEEDED=yes # In macOS we never over-specify link dependencies and we already check against external deps in smoketest. With LTO, linking takes a while, so we want to avoid using link.sh.
vi_cv_path_python: /Library/Frameworks/Python.framework/Versions/2.7/bin/python
vi_cv_path_python3: "%s/bin/python3"
vi_cv_path_plain_lua: "%s/bin/lua"
vi_cv_path_ruby: "%s/opt/ruby/bin/ruby"
vi_cv_dll_name_perl: /System/Library/Perl/%s/darwin-thread-multi-2level/CORE/libperl.dylib
vi_cv_dll_name_python: /Library/Frameworks/Python.framework/Versions/2.7/Python
vi_cv_dll_name_python3: /usr/local/Frameworks/Python.framework/Versions/Current/Python
vi_cv_dll_name_python3_arm64: /opt/homebrew/Frameworks/Python.framework/Versions/Current/Python
vi_cv_dll_name_ruby: /usr/local/opt/ruby/lib/libruby.dylib
vi_cv_dll_name_ruby_arm64: /opt/homebrew/opt/ruby/lib/libruby.dylib
vi_cv_dll_name_lua: /usr/local/lib/liblua.dylib
vi_cv_dll_name_lua_arm64: /opt/homebrew/lib/liblua.dylib
MACVIM_APP: src/MacVim/build/Release/MacVim.app
VIM_BIN: src/MacVim/build/Release/MacVim.app/Contents/MacOS/Vim
MACVIM_BIN: src/MacVim/build/Release/MacVim.app/Contents/MacOS/MacVim
TERM: xterm
BASH_SILENCE_DEPRECATION_WARNING: 1
jobs:
# Builds and test MacVim
build-and-test:
if: ${{ !inputs.skip }}
runs-on: ${{ inputs.os }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up legacy build
if: inputs.legacy
run: |
# Set the correct build env vars to target the correct architectures and min OS targets.
echo "MACOSX_DEPLOYMENT_TARGET=$MACOSX_DEPLOYMENT_TARGET_LEGACY" >> $GITHUB_ENV
echo "MACVIM_ARCHS=$MACVIM_ARCHS_LEGACY" >> $GITHUB_ENV
# Use Sparkle 1 because Sparkle 2 requires newer OS version than our legacy build.
# Later, we pass the --enable-sparkle_1 flag to configure to set the corresponding ifdef.
ln -fhs Sparkle_1.framework src/MacVim/Sparkle.framework
# Sparkle shows a dialog asking if the user wants to check for updates on 2nd launch of
# MacVim. On Sparkle 1 this is annoyingly a modal dialog box and interferes with tests.
# Just disable it by pre-setting to not check for updates.
defaults write org.vim.MacVim SUEnableAutomaticChecks 0
- name: Set up Xcode
if: inputs.xcode != ''
run: |
sudo xcode-select -s /Applications/Xcode_${{ inputs.xcode }}.app/Contents/Developer
xcode-select -p
xcodebuild -version
# Set up, install, and cache gettext library for localization.
- name: Set up gettext
if: inputs.publish
uses: ./.github/actions/universal-package
with:
formula: gettext
contents: lib/libintl.a,lib/libintl.dylib
# Set up, install, and cache libsodium library for encryption.
- name: Set up libsodium
if: inputs.publish
uses: ./.github/actions/universal-package
with:
formula: libsodium
contents: lib/libsodium.a,lib/libsodium.dylib
# Set up remaining packages and tools
- name: Install packages
run: |
brew install --quiet libtool
- name: Install packages for testing
run: |
# Apple diff is broken. Use GNU diff instead. See http://github.com/vim/vim/issues/14056.
brew install --quiet diffutils
# Cache Python 2 to avoid downloading the installer every time. This cache shouldn't change
# over time as Python 2.7 is legacy. Can't directly cache to
# /Library/Frameworks/Python.framework due to permission issues.
#
# Note: Legacy self-hosted runner already has this installed and doesn't need this.
- name: Cache Python 2
if: inputs.publish && !inputs.legacy
uses: actions/cache@v4
with:
path: python27-cache
key: ${{ inputs.os }}-python27
- name: Install scripting runtimes
if: inputs.publish
run: |
# We no longer need to install/update Python 3, as it's guaranteed to
# be installed on runners. Since we use stable ABI, the exact version
# on CI does not matter.
brew install --quiet ruby
brew install --quiet lua
if [[ -d $(brew --prefix)/Cellar/perl ]]; then
# We just use system perl to reduce dependencies
brew unlink perl
fi
echo "vi_cv_path_python3=$(printf $vi_cv_path_python3 $(brew --prefix))" >> $GITHUB_ENV
echo "vi_cv_path_plain_lua=$(printf $vi_cv_path_plain_lua $(brew --prefix))" >> $GITHUB_ENV
echo "vi_cv_path_ruby=$(printf $vi_cv_path_ruby $(brew --prefix))" >> $GITHUB_ENV
# With Perl, we need to manually specify the version number because the dylib path depends on it.
export PERL_VERSION=$(perl -e 'print $^V =~ s/v(\d\.\d+).*/\1/r')
echo "vi_cv_dll_name_perl=$(printf $vi_cv_dll_name_perl $PERL_VERSION)" >> $GITHUB_ENV
# New runner images (macos-13) no longer have Python2 installed. We
# need to install Python2 manually. Installing from the official
# installer is the easiest way as Homebrew no longer ships python@2
# and this way does not invole manual building from source. We
# mostly only need the headers to build a dynamic build anyway.
#
# This will be removed in the future as Python2 has been completely
# unsupported for years.
if [ -d /Library/Frameworks/Python.framework/Versions/2.7 ]; then
echo "Python 2.7 already installed"
elif [ -d python27-cache ]; then
sudo cp -R python27-cache /Library/Frameworks/Python.framework/Versions/2.7
else
curl https://www.python.org/ftp/python/2.7.18/python-2.7.18-macosx10.9.pkg -o ~/Downloads/python-2.7.18-macosx10.9.pkg
sudo installer -pkg ~/Downloads/python-2.7.18-macosx10.9.pkg -target /
cp -R /Library/Frameworks/Python.framework/Versions/2.7 python27-cache # Allow this to be cached
fi
# All set up steps are done. Build and test MacVim below.
- name: Configure
run: |
set -o verbose
CONFOPT=(
--with-local-dir=$(brew --prefix)
--with-features=huge
--enable-netbeans
--with-tlib=ncurses
--enable-cscope
--enable-gui=macvim
--with-compiledby="GitHub Actions"
)
if ${{ inputs.publish == true }}; then
CONFOPT+=(
--enable-perlinterp=dynamic
--enable-pythoninterp=dynamic
--enable-python3interp=dynamic
--with-python3-stable-abi=3.9 # macOS and Xcode currently ships 3.9, so we don't want go higher than that.
--enable-rubyinterp=dynamic
--enable-luainterp=dynamic
--with-lua-prefix=$(brew --prefix)
--with-macarchs="$MACVIM_ARCHS"
)
else
CONFOPT+=(
--disable-sparkle # Disable Sparkle for testing that this flag builds and works
--enable-nls=no --enable-libsodium=no # Disable gettext and libsodium unless we built them ourselves for publish
)
fi
if ${{ inputs.legacy == true }}; then
CONFOPT+=(
--enable-sparkle_1
)
fi
echo "CONFOPT: ${CONFOPT[@]}"
./configure "${CONFOPT[@]}" --enable-fail-if-missing
sed -i.bak -f ci/config.mk.sed -f ci/config.mk.clang.sed -f ci/config.mk.xcode.sed src/auto/config.mk
if clang --version | grep -qs '^Apple clang version \(1[3-9]\|[2-9]\d\)\.'; then
sed -i.bak -f ci/config.mk.clang-12.sed src/auto/config.mk
fi
if ${{ inputs.optimized == true }}; then
# Additional optimizations like link-time optimizations that are a bit slower to build.
sed -i.bak -f ci/config.mk.optimized.sed src/auto/config.mk
fi
- name: Modify configure result
if: inputs.publish
run: |
set -o verbose
# Ruby is keg-only in Homebrew, so need to manually link in the path so Vim will know where to look for the binaries.
perl -p -i -e "s#(?<=-DDYNAMIC_RUBY_DLL=\\\\\").*?(?=\\\\\")#${vi_cv_dll_name_ruby}#" src/auto/config.mk
grep -q -- "-DDYNAMIC_PERL_DLL=\\\\\"${vi_cv_dll_name_perl}\\\\\"" src/auto/config.mk
grep -q -- "-DDYNAMIC_PYTHON_DLL=\\\\\"${vi_cv_dll_name_python}\\\\\"" src/auto/config.mk
grep -q -- "-DDYNAMIC_PYTHON3_DLL=\\\\\"${vi_cv_dll_name_python3}\\\\\"" src/auto/config.mk
grep -q -- "-DDYNAMIC_RUBY_DLL=\\\\\"${vi_cv_dll_name_ruby}\\\\\"" src/auto/config.mk
# Also search for the arm64 overrides for the default library locations, which are different from x86_64
# because Homebrew puts them at a different place.
grep -q -- "-DDYNAMIC_PYTHON3_DLL_ARM64=\\\\\"${vi_cv_dll_name_python3_arm64}\\\\\"" src/auto/config.mk
grep -q -- "-DDYNAMIC_RUBY_DLL_ARM64=\\\\\"${vi_cv_dll_name_ruby_arm64}\\\\\"" src/auto/config.mk
grep -q -- "-DDYNAMIC_LUA_DLL_ARM64=\\\\\"${vi_cv_dll_name_lua_arm64}\\\\\"" src/auto/config.mk
- name: Show configure output
run: |
cat src/auto/config.mk
cat src/auto/config.h
- name: Build
env:
LC_ALL: C
run: |
NPROC=$(getconf _NPROCESSORS_ONLN)
echo "Building MacVim with ${NPROC} cores"
set -o verbose
make ${MAKE_BUILD_ARGS} -j${NPROC}
- name: Check version
run: |
${VIM_BIN} --version
${VIM_BIN} -u NONE -i NONE --not-a-term -esNX -V1 -c 'echo "\nprof_nsec:" .. has("prof_nsec") .. "\n"' -c quit
${VIM_BIN} -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-1.vim -c quit
${VIM_BIN} -u NONE -i NONE --not-a-term -esNX -V1 -S ci/if_ver-2.vim -c quit
- name: Smoketest
run: |
set -o verbose
# Make sure there isn't any dynamic linkage to third-party dependencies in the built binary, as we should only use
# static linkage to avoid dependency hell. Test that all those dylib's are in /usr/lib which is bundled with macOS and not third-party.
if otool -L ${VIM_BIN} | grep '\.dylib\s' | grep -v '^\s*/usr/lib/'; then
echo 'Found external dynamic linkage!'; false
fi
# Make sure that --disable-sparkle flag will properly exclude all references to Sparkle symbols. This is
# necessary because we still use weak linking to Sparkle when that flag is set and so references to Sparkle
# wouldn't fail the build (we just remove Sparkle.framework from the built app after the fact).
if ${{ inputs.publish == false }}; then
# Currently we pass --disable-sparkle flag when publish==false
if objdump -t ${MACVIM_BIN} | grep "_SPU\|_SUUpdate"; then
echo 'Found references to Sparkle even when using --disable-sparkle'; false
fi
fi
# Make sure man pages were bundled
man -M `pwd`/${MACVIM_APP}/Contents/man -w mvim
# Make sure xxd was bundled
echo "AB" | ${MACVIM_APP}/Contents/bin/xxd | grep "4142"
- name: Smoketest (publish)
if: inputs.publish
run: |
set -o verbose
macvim_excmd() {
${VIM_BIN} -u NONE -i NONE -g -f -X -V1 -es "$@" -c 'echo ""' -c 'qall!' 2>&1
}
# Smoketest scripting languages
macvim_excmd -c 'lua print("Test")' | grep Test
macvim_excmd -c 'perl VIM::Msg("Test")' | grep Test
macvim_excmd -c 'py3 print("Test")' | grep Test
macvim_excmd -c 'ruby puts("Test")' | grep Test
if [[ "$(uname -m)" == "x86_64" ]]; then
macvim_excmd -c 'py print "x86 Test"' | grep Test
else
# Python2 doesn't work in Apple Silicon, test under Rosetta
(VIM_BIN="arch -x86_64 ${VIM_BIN}"; macvim_excmd -c 'py print "rosetta Test"' | grep Test)
fi
# Check that localized messages work by printing ':version' and checking against localized word
macvim_excmd -c 'lang es_ES' -c 'version' | grep Enlazado
# Check that libsodium is working
macvim_excmd -c 'set cryptmethod=xchacha20v2'
# Make sure we are building universal x86_64 / arm64 builds and didn't accidentally create a thin app.
check_arch() {
local archs=($(lipo -archs "$1"))
if [[ ${archs[@]} != "$MACVIM_ARCHS" ]]; then
echo "Wrong arch(s) in $1: ${archs[@]}"; false
else
lipo -info "$1"
fi
}
check_arch "${VIM_BIN}"
check_arch "${MACVIM_BIN}"
- name: Check Vim help tags
if: inputs.vimtags
run: |
# Confirm that we can build the help tags, and they match what's in source.
make -C runtime/doc vimtags VIMEXE=../../${VIM_BIN}
git diff --exit-code -- runtime/doc/tags
- name: Check Xcode project compatibility version
if: inputs['check-xcodeproj-compat']
run: |
# Confirm that the compatibility version of xcodeproj is correct and not outdated.
rm -rf src/MacVim/MacVim_xcode8.xcodeproj
make -C src macvim-xcodeproj-compat
if ! git diff --exit-code -- src/MacVim/MacVim_xcode8.xcodeproj; then
echo 'MacVim_xcode8.xcodeproj is outdated. Run "make -C src macvim-xcodeproj-compat" to re-generate it.'; false
fi
- name: Test MacVim
id: test_macvim
timeout-minutes: 10
run: |
make ${MAKE_BUILD_ARGS} -C src macvim-tests
- name: Upload failed MacVim test results
if: ${{ !cancelled() && failure() && steps.test_macvim.conclusion == 'failure' }}
uses: ./.github/actions/test_macvim_artifacts
- name: Build Vim test binaries
run: |
# Build the unit test binaries first. With link-time-optimization they take some time to link. Running them
# separately de-couples them from the timeout in tests, and allow us to build in parallel jobs (since tests
# can't run in parallel).
NPROC=$(getconf _NPROCESSORS_ONLN)
set -o verbose
make ${MAKE_BUILD_ARGS} -j${NPROC} -C src unittesttargets
- name: Test Vim
if: startsWith(github.ref, 'refs/tags/') || !inputs.testgui
timeout-minutes: 30
run: |
defaults delete org.vim.MacVim # Clean up stale states
# Currently we don't run any non-src tests, as syntax tests are fragile and prone to spamming escape codes.
# This needs to be investigated and fixed upstream.
# MacVim is unlikely to introduce breaking changes in runtime files anyway.
make ${MAKE_BUILD_ARGS} -C src test
- name: Test Vim (GUI)
if: startsWith(github.ref, 'refs/tags/') || inputs.testgui
timeout-minutes: 30
run: |
defaults delete org.vim.MacVim # Clean up stale states
make ${MAKE_BUILD_ARGS} -C src/testdir clean
make ${MAKE_BUILD_ARGS} -C src testgui
- name: Upload failed test files
if: ${{ !cancelled() && failure() }}
uses: ./.github/actions/test_artifacts
- name: Build MacVim dmg image
if: inputs.publish && (startsWith(github.ref, 'refs/tags/') || github.ref == 'refs/heads/master')
run: |
if ${{ inputs.legacy == true }}; then
make -C src macvim-dmg-legacy
else
make -C src macvim-dmg
fi
if ${{ inputs.publish_postfix != '' }}; then
mv src/MacVim/build/Release/MacVim.dmg src/MacVim/build/Release/MacVim${{ inputs.publish_postfix }}.dmg
fi
# Upload the dmg installer only when making tagged release or making a dev build from a master branch.
# Note that this doesn't create a GitHub release for us, because we would prefer to do it manually, for two
# reasons: 1) signing / notarization are currently done out of CI, 2) we want to manually format our release notes
# and add pictures to make them look nice.
- name: Upload MacVim image
if: inputs.publish && (startsWith(github.ref, 'refs/tags/') || github.ref == 'refs/heads/master')
uses: actions/upload-artifact@v4
with:
name: MacVim${{ inputs.publish_postfix }}.dmg
path: src/MacVim/build/Release/MacVim${{ inputs.publish_postfix }}.dmg
# If doing a tagged release, use repository-specified number of retention days (usually 90 days) to make it
# easier to audit. (specify "0" to indicate using repository settings)
#
# Otherwise, we are just doing a dev build for potential testing, just use a maximum of 21 days as we don't
# tend to need these for long.
retention-days: ${{ startsWith(github.ref, 'refs/tags/') && 0 || (github.retention_days > 21 && 21 || 0) }}
-20
View File
@@ -1,20 +0,0 @@
name: Close inactive issues
on:
schedule:
- cron: "45 3 * * *" # 3:45 am UTC. Just a random time intentionally picked to be not during busy hours.
jobs:
close-issues:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v9
with:
any-of-labels: "Response Needed"
days-before-stale: 45
days-before-close: 7
stale-issue-message: "This issue is stale because it has been waiting for a response for 45 days with no activity."
stale-pr-message: "This pull request is stale because it has been waiting for a response for 45 days with no activity."
close-issue-reason: "not_planned"
-180
View File
@@ -1,180 +0,0 @@
# Unixen: object and executable files.
*.o
src/vim
src/xxd/xxd
src/auto/if_perl.c
src/auto/gui_gtk_gresources.c
src/auto/gui_gtk_gresources.h
src/auto/os_haiku.rdef
src/objects/.dirstamp
src/objects
src/po/big5corr
src/po/sjiscorr
src/types.vim
# We do need src/auto/configure.
src/auto/config.cache
src/auto/config.h
src/auto/config.log
src/auto/config.mk
src/auto/config.status
src/auto/osdef.h
src/auto/link.log
src/auto/link.sed
src/auto/pathdef.c
# Windows
*.exe
*.idb
*.exp
*.map
*.obj
*.pdb
*.ilk
*.sln
*.suo
*.res
*.RES
vim*.dll
vim*.lib
src/dobj*/pathdef.c
src/gobj*/pathdef.c
src/obj*/pathdef.c
src/Obj*/pathdef.c
gvimext.dll
gvimext.lib
gvim.lib
runtime/doc/uganda.nsis.txt
nsis/icons/*
/vim90/
.vscode/
# NetBeans
nbproject/*
# Mac OSX
src/xxd/xxd.dSYM
.DS_Store
# All platforms
*.rej
*.orig
*.mo
*.swp
*~
*.pyc
*.log
src/po/vim.pot
src/tags
/tags
/GPATH
/GTAGS
/GRTAGS
nsis/tags
# Generated by "make test"
src/po/*.ck
src/po/*.desktop
src/testdir/mbyte.vim
src/testdir/mzscheme.vim
src/testdir/lua.vim
src/testdir/small.vim
src/testdir/tiny.vim
src/testdir/test*.out
src/testdir/test*.failed
src/testdir/test.log
src/testdir/dostmp/*
src/testdir/messages
src/testdir/viminfo
src/testdir/opt_test.vim
src/testdir/failed
src/testdir/starttime
runtime/indent/testdir/*.out
runtime/indent/testdir/*.fail
src/memfile_test
src/json_test
src/message_test
src/kword_test
# From MacVim
.*.swp
.DS_Store
src/MacVim/MacVim*.xcodeproj/*.mode1
src/MacVim/MacVim*.xcodeproj/*.mode1v3
src/MacVim/MacVim*.xcodeproj/*.pbxuser
src/MacVim/MacVim*.xcodeproj/project.xcworkspace
src/MacVim/MacVim*.xcodeproj/xcuserdata
src/MacVim/icons/*.pyc
src/MacVim/icons/*.ttf
src/MacVim/icons/*.reg
src/MacVim/icons/*.zip
src/MacVim/icons/*.txt
src/MacVim/icons/*.so
src/MacVim/icons/*.egg-info
src/MacVim/icons/build
src/MacVim/icons/makeicns/*.o
src/MacVim/icons/makeicns/makeicns
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.mode1
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.mode1v3
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/*.pbxuser
src/MacVim/PSMTabBarControl/PSMTabBarControl.xcodeproj/xcuserdata
src/MacVim/PSMTabBarControl/build
src/MacVim/qlstephen/QuickLookStephen.xcodeproj/*.mode1
src/MacVim/qlstephen/QuickLookStephen.xcodeproj/*.mode1v3
src/MacVim/qlstephen/QuickLookStephen.xcodeproj/*.pbxuser
src/MacVim/qlstephen/QuickLookStephen.xcodeproj/xcuserdata
src/MacVim/qlstephen/build
src/MacVim/build
src/MacVim/auto
src/MacVim/DerivedData
src/TAGS
src/Vim
src/auto/config.cache
src/auto/config.h
src/auto/config.log
src/auto/config.mk
src/auto/config.status
src/auto/if_perl.c
src/auto/link.log
src/auto/link.sed
src/auto/osdef.h
src/auto/pathdef.c
src/config.log
src/config.status
src/objects
src/po/*.mo
src/tags
src/xxd/xxd
src/xxd/xxd.dSYM
src/a.out.dSYM
runtime/syntax/testdir/done/
runtime/syntax/testdir/messages
runtime/syntax/testdir/testdeps.mk
runtime/syntax/testdir/vimcmd
# Generated by "make install"
runtime/doc/doctags
runtime/doc/tags-*
# Temporarily generated by "runtime/syntax/generator/make"
runtime/syntax/generator/generator.err
runtime/syntax/generator/sanity_check.err
runtime/syntax/generator/vim.vim.rc
# Generated by "make shadow". The directory names could be anything but we
# restrict them to shadow (the default) or shadow-*
src/shadow
src/shadow-*
src/runtime
src/pixmaps
src/LICENSE
src/README.txt
# other files possibly created by tools
src/cscope.out
# Linter/language server files
/.cache/clangd/
/.ccls-cache/
/compile_commands.json
-130
View File
@@ -1,130 +0,0 @@
syntax: glob
# Unixen: object and executable files.
*.o
src/vim
src/xxd/xxd
src/auto/if_perl.c
src/auto/gui_gtk_gresources.c
src/auto/gui_gtk_gresources.h
src/auto/os_haiku.rdef
src/objects/.dirstamp
src/objects
src/po/big5corr
src/po/sjiscorr
src/types.vim
# We do need src/auto/configure.
src/auto/config.cache
src/auto/config.h
src/auto/config.log
src/auto/config.mk
src/auto/config.status
src/auto/osdef.h
src/auto/link.log
src/auto/link.sed
src/auto/pathdef.c
# Windows
*.exe
*.idb
*.exp
*.map
*.obj
*.pdb
*.ilk
*.sln
*.suo
*.res
*.RES
vim*.dll
vim*.lib
src/dobj*/pathdef.c
src/gobj*/pathdef.c
src/obj*/pathdef.c
src/Obj*/pathdef.c
gvimext.dll
gvimext.lib
gvim.lib
runtime/doc/uganda.nsis.txt
nsis/icons/*
/vim90/
.vscode/
# NetBeans
nbproject/*
# Mac OSX
src/xxd/xxd.dSYM
.DS_Store
# All platforms
*.rej
*.orig
*.mo
*.swp
*~
*.pyc
*.log
src/po/vim.pot
src/tags
/tags
/GPATH
/GTAGS
/GRTAGS
nsis/tags
# Generated by "make test"
src/po/*.ck
src/po/*.desktop
src/testdir/mbyte.vim
src/testdir/mzscheme.vim
src/testdir/lua.vim
src/testdir/small.vim
src/testdir/tiny.vim
src/testdir/test*.out
src/testdir/test*.failed
src/testdir/test.log
src/testdir/dostmp/*
src/testdir/messages
src/testdir/viminfo
src/testdir/opt_test.vim
src/testdir/failed
src/testdir/starttime
runtime/indent/testdir/*.out
runtime/indent/testdir/*.fail
src/memfile_test
src/json_test
src/message_test
src/kword_test
runtime/syntax/testdir/done/
runtime/syntax/testdir/messages
runtime/syntax/testdir/testdeps.mk
runtime/syntax/testdir/vimcmd
# Generated by "make install"
runtime/doc/doctags
runtime/doc/tags-*
# Temporarily generated by "runtime/syntax/generator/make"
runtime/syntax/generator/generator.err
runtime/syntax/generator/sanity_check.err
runtime/syntax/generator/vim.vim.rc
# Generated by "make shadow". The directory names could be anything but we
# restrict them to shadow (the default) or shadow-*
src/shadow
src/shadow-*
src/runtime
src/pixmaps
src/LICENSE
src/README.txt
# other files possibly created by tools
src/cscope.out
# Linter/language server files
.cache/clangd/
.ccls-cache/
compile_commands.json
-141
View File
@@ -1,141 +0,0 @@
# Contributing to Vim
Patches are welcome in whatever form.
Discussions about patches happen on the [vim-dev][0] mailing list.
If you create a pull request on GitHub it will be
forwarded to the vim-dev mailing list. You can also send your patch there
directly (but please note, the initial posting is subject to moderation).
In that case an attachment with a unified diff format is preferred.
Information about the mailing list can be found [on the Vim website][0]
A pull request has the advantage that it will trigger the Continuous
Integration tests, you will be warned of problems (you can ignore the coverage
warning, it's noisy).
Please consider adding a test. All new functionality should be tested and bug
fixes should be tested for regressions: the test should fail before the fix and
pass after the fix. Look through recent patches for examples and find help
with ":help testing". The tests are located under "src/testdir".
Contributions will be distributed with Vim under the Vim license. Providing a
change to be included implies that you agree with this and your contribution
does not cause us trouble with trademarks or patents. There is no CLA to sign.
## Signing-off commits
While not required, it's recommended to use **Signed-off commits** to ensure
transparency, accountability, and compliance with open-source best practices.
Signed-off commits follow the [Developer Certificate of Origin (DCO)][15],
which confirms that contributors have the right to submit their changes under
the project's license. This process adds a `Signed-off-by` line to commit
messages, verifying that the contributor agrees to the project's licensing
terms. To sign off a commit, simply use the -s flag when committing:
```sh
git commit -s
```
This ensures that every contribution is properly documented and traceable,
aligning with industry standards used in projects like the Linux Kernel or
the git project. By making Signed-off commits a standard practice, we help
maintain a legally compliant and well-governed codebase while fostering trust
within our contributor community.
When merging PRs into Vim, the current maintainer @chrisbra usually adds missing
`Signed-off-by` trailers for the author user name and email address as well for
anybody that explicitly *ACK*s a pull request as a statement that those
approvers are happy with that particular change.
# Reporting issues
We use GitHub issues, but that is not a requirement. Writing to the Vim
mailing list is also fine.
Please use the GitHub issues only for actual issues. If you are not 100% sure
that your problem is a Vim issue, please first discuss this on the Vim user
mailing list. Try reproducing the problem without any of your plugins or settings:
vim --clean
If you report an issue, please describe exactly how to reproduce it.
For example, don't say "insert some text" but say what you did exactly:
`ahere is some text<Esc>`.
Ideally, the steps you list can be used to write a test to verify the problem
is fixed.
Feel free to report even the smallest problem, also typos in the documentation.
You can find known issues in the todo file: `:help todo`.
Or open [the todo file][todo list] on GitHub to see the latest version.
# Syntax, indent and other runtime files
The latest version of these files can be obtained from the repository.
They are usually not updated with numbered patches. However, they may
or may not work with older Vim releases (since they may contain new features).
If you find a problem with one of these files or have a suggestion for
improvement, please first try to contact the maintainer directly.
Look in the header of the file for the name, email address, github handle and/or
upstream repository. You may also check the [MAINTAINERS][11] file.
The maintainer will take care of issues and send updates to the Vim project for
distribution with Vim.
If the maintainer does not respond, contact the [vim-dev][0] mailing list.
## Contributing new runtime files
If you want to contribute new runtime files for Vim or Neovim, please create a
PR with your changes against this repository here. For new filetypes, do not forget:
* to add a new [filetype test][12] (keep it similar to the other filetype tests).
* all configuration switches should be documented
(check [filetype.txt][13] and/or [syntax.txt][14] for filetype and syntax plugins)
* add yourself as Maintainer to the top of file (again, keep the header similar to
other runtime files)
* add yourself to the [MAINTAINERS][11] file.
# Translations
Translating messages and runtime files is very much appreciated! These things
can be translated:
* Messages in Vim, see [src/po/README.txt][1]
Also used for the desktop icons.
* Menus, see [runtime/lang/README.txt][2]
* Vim tutor, see [runtime/tutor/README.txt][3]
* Manual pages, see [runtime/doc/\*.1][4] for examples
* Installer, see [nsis/lang/README.txt][5]
The help files can be translated and made available separately.
See https://www.vim.org/translations.php for examples.
# How do I contribute to the project?
Please have a look at the following [discussion][6], which should give you some
ideas. Please also check the [develop.txt][7] helpfile for the recommended
style. Often it's also beneficial to check the surrounding code for the style
being used.
# I have a question
If you have some question on the style guide, please contact the [vim-dev][0]
mailing list. For other questions please use the [Vi Stack Exchange][8] website, the
[vim-use][9] mailing list or make use of the [discussion][10] feature here at github.
[todo list]: https://github.com/vim/vim/blob/master/runtime/doc/todo.txt
[0]: http://www.vim.org/maillist.php#vim-dev
[1]: https://github.com/vim/vim/blob/master/src/po/README.txt
[2]: https://github.com/vim/vim/blob/master/runtime/lang/README.txt
[3]: https://github.com/vim/vim/blob/master/runtime/tutor/README.txt
[4]: https://github.com/vim/vim/blob/master/runtime/doc/vim.1
[5]: https://github.com/vim/vim/blob/master/nsis/lang/README.txt
[6]: https://github.com/vim/vim/discussions/13087
[7]: https://github.com/vim/vim/blob/master/runtime/doc/develop.txt
[8]: https://vi.stackexchange.com
[9]: http://www.vim.org/maillist.php#vim-use
[10]: https://github.com/vim/vim/discussions
[11]: https://github.com/vim/vim/blob/master/.github/MAINTAINERS
[12]: https://github.com/vim/vim/blob/master/src/testdir/test_filetype.vim
[13]: https://github.com/vim/vim/blob/master/runtime/doc/filetype.txt
[14]: https://github.com/vim/vim/blob/master/runtime/doc/syntax.txt
[15]: https://en.wikipedia.org/wiki/Developer_Certificate_of_Origin
-1171
View File
File diff suppressed because it is too large Load Diff
-78
View File
@@ -1,78 +0,0 @@
VIM LICENSE
I) There are no restrictions on distributing unmodified copies of Vim except
that they must include this license text. You can also distribute
unmodified parts of Vim, likewise unrestricted except that they must
include this license text. You are also allowed to include executables
that you made from the unmodified Vim sources, plus your own usage
examples and Vim scripts.
II) It is allowed to distribute a modified (or extended) version of Vim,
including executables and/or source code, when the following four
conditions are met:
1) This license text must be included unmodified.
2) The modified Vim must be distributed in one of the following five ways:
a) If you make changes to Vim yourself, you must clearly describe in
the distribution how to contact you. When the maintainer asks you
(in any way) for a copy of the modified Vim you distributed, you
must make your changes, including source code, available to the
maintainer without fee. The maintainer reserves the right to
include your changes in the official version of Vim. What the
maintainer will do with your changes and under what license they
will be distributed is negotiable. If there has been no negotiation
then this license, or a later version, also applies to your changes.
The current maintainers are listed here: https://github.com/orgs/vim/people.
If this changes it will be announced in appropriate places (most likely
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
impossible to contact the maintainer, the obligation to send him
your changes ceases. Once the maintainer has confirmed that he has
received your changes they will not have to be sent again.
b) If you have received a modified Vim that was distributed as
mentioned under a) you are allowed to further distribute it
unmodified, as mentioned at I). If you make additional changes the
text under a) applies to those changes.
c) Provide all the changes, including source code, with every copy of
the modified Vim you distribute. This may be done in the form of a
context diff. You can choose what license to use for new code you
add. The changes and their license must not restrict others from
making their own changes to the official version of Vim.
d) When you have a modified Vim which includes changes as mentioned
under c), you can distribute it without the source code for the
changes if the following three conditions are met:
- The license that applies to the changes permits you to distribute
the changes to the Vim maintainer without fee or restriction, and
permits the Vim maintainer to include the changes in the official
version of Vim without fee or restriction.
- You keep the changes for at least three years after last
distributing the corresponding modified Vim. When the maintainer
or someone who you distributed the modified Vim to asks you (in
any way) for the changes within this period, you must make them
available to him.
- You clearly describe in the distribution how to contact you. This
contact information must remain valid for at least three years
after last distributing the corresponding modified Vim, or as long
as possible.
e) When the GNU General Public License (GPL) applies to the changes,
you can distribute the modified Vim under the GNU GPL version 2 or
any later version.
3) A message must be added, at least in the output of the ":version"
command and in the intro screen, such that the user of the modified Vim
is able to see that it was modified. When distributing as mentioned
under 2)e) adding the message is only required for as far as this does
not conflict with the license used for the changes.
4) The contact information as required under 2)a) and 2)d) must not be
removed or changed, except that the person himself can make
corrections.
III) If you distribute a modified version of Vim, you are encouraged to use
the Vim license for your changes and make them available to the
maintainer, including the source code. The preferred way to do this is
by e-mail or by uploading the files to a server and e-mailing the URL.
If the number of changes is small (e.g., a modified Makefile) e-mailing a
context diff will do. The e-mail address to be used is
<maintainer@vim.org>
IV) It is not allowed to remove this license from the distribution of the Vim
sources, parts of it or from a modified version. You may use this
license for previous Vim releases instead of the license that they came
with, at your option.
-563
View File
@@ -1,563 +0,0 @@
# This Makefile has two purposes:
# 1. Starting the compilation of Vim for Unix.
# 2. Creating the various distribution files.
#########################################################################
# 1. Starting the compilation of Vim for Unix.
#
# Using this Makefile without an argument will compile Vim for Unix.
# "make install" is also possible.
#
# NOTE: If this doesn't work properly, first change directory to "src" and use
# the Makefile there:
# cd src
# make [arguments]
# Noticed on AIX systems when using this Makefile: Trying to run "cproto" or
# something else after Vim has been compiled. Don't know why...
# Noticed on OS/390 Unix: Restarts configure.
#
# The first (default) target is "first". This will result in running
# "make first", so that the target from "src/auto/config.mk" is picked
# up properly when config didn't run yet. Doing "make all" before configure
# has run can result in compiling with $(CC) empty.
first:
@if test ! -f src/auto/config.mk; then \
cp src/config.mk.dist src/auto/config.mk; \
fi
@echo "Starting make in the src directory."
@echo "If there are problems, cd to the src directory and run make there"
cd src && $(MAKE) $@
# Some make programs use the last target for the $@ default; put the other
# targets separately to always let $@ expand to "first" by default.
all install uninstall tools config configure reconfig proto depend lint tags types test scripttests testtiny test_libvterm unittests testclean clean distclean:
@if test ! -f src/auto/config.mk; then \
cp src/config.mk.dist src/auto/config.mk; \
fi
@echo "Starting make in the src directory."
@echo "If there are problems, cd to the src directory and run make there"
cd src && $(MAKE) $@
@# When the target is "test" also run the indent and syntax tests.
@if test "$@" = "test" -o "$@" = "testtiny"; then \
$(MAKE) indenttest; \
$(MAKE) syntaxtest; \
fi
@# When the target is "clean" also clean for the indent and syntax tests.
@if test "$@" = "clean" -o "$@" = "distclean" -o "$@" = "testclean"; then \
(cd runtime/indent && $(MAKE) clean); \
(cd runtime/syntax && $(MAKE) clean); \
fi
# Executable used for running the indent tests.
VIM_FOR_INDENTTEST = ../../src/vim
indenttest:
cd runtime/indent && \
$(MAKE) clean && \
$(MAKE) test VIMPROG="$(VIM_FOR_INDENTTEST)"
# Executable used for running the syntax tests.
VIM_FOR_SYNTAXTEST = ../../src/vim
# (For local testing only with GNU Make.)
VIM_SYNTAX_TEST_FILTER =
VIM_SYNTAX_TEST_WAIT_TIME =
syntaxtest:
cd runtime/syntax && \
$(MAKE) clean && \
$(MAKE) test VIMPROG="$(VIM_FOR_SYNTAXTEST)"
#########################################################################
# 2. Creating the various distribution files.
#
# TARGET PRODUCES CONTAINS
# unixall vim-#.#.tar.bz2 All runtime files and sources, for Unix
#
# html vim##html.zip HTML docs
#
# dossrc vim##src.zip sources for MS-DOS
# dosrt vim##rt.zip runtime for MS-DOS
# dosbin vim##w32.zip binary for Win32
# gvim##.zip binary for GUI Win32
# gvim##ole.zip OLE exe for Win32 GUI
#
# OBSOLETE
# amisrc vim##src.tgz sources for Amiga
# amirt vim##rt.tgz runtime for Amiga
# amibin vim##bin.tgz binary for Amiga
#
# farsi farsi##.zip Farsi fonts
#
# All output files are created in the "dist" directory. Existing files are
# overwritten!
# To do all this you need the Unix archive and compiled binaries.
# Before creating an archive first delete all backup files, *.orig, etc.
MAJOR = 9
MINOR = 1
# CHECKLIST for creating a new version:
#
# - Update Vim version number. For a test version in: src/version.h,
# READMEdir/Contents, MAJOR/MINOR above, VIMMAJOR and VIMMINOR in
# src/Makefile, README.txt, README.md, src/README.md, READMEdir/README*.txt,
# runtime/doc/*.txt and make nsis/gvim_version.nsh.
# For a minor/major version: src/GvimExt/GvimExt.reg, src/vim.manifest.
# - Compile Vim with GTK, Perl, Python, Python3, TCL, Ruby, Lua, Cscope and
# "huge" features. Add MZscheme if you can make it work.
# Use "make reconfig" after selecting the configure arguments.
# - With these features: "make proto" (requires cproto and Motif installed;
# ignore warnings for missing include files, fix problems for syntax errors).
# - With these features: "make depend" (works best with gcc).
# - If you have a lint program: "make lint" and check the output (ignore GTK
# warnings).
# - If you have valgrind, enable it in src/testdir/Makefile and run "make
# test". Enable EXITFREE, disable GUI, scheme and tcl to avoid false alarms.
# Check the valgrind output.
# - Adjust the date and other info in src/version.h.
# - Correct included_patches[] in src/version.c.
# - Check for missing entries in runtime/makemenu.vim (with checkmenu script).
# - Check for missing options in runtime/optwin.vim et al. (with check.vim).
# - Do "make menu" to update the runtime/synmenu.vim file.
# - Add remarks for changes to runtime/doc/version9.txt.
# - Check that runtime/doc/help.txt doesn't contain entries in "LOCAL
# ADDITIONS".
# - In runtime/doc run "make" and "make html" to check for errors.
# - Check if src/Makefile, src/testdir/Makefile and src/feature.h don't contain
# any personal preferences or the changes mentioned above.
# - Check file protections to be "644" for text and "755" for executables (run
# the "check" script).
# - Check compiling on Amiga, MS-DOS and MS-Windows.
# - Delete all *~, *.sw?, *.orig, *.rej files
# - "make unixall", "make html"
# - Make diff files against the previous release: "makediff7 7.1 7.2"
#
# Amiga: (OBSOLETE, Amiga files are no longer distributed)
# - "make amisrc", move the archive to the Amiga and compile:
# "make -f Make_manx.mak" (will use "big" features by default).
# - Run the tests: "make -f Make_manx.mak test"
# - Place the executables Vim and Xxd in this directory (set the executable
# flag).
# - "make amirt", "make amibin".
#
# MS-Windows:
# - Run make on Unix to update the ".mo" files.
# - Get 32 bit libintl-8.dll, libiconv-2.dll and libgcc_s_sjlj-1.dll. E.g. from
# https://mlocati.github.io/gettext-iconv-windows/ .
# Use the "shared-32.zip file and extract the archive to get the files.
# Put them in the gettext32 directory, "make dosrt" uses them.
# - Get 64 bit libintl-8.dll and libiconv-2.dll. E.g. from
# https://mlocati.github.io/gettext-iconv-windows/ .
# Use the "shared-64.zip file and extract the archive to get the files.
# Put them in the gettext64 directory, "make dosrt" uses them.
# - > make dossrc
# > make dosrt
# Unpack dist/vim##rt.zip and dist/vim##src.zip on an MS-Windows PC.
# This creates the directory vim/vim91 and puts all files in there.
# Win32 console version build:
# - See src/INSTALLpc.txt for installing the compiler and SDK.
# - Set environment for Visual C++ 2015:
# > cd src
# > msvc-latest.bat
# - Build the console binary:
# > nmake.exe -f Make_mvc.mak
# - Run the tests and check the output:
# > nmake.exe -f Make_mvc.mak testclean
# > nmake.exe -f Make_mvc.mak test
# - Rename (using ../tools/rename.bat):
# vim.exe to vimw32.exe
# tee/tee.exe to teew32.exe
# xxd/xxd.exe to xxdw32.exe
# vim.pdb to vimw32.pdb
# install.exe to installw32.exe
# uninstall.exe to uninstallw32.exe
# Win32 GUI version build:
# - > cd src
# > nmake.exe -f Make_mvc.mak "GUI=yes"
# - Run the tests and check the output:
# > nmake.exe -f Make_mvc.mak testclean
# > nmake.exe -f Make_mvc.mak testgvim
# - move "gvim.exe" to here (otherwise the OLE version will overwrite it).
# - Move gvim.pdb to here.
# - Copy "GvimExt/gvimext.dll" to here.
# - Delete vimrun.exe, install.exe and uninstall.exe.
# Win32 GUI version with OLE, PERL, Ruby, TCL, PYTHON and dynamic IME:
# - Install the interfaces you want, see src/INSTALLpc.txt
# Adjust bigvim.bat to match the version of each interface you want.
# - Build:
# > cd src
# > bigvim.bat
# - Run the tests:
# > nmake.exe -f Make_mvc.mak testclean
# > nmake.exe -f Make_mvc.mak testgvim
# - check the output.
# - Rename "gvim.exe" to "gvim_ole.exe".
# - Rename gvim.pdb to "gvim_ole.pdb".
# - Delete install.exe and uninstall.exe.
# Create the archives:
# - Copy all the "*.exe" files to where this Makefile is.
# - Copy all the "*.pdb" files to where this Makefile is.
# - in this directory:
# > make dosbin
# NSIS self installing exe:
# - To get NSIS see http://nsis.sourceforge.net
# - Make sure gvim_ole.exe, vimw32.exe, installw32.exe,
# uninstallw32.exe, teew32.exe and xxdw32.exe have been build as mentioned
# above.
# - copy these files (get them from a binary archive or build them):
# gvimext.dll in src/GvimExt
# gvimext64.dll in src/GvimExt
# gvimext64.dll can be obtained from:
# https://github.com/vim/vim-win32-installer/releases
# It is part of gvim_9.1.*_x64.zip as vim/vim91/GvimExt/gvimext64.dll.
# - Make sure there is a diff.exe two levels up (get it from a previous Vim
# version). Also put winpty32.dll and winpty-agent.exe there.
# - go to ../nsis and do:
# > nmake.exe -f Make_mvc.mak all
# (takes a few minutes).
# See nsis/README.txt for details.
# - Copy gvim##.exe to the dist directory.
#
# 64 bit builds (these are not in the normal distribution, the 32 bit build
# works just fine on 64 bit systems).
# Like the console and GUI version, but first run vcvars64.bat or
# "..\VC\vcvarsall.bat x86_amd64".
# - Build the console version:
# > nmake.exe -f Make_mvc.mak
# - Build the GUI version:
# > nmake.exe -f Make_mvc.mak "GUI=yes"
# - Build the OLE version with interfaces:
# > bigvim64.bat
#
#
# OBSOLETE systems: You can build these if you have an appropriate system.
#
# 16 bit DOS version: You need to get a very old version of Vim, for several
# years even the tiny build is too big to fit in DOS memory.
#
# 32 bit DOS version: Support was removed in 7.4.1399. When syncing to before
# that it probably won't build.
#
# Win32s GUI version: Support was removed in patch 7.4.1364.
#
# OS/2 support was removed in patch 7.4.1008. If you want to give it a try
# sync to before that and check the old version of this Makefile for
# instructions.
VIMVER = vim-$(MAJOR).$(MINOR)
VERSION = $(MAJOR)$(MINOR)
VDOT = $(MAJOR).$(MINOR)
VIMRTDIR = vim$(VERSION)
# How to include Filelist depends on the version of "make" you have.
# If the current choice doesn't work, try the other one.
include Filelist
#.include "Filelist"
# All output is put in the "dist" directory.
dist:
mkdir dist
# Clean up some files to avoid they are included.
# Copy README files to the top directory.
prepare:
if test -f lang/LICENSE.nsis.txt; then \
rm -f lang/LICENSE*.nsis.txt; fi
for name in $(IN_README_DIR); do \
cp READMEdir/"$$name" .; \
done
# For the zip files we need to create a file with the comment line
dist/comment:
mkdir dist/comment
COMMENT_RT = comment/$(VERSION)-rt
COMMENT_W32 = comment/$(VERSION)-bin-w32
COMMENT_GVIM = comment/$(VERSION)-bin-gvim
COMMENT_OLE = comment/$(VERSION)-bin-ole
COMMENT_SRC = comment/$(VERSION)-src
COMMENT_HTML = comment/$(VERSION)-html
COMMENT_FARSI = comment/$(VERSION)-farsi
dist/$(COMMENT_RT): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) runtime files for MS-DOS and MS-Windows" > dist/$(COMMENT_RT)
dist/$(COMMENT_W32): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) binaries for MS-Windows" > dist/$(COMMENT_W32)
dist/$(COMMENT_GVIM): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) GUI binaries for MS-Windows" > dist/$(COMMENT_GVIM)
dist/$(COMMENT_OLE): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) MS-Windows GUI binaries with OLE support" > dist/$(COMMENT_OLE)
dist/$(COMMENT_SRC): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) sources for MS-DOS and MS-Windows" > dist/$(COMMENT_SRC)
dist/$(COMMENT_HTML): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) documentation in HTML" > dist/$(COMMENT_HTML)
dist/$(COMMENT_FARSI): dist/comment
echo "Vim - Vi IMproved - v$(VDOT) Farsi language files" > dist/$(COMMENT_FARSI)
unixall: dist prepare
-rm -f dist/$(VIMVER).tar.bz2
-rm -rf dist/$(VIMRTDIR)
mkdir dist/$(VIMRTDIR)
tar cf - \
$(RT_ALL) \
$(RT_ALL_BIN) \
$(RT_UNIX) \
$(RT_UNIX_DOS_BIN) \
$(RT_SCRIPTS) \
$(LANG_GEN) \
$(LANG_GEN_BIN) \
$(SRC_ALL) \
$(SRC_UNIX) \
$(SRC_DOS_UNIX) \
$(EXTRA) \
$(LANG_SRC) \
| (cd dist/$(VIMRTDIR); tar xf -)
-rm $(IN_README_DIR)
# Need to use a "distclean" config.mk file
# Note: this file is not included in the repository to avoid problems, but it's
# OK to put it in the archive.
cp -f src/config.mk.dist dist/$(VIMRTDIR)/src/auto/config.mk
# Create an empty config.h file, make dependencies require it
touch dist/$(VIMRTDIR)/src/auto/config.h
# Make sure configure is newer than config.mk to force it to be generated
touch dist/$(VIMRTDIR)/src/configure
# Make sure ja.sjis.po is newer than ja.po to avoid it being regenerated.
# Same for cs.cp1250.po, pl.cp1250.po and sk.cp1250.po.
touch dist/$(VIMRTDIR)/src/po/ja.sjis.po
touch dist/$(VIMRTDIR)/src/po/cs.cp1250.po
touch dist/$(VIMRTDIR)/src/po/pl.cp1250.po
touch dist/$(VIMRTDIR)/src/po/sk.cp1250.po
touch dist/$(VIMRTDIR)/src/po/zh_CN.cp936.po
touch dist/$(VIMRTDIR)/src/po/ru.cp1251.po
touch dist/$(VIMRTDIR)/src/po/uk.cp1251.po
# Create the archive.
cd dist && tar cf $(VIMVER).tar $(VIMRTDIR)
bzip2 dist/$(VIMVER).tar
# Amiga runtime - OBSOLETE
amirt: dist prepare
-rm -f dist/vim$(VERSION)rt.tar.gz
-rm -rf dist/Vim
mkdir dist/Vim
mkdir dist/Vim/$(VIMRTDIR)
tar cf - \
$(ROOT_AMI) \
$(RT_ALL) \
$(RT_ALL_BIN) \
$(RT_SCRIPTS) \
$(RT_AMI) \
$(RT_NO_UNIX) \
$(RT_AMI_DOS) \
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
-rm $(IN_README_DIR)
mv dist/Vim/$(VIMRTDIR)/vimdir.info dist/Vim.info
mv dist/Vim/$(VIMRTDIR)/runtime.info dist/Vim/$(VIMRTDIR).info
mv dist/Vim/$(VIMRTDIR)/runtime/* dist/Vim/$(VIMRTDIR)
rmdir dist/Vim/$(VIMRTDIR)/runtime
cd dist && tar cf vim$(VERSION)rt.tar Vim Vim.info
gzip -9 dist/vim$(VERSION)rt.tar
mv dist/vim$(VERSION)rt.tar.gz dist/vim$(VERSION)rt.tgz
# Amiga binaries - OBSOLETE
amibin: dist prepare
-rm -f dist/vim$(VERSION)bin.tar.gz
-rm -rf dist/Vim
mkdir dist/Vim
mkdir dist/Vim/$(VIMRTDIR)
tar cf - \
$(ROOT_AMI) \
$(BIN_AMI) \
Vim \
Xxd \
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
-rm $(IN_README_DIR)
mv dist/Vim/$(VIMRTDIR)/vimdir.info dist/Vim.info
mv dist/Vim/$(VIMRTDIR)/runtime.info dist/Vim/$(VIMRTDIR).info
cd dist && tar cf vim$(VERSION)bin.tar Vim Vim.info
gzip -9 dist/vim$(VERSION)bin.tar
mv dist/vim$(VERSION)bin.tar.gz dist/vim$(VERSION)bin.tgz
# Amiga sources - OBSOLETE
amisrc: dist prepare
-rm -f dist/vim$(VERSION)src.tar.gz
-rm -rf dist/Vim
mkdir dist/Vim
mkdir dist/Vim/$(VIMRTDIR)
tar cf - \
$(ROOT_AMI) \
$(SRC_ALL) \
$(SRC_AMI) \
$(SRC_AMI_DOS) \
| (cd dist/Vim/$(VIMRTDIR); tar xf -)
-rm $(IN_README_DIR)
mv dist/Vim/$(VIMRTDIR)/vimdir.info dist/Vim.info
mv dist/Vim/$(VIMRTDIR)/runtime.info dist/Vim/$(VIMRTDIR).info
cd dist && tar cf vim$(VERSION)src.tar Vim Vim.info
gzip -9 dist/vim$(VERSION)src.tar
mv dist/vim$(VERSION)src.tar.gz dist/vim$(VERSION)src.tgz
# MS-DOS sources
dossrc: dist dist/$(COMMENT_SRC) license nsis/gvim_version.nsh
-rm -rf dist/vim$(VERSION)src.zip
-rm -rf dist/vim
mkdir dist/vim
mkdir dist/vim/$(VIMRTDIR)
tar cf - \
$(SRC_ALL) \
$(SRC_DOS) \
$(SRC_DOS_BIN) \
$(SRC_AMI_DOS) \
$(SRC_DOS_UNIX) \
lang/LICENSE.*.txt \
lang/README.*.txt \
nsis/gvim_version.nsh \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
mv dist/vim/$(VIMRTDIR)/runtime/* dist/vim/$(VIMRTDIR)
rmdir dist/vim/$(VIMRTDIR)/runtime
cd dist && zip -9 -rD -z vim$(VERSION)src.zip vim <$(COMMENT_SRC)
license:
cd nsis && $(MAKE) -f Makefile $@
nsis/gvim_version.nsh: Makefile
cd nsis && $(MAKE) -f Makefile $(@F)
dosrt: dist dist/$(COMMENT_RT) dosrt_files
-rm -rf dist/vim$(VERSION)rt.zip
cd dist && zip -9 -rD -z vim$(VERSION)rt.zip vim <$(COMMENT_RT)
# Split in two parts to avoid an "argument list too long" error.
# We no longer convert the files from unix to dos fileformat.
dosrt_files: dist prepare
-rm -rf dist/vim
mkdir dist/vim
mkdir dist/vim/$(VIMRTDIR)
mkdir dist/vim/$(VIMRTDIR)/lang
cd src && MAKEMO=yes $(MAKE) languages
tar cf - \
$(RT_ALL) \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
tar cf - \
$(RT_SCRIPTS) \
$(RT_DOS) \
$(RT_NO_UNIX) \
$(RT_AMI_DOS) \
$(LANG_GEN) \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
tar cf - \
$(RT_UNIX_DOS_BIN) \
$(RT_ALL_BIN) \
$(RT_DOS_BIN) \
$(LANG_GEN_BIN) \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
-rm $(IN_README_DIR)
mv dist/vim/$(VIMRTDIR)/runtime/* dist/vim/$(VIMRTDIR)
rmdir dist/vim/$(VIMRTDIR)/runtime
# Add the message translations. Trick: skip ja.mo/ja.euc-jp.mo and use
# ja.sjis.mo instead. Same for cs.mo / cs.cp1250.mo, pl.mo / pl.cp1250.mo,
# sk.mo / sk.cp1250.mo, zh_CN.mo / zh_CN.cp936.mo, uk.mo / uk.cp1251.mo and
# ru.mo / ru.cp1251.mo.
for i in $(LANG_DOS); do \
if test "$$i" != "src/po/ja.mo" -a "$$i" != "src/po/ja.euc-jp.mo" -a "$$i" != "src/po/pl.mo" -a "$$i" != "src/po/cs.mo" -a "$$i" != "src/po/sk.mo" -a "$$i" != "src/po/zh_CN.mo" -a "$$i" != "src/po/ru.mo" -a "$$i" != "src/po/uk.mo"; then \
n=`echo $$i | sed -e "s+src/po/\([-a-zA-Z0-9_]*\(.UTF-8\)*\)\(.sjis\)*\(.cp1250\)*\(.cp1251\)*\(.cp936\)*.mo+\1+"`; \
mkdir dist/vim/$(VIMRTDIR)/lang/$$n; \
mkdir dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES; \
cp $$i dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES/vim.mo; \
fi \
done
mkdir dist/vim/$(VIMRTDIR)/gettext32
cp gettext32/libintl-8.dll dist/vim/$(VIMRTDIR)/gettext32/
cp gettext32/libiconv-2.dll dist/vim/$(VIMRTDIR)/gettext32/
cp gettext32/libgcc_s_sjlj-1.dll dist/vim/$(VIMRTDIR)/gettext32/
mkdir dist/vim/$(VIMRTDIR)/gettext64
cp gettext64/libintl-8.dll dist/vim/$(VIMRTDIR)/gettext64/
cp gettext64/libiconv-2.dll dist/vim/$(VIMRTDIR)/gettext64/
# Used before uploading. Don't delete the AAPDIR/sign files!
runtime_unix2dos: dosrt_files
-rm -rf `find runtime/dos -type f -print | sed -e /AAPDIR/d`
cd dist/vim/$(VIMRTDIR); tar cf - * \
| (cd ../../../runtime/dos; tar xf -)
dosbin: prepare dosbin_gvim dosbin_w32 dosbin_ole $(DOSBIN_S)
-rm $(IN_README_DIR)
# make Win32 gvim
dosbin_gvim: dist dist/$(COMMENT_GVIM)
-rm -rf dist/gvim$(VERSION).zip
-rm -rf dist/vim
mkdir dist/vim
mkdir dist/vim/$(VIMRTDIR)
tar cf - \
$(BIN_DOS) \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
cp gvim.exe dist/vim/$(VIMRTDIR)/gvim.exe
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
mkdir dist/vim/$(VIMRTDIR)/GvimExt32
cp gvimext.dll dist/vim/$(VIMRTDIR)/GvimExt32/gvimext.dll
mkdir dist/vim/$(VIMRTDIR)/GvimExt64
cp gvimext64.dll dist/vim/$(VIMRTDIR)/GvimExt64/gvimext.dll
cd dist && zip -9 -rD -z gvim$(VERSION).zip vim <$(COMMENT_GVIM)
cp gvim.pdb dist/gvim$(VERSION).pdb
# make Win32 console
dosbin_w32: dist dist/$(COMMENT_W32)
-rm -rf dist/vim$(VERSION)w32.zip
-rm -rf dist/vim
mkdir dist/vim
mkdir dist/vim/$(VIMRTDIR)
tar cf - \
$(BIN_DOS) \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
cp vimw32.exe dist/vim/$(VIMRTDIR)/vim.exe
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
cd dist && zip -9 -rD -z vim$(VERSION)w32.zip vim <$(COMMENT_W32)
cp vimw32.pdb dist/vim$(VERSION)w32.pdb
# make Win32 gvim with OLE
dosbin_ole: dist dist/$(COMMENT_OLE)
-rm -rf dist/gvim$(VERSION)ole.zip
-rm -rf dist/vim
mkdir dist/vim
mkdir dist/vim/$(VIMRTDIR)
tar cf - \
$(BIN_DOS) \
| (cd dist/vim/$(VIMRTDIR); tar xf -)
cp gvim_ole.exe dist/vim/$(VIMRTDIR)/gvim.exe
cp teew32.exe dist/vim/$(VIMRTDIR)/tee.exe
cp xxdw32.exe dist/vim/$(VIMRTDIR)/xxd.exe
cp vimrun.exe dist/vim/$(VIMRTDIR)/vimrun.exe
cp installw32.exe dist/vim/$(VIMRTDIR)/install.exe
cp uninstallw32.exe dist/vim/$(VIMRTDIR)/uninstall.exe
cp gvimext.dll dist/vim/$(VIMRTDIR)/gvimext.dll
cp README_ole.txt dist/vim/$(VIMRTDIR)
cd dist && zip -9 -rD -z gvim$(VERSION)ole.zip vim <$(COMMENT_OLE)
cp gvim_ole.pdb dist/gvim$(VERSION)ole.pdb
html: dist dist/$(COMMENT_HTML)
-rm -rf dist/vim$(VERSION)html.zip
cd runtime/doc && zip -9 -z ../../dist/vim$(VERSION)html.zip *.html <../../dist/$(COMMENT_HTML)
farsi: dist dist/$(COMMENT_FARSI)
-rm -f dist/farsi$(VERSION).zip
zip -9 -rD -z dist/farsi$(VERSION).zip farsi < dist/$(COMMENT_FARSI)
+5 -11
View File
@@ -1,15 +1,9 @@
Vim - the text editor - for macOS
# Old MacVim website
This is the old branch for the MacVim website and is no longer used. Please see https://github.com/macvim-dev/macvim-dev.github.io (available as https://macvim.org) instead.
- MacVim homepage: <https://macvim-dev.github.io/macvim>
When visiting this site, there is now a meta refresh to redirect to the new location.
- Download the latest version from [Releases](https://github.com/macvim-dev/macvim/releases/latest)
- How to [build MacVim from source](https://github.com/macvim-dev/macvim/wiki/Building)
- Vim README: [README_vim.md](README_vim.md)
- [![MacVim GitHub CI](https://github.com/macvim-dev/macvim/actions/workflows/ci-macvim.yaml/badge.svg)](https://github.com/macvim-dev/macvim/actions/workflows/ci-macvim.yaml)
- Packaged in [![Homebrew package](https://repology.org/badge/version-for-repo/homebrew/macvim.svg)](https://repology.org/metapackage/macvim/versions) [![MacPorts package](https://repology.org/badge/version-for-repo/macports/macvim.svg)](https://repology.org/metapackage/macvim/versions)
## Note
The file appcast/latest.xml is still in use and should not be deleted or moved. Older versions of MacVim point directly to the raw GitHub URL for that file in this branch for updates (before it was moved to point to https://macvim.org/appcast/latest.xml instead). To prevent breaking software update for people running older versions of MacVim (since they may not use the software frequently), we keep the file around for now. Also, the versions of MacVim pointing to this appcast XML file are still using Sparkle 1, and as such we should avoid adding Sparkle 2 features (e.g. beta channels) if we update the file.
-135
View File
@@ -1,135 +0,0 @@
README.txt for version 9.1 of Vim: Vi IMproved.
WHAT IS VIM?
Vim is a greatly improved version of the good old UNIX editor Vi. Many new
features have been added: multi-level undo, syntax highlighting, command line
history, on-line help, spell checking, filename completion, block operations,
script language, etc. There is also a Graphical User Interface (GUI) available.
Still, Vi compatibility is maintained, those who have Vi "in the fingers" will
feel at home. See "runtime/doc/vi_diff.txt" for differences with Vi.
This editor is very useful for editing programs and other plain text files.
All commands are given with normal keyboard characters, so those who can type
with ten fingers can work very fast. Additionally, function keys can be
mapped to commands by the user, and the mouse can be used.
Vim runs under MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS and almost all
flavours of UNIX. Porting to other systems should not be very difficult.
Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me/NT/2000/XP/Vista,
Amiga DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
DISTRIBUTION
You can often use your favorite package manager to install Vim. On Mac and
Linux a small version of Vim is pre-installed, you still need to install Vim
if you want more features.
There are separate distributions for Unix, PC, Amiga and some other systems.
This README.txt file comes with the runtime archive. It includes the
documentation, syntax files and other files that are used at runtime. To run
Vim you must get either one of the binary archives or a source archive.
Which one you need depends on the system you want to run it on and whether you
want or must compile it yourself. Check "https://www.vim.org/download.php" for
an overview of currently available distributions.
Some popular places to get the latest Vim:
* Check out the git repository from github: https://github.com/vim/vim.
* Get the source code as an archive: https://github.com/vim/vim/tags.
* Get a Windows executable from the vim-win32-installer repository:
https://github.com/vim/vim-win32-installer/releases.
COMPILING
If you obtained a binary distribution you don't need to compile Vim. If you
obtained a source distribution, all the stuff for compiling Vim is in the
"src" directory. See src/INSTALL for instructions.
INSTALLATION
See one of these files for system-specific instructions. Either in the
READMEdir directory (in the repository) or the top directory (if you unpack an
archive):
README_ami.txt Amiga
README_unix.txt Unix
README_dos.txt MS-DOS and MS-Windows
README_mac.txt Macintosh
README_haiku.txt Haiku
README_vms.txt VMS
There are other README_*.txt files, depending on the distribution you used.
DOCUMENTATION
The Vim tutor is a one hour training course for beginners. Often it can be
started as "vimtutor". See ":help tutor" for more information.
The best is to use ":help" in Vim. If you don't have an executable yet, read
"runtime/doc/help.txt". It contains pointers to the other documentation files.
The User Manual reads like a book and is recommended to learn to use Vim. See
":help user-manual".
COPYING
Vim is Charityware. You can use and copy it as much as you like, but you are
encouraged to make a donation to help orphans in Uganda. Please read the file
"runtime/doc/uganda.txt" for details (do ":help uganda" inside Vim).
Summary of the license: There are no restrictions on using or distributing an
unmodified copy of Vim. Parts of Vim may also be distributed, but the license
text must always be included. For modified versions, a few restrictions apply.
The license is GPL compatible, you may compile Vim with GPL libraries and
distribute it.
SPONSORING
Fixing bugs and adding new features takes a lot of time and effort. To show
your appreciation for the work and motivate developers to continue working on
Vim please send a donation.
The money you donated will be mainly used to help children in Uganda. See
"runtime/doc/uganda.txt". But at the same time donations increase the
development team motivation to keep working on Vim!
For the most recent information about sponsoring look on the Vim web site:
https://www.vim.org/sponsor/
CONTRIBUTING
If you would like to help make Vim better, see the CONTRIBUTING.md file.
INFORMATION
If you are on macOS, you can use MacVim: https://macvim.org
The latest news about Vim can be found on the Vim home page:
https://www.vim.org/
If you have problems, have a look at the Vim documentation or tips:
https://www.vim.org/docs.php
https://vim.fandom.com/wiki/Vim_Tips_Wiki
If you still have problems or any other questions, use one of the mailing lists
to discuss them with Vim users and developers:
https://www.vim.org/maillist.php
If nothing else works, report bugs directly to the vim-dev mailing list:
<vim-dev@vim.org>
MAIN AUTHOR
Most of Vim was created by Bram Moolenaar <Bram@vim.org>, ":help Bram-Moolenaar"
Send any other comments, patches, flowers and suggestions to the vim-dev
mailing list: <vim-dev@vim.org>
-353
View File
@@ -1,353 +0,0 @@
![Vim Logo](https://github.com/vim/vim/blob/master/runtime/vimlogo.gif)
# What is Vim9?
This is a new syntax for Vim script that was introduced with Vim 9.0.
It intends making Vim script faster and better.
# Why Vim9?
## 1. FASTER VIM SCRIPT
The third item on the poll results of 2018, after popup windows and text
properties, both of which have been implemented, is faster Vim script.
So how do we do that?
I have been throwing some ideas around, and soon came to the conclusion
that the current way functions are called and executed, with
dictionaries for the arguments and local variables, is never going to be
very fast. We're lucky if we can make it twice as fast. The overhead
of a function call and executing every line is just too high.
So what then? We can only make something fast by having a new way of
defining a function, with similar but different properties of the old
way:
* Arguments are only available by name, not through the a: dictionary or
the a:000 list.
* Local variables are not available in an l: dictionary.
* A few more things that slow us down, such as exception handling details.
I Implemented a "proof of concept" and measured the time to run a simple
for loop with an addition (Justin used this example in his presentation,
full code is below):
``` vim
let sum = 0
for i in range(1, 2999999)
let sum += i
endfor
```
| how | time in sec |
| --------| -------- |
| Vim old | 5.018541 |
| Python | 0.369598 |
| Lua | 0.078817 |
| LuaJit | 0.004245 |
| Vim new | 0.073595 |
That looks very promising! It's just one example, but it shows how much
we can gain, and also that Vim script can be faster than builtin
interfaces.
LuaJit is much faster at Lua-only instructions. In practice the script would
not do something useless counting, but change the text. For example,
reindent all the lines:
``` vim
let totallen = 0
for i in range(1, 100000)
call setline(i, ' ' .. getline(i))
let totallen += len(getline(i))
endfor
```
| how | time in sec |
| --------| -------- |
| Vim old | 0.578598 |
| Python | 0.152040 |
| Lua | 0.164917 |
| LuaJit | 0.128400 |
| Vim new | 0.079692 |
[These times were measured on a different system by Dominique Pelle]
The differences are smaller, but Vim 9 script is clearly the fastest.
Using LuaJIT is only a little bit faster than plain Lua here, clearly the call
back to the Vim code is costly.
How does Vim9 script work? The function is first compiled into a sequence of
instructions. Each instruction has one or two parameters and a stack is
used to store intermediate results. Local variables are also on the
stack, space is reserved during compilation. This is a fairly normal
way of compilation into an intermediate format, specialized for Vim,
e.g. each stack item is a typeval_T. And one of the instructions is
"execute Ex command", for commands that are not compiled.
## 2. DEPRIORITIZE INTERFACES
Attempts have been made to implement functionality with built-in script
languages such as Python, Perl, Lua, Tcl and Ruby. This never gained much
foothold, for various reasons.
Instead of using script language support in Vim:
* Encourage implementing external tools in any language and communicate
with them. The job and channel support already makes this possible.
Really any language can be used, also Java and Go, which are not
available built-in.
* No priority for the built-in language interfaces. They will have to be kept
for backwards compatibility, but many users won't need a Vim build with these
interfaces.
* Improve the Vim script language, it is used to communicate with the external
tool and implements the Vim side of the interface. Also, it can be used when
an external tool is undesired.
Altogether this creates a clear situation: Vim with the +eval feature
will be sufficient for most plugins, while some plugins require
installing a tool that can be written in any language. No confusion
about having Vim but the plugin not working because some specific
language is missing. This is a good long term goal.
Rationale: Why is it better to run a tool separately from Vim than using a
built-in interface and interpreter? Take for example something that is
written in Python:
* The built-in interface uses the embedded python interpreter. This is less
well maintained than the python command. Building Vim with it requires
installing developer packages. If loaded dynamically there can be a version
mismatch.
* When running the tool externally the standard python command can be used,
which is quite often available by default or can be easily installed.
* The built-in interface has an API that is unique for Vim with Python. This is
an extra API to learn.
* A .py file can be compiled into a .pyc file and execute much faster.
* Inside Vim multi-threading can cause problems, since the Vim core is single
threaded. In an external tool there are no such problems.
* The Vim part is written in .vim files, the Python part is in .py files, this
is nicely separated.
* Disadvantage: An interface needs to be made between Vim and Python.
JSON is available for this, and it's fairly easy to use. But it still
requires implementing asynchronous communication.
## 3. BETTER VIM SCRIPT
To make Vim faster a new way of defining a function needs to be added.
While we are doing that, since the lines in this function won't be fully
backwards compatible anyway, we can also make Vim script easier to use.
In other words: "less weird". Making it work more like modern
programming languages will help. No surprises.
A good example is how in a function the arguments are prefixed with
"a:". No other language I know does that, so let's drop it.
Taking this one step further is also dropping "s:" for script-local variables;
everything at the script level is script-local by default. Since this is not
backwards compatible it requires a new script style: Vim9 script!
To avoid having more variations, the syntax inside a compiled function is the
same as in Vim9 script. Thus you have legacy syntax and Vim9 syntax.
It should be possible to convert code from other languages to Vim
script. We can add functionality to make this easier. This still needs
to be discussed, but we can consider adding type checking and a simple
form of classes. If you look at JavaScript for example, it has gone
through these stages over time, adding real class support and now
TypeScript adds type checking. But we'll have to see how much of that
we actually want to include in Vim script. Ideally a conversion tool
can take Python, JavaScript or TypeScript code and convert it to Vim
script, with only some things that cannot be converted.
Vim script won't work the same as any specific language, but we can use
mechanisms that are commonly known, ideally with the same syntax. One
thing I have been thinking of is assignments without ":let". I often
make that mistake (after writing JavaScript especially). I think it is
possible, if we make local variables shadow commands. That should be OK,
if you shadow a command you want to use, just rename the variable.
Using "var" and "const" to declare a variable, like in JavaScript and
TypeScript, can work:
``` vim
def MyFunction(arg: number): number
var local = 1
var todo = arg
const ADD = 88
while todo > 0
local += ADD
todo -= 1
endwhile
return local
enddef
```
The similarity with JavaScript/TypeScript can also be used for dependencies
between files. Vim currently uses the `:source` command, which has several
disadvantages:
* In the sourced script, is not clear what it provides. By default all
functions are global and can be used elsewhere.
* In a script that sources other scripts, it is not clear what function comes
from what sourced script. Finding the implementation is a hassle.
* Prevention of loading the whole script twice must be manually implemented.
We can use the `:import` and `:export` commands from the JavaScript standard to
make this much better. For example, in script "myfunction.vim" define a
function and export it:
``` vim
vim9script " Vim9 script syntax used here
var local = 'local variable is not exported, script-local'
export def MyFunction() " exported function
...
def LocalFunction() " not exported, script-local
...
```
And in another script import the function:
``` vim
vim9script " Vim9 script syntax used here
import MyFunction from 'myfunction.vim'
```
This looks like JavaScript/TypeScript, thus many users will understand the
syntax.
These are ideas, this will take time to design, discuss and implement.
Eventually this will lead to Vim 9!
## Code for sum time measurements
Vim was build with -O2.
``` vim
func VimOld()
let sum = 0
for i in range(1, 2999999)
let sum += i
endfor
return sum
endfunc
func Python()
py3 << END
sum = 0
for i in range(1, 3000000):
sum += i
END
return py3eval('sum')
endfunc
func Lua()
lua << END
sum = 0
for i = 1, 2999999 do
sum = sum + i
end
END
return luaeval('sum')
endfunc
def VimNew(): number
var sum = 0
for i in range(1, 2999999)
sum += i
endfor
return sum
enddef
let start = reltime()
echo VimOld()
echo 'Vim old: ' .. reltimestr(reltime(start))
let start = reltime()
echo Python()
echo 'Python: ' .. reltimestr(reltime(start))
let start = reltime()
echo Lua()
echo 'Lua: ' .. reltimestr(reltime(start))
let start = reltime()
echo VimNew()
echo 'Vim new: ' .. reltimestr(reltime(start))
```
## Code for indent time measurements
``` vim
def VimNew(): number
var totallen = 0
for i in range(1, 100000)
setline(i, ' ' .. getline(i))
totallen += len(getline(i))
endfor
return totallen
enddef
func VimOld()
let totallen = 0
for i in range(1, 100000)
call setline(i, ' ' .. getline(i))
let totallen += len(getline(i))
endfor
return totallen
endfunc
func Lua()
lua << END
b = vim.buffer()
totallen = 0
for i = 1, 100000 do
b[i] = " " .. b[i]
totallen = totallen + string.len(b[i])
end
END
return luaeval('totallen')
endfunc
func Python()
py3 << END
cb = vim.current.buffer
totallen = 0
for i in range(0, 100000):
cb[i] = ' ' + cb[i]
totallen += len(cb[i])
END
return py3eval('totallen')
endfunc
new
call setline(1, range(100000))
let start = reltime()
echo VimOld()
echo 'Vim old: ' .. reltimestr(reltime(start))
bwipe!
new
call setline(1, range(100000))
let start = reltime()
echo Python()
echo 'Python: ' .. reltimestr(reltime(start))
bwipe!
new
call setline(1, range(100000))
let start = reltime()
echo Lua()
echo 'Lua: ' .. reltimestr(reltime(start))
bwipe!
new
call setline(1, range(100000))
let start = reltime()
echo VimNew()
echo 'Vim new: ' .. reltimestr(reltime(start))
bwipe!
```
-153
View File
@@ -1,153 +0,0 @@
# [![Vim The editor](https://github.com/vim/vim/raw/master/runtime/vimlogo.gif)](https://www.vim.org)
[![Github Build status](https://github.com/vim/vim/workflows/GitHub%20CI/badge.svg)](https://github.com/vim/vim/actions?query=workflow%3A%22GitHub+CI%22)
[![Appveyor Build status](https://ci.appveyor.com/api/projects/status/o2qht2kjm02sgghk?svg=true)](https://ci.appveyor.com/project/chrisbra/vim)
[![Cirrus Build Status](https://api.cirrus-ci.com/github/vim/vim.svg)](https://cirrus-ci.com/github/vim/vim)
[![Coverage Status](https://codecov.io/gh/vim/vim/coverage.svg?branch=master)](https://codecov.io/gh/vim/vim?branch=master)
[![Coverity Scan](https://scan.coverity.com/projects/241/badge.svg)](https://scan.coverity.com/projects/vim)
[![Debian CI](https://badges.debian.net/badges/debian/testing/vim/version.svg)](https://buildd.debian.org/vim)
[![Packages](https://repology.org/badge/tiny-repos/vim.svg)](https://repology.org/metapackage/vim)
[![Fossies codespell report](https://fossies.org/linux/test/vim-master.tar.gz/codespell.svg)](https://fossies.org/linux/test/vim-master.tar.gz/codespell.html)
If you find a bug or want to discuss the best way to add a new feature, please
[open an issue](https://github.com/vim/vim/issues/new/choose).
If you have a question or want to discuss the best way to do something with
Vim, you can use [StackExchange](https://vi.stackexchange.com/)
or one of the [Maillists](https://www.vim.org/community.php).
## What is Vim?
Vim is a greatly improved version of the good old UNIX editor
[Vi](https://en.wikipedia.org/wiki/Vi_(text_editor)). Many new
features have been added: multi-level undo, syntax highlighting, command line
history, on-line help, spell checking, filename completion, block operations,
script language, etc. There is also a Graphical User Interface (GUI)
available. Still, Vi compatibility is maintained, those who have Vi "in the
fingers" will feel at home.
See [`runtime/doc/vi_diff.txt`](runtime/doc/vi_diff.txt) for differences with
Vi.
This editor is very useful for editing programs and other plain text files.
All commands are given with normal keyboard characters, so those who can type
with ten fingers can work very fast. Additionally, function keys can be
mapped to commands by the user, and the mouse can be used.
Vim runs under MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS and almost all
flavours of UNIX. Porting to other systems should not be very difficult.
Older versions of Vim run on MS-DOS, MS-Windows 95/98/Me/NT/2000/XP/Vista,
Amiga DOS, Atari MiNT, BeOS, RISC OS and OS/2. These are no longer maintained.
For Vim9 script see [README_VIM9](README_VIM9.md).
## Distribution
You can often use your favorite package manager to install Vim. On Mac and
Linux a small version of Vim is pre-installed, you still need to install Vim
if you want more features.
There are separate distributions for Unix, PC, Amiga and some other systems.
This `README.md` file comes with the runtime archive. It includes the
documentation, syntax files and other files that are used at runtime. To run
Vim you must get either one of the binary archives or a source archive.
Which one you need depends on the system you want to run it on and whether you
want or must compile it yourself. Check https://www.vim.org/download.php for
an overview of currently available distributions.
Some popular places to get the latest Vim:
* Check out the git repository from [GitHub](https://github.com/vim/vim).
* Get the source code as an [archive](https://github.com/vim/vim/tags).
* Get a Windows executable from the
[vim-win32-installer](https://github.com/vim/vim-win32-installer/releases) repository.
## Compiling
If you obtained a binary distribution you don't need to compile Vim. If you
obtained a source distribution, all the stuff for compiling Vim is in the
[`src`](./src/) directory. See [`src/INSTALL`](./src/INSTALL) for instructions.
## Installation
See one of these files for system-specific instructions. Either in the
[READMEdir directory](./READMEdir/) (in the repository) or
the top directory (if you unpack an archive):
```
README_ami.txt Amiga
README_unix.txt Unix
README_dos.txt MS-DOS and MS-Windows
README_mac.txt Macintosh
README_haiku.txt Haiku
README_vms.txt VMS
```
There are other `README_*.txt` files, depending on the distribution you used.
## Documentation
The Vim tutor is a one hour training course for beginners. Often it can be
started as `vimtutor`. See `:help tutor` for more information.
The best is to use `:help` in Vim. If you don't have an executable yet, read
[`runtime/doc/help.txt`](./runtime/doc/help.txt).
It contains pointers to the other documentation files.
The User Manual reads like a book and is recommended to learn to use
Vim. See `:help user-manual`.
## Copying
Vim is Charityware. You can use and copy it as much as you like, but you are
encouraged to make a donation to help orphans in Uganda. Please read the file
[`runtime/doc/uganda.txt`](./runtime/doc/uganda.txt)
for details (do `:help uganda` inside Vim).
Summary of the license: There are no restrictions on using or distributing an
unmodified copy of Vim. Parts of Vim may also be distributed, but the license
text must always be included. For modified versions, a few restrictions apply.
The license is GPL compatible, you may compile Vim with GPL libraries and
distribute it.
## Sponsoring
Fixing bugs and adding new features takes a lot of time and effort. To show
your appreciation for the work and motivate developers to continue working on
Vim please send a donation.
The money you donated will be mainly used to help children in Uganda. See
[`runtime/doc/uganda.txt`](./runtime/doc/uganda.txt). But at the same time
donations increase the development team motivation to keep working on Vim!
For the most recent information about sponsoring look on the Vim web site:
https://www.vim.org/sponsor/
## Contributing
If you would like to help make Vim better, see the
[CONTRIBUTING.md](./CONTRIBUTING.md) file.
## Information
If you are on macOS, you can use [MacVim](https://macvim.org).
The latest news about Vim can be found on the Vim home page:
https://www.vim.org/
If you have problems, have a look at the Vim documentation or tips:
https://www.vim.org/docs.php
https://vim.fandom.com/wiki/Vim_Tips_Wiki
If you still have problems or any other questions, use one of the mailing
lists to discuss them with Vim users and developers:
https://www.vim.org/maillist.php
If nothing else works, report bugs directly to the vim-dev mailing list:
`<vim-dev@vim.org>`
## Main author
Most of Vim was created by Bram Moolenaar `<Bram@vim.org>`
[Bram-Moolenaar](https://vimhelp.org/version9.txt.html#Bram-Moolenaar)
Send any other comments, patches, flowers and suggestions to the vim-dev mailing list:
`<vim-dev@vim.org>`
This is `README.md` for version 9.1 of Vim: Vi IMproved.
-23
View File
@@ -1,23 +0,0 @@
Vim Vi IMproved. A clone of the UNIX text editor Vi. Very useful
for editing programs and other plain ASCII text. Full Vi
compatibility and includes all Ex commands. Extra features
above Vi: Multilevel undo, multiple windows, syntax
highlighting, command line history, folding, improved command
line editing, command typeahead display, command to display
yank buffers, possibility to edit binary files, file name
stack, support for Manx QuickFix and other compiler's error
messages, shows current file name in window title, on-line
help, rectangular cut/paste, etc., etc., etc...
Version 9.1. Also runs under UNIX, MS-Windows, Mac, etc.
vim91rt.tgz contains the documentation and syntax files.
vim91bin.tgz contains the binaries.
vim91src.tgz contains the sources.
Author: Bram Moolenaar et al.
Xxd Hex dumper and reader. Can be used to view files as hex, edit
them and write them back. Can also be used to patch files.
Version 2023 Oct 25
Author: Juergen Weigert
Binary file not shown.
Binary file not shown.
-32
View File
@@ -1,32 +0,0 @@
README_ami.txt for version 9.1 of Vim: Vi IMproved.
This file explains the installation of Vim on Amiga systems.
See README.txt for general information about Vim.
Unpack the distributed files in the place where you want to keep them. It is
wise to have a "vim" directory to keep your vimrc file and any other files you
change. The distributed files go into a subdirectory. This way you can
easily upgrade to a new version. For example:
dh0:editors/vim contains your vimrc and modified files
dh0:editors/vim/vim54 contains the Vim version 5.4 distributed files
dh0:editors/vim/vim55 contains the Vim version 5.5 distributed files
You would then unpack the archives like this:
cd dh0:editors
tar xf t:vim91bin.tar
tar xf t:vim91rt.tar
Set the $VIM environment variable to point to the top directory of your Vim
files. For the above example:
set VIM=dh0:editors/vim
Vim version 5.4 will look for your vimrc file in $VIM, and for the runtime
files in $VIM/vim54. See ":help $VIM" for more information.
Make sure the Vim executable is in your search path. Either copy the Vim
executable to a directory that is in your search path, or (preferred) modify
the search path to include the directory where the Vim executable is.
Binary file not shown.
-12
View File
@@ -1,12 +0,0 @@
README_amibin.txt for version 9.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_ami.txt" for installation instructions for the Amiga.
These files are in the runtime archive (vim91rt.tgz).
The Amiga "bin" archive contains the Vim executable for the Amiga. It was
compiled with "big" features.
Postscript printing is not included to avoid requiring floating point
computations.
Binary file not shown.
-11
View File
@@ -1,11 +0,0 @@
README_amisrc.txt for version 9.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_ami.txt" for installation instructions for the Amiga.
These files are in the runtime archive (vim91rt.tgz).
The Amiga source archive contains the files needed to compile Vim on the
Amiga.
See "src/INSTALLami.txt" for instructions on how to compile Vim on the Amiga.
Binary file not shown.
-16
View File
@@ -1,16 +0,0 @@
README_bindos.txt for version 9.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_dos.txt" for installation instructions for MS-DOS and MS-Windows.
These files are in the runtime archive (vim91rt.zip).
There are several binary distributions of Vim for the PC. You would normally
pick only one of them, but it's also possible to install several.
These ones are available (the version number may differ):
vim91w32.zip Windows console version
gvim91.zip Windows GUI version
gvim91ole.zip Windows GUI version with OLE
You MUST also get the runtime archive (vim91rt.zip).
The sources are also available (vim91src.zip).
-125
View File
@@ -1,125 +0,0 @@
README_dos.txt for version 9.1 of Vim: Vi IMproved.
This file explains the installation of Vim on MS-Windows systems.
See "README.txt" for general information about Vim.
There are two ways to install Vim:
A. Use the self-installing .exe file.
B. Unpack .zip files and run the install.exe program.
A. Using the self-installing .exe
---------------------------------
This is mostly self-explaining. Just follow the prompts and make the
selections. A few things to watch out for:
- When an existing installation is detected, you are offered to first remove
this. The uninstall program is then started while the install program waits
for it to complete. Sometimes the windows overlap each other, which can be
confusing. Be sure the complete the uninstalling before continuing the
installation. Watch the taskbar for uninstall windows.
- When selecting a directory to install Vim, use the same place where other
versions are located. This makes it easier to find your _vimrc file. For
example "C:\Program Files\vim" or "D:\vim". A name ending in "vim" is
preferred.
- After selecting the directory where to install Vim, clicking on "Next" will
start the installation.
B. Using .zip files
-------------------
These are the normal steps to install Vim from the .zip archives:
1. Go to the directory where you want to put the Vim files. Examples:
cd C:\
cd D:\editors
If you already have a "vim" directory, go to the directory in which it is
located. Check the $VIM setting to see where it points to:
set VIM
For example, if you have
C:\vim\vim91
do
cd C:\
Binary and runtime Vim archives are normally unpacked in the same location,
on top of each other.
2. Unpack the zip archives. This will create a new directory "vim\vim91",
in which all the distributed Vim files are placed. Since the directory
name includes the version number, it is unlikely that you overwrite
existing files.
Examples:
pkunzip -d gvim91.zip
unzip vim91w32.zip
You need to unpack the runtime archive and at least one of the binary
archives. When using more than one binary version, be careful not to
overwrite one version with the other, the names of the executables
"vim.exe" and "gvim.exe" are the same.
After you unpacked the files, you can still move the whole directory tree
to another location. That is where they will stay, the install program
won't move or copy the runtime files.
3. Change to the new directory:
cd vim\vim91
Run the "install.exe" program. It will ask you a number of questions about
how you would like to have your Vim setup. Among these are:
- You can tell it to write a "_vimrc" file with your preferences in the
parent directory.
- It can also install an "Edit with Vim" entry in the Windows Explorer
popup menu.
- You can have it create batch files, so that you can run Vim from the
console or in a shell. You can select one of the directories in your
$PATH. If you skip this, you can add Vim to the search path manually:
The simplest is to add a line to your autoexec.bat. Examples:
set path=%path%;C:\vim\vim91
set path=%path%;D:\editors\vim\vim91
- Create entries for Vim on the desktop and in the Start menu.
That's it!
Remarks:
- If Vim can't find the runtime files, ":help" won't work and the GUI version
won't show a menubar. Then you need to set the $VIM environment variable to
point to the top directory of your Vim files. Example:
set VIM=C:\editors\vim
Vim version 9.1 will look for your vimrc file in $VIM, and for the runtime
files in $VIM/vim91. See ":help $VIM" for more information.
- To avoid confusion between distributed files of different versions and your
own modified vim scripts, it is recommended to use this directory layout:
("C:\vim" is used here as the root, replace it with the path you use)
Your own files:
C:\vim\_vimrc Your personal vimrc.
C:\vim\_viminfo Dynamic info for 'viminfo'.
C:\vim\vimfiles\ftplugin\*.vim Filetype plugins
C:\vim\... Other files you made.
Distributed files:
C:\vim\vim91\vim.exe The Vim version 9.1 executable.
C:\vim\vim91\doc\*.txt The version 9.1 documentation files.
C:\vim\vim91\bugreport.vim A Vim version 9.1 script.
C:\vim\vim91\... Other version 9.1 distributed files.
In this case the $VIM environment variable would be set like this:
set VIM=C:\vim
Then $VIMRUNTIME will automatically be set to "$VIM\vim91". Don't add
"vim91" to $VIM, that won't work.
- You can put your Vim executable anywhere else. If the executable is not
with the other Vim files, you should set $VIM. The simplest is to add a line
to your autoexec.bat. Examples:
set VIM=c:\vim
set VIM=d:\editors\vim
- If you have told the "install.exe" program to add the "Edit with Vim" menu
entry, you can remove it by running the "uninstall.exe". See
":help win32-popup-menu".
For further information, type one of these inside Vim:
:help dos
:help win32
-40
View File
@@ -1,40 +0,0 @@
README_extra.txt for version 9.1 of Vim: Vi IMproved.
These extra files of Vim are for special purposes. This README explains what
the files are for. For general information about Vim, see the "README.txt"
file.
farsi/* Files for the Farsi (persian) language. If you don't
know what Farsi is, this is not for you.
src/if_sniff.* Interface to SNiFF. If you don't know what SNiFF is,
this is not for you.
src/os_amiga.* Files for the Amiga port.
src/os_msdos.*
src/os_dos.* Files for the MS-DOS port.
src/os_mac.* Files for the Mac port.
src/MacVim/* Files for the MacVim port.
src/os_vms* Files for the VMS port.
src/os_w32*
src/os_win32.* Files for the Win32 port.
src/gui_w32.* Files for the Win32 GUI.
src/gui_w48.* Files for the Win32 and Win16 GUI.
src/Make_mvc.mak MS Visual C++ makefile for the Win32 GUI.
src/if_ole.* OLE automation interface, for MS Windows.
src/GvimExt/* DLL for the "Edit with Vim" context menu entry
nsis/* NSIS script to build the self-installing MS-Windows exe
runtime/doc/*.man Preprocessed manual pages.
runtime/macros/file_select.vim Vim script to browse directories (Unix only).
-13
View File
@@ -1,13 +0,0 @@
README_haiku.txt for version 9.1 of Vim: Vi IMproved.
This file explains the installation of Vim on Haiku operating system.
See "README.txt" for general information about Vim.
Preferred (and easy) way to get Vim on Haiku is to use default Haiku
software repository HaikuPorts. To get Vim:
- Open HaikuDepot application and search for "vim" package, then install,
- Open a Terminal and type "pkgman install vim", then follow instructions.
If you prefer to install Vim from source, follow the instructions on
"runtime/doc/os_haiku.txt", "Compiling Vim" section.
-13
View File
@@ -1,13 +0,0 @@
README_mac.txt for version 9.1 of Vim: Vi IMproved.
How to install MacVim?
========================
Download MacVim.dmg from latest binary release page https://github.com/macvim-dev/macvim/releases/latest , open the dmg file, and copy MacVim.app to /Applications.
Questions?
========================
Please take a look at the home page http://macvim-dev.github.io/macvim/
-17
View File
@@ -1,17 +0,0 @@
README_ole.txt for version 9.1 of Vim: Vi IMproved.
This archive contains gvim.exe with OLE interface.
This version of gvim.exe can also load a number of interface dynamically (you
can optionally install the .dll files for each interface).
It is only for MS-Windows.
Also see the README_bindos.txt, README_dos.txt and README.txt files.
Be careful not to overwrite the OLE gvim.exe with the non-OLE gvim.exe when
unpacking another binary archive! Check the output of ":version":
Win32s - "MS-Windows 16/32 bit GUI version"
Win32 - "MS-Windows 32 bit GUI version"
Win32 with OLE - "MS-Windows 32 bit GUI version with OLE support"
For further information, type this inside Vim:
:help if_ole
-5
View File
@@ -1,5 +0,0 @@
README_os2.txt for version 9.1 of Vim: Vi IMproved.
This file used to explain the installation of Vim on OS/2 systems.
However, support for OS/2 has been removed in patch 7.4.1008.
See "README.txt" for general information about Vim.
-117
View File
@@ -1,117 +0,0 @@
README_os390.txt for version 9.1 of Vim: Vi IMproved.
This readme explains how to build Vim on z/OS. Formerly called OS/390.
See "README.txt" for general information about Vim.
Most likely there are not many users out there using Vim on z/OS. So chances
are good, that some bugs are still undiscovered.
Getting the source to z/OS:
==========================
First get the source code in one big tar file and ftp it a binary to z/OS. If
the tar file is initially compressed with gzip (tar.gz) or bzip2 (tar.bz2)
uncompress it on your PC, as these tools are (most likely) not available on
the mainframe.
To reduce the size of the tar file you might compress it into a zip file. On
z/OS Unix you might have the command "jar" from java to uncompress a zip. Use:
jar xvf <zip file name>
Unpack the tar file on z/OS with
pax -o from=ISO8859-1,to=IBM-1047 -rf vim.tar
Note: The Vim source contains a few bitmaps etc which will be destroyed by
this command, but these files are not needed on zOS (at least not for the
console version).
Compiling:
==========
Vim can be compiled with or without GUI support. For 7.4 only the compilation
without GUI was tested. Below is a section about compiling with X11 but this
is from an earlier version of Vim.
Console only:
-------------
If you build VIM without X11 support, compiling and building is nearly
straightforward.
Change to the vim directory and do:
# Don't use c89!
# Allow intermixing of compiler options and files.
$ export CC=cc
$ export _CC_CCMODE=1
$./configure --with-features=normal --without-x --enable-gui=no
$ cd src
$ make
There may be warnings:
- include files not found (libc, sys/param.h, ...)
- Redeclaration of ... differs from ...
-- just ignore them.
$ make test
This will produce lots of garbage on your screen (including error
messages). Don't worry.
If the test stops at one point in vim (might happen in test 11), just
press :q!
Expected test failures:
11: If you don't have gzip installed
24: test of backslash sequences in regexp are ASCII dependent
42: Multibyte is not supported on z/OS
55: ASCII<->EBCDIC sorting
57: ASCII<->EBCDIC sorting
58: Spell checking is not supported with EBCDIC
71: Blowfish encryption doesn't work
$ make install
With X11:
---------
WARNING: This instruction was not tested with Vim 7.4 or later.
There are two ways for building VIM with X11 support. The first way is simple
and results in a big executable (~13 Mb), the second needs a few additional
steps and results in a much smaller executable (~4.5 Mb). These examples
assume you want Motif.
The easy way:
$ export CC=cc
$ export _CC_CCMODE=1
$ ./configure --enable-max-features --enable-gui=motif
$ cd src
$ make
With this VIM is linked statically with the X11 libraries.
The smarter way:
Make VIM as described above. Then create a file named 'link.sed' with the
following content (see src/link.390):
s/-lXext *//g
s/-lXmu *//g
s/-lXm */\/usr\/lib\/Xm.x /g
s/-lX11 */\/usr\/lib\/X11.x /g
s/-lXt *//g
s/-lSM */\/usr\/lib\/SM.x /g
s/-lICE */\/usr\/lib\/ICE.x /g
Then do:
$ rm vim
$ make
Now Vim is linked with the X11-DLLs.
See the Makefile and the file link.sh on how link.sed is used.
-8
View File
@@ -1,8 +0,0 @@
README_src.txt for version 9.1 of Vim: Vi IMproved.
The source archive contains the files needed to compile Vim on Unix systems.
It is packed for Unix systems (NL line separator).
For more information, see the README.txt file that comes with the runtime
archive (vim-9.1-rt.tar.gz). To be able to run Vim you MUST get the runtime
archive too!
-11
View File
@@ -1,11 +0,0 @@
README_srcdos.txt for version 9.1 of Vim: Vi IMproved.
See "README.txt" for general information about Vim.
See "README_dos.txt" for installation instructions for MS-Windows.
These files are in the runtime archive (vim91rt.zip).
The DOS source archive contains the files needed to compile Vim on MS-Windows.
It is packed for MS-Windows systems, with CR-LF.
See "src/INSTALLpc.txt" for instructions on how to compile Vim on the PC.
-10
View File
@@ -1,10 +0,0 @@
README_unix.txt for version 9.1 of Vim: Vi IMproved.
This file explains the installation of Vim on Unix systems.
See "README.txt" for general information about Vim.
When you use the source distribution, "make install" is used to install Vim.
See the "INSTALL" file in the "src" directory.
If you use a compiled package, follow the instructions for the package.
-11
View File
@@ -1,11 +0,0 @@
The Python project that creates `vimlogo.svg` can be found at
`https://github.com/ShayHill/vimlogo`. The Vim license applies.
`vimlogo.svg` is an effort to remove errors and inadvertent inconsistencies
from the original vim logo while maintaining the original design. `vimlogo.svg`
is based on the `vimlogo.svg` file (previously?) found at
`https://www.vim.org/logos.php`
As of 2024 Jan 30, `vimlogo.svg` is a separate project from `vimlogo.cdr`,
`vimlogo.eps`, `vimlogo.gif`, `vimlogo.pdf`, and `vimlogo.xpm`, all of which
are slightly different from each other.
-52
View File
@@ -1,52 +0,0 @@
README_vms.txt for version 9.1 of Vim: Vi IMproved.
This file explains the installation of Vim on VMS systems.
See "README.txt" in the runtime archive for information about Vim.
Most information can be found in the on-line documentation. Use ":help vms"
inside Vim. Or get the runtime files and read runtime/doc/os_vms.txt to find
out how to install and configure Vim with runtime files etc.
To compile Vim yourself you need three archives:
vim-X.X-rt.tar.gz runtime files
vim-X.X-src.tar.gz source files
vim-X.X-extra.tar.gz extra source files
Compilation is recommended, in order to make sure that the correct
libraries are used for your specific system. Read about compiling in
src/INSTALLvms.txt.
To use the binary version, you need one of these archives:
vim-XX-exe-x86-gui.zip X86_64 GUI/Motif executables
vim-XX-exe-x86-term.zip X86_64 console executables
vim-XX-exe-ia64-gui.zip IA64 GUI/Motif executables
vim-XX-exe-ia64-gtk.zip IA64 GUI/GTK executables
vim-XX-exe-ia64-term.zip IA64 console executables
vim-XX-exe-axp-gui.zip Alpha GUI/Motif executables
vim-XX-exe-axp-gtk.zip Alpha GUI/GTK executables
vim-XX-exe-axp-term.zip Alpha console executables
vim-XX-exe-vax-gui.zip VAX GUI executables
vim-XX-exe-vax-term.zip VAX console executables
and of course
vim-XX-runtime.zip runtime files
The binary archives contain: vim.exe, ctags.exe, xxd.exe files,
but there are also prepared "deploy ready" archives:
vim-XX-x86.zip GUI and console executables with runtime and
help files for X86_64 systems
vim-XX-ia64.zip GUI and console executables with runtime and
help files for IA64 systems
vim-XX-axp.zip GUI and console executables with runtime and
help files for Alpha systems
vim-XX-vax.zip GUI and console executables with runtime and
help files for VAX systems
GTK builds need LIBGTK library installed.
These executables and up to date patches for OpenVMS system are downloadable
from http://www.polarhome.com/vim/ or ftp://ftp.polarhome.com/pub/vim/
-6
View File
@@ -1,6 +0,0 @@
README_w32s.txt for version 9.1 of Vim: Vi IMproved.
This file used to explain the installation of Vim on MS-Windows 3.1 and 3.11
systems. However, support for MS-Windows 3.1 and 3.11 has been removed in
patch 7.4.1364.
See "README.txt" for general information about Vim.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-10
View File
@@ -1,10 +0,0 @@
# Security Policy
## Reporting a vulnerability
If you want to report a security issue, please privately disclose the issue to the vim-security mailing list
vim-security@googlegroups.com
This is a private list, read only by the maintainers, but anybody can post, after moderation.
**Please don't publicly disclose the issue until it has been addressed by us.**
+526
View File
@@ -0,0 +1,526 @@
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle">
<channel>
<title>MacVim</title>
<link>https://macvim.org/appcast/latest.xml</link>
<description>MacVim</description>
<item>
<title>MacVim release-181</title>
<description><![CDATA[
<style>
:root { supported-color-schemes: light dark; color-scheme: light dark; }
div h1 { padding-bottom: .3em; border-bottom: 1px solid gray; }
/* Older versions' release notes. Will be optionally shown in collapsed form if the user has upgraded across multiple versions. */
div > details.oldVersionToggle > summary {
font-size: 1.2em;
border-radius: 5px;
border-bottom: 3px solid #57c4d0;
cursor: pointer;
padding: 10px;
}
.toc {
/* Sparkle does not seem to allow anchor links. Just disable the TOC. */
display: none;
}
div.sparkle-installed-version { display:none; }
div.sparkle-installed-version ~ section { display: none; }
</style>
<div>
<p>Updated to Vim 9.1.1128</p>
<nav>
<ul class="toc" id="markdown-toc">
<li><a href="#r181-defaults-change" id="markdown-toc-r181-defaults-change">Defaults Change</a></li>
<li><a href="#r181-features" id="markdown-toc-r181-features">Features</a> <ul>
<li><a href="#r181-tabs" id="markdown-toc-r181-tabs">Tabs</a></li>
<li><a href="#r181-new-vim-features" id="markdown-toc-r181-new-vim-features">New Vim features</a></li>
<li><a href="#r181-misc-new-settings" id="markdown-toc-r181-misc-new-settings">Misc New Settings</a></li>
</ul>
</li>
<li><a href="#r181-general" id="markdown-toc-r181-general">General</a></li>
<li><a href="#r181-fixes" id="markdown-toc-r181-fixes">Fixes</a> <ul>
<li><a href="#r181-apple-intelligence-writing-tools" id="markdown-toc-r181-apple-intelligence-writing-tools">Apple “Intelligence” Writing Tools</a></li>
<li><a href="#r181-window-resizing-and-full-screen" id="markdown-toc-r181-window-resizing-and-full-screen">Window resizing and full screen</a></li>
<li><a href="#r181-other-fixes" id="markdown-toc-r181-other-fixes">Other Fixes</a></li>
</ul>
</li>
<li><a href="#r181-scripting" id="markdown-toc-r181-scripting">Scripting</a></li>
<li><a href="#r181-compatibility" id="markdown-toc-r181-compatibility">Compatibility</a></li>
</ul>
</nav>
<p>This update contains a completely new GUI tabs implementation by @sfsam! It also contains lots of small fixes for window resizing and full screen mode that aims to make using MacVim feel rock solid and stable.</p>
<h1 id="r181-defaults-change">Defaults Change</h1>
<p>New settings defaults related to window sizing <a href="https://github.com/macvim-dev/macvim/issues/1528">#1528</a>:</p>
<ul>
<li>“Smoothly resizes window” is now on by default. MacVims window will now resize smoothly instead of snapped to the size of the character grid.</li>
<li>Vims <code>guioptions</code> now has <code>k</code> set by default (<a href="https://macvim.org/docs/redirect.html?tag='go-k'"><code>:h go-k</code></a>). This prevents MacVims window size from changing unnecessarily when showing/hiding tabs or changing font size.</li>
</ul>
<p>These should align MacVim better with how other apps work and integrate better with OS window management, including macOS 15 Sequoias window tiling feature.</p>
<h1 id="r181-features">Features</h1>
<h2 id="r181-tabs">Tabs</h2>
<p>MacVim has a new tabs implementation! The old version (PSMTabBarControl) is not maintained and lacks features such as overflowing tabs and customizable colors. The new tabs will overflow horizontally and are scrollable. They also animate when tabs are closed or moved, respect system settings such as right-to-left locales and high-contrast modes, and are designed to fit within the currently selected Vim colors.</p>
<p>There are a few ways to customize the colors of the new tabs, under the “Appearance” settings pane. MacVim defaults to an “Automatic colors” mode which tries to pick sensible colors automatically based on the current foreground/background colors. However, you can also configure it to simply use the tab colors specified by the Vim color scheme (some color schemes will work better than others depending on their choice of colors). Another new option is “Use tabs background color” which when combined with “Transparent title bar” allows the title bar and tabs to look like a single cohesive whole.</p>
<p><img width="375" alt="new tabs" src="https://github.com/user-attachments/assets/f70a683e-1450-48d1-89b7-f6c12d73bf90" />
<img width="375" alt="image" src="https://github.com/user-attachments/assets/b1af9c2f-8176-43d8-add7-faf6272f9a74" />
<img width="375" alt="new tabs" src="https://github.com/user-attachments/assets/1190e1e4-2544-485c-adf5-86a57233f9a0" />
<img width="375" alt="new tabs" src="https://github.com/user-attachments/assets/93bc52e6-3559-48fa-8a28-5848fd19b1d7" /></p>
<p>Relevant work:</p>
<ul>
<li><a href="https://github.com/macvim-dev/macvim/issues/1120">#1120</a> (by @sfsam)</li>
<li>Also: <a href="https://github.com/macvim-dev/macvim/issues/1535">#1535</a> / <a href="https://github.com/macvim-dev/macvim/issues/1536">#1536</a> / <a href="https://github.com/macvim-dev/macvim/issues/1537">#1537</a> / <a href="https://github.com/macvim-dev/macvim/issues/1538">#1538</a> / <a href="https://github.com/macvim-dev/macvim/issues/1539">#1539</a> / <a href="https://github.com/macvim-dev/macvim/issues/1557">#1557</a> / <a href="https://github.com/macvim-dev/macvim/issues/1558">#1558</a> / <a href="https://github.com/macvim-dev/macvim/issues/1560">#1560</a></li>
</ul>
<h2 id="r181-new-vim-features">New Vim features</h2>
<ul>
<li>new bundled color scheme:
<ul>
<li>unokai (<a href="https://github.com/vim/vim/issues/16443">vim/vim#16443</a>)</li>
</ul>
</li>
<li>new bundled optional plugins (use <code>packadd</code> to enable them):
<ul>
<li>helptoc: Use <a href="https://macvim.org/docs/redirect.html?tag=:HelpToc"><code>:HelpToc</code></a> to show an interactive table of contents for Vim help, man pages, Markdown files, and terminal. <a href="https://github.com/vim/vim/issues/10446">vim/vim#10446</a></li>
</ul>
</li>
<li>new options:
<ul>
<li><code>set diffopt+=linematch:{n}</code>. Matches lines better when in diff mode. <a href="https://github.com/vim/vim/commit/7c7a4e6d1ad50d5b25b42aa2d5a33a8d04a4cc8a">v9.1.1009</a></li>
<li><code>findfunc</code>. Customizes <code>:find</code> and other commands. <a href="https://github.com/vim/vim/commit/a13f3a4f5de9c150f70298850e34747838904995">v9.1.0831</a></li>
<li><code>set completeopt+=preinsert</code>. Preview inserted text in completion. <a href="https://github.com/vim/vim/commit/edd4ac3e895ce16034c7e098f1d68e0155d97886">v9.1.1056</a></li>
<li><code>messagesopt</code>. Allows customizing hit-enter behavior. <a href="https://github.com/vim/vim/commit/51d4d84d6a7159c6ce9e04b36f8edc105ca3794b">v9.1.0908</a></li>
</ul>
</li>
<li>new functions:
<ul>
<li><code>getcellpixels()</code>. Query the pixel size of a character cell in the grid. <a href="https://github.com/vim/vim/commit/1083cae7091f006249c1349d0575412d2ff6a7dc">v9.1.0854</a> / <a href="https://github.com/macvim-dev/macvim/issues/1554">#1554</a> / <a href="https://github.com/macvim-dev/macvim/issues/1555">#1555</a></li>
</ul>
</li>
<li>Vim tutor has a new interactive plugin (<a href="https://macvim.org/docs/redirect.html?tag=:Tutor"><code>:h :Tutor</code></a>) (<a href="https://github.com/vim/vim/commit/a54816b884157f6b7973a188f85c708d15cbf72f">v9.1.0836</a>). There is also now a chapter 2 (<a href="https://github.com/vim/vim/issues/5729">vim/vim#5729</a>).</li>
</ul>
<h2 id="r181-misc-new-settings">Misc New Settings</h2>
<ul>
<li>“Open untitled window” (General) has a new option to only open on MacVim re-activation. <a href="https://github.com/macvim-dev/macvim/issues/1509">#1509</a></li>
<li>“Show document icon at title bar” (Appearance). Previously MacVim implicitly hid the document icon when using transparent title bar. This is now customizable. <a href="https://github.com/macvim-dev/macvim/issues/1510">#1510</a></li>
</ul>
<h1 id="r181-general">General</h1>
<ul>
<li>
<p>The MacVim dmg installer has a new design. Courtesy of @jasonlong. <a href="https://github.com/macvim-dev/macvim/issues/1540">#1540</a> <a href="https://github.com/macvim-dev/macvim/issues/1545">#1545</a></p>
</li>
<li>
<p>Legacy builds (macOS 10.9 - 10.12) are no longer built by GitHub hosted runners, due to GitHubs deprecation of old runners. They are now built by a custom self-hosted VM instead. In the future we hope to set up reproducible builds (<a href="https://github.com/macvim-dev/macvim/issues/1506">#1506</a>) so it will not matter whos building the app as it would be verifiable. <a href="https://github.com/macvim-dev/macvim/issues/1559">#1559</a></p>
</li>
<li>
<p>“Nightly” build: We now build a dmg installer for every commit. This allows for trying out the latest developmental version of MacVim, but note that the app will not be signed / notarized, and it will not be as polished as official release/pre-release builds. See <a href="https://github.com/macvim-dev/macvim/wiki/Installing">wiki</a> for instructions. <a href="https://github.com/macvim-dev/macvim/issues/1532">#1532</a></p>
</li>
</ul>
<h1 id="r181-fixes">Fixes</h1>
<h2 id="r181-apple-intelligence-writing-tools">Apple “Intelligence” Writing Tools</h2>
<p>macOS 15 Sequoias Apple “Intelligence” Writing Tools should work correctly with MacVim now. To use it, select some text, right click to show menu, and then select the “Writing Tools” sub-menu. As part of this fix, the integration with the “Services” menu now works more reliably as well. You can select texts in blockwise visual mode and select a service and MacVim will try to place the new texts back to the blockwise selection if possible. <a href="https://github.com/macvim-dev/macvim/issues/1552">#1552</a></p>
<h2 id="r181-window-resizing-and-full-screen">Window resizing and full screen</h2>
<ul>
<li>Flicker begone: Changing font size, showing/hiding tabs or scroll bars, or entering non-native full screen should no longer cause MacVim to flicker. Previously there could be a momentary but distracting/annoying stale image that flashes briefly. <a href="https://github.com/macvim-dev/macvim/issues/1547">#1547</a> <a href="https://github.com/macvim-dev/macvim/issues/1549">#1549</a></li>
<li>Fixed issue where resizing MacVim window would occasionally cause Vim to be stuck in a stale wrong size. <a href="https://github.com/macvim-dev/macvim/issues/1518">#1518</a></li>
<li>Non-native full screen now supports <code>blurradius</code> option. <a href="https://github.com/macvim-dev/macvim/issues/1546">#1546</a></li>
<li>Fixed window size not always restoring correctly when exiting full screen. Non-native full screen also works more reliably in multi-monitor setup. <a href="https://github.com/macvim-dev/macvim/issues/1525">#1525</a></li>
<li>Fixed non-native full screen mode when using an external monitor with a MacBook with a notch, and having the “Show menu bar in non-native mode” option set. Previously MacVim would sometimes miscalculate the menu bar height in the second screen. <a href="https://github.com/macvim-dev/macvim/issues/1548">#1548</a></li>
<li>Fixed misc issues with non-native full screens interaction with <code>fuoptions</code> and also the <code>transparency</code> setting, and rare crash. <a href="https://github.com/macvim-dev/macvim/issues/1521">#1521</a></li>
</ul>
<h2 id="r181-other-fixes">Other Fixes</h2>
<ul>
<li>Fixed issue where changing font size (using Cmd =/-) with guifont set to “-monospace-“ would result in guifont being changed to a confusing name like “.AppleSystemUIFontMonospaced-Regular”. <a href="https://github.com/macvim-dev/macvim/issues/1544">#1544</a></li>
<li>“MacVim Website” menu item now goes to the updated URL. <a href="https://github.com/macvim-dev/macvim/issues/1524">#1524</a></li>
<li>Whats New page now allows changing font size (using Cmd =/-), and showing table of contents. <a href="https://github.com/macvim-dev/macvim/issues/1561">#1561</a> <a href="https://github.com/macvim-dev/macvim/issues/1562">#1562</a></li>
<li>Dark mode documentation is now a bit clearer on <code>v:os_appearance</code>. <a href="https://github.com/macvim-dev/macvim/issues/1511">#1511</a></li>
<li>Using dictionary look up on selected texts (by right clicking and then selecting “Look Up” in the pop-up menu) is now more resilient as it uses Vims native <code>getregion()</code> to determine the selected texts. <a href="https://github.com/macvim-dev/macvim/issues/1508">#1508</a></li>
</ul>
<h1 id="r181-scripting">Scripting</h1>
<ul>
<li>Scripting languages versions:
<ul>
<li>Ruby is now built against 3.4, up from 3.3.</li>
<li>Perl is now built against 5.34, up from 5.30.</li>
</ul>
</li>
</ul>
<h1 id="r181-compatibility">Compatibility</h1>
<p>Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)</p>
<p>Script interfaces have compatibility with these versions:</p>
<ul>
<li>Lua 5.4</li>
<li>Perl 5.34</li>
<li>Python2 2.7</li>
<li>Python3 3.9 or above</li>
<li>Ruby 3.4</li>
</ul>
</div>
<div data-sparkle-version=180>
<details class=oldVersionToggle>
<summary>r180</summary>
<p>Updated to Vim 9.1.0727</p>
<nav>
<ul class="toc" id="markdown-toc">
<li><a href="#r180-features" id="markdown-toc-r180-features">Features</a> <ul>
<li><a href="#r180-new-vim-features" id="markdown-toc-r180-new-vim-features">New Vim features</a></li>
<li><a href="#r180-misc" id="markdown-toc-r180-misc">Misc</a></li>
</ul>
</li>
<li><a href="#r180-general" id="markdown-toc-r180-general">General</a></li>
<li><a href="#r180-fixes" id="markdown-toc-r180-fixes">Fixes</a></li>
<li><a href="#r180-compatibility" id="markdown-toc-r180-compatibility">Compatibility</a></li>
</ul>
</nav>
<p>This update mostly syncs to new upstream Vim version, along with small fixes.</p>
<h1 id="r180-features">Features</h1>
<h2 id="r180-new-vim-features">New Vim features</h2>
<ul>
<li>Vim now supports the XDG Base Directory Specification. You can now put your vimrc and plugins in <code>~/.config/vim</code> intsead of <code>~/.vim</code> / <code>~/.vimrc</code>. See <a href="https://macvim.org/docs/redirect.html?tag=xdg-base-dir"><code>:h xdg-base-dir</code></a>. <a href="https://github.com/vim/vim/commit/c9df1fb35a1866901c32df37dd39c8b39dbdb64a">v9.1.0327</a></li>
<li>Auto completion
<ul>
<li>
<p>Matched text in a completion popup menu will now be highlighted <a href="https://github.com/vim/vim/commit/40c1c3317d92f8c2adadf744fab72e4458e2a9fa">v9.1.0476</a></p>
<p><img width="147" alt="image" src="https://github.com/user-attachments/assets/9dff8254-74ca-455d-b65e-50ed87e30961" /></p>
</li>
<li>Insert mode fuzzy completion (<code>:set completopt+=fuzzy</code>). <a href="https://github.com/vim/vim/commit/a218cc6cdabae1113647b817c4eefc2b60a6902f">v9.1.0463</a> / <a href="https://github.com/vim/vim/commit/8159fb18a92e9a9f5e35201bd92bf651f4d5835c">v9.1.0598</a></li>
</ul>
</li>
<li>New options:
<ul>
<li><code>tabclose</code>: specifies tab closing behavior. <a href="https://github.com/vim/vim/commit/5247b0b92e191a046b034171a3b34031e317735f">v9.1.0572</a></li>
<li><code>winfixbuf</code>: fixes a window to a buffer and prevent navigating away from it. <a href="https://github.com/vim/vim/commit/215703563757a4464907ead6fb9edaeb7f430bea">v9.1.0147</a></li>
</ul>
</li>
<li>New functions:
<ul>
<li><code>getregion()</code> / <code>getregionpos()</code>: Helps retrieve the text selected in a visual selection. <a href="https://github.com/vim/vim/commit/3f905ab3c4f66562f4a224bf00f49d98a0b0da91">v9.1.0120</a> <a href="https://github.com/vim/vim/commit/19b718828d8d5fab52d94c6cdba694641879ab38">v9.1.0142</a> <a href="https://github.com/vim/vim/commit/b4757e627e6c83d1c8e5535d4887a82d6a5efdd0">v9.1.0394</a></li>
<li><code>diff()</code>: Diff provided strings. <a href="https://github.com/vim/vim/commit/fa37835b8c0ed0f83952978fca4c332335ca7c46">v9.1.0071</a></li>
<li><code>gettext()</code> / <code>bindtextdomain()</code>: Vim plugins can now add localized messages. <a href="https://github.com/vim/vim/commit/ce0ef910df837b9b961f007a0a35064cad85188b">v9.1.0509</a>.</li>
<li><code>filecopy()</code>: Copy a file using Vim script. <a href="https://github.com/vim/vim/commit/60c8743ab6c90e402e6ed49d27455ef7e5698abe">v9.1.0465</a></li>
</ul>
</li>
<li>New bundled optional plugins (use <code>packadd</code> to enable them):
<ul>
<li>comment: toggle code comments on/off. <a href="https://github.com/vim/vim/issues/14634">vim/vim#14634</a></li>
<li>nohlsearch: simple package to automatically set <code>nohlsearch</code>. <a href="https://github.com/vim/vim/issues/15042">vim/vim#15042</a></li>
</ul>
</li>
<li>Highlighting for diff files are back to normal. <a href="https://github.com/vim/vim/commit/124371c5a149a8c0c75c04b6c90ac11e71a0aa97">v9.1.0016</a></li>
<li>Vim9 script improvements.</li>
<li>Miscellaneous smoothscroll, termdebug, security fixes.</li>
<li>Other platforms (these dont affect MacVim and included for reference only):
<ul>
<li>GTK Vim GUI can now also use <code>&lt;D-...&gt;</code> to map super keys, similar to MacVim for its Cmd key mappings. This should allow sharing cross-platform configs easier. <a href="https://github.com/vim/vim/commit/92e90a1e102825aa9149262cacfc991264db05df">v9.1.0058</a></li>
<li>Vim GUI now supports Wayland in Linux. <a href="https://github.com/vim/vim/commit/6e0a18f82bd04a45e9682523c42af9cbbc37684c">v9.1.0064</a></li>
</ul>
</li>
</ul>
<h2 id="r180-misc">Misc</h2>
<ul>
<li>When resizing MacVim, the title bars message looks a little nicer now. <a href="https://github.com/macvim-dev/macvim/issues/1488">#1488</a> by @sfsam</li>
<li>Copyright disclaimer in About MacVim no longer shows a year. <a href="https://github.com/macvim-dev/macvim/issues/1497">#1497</a></li>
</ul>
<h1 id="r180-general">General</h1>
<ul>
<li>Sparkle (updater for MacVim) is now updated to 2.6.4. For legacy builds its now updated to 1.27.3. <a href="https://github.com/macvim-dev/macvim/issues/1494">#1494</a></li>
</ul>
<h1 id="r180-fixes">Fixes</h1>
<ul>
<li>Fixed dragging tabs to reorder them resulting in a crash. <a href="https://github.com/macvim-dev/macvim/issues/1499">#1499</a></li>
</ul>
<h1 id="r180-compatibility">Compatibility</h1>
<p>Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)</p>
<p>Script interfaces have compatibility with these versions:</p>
<ul>
<li>Lua 5.4</li>
<li>Perl 5.30</li>
<li>Python2 2.7</li>
<li>Python3 3.9 or above</li>
<li>Ruby 3.3</li>
</ul>
</details>
</div>
<p><br /><small><a href="https://github.com/macvim-dev/macvim/releases/latest">Latest release notes &gt;</a></small></p>
]]></description>
<sparkle:fullReleaseNotesLink>https://github.com/macvim-dev/macvim/releases</sparkle:fullReleaseNotesLink>
<pubDate>Fri, 21 Feb 2025 02:00:00 +0000</pubDate>
<sparkle:minimumSystemVersion>10.13</sparkle:minimumSystemVersion>
<sparkle:version>181</sparkle:version>
<sparkle:shortVersionString>9.1.1128</sparkle:shortVersionString>
<enclosure type="application/octet-stream"
url="https://github.com/macvim-dev/macvim/releases/download/release-181/MacVim.dmg"
sparkle:edSignature="Tlrdw10++4MxiqdCt9WsCtkF4isMkN/MNGVsu2K5IDe1RUYgSoKxpVFZJYNhrikttsmEtJio8N9eCGfsGKNQDA==" length="23750581"
/>
<sparkle:deltas>
<enclosure type="application/octet-stream"
url="https://github.com/macvim-dev/macvim/releases/download/release-181/179_to_181.delta"
sparkle:deltaFrom="179"
sparkle:edSignature="H0jwLee4FvcPuDf1W52+KjeSOdaz9LeHyxhOlPDSPc1EBnOI3pv+SUQl2y+ZN1tDvXUUsga4HZcwo5jQgPugAQ==" length="4359922"
/>
<enclosure type="application/octet-stream"
url="https://github.com/macvim-dev/macvim/releases/download/release-181/180_to_181.delta"
sparkle:deltaFrom="180"
sparkle:edSignature="kHmhSxmOiOWP7ThBFb0EEdPcoieVUDWh/quhEMaN/6XGiw3OqUL71b5CSfLPHLZgyc4mhWS4DN6XM+RxMoyNAQ==" length="3265534"
/>
<enclosure type="application/octet-stream"
url="https://github.com/macvim-dev/macvim/releases/download/release-181/180.2_to_181.delta"
sparkle:deltaFrom="180.2"
sparkle:edSignature="VmJPum/HxM93IGJVMVGTEPS5QiDFvTy9kVRHDdwucHBRrlOI/FtiAjn9aPauE27RgYc02RueeLUouG7OqznZBA==" length="915450"
/>
</sparkle:deltas>
</item>
<item>
<title>MacVim release-181</title>
<description><![CDATA[
<style>
:root { supported-color-schemes: light dark; color-scheme: light dark; }
div h1 { padding-bottom: .3em; border-bottom: 1px solid gray; }
/* Older versions' release notes. Will be optionally shown in collapsed form if the user has upgraded across multiple versions. */
div > details.oldVersionToggle > summary {
font-size: 1.2em;
border-radius: 5px;
border-bottom: 3px solid #57c4d0;
cursor: pointer;
padding: 10px;
}
.toc {
/* Sparkle does not seem to allow anchor links. Just disable the TOC. */
display: none;
}
div.sparkle-installed-version { display:none; }
div.sparkle-installed-version ~ section { display: none; }
</style>
<div>
<p>Updated to Vim 9.1.1128</p>
<nav>
<ul class="toc" id="markdown-toc">
<li><a href="#r181-defaults-change" id="markdown-toc-r181-defaults-change">Defaults Change</a></li>
<li><a href="#r181-features" id="markdown-toc-r181-features">Features</a> <ul>
<li><a href="#r181-tabs" id="markdown-toc-r181-tabs">Tabs</a></li>
<li><a href="#r181-new-vim-features" id="markdown-toc-r181-new-vim-features">New Vim features</a></li>
<li><a href="#r181-misc-new-settings" id="markdown-toc-r181-misc-new-settings">Misc New Settings</a></li>
</ul>
</li>
<li><a href="#r181-general" id="markdown-toc-r181-general">General</a></li>
<li><a href="#r181-fixes" id="markdown-toc-r181-fixes">Fixes</a> <ul>
<li><a href="#r181-apple-intelligence-writing-tools" id="markdown-toc-r181-apple-intelligence-writing-tools">Apple “Intelligence” Writing Tools</a></li>
<li><a href="#r181-window-resizing-and-full-screen" id="markdown-toc-r181-window-resizing-and-full-screen">Window resizing and full screen</a></li>
<li><a href="#r181-other-fixes" id="markdown-toc-r181-other-fixes">Other Fixes</a></li>
</ul>
</li>
<li><a href="#r181-scripting" id="markdown-toc-r181-scripting">Scripting</a></li>
<li><a href="#r181-compatibility" id="markdown-toc-r181-compatibility">Compatibility</a></li>
</ul>
</nav>
<p>This update contains a completely new GUI tabs implementation by @sfsam! It also contains lots of small fixes for window resizing and full screen mode that aims to make using MacVim feel rock solid and stable.</p>
<h1 id="r181-defaults-change">Defaults Change</h1>
<p>New settings defaults related to window sizing <a href="https://github.com/macvim-dev/macvim/issues/1528">#1528</a>:</p>
<ul>
<li>“Smoothly resizes window” is now on by default. MacVims window will now resize smoothly instead of snapped to the size of the character grid.</li>
<li>Vims <code>guioptions</code> now has <code>k</code> set by default (<a href="https://macvim.org/docs/redirect.html?tag='go-k'"><code>:h go-k</code></a>). This prevents MacVims window size from changing unnecessarily when showing/hiding tabs or changing font size.</li>
</ul>
<p>These should align MacVim better with how other apps work and integrate better with OS window management, including macOS 15 Sequoias window tiling feature.</p>
<h1 id="r181-features">Features</h1>
<h2 id="r181-tabs">Tabs</h2>
<p>MacVim has a new tabs implementation! The old version (PSMTabBarControl) is not maintained and lacks features such as overflowing tabs and customizable colors. The new tabs will overflow horizontally and are scrollable. They also animate when tabs are closed or moved, respect system settings such as right-to-left locales and high-contrast modes, and are designed to fit within the currently selected Vim colors.</p>
<p>There are a few ways to customize the colors of the new tabs, under the “Appearance” settings pane. MacVim defaults to an “Automatic colors” mode which tries to pick sensible colors automatically based on the current foreground/background colors. However, you can also configure it to simply use the tab colors specified by the Vim color scheme (some color schemes will work better than others depending on their choice of colors). Another new option is “Use tabs background color” which when combined with “Transparent title bar” allows the title bar and tabs to look like a single cohesive whole.</p>
<p><img width="375" alt="new tabs" src="https://github.com/user-attachments/assets/f70a683e-1450-48d1-89b7-f6c12d73bf90" />
<img width="375" alt="image" src="https://github.com/user-attachments/assets/b1af9c2f-8176-43d8-add7-faf6272f9a74" />
<img width="375" alt="new tabs" src="https://github.com/user-attachments/assets/1190e1e4-2544-485c-adf5-86a57233f9a0" />
<img width="375" alt="new tabs" src="https://github.com/user-attachments/assets/93bc52e6-3559-48fa-8a28-5848fd19b1d7" /></p>
<p>Relevant work:</p>
<ul>
<li><a href="https://github.com/macvim-dev/macvim/issues/1120">#1120</a> (by @sfsam)</li>
<li>Also: <a href="https://github.com/macvim-dev/macvim/issues/1535">#1535</a> / <a href="https://github.com/macvim-dev/macvim/issues/1536">#1536</a> / <a href="https://github.com/macvim-dev/macvim/issues/1537">#1537</a> / <a href="https://github.com/macvim-dev/macvim/issues/1538">#1538</a> / <a href="https://github.com/macvim-dev/macvim/issues/1539">#1539</a> / <a href="https://github.com/macvim-dev/macvim/issues/1557">#1557</a> / <a href="https://github.com/macvim-dev/macvim/issues/1558">#1558</a> / <a href="https://github.com/macvim-dev/macvim/issues/1560">#1560</a></li>
</ul>
<h2 id="r181-new-vim-features">New Vim features</h2>
<ul>
<li>new bundled color scheme:
<ul>
<li>unokai (<a href="https://github.com/vim/vim/issues/16443">vim/vim#16443</a>)</li>
</ul>
</li>
<li>new bundled optional plugins (use <code>packadd</code> to enable them):
<ul>
<li>helptoc: Use <a href="https://macvim.org/docs/redirect.html?tag=:HelpToc"><code>:HelpToc</code></a> to show an interactive table of contents for Vim help, man pages, Markdown files, and terminal. <a href="https://github.com/vim/vim/issues/10446">vim/vim#10446</a></li>
</ul>
</li>
<li>new options:
<ul>
<li><code>set diffopt+=linematch:{n}</code>. Matches lines better when in diff mode. <a href="https://github.com/vim/vim/commit/7c7a4e6d1ad50d5b25b42aa2d5a33a8d04a4cc8a">v9.1.1009</a></li>
<li><code>findfunc</code>. Customizes <code>:find</code> and other commands. <a href="https://github.com/vim/vim/commit/a13f3a4f5de9c150f70298850e34747838904995">v9.1.0831</a></li>
<li><code>set completeopt+=preinsert</code>. Preview inserted text in completion. <a href="https://github.com/vim/vim/commit/edd4ac3e895ce16034c7e098f1d68e0155d97886">v9.1.1056</a></li>
<li><code>messagesopt</code>. Allows customizing hit-enter behavior. <a href="https://github.com/vim/vim/commit/51d4d84d6a7159c6ce9e04b36f8edc105ca3794b">v9.1.0908</a></li>
</ul>
</li>
<li>new functions:
<ul>
<li><code>getcellpixels()</code>. Query the pixel size of a character cell in the grid. <a href="https://github.com/vim/vim/commit/1083cae7091f006249c1349d0575412d2ff6a7dc">v9.1.0854</a> / <a href="https://github.com/macvim-dev/macvim/issues/1554">#1554</a> / <a href="https://github.com/macvim-dev/macvim/issues/1555">#1555</a></li>
</ul>
</li>
<li>Vim tutor has a new interactive plugin (<a href="https://macvim.org/docs/redirect.html?tag=:Tutor"><code>:h :Tutor</code></a>) (<a href="https://github.com/vim/vim/commit/a54816b884157f6b7973a188f85c708d15cbf72f">v9.1.0836</a>). There is also now a chapter 2 (<a href="https://github.com/vim/vim/issues/5729">vim/vim#5729</a>).</li>
</ul>
<h2 id="r181-misc-new-settings">Misc New Settings</h2>
<ul>
<li>“Open untitled window” (General) has a new option to only open on MacVim re-activation. <a href="https://github.com/macvim-dev/macvim/issues/1509">#1509</a></li>
<li>“Show document icon at title bar” (Appearance). Previously MacVim implicitly hid the document icon when using transparent title bar. This is now customizable. <a href="https://github.com/macvim-dev/macvim/issues/1510">#1510</a></li>
</ul>
<h1 id="r181-general">General</h1>
<ul>
<li>
<p>The MacVim dmg installer has a new design. Courtesy of @jasonlong. <a href="https://github.com/macvim-dev/macvim/issues/1540">#1540</a> <a href="https://github.com/macvim-dev/macvim/issues/1545">#1545</a></p>
</li>
<li>
<p>Legacy builds (macOS 10.9 - 10.12) are no longer built by GitHub hosted runners, due to GitHubs deprecation of old runners. They are now built by a custom self-hosted VM instead. In the future we hope to set up reproducible builds (<a href="https://github.com/macvim-dev/macvim/issues/1506">#1506</a>) so it will not matter whos building the app as it would be verifiable. <a href="https://github.com/macvim-dev/macvim/issues/1559">#1559</a></p>
</li>
<li>
<p>“Nightly” build: We now build a dmg installer for every commit. This allows for trying out the latest developmental version of MacVim, but note that the app will not be signed / notarized, and it will not be as polished as official release/pre-release builds. See <a href="https://github.com/macvim-dev/macvim/wiki/Installing">wiki</a> for instructions. <a href="https://github.com/macvim-dev/macvim/issues/1532">#1532</a></p>
</li>
</ul>
<h1 id="r181-fixes">Fixes</h1>
<h2 id="r181-apple-intelligence-writing-tools">Apple “Intelligence” Writing Tools</h2>
<p>macOS 15 Sequoias Apple “Intelligence” Writing Tools should work correctly with MacVim now. To use it, select some text, right click to show menu, and then select the “Writing Tools” sub-menu. As part of this fix, the integration with the “Services” menu now works more reliably as well. You can select texts in blockwise visual mode and select a service and MacVim will try to place the new texts back to the blockwise selection if possible. <a href="https://github.com/macvim-dev/macvim/issues/1552">#1552</a></p>
<h2 id="r181-window-resizing-and-full-screen">Window resizing and full screen</h2>
<ul>
<li>Flicker begone: Changing font size, showing/hiding tabs or scroll bars, or entering non-native full screen should no longer cause MacVim to flicker. Previously there could be a momentary but distracting/annoying stale image that flashes briefly. <a href="https://github.com/macvim-dev/macvim/issues/1547">#1547</a> <a href="https://github.com/macvim-dev/macvim/issues/1549">#1549</a></li>
<li>Fixed issue where resizing MacVim window would occasionally cause Vim to be stuck in a stale wrong size. <a href="https://github.com/macvim-dev/macvim/issues/1518">#1518</a></li>
<li>Non-native full screen now supports <code>blurradius</code> option. <a href="https://github.com/macvim-dev/macvim/issues/1546">#1546</a></li>
<li>Fixed window size not always restoring correctly when exiting full screen. Non-native full screen also works more reliably in multi-monitor setup. <a href="https://github.com/macvim-dev/macvim/issues/1525">#1525</a></li>
<li>Fixed non-native full screen mode when using an external monitor with a MacBook with a notch, and having the “Show menu bar in non-native mode” option set. Previously MacVim would sometimes miscalculate the menu bar height in the second screen. <a href="https://github.com/macvim-dev/macvim/issues/1548">#1548</a></li>
<li>Fixed misc issues with non-native full screens interaction with <code>fuoptions</code> and also the <code>transparency</code> setting, and rare crash. <a href="https://github.com/macvim-dev/macvim/issues/1521">#1521</a></li>
</ul>
<h2 id="r181-other-fixes">Other Fixes</h2>
<ul>
<li>Fixed issue where changing font size (using Cmd =/-) with guifont set to “-monospace-“ would result in guifont being changed to a confusing name like “.AppleSystemUIFontMonospaced-Regular”. <a href="https://github.com/macvim-dev/macvim/issues/1544">#1544</a></li>
<li>“MacVim Website” menu item now goes to the updated URL. <a href="https://github.com/macvim-dev/macvim/issues/1524">#1524</a></li>
<li>Whats New page now allows changing font size (using Cmd =/-), and showing table of contents. <a href="https://github.com/macvim-dev/macvim/issues/1561">#1561</a> <a href="https://github.com/macvim-dev/macvim/issues/1562">#1562</a></li>
<li>Dark mode documentation is now a bit clearer on <code>v:os_appearance</code>. <a href="https://github.com/macvim-dev/macvim/issues/1511">#1511</a></li>
<li>Using dictionary look up on selected texts (by right clicking and then selecting “Look Up” in the pop-up menu) is now more resilient as it uses Vims native <code>getregion()</code> to determine the selected texts. <a href="https://github.com/macvim-dev/macvim/issues/1508">#1508</a></li>
</ul>
<h1 id="r181-scripting">Scripting</h1>
<ul>
<li>Scripting languages versions:
<ul>
<li>Ruby is now built against 3.4, up from 3.3.</li>
<li>Perl is now built against 5.34, up from 5.30.</li>
</ul>
</li>
</ul>
<h1 id="r181-compatibility">Compatibility</h1>
<p>Requires macOS 10.9 or above. (10.9 - 10.12 requires downloading a separate legacy build)</p>
<p>Script interfaces have compatibility with these versions:</p>
<ul>
<li>Lua 5.4</li>
<li>Perl 5.34</li>
<li>Python2 2.7</li>
<li>Python3 3.9 or above</li>
<li>Ruby 3.4</li>
</ul>
</div>
<p><br /><small><a href="https://github.com/macvim-dev/macvim/releases/latest">Latest release notes &gt;</a></small></p>
]]></description>
<sparkle:fullReleaseNotesLink>https://github.com/macvim-dev/macvim/releases</sparkle:fullReleaseNotesLink>
<pubDate>Fri, 21 Feb 2025 02:00:00 +0000</pubDate>
<sparkle:minimumSystemVersion>10.9</sparkle:minimumSystemVersion>
<sparkle:maximumSystemVersion>10.12.99</sparkle:maximumSystemVersion>
<sparkle:version>181</sparkle:version>
<sparkle:shortVersionString>9.1.1128</sparkle:shortVersionString>
<enclosure type="application/octet-stream"
url="https://github.com/macvim-dev/macvim/releases/download/release-181/MacVim_10.9.dmg"
sparkle:edSignature="5Loj2zZ25vXfqVMDLt/yyFiLr4ZUDckru/IEOF/4MNZnOEYKBdvf8w8a5zUOPiNqSOIjpqfgbHJskqnh+CZxAQ==" length="26286287"
/>
</item>
</channel>
</rss>
-131
View File
@@ -1,131 +0,0 @@
@echo off
:: Batch file for building/testing Vim on AppVeyor
set target=%1
set "GETTEXT_PATH=c:\gettext64\bin"
setlocal ENABLEDELAYEDEXPANSION
cd %APPVEYOR_BUILD_FOLDER%
:: Python3
set "PYTHON3_VER=311"
set "PYTHON3_RELEASE=3.11.1"
set "PYTHON3_URL=https://www.python.org/ftp/python/%PYTHON3_RELEASE%/python-%PYTHON3_RELEASE%-amd64.exe"
set "PYTHON3_DIR=C:\python%PYTHON3_VER%-x64"
:: Gettext-tools, iconv and libraries
set "GETTEXT64_URL=https://github.com/mlocati/gettext-iconv-windows/releases/download/v0.21-v1.16/gettext0.21-iconv1.16-shared-64.zip"
set "GETTEXT64_DIR=c:\gettext64"
set "VSWHERE=%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe"
if exist "%VSWHERE%" (
for /f "usebackq delims=" %%i in (
`"%VSWHERE%" -products * -latest -property installationPath`
) do (
set "VCVARSALL=%%i\VC\Auxiliary\Build\vcvarsall.bat"
)
)
if not exist "%VCVARSALL%" (
set "VCVARSALL=%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"
)
call "%VCVARSALL%" x64
goto %target%
echo Unknown build target.
exit 1
:: ----------------------------------------------------------------------------
:install
@echo on
if not exist downloads mkdir downloads
:: Python 3
if not exist %PYTHON3_DIR% (
call :downloadfile %PYTHON3_URL% downloads\python3.exe
cmd /c start /wait downloads\python3.exe /quiet TargetDir=%PYTHON3_DIR% ^
Include_pip=0 Include_tcltk=0 Include_test=0 Include_tools=0 ^
AssociateFiles=0 Shortcuts=0 Include_doc=0 Include_launcher=0 ^
InstallLauncherAllUsers=0
)
:: GETTEXT
if not exist %GETTEXT64_DIR% (
mkdir %GETTEXT64_DIR%
call :downloadfile %GETTEXT64_URL% downloads\gettext64.zip
cmd /c powershell.exe -NoLogo -NoProfile -Command ^
Add-Type -AssemblyName 'System.IO.Compression.FileSystem'; ^
[System.IO.Compression.ZipFile]::ExtractToDirectory^('downloads\gettext64.zip', ^
'%GETTEXT64_DIR%'^)
copy /y %GETTEXT64_DIR%\bin\libintl-8.dll C:\projects\vim\src\ || exit 1
copy /y %GETTEXT64_DIR%\bin\libiconv-2.dll C:\projects\vim\src\ || exit 1
)
@echo off
goto :eof
:: ----------------------------------------------------------------------------
:build
cd src
echo "Building MSVC 64bit console Version"
nmake -f Make_mvc.mak CPU=AMD64 ^
OLE=no GUI=no IME=yes ICONV=yes DEBUG=no ^
FEATURES=%FEATURE%
if not exist vim.exe (
echo Build failure.
exit 1
)
:: build MSVC huge version with python and channel support
:: GUI needs to be last, so that testing works
echo "Building MSVC 64bit GUI Version"
if "%FEATURE%" == "HUGE" (
nmake -f Make_mvc.mak CPU=AMD64 ^
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no POSTSCRIPT=yes ^
PYTHON_VER=27 DYNAMIC_PYTHON=yes PYTHON=C:\Python27-x64 ^
PYTHON3_VER=%PYTHON3_VER% DYNAMIC_PYTHON3=yes PYTHON3=%PYTHON3_DIR% ^
FEATURES=%FEATURE%
) ELSE (
nmake -f Make_mvc.mak CPU=AMD64 ^
OLE=no GUI=yes IME=yes ICONV=yes DEBUG=no ^
FEATURES=%FEATURE%
)
if not exist gvim.exe (
echo Build failure.
exit 1
)
.\gvim -u NONE -c "redir @a | ver |0put a | wq" ver_msvc.txt || exit 1
echo "version output MSVC console"
.\vim --version || exit 1
echo "version output MSVC GUI"
type ver_msvc.txt || exit 1
goto :eof
:: ----------------------------------------------------------------------------
:test
@echo on
cd src/testdir
:: Testing with MSVC gvim
path %PYTHON3_DIR%;%GETTEXT_PATH%;%PATH%
nmake -f Make_mvc.mak VIMPROG=..\gvim
nmake -f Make_mvc.mak clean
:: Testing with MSVC console version
nmake -f Make_mvc.mak VIMPROG=..\vim
@echo off
goto :eof
:: ----------------------------------------------------------------------------
:downloadfile
:: call :downloadfile <URL> <localfile>
if not exist %2 (
curl -f -L %1 -o %2
)
if ERRORLEVEL 1 (
rem Retry once.
curl -f -L %1 -o %2 || exit 1
)
@goto :eof
-3
View File
@@ -1,3 +0,0 @@
# Clang 12 (or Apple clang 13) and later makes a warning '-Wcompound-token-split-by-macro' enable by default.
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro -Wno-compound-token-split-by-macro/
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=compound-token-split-by-macro/
-2
View File
@@ -1,2 +0,0 @@
/^CFLAGS[[:blank:]]*=/s/$/ -Wno-error=missing-field-initializers -Wno-error=deprecated-declarations -Wno-error=unused-function/
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unknown-attributes -Wno-error=ignored-attributes/
-1
View File
@@ -1 +0,0 @@
/^CFLAGS[[:blank:]]*=/s/$/ -Wno-error=maybe-uninitialized/
-3
View File
@@ -1,3 +0,0 @@
# Add link-time optimization for even better performance
/^CFLAGS[[:blank:]]*=/s/-O2/-O3 -flto/
/^LDFLAGS[[:blank:]]*=/s/$/ -flto/
-3
View File
@@ -1,3 +0,0 @@
/^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Wstrict-prototypes -Wmissing-prototypes -Werror -Wno-deprecated-declarations/
/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function -Wno-shadow/
/^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter -Wno-strict-prototypes/
-1
View File
@@ -1 +0,0 @@
/^XCODEFLAGS[[:blank:]]*=/s/$/ GCC_TREAT_WARNINGS_AS_ERRORS="YES" GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS="NO"/
-66
View File
@@ -1,66 +0,0 @@
ColorColumn
ComplMatchIns
Conceal
Cursor
CursorColumn
CursorIM
CursorLine
CursorLineNr
debugBreakpoint
debugPC
DiffAdd
DiffChange
DiffDelete
DiffText
Directory
ErrorMsg
FoldColumn
Folded
Ignore
IncSearch
lCursor
LineNr
LineNrAbove
LineNrBelow
MatchParen
Menu
ModeMsg
MoreMsg
MsgArea
NonText
Normal
Pmenu
PmenuSbar
PmenuSel
PmenuThumb
Question
Scrollbar
Search
SignColumn
SpecialKey
SpellBad
SpellCap
SpellLocal
SpellRare
StatusLine
StatusLineNC
StatusLineTerm
StatusLineTermNC
TabLine
TabLineFill
TabLineSel
Terminal
Title
TOhtmlProgress
TOhtml-progress-color
ToolbarButton
ToolbarLine
Tooltip
User1
User1..9
User9
VertSplit
Visual
VisualNOS
WarningMsg
WildMenu
-18
View File
@@ -1,18 +0,0 @@
# vim: ft=make
SHELL = /bin/bash
# Default target to actually run the comparison:
.PHONY: check
.INTERMEDIATE: hlgroups deflinks hlgroups.stripped
check: hlgroups.stripped deflinks
diff hlgroups.stripped deflinks
hlgroups:
grep '\*hl-' ../runtime/doc/*txt | sed -E -e 's/.*:<?\s*//' -e 's/hl-//g' -e 's/\*//g' -e 's/ /\n/g' | sort > hlgroups
deflinks: ../src/highlight.c
grep '"default link' $< | sed 's/.*default link\s*\(.*\)\s.*/\1/' | sort > deflinks
hlgroups.stripped: hlgroups.ignore hlgroups
grep -v -x -F -f hlgroups.ignore hlgroups > hlgroups.stripped
-25
View File
@@ -1,25 +0,0 @@
" Print all interface versions for Ubuntu. Part 1.
if 1
execute 'source' expand('<sfile>:h') .. '/if_ver-cmd.vim'
echo "*** Interface versions ***\n"
echo 'Lua:'
PrintVer lua print(vim.lua_version, jit and "(LuaJIT)" or "")
echo 'MzScheme:'
PrintVer mzscheme (display (version))
echo 'Perl:'
PrintVer perl print $^V
echo 'Ruby:'
PrintVer ruby print RUBY_VERSION
echo 'Tcl:'
PrintVer tcl puts [info patchlevel]
echo 'Python 2:'
PrintVer python print sys.version
endif
-8
View File
@@ -1,8 +0,0 @@
" Print py3 interface versions for Ubuntu. Part 2.
if 1
execute 'source' expand('<sfile>:h') .. '/if_ver-cmd.vim'
echo 'Python 3:'
PrintVer python3 print(sys.version)
endif
-12
View File
@@ -1,12 +0,0 @@
" Provide 'PrintVer' command to print the interface versions.
func s:print_ver(lang, ...)
if has(a:lang)
exec a:lang join(a:000)
else
echo 'N/A'
endif
echo ''
endfunc
command -nargs=+ PrintVer call <SID>print_ver(<f-args>)
-13
View File
@@ -1,13 +0,0 @@
#!/usr/bin/env sh
pushd /etc/apt/preferences.d/
cat > nosnap.pref <<EOF
# To prevent repository packages from triggering the installation of snap,
# this file forbids snapd from being installed by APT.
Package: snapd
Pin: release a=*
Pin-Priority: -10
EOF
popd
snap remove --purge $(snap list | awk '!/^Name|^core/ {print $1}')
apt-get purge -y snapd
-17
View File
@@ -1,17 +0,0 @@
#!/bin/bash
set -e
apt-get install -y xvfb
cat <<EOT >/etc/systemd/system/xvfb.service
[Unit]
Description=X Virtual Frame Buffer Service
After=network.target
[Service]
ExecStart=/usr/bin/Xvfb :99 -screen 0 1024x768x24
[Install]
WantedBy=multi-user.target
EOT
systemctl enable xvfb.service
systemctl start xvfb.service
-49
View File
@@ -1,49 +0,0 @@
# vim: ft=make
SHELL = /bin/bash
# List all files that are tracked in git but not listed in Filelist.
# Exit code is 2 ("Make encountered an error") if any such files exist.
# Filelist is a Makefile that defines many variables, so we use Make itself to
# query which variables it defines, then expand them all by wrapping each name
# in $(...), importing Filelist and using $(eval).
include Filelist
$(eval all_patterns := $(shell \
make -f Filelist --question --print-data-base --no-builtin-rules \
--no-builtin-variables 2>/dev/null \
| sed -nre \
'/^# makefile .from \x27Filelist\x27,/ { \
n; \
s/ = .*//; \
T; \
s/.*/$$(\0)/; \
p; \
}'))
# In Makefile's `prepare` target, all the IN_README_DIR files are moved from
# READMEdir to the root, so add those files in their Git-tracked location:
all_patterns := $(all_patterns) \
$(foreach readme, $(IN_README_DIR), READMEdir/$(readme))
# The result 'all_patterns' is a list of patterns (globs), which we expand with
# wildcard to get actual filenames. Note this means Filelist can list a file
# that does not exist, and it will be omitted at this step.
listed_files := $(wildcard $(all_patterns))
# Default target to actually run the comparison:
.PHONY: check
check:
@# There are too many files to list on the command line, so we write
@# that to a temporary file, one per line.
$(file > Filelist-listed-files)
$(foreach filename, $(listed_files),\
$(file >> Filelist-listed-files,$(filename)))
@# Compare the sorted lists. Delete that temporary file on both
@# success and failure, but exit with diff's exit code.
diff -u0 --label files-in-git <(git ls-files | sort) \
--label Filelist <(sort --unique Filelist-listed-files); \
RV=$$?; \
rm Filelist-listed-files; \
(($$RV != 0)) && echo "Add files to the right variable in Filelist."; \
exit $$RV
Vendored
-6
View File
@@ -1,6 +0,0 @@
#! /bin/sh
# This is just a stub for the Unix configure script, to provide support for
# doing "./configure" in the top Vim directory.
cd "${SRCDIR:-src}" && exec ./configure "$@"
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 B

+36
View File
@@ -0,0 +1,36 @@
<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="UTF-8">
<!-- The gh-pages branch is no longer in use. Redirect to the new URL -->
<title>Redirecting to https://macvim.org</title>
<meta http-equiv="refresh" content="0; URL=https://macvim.org">
<!-- In case the client has autorefresh disabled, we display a message to tell the client that we have moved -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="stylesheets/normalize.css" media="screen">
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet_dark.css" media="screen">
</head>
<body>
<section class="page-header">
<h1 class="project-name">MacVim</h1>
<h2 class="project-tagline">Vim - the text editor - for macOS</h2>
This page has been moved to <a href=https://macvim.org>https://macvim.org</a>
</section>
<section class="main-content">
<footer class="site-footer">
<span class="site-footer-owner"><a href="https://github.com/macvim-dev/macvim">MacVim</a> is maintained by <a href="https://github.com/macvim-dev">macvim-dev</a>.</span>
<span class="site-footer-credits">This page was generated by <a href="https://pages.github.com">GitHub Pages</a> using the <a href="https://github.com/jasonlong/cayman-theme">Cayman theme</a> by <a href="https://twitter.com/jasonlong">Jason Long</a>.</span>
</footer>
</section>
</body>
</html>
+1
View File
@@ -0,0 +1 @@
console.log('This would be the main JS file.');
-99
View File
@@ -1,99 +0,0 @@
LICENZA VIM
Nota: Agli effetti legali ha valore non la seguente traduzione italiana, ma
l'originale inglese su cui è basata. È alla versione inglese che si fa
riferimento qui sotto quando si parla di "questa licenza" (NdT).
I) Non ci sono restrizioni alla distribuzione di copie non modificate di Vim,
alla condizione che esse includano il testo di questa licenza. Si possono
anche distribuire parti non modificate di Vim, sempre senza restrizioni,
alla condizione che esse includano il testo di questa licenza. È anche
consentito includere programmi eseguibili da voi preparati a partire dai
file sorgenti Vim non modificati, più i vostri esempi di utilizzo e i
vostri script Vim.
II) È consentito distribuire una versione modificata (o estesa) di Vim,
contenente programmi eseguibile e/o codice sorgente, quando siano
rispettare le seguenti quattro condizioni:
1) Il testo di questa licenza deve essere incluso senza modifiche.
2) La versione modificata di Vim dev'essere distribuita in una della
seguenti cinque maniere:
a) Se voi personalmente modificate a Vim, dovete descrivere
chiaramente nella distribuzione come è possibile mettersi in
contatto con voi. Quando il manutentore vi chiede (in qualsiasi
forma) una copia della versione modificata di Vim da voi
distribuita, dovete rendere disponibili le vostre modifiche,
compreso il codice sorgente, al manutentore, senza alcuna spesa.
Il manutentore si riserva il diritto di includere le vostre
modifiche nella versione ufficiale di Vim. Quel che il manutentore
potrà fare con le vostre modifiche e sotto quale licenza esse
verranno distribuite può essere oggetto di negoziazione. Se non c'è
stata alcuna negoziazione, questa licenza, o una versione successiva
della stessa è anche applicabile alle vostre modifiche.
I manutentori correnti sono elencati qui:
https://github.com/orgs/vim/people.
Se dovessero cambiare, ne sarò dato annuncio nei luoghi appropriati
(verosimilmente vim.sf.net, www.vim.org e/o comp.editors). Quando
sia completamente impossibile contattare il manutentore, l'obbligo
di spedirgli le vostre modifiche viene meno. Una volta che il
manutentore abbia confermato di aver ricevuto le vostre modifiche,
non sarà necessario spedirle ulteriormente.
b) Se avete ricevuto un Vim modificato che era stato distribuito come
descritto al punto a) potete ulteriormente distribuirlo senza
modificarlo, come menzionato al punto I). Se fate ulteriori
modifiche, il testo al punto a) si applica a queste modifiche.
c) Includete tutte le modifiche, compreso il codice sorgente, con ogni
copia del Vim modificato da voi distribuito. Questo può essere
fatto sotto forma dell'output di un comando "diff", che contenga
anche il contesto [ossia anche le linee non modificate di sorgente
che vengono prima o dopo le modifiche - NdT]. Potete scegliere
quale licenza volete utilizzare per il nuovo codice sorgente che voi
aggiungere. Le modifiche e la relativa licenza non devono impedire
a terze parti di apportare le loro proprie modifiche a Vim.
d) Quando avete un Vim modificato che comprende modifiche quali quelle
menzionate al punto c), potete distribuirlo senza il codice sorgente
che descrive le modifiche, se le seguenti tre condizioni sono
soddisfatte:
- La licenza applicabile alle modifiche vi consente di distribuire
le modifiche al manutentore Vim senza alcun costo o restrizione, e
permette al manutentore Vim di includere le modifiche nella
versione ufficiale di Vim senza alcun costo o restrizione.
- Le modifiche da voi fatte sono conservate per almeno tre anni,
dopo che avrete distribuito per l'ultima volta il Vim modificato
corrispondente alle modifiche stesse. Quando il manutentore o
qualcuno a cui voi avete distribuito il Vim modificato vi chiede
(in qualsiasi forma) le modifiche, entro il periodo qui indicato,
dovete fargliele avere.
- Dovete descrivere chiaramente nella distribuzione come è possibile
mettersi in contatto con voi. Questa informazione di contatto
deve rimanere valida per almeno tre anni dopo l'ultima data di
distribuzione della corrispondente modifica di Vim, oppure il più
a lungo possibile.
e) Quando al GNU General Public License (GPL) si applica alle
modifiche, potete distribuire il Vim modificato sotto la versione 2
della licenza GNU GPL versione 2 o una qualsiasi versione successiva
della stessa licenza.
3) Un messaggio deve essere aggiunto, almeno all'output del comando
":version" e nella schermata introduttiva, in modo che l'utilizzatore
del Vim modificato sia in grado di comprendere cosa è stato modificato.
Quando si distribuisca come menzionato al punto 2)e) l'aggiunta del
messaggio è richiesta solo se ciò non conduca a conflitti con la
licenza usata per le modifiche.
4) L'informazione di contatto, richiesta ai punto 2)a) e 2)d) non deve
essere rimossa o modificata, tranne che per il fatto che la persona
stessa può apportare delle correzioni.
III) Se distribuite una versione modificata di Vim, siete incoraggiati a
utilizzare la licenza Vim per le vostre modifiche, e a mettere le
modifiche a disposizione del manutentore, compreso il codice sorgente.
Il modo preferito in cui fare questo è tramite e-mail o caricando
i file su un server ed inviandone l'indirizzo (URL) tramite e-mail.
Se il numero di modifiche è piccolo (per esempio, una modifica a un
Makefile) inviare tramite email l'output del comando diff con contesto
può essere sufficiente. L'indirizzo e-mail da utilizzare è
<maintainer@vim.org>
IV) Non è consentito rimuovere questa licenza dalla distribuzione dei codici
sorgente Vim, anche in parte, o da una versione di Vim modificata.
Potete usare questa licenza per precedenti versioni di Vim, invece della
licenza con cui esse sono state distribuite, a vostra scelta.
-81
View File
@@ -1,81 +0,0 @@
LICENÇA DO VIM
I) Não há restrições para distribuir cópias não modificadas do Vim, exceto
que elas devem incluir este texto de licença. Você também pode distribuir
partes não modificadas do Vim, igualmente irrestritas, exceto que elas
devem incluir este texto de licença. Você também tem permissão para incluir
executáveis que você fez a partir das fontes não modificadas do Vim, além
de seus próprios exemplos de uso e scripts do Vim.
II) É permitido distribuir uma versão modificada (ou estendida) do Vim,
incluindo executáveis e/ou código-fonte, quando as quatro
condições a seguir forem atendidas:
1) Este texto de licença deve ser incluído sem modificações.
2) O Vim modificado deve ser distribuído de uma das cinco formas a seguir:
a) Se você fizer alterações no Vim, deverá descrever claramente na
distribuição como entrar em contato com você. Quando o mantenedor
solicitar a você (de qualquer forma) uma cópia do Vim modificado que
você distribuiu, você deverá disponibilizar suas alterações,
incluindo o código-fonte, ao mantenedor sem taxa. O mantenedor
reserva o direito de incluir suas alterações na versão oficial
do Vim. O que o mantenedor fará com suas alterações e sob qual
licença elas serão distribuídas é negociável. Se não houve negociação
então esta licença, ou uma versão posterior, também se aplica às suas
alterações. Os mantenedores atuais estão listados aqui:
https://github.com/orgs/vim/people. Se isso mudar, será anunciado em
lugares apropriados (provavelmente vim.sf.net, www.vim.org e/ou
comp.editors). Quando for completamente impossível contatar o
mantenedor, a obrigação de enviar a ele suas alterações cessa.
Uma vez que o mantenedor tenha confirmado que ele recebeu suas
alterações, elas não precisarão ser enviadas novamente.
b) Se você recebeu um Vim modificado que foi distribuído como
mencionado em a), você tem permissão para distribuí-lo sem
modificações, como mencionado em I). Se você fizer alterações
adicionais, o texto em a) se aplica a essas alterações.
c) Forneça todas as alterações, incluindo o código-fonte, com cada cópia
do Vim modificado que você distribuir. Isso pode ser feito na forma
de um diff de contexto. Você pode escolher qual licença usar para o
novo código que você adicionar. As alterações e sua licença não devem
restringir outros de fazer suas próprias alterações na versão oficial
do Vim.
d) Quando você tem um Vim modificado que inclui alterações conforme
mencionado em c), você pode distribuí-lo sem o código-fonte para as
alterações se as três condições a seguir forem atendidas:
- A licença que se aplica às alterações permite que você distribua
as alterações para o mantenedor do Vim sem taxa ou restrição, e
permite que o mantenedor do Vim inclua as alterações na
versão oficial do Vim sem taxa ou restrição.
- Você mantém as alterações por pelo menos três anos após a última
distribuição do Vim modificado correspondente. Quando o mantenedor
ou alguém para quem você distribuiu o Vim modificado solicitar a
você (de qualquer forma) as alterações dentro deste período, você
deve disponibilizá-las a ele.
- Você descreve claramente na distribuição como entrar em contato
com você. Estas informações de contato devem permanecer válidas por
pelo menos três anos após a última distribuição do Vim modificado
correspondente, ou pelo maior tempo possível.
e) Quando a Licença Pública Geral GNU (GPL) se aplica às alterações,
você pode distribuir o Vim modificado sob a GNU GPL versão 2 ou
qualquer versão posterior.
3) Uma mensagem deve ser adicionada, no mínimo na saída do comando
":version" e na tela de introdução, de modo que o usuário do Vim
modificado seja capaz de ver que ele foi modificado. Ao distribuir
conforme mencionado em 2)e), só é necessário adicionar a mensagem
na medida em que isso não entre em conflito com a licença usada para
as alterações.
4) As informações de contato conforme exigido em 2)a) e 2)d) não devem ser
removidas ou alteradas, exceto que a própria pessoa pode fazer
correções.
III) Se você distribuir uma versão modificada do Vim, encorajamos que use
a licença do Vim para suas alterações e disponibilizá-las ao
mantenedor, incluindo o código-fonte. A maneira preferida de fazer isso é
por e-mail ou enviando os arquivos para um servidor e enviando a URL por
e-mail. Se o número de alterações for pequeno (por exemplo, um Makefile
modificado), enviar um diff de contexto por e-mail será suficiente.
O endereço de e-mail a ser usado é <maintainer@vim.org>
IV) Não é permitido remover esta licença da distribuição das fontes do Vim,
partes dela ou de uma versão modificada. Você pode usar esta licença
para versões anteriores do Vim em vez da licença com a qual elas vieram,
a seu critério.
-109
View File
@@ -1,109 +0,0 @@
ЛИЦЕНЗИЯ VIM
I) Неизменённые копии программы Vim могут распространяться без ограничения
при условии включения данного текста лицензии. Распространение
неизменённых копий отдельных частей программы Vim также возможно
при соблюдении условия о включении данного текста лицензии. Подобным
образом разрешается добавлять исполняемые файлы, скомпилированные
из неизменённого исходного кода программы Vim, а также собственные
примеры использования и командные файлы редактора Vim.
II) Изменённую (или дополненную) версию программы Vim, включающую
исполняемые файлы и/или исходный код, допускается распространять
при соблюдении следующих четырёх условий:
1) Текст настоящей лицензии должен включаться в состав распространяемой
версии программы Vim без изменений.
2) Изменённая версия программы Vim должна распространяться одним
из следующих пяти способов:
a) При внесении изменений в программу Vim, в дистрибутиве должны
быть явно указаны контактные данные лица, внёсшего эти изменения.
Ответственному разработчику по его запросу (в любой форме) должна
быть безвозмездно предоставлена копия распространяемой изменённой
версии программы Vim, включая её исходный код. Ответственный
разработчик оставляет за собой право включать сделанные изменения
в официальную версию программы Vim. Конкретные действия
ответственного разработчика, относительно переданных изменений,
а также лицензионные условия, на основании которых будет
осуществляться их распространение, могут быть дополнительно
согласованы. Если согласование не проводилось, сделанные изменения
будут распространяться на условиях настоящей лицензии или более
поздней её версии. Лица, в данное время являющиеся ответственными
за разработку, указаны в перечне, размещённом по адресу:
https://github.com/orgs/vim/people. В случае изменения этой
информации, актуальные данные будут опубликованы на
соответствующих ресурсах (вероятнее всего по интернет‐адресам
vim.sf.net, www.vim.org и/или comp.editors). В случае полной
невозможности установить контакт с ответственным разработчиком,
обязательства по отправке изменений утрачивают силу. После
передачи подтверждения о получении изменений от ответственного
разработчика, необходимость в повторной отправке копии изменённой
программы Vim неприменима.
b) Если лицом получена изменённая версия программа Vim,
распространяющаяся на условиях, указанных в ч. II) п. 2) пп. а)
допускается дальнейшее её распространение этим лицом без внесения
изменений и согласно ч. I) настоящей лицензии. В случае внесения
дополнительных изменений, на эти изменения будут распространяться
условия, указанные в ч. II) п. 2) пп. a).
c) Каждая копия распространяемой изменённой версии программы Vim
должна включать информацию обо всех произведённых изменениях,
включая исходный код. Эта информация может быть представлена
в виде построчного сравнения файлов. Выбор лицензии, по условиям
которой будет распространяться добавленный код, остаётся
за автором этих изменений. Изменения и лицензия на эти изменения
не должны запрещать другим лицам внесение своих собственных
изменений в официальную версию программы Vim.
d) Изменённая версия программы Vim, содержащая изменения в
соответствии с ч. II) п. 2 пп. c), может распространяться без
исходного кода для этих изменений, при соблюдении следующих трёх
условий:
- Лицензия, применяемая к внесённым изменениям, предоставляет
ответственному разработчику программы Vim возможность
безвозмездного и неограниченного распространения этих изменений,
а также право на безвозмездное и неограниченное включение этих
изменений в официальную версию программы Vim.
- Изменения должны сохраняться не менее трёх лет со времени
распространения соответствующей изменённой версии программы Vim.
В течение этого периода по запросу ответственного разработчика
или другого пользователя изменённой версии программы Vim
(в любой форме) необходимо предоставить исходный код данных
изменений.
- В дистрибутиве изменённой версии программы Vim должны быть явно
указаны контактные данные лица, внёсшего эти изменения.
Контактные данные должны сохранять актуальность в течение
не менее трёх лет со времени последнего распространения
соответствующей изменённой версии программы Vim или как можно
дольше.
e) Если к изменениям, внесённым в программу Vim, применимы условия
лицензии GNU General Public License (GNU GPL), допускается
распространение изменённой версия программы Vim на условиях
лицензии GNU GPL версии 2 или любой более поздней версии этой
лицензии.
3) Необходимо добавить соответствующую информацию, которая должна быть
выведена в результате выполнения команды ":version" в программе Vim,
а также на экране приветствия программы Vim, чтобы пользователь
изменённой версии программы Vim имел возможность определить,
что он пользуется изменённой версией. При распространении
на условиях, указанных в ч. II) п. 2) пп. e) такую информацию
требуется добавлять только в том случае, когда она не противоречит
лицензии, распространяющейся на эти изменения.
4) Контактная информация, которая указывается по требованию ч. II) п. 2)
пп. a) и ч. II) п. 2) пп. d) не должна удаляться или изменяться никем
другим, кроме лица, указавшего данную контактную информацию.
III) При распространении изменённой версии программы Vim рекомендуется
пользоваться лицензией Vim для произведённых изменений и обеспечить
доступ к этим изменениям ответственного разработчика, включая исходный
код изменений. Предпочтительным способом предоставления доступа
к произведённым изменениям является отправка этих изменений через
электронную почту или размещение файлов на сервер с отправкой
URL-адреса по электронной почте. Если количество изменений
незначительно (например, изменения в файле Makefile), достаточно будет
отправить через электронную почту файл построчного сравнения. Изменения
или URL-адреса должны быть направлены на адрес электронной почты
maintainer@vim.org
IV) Не допускается удаление настоящей лицензия из дистрибутива исходного
кода программы Vim, его отдельных частей или изменённой версии.
Допускается использование настоящей лицензию для предыдущих
изменённых выпусков программы Vim, взамен тех лицензий, с которыми
они распространялись.
-167
View File
@@ -1,167 +0,0 @@
README.txt per la versione 9.1 di Vim: VI Migliorato.
COS'È VIM?
Vim è una versione migliorata del classico programma di videoscrittura UNIX
Vi. Molte nuove funzionalità sono state aggiunte: la possibilità di avere
multipli annullamenti di comando, l'evidenziazione sintattica, una storia dei
comandi immessi, file di aiuto facilmente consultabili, controlli ortografici,
completamento di nomi di file, operazioni su blocchi di dati, un linguaggio di
script, etc. È anche disponibile una versione grafica (GUI). Tuttavia è
possibile lavorare come se si stesse usando il Vi "classico". Chi avesse Vi
"sulle dita" si troverà a suo agio. Vedere il file "runtime/doc/vi_diff.txt"
[in inglese] per dettagli sulle differenze di Vim rispetto a Vi.
Questo editor è molto utile per modificare programmi e altri file di testo.
Tutti i comandi sono immessi usando i tasti presenti sulla tastiera, in modo
che chi è in grado di digitare usando tutte e dieci le dita può lavorare molto
velocemente. Inoltre, i tasti funzione possono essere mappati per inserire
comandi dell'utente, ed è possibile usare il mouse.
Vim è disponibile in ambiente MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS e
in quasi tutte le varianti di Unix. L'adattamento a nuovi sistemi operativi
non dovrebbe essere molto difficile.
Precedenti versioni di Vim funzionano in ambiente MS-DOS, MS-Windows
95/98/Me/NT/2000/XP/Vista, Amiga DOS, Atari MiNT, BeOS, RISC OS e OS/2.
Tali versioni non sono più supportate.
DISTRIBUZIONE
Spesso è possibile usare il vostro Gestore applicazioni preferito per
installare Vim. Negli ambienti Mac e Linux una versione base di Vim è inclusa
nel sistema operativo, ma può ancora essere necessario installare Vim se si
desiderano funzionalità ulteriori.
Ci sono distribuzioni separate di Vim per gli ambienti Unix, PC, Amiga e per
qualche altro sistema operativo. Questo file README.txt è contenuto nelle
directory che contengono i file usati da Vim in fase di esecuzione. Nelle
stesse directory sono presente la documentazione, i file usati per
l'evidenziazione sintattica e altri file usati da Vim in fase di esecuzione.
Per installare Vim occorre ottenere un archivio che contiene solo i file
eseguibili, o un archivio che permette di compilare Vim a partire dai file
sorgente. Quale alternativa preferire dipende dal sistema su cui si vuole
usare Vim, e dal preferire (o meno) di compilarlo direttamente a partire dai
file sorgente. Consultate "https://www.vim.org/download.php" per una
panoramica delle distribuzioni correntemente disponibili.
Alcuni siti da cui ottenere l'ultima versione di Vim:
* Consultare la repository git in github: https://github.com/vim/vim.
* Procurarsi il codice sorgente come archivio https://github.com/vim/vim/tags.
* Ottenere un file per installare Vim in ambiente Windows dalla repository
vim-win32-installer:
https://github.com/vim/vim-win32-installer/releases.
COMPILARE VIM
Se si è ottenuta una distribuzione di file eseguibili di Vim non è necessario
compilarlo. Se si è ottenuta una distribuzione di file sorgente, tutto ciò
che serve per compilare Vim è nella directory "src". Vedere src/INSTALL per
come procedere.
INSTALLAZIONE
Vedere uno dei file elencati più sotto per istruzioni riguardo a uno specifico
sistema operativo. Tali file sono (nella repository git) nella directory
READMEdir oppure nella directory principale se si scompatta un archivio:
README_ami.txt Amiga
README_unix.txt Unix
README_dos.txt MS-DOS e MS-Windows
README_mac.txt Macintosh
README_haiku.txt Haiku
README_vms.txt VMS
Esistono altri file README_*.txt, a seconda della distribuzione in uso.
DOCUMENTAZIONE
Esiste un corso di introduzione a Vim per principianti, della durata di circa
un'ora. Normalmente si può accedervi tramite il comando "vimtutor". Vedere
":help tutor" per ulteriori informazioni.
Ma la cosa migliore è usare la documentazione disponibile in una sessione di
Vim, tramite il comando ":help". Se ancora non si ha a disposizione Vim, si
può leggere il file "runtime/doc/help.txt". Questo file contiene puntatori
agli altri file che costituiscono la documentazione.
All'interno della documentazione esiste anche uno User Manual (manuale utente)
che si legge come un libro ed è raccomandato per imparare a usare Vim.
Vedere ":help user-manual". Il manuale utente è stato interamente tradotto in
italiano, ed è disponibile, vedere:
https://www.vim.org/translations.php
COPIE
Vim è un Charityware (ossia eventuali offerte per il suo utilizzo vanno a
un'attività caritativa). Vim può essere usato e copiato liberamente, senza
limitazioni, ma è incoraggiata un'offerta a favore di orfani ugandesi. Si
prega di leggere il file "runtime/doc/uganda.txt" per dettagli su come fare
(il file si può visualizzare digitando ":help uganda" all'interno di Vim).
Sommario della licenza: Non ci sono restrizioni nell'uso e nella distribuzione
di una copia non modificata di Vim. Parti di Vim possono anche essere
distribuite, ma il testo della licenza va sempre incluso. Per versioni
modificate di Vim, valgono alcune limitazioni. La licenza di Vim è
compatibile con la licenza GPL, è possibile compilare Vim utilizzando librerie
con licenza GPL e distribuirlo.
SPONSORIZZAZIONI
Correggere errori e aggiungere nuove funzionalità richiede tempo e fatica.
Per mostrare la vostra stima per quest'attività e per fornire motivazioni
agli sviluppatori perché continuino a lavorare su Vim, siete invitati a
fare una donazione.
Le somme donate saranno usate principalmente per aiutare dei bambini in
Uganda. Vedere "runtime/doc/uganda.txt". Allo stesso tempo, le donazioni
aumentano la motivazione del gruppo di sviluppo a continuare a lavorare su
Vim!
Informazioni più aggiornate sulla sponsorizzazione, possono essere trovate
sul sito Internet di Vim:
https://www.vim.org/sponsor/
CONTRIBUIRE
Chi vuole contribuire a rendere Vim ancora migliore, può consultare
il file CONTRIBUTING.md (in inglese).
INFORMAZIONE
Se il vostro sistema operativo è macOS, potete usare MacVim:
https://macvim.org
Le ultime notizie riguardo a Vim si possono trovare sulla pagina Internet di
Vim:
https://www.vim.org/
Se avete problemi, è possibile consultare la documentazione Vim e i
suggerimenti su come utilizzarlo:
https://www.vim.org/docs.php
https://vim.fandom.com/wiki/Vim_Tips_Wiki
Se avete ancora problemi o qualsiasi altra richiesta, è possibile usare una
delle mailing list per discuterne con utenti e sviluppatori di Vim:
https://www.vim.org/maillist.php
Se nient'altro funziona, potete riferire direttamente i problemi incontrati
alla mailing list degli sviluppatori, vim-dev:
<vim-dev@vim.org>
AUTORE PRINCIPALE
La maggior parte di Vim è stata creata da Bram Moolenaar <Bram@vim.org>,
vedere ":help Bram-Moolenaar"
Spedire tutti gli altri commenti, modifiche al codice sorgente, fiori e
suggerimenti alla mailing list vim-dev:
<vim-dev@vim.org>
-131
View File
@@ -1,131 +0,0 @@
README.txt para a versão 9.1 do Vim: Vi IMproved.
O QUE É VIM?
Vim é uma versão muito melhorada do bom e velho editor UNIX Vi. Muitos novos
recursos foram adicionados: desfazer multinível, destaque de sintaxe, histórico
de linha de comando, ajuda on-line, verificação ortográfica, completar
nome de arquivo, operações de bloco, linguagem de script, etc. Há também uma
interface gráfica (GUI) disponível. Ainda assim, a compatibilidade com Vi é
mantida, aqueles que têm Vi "nos dedos" se sentirão em casa.
Veja "runtime/doc/vi_diff.txt" para diferenças com Vi.
Este editor é muito útil para editar programas e outros arquivos de texto
simples. Todos os comandos são fornecidos com caracteres normais do teclado,
então aqueles que podem digitar com dez dedos podem trabalhar muito rápido.
Além disso, as teclas de função podem ser mapeadas para comandos pelo usuário,
e o mouse pode ser usado.
O Vim funciona em MS-Windows (7, 8, 10, 11), macOS, Haiku, VMS e quase todos
os sabores do UNIX. A portabilidade para outros sistemas não deve ser difícil.
Versões mais antigas do Vim rodam em MS-DOS, MS-Windows 95/98/Me/NT/2000/XP/Vista,
Amiga DOS, Atari MiNT, BeOS, RISC OS e OS/2. Eles não são mais mantidos.
DISTRIBUIÇÃO
Você pode frequentemente usar seu gerenciador de pacotes favorito para
instalar o Vim. No Mac e Linux, uma pequena versão do Vim é pré-instalada,
você ainda precisa instalar o Vim se quiser mais recursos.
Existem distribuições separadas para Unix, PC, Amiga e alguns outros sistemas.
Este arquivo README.txt vem com o arquivo de tempo de execução. Ele inclui a
documentação, arquivos de sintaxe e outros arquivos que são usados em
tempo de execução. Para executar o Vim, você deve obter um dos arquivos
binários ou um arquivo fonte. Qual deles você precisa depende do sistema em
que deseja executá-lo e se você deseja ou deve compilá-lo você mesmo.
Verifique "https://www.vim.org/download.php" para uma visão geral das
distribuições disponíveis atualmente.
Alguns lugares populares para obter o Vim mais recente:
* Confira o repositório git do github: https://github.com/vim/vim.
* Obtenha o código-fonte como um arquivo: https://github.com/vim/vim/tags.
* Obtenha um executável do Windows do repositório vim-win32-installer:
https://github.com/vim/vim-win32-installer/releases.
COMPILAR
Se você obteve uma distribuição binária, não precisa compilar o Vim. Se você
obteve uma distribuição de origem, todo o material para compilar o Vim está no
diretório "src". Veja src/INSTALL para instruções.
INSTALAÇÃO
Veja um desses arquivos para instruções específicas do sistema. No diretório
READMEdir (no repositório) ou no diretório superior (se você descompactar um
arquivo):
README_ami.txt Amiga
README_unix.txt Unix
README_dos.txt MS-DOS e MS-Windows
README_mac.txt Macintosh
README_haiku.txt Haiku
README_vms.txt VMS
Existem outros arquivos README_*.txt, dependendo da distribuição que você usou.
DOCUMENTAÇÃO
O tutor do Vim é um curso de treinamento de uma hora para iniciantes.
Frequentemente, ele pode ser iniciado como "vimtutor". Veja ":help tutor"
para mais informações.
O melhor é usar ":help" no Vim. Se você ainda não tem um executável, leia
"runtime/doc/help.txt". Ele contém direcionamentos para os outros arquivos
de documentação. O Manual do Usuário é lido como um livro e é recomendado
para aprender a usar o Vim. Veja ":help user-manual".
CÓPIA
O Vim é um Charityware. Você pode usá-lo e copiá-lo o quanto quiser, mas
encorajamos que faça uma doação para ajudar órfãos em Uganda. Leia o arquivo
"runtime/doc/uganda.txt" para detalhes (execute ":help uganda" dentro do Vim).
Resumo da licença: Não há restrições quanto ao uso ou distribuição de uma
cópia não modificada do Vim. Partes do Vim também podem ser distribuídas, mas
o texto da licença deve sempre ser incluído. Para versões modificadas, algumas
restrições se aplicam. A licença é compatível com GPL, você pode compilar o Vim
com bibliotecas GPL e distribuí-lo.
PATROCÍNIO
Corrigir bugs e adicionar novos recursos exige muito tempo e esforço.
Para mostrar seu apreço pelo trabalho e motivar os desenvolvedores a continuar
trabalhando no Vim, envie uma doação.
O dinheiro que você doou será usado principalmente para ajudar crianças em
Uganda. Veja "runtime/doc/uganda.txt". Mas, ao mesmo tempo, as doações aumentam
a motivação da equipe de desenvolvimento para continuar trabalhando no Vim!
Para as informações mais recentes sobre patrocínio, consulte o site do Vim:
https://www.vim.org/sponsor/
CONTRIBUIÇÕES
Se você gostaria de ajudar a tornar o Vim melhor, veja o arquivo CONTRIBUTING.md.
INFORMAÇÕES
Se você estiver no macOS, pode usar o MacVim: https://macvim.org
As últimas notícias sobre o Vim podem ser encontradas na página inicial do Vim:
https://www.vim.org/
Se você tiver problemas, dê uma olhada na documentação ou dicas do Vim:
https://www.vim.org/docs.php
https://vim.fandom.com/wiki/Vim_Tips_Wiki
Se você ainda tiver problemas ou quaisquer outras perguntas, use uma das listas
de discussão para discuti-las com usuários e desenvolvedores do Vim:
https://www.vim.org/maillist.php
Se nada mais funcionar, relate os bugs diretamente para a lista de discussão
vim-dev:
<vim-dev@vim.org>
AUTOR PRINCIPAL
A maior parte do Vim foi criada por Bram Moolenaar <Bram@vim.org>,
":help Bram-Moolenaar"
Envie quaisquer outros comentários, patches, flores e sugestões para
a lista de discussão vim-dev: <vim-dev@vim.org>
-161
View File
@@ -1,161 +0,0 @@
README.ru.txt для версии 9.1 программы Vim — Vi IMproved.
ЧТО ТАКОЕ РЕДАКТОР VIM?
Программа Vim — это значительно улучшенная версия старого доброго редактора Vi
из системы UNIX. При разработке этого редактора было добавлено множество новых
возможностей: многоуровневая отмена изменений, подсветка синтаксиса, журнал
командной строки, интерактивная справка, проверка орфографии, подстановка
наименований файлов и команд, операции с произвольными блоками текста,
встроенный язык программирования и т. д. Также доступен графический интерфейс
пользователя (GUI). И при этом сохраняется совместимость с редактором Vi,
и те, у кого Vi «в крови», будут чувствовать себя как дома. Подробности о
различиях с редактором Vi см. в файле "runtime/doc/vi_diff.txt".
Этот редактор очень удобен для работы с исходным кодом программ, а также
разного рода других текстовых файлов. Все команды вводятся набором обычных
символов клавиатуры, поэтому те, кто освоил десятипальцевый метод печати, могут
работать очень быстро. Кроме того, пользователи могут назначить на
функциональные клавиши клавиатуры необходимые команды, и использовать
манипулятор «мышь».
Редактор Vim работает в ОС MS Windows (7, 8, 10, 11), macOS, Haiku, VMS и
практически во всех UNIX-подобных системах. А перенос на другие платформы не
должен представлять особой сложности.
Предыдущие версии редактора Vim работают в операционных системах OS/2, MS-DOS,
MS Windows 95/98/Me/NT/2000/XP/Vista, AmigaDOS, Atari MiNT, BeOS и RISC OS.
Но поддержка этих версий больше не осуществляется.
ПРЕДОСТАВЛЕНИЕ РЕДАКТОРА Vim
Для установки редактора Vim можно воспользоваться привычным диспетчером пакетов.
В системах Mac и Linux уже предустановленна начальная версия программы Vim,
но вам все равно нужно установить редактор Vim, если вы хотите получить больше
возможностей.
Существуют отдельные версии для Unix, PC, Amiga и некоторых других систем.
Данный файл README.rux.txt поставляется вместе с архивом рабочих файлов
программы. Этот архив включает в себя документацию, файлы подсветки синтаксиса
и другие файлы, которые используются редактором во время работы. Чтобы
запустить программу Vim, вы должны получить либо архив с исполняемыми файлами,
либо архив с исходным кодом. Какой из них вам нужен, зависит от того, на какой
системе вы хотите запустить редактор Vim, и есть ли для этой системы
исполняемые файлы или вы должны компилировать программу самостоятельно.
Чтобы узнать о доступных в настоящее время пакетах программы, посмотрите на
веб‐странице https://www.vim.org/download.php.
Несколько полезных мест, где можно получить последнюю версию редактора Vim:
* Посмотрите в git-хранилище на GitHub: https://github.com/vim/vim.
* Получить исходный код в виде архива: https://github.com/vim/vim/tags.
* Получить исполняемый файл для ОС Windows из хранилища vim-win32-installer:
https://github.com/vim/vim-win32-installer/releases.
КОМПИЛЯЦИЯ РЕДАКТОРА Vim
Если для вашей системы уже есть готовые исполняемые файлы, вам не нужно самому
компилировать редактор Vim. Если вы скачали архив с исходным кодом, то всё
необходимое для компиляции программы Vim находится в каталоге "src".
Инструкции смотрите в файле src/INSTALL.
УСТАНОВКА ПРОГРАММЫ Vim
Инструкции для конкретной системы смотрите в одном из нижеуказанных файлов.
Или в каталоге READMEdir (на https://github.com/vim/vim), или в основном
каталоге (если вы распаковываете архив):
README_ami.txt Amiga
README_unix.txt Unix
README_dos.txt MS-DOS и MS Windows
README_mac.txt Macintosh
README_haiku.txt Haiku
README_vms.txt VMS
Существует ещё несколько файлов README_*.txt, в зависимости от предоставляемого
пакета.
ДОКУМЕНТАЦИЯ ПО РЕДАКТОРУ Vim
Учебник Vim — это часовой практический курс для начинающих. Как правило, для
работы с ним нужно набрать команду "vimtutor". Чтобы получить дополнительную
информацию, смотрите раздел документации ":help tutor".
Лучше всего воспользоваться командой ":help" в редакторе Vim. Если у вас ещё
нет исполняемого файла программы, прочитайте файл "runtime/doc/help.txt".
В нём содержатся отсылки на другие полезные файлы документации. Руководство
пользователя можно читать как книгу, и оно рекомендуется для обучения работе
с редактором Vim. Смотрите ":help user-manual".
ЛИЦЕНЗИОННЫЕ ПРАВА
Редактор Vim является благотворительным программным обеспечением.
Использование и копирование программы Vim не ограничено, однако рекомендуется
сделать добровольное пожертвование для нуждающихся детей в Уганде. Чтобы узнать
подробности, прочитайте, пожалуйста, файл "runtime/doc/uganda.rux" (введите
команду ":help uganda" в редакторе Vim).
Краткое описание лицензии.
Нет никаких ограничений на использование или распространение немодифицированной
копии программы Vim. Части программы Vim также могут предоставляться отдельно,
но текст лицензии Vim всегда должен быть включён в поставку.
Для модифицированных версий программы действует несколько ограничений.
Лицензия Vim совместима с лицензией GNU GPL, вы можете компилировать
и распространять программу Vim с библиотеками, лицензированными под GNU GPL.
ФИНАНСОВАЯ ПОДДЕРЖКА ДЛЯ РАЗРАБОТКИ РЕДАКТОРА Vim
Устранение ошибок и добавление новых функциональных возможностей требует
вложения немалого количества времени и сил. Выразить признательность за труд
и подкрепить заинтересованность разработчиков программы в дальнейшей работе
над редактором Vim можно с помощью оказания финансовой поддержки.
Пожертвованные вами деньги будут в основном направлены на оказание помощи детям
Уганды, см. "runtime/doc/uganda.rux". Однако в любом случае финансирование
будет способствовать повышению заинтересованности команды разработчиков
в продолжении работы над редактором Vim!
Самая свежая информация об оказании финансовой поддержки публикуется на
веб-сайте программы Vim:
https://www.vim.org/sponsor/
ПОМОЩЬ В РАЗРАБОТКЕ РЕДАКТОРА Vim
Если вы хотите помочь сделать редактор Vim лучше, смотрите файл CONTRIBUTING.md.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
Для системе macOS вы може использовать MacVim: https://macvim.org
Последние новости о редакторе Vim можно найти на его домашней странице:
https://www.vim.org/
Если у вас возникли вопросы, посмотрите полезные советы или документацию по
редактору Vim:
https://www.vim.org/docs.php
https://vim.fandom.com/wiki/Vim_Tips_Wiki
Если у вас все ещё остались вопросы или есть сложности, воспользуйтесь одним
из списков рассылки, чтобы обсудить их с пользователями и разработчиками:
https://www.vim.org/maillist.php
Если ничего не помогает, сообщайте об ошибках непосредственно в список рассылки
vim-dev:
<vim-dev@vim.org>
ОСНОВНОЙ АВТОР ПРОГРАММЫ
Большая часть редактора Vim была создана Брамом Моленаром <Bram@vim.org>,
см. ":help Bram-Moolenaar"
Присылайте все прочие комментарии, исправления, цветы и предложения в список
рассылки vim-dev:
<vim-dev@vim.org>
-134
View File
@@ -1,134 +0,0 @@
#
# Makefile for MS Windows for create self-installing exe of Vim.
# 05/04/2024, Restorer restorer@mail2k.ru
#
#!INCLUDE .\Make_all.mak
.SUFFIXES :
!IFDEF PROGRAMW6432
ProgFiles=%%PROGRAMFILES(x86)%%
!ELSE
ProgFiles=$(PROGRAMFILES)
!ENDIF
!IFDEF VIMSRC
MKNSISFLAGS = /D"VIMSRC=$(VIMSRC)"
!ENDIF
!IFDEF VIMRT
MKNSISFLAGS = $(MKNSISFLAGS) /D"VIMRT=$(VIMRT)"
!ENDIF
!IFDEF VIMTOOLS
MKNSISFLAGS = $(MKNSISFLAGS) /D"VIMTOOLS=$(VIMTOOLS)"
!ENDIF
!IFDEF GETTEXT
MKNSISFLAGS = $(MKNSISFLAGS) /D"GETTEXT=$(GETTEXT)"
!ENDIF
!IFDEF HAVE_UPX
MKNSISFLAGS = $(MKNSISFLAGS) /DHAVE_UPX=$(HAVE_UPX)
!ENDIF
!IFDEF HAVE_NLS
MKNSISFLAGS = $(MKNSISFLAGS) /DHAVE_NLS=$(HAVE_NLS)
!ENDIF
!IFDEF HAVE_MULTI_LANG
MKNSISFLAGS = $(MKNSISFLAGS) /DHAVE_MULTI_LANG=$(HAVE_MULTI_LANG)
!ENDIF
!IFDEF WIN64
MKNSISFLAGS = $(MKNSISFLAGS) /DWIN64=$(WIN64)
!ENDIF
!IFDEF INCLUDE_LIBGCC
MKNSISFLAGS = $(MKNSISFLAGS) /DINCLUDE_LIBGCC=$(INCLUDE_LIBGCC)
!ENDIF
!IFDEF X
XX = /X"$(X:;=" /X")"
!ENDIF
# If necessary, correct the full path of the NSIS compiler in the next line.
# Please do not enclose the path in quotation marks.
MKNSIS = $(ProgFiles)\NSIS
PS = powershell.exe
RM = del /f /q
RD = rmdir /s /q
MKNSISFLAGS = /INPUTCHARSET UTF8 $(MKNSISFLAGS)
PSFLAGS = -NoLogo -NoProfile -Command
# Read MAJOR and MINOR from version.h.
!IF ![for /F "tokens=2,3" %G in ( \
'findstr /rc:"VIM_VERSION_MINOR[ ^]*[0-9^]" \
/rc:"VIM_VERSION_MAJOR[ ^]*[0-9^]" ..\src\version.h') do \
@if "VIM_VERSION_MAJOR"=="%G" (echo MAJOR=%H>>_ver.tmp) \
else echo MINOR=%H>>_ver.tmp]
! INCLUDE .\_ver.tmp
! IF [$(RM) .\_ver.tmp]
! ENDIF
!ENDIF
# Read PATCHLEVEL from version.c
!IF ![for /F %G in ( \
'findstr /nblc:"static int included_patches[^]" ..\src\version.c \
^| (set /p "_t=" ^& set /a _t+=2 ^)') do \
@cmd /q /c "for /F "skip=%G delims=, " %H in (..\src\version.c) do \
(echo PATCH=%H>_patchlvl.tmp & exit /b)"]
! INCLUDE .\_patchlvl.tmp
! IF [$(RM) .\_patchlvl.tmp]
! ENDIF
!ENDIF
!IF $(PATCH) < 10
PATCH = 000$(PATCH)
!ELSEIF $(PATCH) < 100
PATCH = 00$(PATCH)
!ELSEIF $(PATCH) < 1000
PATCH = 0$(PATCH)
!ENDIF
all : makeinst
makeinst : prepare
^"$(MKNSIS)\makensis.exe" $(MKNSISFLAGS) gvim.nsi $(XX)
prepare : unzipicons gvim_version.nsh license rename
unzipicons : icons.zip
@ if exist %|fF\nul $(RD) %|fF
@ $(PS) $(PSFLAGS) \
Add-Type -AssemblyName 'System.IO.Compression.FileSystem'; \
[System.IO.Compression.ZipFile]::ExtractToDirectory(\"$**\", \".\")
gvim_version.nsh : Make_mvc.mak
@ 1> $@ echo:^# Generated from Makefile: define the version numbers
@ 1>> $@ echo:^!ifndef __GVIM_VER__NSH__
@ 1>> $@ echo:^!define __GVIM_VER__NSH__
@ 1>> $@ echo:^!define VER_MAJOR $(MAJOR)
@ 1>> $@ echo:^!define VER_MINOR $(MINOR)
@ 1>> $@ echo:^!define PATCHLEVEL $(PATCH)
@ 1>> $@ echo:^!endif
license : ..\lang\LICENSE.*.txt ..\LICENSE
!@ $(PS) $(PSFLAGS) \
Get-Content -Path '$**' -Encoding UTF8 ^| \
Set-Content -Path '..\lang\$(**B).nsis.txt' -Enc Unicode -Force
rename :
@ ..\tools\rename.bat "$(SRC)" "$(DST)" 1> nul
clean :
@ if exist .\gvim_version.nsh $(RM) .\gvim_version.nsh
@ if exist ..\lang\LICENSE*.nsis.txt $(RM) ..\lang\LICENSE*.nsis.txt
@ if exist .\icons\nul $(RD) .\icons
@ if exist .\gvim??.exe $(RM) .\gvim??.exe
# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
-95
View File
@@ -1,95 +0,0 @@
#
# Makefile for UNIX-like for create self-installing exe of Vim.
# 15/12/2024, Restorer restorer@mail2k.ru
#
.SUFFIXES:
.PHONY: all makeinst prepare rename clean
ifdef VIMSRC
MKNSISFLAGS := -D"VIMSRC=$(VIMSRC)"
endif
ifdef VIMRT
MKNSISFLAGS := $(MKNSISFLAGS) -D"VIMRT=$(VIMRT)"
endif
ifdef VIMTOOLS
MKNSISFLAGS := $(MKNSISFLAGS) -D"VIMTOOLS=$(VIMTOOLS)"
endif
ifdef GETTEXT
MKNSISFLAGS := $(MKNSISFLAGS) -D"GETTEXT=$(GETTEXT)"
endif
ifdef HAVE_UPX
MKNSISFLAGS := $(MKNSISFLAGS) -DHAVE_UPX=$(HAVE_UPX)
endif
ifdef HAVE_NLS
MKNSISFLAGS := $(MKNSISFLAGS) -DHAVE_NLS=$(HAVE_NLS)
endif
ifdef HAVE_MULTI_LANG
MKNSISFLAGS := $(MKNSISFLAGS) -DHAVE_MULTI_LANG=$(HAVE_MULTI_LANG)
endif
ifdef WIN64
MKNSISFLAGS := $(MKNSISFLAGS) -DWIN64=$(WIN64)
endif
ifdef INCLUDE_LIBGCC
MKNSISFLAGS := $(MKNSISFLAGS) -DINCLUDE_LIBGCC=$(INCLUDE_LIBGCC)
endif
ifdef X
XX := -X"$(X:;=" -X")"
endif
MAJOR != grep -E 'VIM_VERSION_MAJOR\s{2,}' ../src/version.h | \
awk '{ printf "%d",$$3 }'
MINOR != grep -E 'VIM_VERSION_MINOR\s{2,}' ../src/version.h | \
awk '{ printf "%d",$$3 }'
PATCH != awk '/number below this line/,/,/' ../src/version.c | \
awk 'NR == 3 { printf "%04d",$$1 }' | sed -e 's/[ ,]//g'
MKNSISFLAGS := -INPUTCHARSET UTF8 $(MKNSISFLAGS)
all: makeinst
makeinst: prepare
makensis $(MKNSISFLAGS) gvim.nsi $(XX)
prepare: unzipicons gvim_version.nsh license rename
unzipicons: icons.zip
if test -d `basename $? .zip` ; then rm -rf `basename $? .zip` ; fi
unzip $?
gvim_version.nsh: Makefile
echo "# Generated from Makefile: define the version numbers" > $@
echo "!ifndef __GVIM_VER__NSH__" >> $@
echo "!define __GVIM_VER__NSH__" >> $@
echo "!define VER_MAJOR $(MAJOR)" >> $@
echo "!define VER_MINOR $(MINOR)" >> $@
echo "!define PATCHLEVEL $(PATCH)" >> $@
echo "!endif" >> $@
license: ../lang/LICENSE.*.txt ../LICENSE
for lic in $? ; do \
bn=`basename $$lic .txt` ; \
awk 'sub("$$", "\r")' < $$lic | \
iconv -f UTF-8 -t UTF-16 > ../lang/$$bn.nsis.txt ; \
done
rename:
../tools/rename.bat "$(SRC)" "$(DST)"
clean:
if test -f gvim_version.nsh ; then rm -f gvim_version.nsh ; fi
rm -f ../lang/LICENSE*.nsis.txt
if test -d icons ; then rm -rf icons ; fi
if test -f gvim??.exe ; then rm -f gvim??.exe ; fi
# vim: set noet sw=8 ts=8 sts=0 wm=0 tw=0 ft=make:
-108
View File
@@ -1,108 +0,0 @@
This builds a one-click install for Vim for MS Windows using the Nullsoft
Installation System (NSIS), available at http://nsis.sourceforge.net/
To build the installable .exe file:
Preparatory stage
1. Clone using the git tool the Vim repository or download its zip file
available at:
https://github.com/vim/vim
2. Go to the "/src" directory and build the Vim editor, making sure to use the
following variable values: "GUI=yes"; "OLE=yes"; "VIMDLL=yes". See
INSTALLpc.txt and Make_mvc.mak for details.
3. Go to the GvimExt directory and build gvimext.dll (or get it from a binary
archive). Both 64- and 32-bit versions are needed and should be placed
as follows:
64-bit: src/GvimExt/gvimext64.dll
32-bit: src/GvimExt/gvimext.dll
4. Get a "diff.exe" program. If you skip this the built-in diff will always
be used (which is fine for most users).
You can find one in previous Vim versions or in this archive:
https://www.mediafire.com/file/9edk4g3xvfgzby0/diff4Vim.zip/file
When will you have "diff.exe" put it in the "../.." directory (above the
"vim91" directory, it's the same for all Vim versions). However, you can
specify a different directory by specifying the appropriate makefile value.
How to do this is described below.
5. For the terminal window to work in Vim, the library winpty is required.
You can get it at the following url:
https://github.com/rprichard/winpty/releases/download/0.4.3/winpty-0.4.3-msvc2015.zip
For the 32-bit version, rename "winpty.dll" from ia32/bin to "winpty32.dll",
and for the 64-bit version — "winpty.dll" from x64/bin to "winpty64.dll".
Put the renamed file and "winpty-agent.exe" in "../.." (above the "vim91"
directory). However, you can specify a different directory by specifying
the appropriate makefile value. How to do this is described below.
6. To use stronger encryption, add the Sodium library. You can get it here:
https://github.com/jedisct1/libsodium/releases/download/1.0.19-RELEASE/libsodium-1.0.19-msvc.zip
Unpack the archive. Put the "libsodium.dll" from
path/to/libsodium/Win32/Release/v143/dynamic for the 32bit version or
path/to/libsodium/X64/Release/v143/dynamic for the 64bit version in the
"../.." directory (above the "vim91" directory, where "diff.exe" and
"winpty{32|64}.dll").
7. Get gettext and iconv DLLs from the following site:
https://github.com/mlocati/gettext-iconv-windows/releases
Both 64- and 32-bit versions are needed.
Download the files gettextX.X.X.X-iconvX.XX-shared-{32,64}.zip, extract
DLLs and place them as follows:
<GETTEXT directory>
|
+ gettext32/
| libintl-8.dll
| libiconv-2.dll
| libgcc_s_sjlj-1.dll
|
+ gettext64/
libintl-8.dll
libiconv-2.dll
The default <GETTEXT directory> is "../..". However, you can specify a
different directory by specifying the appropriate makefile value. How to do
this is described below.
8. Install NSIS if you didn't do that already.
Download Unicode version the ShellExecAsUser plug-in for NSIS from:
https://nsis.sourceforge.io/ShellExecAsUser_plug-in
and put "ShellExecAsUser.dll" to path\to\NSIS\Plugins\x86-unicode
Installer assembly stage
On MS Windows, open the Developer Command Prompt for VS and go to the
"/nsis" directory and type the command
nmake.exe -lf Make_mvc.mak [variables] all
After the installer is created and you copy it to the desired location, run
the following command in the "/nsis" directory
nmake.exe -lf Make_mvc.mak clean
On UNIX-like systems, go to the "/nsis" directory and type the command
make -f Makefile [variables] all
After the installer is created and you copy it to the desired location, run
the following command in the "/nsis" directory
make -f Makefile clean
Variables and their values available for building the installer (not mandatory):
"VIMSRC=<dir>" — directory where location of gvim_ole.exe, vimw32.exe,
GvimExt/*, etc.
"VIMRT=<dir>" — directory where location of runtime files.
"VIMTOOLS=<dir>" — directory where location of extra tools: diff.exe,
winpty{32|64}.dll, winpty-agent.exe, libsodium.dll.
"GETTEXT=<dir>" — directory where location of gettext libraries.
"HAVE_UPX=1" — additional compression of the installer. UPX program
must be installed.
"HAVE_NLS=0" — do not add native language support.
"HAVE_MULTI_LANG=0" — to create an English-only the installer.
"WIN64=1" — to create a 64-bit the installer.
"X=<scriptcmd>" — executes scriptcmd in script. If multiple scriptcmd
are specified, they are separated by a semicolon.
Example "X=OutFile MyVim.exe;XPMode on"
"MKNSIS=<dir>" — the directory where the "makensis.exe" program is
located.
-1226
View File
File diff suppressed because it is too large Load Diff
-7
View File
@@ -1,7 +0,0 @@
# Generated from Makefile: define the version numbers
!ifndef __GVIM_VER__NSH__
!define __GVIM_VER__NSH__
!define VER_MAJOR 9
!define VER_MINOR 1
!define PATCHLEVEL 0
!endif
BIN
View File
Binary file not shown.
-63
View File
@@ -1,63 +0,0 @@
This directory contains a file with text strings for gVim installer.
It also contains files with translations of the text strings for gVim installer
into different languages.
For translators.
If you want to prepare a translation for the gVim installer, use the file
"english.nsi" as a master file. See the other translation files in this
directory.
Note that in the definition of the MUI_LANGUAGE macro, the name of the language
to be translated must be the English name of the language.
The name of the file with the translation must match the name of the target
language.
Also, when translating strings, pay attention to some restrictions on the
allowable length of strings. For example:
component description field - 117 characters;
description above the drop-down lists on the .vimrc page - 53 characters;
drop-down lists on the .vimrc page - 55 characters.
Characters in this case mean characters of the English alphabet.
Once the message translation file is ready, it must be included in the
"gvim.nsi" file.
Find the line "# Include support for other languages:" in the file "gvim.nsi"
and specify the name of the file with your translation below the line
!if ${HAVE_MULTI_LANG}, similar to the entries already there. File names are
specified in alphabetical order.
If you do not yet have a translated "LICENSE" file and/or a main "README.txt"
file, set the following values:
for the license file
LicenseLangString page_lic_file 0 "..\lang\LICENSE.nsis.txt"
for the readme.txt file
LangString vim_readme_file 0 "README.txt"
Once you have the translations of these files, then set the values for these
variables similarly to what is done in the other translation files.
Translation files should be located in the "lang" subdirectory of the root
directory. The name of the files is as follows: "README.xx.txt", where xx is the
language code according to ISO639.
There are two ways to test the installer in different languages:
1. Find and uncomment the "!define MUI_LANGDLL_ALWAYSSHOW" line in the
"gvim.nsi" file and rebuild the installer.
Now every time you run it, you will see a dialog box with the possibility to
select the language of the installer.
2. If the Vim editor is already installed in your system, delete the
"Installer Language" parameter in the Windows registry under
"HKEY_CURRENT_USER\Software\Vim".
Or you can create a file "NoLangInstallerVim.reg" with the following content:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Vim]
"Installer Language"=-
and apply it by double-clicking on it.
After these steps, when you start the installer, a window with the installer
language selection will also be displayed.
-187
View File
@@ -1,187 +0,0 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# danish.nsi: Danish language strings for gvim NSIS installer.
#
# Locale ID : 1030
# Locale Name : da
# fileencoding : UTF-8
# Author : scootergrisen
!insertmacro MUI_LANGUAGE "Danish"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_DANISH} "$(^Name) Setup"
LangString ^UninstallCaption ${LANG_DANISH} "$(^Name) Uninstall"
##############################################################################
# Translated license file for the license page {{{1
##############################################################################
LicenseLangString page_lic_file 0 "..\lang\LICENSE.nsis.txt"
#LicenseLangString page_lic_file ${LANG_DANISH} "..\lang\LICENSE.da.nsis.txt"
##############################################################################
# Translated README.txt file, which is opened after installation {{{1
##############################################################################
LangString vim_readme_file 0 "README.txt"
#LangString vim_readme_file ${LANG_DANISH} "README.da.txt"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_DANISH} "Destinationsmappe (skal slutte med $\"vim$\")"
LangString str_show_readme ${LANG_DANISH} "Vis README efter installationen er gennemført"
# Install types:
LangString str_type_typical ${LANG_DANISH} "Typisk"
LangString str_type_minimal ${LANG_DANISH} "Minimal"
LangString str_type_full ${LANG_DANISH} "Fuld"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_DANISH} "Afinstaller eksisterende version(er)"
LangString str_desc_old_ver ${LANG_DANISH} "Afinstaller eksisterende Vim-version(er) fra dit system."
LangString str_section_exe ${LANG_DANISH} "Vim GUI og afviklingsfiler"
LangString str_desc_exe ${LANG_DANISH} "Vim GUI-eksekverbare- og afviklingsfiler. Komponenten kræves."
LangString str_section_console ${LANG_DANISH} "Vim-konsolprogram"
LangString str_desc_console ${LANG_DANISH} "Konsolversion af Vim (vim.exe)."
LangString str_section_batch ${LANG_DANISH} "Opret .bat-filer"
LangString str_desc_batch ${LANG_DANISH} "Opret .bat-filer til Vim-varianter i Windows-mappen til brug fra kommandolinjen."
LangString str_group_icons ${LANG_DANISH} "Opret ikoner til Vim"
LangString str_desc_icons ${LANG_DANISH} "Opret ikoner til Vim diverse steder for at hjælpe med at gøre adgangen let."
LangString str_section_desktop ${LANG_DANISH} "På skrivebordet"
LangString str_desc_desktop ${LANG_DANISH} "Opret ikoner til gVim-eksekverbare på skrivebordet."
LangString str_section_start_menu ${LANG_DANISH} "I Programmer-mappen i menuen Start"
LangString str_desc_start_menu ${LANG_DANISH} "Tilføj Vim i Programmer-mappen i menuen Start."
#LangString str_section_quick_launch ${LANG_DANISH} "I værktøjslinjen Hurtig start"
#LangString str_desc_quick_launch ${LANG_DANISH} "Tilføj Vim-genvej i værktøjslinjen Hurtig start."
LangString str_section_edit_with ${LANG_DANISH} "Tilføj Vim-genvejsmenu"
LangString str_desc_edit_with ${LANG_DANISH} "Tilføj Vim til listen i $\"Åbn med...$\"-genvejsmenuen."
#LangString str_section_edit_with32 ${LANG_DANISH} "32-bit-version"
#LangString str_desc_edit_with32 ${LANG_DANISH} "Tilføj Vim til listen i $\"Åbn med...$\"-genvejsmenuen for 32-bit-programmer."
#LangString str_section_edit_with64 ${LANG_DANISH} "64-bit-version"
#LangString str_desc_edit_with64 ${LANG_DANISH} "Tilføj Vim til listen i $\"Åbn med...$\"-genvejsmenuen for 64-bit-programmer."
LangString str_section_vim_rc ${LANG_DANISH} "Opret standardkonfiguration"
LangString str_desc_vim_rc ${LANG_DANISH} "Opret en standardkonfigurationsfil (_vimrc) hvis der ikke allerede findes en."
LangString str_group_plugin ${LANG_DANISH} "Opret plugin-mapper"
LangString str_desc_plugin ${LANG_DANISH} "Opret plugin-mapper. Plugin-mapper giver mulighed for at udvide Vim ved at slippe en fil i en mappen."
LangString str_section_plugin_home ${LANG_DANISH} "Private"
LangString str_desc_plugin_home ${LANG_DANISH} "Opret plugin-mapper i HOME (hvis du har defineret et) eller Vim-installationsmappe."
LangString str_section_plugin_vim ${LANG_DANISH} "Delte"
LangString str_desc_plugin_vim ${LANG_DANISH} "Opret plugin-mapper i Vim-installationsmappe, det bruges af alle på systemet."
LangString str_section_nls ${LANG_DANISH} "Understøttelse af modersmål"
LangString str_desc_nls ${LANG_DANISH} "Installer filer til understøttelse af modersmål."
LangString str_unsection_register ${LANG_DANISH} "Afregistrer Vim"
LangString str_desc_unregister ${LANG_DANISH} "Afregistrer Vim fra systemet."
LangString str_unsection_exe ${LANG_DANISH} "Fjern Vim-eksekverbare-/afviklingsfiler"
LangString str_desc_rm_exe ${LANG_DANISH} "Fjern alle Vim-eksekverbare- og afviklingsfiler."
LangString str_ungroup_plugin ${LANG_DANISH} "Fjern plugin-mapper"
LangString str_desc_rm_plugin ${LANG_DANISH} "Fjern plugin-mapperne, hvis de er tomme."
LangString str_unsection_plugin_home ${LANG_DANISH} "Private"
LangString str_desc_rm_plugin_home ${LANG_DANISH} "Fjern plugin-mapperne fra HOME-mappen."
LangString str_unsection_plugin_vim ${LANG_DANISH} "Delte"
LangString str_desc_rm_plugin_vim ${LANG_DANISH} "Fjern plugin-mapperne fra Vim-installationsmappen."
LangString str_unsection_rootdir ${LANG_DANISH} "Fjern Vim-rodmappen"
LangString str_desc_rm_rootdir ${LANG_DANISH} "Fjern Vim-rodmappen. Den indeholder dine Vim-konfigurationsfiler!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_DANISH} "Fandt $vim_old_ver_count Vim-versioner på dit system.$\r$\nInstallationsguiden kan højst håndtere ${VIM_MAX_OLD_VER}-versioner.$\r$\nFjern venligst nogle versioner og start igen."
#LangString str_msg_invalid_root ${LANG_DANISH} "Ugyldig installationssti: $vim_install_root!$\r$\nDen skal slutte med $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_DANISH} "Uoverensstemmelse i binære sti!$\r$\n$\r$\nForventede at den binære sti var $\"$vim_bin_path$\",$\r$\nmen systemet indikerer at den binære sti er $\"$INSTDIR$\"."
#LangString str_msg_vim_running ${LANG_DANISH} "Vim kører stadig på dit system.$\r$\nLuk venligst alle instanser af Vim inden du fortsætter."
#LangString str_msg_register_ole ${LANG_DANISH} "Forsøger at registrere Vim med OLE. Der er ingen meddelelse til at indikere om det virker eller ej."
#LangString str_msg_unreg_ole ${LANG_DANISH} "Forsøger at afregistrere Vim med OLE. Der er ingen meddelelse til at indikere om det virker eller ej."
#LangString str_msg_rm_start ${LANG_DANISH} "Afinstallerer følgende version:"
#LangString str_msg_rm_fail ${LANG_DANISH} "Kunne ikke afinstallere følgende version:"
#LangString str_msg_no_rm_key ${LANG_DANISH} "Kan ikke finde registreringsdatabasenøgle for afinstallationsguiden."
#LangString str_msg_no_rm_reg ${LANG_DANISH} "Kan ikke finde afinstallationsguiden fra registreringsdatabasen."
#LangString str_msg_no_rm_exe ${LANG_DANISH} "Kan ikke tilgå afinstallationsguide."
#LangString str_msg_rm_copy_fail ${LANG_DANISH} "Kunne ikke kopiere afinstallationsguide til midlertidig mappe."
#LangString str_msg_rm_run_fail ${LANG_DANISH} "Kunne ikke køre afinstallationsguide."
#LangString str_msg_abort_install ${LANG_DANISH} "Installationsguiden vil afbryde."
LangString str_msg_install_fail ${LANG_DANISH} "Installationen mislykkedes. Bedre held næste gang."
LangString str_msg_rm_exe_fail ${LANG_DANISH} "Nogle filer i $0 er ikke blevet slettet!$\r$\nDu skal gøre det manuelt."
#LangString str_msg_rm_root_fail ${LANG_DANISH} "ADVARSEL: Kan ikke fjerne $\"$vim_install_root$\", den er ikke tom!"
LangString str_msg_uninstalling ${LANG_DANISH} "Afinstallerer den gamle version..."
LangString str_msg_registering ${LANG_DANISH} "Registrerer..."
LangString str_msg_unregistering ${LANG_DANISH} "Afregistrerer..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_DANISH} "Vælg _vimrc-indstillinger"
LangString str_vimrc_page_subtitle ${LANG_DANISH} "Vælg indstillingerne til forbedring, tastatur og mus."
LangString str_msg_compat_title ${LANG_DANISH} " Vi- / Vim-opførsel "
LangString str_msg_compat_desc ${LANG_DANISH} "&Kompatibilitet og forbedringer"
LangString str_msg_compat_vi ${LANG_DANISH} "Vi-kompatibel"
LangString str_msg_compat_vim ${LANG_DANISH} "Vim original"
LangString str_msg_compat_defaults ${LANG_DANISH} "Vim med nogle forbedringer (indlæs defaults.vim)"
LangString str_msg_compat_all ${LANG_DANISH} "Vim med alle forbedringer (indlæs vimrc_example.vim) (standard)"
LangString str_msg_keymap_title ${LANG_DANISH} " Tilknytninger "
LangString str_msg_keymap_desc ${LANG_DANISH} "&Gentilknyt nogle få taster for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F osv.)"
LangString str_msg_keymap_default ${LANG_DANISH} "Gentilknyt ikke taster (standard)"
LangString str_msg_keymap_windows ${LANG_DANISH} "Gentilknyt nogle få taster"
LangString str_msg_mouse_title ${LANG_DANISH} " Mus "
LangString str_msg_mouse_desc ${LANG_DANISH} "&Opførsel af højre og venstre knapper"
LangString str_msg_mouse_default ${LANG_DANISH} "Højre: genvejsmenu, venstre: visuel tilstand (standard)"
LangString str_msg_mouse_windows ${LANG_DANISH} "Højre: genvejsmenu, venstre: vælg-tilstand (Windows)"
LangString str_msg_mouse_unix ${LANG_DANISH} "Højre: udvider markering, venstre: visuel tilstand (Unix)"
-290
View File
@@ -1,290 +0,0 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# dutch.nsi : Dutch language strings for gvim NSIS installer.
#
# Locale ID : 1043
# Locale Name : nl
# fileencoding : UTF-8
# Author : Peter Odding <peter@peterodding.com>
!insertmacro MUI_LANGUAGE "Dutch"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_DUTCH} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_DUTCH} \
"$(^Name) Uninstall"
##############################################################################
# Translated license file for the license page {{{1
##############################################################################
LicenseLangString page_lic_file 0 "..\lang\LICENSE.nsis.txt"
#LicenseLangString page_lic_file ${LANG_DUTCH} "..\lang\LICENSE.nl.nsis.txt"
##############################################################################
# Translated README.txt file, which is opened after installation {{{1
##############################################################################
LangString vim_readme_file 0 "README.txt"
#LangString vim_readme_file ${LANG_DUTCH} "README.nl.txt"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_DUTCH} \
# "Doelmap (moet eindigen op $\"vim$\")"
LangString str_show_readme ${LANG_DUTCH} \
"README weergeven na installatie"
# Install types:
LangString str_type_typical ${LANG_DUTCH} \
"Gebruikelijk"
LangString str_type_minimal ${LANG_DUTCH} \
"Minimaal"
LangString str_type_full ${LANG_DUTCH} \
"Volledig"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_DUTCH} \
"Bestaande versie(s) de-installeren"
LangString str_desc_old_ver ${LANG_DUTCH} \
"Bestaande Vim versie(s) van je systeem verwijderen."
LangString str_section_exe ${LANG_DUTCH} \
"Vim GUI"
LangString str_desc_exe ${LANG_DUTCH} \
"Vim GUI uitvoerbare bestanden en runtime bestanden. Dit component is vereist."
LangString str_section_console ${LANG_DUTCH} \
"Vim console programma"
LangString str_desc_console ${LANG_DUTCH} \
"Console versie van Vim (vim.exe)."
LangString str_section_batch ${LANG_DUTCH} \
"Creëer .bat bestanden"
LangString str_desc_batch ${LANG_DUTCH} \
"Creëer .bat bestanden voor Vim varianten in de Windows map voor \
commando regel gebruik."
LangString str_group_icons ${LANG_DUTCH} \
"Creëer pictogrammen for Vim"
LangString str_desc_icons ${LANG_DUTCH} \
"Creëer pictogrammen voor Vim op verschillende locaties voor gemakkelijke toegang."
LangString str_section_desktop ${LANG_DUTCH} \
"Op het bureaublad"
LangString str_desc_desktop ${LANG_DUTCH} \
"Creëer pictogrammen voor Vim uitvoerbare bestanden op het bureaublad."
LangString str_section_start_menu ${LANG_DUTCH} \
"In de Programma's map in het start menu"
LangString str_desc_start_menu ${LANG_DUTCH} \
"Voeg Vim toe aan de programma's map in het start menu. \
Van toepassing op Windows 95 en later."
#LangString str_section_quick_launch ${LANG_DUTCH} \
# "In de snel starten balk"
#LangString str_desc_quick_launch ${LANG_DUTCH} \
# "Voeg Vim snelkoppeling toe aan de snel starten balk."
LangString str_section_edit_with ${LANG_DUTCH} \
"Voeg Vim contextmenu toe"
LangString str_desc_edit_with ${LANG_DUTCH} \
"Voeg Vim toe aan de $\"Openen met...$\" contextmenu lijst."
#LangString str_section_edit_with32 ${LANG_DUTCH} \
# "32-bit versie"
#LangString str_desc_edit_with32 ${LANG_DUTCH} \
# "Voeg Vim toe aan de $\"Openen met...$\" contextmenu lijst \
# voor 32-bit toepassingen."
#LangString str_section_edit_with64 ${LANG_DUTCH} \
# "64-bit versie"
#LangString str_desc_edit_with64 ${LANG_DUTCH} \
# "Voeg Vim toe aan de $\"Openen met...$\" contextmenu lijst \
# voor 64-bit toepassingen."
LangString str_section_vim_rc ${LANG_DUTCH} \
"Creëer standaard configuratie"
LangString str_desc_vim_rc ${LANG_DUTCH} \
"Creëer een standaard configuratie bestand (_vimrc) als er nog geen bestaat."
LangString str_group_plugin ${LANG_DUTCH} \
"Creëer Plugin mappen"
LangString str_desc_plugin ${LANG_DUTCH} \
"Creëer plugin mappen. Plugin mappen maken het mogelijk om \
Vim uit te breiden door een bestand in een map te plaatsen."
LangString str_section_plugin_home ${LANG_DUTCH} \
"Privé"
LangString str_desc_plugin_home ${LANG_DUTCH} \
"Create plugin directories in HOME directory."
LangString str_section_plugin_vim ${LANG_DUTCH} \
"Gedeeld"
LangString str_desc_plugin_vim ${LANG_DUTCH} \
"Creëer plugin mappen in Vim installatie map, deze worden gebruikt \
voor iedereen op het systeem."
LangString str_section_nls ${LANG_DUTCH} \
"Ondersteuning voor andere talen"
LangString str_desc_nls ${LANG_DUTCH} \
"Bestanden voor ondersteuning van andere talen dan Engels installeren."
LangString str_unsection_register ${LANG_DUTCH} \
"Vim afmelden"
LangString str_desc_unregister ${LANG_DUTCH} \
"Registratie van Vim in het systeem ongedaan maken."
LangString str_unsection_exe ${LANG_DUTCH} \
"Vim uitvoerbare/runtime bestanden verwijderen"
LangString str_desc_rm_exe ${LANG_DUTCH} \
"Verwijder alle Vim uitvoerbare bestanden en runtime bestanden."
LangString str_ungroup_plugin ${LANG_DUTCH} \
"Remove plugin directories"
LangString str_desc_rm_plugin ${LANG_DUTCH} \
"Remove the plugin directories if they are empty."
LangString str_unsection_plugin_home ${LANG_DUTCH} \
"Privé"
LangString str_desc_rm_plugin_home ${LANG_DUTCH} \
"Remove the plugin directories from HOME directory."
LangString str_unsection_plugin_vim ${LANG_DUTCH} \
"Gedeeld"
LangString str_desc_rm_plugin_vim ${LANG_DUTCH} \
"Remove the plugin directories from Vim install directory."
LangString str_unsection_rootdir ${LANG_DUTCH} \
"Remove the Vim root directory"
LangString str_desc_rm_rootdir ${LANG_DUTCH} \
"Remove the Vim root directory. It contains your Vim configuration files!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_DUTCH} \
# "Er zijn $vim_old_ver_count Vim versies op je systeem gevonden.$\r$\n\
# Deze installatie kan omgaan met maximaal ${VIM_MAX_OLD_VER} versies.$\r$\n\
# Verwijder a.u.b. wat versies en probeer het dan opnieuw."
#LangString str_msg_invalid_root ${LANG_DUTCH} \
# "Ongeldig installatiepad: $vim_install_root!$\r$\n\
# Het moet eindelijk op $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_DUTCH} \
# "Binair pad onjuist!$\r$\n$\r$\n\
# Het binaire pad zou $\"$vim_bin_path$\" moeten zijn,$\r$\n\
# maar het systeem geeft aan dat het binaire pad $\"$INSTDIR$\" is."
#LangString str_msg_vim_running ${LANG_DUTCH} \
# "Vim is nog actief op je systeem.$\r$\n\
# Sluit a.u.b. alle instanties van Vim voordat je verder gaat."
#LangString str_msg_register_ole ${LANG_DUTCH} \
# "Bezig met proberen om Vim te registreren met OLE. \
# Er is geen bericht dat aangeeft of deze operatie slaagt."
#LangString str_msg_unreg_ole ${LANG_DUTCH} \
# "Bezig met proberen om Vim te de-registreren met OLE. \
# Er is geen bericht dat aangeeft of deze operatie slaagt."
#LangString str_msg_rm_start ${LANG_DUTCH} \
# "De volgende versies worden verwijderd:"
#LangString str_msg_rm_fail ${LANG_DUTCH} \
# "De volgende versies konden niet worden verwijderd:"
#LangString str_msg_no_rm_key ${LANG_DUTCH} \
# "Kan de uninstaller register sleutel niet vinden."
#LangString str_msg_no_rm_reg ${LANG_DUTCH} \
# "Kan de uninstaller niet vinden via het register."
#LangString str_msg_no_rm_exe ${LANG_DUTCH} \
# "Kan geen toegang krijgen tot de uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_DUTCH} \
# "Kon de uninstaller niet naar een tijdelijke map kopiëren."
#LangString str_msg_rm_run_fail ${LANG_DUTCH} \
# "Kon de uninstaller niet uitvoeren."
#LangString str_msg_abort_install ${LANG_DUTCH} \
# "Installatie wordt gestopt."
LangString str_msg_install_fail ${LANG_DUTCH} \
"Installatie is mislukt."
LangString str_msg_rm_exe_fail ${LANG_DUTCH} \
"Sommige bestanden in $0 zijn niet verwijderd!$\r$\n\
Dit moet je handmatig doen."
#LangString str_msg_rm_root_fail ${LANG_DUTCH} \
# "WAARSCHUWING: Kan $\"$vim_install_root$\" niet verwijderen omdat het niet leeg is!"
LangString str_msg_uninstalling ${LANG_DUTCH} \
"Uninstalling the old version..."
LangString str_msg_registering ${LANG_DUTCH} \
"Registering..."
LangString str_msg_unregistering ${LANG_DUTCH} \
"Unregistering..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_DUTCH} \
"Choose _vimrc settings"
LangString str_vimrc_page_subtitle ${LANG_DUTCH} \
"Choose the settings for enhancement, keyboard and mouse."
LangString str_msg_compat_title ${LANG_DUTCH} \
" Vi / Vim behavior "
LangString str_msg_compat_desc ${LANG_DUTCH} \
"&Compatibility and enhancements"
LangString str_msg_compat_vi ${LANG_DUTCH} \
"Vi compatible"
LangString str_msg_compat_vim ${LANG_DUTCH} \
"Vim original"
LangString str_msg_compat_defaults ${LANG_DUTCH} \
"Vim with some enhancements (load defaults.vim)"
LangString str_msg_compat_all ${LANG_DUTCH} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_DUTCH} \
" Mappings "
LangString str_msg_keymap_desc ${LANG_DUTCH} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_DUTCH} \
"Do not remap keys (Default)"
LangString str_msg_keymap_windows ${LANG_DUTCH} \
"Remap a few keys"
LangString str_msg_mouse_title ${LANG_DUTCH} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_DUTCH} \
"&Behavior of right and left buttons"
LangString str_msg_mouse_default ${LANG_DUTCH} \
"Right: popup menu, Left: visual mode (Default)"
LangString str_msg_mouse_windows ${LANG_DUTCH} \
"Right: popup menu, Left: select mode (Windows)"
LangString str_msg_mouse_unix ${LANG_DUTCH} \
"Right: extends selection, Left: visual mode (Unix)"
-288
View File
@@ -1,288 +0,0 @@
# vi:set ts=8 sts=4 sw=4 et fdm=marker:
#
# english.nsi: English language strings for gvim NSIS installer.
#
# Locale ID : 1033
# Locale Name : en
# fileencoding : UTF-8
# Author : Guopeng Wen, Ken Takata
!insertmacro MUI_LANGUAGE "English"
# Overwrite the default translation.
# These strings should be always English. Otherwise dosinst.c fails.
LangString ^SetupCaption ${LANG_ENGLISH} \
"$(^Name) Setup"
LangString ^UninstallCaption ${LANG_ENGLISH} \
"$(^Name) Uninstall"
##############################################################################
# License file for the license page {{{1
##############################################################################
LicenseLangString page_lic_file ${LANG_ENGLISH} "..\lang\LICENSE.nsis.txt"
##############################################################################
# README.txt file, which is opened after installation {{{1
##############################################################################
LangString vim_readme_file ${LANG_ENGLISH} "README.txt"
##############################################################################
# MUI Configuration Strings {{{1
##############################################################################
#LangString str_dest_folder ${LANG_ENGLISH} \
# "Destination Folder (Must end with $\"vim$\")"
LangString str_show_readme ${LANG_ENGLISH} \
"Show README after installation finished"
# Install types:
LangString str_type_typical ${LANG_ENGLISH} \
"Typical"
LangString str_type_minimal ${LANG_ENGLISH} \
"Minimal"
LangString str_type_full ${LANG_ENGLISH} \
"Full"
##############################################################################
# Section Titles & Description {{{1
##############################################################################
LangString str_section_old_ver ${LANG_ENGLISH} \
"Uninstall Existing Version(s)"
LangString str_desc_old_ver ${LANG_ENGLISH} \
"Uninstall existing Vim version(s) from your system."
LangString str_section_exe ${LANG_ENGLISH} \
"Vim GUI and runtime files"
LangString str_desc_exe ${LANG_ENGLISH} \
"Vim GUI executables and runtime files. This component is required."
LangString str_section_console ${LANG_ENGLISH} \
"Vim console program"
LangString str_desc_console ${LANG_ENGLISH} \
"Console version of Vim (vim.exe)."
LangString str_section_batch ${LANG_ENGLISH} \
"Create .bat files"
LangString str_desc_batch ${LANG_ENGLISH} \
"Create .bat files for Vim variants in the Windows directory for \
command line use."
LangString str_group_icons ${LANG_ENGLISH} \
"Create icons for Vim"
LangString str_desc_icons ${LANG_ENGLISH} \
"Create icons for Vim at various locations to facilitate easy access."
LangString str_section_desktop ${LANG_ENGLISH} \
"On the Desktop"
LangString str_desc_desktop ${LANG_ENGLISH} \
"Create icons for gVim executables on the desktop."
LangString str_section_start_menu ${LANG_ENGLISH} \
"In the Start Menu Programs Folder"
LangString str_desc_start_menu ${LANG_ENGLISH} \
"Add Vim in the programs folder of the start menu."
#LangString str_section_quick_launch ${LANG_ENGLISH} \
# "In the Quick Launch Bar"
#LangString str_desc_quick_launch ${LANG_ENGLISH} \
# "Add Vim shortcut in the quick launch bar."
LangString str_section_edit_with ${LANG_ENGLISH} \
"Add Vim Context Menu"
LangString str_desc_edit_with ${LANG_ENGLISH} \
"Add Vim to the $\"Open With...$\" context menu list."
#LangString str_section_edit_with32 ${LANG_ENGLISH} \
# "32-bit Version"
#LangString str_desc_edit_with32 ${LANG_ENGLISH} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 32-bit applications."
#LangString str_section_edit_with64 ${LANG_ENGLISH} \
# "64-bit Version"
#LangString str_desc_edit_with64 ${LANG_ENGLISH} \
# "Add Vim to the $\"Open With...$\" context menu list \
# for 64-bit applications."
LangString str_section_vim_rc ${LANG_ENGLISH} \
"Create Default Config"
LangString str_desc_vim_rc ${LANG_ENGLISH} \
"Create a default config file (_vimrc) if one does not already exist."
LangString str_group_plugin ${LANG_ENGLISH} \
"Create Plugin Directories"
LangString str_desc_plugin ${LANG_ENGLISH} \
"Create plugin directories. Plugin directories allow extending Vim \
by dropping a file into a directory."
LangString str_section_plugin_home ${LANG_ENGLISH} \
"Private"
LangString str_desc_plugin_home ${LANG_ENGLISH} \
"Create plugin directories in HOME directory."
LangString str_section_plugin_vim ${LANG_ENGLISH} \
"Shared"
LangString str_desc_plugin_vim ${LANG_ENGLISH} \
"Create plugin directories in Vim install directory, it is used for \
everybody on the system."
LangString str_section_nls ${LANG_ENGLISH} \
"Native Language Support"
LangString str_desc_nls ${LANG_ENGLISH} \
"Install files for native language support."
LangString str_unsection_register ${LANG_ENGLISH} \
"Unregister Vim"
LangString str_desc_unregister ${LANG_ENGLISH} \
"Unregister Vim from the system."
LangString str_unsection_exe ${LANG_ENGLISH} \
"Remove Vim Executables/Runtime Files"
LangString str_desc_rm_exe ${LANG_ENGLISH} \
"Remove all Vim executables and runtime files."
LangString str_ungroup_plugin ${LANG_ENGLISH} \
"Remove plugin directories"
LangString str_desc_rm_plugin ${LANG_ENGLISH} \
"Remove the plugin directories if they are empty."
LangString str_unsection_plugin_home ${LANG_ENGLISH} \
"Private"
LangString str_desc_rm_plugin_home ${LANG_ENGLISH} \
"Remove the plugin directories from HOME directory."
LangString str_unsection_plugin_vim ${LANG_ENGLISH} \
"Shared"
LangString str_desc_rm_plugin_vim ${LANG_ENGLISH} \
"Remove the plugin directories from Vim install directory."
LangString str_unsection_rootdir ${LANG_ENGLISH} \
"Remove the Vim root directory"
LangString str_desc_rm_rootdir ${LANG_ENGLISH} \
"Remove the Vim root directory. It contains your Vim configuration files!"
##############################################################################
# Messages {{{1
##############################################################################
#LangString str_msg_too_many_ver ${LANG_ENGLISH} \
# "Found $vim_old_ver_count Vim versions on your system.$\r$\n\
# This installer can only handle ${VIM_MAX_OLD_VER} versions \
# at most.$\r$\n\
# Please remove some versions and start again."
#LangString str_msg_invalid_root ${LANG_ENGLISH} \
# "Invalid install path: $vim_install_root!$\r$\n\
# It should end with $\"vim$\"."
#LangString str_msg_bin_mismatch ${LANG_ENGLISH} \
# "Binary path mismatch!$\r$\n$\r$\n\
# Expect the binary path to be $\"$vim_bin_path$\",$\r$\n\
# but system indicates the binary path is $\"$INSTDIR$\"."
#LangString str_msg_vim_running ${LANG_ENGLISH} \
# "Vim is still running on your system.$\r$\n\
# Please close all instances of Vim before you continue."
#LangString str_msg_register_ole ${LANG_ENGLISH} \
# "Attempting to register Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_unreg_ole ${LANG_ENGLISH} \
# "Attempting to unregister Vim with OLE. \
# There is no message indicates whether this works or not."
#LangString str_msg_rm_start ${LANG_ENGLISH} \
# "Uninstalling the following version:"
#LangString str_msg_rm_fail ${LANG_ENGLISH} \
# "Fail to uninstall the following version:"
#LangString str_msg_no_rm_key ${LANG_ENGLISH} \
# "Cannot find uninstaller registry key."
#LangString str_msg_no_rm_reg ${LANG_ENGLISH} \
# "Cannot find uninstaller from registry."
#LangString str_msg_no_rm_exe ${LANG_ENGLISH} \
# "Cannot access uninstaller."
#LangString str_msg_rm_copy_fail ${LANG_ENGLISH} \
# "Fail to copy uninstaller to temporary directory."
#LangString str_msg_rm_run_fail ${LANG_ENGLISH} \
# "Fail to run uninstaller."
#LangString str_msg_abort_install ${LANG_ENGLISH} \
# "Installer will abort."
LangString str_msg_install_fail ${LANG_ENGLISH} \
"Installation failed. Better luck next time."
LangString str_msg_rm_exe_fail ${LANG_ENGLISH} \
"Some files in $0 have not been deleted!$\r$\n\
You must do it manually."
#LangString str_msg_rm_root_fail ${LANG_ENGLISH} \
# "WARNING: Cannot remove $\"$vim_install_root$\", it is not empty!"
LangString str_msg_uninstalling ${LANG_ENGLISH} \
"Uninstalling the old version..."
LangString str_msg_registering ${LANG_ENGLISH} \
"Registering..."
LangString str_msg_unregistering ${LANG_ENGLISH} \
"Unregistering..."
##############################################################################
# Dialog Box {{{1
##############################################################################
LangString str_vimrc_page_title ${LANG_ENGLISH} \
"Choose _vimrc settings"
LangString str_vimrc_page_subtitle ${LANG_ENGLISH} \
"Choose the settings for enhancement, keyboard and mouse."
LangString str_msg_compat_title ${LANG_ENGLISH} \
" Vi / Vim behavior "
LangString str_msg_compat_desc ${LANG_ENGLISH} \
"&Compatibility and enhancements"
LangString str_msg_compat_vi ${LANG_ENGLISH} \
"Vi compatible"
LangString str_msg_compat_vim ${LANG_ENGLISH} \
"Vim original"
LangString str_msg_compat_defaults ${LANG_ENGLISH} \
"Vim with some enhancements (load defaults.vim)"
LangString str_msg_compat_all ${LANG_ENGLISH} \
"Vim with all enhancements (load vimrc_example.vim) (Default)"
LangString str_msg_keymap_title ${LANG_ENGLISH} \
" Mappings "
LangString str_msg_keymap_desc ${LANG_ENGLISH} \
"&Remap a few keys for Windows (Ctrl-V, Ctrl-C, Ctrl-A, Ctrl-S, Ctrl-F, etc)"
LangString str_msg_keymap_default ${LANG_ENGLISH} \
"Do not remap keys (Default)"
LangString str_msg_keymap_windows ${LANG_ENGLISH} \
"Remap a few keys"
LangString str_msg_mouse_title ${LANG_ENGLISH} \
" Mouse "
LangString str_msg_mouse_desc ${LANG_ENGLISH} \
"&Behavior of right and left buttons"
LangString str_msg_mouse_default ${LANG_ENGLISH} \
"Right: popup menu, Left: visual mode (Default)"
LangString str_msg_mouse_windows ${LANG_ENGLISH} \
"Right: popup menu, Left: select mode (Windows)"
LangString str_msg_mouse_unix ${LANG_ENGLISH} \
"Right: extends selection, Left: visual mode (Unix)"

Some files were not shown because too many files have changed in this diff Show More