mirror of
https://github.com/zoriya/vim.git
synced 2025-12-24 08:05:19 +00:00
Compare commits
304 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
381ff7726e | ||
|
|
6a38aff218 | ||
|
|
368ef5a48c | ||
|
|
a2a2fe841e | ||
|
|
3920bb4356 | ||
|
|
468db1f8af | ||
|
|
3f7d584e96 | ||
|
|
0a4e57f44a | ||
|
|
b100477190 | ||
|
|
41d6de2974 | ||
|
|
6fea0a5480 | ||
|
|
3a3a2c921c | ||
|
|
b34622579c | ||
|
|
5a2e0cf5f1 | ||
|
|
b48108d58e | ||
|
|
3c5d782dbc | ||
|
|
6e19993991 | ||
|
|
7d1bb90dcf | ||
|
|
fbe9a6903a | ||
|
|
ed89206efe | ||
|
|
e203841e0d | ||
|
|
6cc3027e54 | ||
|
|
e29c8bafa7 | ||
|
|
618c4d36ca | ||
|
|
c942f84aad | ||
|
|
95a03fc321 | ||
|
|
d66d68763d | ||
|
|
5c42c77315 | ||
|
|
dff3c9c1a7 | ||
|
|
eed63f96d2 | ||
|
|
b66cac1a8e | ||
|
|
ff70518f12 | ||
|
|
36f36715e6 | ||
|
|
ad4764f65b | ||
|
|
ad3b6a3340 | ||
|
|
85ee742f1e | ||
|
|
65be834c30 | ||
|
|
92b36663f8 | ||
|
|
6e6aff0f7a | ||
|
|
8cc43daee1 | ||
|
|
d9e9f89e0f | ||
|
|
72212c9bea | ||
|
|
481992cea9 | ||
|
|
51d4d84d6a | ||
|
|
ee9bc68f03 | ||
|
|
41afa308d6 | ||
|
|
bdb5f85a51 | ||
|
|
73785accfd | ||
|
|
1c5a120a70 | ||
|
|
215c82d061 | ||
|
|
39a94d2048 | ||
|
|
eda923e9c9 | ||
|
|
ea0e41a115 | ||
|
|
8a52587ee0 | ||
|
|
4854647abe | ||
|
|
fdfcce56a6 | ||
|
|
c6db53ce5f | ||
|
|
336fb22eae | ||
|
|
189e24bb14 | ||
|
|
cdbbdb9ece | ||
|
|
23eea9b984 | ||
|
|
1d20ad0bbd | ||
|
|
0b5926f77f | ||
|
|
5ccf7f1407 | ||
|
|
2e359b98f2 | ||
|
|
876de275cb | ||
|
|
b534e80008 | ||
|
|
6fa304f27d | ||
|
|
12e1729e89 | ||
|
|
e7ea4ba723 | ||
|
|
fd6693ca5c | ||
|
|
198ada3d9f | ||
|
|
9a39483adb | ||
|
|
768728b487 | ||
|
|
959ef61430 | ||
|
|
c74a87eea2 | ||
|
|
c7a96d6d1a | ||
|
|
3c2596a9e9 | ||
|
|
aa16b30552 | ||
|
|
dd21c89626 | ||
|
|
a49c077a88 | ||
|
|
075aeea404 | ||
|
|
c0d30eff6d | ||
|
|
60ddb1a140 | ||
|
|
14382c8bc9 | ||
|
|
3d670bb191 | ||
|
|
65311c6f47 | ||
|
|
2cddf0e85a | ||
|
|
511eb84c08 | ||
|
|
80b662009c | ||
|
|
ac023e8baa | ||
|
|
7e501f4d99 | ||
|
|
9f25a3a237 | ||
|
|
0a850673e3 | ||
|
|
ea49002aca | ||
|
|
5757a20547 | ||
|
|
57b947e3c3 | ||
|
|
c1e6621a59 | ||
|
|
78ca80f856 | ||
|
|
c847c12cdd | ||
|
|
ccc024f3a7 | ||
|
|
f63449a5d1 | ||
|
|
9f860a14c3 | ||
|
|
a01148d2cb | ||
|
|
d7745acbd8 | ||
|
|
5e6ea92b2c | ||
|
|
991603cc04 | ||
|
|
cacfccf803 | ||
|
|
4dd6c22ebe | ||
|
|
9c69453f0e | ||
|
|
c8dfcfc53b | ||
|
|
cb34507b5f | ||
|
|
fa41a3ed1e | ||
|
|
3cf094edaf | ||
|
|
8bc4d25abe | ||
|
|
4927daef60 | ||
|
|
ae1c8b790b | ||
|
|
b5c1557323 | ||
|
|
e2c27ca8ef | ||
|
|
a13bd294ab | ||
|
|
fdac54d7bb | ||
|
|
9a65a8c270 | ||
|
|
a87462a498 | ||
|
|
a15dfc2d41 | ||
|
|
a73dfc2f55 | ||
|
|
bd4614f43d | ||
|
|
ba9e1570d2 | ||
|
|
9848face74 | ||
|
|
8b94afc207 | ||
|
|
deda23f850 | ||
|
|
5c66e23c62 | ||
|
|
54996ecda0 | ||
|
|
ba0b458570 | ||
|
|
232a77e80a | ||
|
|
7e4b861da9 | ||
|
|
7c3b65eb3e | ||
|
|
bc32bbddcf | ||
|
|
0684800c85 | ||
|
|
4bd9b2b246 | ||
|
|
de094dcd6f | ||
|
|
0acd3abfad | ||
|
|
460799d885 | ||
|
|
437bc13ea1 | ||
|
|
8b97ca66cf | ||
|
|
dbf231a4b7 | ||
|
|
c4208da0f4 | ||
|
|
8e013b1421 | ||
|
|
9b05326afd | ||
|
|
8b96858996 | ||
|
|
5ca8f223f0 | ||
|
|
f18987caa5 | ||
|
|
e798446362 | ||
|
|
210c49bbe8 | ||
|
|
24078e39cd | ||
|
|
13a6605ddf | ||
|
|
002ccbfac4 | ||
|
|
129a8446d2 | ||
|
|
4b9fa95712 | ||
|
|
a1b654ff36 | ||
|
|
2e48567007 | ||
|
|
feea1b444e | ||
|
|
1083cae709 | ||
|
|
6fbf63de86 | ||
|
|
45e0704d96 | ||
|
|
e7a1bbf210 | ||
|
|
56d45f1b66 | ||
|
|
622f6f5b9a | ||
|
|
7724d621f2 | ||
|
|
7c5152826f | ||
|
|
5b63b236a0 | ||
|
|
18defabaeb | ||
|
|
6065755a39 | ||
|
|
060107cbc4 | ||
|
|
bbe5252c2c | ||
|
|
8e6b5034f3 | ||
|
|
624bb83619 | ||
|
|
50732c7ba6 | ||
|
|
a14c457cad | ||
|
|
5e7f43b6ac | ||
|
|
815c822aaf | ||
|
|
0f60fbf679 | ||
|
|
07c9ab8c05 | ||
|
|
28d3941ede | ||
|
|
d91124f926 | ||
|
|
39f52a6249 | ||
|
|
6e410c9112 | ||
|
|
c9e8640476 | ||
|
|
6d9a145d71 | ||
|
|
64a536d4fa | ||
|
|
a063b22b3b | ||
|
|
715a58fda6 | ||
|
|
ea19e7856b | ||
|
|
fd1a838d36 | ||
|
|
39cd9061b1 | ||
|
|
3780c11267 | ||
|
|
5ccac75d96 | ||
|
|
59834ba6df | ||
|
|
8bb5eaf019 | ||
|
|
cef8ab2c75 | ||
|
|
c04bc64ba6 | ||
|
|
93f65a4ab8 | ||
|
|
19bc76c929 | ||
|
|
9dadfe7a52 | ||
|
|
09cc8c92d1 | ||
|
|
ac2bb9dfea | ||
|
|
c39c0230c4 | ||
|
|
2cf145b78b | ||
|
|
17c71daf83 | ||
|
|
a54816b884 | ||
|
|
6eda269600 | ||
|
|
ca6231b8a6 | ||
|
|
9fd5d9674f | ||
|
|
46dcd84d24 | ||
|
|
6081c17890 | ||
|
|
b256221e83 | ||
|
|
a13f3a4f5d | ||
|
|
0b8176dff2 | ||
|
|
b3ec5643cd | ||
|
|
29ce419076 | ||
|
|
bc10be7a40 | ||
|
|
d181bafd0b | ||
|
|
8854244587 | ||
|
|
8ce738de3f | ||
|
|
8d4477ef22 | ||
|
|
f1d83c4c71 | ||
|
|
a95d6a3d64 | ||
|
|
84b5b1c660 | ||
|
|
26113e5ae3 | ||
|
|
b5e7da1f27 | ||
|
|
15f69de263 | ||
|
|
69f85c6506 | ||
|
|
4d618006ec | ||
|
|
55adc5b46a | ||
|
|
6be21b937d | ||
|
|
79f6ffd388 | ||
|
|
a68bd6f089 | ||
|
|
d52fb2fabd | ||
|
|
8b0fa7a565 | ||
|
|
9f32069b8c | ||
|
|
aa2ce6f580 | ||
|
|
05a40e07c2 | ||
|
|
203c7225f5 | ||
|
|
20e045f781 | ||
|
|
baab7c0865 | ||
|
|
1e2007e643 | ||
|
|
d69ffbe4bc | ||
|
|
bdac2ef6fe | ||
|
|
70197885a8 | ||
|
|
7c96776729 | ||
|
|
3d7e567ea7 | ||
|
|
a04003a929 | ||
|
|
8f1d09828a | ||
|
|
2abec431e1 | ||
|
|
ce35ee8986 | ||
|
|
912fbaf6e8 | ||
|
|
91d26aa338 | ||
|
|
de79f9129a | ||
|
|
fdf135a052 | ||
|
|
118072862b | ||
|
|
d0809869d6 | ||
|
|
2f6efaccfd | ||
|
|
aeb1c97db5 | ||
|
|
626b6ab486 | ||
|
|
6d5f4a0bed | ||
|
|
3e5bbb8e11 | ||
|
|
b38700ac81 | ||
|
|
231480f975 | ||
|
|
a441a3eaab | ||
|
|
5e7a6a4a10 | ||
|
|
142cad1f88 | ||
|
|
94606f70e2 | ||
|
|
8be10aa9e4 | ||
|
|
19be0eb7f0 | ||
|
|
ceec8640df | ||
|
|
92b59c628a | ||
|
|
8df07d0ca3 | ||
|
|
6eca04e9f1 | ||
|
|
bfe568d8c4 | ||
|
|
421ed14b8a | ||
|
|
a7d456191d | ||
|
|
0887e62bce | ||
|
|
4f5681dbdf | ||
|
|
539349cb32 | ||
|
|
c73fc86bf8 | ||
|
|
cc15bbcbc4 | ||
|
|
f10db25367 | ||
|
|
b498c44444 | ||
|
|
5e48e97e42 | ||
|
|
8fc2a097e2 | ||
|
|
6c2fc377bf | ||
|
|
4bfb89996f | ||
|
|
5e53fca76f | ||
|
|
c0cba184f5 | ||
|
|
a2834e17d1 | ||
|
|
991657e87d | ||
|
|
6a1deaf5ad | ||
|
|
5bcfb5a30c | ||
|
|
793c315115 | ||
|
|
27fbf6e5e8 | ||
|
|
83a06705dc | ||
|
|
322ad0c953 | ||
|
|
0c59c30271 | ||
|
|
7b5e52d16f | ||
|
|
7d755d8ef3 |
11
.cirrus.yml
11
.cirrus.yml
@@ -5,9 +5,9 @@ env:
|
||||
freebsd_task:
|
||||
name: FreeBSD
|
||||
matrix:
|
||||
- name: FreeBSD 14.1
|
||||
- name: FreeBSD 14.2
|
||||
freebsd_instance:
|
||||
image_family: freebsd-14-1
|
||||
image_family: freebsd-14-2
|
||||
timeout_in: 20m
|
||||
install_script:
|
||||
- pkg install -y gettext
|
||||
@@ -22,9 +22,10 @@ freebsd_task:
|
||||
- chown -R cirrus:cirrus .
|
||||
- sudo -u cirrus make test
|
||||
on_failure:
|
||||
screendump_artifacts:
|
||||
test_artifacts:
|
||||
name: "Cirrus-CI-freebsd-failed-tests"
|
||||
path: |
|
||||
"runtime/syntax/testdir/failed/*"
|
||||
"src/testdir/failed/*"
|
||||
runtime/indent/testdir/*.fail
|
||||
runtime/syntax/testdir/failed/*
|
||||
src/testdir/failed/*
|
||||
type: application/octet-stream
|
||||
|
||||
254
.clang-format
Normal file
254
.clang-format
Normal file
@@ -0,0 +1,254 @@
|
||||
---
|
||||
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'
|
||||
...
|
||||
29
.editorconfig
Normal file
29
.editorconfig
Normal file
@@ -0,0 +1,29 @@
|
||||
# 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
|
||||
|
||||
[*.{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
|
||||
|
||||
[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
|
||||
12
.git-blame-ignore-revs
Normal file
12
.git-blame-ignore-revs
Normal file
@@ -0,0 +1,12 @@
|
||||
# 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
|
||||
34
.github/MAINTAINERS
vendored
34
.github/MAINTAINERS
vendored
@@ -19,7 +19,7 @@ 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 @gpanders
|
||||
runtime/autoload/typst.vim @saccarosium
|
||||
runtime/autoload/xmlformat.vim @chrisbra
|
||||
runtime/autoload/dist/json.vim @habamax
|
||||
runtime/colors/blue.vim @habamax @romainl @neutaaaaan
|
||||
@@ -104,23 +104,35 @@ 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 @gpanders
|
||||
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
|
||||
@@ -128,6 +140,7 @@ 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
|
||||
@@ -201,6 +214,7 @@ 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
|
||||
@@ -215,6 +229,7 @@ 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
|
||||
@@ -222,7 +237,9 @@ 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
|
||||
@@ -232,8 +249,10 @@ 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
|
||||
@@ -263,6 +282,7 @@ 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
|
||||
@@ -277,7 +297,7 @@ runtime/ftplugin/toml.vim @averms
|
||||
runtime/ftplugin/tt2html.vim @petdance
|
||||
runtime/ftplugin/typescript.vim @dkearns
|
||||
runtime/ftplugin/typescriptreact.vim @dkearns
|
||||
runtime/ftplugin/typst.vim @gpanders
|
||||
runtime/ftplugin/typst.vim @saccarosium
|
||||
runtime/ftplugin/unison.vim @chuwy
|
||||
runtime/ftplugin/v.vim @ribru17
|
||||
runtime/ftplugin/vdf.vim @ObserverOfTime
|
||||
@@ -370,7 +390,7 @@ 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 @gpanders
|
||||
runtime/indent/typst.vim @saccarosium
|
||||
runtime/indent/vroom.vim @dbarnett
|
||||
runtime/indent/wast.vim @rhysd
|
||||
runtime/indent/xml.vim @chrisbra
|
||||
@@ -475,6 +495,7 @@ 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
|
||||
@@ -488,6 +509,7 @@ runtime/syntax/json.vim @vito-c
|
||||
runtime/syntax/jsonc.vim @izhakjakov
|
||||
runtime/syntax/julia.vim @carlobaldassi
|
||||
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
|
||||
@@ -513,6 +535,7 @@ 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
|
||||
@@ -520,7 +543,9 @@ runtime/syntax/nix.vim @equill
|
||||
runtime/syntax/nroff.vim @jmarshall
|
||||
runtime/syntax/nsis.vim @k-takata
|
||||
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
|
||||
@@ -537,6 +562,7 @@ runtime/syntax/prolog.vim @XVilka
|
||||
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
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
name: 'screendump'
|
||||
description: "Upload failed screendump tests"
|
||||
name: 'test_artifacts'
|
||||
description: "Upload failed test artifacts"
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
@@ -12,6 +12,7 @@ runs:
|
||||
# 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
|
||||
25
.github/workflows/ci.yml
vendored
25
.github/workflows/ci.yml
vendored
@@ -171,7 +171,7 @@ jobs:
|
||||
normal)
|
||||
;;
|
||||
huge)
|
||||
echo "TEST=scripttests test_libvterm"
|
||||
echo "TEST=scripttests test_libvterm indenttest syntaxtest"
|
||||
INTERFACE=${{ matrix.interface || 'yes' }}
|
||||
if ${{ matrix.python3 == 'stable-abi' }}; then
|
||||
PYTHON3_CONFOPT="--with-python3-stable-abi=3.8"
|
||||
@@ -194,9 +194,9 @@ jobs:
|
||||
echo "TEST=unittests"
|
||||
fi
|
||||
if ${{ contains(matrix.extra, 'asan') }}; then
|
||||
echo "SANITIZER_CFLAGS=-g -O1 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize-recover=all -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer"
|
||||
echo "ASAN_OPTIONS=print_stacktrace=1 log_path=${LOG_DIR}/asan"
|
||||
echo "UBSAN_OPTIONS=print_stacktrace=1 log_path=${LOG_DIR}/ubsan"
|
||||
echo "SANITIZER_CFLAGS=-g -O0 -DABORT_ON_INTERNAL_ERROR -DEXITFREE -fsanitize-recover=all -fsanitize=address -fsanitize=undefined -fno-omit-frame-pointer"
|
||||
echo "ASAN_OPTIONS=print_stacktrace=1:log_path=${LOG_DIR}/asan"
|
||||
echo "UBSAN_OPTIONS=print_stacktrace=1:log_path=${LOG_DIR}/ubsan"
|
||||
echo "LSAN_OPTIONS=suppressions=${GITHUB_WORKSPACE}/src/testdir/lsan-suppress.txt"
|
||||
fi
|
||||
if ${{ contains(matrix.extra, 'vimtags') }}; then
|
||||
@@ -268,11 +268,11 @@ jobs:
|
||||
- name: Test
|
||||
timeout-minutes: 25
|
||||
run: |
|
||||
do_test() { sg audio "sg $(id -gn) '$*'"; }
|
||||
do_test() { echo "$*"; sg audio "sg $(id -gn) '$*'"; }
|
||||
do_test make ${SHADOWOPT} ${TEST}
|
||||
|
||||
- if: ${{ !cancelled() }}
|
||||
uses: ./.github/actions/screendump
|
||||
uses: ./.github/actions/test_artifacts
|
||||
|
||||
- name: Vim tags
|
||||
if: contains(matrix.extra, 'vimtags')
|
||||
@@ -295,15 +295,16 @@ jobs:
|
||||
- name: Codecov
|
||||
timeout-minutes: 20
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v4
|
||||
uses: codecov/codecov-action@v5
|
||||
with:
|
||||
flags: linux,${{ matrix.features }}-${{ matrix.compiler }}-${{ matrix.extra }}
|
||||
flags: linux,${{ matrix.features }}-${{ matrix.compiler }}-${{ join(matrix.extra, '-') }}
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
|
||||
- name: ASan logs
|
||||
if: contains(matrix.extra, 'asan') && !cancelled()
|
||||
run: |
|
||||
for f in $(grep -lR '#[[:digit:]]* *0x[[:xdigit:]]*' "${LOG_DIR}"); do
|
||||
echo "$f"
|
||||
asan_symbolize -l "$f"
|
||||
false # in order to fail a job
|
||||
done
|
||||
@@ -388,12 +389,12 @@ jobs:
|
||||
brew install diffutils
|
||||
|
||||
- name: Test
|
||||
timeout-minutes: 20
|
||||
timeout-minutes: 25
|
||||
run: |
|
||||
make ${TEST}
|
||||
|
||||
- if: ${{ !cancelled() }}
|
||||
uses: ./.github/actions/screendump
|
||||
uses: ./.github/actions/test_artifacts
|
||||
|
||||
windows:
|
||||
runs-on: windows-2022
|
||||
@@ -703,7 +704,7 @@ jobs:
|
||||
)
|
||||
|
||||
- if: ${{ !cancelled() }}
|
||||
uses: ./.github/actions/screendump
|
||||
uses: ./.github/actions/test_artifacts
|
||||
|
||||
- name: Generate gcov files
|
||||
if: matrix.coverage
|
||||
@@ -715,7 +716,7 @@ jobs:
|
||||
- name: Codecov
|
||||
timeout-minutes: 20
|
||||
if: matrix.coverage
|
||||
uses: codecov/codecov-action@v4
|
||||
uses: codecov/codecov-action@v5
|
||||
with:
|
||||
directory: src
|
||||
flags: windows,${{ matrix.toolchain }}-${{ matrix.arch }}-${{ matrix.features }}
|
||||
|
||||
48
Filelist
48
Filelist
@@ -5,18 +5,21 @@
|
||||
SRC_ALL = \
|
||||
.cirrus.yml \
|
||||
.gitattributes \
|
||||
.git-blame-ignore-revs \
|
||||
.github/MAINTAINERS \
|
||||
.github/ISSUE_TEMPLATE/bug_report.yml \
|
||||
.github/ISSUE_TEMPLATE/feature_request.md \
|
||||
.github/workflows/ci.yml \
|
||||
.github/workflows/codeql-analysis.yml \
|
||||
.github/actions/screendump/action.yml \
|
||||
.github/workflows/coverity.yml \
|
||||
.github/actions/test_artifacts/action.yml \
|
||||
.github/dependabot.yml \
|
||||
.gitignore \
|
||||
.hgignore \
|
||||
.appveyor.yml \
|
||||
.clang-format \
|
||||
.codecov.yml \
|
||||
.editorconfig \
|
||||
ci/appveyor.bat \
|
||||
ci/config.mk*.sed \
|
||||
ci/if_ver*.vim \
|
||||
@@ -221,6 +224,7 @@ SRC_ALL = \
|
||||
src/testdir/samples/*.vim \
|
||||
src/testdir/samples/test000 \
|
||||
src/testdir/samples/test.zip \
|
||||
src/testdir/samples/test_undo.txt.undo \
|
||||
src/testdir/samples/testa.zip \
|
||||
src/testdir/color_ramp.vim \
|
||||
src/testdir/silent.wav \
|
||||
@@ -704,6 +708,8 @@ RT_ALL = \
|
||||
README_VIM9.md \
|
||||
LICENSE \
|
||||
CONTRIBUTING.md \
|
||||
lang/LICENSE.itx \
|
||||
lang/README.itx \
|
||||
runtime/bugreport.vim \
|
||||
runtime/doc/*.awk \
|
||||
runtime/doc/*.pl \
|
||||
@@ -760,8 +766,15 @@ RT_ALL = \
|
||||
runtime/tools/README.txt \
|
||||
runtime/tools/[a-z]*[a-z0-9] \
|
||||
runtime/tutor/README.txt \
|
||||
runtime/tutor/tutor \
|
||||
runtime/tutor/tutor1 \
|
||||
runtime/tutor/en/vim-01-beginner.tutor \
|
||||
runtime/tutor/en/vim-01-beginner.tutor.json \
|
||||
runtime/tutor/it/vim-01-beginner.tutor \
|
||||
runtime/tutor/it/vim-01-beginner.tutor.json \
|
||||
runtime/tutor/tutor.tutor \
|
||||
runtime/tutor/tutor.tutor.json \
|
||||
runtime/tutor/tutor.vim \
|
||||
runtime/tutor/tutor2 \
|
||||
runtime/vimrc_example.vim \
|
||||
runtime/pack/dist/opt/cfilter/plugin/cfilter.vim \
|
||||
runtime/pack/dist/opt/comment/plugin/comment.vim \
|
||||
@@ -783,6 +796,8 @@ RT_ALL = \
|
||||
runtime/pack/dist/opt/editorconfig/doc/editorconfig.txt \
|
||||
runtime/pack/dist/opt/editorconfig/ftdetect/editorconfig.vim \
|
||||
runtime/pack/dist/opt/editorconfig/plugin/editorconfig.vim \
|
||||
runtime/pack/dist/opt/helptoc/autoload/helptoc.vim \
|
||||
runtime/pack/dist/opt/helptoc/plugin/helptoc.vim \
|
||||
runtime/pack/dist/opt/justify/plugin/justify.vim \
|
||||
runtime/pack/dist/opt/matchit/plugin/matchit.vim \
|
||||
runtime/pack/dist/opt/matchit/doc/matchit.txt \
|
||||
@@ -1044,19 +1059,22 @@ LANG_GEN = \
|
||||
runtime/tutor/README.*.txt \
|
||||
runtime/tutor/Makefile \
|
||||
runtime/tutor/Make_all.mak \
|
||||
runtime/tutor/tutor.utf-8 \
|
||||
runtime/tutor/tutor.?? \
|
||||
runtime/tutor/tutor.??.utf-8 \
|
||||
runtime/tutor/tutor.??.euc \
|
||||
runtime/tutor/tutor.??.sjis \
|
||||
runtime/tutor/tutor.??.iso9 \
|
||||
runtime/tutor/tutor.??.big5 \
|
||||
runtime/tutor/tutor.??.cp1250 \
|
||||
runtime/tutor/tutor.??.cp1251 \
|
||||
runtime/tutor/tutor.??.cp737 \
|
||||
runtime/tutor/tutor.??_??.utf-8 \
|
||||
runtime/tutor/tutor.bar \
|
||||
runtime/tutor/tutor.bar.utf-8 \
|
||||
runtime/tutor/tutor1.utf-8 \
|
||||
runtime/tutor/tutor1.?? \
|
||||
runtime/tutor/tutor1.??.utf-8 \
|
||||
runtime/tutor/tutor1.??.euc \
|
||||
runtime/tutor/tutor1.??.sjis \
|
||||
runtime/tutor/tutor1.??.iso9 \
|
||||
runtime/tutor/tutor1.??.big5 \
|
||||
runtime/tutor/tutor1.??.cp1250 \
|
||||
runtime/tutor/tutor1.??.cp1251 \
|
||||
runtime/tutor/tutor1.??.cp737 \
|
||||
runtime/tutor/tutor1.??_??.utf-8 \
|
||||
runtime/tutor/tutor1.bar \
|
||||
runtime/tutor/tutor1.bar.utf-8 \
|
||||
runtime/tutor/tutor2.utf-8 \
|
||||
runtime/tutor/tutor2.?? \
|
||||
runtime/tutor/tutor2.??.utf-8 \
|
||||
runtime/spell/README.txt \
|
||||
runtime/spell/??/*.diff \
|
||||
runtime/spell/??/main.aap \
|
||||
|
||||
99
lang/LICENSE.itx
Normal file
99
lang/LICENSE.itx
Normal file
@@ -0,0 +1,99 @@
|
||||
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.
|
||||
167
lang/README.itx
Normal file
167
lang/README.itx
Normal file
@@ -0,0 +1,167 @@
|
||||
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>
|
||||
16
runtime/autoload/dist/ft.vim
vendored
16
runtime/autoload/dist/ft.vim
vendored
@@ -144,6 +144,14 @@ export def FTcfg()
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTcl()
|
||||
if join(getline(1, 4), '') =~ '/\*'
|
||||
setf opencl
|
||||
else
|
||||
setf lisp
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTcls()
|
||||
if exists("g:filetype_cls")
|
||||
exe "setf " .. g:filetype_cls
|
||||
@@ -169,6 +177,14 @@ export def FTcls()
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTll()
|
||||
if getline(1) =~ ';\|\<source_filename\>\|\<target\>'
|
||||
setf llvm
|
||||
else
|
||||
setf lifelines
|
||||
endif
|
||||
enddef
|
||||
|
||||
export def FTlpc()
|
||||
if exists("g:lpc_syntax_for_c")
|
||||
var lnum = 1
|
||||
|
||||
7
runtime/autoload/dist/vimindent.vim
vendored
7
runtime/autoload/dist/vimindent.vim
vendored
@@ -2,10 +2,11 @@ vim9script
|
||||
|
||||
# Language: Vim script
|
||||
# Maintainer: github user lacygoill
|
||||
# Last Change: 2023 Jun 29
|
||||
# Last Change: 2024 Nov 08
|
||||
#
|
||||
# Includes Changes from Vim:
|
||||
# Includes changes from The Vim Project:
|
||||
# - 2024 Feb 09: Fix indent after literal Dict (A. Radev via #13966)
|
||||
# - 2024 Nov 08: Fix indent after :silent! function (D. Kearns via #16009)
|
||||
|
||||
# NOTE: Whenever you change the code, make sure the tests are still passing:
|
||||
#
|
||||
@@ -295,7 +296,7 @@ patterns = []
|
||||
endfor
|
||||
}
|
||||
|
||||
const STARTS_NAMED_BLOCK: string = $'^\s*\%(sil\%[ent]\s\+\)\=\%({patterns->join('\|')}\)\>\%(\s\|$\|!\)\@='
|
||||
const STARTS_NAMED_BLOCK: string = $'^\s*\%(sil\%[ent]!\=\s\+\)\=\%({patterns->join('\|')}\)\>\%(\s\|$\|!\)\@='
|
||||
|
||||
# STARTS_CURLY_BLOCK {{{3
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
" 2024 Sep 23 by Vim Project: runtime dir selection fix (#15722)
|
||||
" autoloading search path fix
|
||||
" substitution of hardcoded commands with global variables
|
||||
" 2024 Nov 12 by Vim Project: fix problems on Windows (#16036)
|
||||
" }}}
|
||||
"
|
||||
" GetLatestVimScripts: 642 1 :AutoInstall: getscript.vim
|
||||
@@ -27,9 +28,9 @@ if &cp
|
||||
echoerr "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
||||
finish
|
||||
endif
|
||||
if v:version < 702
|
||||
if v:version < 901
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of GetLatestVimScripts needs vim 7.2"
|
||||
echo "***warning*** this version of GetLatestVimScripts needs vim 9.1"
|
||||
echohl Normal
|
||||
finish
|
||||
endif
|
||||
@@ -57,6 +58,9 @@ endif
|
||||
if !exists("g:GetLatestVimScripts_wget")
|
||||
if executable("wget")
|
||||
let g:GetLatestVimScripts_wget= "wget"
|
||||
elseif executable("curl.exe")
|
||||
" enforce extension: windows powershell desktop version has a curl alias that hides curl.exe
|
||||
let g:GetLatestVimScripts_wget= "curl.exe"
|
||||
elseif executable("curl")
|
||||
let g:GetLatestVimScripts_wget= "curl"
|
||||
else
|
||||
@@ -69,7 +73,7 @@ endif
|
||||
if !exists("g:GetLatestVimScripts_options")
|
||||
if g:GetLatestVimScripts_wget == "wget"
|
||||
let g:GetLatestVimScripts_options= "-q -O"
|
||||
elseif g:GetLatestVimScripts_wget == "curl"
|
||||
elseif g:GetLatestVimScripts_wget =~ "curl"
|
||||
let g:GetLatestVimScripts_options= "-s -o"
|
||||
else
|
||||
let g:GetLatestVimScripts_options= ""
|
||||
@@ -121,11 +125,14 @@ if g:GetLatestVimScripts_allowautoinstall
|
||||
let s:dotvim= s:is_windows ? "vimfiles" : ".vim"
|
||||
|
||||
if !exists("g:GetLatestVimScripts_mv")
|
||||
if s:is_windows && &shell !~ '\cbash\|pwsh\|powershell'
|
||||
if &shell =~? '\<pwsh\>\|\<powershell\>'
|
||||
let g:GetLatestVimScripts_mv= "move -Force"
|
||||
elseif s:is_windows && &shell =~? '\<cmd\>'
|
||||
" windows (but not cygwin/bash)
|
||||
let g:GetLatestVimScripts_mv= "move"
|
||||
let g:GetLatestVimScripts_mv= "move /Y"
|
||||
else
|
||||
" unix
|
||||
" unix or cygwin bash/zsh
|
||||
" 'mv' overrides existing files without asking
|
||||
let g:GetLatestVimScripts_mv= "mv"
|
||||
endif
|
||||
endif
|
||||
@@ -160,12 +167,6 @@ fun! getscript#GetLatestVimScripts()
|
||||
return
|
||||
endif
|
||||
|
||||
" insure that fnameescape() is available
|
||||
if !exists("*fnameescape")
|
||||
echoerr "GetLatestVimScripts needs fnameescape() (provided by 7.1.299 or later)"
|
||||
return
|
||||
endif
|
||||
|
||||
" Find the .../GetLatest subdirectory under the runtimepath
|
||||
for datadir in split(&rtp,',') + ['']
|
||||
if isdirectory(datadir."/GetLatest")
|
||||
@@ -377,7 +378,16 @@ fun! s:GetOneScript(...)
|
||||
let t_ti= &t_ti
|
||||
let t_te= &t_te
|
||||
let rs = &rs
|
||||
let ssl = &ssl
|
||||
|
||||
set t_ti= t_te= nors
|
||||
" avoid issues with shellescape() on Windows
|
||||
if s:is_windows && &shell =~? '\<cmd\>'
|
||||
set noshellslash
|
||||
endif
|
||||
|
||||
" restore valures afterwards
|
||||
defer execute("let @a = rega | let &t_ti = t_ti | let &t_te = t_te | let &rs = rs | let &ssl = ssl")
|
||||
|
||||
" put current line on top-of-screen and interpret it into
|
||||
" a script identifier : used to obtain webpage
|
||||
@@ -394,7 +404,6 @@ fun! s:GetOneScript(...)
|
||||
else
|
||||
let curline = getline(".")
|
||||
if curline =~ '^\s*#'
|
||||
let @a= rega
|
||||
" call Dret("GetOneScript : skipping a pure comment line")
|
||||
return
|
||||
endif
|
||||
@@ -429,7 +438,6 @@ fun! s:GetOneScript(...)
|
||||
" plugin author protection from downloading his/her own scripts atop their latest work
|
||||
if scriptid == 0 || srcid == 0
|
||||
" When looking for :AutoInstall: lines, skip scripts that have 0 0 scriptname
|
||||
let @a= rega
|
||||
" call Dret("GetOneScript : skipping a scriptid==srcid==0 line")
|
||||
return
|
||||
endif
|
||||
@@ -497,7 +505,6 @@ fun! s:GetOneScript(...)
|
||||
" call Decho("***warning*** couldn'".'t find "Click on the package..." in description page for <'.aicmmnt.">")
|
||||
echomsg "***warning*** couldn'".'t find "Click on the package..." in description page for <'.aicmmnt.">"
|
||||
" call Dret("GetOneScript : srch for /Click on the package/ failed")
|
||||
let @a= rega
|
||||
return
|
||||
endif
|
||||
" call Decho('found "Click on the package to download"')
|
||||
@@ -513,7 +520,6 @@ fun! s:GetOneScript(...)
|
||||
let s:downerrors = s:downerrors + 1
|
||||
" call Decho("***warning*** couldn'".'t find "src_id=" in description page for <'.aicmmnt.">")
|
||||
echomsg "***warning*** couldn'".'t find "src_id=" in description page for <'.aicmmnt.">"
|
||||
let @a= rega
|
||||
" call Dret("GetOneScript : srch for /src_id/ failed")
|
||||
return
|
||||
endif
|
||||
@@ -547,11 +553,11 @@ fun! s:GetOneScript(...)
|
||||
" call Decho(".downloading new <".sname.">")
|
||||
echomsg ".downloading new <".sname.">"
|
||||
if has("win32") || has("win16") || has("win95")
|
||||
" call Decho(".new|exe silent r!".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr.latestsrcid)."|q")
|
||||
new|exe "silent r!".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr.latestsrcid)|q
|
||||
" call Decho(".new|exe silent r!".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr.latestsrcid)."|bw!")
|
||||
new|exe "silent r!".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr.latestsrcid)|bw!
|
||||
else
|
||||
" call Decho(".exe silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr).latestsrcid
|
||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr).latestsrcid
|
||||
" call Decho(".exe silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr.latestsrcid)
|
||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".shellescape(sname)." ".shellescape(g:GetLatestVimScripts_downloadaddr.latestsrcid)
|
||||
endif
|
||||
|
||||
" --------------------------------------------------------------------------
|
||||
@@ -654,8 +660,8 @@ fun! s:GetOneScript(...)
|
||||
exe "silent !".g:GetLatestVimScripts_mv." ".shellescape(sname)." ".installdir
|
||||
endif
|
||||
if tgtdir != "plugin"
|
||||
" call Decho("exe silent !".g:GetLatestVimScripts_mv." plugin/".shellescape(pname)." ".tgtdir)
|
||||
exe "silent !".g:GetLatestVimScripts_mv." plugin/".shellescape(pname)." ".tgtdir
|
||||
" call Decho("exe silent !".g:GetLatestVimScripts_mv." ".shellescape("plugin/".pname)." ".tgtdir)
|
||||
exe "silent !".g:GetLatestVimScripts_mv." ".shellescape("plugin/".pname)." ".tgtdir
|
||||
endif
|
||||
|
||||
" helptags step
|
||||
@@ -680,13 +686,7 @@ fun! s:GetOneScript(...)
|
||||
" call Decho("[latestsrcid=".latestsrcid."] <= [srcid=".srcid."], no need to update")
|
||||
endif
|
||||
|
||||
" restore options
|
||||
let &t_ti = t_ti
|
||||
let &t_te = t_te
|
||||
let &rs = rs
|
||||
let @a = rega
|
||||
" call Dredir("BUFFER TEST (GetOneScript)","ls!")
|
||||
|
||||
" call Dret("GetOneScript")
|
||||
endfun
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim autoload file for editing compressed files.
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2023 Aug 10
|
||||
" Last Change: 2024 Nov 25
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" These functions are used by the gzip plugin.
|
||||
@@ -148,6 +148,9 @@ fun gzip#read(cmd)
|
||||
else
|
||||
let fname = escape(expand("%:r"), " \t\n*?[{`$\\%#'\"|!<")
|
||||
endif
|
||||
if filereadable(undofile(expand("%")))
|
||||
exe "sil rundo " . fnameescape(undofile(expand("%")))
|
||||
endif
|
||||
if &verbose >= 8
|
||||
execute "doau BufReadPost " . fname
|
||||
else
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,363 +0,0 @@
|
||||
" netrwFileHandlers: contains various extension-based file handlers for
|
||||
" netrw's browsers' x command ("eXecute launcher")
|
||||
" Maintainer: This runtime file is looking for a new maintainer.
|
||||
" Original Author: Charles E. Campbell
|
||||
" Date: Sep 18, 2020
|
||||
" Version: 11
|
||||
" Copyright: Copyright (C) 1999-2012 Charles E. Campbell {{{1
|
||||
" Permission is hereby granted to use and distribute this code,
|
||||
" with or without modifications, provided that this copyright
|
||||
" notice is copied with it. Like anything else that's free,
|
||||
" netrwFileHandlers.vim is provided *as is* and comes with no
|
||||
" warranty of any kind, either expressed or implied. In no
|
||||
" event will the copyright holder be liable for any damages
|
||||
" resulting from the use of this software.
|
||||
"
|
||||
" Rom 6:23 (WEB) For the wages of sin is death, but the free gift of God {{{1
|
||||
" is eternal life in Christ Jesus our Lord.
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" Load Once: {{{1
|
||||
if exists("g:loaded_netrwFileHandlers") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_netrwFileHandlers= "v11"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of netrwFileHandlers needs vim 7.2"
|
||||
echohl Normal
|
||||
finish
|
||||
endif
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" netrwFileHandlers#Invoke: {{{1
|
||||
fun! netrwFileHandlers#Invoke(exten,fname)
|
||||
" call Dfunc("netrwFileHandlers#Invoke(exten<".a:exten."> fname<".a:fname.">)")
|
||||
let exten= a:exten
|
||||
" list of supported special characters. Consider rcs,v --- that can be
|
||||
" supported with a NFH_rcsCOMMAv() handler
|
||||
if exten =~ '[@:,$!=\-+%?;~]'
|
||||
let specials= {
|
||||
\ '@' : 'AT',
|
||||
\ ':' : 'COLON',
|
||||
\ ',' : 'COMMA',
|
||||
\ '$' : 'DOLLAR',
|
||||
\ '!' : 'EXCLAMATION',
|
||||
\ '=' : 'EQUAL',
|
||||
\ '-' : 'MINUS',
|
||||
\ '+' : 'PLUS',
|
||||
\ '%' : 'PERCENT',
|
||||
\ '?' : 'QUESTION',
|
||||
\ ';' : 'SEMICOLON',
|
||||
\ '~' : 'TILDE'}
|
||||
let exten= substitute(a:exten,'[@:,$!=\-+%?;~]','\=specials[submatch(0)]','ge')
|
||||
" call Decho('fname<'.fname.'> done with dictionary')
|
||||
endif
|
||||
|
||||
if a:exten != "" && exists("*NFH_".exten)
|
||||
" support user NFH_*() functions
|
||||
" call Decho("let ret= netrwFileHandlers#NFH_".a:exten.'("'.fname.'")')
|
||||
exe "let ret= NFH_".exten.'("'.a:fname.'")'
|
||||
elseif a:exten != "" && exists("*s:NFH_".exten)
|
||||
" use builtin-NFH_*() functions
|
||||
" call Decho("let ret= netrwFileHandlers#NFH_".a:exten.'("'.fname.'")')
|
||||
exe "let ret= s:NFH_".a:exten.'("'.a:fname.'")'
|
||||
endif
|
||||
|
||||
" call Dret("netrwFileHandlers#Invoke 0 : ret=".ret)
|
||||
return 0
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_html: handles html when the user hits "x" when the {{{1
|
||||
" cursor is atop a *.html file
|
||||
fun! s:NFH_html(pagefile)
|
||||
" call Dfunc("s:NFH_html(".a:pagefile.")")
|
||||
|
||||
let page= substitute(a:pagefile,'^','file://','')
|
||||
|
||||
if executable("mozilla")
|
||||
" call Decho("executing !mozilla ".page)
|
||||
exe "!mozilla ".shellescape(page,1)
|
||||
elseif executable("netscape")
|
||||
" call Decho("executing !netscape ".page)
|
||||
exe "!netscape ".shellescape(page,1)
|
||||
else
|
||||
" call Dret("s:NFH_html 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_html 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_htm: handles html when the user hits "x" when the {{{1
|
||||
" cursor is atop a *.htm file
|
||||
fun! s:NFH_htm(pagefile)
|
||||
" call Dfunc("s:NFH_htm(".a:pagefile.")")
|
||||
|
||||
let page= substitute(a:pagefile,'^','file://','')
|
||||
|
||||
if executable("mozilla")
|
||||
" call Decho("executing !mozilla ".page)
|
||||
exe "!mozilla ".shellescape(page,1)
|
||||
elseif executable("netscape")
|
||||
" call Decho("executing !netscape ".page)
|
||||
exe "!netscape ".shellescape(page,1)
|
||||
else
|
||||
" call Dret("s:NFH_htm 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_htm 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_jpg: {{{1
|
||||
fun! s:NFH_jpg(jpgfile)
|
||||
" call Dfunc("s:NFH_jpg(jpgfile<".a:jpgfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".shellescape(a:jpgfile,1)
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
" call Decho("silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".escape(a:jpgfile," []|'"))
|
||||
exe "!".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".shellescape(a:jpgfile,1)
|
||||
else
|
||||
" call Dret("s:NFH_jpg 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_jpg 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_gif: {{{1
|
||||
fun! s:NFH_gif(giffile)
|
||||
" call Dfunc("s:NFH_gif(giffile<".a:giffile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".shellescape(a:giffile,1)
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".shellescape(a:giffile,1)
|
||||
else
|
||||
" call Dret("s:NFH_gif 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_gif 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_png: {{{1
|
||||
fun! s:NFH_png(pngfile)
|
||||
" call Dfunc("s:NFH_png(pngfile<".a:pngfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".shellescape(a:pngfile,1)
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".shellescape(a:pngfile,1)
|
||||
else
|
||||
" call Dret("s:NFH_png 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_png 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_pnm: {{{1
|
||||
fun! s:NFH_pnm(pnmfile)
|
||||
" call Dfunc("s:NFH_pnm(pnmfile<".a:pnmfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".shellescape(a:pnmfile,1)
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".shellescape(a:pnmfile,1)
|
||||
else
|
||||
" call Dret("s:NFH_pnm 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_pnm 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_bmp: visualize bmp files {{{1
|
||||
fun! s:NFH_bmp(bmpfile)
|
||||
" call Dfunc("s:NFH_bmp(bmpfile<".a:bmpfile.">)")
|
||||
|
||||
if executable("gimp")
|
||||
exe "silent! !gimp -s ".a:bmpfile
|
||||
elseif executable(expand("$SystemRoot")."/SYSTEM32/MSPAINT.EXE")
|
||||
exe "silent! !".expand("$SystemRoot")."/SYSTEM32/MSPAINT ".shellescape(a:bmpfile,1)
|
||||
else
|
||||
" call Dret("s:NFH_bmp 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_bmp 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_pdf: visualize pdf files {{{1
|
||||
fun! s:NFH_pdf(pdf)
|
||||
" call Dfunc("s:NFH_pdf(pdf<".a:pdf.">)")
|
||||
if executable("gs")
|
||||
exe 'silent! !gs '.shellescape(a:pdf,1)
|
||||
elseif executable("pdftotext")
|
||||
exe 'silent! pdftotext -nopgbrk '.shellescape(a:pdf,1)
|
||||
else
|
||||
" call Dret("s:NFH_pdf 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_pdf 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_doc: visualize doc files {{{1
|
||||
fun! s:NFH_doc(doc)
|
||||
" call Dfunc("s:NFH_doc(doc<".a:doc.">)")
|
||||
|
||||
if executable("oowriter")
|
||||
exe 'silent! !oowriter '.shellescape(a:doc,1)
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_doc 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_doc 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_sxw: visualize sxw files {{{1
|
||||
fun! s:NFH_sxw(sxw)
|
||||
" call Dfunc("s:NFH_sxw(sxw<".a:sxw.">)")
|
||||
|
||||
if executable("oowriter")
|
||||
exe 'silent! !oowriter '.shellescape(a:sxw,1)
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_sxw 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_sxw 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_xls: visualize xls files {{{1
|
||||
fun! s:NFH_xls(xls)
|
||||
" call Dfunc("s:NFH_xls(xls<".a:xls.">)")
|
||||
|
||||
if executable("oocalc")
|
||||
exe 'silent! !oocalc '.shellescape(a:xls,1)
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_xls 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_xls 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_ps: handles PostScript files {{{1
|
||||
fun! s:NFH_ps(ps)
|
||||
" call Dfunc("s:NFH_ps(ps<".a:ps.">)")
|
||||
if executable("gs")
|
||||
" call Decho("exe silent! !gs ".a:ps)
|
||||
exe "silent! !gs ".shellescape(a:ps,1)
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
" call Decho("exe silent! !ghostscript ".a:ps)
|
||||
exe "silent! !ghostscript ".shellescape(a:ps,1)
|
||||
redraw!
|
||||
elseif executable("gswin32")
|
||||
" call Decho("exe silent! !gswin32 ".shellescape(a:ps,1))
|
||||
exe "silent! !gswin32 ".shellescape(a:ps,1)
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_ps 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_ps 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_eps: handles encapsulated PostScript files {{{1
|
||||
fun! s:NFH_eps(eps)
|
||||
" call Dfunc("s:NFH_eps()")
|
||||
if executable("gs")
|
||||
exe "silent! !gs ".shellescape(a:eps,1)
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".shellescape(a:eps,1)
|
||||
redraw!
|
||||
elseif executable("ghostscript")
|
||||
exe "silent! !ghostscript ".shellescape(a:eps,1)
|
||||
redraw!
|
||||
elseif executable("gswin32")
|
||||
exe "silent! !gswin32 ".shellescape(a:eps,1)
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_eps 0")
|
||||
return 0
|
||||
endif
|
||||
" call Dret("s:NFH_eps 0")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_fig: handles xfig files {{{1
|
||||
fun! s:NFH_fig(fig)
|
||||
" call Dfunc("s:NFH_fig()")
|
||||
if executable("xfig")
|
||||
exe "silent! !xfig ".a:fig
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_fig 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_fig 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
" ---------------------------------------------------------------------
|
||||
" s:NFH_obj: handles tgif's obj files {{{1
|
||||
fun! s:NFH_obj(obj)
|
||||
" call Dfunc("s:NFH_obj()")
|
||||
if has("unix") && executable("tgif")
|
||||
exe "silent! !tgif ".a:obj
|
||||
redraw!
|
||||
else
|
||||
" call Dret("s:NFH_obj 0")
|
||||
return 0
|
||||
endif
|
||||
|
||||
" call Dret("s:NFH_obj 1")
|
||||
return 1
|
||||
endfun
|
||||
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
" ---------------------------------------------------------------------
|
||||
" Modelines: {{{1
|
||||
" vim: fdm=marker
|
||||
@@ -1,6 +1,6 @@
|
||||
" Maintainer: D. Ben Knoble <ben.knoble+github@gmail.com>
|
||||
" URL: https://github.com/benknoble/vim-racket
|
||||
" Last Change: 2023 Sep 22
|
||||
" Last Change: 2024 Nov 12
|
||||
vim9script
|
||||
|
||||
def MakePatternFromLiterals(xs: list<string>): string
|
||||
@@ -170,7 +170,7 @@ def PosLT(left: dict<any>, right: dict<any>): bool
|
||||
enddef
|
||||
|
||||
def IsForFold(word: string): bool
|
||||
return ['for/fold', 'for/foldr', 'for*/fold', 'for*/foldr']->index(word) >= 0
|
||||
return ['for/fold', 'for/foldr', 'for/lists', 'for*/fold', 'for*/foldr', 'for*/lists']->index(word) >= 0
|
||||
enddef
|
||||
|
||||
def IsSecondForm(blnum: number, bcol: number, vlnum: number): bool
|
||||
@@ -209,5 +209,5 @@ def IsSecondForm(blnum: number, bcol: number, vlnum: number): bool
|
||||
endwhile
|
||||
|
||||
# assert_report(printf('forms seen pre-return: %d', forms_seen))
|
||||
return forms_seen == 2 || (forms_seen == 1 && !empty(stack))
|
||||
return (forms_seen == 2 && empty(stack)) || (forms_seen == 1 && !empty(stack))
|
||||
enddef
|
||||
|
||||
352
runtime/autoload/spotbugs.vim
Normal file
352
runtime/autoload/spotbugs.vim
Normal file
@@ -0,0 +1,352 @@
|
||||
" Default pre- and post-compiler actions and commands for SpotBugs
|
||||
" Maintainers: @konfekt and @zzzyxwvut
|
||||
" Last Change: 2024 Dec 08
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Look for the setting of "g:spotbugs#state" in "ftplugin/java.vim".
|
||||
let s:state = get(g:, 'spotbugs#state', {})
|
||||
let s:commands = get(s:state, 'commands', {})
|
||||
let s:compiler = get(s:state, 'compiler', '')
|
||||
let s:readable = filereadable($VIMRUNTIME . '/compiler/' . s:compiler . '.vim')
|
||||
|
||||
if has_key(s:commands, 'DefaultPreCompilerCommand')
|
||||
let g:SpotBugsPreCompilerCommand = s:commands.DefaultPreCompilerCommand
|
||||
else
|
||||
|
||||
function! s:DefaultPreCompilerCommand(arguments) abort
|
||||
execute 'make ' . a:arguments
|
||||
cc
|
||||
endfunction
|
||||
|
||||
let g:SpotBugsPreCompilerCommand = function('s:DefaultPreCompilerCommand')
|
||||
endif
|
||||
|
||||
if has_key(s:commands, 'DefaultPreCompilerTestCommand')
|
||||
let g:SpotBugsPreCompilerTestCommand = s:commands.DefaultPreCompilerTestCommand
|
||||
else
|
||||
|
||||
function! s:DefaultPreCompilerTestCommand(arguments) abort
|
||||
execute 'make ' . a:arguments
|
||||
cc
|
||||
endfunction
|
||||
|
||||
let g:SpotBugsPreCompilerTestCommand = function('s:DefaultPreCompilerTestCommand')
|
||||
endif
|
||||
|
||||
if has_key(s:commands, 'DefaultPostCompilerCommand')
|
||||
let g:SpotBugsPostCompilerCommand = s:commands.DefaultPostCompilerCommand
|
||||
else
|
||||
|
||||
function! s:DefaultPostCompilerCommand(arguments) abort
|
||||
execute 'make ' . a:arguments
|
||||
endfunction
|
||||
|
||||
let g:SpotBugsPostCompilerCommand = function('s:DefaultPostCompilerCommand')
|
||||
endif
|
||||
|
||||
if v:version > 900
|
||||
|
||||
function! spotbugs#DeleteClassFiles() abort
|
||||
if !exists('b:spotbugs_class_files')
|
||||
return
|
||||
endif
|
||||
|
||||
for pathname in b:spotbugs_class_files
|
||||
let classname = pathname =~# "^'.\\+\\.class'$"
|
||||
\ ? eval(pathname)
|
||||
\ : pathname
|
||||
|
||||
if classname =~# '\.class$' && filereadable(classname)
|
||||
" Since v9.0.0795.
|
||||
let octad = readblob(classname, 0, 8)
|
||||
|
||||
" Test the magic number and the major version number (45 for v1.0).
|
||||
" Since v9.0.2027.
|
||||
if len(octad) == 8 && octad[0 : 3] == 0zcafe.babe &&
|
||||
\ or((octad[6] << 8), octad[7]) >= 45
|
||||
echomsg printf('Deleting %s: %d', classname, delete(classname))
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
|
||||
let b:spotbugs_class_files = []
|
||||
endfunction
|
||||
|
||||
else
|
||||
|
||||
function! s:DeleteClassFilesWithNewLineCodes(classname) abort
|
||||
" The distribution of "0a"s in class file versions 2560 and 2570:
|
||||
"
|
||||
" 0zca.fe.ba.be.00.00.0a.00 0zca.fe.ba.be.00.00.0a.0a
|
||||
" 0zca.fe.ba.be.00.0a.0a.00 0zca.fe.ba.be.00.0a.0a.0a
|
||||
" 0zca.fe.ba.be.0a.00.0a.00 0zca.fe.ba.be.0a.00.0a.0a
|
||||
" 0zca.fe.ba.be.0a.0a.0a.00 0zca.fe.ba.be.0a.0a.0a.0a
|
||||
let numbers = [0, 0, 0, 0, 0, 0, 0, 0]
|
||||
let offset = 0
|
||||
let lines = readfile(a:classname, 'b', 4)
|
||||
|
||||
" Track NL byte counts to handle files of less than 8 bytes.
|
||||
let nl_cnt = len(lines)
|
||||
" Track non-NL byte counts for "0zca.fe.ba.be.0a.0a.0a.0a".
|
||||
let non_nl_cnt = 0
|
||||
|
||||
for line in lines
|
||||
for idx in range(strlen(line))
|
||||
" Remap NLs to Nuls.
|
||||
let numbers[offset] = (line[idx] == "\n") ? 0 : char2nr(line[idx]) % 256
|
||||
let non_nl_cnt += 1
|
||||
let offset += 1
|
||||
|
||||
if offset > 7
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
|
||||
let nl_cnt -= 1
|
||||
|
||||
if offset > 7 || (nl_cnt < 1 && non_nl_cnt > 4)
|
||||
break
|
||||
endif
|
||||
|
||||
" Reclaim NLs.
|
||||
let numbers[offset] = 10
|
||||
let offset += 1
|
||||
|
||||
if offset > 7
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
|
||||
" Test the magic number and the major version number (45 for v1.0).
|
||||
if offset > 7 && numbers[0] == 0xca && numbers[1] == 0xfe &&
|
||||
\ numbers[2] == 0xba && numbers[3] == 0xbe &&
|
||||
\ (numbers[6] * 256 + numbers[7]) >= 45
|
||||
echomsg printf('Deleting %s: %d', a:classname, delete(a:classname))
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DeleteClassFiles() abort
|
||||
if !exists('b:spotbugs_class_files')
|
||||
return
|
||||
endif
|
||||
|
||||
let encoding = &encoding
|
||||
|
||||
try
|
||||
set encoding=latin1
|
||||
|
||||
for pathname in b:spotbugs_class_files
|
||||
let classname = pathname =~# "^'.\\+\\.class'$"
|
||||
\ ? eval(pathname)
|
||||
\ : pathname
|
||||
|
||||
if classname =~# '\.class$' && filereadable(classname)
|
||||
let line = get(readfile(classname, 'b', 1), 0, '')
|
||||
let length = strlen(line)
|
||||
|
||||
" Test the magic number and the major version number (45 for v1.0).
|
||||
if length > 3 && line[0 : 3] == "\xca\xfe\xba\xbe"
|
||||
if length > 7 && ((line[6] == "\n" ? 0 : char2nr(line[6]) % 256) * 256 +
|
||||
\ (line[7] == "\n" ? 0 : char2nr(line[7]) % 256)) >= 45
|
||||
echomsg printf('Deleting %s: %d', classname, delete(classname))
|
||||
else
|
||||
call s:DeleteClassFilesWithNewLineCodes(classname)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
finally
|
||||
let &encoding = encoding
|
||||
endtry
|
||||
|
||||
let b:spotbugs_class_files = []
|
||||
endfunction
|
||||
|
||||
endif
|
||||
|
||||
function! spotbugs#DefaultPostCompilerAction() abort
|
||||
" Since v7.4.191.
|
||||
call call(g:SpotBugsPostCompilerCommand, ['%:S'])
|
||||
endfunction
|
||||
|
||||
if s:readable && s:compiler ==# 'maven' && executable('mvn')
|
||||
|
||||
function! spotbugs#DefaultPreCompilerAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler maven
|
||||
call call(g:SpotBugsPreCompilerCommand, ['compile'])
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultPreCompilerTestAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler maven
|
||||
call call(g:SpotBugsPreCompilerTestCommand, ['test-compile'])
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultProperties() abort
|
||||
return {
|
||||
\ 'PreCompilerAction':
|
||||
\ function('spotbugs#DefaultPreCompilerAction'),
|
||||
\ 'PreCompilerTestAction':
|
||||
\ function('spotbugs#DefaultPreCompilerTestAction'),
|
||||
\ 'PostCompilerAction':
|
||||
\ function('spotbugs#DefaultPostCompilerAction'),
|
||||
\ 'sourceDirPath': ['src/main/java'],
|
||||
\ 'classDirPath': ['target/classes'],
|
||||
\ 'testSourceDirPath': ['src/test/java'],
|
||||
\ 'testClassDirPath': ['target/test-classes'],
|
||||
\ }
|
||||
endfunction
|
||||
|
||||
unlet s:readable s:compiler
|
||||
elseif s:readable && s:compiler ==# 'ant' && executable('ant')
|
||||
|
||||
function! spotbugs#DefaultPreCompilerAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler ant
|
||||
call call(g:SpotBugsPreCompilerCommand, ['compile'])
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultPreCompilerTestAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler ant
|
||||
call call(g:SpotBugsPreCompilerTestCommand, ['compile-test'])
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultProperties() abort
|
||||
return {
|
||||
\ 'PreCompilerAction':
|
||||
\ function('spotbugs#DefaultPreCompilerAction'),
|
||||
\ 'PreCompilerTestAction':
|
||||
\ function('spotbugs#DefaultPreCompilerTestAction'),
|
||||
\ 'PostCompilerAction':
|
||||
\ function('spotbugs#DefaultPostCompilerAction'),
|
||||
\ 'sourceDirPath': ['src'],
|
||||
\ 'classDirPath': ['build/classes'],
|
||||
\ 'testSourceDirPath': ['test'],
|
||||
\ 'testClassDirPath': ['build/test/classes'],
|
||||
\ }
|
||||
endfunction
|
||||
|
||||
unlet s:readable s:compiler
|
||||
elseif s:readable && s:compiler ==# 'javac' && executable('javac')
|
||||
let s:filename = tempname()
|
||||
|
||||
function! spotbugs#DefaultPreCompilerAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler javac
|
||||
|
||||
if get(b:, 'javac_makeprg_params', get(g:, 'javac_makeprg_params', '')) =~ '\s@\S'
|
||||
" Only read options and filenames from @options [@sources ...] and do
|
||||
" not update these files when filelists change.
|
||||
call call(g:SpotBugsPreCompilerCommand, [''])
|
||||
else
|
||||
" Collect filenames so that Javac can figure out what to compile.
|
||||
let filelist = []
|
||||
|
||||
for arg_num in range(argc(-1))
|
||||
let arg_name = argv(arg_num)
|
||||
|
||||
if arg_name =~# '\.java\=$'
|
||||
call add(filelist, fnamemodify(arg_name, ':p:S'))
|
||||
endif
|
||||
endfor
|
||||
|
||||
for buf_num in range(1, bufnr('$'))
|
||||
if !buflisted(buf_num)
|
||||
continue
|
||||
endif
|
||||
|
||||
let buf_name = bufname(buf_num)
|
||||
|
||||
if buf_name =~# '\.java\=$'
|
||||
let buf_name = fnamemodify(buf_name, ':p:S')
|
||||
|
||||
if index(filelist, buf_name) < 0
|
||||
call add(filelist, buf_name)
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
|
||||
noautocmd call writefile(filelist, s:filename)
|
||||
call call(g:SpotBugsPreCompilerCommand, [shellescape('@' . s:filename)])
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultPreCompilerTestAction() abort
|
||||
call spotbugs#DefaultPreCompilerAction()
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultProperties() abort
|
||||
return {
|
||||
\ 'PreCompilerAction':
|
||||
\ function('spotbugs#DefaultPreCompilerAction'),
|
||||
\ 'PostCompilerAction':
|
||||
\ function('spotbugs#DefaultPostCompilerAction'),
|
||||
\ }
|
||||
endfunction
|
||||
|
||||
unlet s:readable s:compiler g:SpotBugsPreCompilerTestCommand
|
||||
delfunction! s:DefaultPreCompilerTestCommand
|
||||
else
|
||||
|
||||
function! spotbugs#DefaultPreCompilerAction() abort
|
||||
echomsg printf('Not supported: "%s"', s:compiler)
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultPreCompilerTestAction() abort
|
||||
call spotbugs#DefaultPreCompilerAction()
|
||||
endfunction
|
||||
|
||||
function! spotbugs#DefaultProperties() abort
|
||||
return {}
|
||||
endfunction
|
||||
|
||||
" XXX: Keep "s:compiler" around for "spotbugs#DefaultPreCompilerAction()",
|
||||
" "s:DefaultPostCompilerCommand" -- "spotbugs#DefaultPostCompilerAction()".
|
||||
unlet s:readable g:SpotBugsPreCompilerCommand g:SpotBugsPreCompilerTestCommand
|
||||
delfunction! s:DefaultPreCompilerCommand
|
||||
delfunction! s:DefaultPreCompilerTestCommand
|
||||
endif
|
||||
|
||||
function! s:DefineBufferAutocmd(event, ...) abort
|
||||
if !exists('#java_spotbugs#User')
|
||||
return 1
|
||||
endif
|
||||
|
||||
for l:event in insert(copy(a:000), a:event)
|
||||
if l:event != 'User'
|
||||
execute printf('silent! autocmd! java_spotbugs %s <buffer>', l:event)
|
||||
execute printf('autocmd java_spotbugs %s <buffer> doautocmd User', l:event)
|
||||
endif
|
||||
endfor
|
||||
|
||||
return 0
|
||||
endfunction
|
||||
|
||||
function! s:RemoveBufferAutocmd(event, ...) abort
|
||||
if !exists('#java_spotbugs')
|
||||
return 1
|
||||
endif
|
||||
|
||||
for l:event in insert(copy(a:000), a:event)
|
||||
if l:event != 'User'
|
||||
execute printf('silent! autocmd! java_spotbugs %s <buffer>', l:event)
|
||||
endif
|
||||
endfor
|
||||
|
||||
return 0
|
||||
endfunction
|
||||
|
||||
" Documented in ":help compiler-spotbugs".
|
||||
command! -bar -nargs=+ -complete=event SpotBugsDefineBufferAutocmd
|
||||
\ call s:DefineBufferAutocmd(<f-args>)
|
||||
command! -bar -nargs=+ -complete=event SpotBugsRemoveBufferAutocmd
|
||||
\ call s:RemoveBufferAutocmd(<f-args>)
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:commands s:state s:save_cpo
|
||||
|
||||
" vim: set foldmethod=syntax shiftwidth=2 expandtab:
|
||||
@@ -1,6 +1,6 @@
|
||||
" tar.vim: Handles browsing tarfiles
|
||||
" AUTOLOAD PORTION
|
||||
" Date: Nov 14, 2023
|
||||
" Date: Nov 11, 2024
|
||||
" Version: 32b (with modifications from the Vim Project)
|
||||
" Maintainer: This runtime file is looking for a new maintainer.
|
||||
" Former Maintainer: Charles E Campbell
|
||||
@@ -23,7 +23,7 @@
|
||||
if &cp || exists("g:loaded_tar")
|
||||
finish
|
||||
endif
|
||||
let g:loaded_tar= "v32a"
|
||||
let g:loaded_tar= "v32b"
|
||||
if v:version < 702
|
||||
echohl WarningMsg
|
||||
echo "***warning*** this version of tar needs vim 7.2"
|
||||
@@ -41,7 +41,7 @@ if !exists("g:tar_browseoptions")
|
||||
let g:tar_browseoptions= "Ptf"
|
||||
endif
|
||||
if !exists("g:tar_readoptions")
|
||||
let g:tar_readoptions= "OPxf"
|
||||
let g:tar_readoptions= "pPxf"
|
||||
endif
|
||||
if !exists("g:tar_cmd")
|
||||
let g:tar_cmd= "tar"
|
||||
@@ -80,7 +80,7 @@ if !exists("g:tar_copycmd")
|
||||
let g:tar_copycmd= g:netrw_localcopycmd
|
||||
endif
|
||||
if !exists("g:tar_extractcmd")
|
||||
let g:tar_extractcmd= "tar -xf"
|
||||
let g:tar_extractcmd= "tar -pxf"
|
||||
endif
|
||||
|
||||
" set up shell quoting character
|
||||
@@ -294,6 +294,41 @@ fun! tar#Read(fname,mode)
|
||||
set report=10
|
||||
let tarfile = substitute(a:fname,'tarfile:\(.\{-}\)::.*$','\1','')
|
||||
let fname = substitute(a:fname,'tarfile:.\{-}::\(.*\)$','\1','')
|
||||
|
||||
" changing the directory to the temporary earlier to allow tar to extract the file with permissions intact
|
||||
if !exists("*mkdir")
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, mkdir() doesn't work on your system" | echohl None
|
||||
let &report= repkeep
|
||||
return
|
||||
endif
|
||||
|
||||
let curdir= getcwd()
|
||||
let tmpdir= tempname()
|
||||
let b:curdir= tmpdir
|
||||
let b:tmpdir= curdir
|
||||
if tmpdir =~ '\.'
|
||||
let tmpdir= substitute(tmpdir,'\.[^.]*$','','e')
|
||||
endif
|
||||
call mkdir(tmpdir,"p")
|
||||
|
||||
" attempt to change to the indicated directory
|
||||
try
|
||||
exe "cd ".fnameescape(tmpdir)
|
||||
catch /^Vim\%((\a\+)\)\=:E344/
|
||||
redraw!
|
||||
echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
|
||||
let &report= repkeep
|
||||
return
|
||||
endtry
|
||||
|
||||
" place temporary files under .../_ZIPVIM_/
|
||||
if isdirectory("_ZIPVIM_")
|
||||
call s:Rmdir("_ZIPVIM_")
|
||||
endif
|
||||
call mkdir("_ZIPVIM_")
|
||||
cd _ZIPVIM_
|
||||
|
||||
if has("win32unix") && executable("cygpath")
|
||||
" assuming cygwin
|
||||
let tarfile=substitute(system("cygpath -u ".shellescape(tarfile,0)),'\n$','','e')
|
||||
@@ -332,9 +367,10 @@ fun! tar#Read(fname,mode)
|
||||
|
||||
if tarfile =~# '\.bz2$'
|
||||
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
elseif tarfile =~# '\.\(gz\)$'
|
||||
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
|
||||
exe "read ".fname
|
||||
elseif tarfile =~# '\(\.tgz\|\.tbz\|\.txz\)'
|
||||
if has("unix") && executable("file")
|
||||
let filekind= system("file ".shellescape(tarfile,1))
|
||||
@@ -343,20 +379,27 @@ fun! tar#Read(fname,mode)
|
||||
endif
|
||||
if filekind =~ "bzip2"
|
||||
exe "sil! r! bzip2 -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
elseif filekind =~ "XZ"
|
||||
exe "sil! r! xz -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
elseif filekind =~ "Zstandard"
|
||||
exe "sil! r! zstd --decompress --stdout -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
else
|
||||
exe "sil! r! gzip -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
endif
|
||||
|
||||
elseif tarfile =~# '\.lrp$'
|
||||
exe "sil! r! cat -- ".shellescape(tarfile,1)." | gzip -d -c - | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
elseif tarfile =~# '\.lzma$'
|
||||
exe "sil! r! lzma -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
elseif tarfile =~# '\.\(xz\|txz\)$'
|
||||
exe "sil! r! xz --decompress --stdout -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
else
|
||||
if tarfile =~ '^\s*-'
|
||||
" A file name starting with a dash is taken as an option. Prepend ./ to avoid that.
|
||||
@@ -364,6 +407,16 @@ fun! tar#Read(fname,mode)
|
||||
endif
|
||||
" call Decho("8: exe silent r! ".g:tar_cmd." -".g:tar_readoptions.tar_secure.shellescape(tarfile,1)." ".shellescape(fname,1).decmp)
|
||||
exe "silent r! ".g:tar_cmd." -".g:tar_readoptions.shellescape(tarfile,1)." ".tar_secure.shellescape(fname,1).decmp
|
||||
exe "read ".fname
|
||||
endif
|
||||
|
||||
redraw!
|
||||
|
||||
if v:shell_error != 0
|
||||
cd ..
|
||||
call s:Rmdir("_ZIPVIM_")
|
||||
exe "cd ".fnameescape(curdir)
|
||||
echohl Error | echo "***error*** (tar#Read) sorry, unable to open or extract ".tarfile." with ".fname | echohl None
|
||||
endif
|
||||
|
||||
if doro
|
||||
@@ -388,6 +441,10 @@ fun! tar#Write(fname)
|
||||
" call Dfunc("tar#Write(fname<".a:fname.">) b:tarfile<".b:tarfile."> tblfile_".winnr()."<".s:tblfile_{winnr()}.">")
|
||||
let repkeep= &report
|
||||
set report=10
|
||||
|
||||
" temporary buffer variable workaround because too fucking tired. but it works now
|
||||
let curdir= b:curdir
|
||||
let tmpdir= b:tmpdir
|
||||
|
||||
if !exists("g:tar_secure") && a:fname =~ '^\s*-\|\s\+-'
|
||||
redraw!
|
||||
@@ -404,44 +461,6 @@ fun! tar#Write(fname)
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endif
|
||||
if !exists("*mkdir")
|
||||
redraw!
|
||||
" call Decho("***error*** (tar#Write) sorry, mkdir() doesn't work on your system")
|
||||
echohl Error | echo "***error*** (tar#Write) sorry, mkdir() doesn't work on your system" | echohl None
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endif
|
||||
|
||||
let curdir= getcwd()
|
||||
let tmpdir= tempname()
|
||||
" call Decho("orig tempname<".tmpdir.">")
|
||||
if tmpdir =~ '\.'
|
||||
let tmpdir= substitute(tmpdir,'\.[^.]*$','','e')
|
||||
endif
|
||||
" call Decho("tmpdir<".tmpdir.">")
|
||||
call mkdir(tmpdir,"p")
|
||||
|
||||
" attempt to change to the indicated directory
|
||||
try
|
||||
exe "cd ".fnameescape(tmpdir)
|
||||
catch /^Vim\%((\a\+)\)\=:E344/
|
||||
redraw!
|
||||
" call Decho("***error*** (tar#Write) cannot cd to temporary directory")
|
||||
echohl Error | echo "***error*** (tar#Write) cannot cd to temporary directory" | Echohl None
|
||||
let &report= repkeep
|
||||
" call Dret("tar#Write")
|
||||
return
|
||||
endtry
|
||||
" call Decho("current directory now: ".getcwd())
|
||||
|
||||
" place temporary files under .../_ZIPVIM_/
|
||||
if isdirectory("_ZIPVIM_")
|
||||
call s:Rmdir("_ZIPVIM_")
|
||||
endif
|
||||
call mkdir("_ZIPVIM_")
|
||||
cd _ZIPVIM_
|
||||
" call Decho("current directory now: ".getcwd())
|
||||
|
||||
let tarfile = substitute(b:tarfile,'tarfile:\(.\{-}\)::.*$','\1','')
|
||||
let fname = substitute(b:tarfile,'tarfile:.\{-}::\(.*\)$','\1','')
|
||||
|
||||
219
runtime/autoload/tutor.vim
Normal file
219
runtime/autoload/tutor.vim
Normal file
@@ -0,0 +1,219 @@
|
||||
" vim: fdm=marker et ts=4 sw=4
|
||||
|
||||
" Setup: {{{1
|
||||
function! tutor#SetupVim()
|
||||
if !exists('g:did_load_ftplugin') || g:did_load_ftplugin != 1
|
||||
filetype plugin on
|
||||
endif
|
||||
if has('syntax')
|
||||
if !exists('g:syntax_on') || g:syntax_on == 0
|
||||
syntax on
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Loads metadata file, if available
|
||||
function! tutor#LoadMetadata()
|
||||
let b:tutor_metadata = json_decode(join(readfile(expand('%').'.json'), "\n"))
|
||||
endfunction
|
||||
|
||||
" Mappings: {{{1
|
||||
|
||||
function! tutor#SetNormalMappings()
|
||||
nnoremap <silent> <buffer> <CR> :call tutor#FollowLink(0)<cr>
|
||||
nnoremap <silent> <buffer> <2-LeftMouse> :call tutor#MouseDoubleClick()<cr>
|
||||
nnoremap <buffer> >> :call tutor#InjectCommand()<cr>
|
||||
endfunction
|
||||
|
||||
function! tutor#MouseDoubleClick()
|
||||
if foldclosed(line('.')) > -1
|
||||
normal! zo
|
||||
else
|
||||
if match(getline('.'), '^#\{1,} ') > -1
|
||||
silent normal! zc
|
||||
else
|
||||
call tutor#FollowLink(0)
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! tutor#InjectCommand()
|
||||
let l:cmd = substitute(getline('.'), '^\s*', '', '')
|
||||
exe l:cmd
|
||||
redraw | echohl WarningMsg | echon "tutor: ran" | echohl None | echon " " | echohl Statement | echon l:cmd
|
||||
endfunction
|
||||
|
||||
function! tutor#FollowLink(force)
|
||||
let l:stack_s = join(map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")'), '')
|
||||
if l:stack_s =~# 'tutorLink'
|
||||
let l:link_start = searchpairpos('\[', '', ')', 'nbcW')
|
||||
let l:link_end = searchpairpos('\[', '', ')', 'ncW')
|
||||
if l:link_start[0] == l:link_end[0]
|
||||
let l:linkData = getline(l:link_start[0])[l:link_start[1]-1:l:link_end[1]-1]
|
||||
else
|
||||
return
|
||||
endif
|
||||
let l:target = matchstr(l:linkData, '(\@<=.*)\@=')
|
||||
if a:force != 1 && match(l:target, '\*.\+\*') > -1
|
||||
call cursor(l:link_start[0], l:link_end[1])
|
||||
call search(l:target, '')
|
||||
normal! ^
|
||||
elseif a:force != 1 && match(l:target, '^@tutor:') > -1
|
||||
let l:tutor = matchstr(l:target, '@tutor:\zs.*')
|
||||
exe "Tutor ".l:tutor
|
||||
else
|
||||
exe "help ".l:target
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Folding And Info: {{{1
|
||||
|
||||
function! tutor#TutorFolds()
|
||||
if getline(v:lnum) =~# '^#\{1,6}'
|
||||
return ">". len(matchstr(getline(v:lnum), '^#\{1,6}'))
|
||||
else
|
||||
return "="
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Marks: {{{1
|
||||
|
||||
function! tutor#ApplyMarks()
|
||||
hi! link tutorExpect Special
|
||||
if exists('b:tutor_metadata') && has_key(b:tutor_metadata, 'expect')
|
||||
let b:tutor_sign_id = 1
|
||||
for expct in keys(b:tutor_metadata['expect'])
|
||||
let lnum = eval(expct)
|
||||
call matchaddpos('tutorExpect', [lnum])
|
||||
call tutor#CheckLine(lnum)
|
||||
endfor
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! tutor#ApplyMarksOnChanged()
|
||||
if exists('b:tutor_metadata') && has_key(b:tutor_metadata, 'expect')
|
||||
let lnum = line('.')
|
||||
if index(keys(b:tutor_metadata['expect']), string(lnum)) > -1
|
||||
call tutor#CheckLine(lnum)
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! tutor#CheckLine(line)
|
||||
if exists('b:tutor_metadata') && has_key(b:tutor_metadata, 'expect')
|
||||
let bufn = bufnr('%')
|
||||
let ctext = getline(a:line)
|
||||
if b:tutor_metadata['expect'][string(a:line)] == -1 || ctext ==# b:tutor_metadata['expect'][string(a:line)]
|
||||
exe "sign place ".b:tutor_sign_id." line=".a:line." name=tutorok buffer=".bufn
|
||||
else
|
||||
exe "sign place ".b:tutor_sign_id." line=".a:line." name=tutorbad buffer=".bufn
|
||||
endif
|
||||
let b:tutor_sign_id+=1
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Tutor Cmd: {{{1
|
||||
|
||||
function! s:Locale()
|
||||
if exists('v:lang') && v:lang =~ '\a\a'
|
||||
let l:lang = v:lang
|
||||
elseif $LC_ALL =~ '\a\a'
|
||||
let l:lang = $LC_ALL
|
||||
elseif $LANG =~ '\a\a'
|
||||
let l:lang = $LANG
|
||||
else
|
||||
let l:lang = 'en_US'
|
||||
endif
|
||||
return split(l:lang, '_')
|
||||
endfunction
|
||||
|
||||
function! s:GlobPath(lp, pat)
|
||||
if version >= 704 && has('patch279')
|
||||
return globpath(a:lp, a:pat, 1, 1)
|
||||
else
|
||||
return split(globpath(a:lp, a:pat, 1), '\n')
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:Sort(a, b)
|
||||
let mod_a = fnamemodify(a:a, ':t')
|
||||
let mod_b = fnamemodify(a:b, ':t')
|
||||
if mod_a == mod_b
|
||||
let retval = 0
|
||||
elseif mod_a > mod_b
|
||||
if match(mod_a, '^vim-') > -1 && match(mod_b, '^vim-') == -1
|
||||
let retval = -1
|
||||
else
|
||||
let retval = 1
|
||||
endif
|
||||
else
|
||||
if match(mod_b, '^vim-') > -1 && match(mod_a, '^vim-') == -1
|
||||
let retval = 1
|
||||
else
|
||||
let retval = -1
|
||||
endif
|
||||
endif
|
||||
return retval
|
||||
endfunction
|
||||
|
||||
function! s:GlobTutorials(name)
|
||||
" search for tutorials:
|
||||
" 1. non-localized
|
||||
let l:tutors = s:GlobPath(&rtp, 'tutor/'.a:name.'.tutor')
|
||||
" 2. localized for current locale
|
||||
let l:locale_tutors = s:GlobPath(&rtp, 'tutor/'.s:Locale()[0].'/'.a:name.'.tutor')
|
||||
" 3. fallback to 'en'
|
||||
if len(l:locale_tutors) == 0
|
||||
let l:locale_tutors = s:GlobPath(&rtp, 'tutor/en/'.a:name.'.tutor')
|
||||
endif
|
||||
call extend(l:tutors, l:locale_tutors)
|
||||
return uniq(sort(l:tutors, 's:Sort'), 's:Sort')
|
||||
endfunction
|
||||
|
||||
function! tutor#TutorCmd(tutor_name)
|
||||
if match(a:tutor_name, '[[:space:]]') > 0
|
||||
echom "Only one argument accepted (check spaces)"
|
||||
return
|
||||
endif
|
||||
|
||||
if a:tutor_name == ''
|
||||
let l:tutor_name = 'vim-01-beginner.tutor'
|
||||
else
|
||||
let l:tutor_name = a:tutor_name
|
||||
endif
|
||||
|
||||
if match(l:tutor_name, '\.tutor$') > 0
|
||||
let l:tutor_name = fnamemodify(l:tutor_name, ':r')
|
||||
endif
|
||||
|
||||
let l:tutors = s:GlobTutorials(l:tutor_name)
|
||||
|
||||
if len(l:tutors) == 0
|
||||
echom "No tutorial with that name found"
|
||||
return
|
||||
endif
|
||||
|
||||
if len(l:tutors) == 1
|
||||
let l:to_open = l:tutors[0]
|
||||
else
|
||||
let l:idx = 0
|
||||
let l:candidates = ['Several tutorials with that name found. Select one:']
|
||||
for candidate in map(copy(l:tutors),
|
||||
\'fnamemodify(v:val, ":h:h:t")."/".s:Locale()[0]."/".fnamemodify(v:val, ":t")')
|
||||
let l:idx += 1
|
||||
call add(l:candidates, l:idx.'. '.candidate)
|
||||
endfor
|
||||
let l:tutor_to_open = inputlist(l:candidates)
|
||||
let l:to_open = l:tutors[l:tutor_to_open-1]
|
||||
endif
|
||||
|
||||
call tutor#SetupVim()
|
||||
exe "edit ".l:to_open
|
||||
endfunction
|
||||
|
||||
function! tutor#TutorCmdComplete(lead,line,pos)
|
||||
let l:tutors = s:GlobTutorials('*')
|
||||
let l:names = uniq(sort(map(l:tutors, 'fnamemodify(v:val, ":t:r")'), 's:Sort'))
|
||||
return join(l:names, "\n")
|
||||
endfunction
|
||||
@@ -1,6 +1,7 @@
|
||||
" Language: Typst
|
||||
" Maintainer: Gregory Anders
|
||||
" Last Change: 2024-07-14
|
||||
" Previous Maintainer: Gregory Anders
|
||||
" Maintainer: Luca Saccarola <github.e41mv@aleeas.com>
|
||||
" Last Change: 2024 Dec 09
|
||||
" Based on: https://github.com/kaarmu/typst.vim
|
||||
|
||||
function! typst#indentexpr() abort
|
||||
@@ -18,6 +19,9 @@ function! typst#indentexpr() abort
|
||||
" Use last indent for block comments
|
||||
if l:synname == 'typstCommentBlock'
|
||||
return l:ind
|
||||
" do not change the indents of bullet lists
|
||||
elseif l:synname == 'typstMarkupBulletList'
|
||||
return indent(a:lnum)
|
||||
endif
|
||||
|
||||
if l:pline =~ '\v[{[(]\s*$'
|
||||
@@ -31,6 +35,31 @@ function! typst#indentexpr() abort
|
||||
return l:ind
|
||||
endfunction
|
||||
|
||||
function typst#foldexpr()
|
||||
let line = getline(v:lnum)
|
||||
|
||||
" Whenever the user wants to fold nested headers under the parent
|
||||
let nested = get(g:, "typst_foldnested", 1)
|
||||
|
||||
" Regular headers
|
||||
let depth = match(line, '\(^=\+\)\@<=\( .*$\)\@=')
|
||||
|
||||
" Do not fold nested regular headers
|
||||
if depth > 1 && !nested
|
||||
let depth = 1
|
||||
endif
|
||||
|
||||
if depth > 0
|
||||
" check syntax, it should be typstMarkupHeading
|
||||
let syncode = synstack(v:lnum, 1)
|
||||
if len(syncode) > 0 && synIDattr(syncode[0], 'name') ==# 'typstMarkupHeading'
|
||||
return ">" . depth
|
||||
endif
|
||||
endif
|
||||
|
||||
return "="
|
||||
endfunction
|
||||
|
||||
" Gets the previous non-blank line that is not a comment.
|
||||
function! s:get_prev_nonblank(lnum) abort
|
||||
let l:lnum = prevnonblank(a:lnum)
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
" vim compiler file
|
||||
" Compiler: cppcheck (C++ static checker)
|
||||
" Maintainer: Vincent B. (twinside@free.fr)
|
||||
" Last Change: 2024 Oct 4 by @Konfekt
|
||||
" Last Change: 2024 Nov 19 by @Konfekt
|
||||
|
||||
if exists("cppcheck")
|
||||
finish
|
||||
endif
|
||||
if exists("current_compiler") | finish | endif
|
||||
let current_compiler = "cppcheck"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
set cpo&vim
|
||||
|
||||
let s:slash = has('win32')? '\' : '/'
|
||||
|
||||
if !exists('g:c_cppcheck_params')
|
||||
let g:c_cppcheck_params = '--verbose --force --inline-suppr'
|
||||
@@ -20,12 +20,12 @@ endif
|
||||
|
||||
let &l:makeprg = 'cppcheck --quiet'
|
||||
\ ..' --template="{file}:{line}:{column}: {severity}: [{id}] {message} {callstack}"'
|
||||
\ ..' '..get(b:, 'c_cppcheck_params',
|
||||
\ g:c_cppcheck_params..' '..(&filetype ==# 'cpp' ? ' --language=c++' : ''))
|
||||
\ ..' '..get(b:, 'c_cppcheck_params', get(g:, 'c_cppcheck_params', (&filetype ==# 'cpp' ? ' --language=c++' : '')))
|
||||
\ ..' '..get(b:, 'c_cppcheck_includes', get(g:, 'c_cppcheck_includes',
|
||||
\ (filereadable('compile_commands.json') ? '--project=compile_commands.json' :
|
||||
\ (empty(&path) ? '' : '-I')..join(map(filter(split(&path, ','), 'isdirectory(v:val)'),'shellescape(v:val)'), ' -I'))))
|
||||
silent CompilerSet makeprg
|
||||
\ (!empty(glob('*'..s:slash..'compile_commands.json', 1, 1)) ? '--project='..glob('*'..s:slash..'compile_commands.json', 1, 1)[0] :
|
||||
\ (empty(&path) ? '' : '-I')..join(map(filter(split(&path, ','), 'isdirectory(v:val)'),'shellescape(v:val)'), ' -I')))))
|
||||
exe 'CompilerSet makeprg='..escape(&l:makeprg, ' \|"')
|
||||
|
||||
CompilerSet errorformat=
|
||||
\%f:%l:%c:\ %tarning:\ %m,
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
" Vim compiler file
|
||||
" Compiler: ESLint for JavaScript
|
||||
" Maintainer: Romain Lafourcade <romainlafourcade@gmail.com>
|
||||
" Last Change: 2020 August 20
|
||||
" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition)
|
||||
" Last Change: 2024 Nov 30
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "eslint"
|
||||
|
||||
CompilerSet makeprg=npx\ eslint\ --format\ compact
|
||||
CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m,%-G%.%#
|
||||
CompilerSet makeprg=npx\ eslint\ --format\ stylish
|
||||
CompilerSet errorformat=%-P%f,\%\\s%#%l:%c\ %#\ %trror\ \ %m,\%\\s%#%l:%c\ %#\ %tarning\ \ %m,\%-Q,\%-G%.%#,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Groff
|
||||
" Maintainer: Konfekt
|
||||
" Last Change: 2024 Sep 8
|
||||
" Last Change: 2024 Nov 19
|
||||
"
|
||||
" Expects output file extension, say `:make html` or `:make pdf`.
|
||||
" Supported devices as of Sept 2024 are: (x)html, pdf, ps, dvi, lj4, lbp ...
|
||||
@@ -30,7 +30,7 @@ execute 'CompilerSet makeprg=groff'..escape(
|
||||
\ ' '..s:groff_compiler_lang()..
|
||||
\ ' -K'..get(b:, 'groff_compiler_encoding', get(g:, 'groff_compiler_encoding', 'utf8'))..
|
||||
\ ' '..get(b:, 'groff_compiler_args', get(g:, 'groff_compiler_args', ''))..
|
||||
\ ' -mom -T$* -- %:S > %:r:S.$*', ' ')
|
||||
\ ' -mom -T$* -- %:S > %:r:S.$*', ' \|"')
|
||||
" From Gavin Freeborn's https://github.com/Gavinok/vim-troff under Vim License
|
||||
" https://github.com/Gavinok/vim-troff/blob/91017b1423caa80aba541c997909a4f810edd275/compiler/troff.vim#L39
|
||||
CompilerSet errorformat=%o:<standard\ input>\ (%f):%l:%m,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Java Development Kit Compiler
|
||||
" Maintainer: Doug Kearns <dougkearns@gmail.com>
|
||||
" Last Change: 2024 Jun 14
|
||||
" Last Change: 2024 Nov 19 (enable local javac_makeprg_params)
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -11,11 +11,7 @@ let current_compiler = "javac"
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
if exists("g:javac_makeprg_params")
|
||||
execute $'CompilerSet makeprg=javac\ {escape(g:javac_makeprg_params, ' \|"')}'
|
||||
else
|
||||
CompilerSet makeprg=javac
|
||||
endif
|
||||
execute $'CompilerSet makeprg=javac\ {escape(get(b:, 'javac_makeprg_params', get(g:, 'javac_makeprg_params', '')), ' \|"')}'
|
||||
|
||||
CompilerSet errorformat=%E%f:%l:\ error:\ %m,
|
||||
\%W%f:%l:\ warning:\ %m,
|
||||
|
||||
40
runtime/compiler/maven.vim
Normal file
40
runtime/compiler/maven.vim
Normal file
@@ -0,0 +1,40 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Maven
|
||||
" Maintainer: D. Ben Knoble <ben.knoble+vim@gmail.com>
|
||||
" Maintainer: Konfekt
|
||||
" Original Source: https://github.com/JalaiAmitahl/maven-compiler.vim/blob/master/compiler/mvn.vim
|
||||
" (Copyright Dan Taylor, distributed under the same terms as LICENSE)
|
||||
" Original Source: https://github.com/mikelue/vim-maven-plugin/blob/master/compiler/maven.vim
|
||||
" (distributed under same terms as LICENSE per
|
||||
" https://github.com/mikelue/vim-maven-plugin/issues/13)
|
||||
" Last Change: 2024 Nov 12
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
let current_compiler = "maven"
|
||||
|
||||
execute $'CompilerSet makeprg=mvn\ --batch-mode\ {escape(get(b:, 'maven_makeprg_params', get(g:, 'maven_makeprg_params', '')), ' \|"')}'
|
||||
|
||||
" Error message for POM
|
||||
CompilerSet errorformat=[FATAL]\ Non-parseable\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#,
|
||||
CompilerSet errorformat+=[%tRROR]\ Malformed\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#
|
||||
|
||||
" Java related build messages
|
||||
CompilerSet errorformat+=[%tARNING]\ %f:[%l\\,%c]\ %m
|
||||
CompilerSet errorformat+=[%tRROR]\ %f:[%l\\,%c]\ %m
|
||||
CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:[%l\\,%c]\ %m,%Z
|
||||
CompilerSet errorformat+=%A%f:[%l\\,%c]\ %m,%Z
|
||||
|
||||
" jUnit related build messages
|
||||
CompilerSet errorformat+=%+E\ \ %#test%m,%Z
|
||||
CompilerSet errorformat+=%+E[ERROR]\ Please\ refer\ to\ %f\ for\ the\ individual\ test\ results.
|
||||
" Message from JUnit 5(5.3.X), TestNG(6.14.X), JMockit(1.43), and AssertJ(3.11.X)
|
||||
CompilerSet errorformat+=%+E%>[ERROR]\ %.%\\+Time\ elapsed:%.%\\+<<<\ FAILURE!,
|
||||
CompilerSet errorformat+=%+E%>[ERROR]\ %.%\\+Time\ elapsed:%.%\\+<<<\ ERROR!,
|
||||
CompilerSet errorformat+=%+Z%\\s%#at\ %f(%\\f%\\+:%l),
|
||||
CompilerSet errorformat+=%+C%.%#
|
||||
|
||||
" Misc message removal
|
||||
CompilerSet errorformat+=%-G[INFO]\ %.%#,
|
||||
CompilerSet errorformat+=%-G[debug]\ %.%#
|
||||
19
runtime/compiler/mypy.vim
Normal file
19
runtime/compiler/mypy.vim
Normal file
@@ -0,0 +1,19 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Mypy (Python static checker)
|
||||
" Maintainer: @Konfekt
|
||||
" Last Change: 2024 Nov 19
|
||||
|
||||
if exists("current_compiler") | finish | endif
|
||||
let current_compiler = "mypy"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" CompilerSet makeprg=mypy
|
||||
let &l:makeprg = 'mypy --show-column-numbers '
|
||||
\ ..get(b:, 'mypy_makeprg_params', get(g:, 'mypy_makeprg_params', '--strict --ignore-missing-imports'))
|
||||
exe 'CompilerSet makeprg='..escape(&l:makeprg, ' \|"')
|
||||
CompilerSet errorformat=%f:%l:%c:\ %t%*[^:]:\ %m
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Pandoc
|
||||
" Maintainer: Konfekt
|
||||
" Last Change: 2024 Sep 8
|
||||
" Last Change: 2024 Nov 19
|
||||
"
|
||||
" Expects output file extension, say `:make html` or `:make pdf`.
|
||||
" Passes additional arguments to pandoc, say `:make html --self-contained`.
|
||||
@@ -56,7 +56,7 @@ execute 'CompilerSet makeprg=pandoc'..escape(
|
||||
\ ' '..s:PandocLang()..
|
||||
\ ' --from='..s:PandocFiletype(&filetype)..
|
||||
\ ' '..get(b:, 'pandoc_compiler_args', get(g:, 'pandoc_compiler_args', ''))..
|
||||
\ ' --output %:r:S.$* -- %:S', ' ')
|
||||
\ ' --output %:r:S.$* -- %:S', ' \|"')
|
||||
CompilerSet errorformat=\"%f\",\ line\ %l:\ %m
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
|
||||
@@ -3,8 +3,9 @@
|
||||
" URL: https://github.com/PProvost/vim-ps1
|
||||
" Contributors: Enno Nagel
|
||||
" Last Change: 2024 Mar 29
|
||||
" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition)
|
||||
" 2024 Apr 05 by The Vim Project (avoid leaving behind g:makeprg)
|
||||
" 2024 Apr 03 by the Vim Project (removed :CompilerSet definition)
|
||||
" 2024 Apr 05 by the Vim Project (avoid leaving behind g:makeprg)
|
||||
" 2024 Nov 19 by the Vim Project (properly escape makeprg setting)
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -49,7 +50,7 @@ let s:makeprg = g:ps1_makeprg_cmd .. ' %:p:S'
|
||||
" + CategoryInfo : ObjectNotFound: (Write-Ouput:String) [], CommandNotFoundException
|
||||
" + FullyQualifiedErrorId : CommandNotFoundException
|
||||
|
||||
execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' ')
|
||||
execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' \|"')
|
||||
|
||||
" Showing error in context with underlining.
|
||||
CompilerSet errorformat=%+G+%m
|
||||
|
||||
@@ -1,13 +1,21 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Pylint for Python
|
||||
" Maintainer: Daniel Moch <daniel@danielmoch.com>
|
||||
" Last Change: 2016 May 20
|
||||
" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition)
|
||||
" Compiler: Pylint for Python
|
||||
" Maintainer: Daniel Moch <daniel@danielmoch.com>
|
||||
" Last Change: 2024 Nov 07 by The Vim Project (added params variable)
|
||||
" 2024 Nov 19 by the Vim Project (properly escape makeprg setting)
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
endif
|
||||
if exists("current_compiler") | finish | endif
|
||||
let current_compiler = "pylint"
|
||||
|
||||
CompilerSet makeprg=pylint\ --output-format=text\ --msg-template=\"{path}:{line}:{column}:{C}:\ [{symbol}]\ {msg}\"\ --reports=no
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" CompilerSet makeprg=ruff
|
||||
let &l:makeprg = 'pylint ' .
|
||||
\ '--output-format=text --msg-template="{path}:{line}:{column}:{C}: [{symbol}] {msg}" --reports=no ' .
|
||||
\ get(b:, "pylint_makeprg_params", get(g:, "pylint_makeprg_params", '--jobs=0'))
|
||||
exe 'CompilerSet makeprg='..escape(&l:makeprg, ' \|"')
|
||||
CompilerSet errorformat=%A%f:%l:%c:%t:\ %m,%A%f:%l:\ %m,%A%f:(%l):\ %m,%-Z%p^%.%#,%-G%.%#
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
103
runtime/compiler/pytest.vim
Normal file
103
runtime/compiler/pytest.vim
Normal file
@@ -0,0 +1,103 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Pytest (Python testing framework)
|
||||
" Maintainer: @Konfekt and @mgedmin
|
||||
" Last Change: 2024 Nov 28
|
||||
|
||||
if exists("current_compiler") | finish | endif
|
||||
let current_compiler = "pytest"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" CompilerSet makeprg=pytest
|
||||
if has('unix')
|
||||
execute $'CompilerSet makeprg=/usr/bin/env\ PYTHONWARNINGS=ignore\ pytest\ {escape(get(b:, 'pytest_makeprg_params', get(g:, 'pytest_makeprg_params', '--tb=short --quiet')), ' \|"')}'
|
||||
elseif has('win32')
|
||||
execute $'CompilerSet makeprg=set\ PYTHONWARNINGS=ignore\ &&\ pytest\ {escape(get(b:, 'pytest_makeprg_params', get(g:, 'pytest_makeprg_params', '--tb=short --quiet')), ' \|"')}'
|
||||
else
|
||||
CompilerSet makeprg=pytest\ --tb=short\ --quiet
|
||||
execute $'CompilerSet makeprg=pytest\ {escape(get(b:, 'pytest_makeprg_params', get(g:, 'pytest_makeprg_params', '--tb=short --quiet')), ' \|"')}'
|
||||
endif
|
||||
|
||||
" Pytest syntax errors {{{2
|
||||
|
||||
" Reset error format so that sourcing .vimrc again and again doesn't grow it
|
||||
" without bounds
|
||||
setlocal errorformat&
|
||||
|
||||
" For the record, the default errorformat is this:
|
||||
"
|
||||
" %*[^"]"%f"%*\D%l: %m
|
||||
" "%f"%*\D%l: %m
|
||||
" %-G%f:%l: (Each undeclared identifier is reported only once
|
||||
" %-G%f:%l: for each function it appears in.)
|
||||
" %-GIn file included from %f:%l:%c:
|
||||
" %-GIn file included from %f:%l:%c\,
|
||||
" %-GIn file included from %f:%l:%c
|
||||
" %-GIn file included from %f:%l
|
||||
" %-G%*[ ]from %f:%l:%c
|
||||
" %-G%*[ ]from %f:%l:
|
||||
" %-G%*[ ]from %f:%l\,
|
||||
" %-G%*[ ]from %f:%l
|
||||
" %f:%l:%c:%m
|
||||
" %f(%l):%m
|
||||
" %f:%l:%m
|
||||
" "%f"\, line %l%*\D%c%*[^ ] %m
|
||||
" %D%*\a[%*\d]: Entering directory %*[`']%f'
|
||||
" %X%*\a[%*\d]: Leaving directory %*[`']%f'
|
||||
" %D%*\a: Entering directory %*[`']%f'
|
||||
" %X%*\a: Leaving directory %*[`']%f'
|
||||
" %DMaking %*\a in %f
|
||||
" %f|%l| %m
|
||||
"
|
||||
" and sometimes it misfires, so let's fix it up a bit
|
||||
" (TBH I don't even know what compiler produces filename(lineno) so why even
|
||||
" have it?)
|
||||
setlocal errorformat-=%f(%l):%m
|
||||
|
||||
" Sometimes Vim gets confused about ISO-8601 timestamps and thinks they're
|
||||
" filenames; this is a big hammer that ignores anything filename-like on lines
|
||||
" that start with at least two spaces, possibly preceded by a number and
|
||||
" optional punctuation
|
||||
setlocal errorformat^=%+G%\\d%#%.%\\=\ \ %.%#
|
||||
|
||||
" Similar, but when the entire line starts with a date
|
||||
setlocal errorformat^=%+G\\d\\d\\d\\d-\\d\\d-\\d\\d\ \\d\\d:\\d\\d%.%#
|
||||
|
||||
" make: *** [Makefile:14: target] Error 1
|
||||
setlocal errorformat^=%+Gmake:\ ***\ %.%#
|
||||
|
||||
" FAILED tests.py::test_with_params[YYYY-MM-DD:HH:MM:SS] - Exception: bla bla
|
||||
setlocal errorformat^=%+GFAILED\ %.%#
|
||||
|
||||
" AssertionError: assert ...YYYY-MM-DD:HH:MM:SS...
|
||||
setlocal errorformat^=%+GAssertionError:\ %.%#
|
||||
|
||||
" --- /path/to/file:before YYYY-MM-DD HH:MM:SS.ssssss
|
||||
setlocal errorformat^=---%f:%m
|
||||
|
||||
" +++ /path/to/file:before YYYY-MM-DD HH:MM:SS.ssssss
|
||||
setlocal errorformat^=+++%f:%m
|
||||
|
||||
" Sometimes pytest prepends an 'E' marker at the beginning of a traceback line
|
||||
setlocal errorformat+=E\ %#File\ \"%f\"\\,\ line\ %l%.%#
|
||||
|
||||
" Python tracebacks (unittest + doctest output) {{{2
|
||||
|
||||
" This collapses the entire traceback into just the last file+lineno,
|
||||
" which is convenient when you want to jump to the line that failed (and not
|
||||
" the top-level entry point), but it makes it impossible to see the full
|
||||
" traceback, which sucks.
|
||||
""setlocal errorformat+=
|
||||
"" \File\ \"%f\"\\,\ line\ %l%.%#,
|
||||
"" \%C\ %.%#,
|
||||
"" \%-A\ \ File\ \"unittest%.py\"\\,\ line\ %.%#,
|
||||
"" \%-A\ \ File\ \"%f\"\\,\ line\ 0%.%#,
|
||||
"" \%A\ \ File\ \"%f\"\\,\ line\ %l%.%#,
|
||||
"" \%Z%[%^\ ]%\\@=%m
|
||||
setlocal errorformat+=File\ \"%f\"\\,\ line\ %l\\,%#%m
|
||||
|
||||
exe 'CompilerSet errorformat='..escape(&l:errorformat, ' \|"')
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
20
runtime/compiler/ruff.vim
Normal file
20
runtime/compiler/ruff.vim
Normal file
@@ -0,0 +1,20 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Ruff (Python linter)
|
||||
" Maintainer: @pbnj-dragon
|
||||
" Last Change: 2024 Nov 07
|
||||
" 2024 Nov 19 by the Vim Project (properly escape makeprg setting)
|
||||
|
||||
if exists("current_compiler") | finish | endif
|
||||
let current_compiler = "ruff"
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" CompilerSet makeprg=ruff
|
||||
let &l:makeprg= 'ruff check --output-format=concise '
|
||||
\ ..get(b:, 'ruff_makeprg_params', get(g:, 'ruff_makeprg_params', '--preview'))
|
||||
exe 'CompilerSet makeprg='..escape(&l:makeprg, ' \|"')
|
||||
CompilerSet errorformat=%f:%l:%c:\ %m,%f:%l:\ %m,%f:%l:%c\ -\ %m,%f:
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
254
runtime/compiler/spotbugs.vim
Normal file
254
runtime/compiler/spotbugs.vim
Normal file
@@ -0,0 +1,254 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Spotbugs (Java static checker; needs javac compiled classes)
|
||||
" Maintainer: @konfekt and @zzzyxwvut
|
||||
" Last Change: 2024 Dec 14
|
||||
|
||||
if exists('g:current_compiler') || bufname() !~# '\.java\=$' || wordcount().chars < 9
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Unfortunately Spotbugs does not output absolute paths, so you need to
|
||||
" pass the directory of the files being checked as `-sourcepath` parameter.
|
||||
" The regex, auxpath and glob try to include all dependent classes of the
|
||||
" current buffer. See https://github.com/spotbugs/spotbugs/issues/856
|
||||
|
||||
" FIXME: When "search()" is used with the "e" flag, it makes no _further_
|
||||
" progress after claiming an EOL match (i.e. "\_" or "\n", but not "$").
|
||||
" XXX: Omit anonymous class declarations
|
||||
let s:keywords = '\C\<\%(\.\@1<!class\|@\=interface\|enum\|record\|package\)\%(\s\|$\)'
|
||||
let s:type_names = '\C\<\%(\.\@1<!class\|@\=interface\|enum\|record\)\s*\(\K\k*\)\>'
|
||||
" Capture ";" for counting a class file directory (see s:package_dir_heads below)
|
||||
let s:package_names = '\C\<package\s*\(\K\%(\k*\.\=\)\+;\)'
|
||||
let s:package = ''
|
||||
|
||||
if has('syntax') && exists('g:syntax_on') &&
|
||||
\ exists('b:current_syntax') && b:current_syntax == 'java' &&
|
||||
\ hlexists('javaClassDecl') && hlexists('javaExternal')
|
||||
|
||||
function! s:GetDeclaredTypeNames() abort
|
||||
if bufname() =~# '\<\%(module\|package\)-info\.java\=$'
|
||||
return [expand('%:t:r')]
|
||||
endif
|
||||
defer execute('silent! normal! g``')
|
||||
call cursor(1, 1)
|
||||
let type_names = []
|
||||
let lnum = search(s:keywords, 'eW')
|
||||
while lnum > 0
|
||||
let name_attr = synIDattr(synID(lnum, (col('.') - 1), 0), 'name')
|
||||
if name_attr ==# 'javaClassDecl'
|
||||
let tokens = matchlist(getline(lnum)..getline(lnum + 1), s:type_names)
|
||||
if !empty(tokens) | call add(type_names, tokens[1]) | endif
|
||||
elseif name_attr ==# 'javaExternal'
|
||||
let tokens = matchlist(getline(lnum)..getline(lnum + 1), s:package_names)
|
||||
if !empty(tokens) | let s:package = tokens[1] | endif
|
||||
endif
|
||||
let lnum = search(s:keywords, 'eW')
|
||||
endwhile
|
||||
return type_names
|
||||
endfunction
|
||||
|
||||
else
|
||||
function! s:GetDeclaredTypeNames() abort
|
||||
if bufname() =~# '\<\%(module\|package\)-info\.java\=$'
|
||||
return [expand('%:t:r')]
|
||||
endif
|
||||
" Undo the unsetting of &hls, see below
|
||||
if &hls
|
||||
defer execute('set hls')
|
||||
endif
|
||||
" Possibly restore the current values for registers '"' and "y", see below
|
||||
defer call('setreg', ['"', getreg('"'), getregtype('"')])
|
||||
defer call('setreg', ['y', getreg('y'), getregtype('y')])
|
||||
defer execute('silent bwipeout')
|
||||
" Copy buffer contents for modification
|
||||
silent %y y
|
||||
new
|
||||
" Apply ":help scratch-buffer" effects and match "$" in Java (generated)
|
||||
" type names (see s:type_names)
|
||||
setlocal iskeyword+=$ buftype=nofile bufhidden=hide noswapfile nohls
|
||||
0put y
|
||||
" Discard text blocks and strings
|
||||
silent keeppatterns %s/\\\@<!"""\_.\{-}\\\@<!"""\|\\"//ge
|
||||
silent keeppatterns %s/".*"//ge
|
||||
" Discard comments
|
||||
silent keeppatterns %s/\/\/.\+$//ge
|
||||
silent keeppatterns %s/\/\*\_.\{-}\*\///ge
|
||||
call cursor(1, 1)
|
||||
let type_names = []
|
||||
let lnum = search(s:keywords, 'eW')
|
||||
while lnum > 0
|
||||
let line = getline(lnum)
|
||||
if line =~# '\<package\>'
|
||||
let tokens = matchlist(line..getline(lnum + 1), s:package_names)
|
||||
if !empty(tokens) | let s:package = tokens[1] | endif
|
||||
else
|
||||
let tokens = matchlist(line..getline(lnum + 1), s:type_names)
|
||||
if !empty(tokens) | call add(type_names, tokens[1]) | endif
|
||||
endif
|
||||
let lnum = search(s:keywords, 'eW')
|
||||
endwhile
|
||||
return type_names
|
||||
endfunction
|
||||
endif
|
||||
|
||||
if has('win32')
|
||||
|
||||
function! s:GlobClassFiles(src_type_name) abort
|
||||
return glob(a:src_type_name..'$*.class', 1, 1)
|
||||
endfunction
|
||||
|
||||
else
|
||||
function! s:GlobClassFiles(src_type_name) abort
|
||||
return glob(a:src_type_name..'\$*.class', 1, 1)
|
||||
endfunction
|
||||
endif
|
||||
|
||||
if exists('b:spotbugs_properties')
|
||||
" Let "ftplugin/java.vim" merge global entries, if any, in buffer-local
|
||||
" entries
|
||||
|
||||
function! s:GetProperty(name, default) abort
|
||||
return get(b:spotbugs_properties, a:name, a:default)
|
||||
endfunction
|
||||
|
||||
elseif exists('g:spotbugs_properties')
|
||||
|
||||
function! s:GetProperty(name, default) abort
|
||||
return get(g:spotbugs_properties, a:name, a:default)
|
||||
endfunction
|
||||
|
||||
else
|
||||
function! s:GetProperty(dummy, default) abort
|
||||
return a:default
|
||||
endfunction
|
||||
endif
|
||||
|
||||
if (exists('g:spotbugs_properties') || exists('b:spotbugs_properties')) &&
|
||||
\ ((!empty(s:GetProperty('sourceDirPath', [])) &&
|
||||
\ !empty(s:GetProperty('classDirPath', []))) ||
|
||||
\ (!empty(s:GetProperty('testSourceDirPath', [])) &&
|
||||
\ !empty(s:GetProperty('testClassDirPath', []))))
|
||||
|
||||
function! s:CommonIdxsAndDirs() abort
|
||||
let src_dir_path = s:GetProperty('sourceDirPath', [])
|
||||
let bin_dir_path = s:GetProperty('classDirPath', [])
|
||||
let test_src_dir_path = s:GetProperty('testSourceDirPath', [])
|
||||
let test_bin_dir_path = s:GetProperty('testClassDirPath', [])
|
||||
let dir_cnt = min([len(src_dir_path), len(bin_dir_path)])
|
||||
let test_dir_cnt = min([len(test_src_dir_path), len(test_bin_dir_path)])
|
||||
" Do not break up path pairs with filtering!
|
||||
return [[range(dir_cnt),
|
||||
\ src_dir_path[0 : dir_cnt - 1],
|
||||
\ bin_dir_path[0 : dir_cnt - 1]],
|
||||
\ [range(test_dir_cnt),
|
||||
\ test_src_dir_path[0 : test_dir_cnt - 1],
|
||||
\ test_bin_dir_path[0 : test_dir_cnt - 1]]]
|
||||
endfunction
|
||||
|
||||
let s:common_idxs_and_dirs = s:CommonIdxsAndDirs()
|
||||
delfunction s:CommonIdxsAndDirs
|
||||
|
||||
function! s:FindClassFiles(src_type_name) abort
|
||||
let class_files = []
|
||||
" Match pairwise the components of source and class pathnames
|
||||
for [idxs, src_dirs, bin_dirs] in s:common_idxs_and_dirs
|
||||
" Do not use "fnamemodify(a:src_type_name, ':p:s?src?bin?')" because
|
||||
" only the rightmost "src" is looked for
|
||||
for idx in idxs
|
||||
let tail_idx = strridx(a:src_type_name, src_dirs[idx])
|
||||
" No such directory or no such inner type (i.e. without "$")
|
||||
if tail_idx < 0 | continue | endif
|
||||
" Substitute "bin_dirs[idx]" for the rightmost "src_dirs[idx]"
|
||||
let candidate_type_name = strpart(a:src_type_name, 0, tail_idx)..
|
||||
\ bin_dirs[idx]..
|
||||
\ strpart(a:src_type_name, (tail_idx + strlen(src_dirs[idx])))
|
||||
for candidate in insert(s:GlobClassFiles(candidate_type_name),
|
||||
\ candidate_type_name..'.class')
|
||||
if filereadable(candidate) | call add(class_files, shellescape(candidate)) | endif
|
||||
endfor
|
||||
if !empty(class_files) | break | endif
|
||||
endfor
|
||||
if !empty(class_files) | break | endif
|
||||
endfor
|
||||
return class_files
|
||||
endfunction
|
||||
|
||||
else
|
||||
function! s:FindClassFiles(src_type_name) abort
|
||||
let class_files = []
|
||||
for candidate in insert(s:GlobClassFiles(a:src_type_name),
|
||||
\ a:src_type_name..'.class')
|
||||
if filereadable(candidate) | call add(class_files, shellescape(candidate)) | endif
|
||||
endfor
|
||||
return class_files
|
||||
endfunction
|
||||
endif
|
||||
|
||||
if exists('g:spotbugs_alternative_path') &&
|
||||
\ !empty(get(g:spotbugs_alternative_path, 'fromPath', '')) &&
|
||||
\ !empty(get(g:spotbugs_alternative_path, 'toPath', ''))
|
||||
|
||||
" See https://github.com/spotbugs/spotbugs/issues/909
|
||||
function! s:ResolveAbsolutePathname() abort
|
||||
let pathname = expand('%:p')
|
||||
let head_idx = stridx(pathname, g:spotbugs_alternative_path.toPath)
|
||||
" No such file: a mismatched path request for a project
|
||||
if head_idx < 0 | return pathname | endif
|
||||
" Settle for failure with file readability tests _in s:FindClassFiles()_
|
||||
return strpart(pathname, 0, head_idx)..
|
||||
\ g:spotbugs_alternative_path.fromPath..
|
||||
\ strpart(pathname, (head_idx + strlen(g:spotbugs_alternative_path.toPath)))
|
||||
endfunction
|
||||
|
||||
else
|
||||
function! s:ResolveAbsolutePathname() abort
|
||||
return expand('%:p')
|
||||
endfunction
|
||||
endif
|
||||
|
||||
function! s:CollectClassFiles() abort
|
||||
" Possibly obtain a symlinked path for an unsupported directory name
|
||||
let pathname = s:ResolveAbsolutePathname()
|
||||
" Get a platform-independent pathname prefix, cf. "expand('%:p:h')..'/'"
|
||||
let tail_idx = strridx(pathname, expand('%:t'))
|
||||
let src_pathname = strpart(pathname, 0, tail_idx)
|
||||
let all_class_files = []
|
||||
" Get all type names in the current buffer and let the filename globbing
|
||||
" discover inner type names from arbitrary type names
|
||||
for type_name in s:GetDeclaredTypeNames()
|
||||
call extend(all_class_files, s:FindClassFiles(src_pathname..type_name))
|
||||
endfor
|
||||
return all_class_files
|
||||
endfunction
|
||||
|
||||
" Expose class files for removal etc.
|
||||
let b:spotbugs_class_files = s:CollectClassFiles()
|
||||
let s:package_dir_heads = repeat(':h', (1 + strlen(substitute(s:package, '[^.;]', '', 'g'))))
|
||||
let s:package_root_dir = fnamemodify(s:ResolveAbsolutePathname(), s:package_dir_heads..':S')
|
||||
let g:current_compiler = 'spotbugs'
|
||||
" CompilerSet makeprg=spotbugs
|
||||
let &l:makeprg = 'spotbugs'..(has('win32') ? '.bat' : '')..' '..
|
||||
\ get(b:, 'spotbugs_makeprg_params', get(g:, 'spotbugs_makeprg_params', '-workHard -experimental'))..
|
||||
\ ' -textui -emacs -auxclasspath '..s:package_root_dir..' -sourcepath '..s:package_root_dir..' '..
|
||||
\ join(b:spotbugs_class_files, ' ')
|
||||
" Emacs expects doubled line numbers
|
||||
setlocal errorformat=%f:%l:%*[0-9]\ %m,%f:-%*[0-9]:-%*[0-9]\ %m
|
||||
|
||||
" " This compiler is meant to be used for a single buffer only
|
||||
" exe 'CompilerSet makeprg='..escape(&l:makeprg, ' \|"')
|
||||
" exe 'CompilerSet errorformat='..escape(&l:errorformat, ' \|"')
|
||||
|
||||
delfunction s:CollectClassFiles
|
||||
delfunction s:ResolveAbsolutePathname
|
||||
delfunction s:FindClassFiles
|
||||
delfunction s:GetProperty
|
||||
delfunction s:GlobClassFiles
|
||||
delfunction s:GetDeclaredTypeNames
|
||||
let &cpo = s:cpo_save
|
||||
unlet! s:package_root_dir s:package_dir_heads s:common_idxs_and_dirs s:package
|
||||
unlet! s:package_names s:type_names s:keywords s:cpo_save
|
||||
|
||||
" vim: set foldmethod=syntax shiftwidth=2 expandtab:
|
||||
@@ -3,8 +3,9 @@
|
||||
" Maintainer: Artem Chuprina <ran@ran.pp.ru>
|
||||
" Contributors: Enno Nagel
|
||||
" Last Change: 2024 Mar 29
|
||||
" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition)
|
||||
" 2024 Apr 05 by The Vim Project (avoid leaving behind g:makeprg)
|
||||
" 2024 Apr 03 by the Vim Project (removed :CompilerSet definition)
|
||||
" 2024 Apr 05 by the Vim Project (avoid leaving behind g:makeprg)
|
||||
" 2024 Nov 19 by the Vim Project (properly escape makeprg setting)
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -27,7 +28,7 @@ if exists('b:tex_ignore_makefile') || exists('g:tex_ignore_makefile') ||
|
||||
let current_compiler = "latex"
|
||||
endif
|
||||
let s:makeprg=current_compiler .. ' -interaction=nonstopmode'
|
||||
execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' ')
|
||||
execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' \|"')
|
||||
else
|
||||
let current_compiler = 'make'
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim compiler file
|
||||
" Language: Typst
|
||||
" Maintainer: Gregory Anders
|
||||
" Last Change: 2024-07-14
|
||||
" Previous Maintainer: Gregory Anders
|
||||
" Maintainer: Luca Saccarola <github.e41mv@aleeas.com>
|
||||
" Last Change: 2024 Dec 09
|
||||
" Based on: https://github.com/kaarmu/typst.vim
|
||||
|
||||
if exists('current_compiler')
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" The default vimrc file.
|
||||
"
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last change: 2023 Aug 10
|
||||
" Last Change: 2024 Dec 01
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
"
|
||||
" This is loaded if no vimrc file was found.
|
||||
@@ -33,13 +33,8 @@ silent! while 0
|
||||
set nocompatible
|
||||
silent! endwhile
|
||||
|
||||
" Allow backspacing over everything in insert mode.
|
||||
set backspace=indent,eol,start
|
||||
|
||||
set history=200 " keep 200 lines of command line history
|
||||
set ruler " show the cursor position all the time
|
||||
set showcmd " display incomplete commands
|
||||
set wildmenu " display completion matches in a status line
|
||||
|
||||
set ttimeout " time out for key codes
|
||||
set ttimeoutlen=100 " wait up to 100ms after Esc for special key
|
||||
@@ -107,14 +102,19 @@ if 1
|
||||
" (happens when dropping a file on gvim), for a commit or rebase message
|
||||
" (likely a different one than last time), and when using xxd(1) to filter
|
||||
" and edit binary files (it transforms input files back and forth, causing
|
||||
" them to have dual nature, so to speak)
|
||||
" them to have dual nature, so to speak) or when running the new tutor
|
||||
autocmd BufReadPost *
|
||||
\ let line = line("'\"")
|
||||
\ | if line >= 1 && line <= line("$") && &filetype !~# 'commit'
|
||||
\ && index(['xxd', 'gitrebase'], &filetype) == -1
|
||||
\ && index(['xxd', 'gitrebase', 'tutor'], &filetype) == -1
|
||||
\ | execute "normal! g`\""
|
||||
\ | endif
|
||||
|
||||
" Set the default background for putty to dark. Putty usually sets the
|
||||
" $TERM to xterm and by default it starts with a dark background which
|
||||
" makes syntax highlighting often hard to read with bg=light
|
||||
" undo this using: ":au! vimStartup TermResponse"
|
||||
autocmd TermResponse * if v:termresponse == "\e[>0;136;0c" | set bg=dark | endif
|
||||
augroup END
|
||||
|
||||
" Quite a few people accidentally type "q:" instead of ":q" and get confused
|
||||
|
||||
@@ -75,6 +75,7 @@ DOCS = \
|
||||
pi_paren.txt \
|
||||
pi_spec.txt \
|
||||
pi_tar.txt \
|
||||
pi_tutor.txt \
|
||||
pi_vimball.txt \
|
||||
pi_zip.txt \
|
||||
popup.txt \
|
||||
@@ -151,6 +152,7 @@ DOCS = \
|
||||
vim9.txt \
|
||||
vim9class.txt \
|
||||
visual.txt \
|
||||
vietnamese.txt \
|
||||
windows.txt \
|
||||
workshop.txt
|
||||
|
||||
@@ -228,6 +230,7 @@ HTMLS = \
|
||||
pi_paren.html \
|
||||
pi_spec.html \
|
||||
pi_tar.html \
|
||||
pi_tutor.html \
|
||||
pi_vimball.html \
|
||||
pi_zip.html \
|
||||
popup.html \
|
||||
@@ -301,6 +304,7 @@ HTMLS = \
|
||||
version8.html \
|
||||
version9.html \
|
||||
vi_diff.html \
|
||||
vietnamese.html \
|
||||
vimindex.html \
|
||||
vim9.html \
|
||||
vim9class.html \
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
# TODO: to think about what to use instead of awk. PowerShell?
|
||||
#AWK =
|
||||
|
||||
# Correct the following line for the where executeable file vim is installed.
|
||||
# Correct the following line for the where executable file vim is installed.
|
||||
# Please do not put the path in quotes.
|
||||
VIMPROG = D:\Programs\Vim\vim91\vim.exe
|
||||
|
||||
|
||||
@@ -93,7 +93,7 @@ test_urls:
|
||||
$(VIMPROG) --clean -S test_urls.vim
|
||||
|
||||
clean:
|
||||
-rm -f doctags *.html tags.ref
|
||||
-rm -f doctags *.html tags.ref tags-* vim-stylesheet.css
|
||||
|
||||
# These files are in the extra archive, skip if not present
|
||||
|
||||
@@ -151,6 +151,9 @@ os_risc.txt:
|
||||
os_win32.txt:
|
||||
touch $@
|
||||
|
||||
vietnamese.txt:
|
||||
touch $@
|
||||
|
||||
# In *BSD, the variable '$<' is used in suffix-transformation rules (in GNU this
|
||||
# is called "implicit rules", and in MS Windows it is called "inference rules").
|
||||
# For code portability, it is better to use the '$?' variable for explicit rules.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 9.1. Last change: 2024 Aug 18
|
||||
*autocmd.txt* For Vim version 9.1. Last change: 2024 Dec 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -702,6 +702,12 @@ CompleteDone After Insert mode completion is done. Either
|
||||
The |v:completed_item| variable contains
|
||||
information about the completed item.
|
||||
|
||||
Sets these |v:event| keys:
|
||||
complete_word The word that was
|
||||
selected, empty if
|
||||
abandoned complete.
|
||||
complete_type |complete_info_mode|
|
||||
|
||||
*CursorHold*
|
||||
CursorHold When the user doesn't press a key for the time
|
||||
specified with 'updatetime'. Not triggered
|
||||
@@ -1254,10 +1260,19 @@ TerminalWinOpen Just after a terminal buffer was created, with
|
||||
TermResponse After the response to |t_RV| is received from
|
||||
the terminal. The value of |v:termresponse|
|
||||
can be used to do things depending on the
|
||||
terminal version. Note that this event may be
|
||||
triggered halfway executing another event,
|
||||
especially if file I/O, a shell command or
|
||||
anything else that takes time is involved.
|
||||
terminal version.
|
||||
This is used in |defaults.vim| to detect
|
||||
putty terminal and set a dark background: >
|
||||
|
||||
au TermResponse *
|
||||
\ if v:termresponse == "\e[>0;136;0c"
|
||||
\ set bg=dark
|
||||
\ endif
|
||||
<
|
||||
Note: that this event may be triggered halfway
|
||||
executing another event, especially if file
|
||||
I/O, a shell command or anything else that
|
||||
takes time is involved.
|
||||
*TermResponseAll*
|
||||
TermResponseAll After the response to |t_RV|, |t_RC|, |t_RS|,
|
||||
|t_RB|, |t_RF|, or |t_u7| are received from
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*builtin.txt* For Vim version 9.1. Last change: 2024 Oct 12
|
||||
*builtin.txt* For Vim version 9.1. Last change: 2024 Dec 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -222,6 +222,7 @@ getbufline({buf}, {lnum} [, {end}])
|
||||
getbufoneline({buf}, {lnum}) String line {lnum} of buffer {buf}
|
||||
getbufvar({buf}, {varname} [, {def}])
|
||||
any variable {varname} in buffer {buf}
|
||||
getcellpixels() List get character cell pixel size
|
||||
getcellwidths() List get character cell width overrides
|
||||
getchangelist([{buf}]) List list of change list items
|
||||
getchar([{expr}]) Number or String
|
||||
@@ -467,9 +468,9 @@ prop_type_get({name} [, {props}])
|
||||
prop_type_list([{props}]) List get list of property types
|
||||
pum_getpos() Dict position and size of pum if visible
|
||||
pumvisible() Number whether popup menu is visible
|
||||
py3eval({expr}) any evaluate |python3| expression
|
||||
pyeval({expr}) any evaluate |Python| expression
|
||||
pyxeval({expr}) any evaluate |python_x| expression
|
||||
py3eval({expr} [, {locals}]) any evaluate |python3| expression
|
||||
pyeval({expr} [, {locals}]) any evaluate |Python| expression
|
||||
pyxeval({expr} [, {locals}]) any evaluate |python_x| expression
|
||||
rand([{expr}]) Number get pseudo-random number
|
||||
range({expr} [, {max} [, {stride}]])
|
||||
List items from {expr} to {max}
|
||||
@@ -1625,7 +1626,7 @@ charclass({string}) *charclass()*
|
||||
The character class is one of:
|
||||
0 blank
|
||||
1 punctuation
|
||||
2 word character
|
||||
2 word character (depends on 'iskeyword')
|
||||
3 emoji
|
||||
other specific Unicode class
|
||||
The class is used in patterns and word motions.
|
||||
@@ -3786,6 +3787,20 @@ getbufvar({buf}, {varname} [, {def}]) *getbufvar()*
|
||||
Return type: any, depending on {varname}
|
||||
|
||||
|
||||
getcellpixels() *getcellpixels()*
|
||||
Returns a |List| of terminal cell pixel size.
|
||||
List format is [xpixel, ypixel].
|
||||
|
||||
Only works on Unix (terminal and gVim) and Windows (gVim only).
|
||||
Returns [] on other systems or on failure.
|
||||
Note that there could be variations across different terminals.
|
||||
On macOS, system Terminal.app returns sizes in points (before
|
||||
Retina scaling), whereas third-party terminals return raw pixel
|
||||
sizes (post Retina scaling).
|
||||
|
||||
Return type: list<any>
|
||||
|
||||
|
||||
getcellwidths() *getcellwidths()*
|
||||
Returns a |List| of cell widths of character ranges overridden
|
||||
by |setcellwidths()|. The format is equal to the argument of
|
||||
@@ -4836,7 +4851,7 @@ getregion({pos1}, {pos2} [, {opts}]) *getregion()*
|
||||
<
|
||||
Return type: list<string>
|
||||
|
||||
<
|
||||
|
||||
getregionpos({pos1}, {pos2} [, {opts}]) *getregionpos()*
|
||||
Same as |getregion()|, but returns a list of positions
|
||||
describing the buffer text segments bound by {pos1} and
|
||||
@@ -4893,6 +4908,7 @@ getregtype([{regname}]) *getregtype()*
|
||||
<
|
||||
Return type: |String|
|
||||
|
||||
|
||||
getscriptinfo([{opts}]) *getscriptinfo()*
|
||||
Returns a |List| with information about all the sourced Vim
|
||||
scripts in the order they were sourced, like what
|
||||
@@ -5070,6 +5086,8 @@ getwininfo([{winid}]) *getwininfo()*
|
||||
botline last complete displayed buffer line
|
||||
bufnr number of buffer in the window
|
||||
height window height (excluding winbar)
|
||||
leftcol first column displayed; only used when
|
||||
'wrap' is off
|
||||
loclist 1 if showing a location list
|
||||
{only with the +quickfix feature}
|
||||
quickfix 1 if quickfix or location list window
|
||||
@@ -5202,7 +5220,7 @@ glob({expr} [, {nosuf} [, {list} [, {alllinks}]]]) *glob()*
|
||||
on {list}
|
||||
|
||||
|
||||
glob2regpat({string}) *glob2regpat()*
|
||||
glob2regpat({string}) *glob2regpat()*
|
||||
Convert a file pattern, as used by glob(), into a search
|
||||
pattern. The result can be used to match with a string that
|
||||
is a file name. E.g. >
|
||||
@@ -5655,7 +5673,7 @@ iconv({string}, {from}, {to}) *iconv()*
|
||||
Return type: |String|
|
||||
|
||||
|
||||
id({item}) *id()*
|
||||
id({item}) *id()*
|
||||
The result is a unique String associated with the {item} and
|
||||
not with the {item}'s contents. It is only valid while the
|
||||
{item} exists and is referenced. It is valid only in the
|
||||
@@ -7080,7 +7098,7 @@ matchbufline({buf}, {pat}, {lnum}, {end}, [, {dict}])
|
||||
Return type: list<dict<any>> or list<any>
|
||||
|
||||
|
||||
matchdelete({id} [, {win}) *matchdelete()* *E802* *E803*
|
||||
matchdelete({id} [, {win}) *matchdelete()* *E802* *E803*
|
||||
Deletes a match with ID {id} previously defined by |matchadd()|
|
||||
or one of the |:match| commands. Returns 0 if successful,
|
||||
otherwise -1. See example for |matchadd()|. All matches can
|
||||
@@ -8126,9 +8144,14 @@ pumvisible() *pumvisible()*
|
||||
Return type: |Number|
|
||||
|
||||
|
||||
py3eval({expr}) *py3eval()*
|
||||
py3eval({expr} [, {locals}]) *py3eval()*
|
||||
Evaluate Python expression {expr} and return its result
|
||||
converted to Vim data structures.
|
||||
If a {locals} |Dictionary| is given, it defines set of local
|
||||
variables available in the expression. The keys are variable
|
||||
names and the values are the variable values. |Dictionary| and
|
||||
|List| values are referenced, and may be updated by the
|
||||
expression (as if |python-bindeval| was used).
|
||||
Numbers and strings are returned as they are (strings are
|
||||
copied though, Unicode strings are additionally converted to
|
||||
'encoding').
|
||||
@@ -8140,15 +8163,17 @@ py3eval({expr}) *py3eval()*
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetExpr()->py3eval()
|
||||
'b",".join(l)'->py3eval({'l': ['a', 'b', 'c']})
|
||||
<
|
||||
Return type: any, depending on {expr}
|
||||
|
||||
{only available when compiled with the |+python3| feature}
|
||||
|
||||
*E858* *E859*
|
||||
pyeval({expr}) *pyeval()*
|
||||
pyeval({expr} [, {locals}]) *pyeval()*
|
||||
Evaluate Python expression {expr} and return its result
|
||||
converted to Vim data structures.
|
||||
For {locals} see |py3eval()|.
|
||||
Numbers and strings are returned as they are (strings are
|
||||
copied though).
|
||||
Lists are represented as Vim |List| type.
|
||||
@@ -8164,9 +8189,10 @@ pyeval({expr}) *pyeval()*
|
||||
|
||||
{only available when compiled with the |+python| feature}
|
||||
|
||||
pyxeval({expr}) *pyxeval()*
|
||||
pyxeval({expr} [, {locals}]) *pyxeval()*
|
||||
Evaluate Python expression {expr} and return its result
|
||||
converted to Vim data structures.
|
||||
For {locals} see |py3eval()|.
|
||||
Uses Python 2 or 3, see |python_x| and 'pyxversion'.
|
||||
See also: |pyeval()|, |py3eval()|
|
||||
|
||||
@@ -9766,6 +9792,8 @@ setqflist({list} [, {action} [, {what}]]) *setqflist()*
|
||||
clear the list: >
|
||||
:call setqflist([], 'r')
|
||||
<
|
||||
'u' Like 'r', but tries to preserve the current selection
|
||||
in the quickfix list.
|
||||
'f' All the quickfix lists in the quickfix stack are
|
||||
freed.
|
||||
|
||||
@@ -11952,7 +11980,7 @@ wildmenumode() *wildmenumode()*
|
||||
For example to make <c-j> work like <down> in wildmode, use: >
|
||||
:cnoremap <expr> <C-j> wildmenumode() ? "\<Down>\<Tab>" : "\<c-j>"
|
||||
<
|
||||
(Note, this needs the 'wildcharm' option set appropriately).
|
||||
(Note: this needs the 'wildcharm' option set appropriately).
|
||||
|
||||
Return type: |Number|
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 9.1. Last change: 2024 Oct 07
|
||||
*change.txt* For Vim version 9.1. Last change: 2024 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -586,6 +586,8 @@ comment (starting with '"') after the `:!` command.
|
||||
program {filter} (for {Visual} see |Visual-mode|).
|
||||
|
||||
:{range}![!]{filter} [!][arg] *:range!*
|
||||
For executing external commands see |:!|
|
||||
|
||||
Filter {range} lines through the external program
|
||||
{filter}. Vim replaces the optional bangs with the
|
||||
latest given command and appends the optional [arg].
|
||||
@@ -1510,18 +1512,17 @@ since formatting is highly dependent on the type of file. It makes
|
||||
sense to use an |autoload| script, so the corresponding script is only loaded
|
||||
when actually needed and the script should be called <filetype>format.vim.
|
||||
|
||||
For example, the XML filetype plugin distributed with Vim in the $VIMRUNTIME
|
||||
directory, sets the 'formatexpr' option to: >
|
||||
For example, the XML filetype plugin distributed with Vim in the
|
||||
$VIMRUNTIME/ftplugin directory, sets the 'formatexpr' option to: >
|
||||
|
||||
setlocal formatexpr=xmlformat#Format()
|
||||
|
||||
That means, you will find the corresponding script, defining the
|
||||
xmlformat#Format() function, in the directory:
|
||||
`$VIMRUNTIME/autoload/xmlformat.vim`
|
||||
xmlformat#Format() function, in the file `$VIMRUNTIME/autoload/xmlformat.vim`
|
||||
|
||||
Here is an example script that removes trailing whitespace from the selected
|
||||
text. Put it in your autoload directory, e.g. ~/.vim/autoload/format.vim: >
|
||||
|
||||
text. Put it in your autoload directory, e.g. ~/.vim/autoload/format.vim:
|
||||
>vim
|
||||
func! format#Format()
|
||||
" only reformat on explicit gq command
|
||||
if mode() != 'n'
|
||||
@@ -1554,7 +1555,7 @@ debugging it helps to set the 'debug' option.
|
||||
|
||||
*right-justify*
|
||||
There is no command in Vim to right justify text. You can do it with
|
||||
an external command, like "par" (e.g.: "!}par" to format until the end of the
|
||||
an external command, like "par" (e.g.: `:.,}!par` to format until the end of the
|
||||
paragraph) or set 'formatprg' to "par".
|
||||
|
||||
*format-comments*
|
||||
@@ -1620,7 +1621,7 @@ type of comment string. A part consists of:
|
||||
some indent for the start or end part that can be removed.
|
||||
|
||||
When a string has none of the 'f', 's', 'm' or 'e' flags, Vim assumes the
|
||||
comment string repeats at the start of each line. The flags field may be
|
||||
comment string repeats at the start of each line. The {flags} field may be
|
||||
empty.
|
||||
|
||||
Any blank space in the text before and after the {string} is part of the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*develop.txt* For Vim version 9.1. Last change: 2024 May 11
|
||||
*develop.txt* For Vim version 9.1. Last change: 2024 Nov 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -157,6 +157,7 @@ VIM IS... NOT *design-not*
|
||||
being less consistent over all platforms. But functional GUI features are
|
||||
welcomed.
|
||||
|
||||
|
||||
==============================================================================
|
||||
2. Coding style *coding-style*
|
||||
|
||||
@@ -165,23 +166,30 @@ stick to these rules, to keep the sources readable and maintainable.
|
||||
|
||||
This list is not complete. Look in the source code for more examples.
|
||||
|
||||
The code repository contains an editorconfig file, that can be used together
|
||||
with the distributed editorconfig plugin |editorconfig-install| to ensure the
|
||||
recommended style is followed.
|
||||
|
||||
|
||||
MAKING CHANGES *style-changes*
|
||||
|
||||
The basic steps to make changes to the code:
|
||||
1. Get the code from github. That makes it easier to keep your changed
|
||||
version in sync with the main code base (it may be a while before your
|
||||
changes will be included). You do need to spend some time learning git,
|
||||
it's not the most user friendly tool.
|
||||
changes will be included).
|
||||
2. Adjust the documentation. Doing this first gives you an impression of how
|
||||
your changes affect the user.
|
||||
3. Make the source code changes.
|
||||
4. Check ../doc/todo.txt if the change affects any listed item.
|
||||
5. Make a patch with "git diff". You can also create a pull request on
|
||||
github, but it's the diff that matters.
|
||||
6. Make a note about what changed, preferably mentioning the problem and the
|
||||
5. Add a test to src/testdir to verify the new behaviour and ensure it won't
|
||||
regress in the future.
|
||||
6. Make a patch with "git diff".
|
||||
7. Make a note about what changed, preferably mentioning the problem and the
|
||||
solution. Send an email to the |vim-dev| maillist with an explanation and
|
||||
include the diff. Or create a pull request on github.
|
||||
include the diff.
|
||||
|
||||
For any non-trivial change, please always create a pull request on github,
|
||||
since this triggers the test suite.
|
||||
|
||||
|
||||
C COMPILER *style-compiler* *ANSI-C* *C89* *C99*
|
||||
@@ -191,52 +199,234 @@ Later standards, such as C99, are not widely supported, or at least not 100%
|
||||
supported. Therefore we use only some of the C99 features and explicitly
|
||||
disallow some (this will gradually be adjusted over time).
|
||||
|
||||
Please don't make changes everywhere to use the C99 features, it causes merge
|
||||
problems for existing patches. Only use them for new and changed code.
|
||||
|
||||
Comments ~
|
||||
|
||||
Traditionally Vim uses /* comments */. We intend to keep it that way
|
||||
for file and function headers and larger blocks of code, E.g.:
|
||||
/*
|
||||
* The "foo" argument does something useful.
|
||||
* Return OK or FAIL.
|
||||
*/
|
||||
For new code or lines of code that change, it is preferred to use // comments.
|
||||
Especially when it comes after code:
|
||||
int some_var; // single line comment useful here
|
||||
|
||||
Enums ~
|
||||
|
||||
The last item in an enum may have a trailing comma. C89 didn't allow this.
|
||||
|
||||
Types ~
|
||||
|
||||
"long long" is allowed and can be expected to be 64 bits. Use %lld in printf
|
||||
formats. Also "long long unsigned" with %llu.
|
||||
|
||||
Declarations ~
|
||||
|
||||
Now that the minimal supported compiler is MSVC 2015 declarations do not need
|
||||
to be at the start of a block. However, it is often a good idea to do this
|
||||
anyway.
|
||||
|
||||
Declaration of the for loop variable inside the loop is recommended:
|
||||
for (int i = 0; i < len; ++i)
|
||||
Since this is clearly an advantage we'll use this more often.
|
||||
|
||||
|
||||
Not to be used ~
|
||||
Features not to be used ~
|
||||
|
||||
These C99 features are not to be used, because not enough compilers support
|
||||
them:
|
||||
- Variable length arrays (even in C11 this is an optional feature).
|
||||
- _Bool and _Complex types.
|
||||
- C99 _Bool and _Complex types.
|
||||
- "inline" (it's hardly ever needed, let the optimizer do its work)
|
||||
- flexible array members: Not supported by HP-UX C compiler (John Marriott)
|
||||
|
||||
|
||||
USE OF COMMON FUNCTIONS *style-functions*
|
||||
COMMENTS *style-comments*
|
||||
|
||||
Try to avoid putting multiline comments inside a function body: if the
|
||||
function is so complex that you need to separately comment parts of it, you
|
||||
should probably rethink the structure of the function.
|
||||
|
||||
For file headers and function descriptions use: >
|
||||
/*
|
||||
* Description
|
||||
*/
|
||||
<
|
||||
For everything else use: >
|
||||
// comment
|
||||
<
|
||||
|
||||
|
||||
INDENTATION *style-indentation*
|
||||
|
||||
We use 4 space to indent the code. If you are using Vim to edit the source,
|
||||
you don't need to do anything due to the |modeline|.
|
||||
|
||||
For other editors an `.editorconfig` is provided at the root of the repo.
|
||||
|
||||
|
||||
DECLARATIONS *style-declarations*
|
||||
|
||||
Declare, when possible, `for` loop variables in the guard:
|
||||
OK: >
|
||||
for (int i = 0; i < len; ++i)
|
||||
<
|
||||
Wrong: >
|
||||
int i;
|
||||
for (i = 0; i < len; ++i)
|
||||
<
|
||||
Always declare a variable with a default value:
|
||||
OK: >
|
||||
int n = 0;
|
||||
int *ptr = NULL;
|
||||
<
|
||||
Wrong: >
|
||||
int n;
|
||||
int *ptr;
|
||||
<
|
||||
|
||||
|
||||
BRACES *style-braces*
|
||||
|
||||
All curly braces must be returned onto a new line:
|
||||
OK: >
|
||||
if (cond)
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
<
|
||||
Wrong: >
|
||||
if (cond) {
|
||||
cmd;
|
||||
cmd;
|
||||
} else {
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
<
|
||||
OK: >
|
||||
while (cond)
|
||||
{
|
||||
cmd;
|
||||
}
|
||||
<
|
||||
Wrong: >
|
||||
while (cond) {
|
||||
cmd;
|
||||
}
|
||||
<
|
||||
When a block has one line, including comments, the braces can be left out.
|
||||
OK: >
|
||||
if (cond)
|
||||
cmd;
|
||||
else
|
||||
cmd;
|
||||
<
|
||||
Wrong: >
|
||||
if (cond)
|
||||
/*
|
||||
* comment
|
||||
*/
|
||||
cmd;
|
||||
else
|
||||
cmd;
|
||||
<
|
||||
When an `if`/`else` has braces on one block, the other should have it too.
|
||||
OK: >
|
||||
if (cond)
|
||||
{
|
||||
cmd;
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
<
|
||||
Wrong: >
|
||||
if (cond)
|
||||
cmd;
|
||||
else
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
|
||||
if (cond)
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
else
|
||||
cmd;
|
||||
<
|
||||
OK: >
|
||||
while (cond)
|
||||
cmd;
|
||||
<
|
||||
Wrong:
|
||||
>
|
||||
while (cond)
|
||||
if (cond)
|
||||
cmd;
|
||||
<
|
||||
|
||||
|
||||
TYPES *style-types*
|
||||
|
||||
Use descriptive types. You can find a list of them in the src/structs.h file
|
||||
and probably in a typedef in the file you are working on.
|
||||
|
||||
Note that all custom types are postfixed with "_T"
|
||||
|
||||
OK: >
|
||||
int is_valid_line_number(linenr_T lnum);
|
||||
<
|
||||
Wrong: >
|
||||
int is_valid_line_number(unsigned long lnum);
|
||||
<
|
||||
|
||||
|
||||
SPACES AND PUNCTUATION *style-spaces*
|
||||
|
||||
No space between a function name and the bracket:
|
||||
|
||||
OK: func(arg);
|
||||
Wrong: func (arg);
|
||||
|
||||
Do use a space after `if`, `while`, `switch`, etc.
|
||||
|
||||
OK: if (arg) for (;;)
|
||||
Wrong: if(arg) for(;;)
|
||||
|
||||
Use a space after a comma or semicolon:
|
||||
|
||||
OK: func(arg1, arg2); for (i = 0; i < 2; ++i)
|
||||
Wrong: func(arg1,arg2); for (i = 0;i < 2;++i)
|
||||
|
||||
Use a space before and after '=', '+', '/', etc.
|
||||
|
||||
Wrong: var=a*5;
|
||||
OK: var = a * 5;
|
||||
|
||||
Use empty lines to group similar actions together.
|
||||
|
||||
OK: >
|
||||
msg_puts_title(_("\n--- Signs ---"));
|
||||
msg_putchar('\n');
|
||||
|
||||
if (rbuf == NULL)
|
||||
buf = firstbuf;
|
||||
else
|
||||
buf = rbuf;
|
||||
|
||||
while (buf != NULL && !got_int)
|
||||
<
|
||||
Wrong: >
|
||||
msg_puts_title(_("\n--- Signs ---"));
|
||||
msg_putchar('\n');
|
||||
if (rbuf == NULL)
|
||||
buf = firstbuf;
|
||||
else
|
||||
buf = rbuf;
|
||||
while (buf != NULL && !got_int)
|
||||
<
|
||||
|
||||
|
||||
FUNCTIONS *style-functions*
|
||||
|
||||
Use function declarations with the return type on a separate indented line.
|
||||
|
||||
OK: >
|
||||
int
|
||||
function_name(int arg1, int arg2)
|
||||
{
|
||||
}
|
||||
<
|
||||
Wrong: >
|
||||
int function_name(int arg1, int arg2)
|
||||
{
|
||||
}
|
||||
<
|
||||
|
||||
Give meaningful names to function parameters.
|
||||
|
||||
|
||||
USE OF COMMON FUNCTIONS *style-common-functions*
|
||||
|
||||
Some functions that are common to use, have a special Vim version. Always
|
||||
consider using the Vim version, because they were introduced with a reason.
|
||||
@@ -311,27 +501,30 @@ get_env_value() Linux system function
|
||||
|
||||
VARIOUS *style-various*
|
||||
|
||||
Typedef'ed names should end in "_T": >
|
||||
typedef int some_T;
|
||||
Define'ed names should be uppercase: >
|
||||
Define'd names should be uppercase: >
|
||||
#define SOME_THING
|
||||
<
|
||||
|
||||
Features always start with "FEAT_": >
|
||||
#define FEAT_FOO
|
||||
<
|
||||
|
||||
Don't use '\"', some compilers can't handle it. '"' works fine.
|
||||
|
||||
Don't use:
|
||||
Don't use: >
|
||||
#if HAVE_SOME
|
||||
<
|
||||
Some compilers can't handle that and complain that "HAVE_SOME" is not defined.
|
||||
Use
|
||||
Use >
|
||||
#ifdef HAVE_SOME
|
||||
or
|
||||
<
|
||||
or >
|
||||
#if defined(HAVE_SOME)
|
||||
|
||||
<
|
||||
|
||||
STYLE *style-examples*
|
||||
|
||||
General rule: One statement per line.
|
||||
One statement per line.
|
||||
|
||||
Wrong: if (cond) a = 1;
|
||||
|
||||
@@ -349,101 +542,6 @@ OK: do
|
||||
a = 1;
|
||||
while (cond);
|
||||
|
||||
Wrong: if (cond) {
|
||||
cmd;
|
||||
cmd;
|
||||
} else {
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
|
||||
OK: if (cond)
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
|
||||
When a block has one line the braces can be left out. When an if/else has
|
||||
braces on one block, it usually looks better when the other block also has
|
||||
braces:
|
||||
OK: if (cond)
|
||||
cmd;
|
||||
else
|
||||
cmd;
|
||||
|
||||
OK: if (cond)
|
||||
{
|
||||
cmd;
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd;
|
||||
cmd;
|
||||
}
|
||||
|
||||
Use ANSI (new style) function declarations with the return type on a separate
|
||||
indented line.
|
||||
|
||||
Wrong: int function_name(int arg1, int arg2)
|
||||
|
||||
OK: /*
|
||||
* Explanation of what this function is used for.
|
||||
*
|
||||
* Return value explanation.
|
||||
*/
|
||||
int
|
||||
function_name(
|
||||
int arg1, // short comment about arg1
|
||||
int arg2) // short comment about arg2
|
||||
{
|
||||
int local; // comment about local
|
||||
|
||||
local = arg1 * arg2;
|
||||
|
||||
|
||||
|
||||
SPACES AND PUNCTUATION *style-spaces*
|
||||
|
||||
No space between a function name and the bracket:
|
||||
|
||||
Wrong: func (arg);
|
||||
OK: func(arg);
|
||||
|
||||
Do use a space after if, while, switch, etc.
|
||||
|
||||
Wrong: if(arg) for(;;)
|
||||
OK: if (arg) for (;;)
|
||||
|
||||
Use a space after a comma and semicolon:
|
||||
|
||||
Wrong: func(arg1,arg2); for (i = 0;i < 2;++i)
|
||||
OK: func(arg1, arg2); for (i = 0; i < 2; ++i)
|
||||
|
||||
Use a space before and after '=', '+', '/', etc.
|
||||
|
||||
Wrong: var=a*5;
|
||||
OK: var = a * 5;
|
||||
|
||||
In general: Use empty lines to group lines of code together. Put a comment
|
||||
just above the group of lines. This makes it easier to quickly see what is
|
||||
being done.
|
||||
|
||||
OK: /* Prepare for building the table. */
|
||||
get_first_item();
|
||||
table_idx = 0;
|
||||
|
||||
/* Build the table */
|
||||
while (has_item())
|
||||
table[table_idx++] = next_item();
|
||||
|
||||
/* Finish up. */
|
||||
cleanup_items();
|
||||
generate_hash(table);
|
||||
|
||||
==============================================================================
|
||||
3. Design decisions *design-decisions*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 9.1. Last change: 2024 Oct 13
|
||||
*editing.txt* For Vim version 9.1. Last change: 2024 Oct 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1058,6 +1058,15 @@ explanation of when the copy is made and when the file is renamed.
|
||||
If the creation of a backup file fails, the write is not done. If you want
|
||||
to write anyway add a '!' to the command.
|
||||
|
||||
*file-watcher*
|
||||
When you notice issues with programs, that act upon when a buffer is written
|
||||
(like inotify, entr or fswatch) or when external applications execute Vim to
|
||||
edit the file (like git) and those programs do not seem to notice that the
|
||||
original file has been changed, you may want to consider switching the
|
||||
'backupcopy' option value to "yes". This makes sure, Vim writes to the same
|
||||
file, that those watcher programs expect, without creating a new file (which
|
||||
prevents them from detecting that the file has changed). See also |crontab|
|
||||
|
||||
*write-permissions*
|
||||
When writing a new file the permissions are read-write. For unix the mask is
|
||||
0o666 with additionally umask applied. When writing a file that was read Vim
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 9.1. Last change: 2024 Jul 28
|
||||
*eval.txt* For Vim version 9.1. Last change: 2024 Nov 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -2026,6 +2026,7 @@ v:cmdbang Set like v:cmdarg for a file read/write command. When a "!"
|
||||
was used the value is 1, otherwise it is 0. Note that this
|
||||
can only be used in autocommands. For user commands |<bang>|
|
||||
can be used.
|
||||
|
||||
*v:collate* *collate-variable*
|
||||
v:collate The current locale setting for collation order of the runtime
|
||||
environment. This allows Vim scripts to be aware of the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*filetype.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*filetype.txt* For Vim version 9.1. Last change: 2024 Dec 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -634,7 +634,7 @@ To disable this behavior, set the following variable in your vimrc: >
|
||||
let g:gdscript_recommended_style = 0
|
||||
|
||||
|
||||
GIT COMMIT *ft-gitcommit-plugin*
|
||||
GIT COMMIT *ft-gitcommit-plugin*
|
||||
|
||||
One command, :DiffGitCached, is provided to show a diff of the current commit
|
||||
in the preview window. It is equivalent to calling "git diff --cached" plus
|
||||
@@ -667,6 +667,19 @@ HARE *ft-hare*
|
||||
Since the text for this plugin is rather long it has been put in a separate
|
||||
file: |ft_hare.txt|.
|
||||
|
||||
IDRIS2 *ft-idris2-plugin*
|
||||
|
||||
By default the following options are set: >
|
||||
|
||||
setlocal shiftwidth=2 tabstop=2 expandtab
|
||||
setlocal comments=s1:{-,mb:-,ex:-},:\|\|\|,:--
|
||||
setlocal commentstring=--\ %s
|
||||
setlocal wildignore+=*.ibc
|
||||
|
||||
To use tabs instead of spaces for indentation, set the following variable
|
||||
in your vimrc: >
|
||||
|
||||
let g:idris2#allow_tabchar = 1
|
||||
|
||||
JAVA *ft-java-plugin*
|
||||
|
||||
@@ -720,7 +733,6 @@ To enable the recognition of Markdown comments each time after removing
|
||||
re-source "javaformat.vim" for Vim versions greater than `8.2.1397`: >
|
||||
runtime autoload/javaformat.vim
|
||||
<
|
||||
|
||||
JSON-FORMAT *ft-json-plugin*
|
||||
|
||||
JSON filetype can be extended to use 'formatexpr' and "json.FormatExpr()"
|
||||
@@ -732,6 +744,11 @@ Add following lines to $HOME/.vim/ftplugin/json.vim: >
|
||||
import autoload 'dist/json.vim'
|
||||
setl formatexpr=json.FormatExpr()
|
||||
|
||||
LUA *ft-lua-plugin*
|
||||
|
||||
You can enable folding of Lua functions using |fold-expr| by: >
|
||||
|
||||
let g:lua_folding = 1
|
||||
|
||||
MAIL *ft-mail-plugin*
|
||||
|
||||
@@ -803,7 +820,7 @@ page in a Vim window: >
|
||||
set keywordprg=:Man
|
||||
|
||||
|
||||
MANPAGER *manpager.vim*
|
||||
MANPAGER *manpager.vim*
|
||||
|
||||
The |:Man| command allows you to turn Vim into a manpager (that syntax
|
||||
highlights manpages and follows linked manpages on hitting CTRL-]).
|
||||
@@ -821,7 +838,7 @@ For fish, add to the config file
|
||||
set -x MANPAGER "vim +MANPAGER --not-a-term -"
|
||||
|
||||
|
||||
MARKDOWN *ft-markdown-plugin*
|
||||
MARKDOWN *ft-markdown-plugin*
|
||||
|
||||
To enable folding use this: >
|
||||
let g:markdown_folding = 1
|
||||
@@ -830,6 +847,12 @@ To enable folding use this: >
|
||||
let g:markdown_recommended_style = 0
|
||||
|
||||
|
||||
ORG *ft-org-plugin*
|
||||
|
||||
To enable folding use this: >
|
||||
let g:org_folding = 1
|
||||
<
|
||||
|
||||
PDF *ft-pdf-plugin*
|
||||
|
||||
Two maps, <C-]> and <C-T>, are provided to simulate a tag stack for navigating
|
||||
@@ -894,7 +917,7 @@ To enable this behavior, set the following variable in your vimrc: >
|
||||
let g:rst_style = 1
|
||||
|
||||
|
||||
RNOWEB *ft-rnoweb-plugin*
|
||||
RNOWEB *ft-rnoweb-plugin*
|
||||
|
||||
The 'formatexpr' option is set dynamically with different values for R code
|
||||
and for LaTeX code. If you prefer that 'formatexpr' is not set, add to your
|
||||
@@ -939,6 +962,19 @@ TYPST *ft-typst-plugin*
|
||||
*g:typst_conceal*
|
||||
When |TRUE| the Typst filetype plugin will set the 'conceallevel' option to 2.
|
||||
|
||||
*g:typst_folding*
|
||||
When |TRUE| the Typst filetype plugin will fold headings. (default: |FALSE|)
|
||||
|
||||
To enable: >
|
||||
let g:typst_folding = 1
|
||||
<
|
||||
*g:typst_foldnested*
|
||||
When |TRUE| the Typst filetype plugin will fold nested heading under their
|
||||
parents. (default: |TRUE|)
|
||||
|
||||
To disable: >
|
||||
let g:typst_foldnested = 0
|
||||
<
|
||||
VIM *ft-vim-plugin*
|
||||
|
||||
The Vim filetype plugin defines mappings to move to the start and end of
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*fold.txt* For Vim version 9.1. Last change: 2023 Mar 24
|
||||
*fold.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -87,9 +87,11 @@ The most efficient is to call a compiled function without arguments: >
|
||||
The function must use v:lnum. See |expr-option-function|.
|
||||
|
||||
These are the conditions with which the expression is evaluated:
|
||||
|
||||
- The current buffer and window are set for the line.
|
||||
- The variable "v:lnum" is set to the line number.
|
||||
- The result is used for the fold level in this way:
|
||||
|
||||
The result of foldexpr then determines the fold level as follows:
|
||||
value meaning ~
|
||||
0 the line is not in a fold
|
||||
1, 2, .. the line is in a fold with this level
|
||||
@@ -104,6 +106,8 @@ These are the conditions with which the expression is evaluated:
|
||||
"<1", "<2", .. a fold with this level ends at this line
|
||||
">1", ">2", .. a fold with this level starts at this line
|
||||
|
||||
The result values "=", "s" and "a" are more expensive, please see |fold-expr-slow|.
|
||||
|
||||
It is not required to mark the start (end) of a fold with ">1" ("<1"), a fold
|
||||
will also start (end) when the fold level is higher (lower) than the fold
|
||||
level of the previous line.
|
||||
@@ -117,12 +121,6 @@ recognized, there is no error message and the fold level will be zero.
|
||||
For debugging the 'debug' option can be set to "msg", the error messages will
|
||||
be visible then.
|
||||
|
||||
Note: Since the expression has to be evaluated for every line, this fold
|
||||
method can be very slow!
|
||||
|
||||
Try to avoid the "=", "a" and "s" return values, since Vim often has to search
|
||||
backwards for a line for which the fold level is defined. This can be slow.
|
||||
|
||||
If the 'foldexpr' expression starts with s: or |<SID>|, then it is replaced
|
||||
with the script ID (|local-function|). Examples: >
|
||||
set foldexpr=s:MyFoldExpr()
|
||||
@@ -148,6 +146,36 @@ end in that line.
|
||||
It may happen that folds are not updated properly. You can use |zx| or |zX|
|
||||
to force updating folds.
|
||||
|
||||
Minimizing Computational Cost *fold-expr-slow*
|
||||
|
||||
Due to its computational cost, this fold method can make Vim unresponsive,
|
||||
especially when the fold level of all lines have to be initially computed.
|
||||
Afterwards, after each change, Vim restricts the computation of foldlevels
|
||||
to those lines whose fold level was affected by it (and reuses the known
|
||||
foldlevels of all the others).
|
||||
|
||||
The fold expression should therefore strive to minimize the number of dependent
|
||||
lines needed for the computation of a given line: For example, try to avoid the
|
||||
"=", "a" and "s" return values, because these will require the evaluation of the
|
||||
fold levels on previous lines until an independent fold level is found.
|
||||
|
||||
If this proves difficult, the next best thing could be to cache all fold levels
|
||||
in a buffer-local variable (b:foldlevels) that is only updated on |b:changedtick|:
|
||||
>vim
|
||||
vim9script
|
||||
def MyFoldFunc(): number
|
||||
if b:lasttick == b:changedtick
|
||||
return b:foldlevels[v:lnum - 1]
|
||||
endif
|
||||
b:lasttick = b:changedtick
|
||||
b:foldlevels = []
|
||||
# compute foldlevels ...
|
||||
return b:foldlevels[v:lnum - 1]
|
||||
enddef
|
||||
set foldexpr=s:MyFoldFunc()
|
||||
<
|
||||
In above example further speedup was gained by using a precompiled Vim9script
|
||||
function without arguments (that must still use v:lnum). See |expr-option-function|.
|
||||
|
||||
SYNTAX *fold-syntax*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui.txt* For Vim version 9.1. Last change: 2024 Jul 17
|
||||
*gui.txt* For Vim version 9.1. Last change: 2024 Nov 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -474,6 +474,8 @@ When the "unnamed" string is included in the 'clipboard' option, the unnamed
|
||||
register is the same as the "* register. Thus you can yank to and paste the
|
||||
selection without prepending "* to commands.
|
||||
|
||||
See also |W23| and |W24|.
|
||||
|
||||
==============================================================================
|
||||
5. Menus *menus*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui_x11.txt* For Vim version 9.1. Last change: 2024 Apr 22
|
||||
*gui_x11.txt* For Vim version 9.1. Last change: 2024 Nov 17
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -708,6 +708,33 @@ Examples: (assuming the default option values)
|
||||
Note that the text in the "+ register remains available when making a Visual
|
||||
selection, which makes other text available in the "* register. That allows
|
||||
overwriting selected text.
|
||||
|
||||
*W23*
|
||||
When you are yanking into the "* or "+ register and Vim cannot establish a
|
||||
connection to the X11 selection (or clipboard), it will use register 0 and
|
||||
output a warning:
|
||||
|
||||
Warning: Clipboard register not available, using register 0 ~
|
||||
|
||||
*W24*
|
||||
Vim comes in different flavors, from a tiny build, that just tries to be
|
||||
compatible to original Vi, to enhanced builds which include many improvements
|
||||
(like a GUI). However, on servers and embedded systems, Vim is typically
|
||||
compiled without clipboard support, since this feature requires X11 libraries
|
||||
to be present. Check the ":version" output for the flag |+clipboard| or
|
||||
-clipboard. The former means clipboard support is present while the latter
|
||||
means your Vim does not contain clipboard support.
|
||||
|
||||
In the case when you are trying to access the "* or "+ register and Vim has
|
||||
no clipboard support, you will see this warning:
|
||||
|
||||
Warning: Clipboard register not available. See :h W24~
|
||||
|
||||
If you have a vim with no clipboard support but would like to use the
|
||||
clipboard, try to install a more enhanced Vim package like vim-enhanced or
|
||||
vim-gtk3 (the gui packages usually also come with a terminal Vim that has
|
||||
clipboard support included).
|
||||
|
||||
*x11-cut-buffer*
|
||||
There are, by default, 8 cut-buffers: CUT_BUFFER0 to CUT_BUFFER7. Vim only
|
||||
uses CUT_BUFFER0, which is the one that xterm uses by default.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*help.txt* For Vim version 9.1. Last change: 2024 May 27
|
||||
*help.txt* For Vim version 9.1. Last change: 2024 Dec 06
|
||||
|
||||
VIM - main help file
|
||||
k
|
||||
@@ -180,6 +180,7 @@ Language support ~
|
||||
|hebrew.txt| Hebrew language support and editing
|
||||
|russian.txt| Russian language support and editing
|
||||
|hangulin.txt| Hangul (Korean) input mode
|
||||
|vietnamese.txt| Vietnamese language support and editing
|
||||
|
||||
GUI ~
|
||||
|gui.txt| Graphical User Interface (GUI)
|
||||
@@ -232,6 +233,7 @@ Standard plugins ~
|
||||
|pi_paren.txt| Highlight matching parens
|
||||
|pi_spec.txt| Filetype plugin to work with rpm spec files
|
||||
|pi_tar.txt| Tar file explorer
|
||||
|pi_tutor.txt| Interactive tutorial for Vim
|
||||
|pi_vimball.txt| Create a self-installing Vim script
|
||||
|pi_zip.txt| Zip archive explorer
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*helphelp.txt* For Vim version 9.1. Last change: 2024 Apr 10
|
||||
*helphelp.txt* For Vim version 9.1. Last change: 2024 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -246,6 +246,62 @@ command: >
|
||||
To rebuild the help tags in the runtime directory
|
||||
(requires write permission there): >
|
||||
:helptags $VIMRUNTIME/doc
|
||||
<
|
||||
*:HelpToc* *help-TOC* *help-toc-install*
|
||||
|
||||
If you want to access an interactive table of contents, from any position in
|
||||
the file, you can use the helptoc plugin. Load the plugin with: >
|
||||
|
||||
packadd helptoc
|
||||
|
||||
Then you can use the `:HelpToc` command to open a popup menu.
|
||||
The latter supports the following normal commands: >
|
||||
|
||||
key | effect
|
||||
----+---------------------------------------------------------
|
||||
j | select next entry
|
||||
k | select previous entry
|
||||
J | same as j, and jump to corresponding line in main buffer
|
||||
K | same as k, and jump to corresponding line in main buffer
|
||||
c | select nearest entry from cursor position in main buffer
|
||||
g | select first entry
|
||||
G | select last entry
|
||||
H | collapse one level
|
||||
L | expand one level
|
||||
p | print current entry on command-line
|
||||
|
||||
P | same as p but automatically, whenever selection changes
|
||||
| press multiple times to toggle feature on/off
|
||||
|
||||
q | quit menu
|
||||
z | redraw menu with current entry at center
|
||||
+ | increase width of popup menu
|
||||
- | decrease width of popup menu
|
||||
? | show/hide a help window
|
||||
/ | search for pattern
|
||||
|
||||
<C-D> | scroll down half a page
|
||||
<C-U> | scroll up half a page
|
||||
<PageUp> | scroll down a whole page
|
||||
<PageDown> | scroll up a whole page
|
||||
<Home> | select first entry
|
||||
<End> | select last entry
|
||||
|
||||
The plugin can also provide a table of contents in man pages, markdown files,
|
||||
and terminal buffers. In the latter, the entries will be the past executed
|
||||
shell commands. To find those, the following pattern is used: >
|
||||
|
||||
^\w\+@\w\+:\f\+\$\s
|
||||
|
||||
This is meant to match a default bash prompt. If it doesn't match your prompt,
|
||||
you can change the regex with the `shell_prompt` key from the `g:helptoc`
|
||||
dictionary variable: >
|
||||
|
||||
let g:helptoc = {'shell_prompt': 'regex matching your shell prompt'}
|
||||
|
||||
Tip: After inserting a pattern to look for with the `/` command, if you press
|
||||
<Esc> instead of <CR>, you can then get more context for each remaining entry
|
||||
by pressing `J` or `K`.
|
||||
|
||||
==============================================================================
|
||||
2. Translated help files *help-translated*
|
||||
@@ -381,7 +437,13 @@ also implicitly stops the block of ex-commands before it. E.g. >
|
||||
echo "Example"
|
||||
endfunction
|
||||
<
|
||||
|
||||
It's possible to add Vim syntax highlighting support to code examples. This
|
||||
can be done by adding "vim" after the greater than (>) character (">vim").
|
||||
E.g: >vim
|
||||
function Example_Func()
|
||||
echo "Example"
|
||||
endfunction
|
||||
<
|
||||
The following are highlighted differently in a Vim help file:
|
||||
- a special key name expressed either in <> notation as in <PageDown>, or
|
||||
as a Ctrl character as in CTRL-X
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 9.1. Last change: 2024 May 16
|
||||
*if_pyth.txt* For Vim version 9.1. Last change: 2024 Nov 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -201,6 +201,10 @@ vim.eval(str) *python-eval*
|
||||
[{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name': ~
|
||||
'eval_expr', 'kind': 'f', 'filename': './src/eval.c'}] ~
|
||||
|
||||
NOTE: In Vim9 script, local variables in def functions are not visible
|
||||
to python evaluations. To pass local variables to python evaluations,
|
||||
use the {locals} dict when calling |py3eval()| and friends.
|
||||
|
||||
vim.bindeval(str) *python-bindeval*
|
||||
Like |python-eval|, but returns special objects described in
|
||||
|python-bindeval-objects|. These python objects let you modify (|List|
|
||||
@@ -741,6 +745,10 @@ To facilitate bi-directional interface, you can use |pyeval()| and |py3eval()|
|
||||
functions to evaluate Python expressions and pass their values to Vim script.
|
||||
|pyxeval()| is also available.
|
||||
|
||||
You can inject local variables into the evaluation using the optional {locals}
|
||||
dict. This can be particularly useful in vim9script where vim.eval
|
||||
|python-eval| will not find locals in a def func.
|
||||
|
||||
The Python value "None" is converted to v:none.
|
||||
|
||||
==============================================================================
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*indent.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*indent.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -813,6 +813,38 @@ Detail:
|
||||
: GetCSSIndent() else
|
||||
<!-- --> : -1
|
||||
|
||||
IDRIS2 *ft-idris2-indent*
|
||||
|
||||
Idris 2 indentation can be configured with several variables that control the
|
||||
indentation level for different language constructs:
|
||||
|
||||
The "g:idris2_indent_if" variable controls the indentation of `then` and `else`
|
||||
blocks after `if` statements. Defaults to 3.
|
||||
|
||||
The "g:idris2_indent_case" variable controls the indentation of patterns in
|
||||
`case` expressions. Defaults to 5.
|
||||
|
||||
The "g:idris2_indent_let" variable controls the indentation after `let`
|
||||
bindings. Defaults to 4.
|
||||
|
||||
The "g:idris2_indent_rewrite" variable controls the indentation after `rewrite`
|
||||
expressions. Defaults to 8.
|
||||
|
||||
The "g:idris2_indent_where" variable controls the indentation of `where`
|
||||
blocks. Defaults to 6.
|
||||
|
||||
The "g:idris2_indent_do" variable controls the indentation in `do` blocks.
|
||||
Defaults to 3.
|
||||
|
||||
Example configuration: >
|
||||
|
||||
let g:idris2_indent_if = 2
|
||||
let g:idris2_indent_case = 4
|
||||
let g:idris2_indent_let = 4
|
||||
let g:idris2_indent_rewrite = 8
|
||||
let g:idris2_indent_where = 6
|
||||
let g:idris2_indent_do = 3
|
||||
<
|
||||
|
||||
MATLAB *ft-matlab-indent* *matlab-indent* *matlab-indenting*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 9.1. Last change: 2023 Jul 14
|
||||
*index.txt* For Vim version 9.1. Last change: 2024 Dec 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1529,6 +1529,7 @@ tag command action ~
|
||||
|:ownsyntax| :ow[nsyntax] set new local syntax highlight for this window
|
||||
|:packadd| :pa[ckadd] add a plugin from 'packpath'
|
||||
|:packloadall| :packl[oadall] load all packages under 'packpath'
|
||||
|:pbuffer| :pb[uffer] edit buffer in the preview window
|
||||
|:pclose| :pc[lose] close preview window
|
||||
|:pedit| :ped[it] edit file in the preview window
|
||||
|:perl| :pe[rl] execute Perl command
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*message.txt* For Vim version 9.1. Last change: 2024 Mar 13
|
||||
*message.txt* For Vim version 9.1. Last change: 2024 Dec 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -29,7 +29,7 @@ depends on the 'shortmess' option.
|
||||
Clear messages, keeping only the {count} most
|
||||
recent ones.
|
||||
|
||||
The number of remembered messages is fixed at 200.
|
||||
The number of remembered messages is determined by the 'messagesopt' option.
|
||||
|
||||
*g<*
|
||||
The "g<" command can be used to see the last page of previous command output.
|
||||
@@ -837,6 +837,7 @@ If you accidentally hit <Enter> or <Space> and you want to see the displayed
|
||||
text then use |g<|. This only works when 'more' is set.
|
||||
|
||||
To reduce the number of hit-enter prompts:
|
||||
- Set 'messagesopt'.
|
||||
- Set 'cmdheight' to 2 or higher.
|
||||
- Add flags to 'shortmess'.
|
||||
- Reset 'showcmd' and/or 'ruler'.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 9.1. Last change: 2024 Oct 06
|
||||
*motion.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -122,6 +122,12 @@ This cannot be repeated: >
|
||||
endif<CR>
|
||||
Note that when using ":" any motion becomes characterwise exclusive.
|
||||
|
||||
*inclusive-motion-selection-exclusive*
|
||||
When 'selection' is "exclusive", |Visual| mode is active and an inclusive
|
||||
motion has been used, the cursor position will be adjusted by another
|
||||
character to the right, so that visual selction includes the expected text and
|
||||
can be acted upon.
|
||||
|
||||
*forced-motion*
|
||||
FORCING A MOTION TO BE LINEWISE, CHARACTERWISE OR BLOCKWISE
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 9.1. Last change: 2024 Oct 06
|
||||
*options.txt* For Vim version 9.1. Last change: 2024 Dec 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -439,10 +439,11 @@ Note: In the future more global options can be made |global-local|. Using
|
||||
":setlocal" on a global option might work differently then.
|
||||
|
||||
*option-value-function*
|
||||
Some options ('completefunc', 'imactivatefunc', 'imstatusfunc', 'omnifunc',
|
||||
'operatorfunc', 'quickfixtextfunc', 'tagfunc' and 'thesaurusfunc') are set to
|
||||
a function name or a function reference or a lambda function. When using a
|
||||
lambda it will be converted to the name, e.g. "<lambda>123". Examples:
|
||||
Some options ('completefunc', 'findfunc', 'imactivatefunc', 'imstatusfunc',
|
||||
'omnifunc', 'operatorfunc', 'quickfixtextfunc', 'tagfunc' and 'thesaurusfunc')
|
||||
are set to a function name or a function reference or a lambda function. When
|
||||
using a lambda it will be converted to the name, e.g. "<lambda>123".
|
||||
Examples:
|
||||
>
|
||||
set opfunc=MyOpFunc
|
||||
set opfunc=function('MyOpFunc')
|
||||
@@ -1068,8 +1069,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
done with ":syntax on".
|
||||
|
||||
*'backspace'* *'bs'*
|
||||
'backspace' 'bs' string (default "", set to "indent,eol,start"
|
||||
in |defaults.vim|)
|
||||
'backspace' 'bs' string (Vim default: "indent,eol,start",
|
||||
Vi default: "")
|
||||
global
|
||||
Influences the working of <BS>, <Del>, CTRL-W and CTRL-U in Insert
|
||||
mode. This is a list of items, separated by commas. Each item allows
|
||||
@@ -1151,12 +1152,13 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
useful for example in source trees where all the files are symbolic or
|
||||
hard links and any changes should stay in the local source tree, not
|
||||
be propagated back to the original source.
|
||||
*crontab*
|
||||
*crontab*
|
||||
One situation where "no" and "auto" will cause problems: A program
|
||||
that opens a file, invokes Vim to edit that file, and then tests if
|
||||
the open file was changed (through the file descriptor) will check the
|
||||
backup file instead of the newly created file. "crontab -e" is an
|
||||
example.
|
||||
example, as are several |file-watcher| daemons like inotify. In that
|
||||
case you probably want to switch this option.
|
||||
|
||||
When a copy is made, the original file is truncated and then filled
|
||||
with the new text. This means that protection bits, owner and
|
||||
@@ -2153,9 +2155,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
a match from the menu. Only works in combination with
|
||||
"menu" or "menuone". No effect if "longest" is present.
|
||||
|
||||
noselect Do not select a match in the menu, force the user to
|
||||
select one from the menu. Only works in combination with
|
||||
"menu" or "menuone".
|
||||
noselect Same as "noinsert", except that no menu item is
|
||||
pre-selected. If both "noinsert" and "noselect" are
|
||||
present, "noselect" has precedence.
|
||||
|
||||
fuzzy Enable |fuzzy-matching| for completion candidates. This
|
||||
allows for more flexible and intuitive matching, where
|
||||
@@ -3402,7 +3404,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
*'fileformat'* *'ff'*
|
||||
'fileformat' 'ff' string (MS-Windows default: "dos",
|
||||
Unix, macOS default: "unix")
|
||||
Unix default: "unix")
|
||||
local to buffer
|
||||
This gives the <EOL> of the current buffer, which is used for
|
||||
reading/writing the buffer from/to a file:
|
||||
@@ -3425,7 +3427,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
*'fileformats'* *'ffs'*
|
||||
'fileformats' 'ffs' string (default:
|
||||
Vim+Vi MS-Windows: "dos,unix",
|
||||
Vim Unix, macOS: "unix,dos",
|
||||
Vim Unix: "unix,dos",
|
||||
Vi Cygwin: "unix,dos",
|
||||
Vi others: "")
|
||||
global
|
||||
@@ -3513,7 +3515,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Only alphanumeric characters, '-' and '_' can be used.
|
||||
|
||||
*'fillchars'* *'fcs'*
|
||||
'fillchars' 'fcs' string (default "vert:|,fold:-,eob:~")
|
||||
'fillchars' 'fcs' string (default "vert:|,fold:-,eob:~,lastline:@")
|
||||
global or local to window |global-local|
|
||||
Characters to fill the statuslines, vertical separators and special
|
||||
lines in the window.
|
||||
@@ -3551,6 +3553,56 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
eob EndOfBuffer |hl-EndOfBuffer|
|
||||
lastline NonText |hl-NonText|
|
||||
|
||||
*'findfunc'* *'ffu'* *E1514*
|
||||
'findfunc' 'ffu' string (default empty)
|
||||
global or local to buffer |global-local|
|
||||
{not available when compiled without the |+eval|
|
||||
feature}
|
||||
Function that is called to obtain the filename(s) for the |:find|
|
||||
command. When this option is empty, the internal |file-searching|
|
||||
mechanism is used.
|
||||
|
||||
The value can be the name of a function, a |lambda| or a |Funcref|.
|
||||
See |option-value-function| for more information.
|
||||
|
||||
The function is called with two arguments. The first argument is a
|
||||
|String| and is the |:find| command argument. The second argument is
|
||||
a |Boolean| and is set to |v:true| when the function is called to get
|
||||
a List of command-line completion matches for the |:find| command.
|
||||
The function should return a List of strings.
|
||||
|
||||
The function is called only once per |:find| command invocation.
|
||||
The function can process all the directories specified in 'path'.
|
||||
|
||||
If a match is found, the function should return a |List| containing
|
||||
one or more file names. If a match is not found, the function
|
||||
should return an empty List.
|
||||
|
||||
If any errors are encountered during the function invocation, an
|
||||
empty List is used as the return value.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
executing the 'findfunc' |textlock|.
|
||||
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
Examples:
|
||||
>
|
||||
" Use glob()
|
||||
func FindFuncGlob(cmdarg, cmdcomplete)
|
||||
let pat = a:cmdcomplete ? $'{a:cmdarg}*' : a:cmdarg
|
||||
return glob(pat, v:false, v:true)
|
||||
endfunc
|
||||
set findfunc=FindFuncGlob
|
||||
|
||||
" Use the 'git ls-files' output
|
||||
func FindGitFiles(cmdarg, cmdcomplete)
|
||||
let fnames = systemlist('git ls-files')
|
||||
return fnames->filter('v:val =~? a:cmdarg')
|
||||
endfunc
|
||||
set findfunc=FindGitFiles
|
||||
<
|
||||
*'fixendofline'* *'fixeol'* *'nofixendofline'* *'nofixeol'*
|
||||
'fixendofline' 'fixeol' boolean (default on)
|
||||
local to buffer
|
||||
@@ -4383,12 +4435,12 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
See |highlight-default| for the default highlight groups.
|
||||
|
||||
*'history'* *'hi'*
|
||||
'history' 'hi' number (Vim default: 50, Vi default: 0,
|
||||
set to 200 in |defaults.vim|)
|
||||
'history' 'hi' number (Vim default: 200, Vi default: 0)
|
||||
global
|
||||
A history of ":" commands, and a history of previous search patterns
|
||||
is remembered. This option decides how many entries may be stored in
|
||||
each of these histories (see |cmdline-editing|).
|
||||
each of these histories (see |cmdline-editing| and 'messagesopt' for
|
||||
the number of messages to remember).
|
||||
The maximum value is 10000.
|
||||
NOTE: This option is set to the Vi default value when 'compatible' is
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
@@ -4916,7 +4968,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
set and to the Vim default value when 'compatible' is reset.
|
||||
|
||||
*'isprint'* *'isp'*
|
||||
'isprint' 'isp' string (default for Win32 and macOS:
|
||||
'isprint' 'isp' string (default for Win32 and VMS:
|
||||
"@,~-255"; otherwise: "@,161-255")
|
||||
global
|
||||
The characters given by this option are displayed directly on the
|
||||
@@ -5582,6 +5634,29 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
generated from a list of items, e.g., the Buffers menu. Changing this
|
||||
option has no direct effect, the menu must be refreshed first.
|
||||
|
||||
*'messagesopt'* *'mopt'*
|
||||
'messagesopt' 'mopt' string (default "hit-enter,history:500")
|
||||
global
|
||||
|
||||
Option settings for outputting messages. It can consist of the
|
||||
following items. Items must be separated by a comma.
|
||||
|
||||
hit-enter Use a |hit-enter| prompt when the message is longer than
|
||||
'cmdheight' size.
|
||||
|
||||
wait:{n} Instead of using a |hit-enter| prompt, simply wait for
|
||||
{n} milliseconds so that the user has a chance to read
|
||||
the message. The maximum value of {n} is 10000. Use
|
||||
0 to disable the wait (but then the user may miss an
|
||||
important message).
|
||||
This item is ignored when "hit-enter" is present, but
|
||||
required when "hit-enter" is not present.
|
||||
|
||||
history:{n} Determines how many entries are remembered in the
|
||||
|:messages| history. The maximum value is 10000.
|
||||
Setting it to zero clears the message history.
|
||||
This item must always be present.
|
||||
|
||||
*'mkspellmem'* *'msm'*
|
||||
'mkspellmem' 'msm' string (default "460000,2000,500")
|
||||
global
|
||||
@@ -5865,6 +5940,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
time in msec between two mouse clicks for the second click to be
|
||||
recognized as a multi click.
|
||||
|
||||
|
||||
*'mzquantum'* *'mzq'*
|
||||
'mzquantum' 'mzq' number (default 100)
|
||||
global
|
||||
@@ -6741,9 +6817,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
$VIMRUNTIME,
|
||||
$VIM/vimfiles/after,
|
||||
$HOME/vimfiles/after"
|
||||
macOS: "$VIM:vimfiles,
|
||||
$VIMRUNTIME,
|
||||
$VIM:vimfiles:after"
|
||||
Haiku: "$BE_USER_SETTINGS/vim,
|
||||
$VIM/vimfiles,
|
||||
$VIMRUNTIME,
|
||||
@@ -6945,6 +7018,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
selection.
|
||||
When "old" is used and 'virtualedit' allows the cursor to move past
|
||||
the end of line the line break still isn't included.
|
||||
When "exclusive" is used, cursor position in visual mode will be
|
||||
adjusted for inclusive motions |inclusive-motion-selection-exclusive|.
|
||||
Note that when "exclusive" is used and selecting from the end
|
||||
backwards, you cannot include the last character of a line, when
|
||||
starting in Normal mode and 'virtualedit' empty.
|
||||
@@ -7812,6 +7887,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
All fields except the {item} are optional. A single percent sign can
|
||||
be given as "%%".
|
||||
|
||||
*stl-%!*
|
||||
When the option starts with "%!" then it is used as an expression,
|
||||
evaluated and the result is used as the option value. Example: >
|
||||
:set statusline=%!MyStatusLine()
|
||||
@@ -7969,7 +8045,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|
||||
Examples:
|
||||
Emulate standard status line with 'ruler' set >
|
||||
:set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
|
||||
:set statusline=%<%f\ %h%w%m%r%=%-14.(%l,%c%V%)\ %P
|
||||
< Similar, but add ASCII value of char under the cursor (like "ga") >
|
||||
:set statusline=%<%f%h%m%r%=%b\ 0x%B\ \ %l,%c%V\ %P
|
||||
< Display byte count and byte value, modified flag in red. >
|
||||
@@ -8704,7 +8780,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
be restored if possible, see |X11|.
|
||||
|
||||
When this option contains printf-style '%' items, they will be
|
||||
expanded according to the rules used for 'statusline'.
|
||||
expanded according to the rules used for 'statusline'. If it contains
|
||||
an invalid '%' format, the value is used as-is and no error or warning
|
||||
will be given when the value is set.
|
||||
This option cannot be set in a modeline when 'modelineexpr' is off.
|
||||
|
||||
Example: >
|
||||
@@ -9054,7 +9132,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
for Win32: "$HOME/vimfiles/view",
|
||||
for Unix: "$HOME/.vim/view" or
|
||||
"$XDG_CONFIG_HOME/vim/view"
|
||||
for macOS: "$VIM/vimfiles/view",
|
||||
for VMS: "sys$login:vimfiles/view")
|
||||
global
|
||||
{not available when compiled without the |+mksession|
|
||||
@@ -9380,7 +9457,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
happens when there are special characters.
|
||||
|
||||
*'wildmenu'* *'wmnu'* *'nowildmenu'* *'nowmnu'*
|
||||
'wildmenu' 'wmnu' boolean (default off, set in |defaults.vim|)
|
||||
'wildmenu' 'wmnu' boolean (default on)
|
||||
global
|
||||
When 'wildmenu' is on, command-line completion operates in an enhanced
|
||||
mode. On pressing 'wildchar' (usually <Tab>) to invoke completion,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*os_mac.txt* For Vim version 9.1. Last change: 2019 Apr 21
|
||||
*os_mac.txt* For Vim version 9.1. Last change: 2024 Nov 14
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||
@@ -118,9 +118,13 @@ Shift-Control-2.
|
||||
|
||||
When reporting any Mac specific bug or feature change, please use the vim-mac
|
||||
maillist |vim-mac|. However, you need to be subscribed. An alternative is to
|
||||
send a message to the current MacVim maintainers:
|
||||
report issues either directly at the Vim github repository:
|
||||
|
||||
mac@vim.org
|
||||
https://github.com/vim/vim/issues
|
||||
|
||||
or for MacVim specific issues, you may report those over here:
|
||||
|
||||
https://github.com/macvim-dev/macvim/issues
|
||||
|
||||
==============================================================================
|
||||
7. Compiling Vim *mac-compile*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pattern.txt* For Vim version 9.1. Last change: 2024 Jun 18
|
||||
*pattern.txt* For Vim version 9.1. Last change: 2024 Nov 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -164,7 +164,7 @@ or auto suspended with nohlsearch plugin. See |nohlsearch-install|.
|
||||
|
||||
|
||||
When 'shortmess' does not include the "S" flag, Vim will automatically show an
|
||||
index, on which the cursor is. This can look like this: >
|
||||
index, on which the cursor is. This can look like this: >
|
||||
|
||||
[1/5] Cursor is on first of 5 matches.
|
||||
[1/>99] Cursor is on first of more than 99 matches.
|
||||
@@ -757,7 +757,7 @@ overview.
|
||||
\([a-z]\+\)\zs,\1 ",abc" in "abc,abc"
|
||||
|
||||
\@123<=
|
||||
Like "\@<=" but only look back 123 bytes. This avoids trying lots
|
||||
Like "\@<=" but only look back 123 bytes. This avoids trying lots
|
||||
of matches that are known to fail and make executing the pattern very
|
||||
slow. Example, check if there is a "<" just before "span":
|
||||
/<\@1<=span
|
||||
@@ -783,7 +783,7 @@ overview.
|
||||
\(\/\/.*\)\@<!in "in" which is not after "//"
|
||||
|
||||
\@123<!
|
||||
Like "\@<!" but only look back 123 bytes. This avoids trying lots of
|
||||
Like "\@<!" but only look back 123 bytes. This avoids trying lots of
|
||||
matches that are known to fail and make executing the pattern very
|
||||
slow.
|
||||
|
||||
@@ -907,7 +907,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
inside the Visual area put it at the start and just before the end of
|
||||
the pattern, e.g.: >
|
||||
/\%Vfoo.*ba\%Vr
|
||||
< This also works if only "foo bar" was Visually selected. This: >
|
||||
< This also works if only "foo bar" was Visually selected. This: >
|
||||
/\%Vfoo.*bar\%V
|
||||
< would match "foo bar" if the Visual selection continues after the "r".
|
||||
Only works for the current buffer.
|
||||
@@ -1014,7 +1014,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on):
|
||||
< To match all characters after the current virtual column (where the
|
||||
cursor is): >
|
||||
/\%>.v.*
|
||||
< Column 17 is not included, because this is a |/zero-width| match. To
|
||||
< Column 17 is not included, because this is a |/zero-width| match. To
|
||||
include the column use: >
|
||||
/^.*\%17v.
|
||||
< This command does the same thing, but also matches when there is no
|
||||
@@ -1138,11 +1138,11 @@ x A single character, with no special meaning, matches itself
|
||||
in the collection: "[^xyz]" matches anything but 'x', 'y' and 'z'.
|
||||
- If two characters in the sequence are separated by '-', this is
|
||||
shorthand for the full list of ASCII characters between them. E.g.,
|
||||
"[0-9]" matches any decimal digit. If the starting character exceeds
|
||||
the ending character, e.g. [c-a], E944 occurs. Non-ASCII characters
|
||||
"[0-9]" matches any decimal digit. If the starting character exceeds
|
||||
the ending character, e.g. [c-a], E944 occurs. Non-ASCII characters
|
||||
can be used, but the character values must not be more than 256 apart
|
||||
in the old regexp engine. For example, searching by [\u3000-\u4000]
|
||||
after setting re=1 emits a E945 error. Prepending \%#=2 will fix it.
|
||||
in the old regexp engine. For example, searching by [\u3000-\u4000]
|
||||
after setting re=1 emits a E945 error. Prepending \%#=2 will fix it.
|
||||
- A character class expression is evaluated to the set of characters
|
||||
belonging to that character class. The following character classes
|
||||
are supported:
|
||||
@@ -1208,7 +1208,7 @@ x A single character, with no special meaning, matches itself
|
||||
any character that's not in "^]-\bdertnoUux". "[\xyz]" matches '\',
|
||||
'x', 'y' and 'z'. It's better to use "\\" though, future expansions
|
||||
may use other characters after '\'.
|
||||
- Omitting the trailing ] is not considered an error. "[]" works like
|
||||
- Omitting the trailing ] is not considered an error. "[]" works like
|
||||
"[]]", it matches the ']' character.
|
||||
- The following translations are accepted when the 'l' flag is not
|
||||
included in 'cpoptions':
|
||||
@@ -1444,14 +1444,14 @@ Finally, these constructs are unique to Perl:
|
||||
display you may get unexpected results. That is because Vim
|
||||
looks for a match in the line where redrawing starts.
|
||||
|
||||
Also see |matcharg()| and |getmatches()|. The former returns
|
||||
Also see |matcharg()| and |getmatches()|. The former returns
|
||||
the highlight group and pattern of a previous |:match|
|
||||
command. The latter returns a list with highlight groups and
|
||||
patterns defined by both |matchadd()| and |:match|.
|
||||
|
||||
Highlighting matches using |:match| are limited to three
|
||||
matches (aside from |:match|, |:2match| and |:3match| are
|
||||
available). |matchadd()| does not have this limitation and in
|
||||
available). |matchadd()| does not have this limitation and in
|
||||
addition makes it possible to prioritize matches.
|
||||
|
||||
Another example, which highlights all characters in virtual
|
||||
@@ -1480,7 +1480,7 @@ Finally, these constructs are unique to Perl:
|
||||
with the lowest number has priority if several match at the
|
||||
same position. It uses the match id 3.
|
||||
The ":3match" command is used by (Vim < 9.0.2054) |matchparen|
|
||||
plugin. You are suggested to use ":match" for manual matching
|
||||
plugin. You are suggested to use ":match" for manual matching
|
||||
and ":2match" for another plugin or even better make use of
|
||||
the more flexible |matchadd()| (and similar) functions instead.
|
||||
|
||||
@@ -1489,10 +1489,10 @@ Finally, these constructs are unique to Perl:
|
||||
|
||||
Fuzzy matching refers to matching strings using a non-exact search string.
|
||||
Fuzzy matching will match a string, if all the characters in the search string
|
||||
are present anywhere in the string in the same order. Case is ignored. In a
|
||||
are present anywhere in the string in the same order. Case is ignored. In a
|
||||
matched string, other characters can be present between two consecutive
|
||||
characters in the search string. If the search string has multiple words, then
|
||||
each word is matched separately. So the words in the search string can be
|
||||
characters in the search string. If the search string has multiple words, then
|
||||
each word is matched separately. So the words in the search string can be
|
||||
present in any order in a string.
|
||||
|
||||
Fuzzy matching assigns a score for each matched string based on the following
|
||||
@@ -1511,8 +1511,8 @@ will match the strings "GetPattern", "PatternGet", "getPattern", "patGetter",
|
||||
"getSomePattern", "MatchpatternGet" etc.
|
||||
|
||||
The functions |matchfuzzy()| and |matchfuzzypos()| can be used to fuzzy search
|
||||
a string in a List of strings. The matchfuzzy() function returns a List of
|
||||
matching strings. The matchfuzzypos() functions returns the List of matches,
|
||||
a string in a List of strings. The matchfuzzy() function returns a List of
|
||||
matching strings. The matchfuzzypos() functions returns the List of matches,
|
||||
the matching positions and the fuzzy match scores.
|
||||
|
||||
The "f" flag of `:vimgrep` enables fuzzy matching.
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
*pi_netrw.txt* For Vim version 9.1. Last change: 2024 Jul 13
|
||||
*pi_netrw.txt* For Vim version 9.1. Last change: 2024 Nov 23
|
||||
|
||||
------------------------------------------------
|
||||
NETRW REFERENCE MANUAL by Charles E. Campbell
|
||||
------------------------------------------------
|
||||
Author: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
|
||||
(remove NOSPAM from Campbell's email first)
|
||||
Original Author: Charles E. Campbell
|
||||
|
||||
Copyright: Copyright (C) 2017 Charles E Campbell *netrw-copyright*
|
||||
The VIM LICENSE applies to the files in this package, including
|
||||
netrw.vim, pi_netrw.txt, netrwFileHandlers.vim, netrwSettings.vim, and
|
||||
netrw.vim, pi_netrw.txt, netrwSettings.vim, and
|
||||
syntax/netrw.vim. Like anything else that's free, netrw.vim and its
|
||||
associated files are provided *as is* and comes with no warranty of
|
||||
any kind, either expressed or implied. No guarantees of
|
||||
@@ -54,9 +53,10 @@ Copyright: Copyright (C) 2017 Charles E Campbell *netrw-copyright*
|
||||
Browsing With A Horizontally Split Window...........|netrw-o|
|
||||
Browsing With A New Tab.............................|netrw-t|
|
||||
Browsing With A Vertically Split Window.............|netrw-v|
|
||||
Change File Permission..............................|netrw-gp|
|
||||
Change Listing Style.(thin wide long tree)..........|netrw-i|
|
||||
Change Listing Style (thin wide long tree)..........|netrw-i|
|
||||
Changing To A Bookmarked Directory..................|netrw-gb|
|
||||
Quick hide/unhide of dot-files......................|netrw-gh|
|
||||
Changing local-only File Permission.................|netrw-gp|
|
||||
Changing To A Predecessor Directory.................|netrw-u|
|
||||
Changing To A Successor Directory...................|netrw-U|
|
||||
Customizing Browsing With A Special Handler.........|netrw-x|
|
||||
@@ -1469,98 +1469,106 @@ With either form of the command, netrw will first ask for confirmation
|
||||
that the removal is in fact what you want to do. If netrw doesn't have
|
||||
permission to remove a file, it will issue an error message.
|
||||
|
||||
*netrw-gx*
|
||||
CUSTOMIZING BROWSING WITH A SPECIAL HANDLER *netrw-x* *netrw-handler* {{{2
|
||||
(also see |netrw_filehandler|)
|
||||
|
||||
Certain files, such as html, gif, jpeg, (word/office) doc, etc, files, are
|
||||
best seen with a special handler (ie. a tool provided with your computer's
|
||||
operating system). Netrw allows one to invoke such special handlers by: >
|
||||
operating system). Netrw allows one to invoke such special handlers by:
|
||||
|
||||
* when Exploring, hit the "x" key
|
||||
* when editing, hit gx with the cursor atop the special filename
|
||||
< (latter not available if the |g:netrw_nogx| variable exists)
|
||||
* hitting gx with the cursor atop the file path or alternatively x
|
||||
in a netrw buffer; the former can be disabled by defining the
|
||||
|g:netrw_nogx| variable
|
||||
* when in command line, typing :Open <path>, see |:Open| below.
|
||||
|
||||
Netrw determines which special handler by the following method:
|
||||
|
||||
* if |g:netrw_browsex_viewer| exists, then it will be used to attempt to
|
||||
view files. Examples of useful settings (place into your <.vimrc>): >
|
||||
|
||||
:let g:netrw_browsex_viewer= "kfmclient exec"
|
||||
< or >
|
||||
:let g:netrw_browsex_viewer= "xdg-open"
|
||||
<
|
||||
If g:netrw_browsex_viewer == '-', then netrwFileHandlers#Invoke() will be
|
||||
used instead (see |netrw_filehandler|).
|
||||
|
||||
If the viewer you wish to use does not support handling of a remote URL
|
||||
directory, set |g:netrw_browsex_support_remote| to 0.
|
||||
* for Windows 32 or 64, the URL and FileProtocolHandler dlls are used.
|
||||
* for Gnome (with gnome-open): gnome-open is used.
|
||||
* for KDE (with kfmclient) : kfmclient is used
|
||||
* for Mac OS X : open is used.
|
||||
* otherwise the netrwFileHandler plugin is used.
|
||||
|
||||
The file's suffix is used by these various approaches to determine an
|
||||
appropriate application to use to "handle" these files. Such things as
|
||||
OpenOffice (*.sfx), visualization (*.jpg, *.gif, etc), and PostScript (*.ps,
|
||||
*.eps) can be handled.
|
||||
|
||||
The gx mapping extends to all buffers; apply "gx" while atop a word and netrw
|
||||
will apply a special handler to it (like "x" works when in a netrw buffer).
|
||||
One may also use visual mode (see |visual-start|) to select the text that the
|
||||
special handler will use. Normally gx uses expand("<cfile>") to pick up the
|
||||
text under the cursor; one may change what |expand()| uses via the
|
||||
special handler will use. Normally gx checks for a close-by URL or file name
|
||||
to pick up the text under the cursor; one may change what |expand()| uses via the
|
||||
|g:netrw_gx| variable (options include "<cword>", "<cWORD>"). Note that
|
||||
expand("<cfile>") depends on the |'isfname'| setting. Alternatively, one may
|
||||
select the text to be used by gx by making a visual selection (see
|
||||
|visual-block|) and then pressing gx.
|
||||
|
||||
The selection function can be adapted for each filetype by adding a function
|
||||
`Netrw_get_URL_<filetype>`, where <filetype> is given by the 'filetype'.
|
||||
The function should return the URL or file name to be used by gx, and will
|
||||
fall back to the default behavior if it returns an empty string.
|
||||
For example, special handlers for links Markdown and HTML are
|
||||
|
||||
" make gx work on concealed links regardless of exact cursor position: >
|
||||
|
||||
function Netrw_get_URL_markdown()
|
||||
" markdown URL such as [link text](http://ya.ru 'yandex search')
|
||||
try
|
||||
let save_view = winsaveview()
|
||||
if searchpair('\[.\{-}\](', '', ')\zs', 'cbW', '', line('.')) > 0
|
||||
return matchstr(getline('.')[col('.')-1:],
|
||||
\ '\[.\{-}\](\zs' .. g:netrw_regex_url .. '\ze\(\s\+.\{-}\)\?)')
|
||||
endif
|
||||
return ''
|
||||
finally
|
||||
call winrestview(save_view)
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
function Netrw_get_URL_html()
|
||||
" HTML URL such as <a href='http://www.python.org'>Python is here</a>
|
||||
" <a href="http://www.python.org"/>
|
||||
try
|
||||
let save_view = winsaveview()
|
||||
if searchpair('<a\s\+href=', '', '\%(</a>\|/>\)\zs', 'cbW', '', line('.')) > 0
|
||||
return matchstr(getline('.')[col('.') - 1 : ],
|
||||
\ 'href=["'.."'"..']\?\zs\S\{-}\ze["'.."'"..']\?/\?>')
|
||||
endif
|
||||
return ''
|
||||
finally
|
||||
call winrestview(save_view)
|
||||
endtry
|
||||
endfunction
|
||||
<
|
||||
Other than a file path, the text under the cursor may be a URL. Netrw uses
|
||||
by default the following regular expression to determine if the text under the
|
||||
cursor is a URL:
|
||||
>
|
||||
:let g:netrw_regex_url = '\%(\%(http\|ftp\|irc\)s\?\|file\)://\S\{-}'
|
||||
<
|
||||
Associated setting variables:
|
||||
|g:netrw_gx| control how gx picks up the text under the cursor
|
||||
|g:netrw_nogx| prevent gx map while editing
|
||||
|g:netrw_suppress_gx_mesg| controls gx's suppression of browser messages
|
||||
|
||||
*netrw_filehandler*
|
||||
OPENING FILES AND LAUNCHING APPS *netrw-gx* *:Open* *:Launch* {{{2
|
||||
|
||||
When |g:netrw_browsex_viewer| exists and is "-", then netrw will attempt to
|
||||
handle the special file with a vim function. The "x" map applies a function
|
||||
to a file, based on its extension. Of course, the handler function must exist
|
||||
for it to be called!
|
||||
>
|
||||
Ex. mypgm.html x -> NFH_html("scp://user@host/some/path/mypgm.html")
|
||||
Netrw determines which special handler by the following method:
|
||||
|
||||
< Users may write their own netrw File Handler functions to
|
||||
support more suffixes with special handling. See
|
||||
<autoload/netrwFileHandlers.vim> for examples on how to make
|
||||
file handler functions. As an example: >
|
||||
* if |g:netrw_browsex_viewer| exists, then it will be used to attempt to
|
||||
view files.
|
||||
If the viewer you wish to use does not support handling of a remote URL
|
||||
directory, set |g:netrw_browsex_support_remote| to 0.
|
||||
* otherwise:
|
||||
|
||||
" NFH_suffix(filename)
|
||||
fun! NFH_suffix(filename)
|
||||
..do something special with filename..
|
||||
endfun
|
||||
* for Windows : explorer.exe is used
|
||||
* for Mac OS X : open is used.
|
||||
* for Linux : xdg-open is used.
|
||||
|
||||
To open a path (or URL) <path> by the appropriate handler, type >
|
||||
|
||||
:Open <path>
|
||||
<
|
||||
These functions need to be defined in some file in your .vim/plugin
|
||||
(vimfiles\plugin) directory. Vim's function names may not have punctuation
|
||||
characters (except for the underscore) in them. To support suffices that
|
||||
contain such characters, netrw will first convert the suffix using the
|
||||
following table: >
|
||||
No escaping, neither for the shell nor for Vim's command-line, is needed.
|
||||
|
||||
@ -> AT ! -> EXCLAMATION % -> PERCENT
|
||||
: -> COLON = -> EQUAL ? -> QUESTION
|
||||
, -> COMMA - -> MINUS ; -> SEMICOLON
|
||||
$ -> DOLLAR + -> PLUS ~ -> TILDE
|
||||
To launch a specific application <app> <args>, often <args> being <path> >
|
||||
|
||||
:Launch <app> <args>.
|
||||
|
||||
Since <args> can be arbitrarily complex, in particular contain many file
|
||||
paths, the escaping is left to the user.
|
||||
|
||||
If you disabled the netrw plugin by setting g:loaded_netrwPlugin (see
|
||||
|netrw-noload|), then you can use >
|
||||
|
||||
:call netrw#Launch('<app> <args>')
|
||||
:call netrw#Open('<path>')
|
||||
<
|
||||
So, for example: >
|
||||
|
||||
file.rcs,v -> NFH_rcsCOMMAv()
|
||||
<
|
||||
If more such translations are necessary, please send me email: >
|
||||
NcampObell@SdrPchip.AorgM-NOSPAM
|
||||
with a request. (remove the embedded NOSPAM first)
|
||||
|
||||
Associated setting variable: |g:netrw_browsex_viewer|
|
||||
|
||||
*netrw-curdir*
|
||||
DELETING BOOKMARKS *netrw-mB* {{{2
|
||||
|
||||
@@ -2583,12 +2591,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
*g:netrw_browsex_viewer* specify user's preference for a viewer: >
|
||||
"kfmclient exec"
|
||||
"gnome-open"
|
||||
< If >
|
||||
"-"
|
||||
< is used, then netrwFileHandler() will look for
|
||||
a script/function to handle the given
|
||||
extension. (see |netrw_filehandler|).
|
||||
|
||||
<
|
||||
*g:netrw_browsex_support_remote*
|
||||
specify if the specified viewer supports a
|
||||
remote URL. (see |netrw-handler|).
|
||||
@@ -2655,10 +2658,34 @@ your browsing preferences. (see also: |netrw-settings|)
|
||||
netrw last saw |g:netrw_cursor| >= 5 or when
|
||||
netrw was initially run.
|
||||
|
||||
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
||||
".bz2" : "bunzip2" ,
|
||||
".zip" : "unzip" ,
|
||||
".tar" : "tar -xf"}
|
||||
*g:netrw_decompress* = { '.lz4': 'lz4 -d',
|
||||
'.lzo': 'lzop -d',
|
||||
'.lz': 'lzip -dk',
|
||||
'.7z': '7za x',
|
||||
'.001': '7za x',
|
||||
'.tar.bz': 'tar -xvjf',
|
||||
'.tar.bz2': 'tar -xvjf',
|
||||
'.tbz': 'tar -xvjf',
|
||||
'.tbz2': 'tar -xvjf',
|
||||
'.tar.gz': 'tar -xvzf',
|
||||
'.tgz': 'tar -xvzf',
|
||||
'.tar.zst': 'tar --use-compress-program=unzstd -xvf',
|
||||
'.tzst': 'tar --use-compress-program=unzstd -xvf',
|
||||
'.tar': 'tar -xvf',
|
||||
'.zip': 'unzip',
|
||||
'.bz': 'bunzip2 -k',
|
||||
'.bz2': 'bunzip2 -k',
|
||||
'.gz': 'gunzip -k',
|
||||
'.lzma': 'unlzma -T0 -k',
|
||||
'.xz': 'unxz -T0 -k',
|
||||
'.zst': 'zstd -T0 -d',
|
||||
'.Z': 'uncompress -k',
|
||||
'.rar': 'unrar x -ad',
|
||||
'.tar.lzma': 'tar --lzma -xvf',
|
||||
'.tlz': 'tar --lzma -xvf',
|
||||
'.tar.xz': 'tar -xvJf',
|
||||
'.txz': 'tar -xvJf'}
|
||||
|
||||
A dictionary mapping suffices to
|
||||
decompression programs.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_paren.txt* For Vim version 9.1. Last change: 2013 May 08
|
||||
*pi_paren.txt* For Vim version 9.1. Last change: 2024 Nov 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -10,6 +10,7 @@ The functionality mentioned here is a |standard-plugin|.
|
||||
This plugin is only available if 'compatible' is not set.
|
||||
|
||||
You can avoid loading this plugin by setting the "loaded_matchparen" variable: >
|
||||
|
||||
:let loaded_matchparen = 1
|
||||
|
||||
The plugin installs CursorMoved, CursorMovedI and WinEnter autocommands to
|
||||
@@ -29,6 +30,16 @@ the ":highlight" command. Example: >
|
||||
|
||||
:hi MatchParen ctermbg=blue guibg=lightblue
|
||||
|
||||
By default the plugin will highlight both the paren under the cursor and the
|
||||
matching one using the |hl-MatchParen| highlighting group. This may result in
|
||||
the cursor briefly disappearing from the screen as the MatchParen colors take
|
||||
over the cursor highlight. To prevent this from happening and have the plugin
|
||||
only highlight the matching paren and not the one under the cursor
|
||||
(effectively leaving the cursor style unchanged), you can set the
|
||||
"matchparen_disable_cursor_hl" variable: >
|
||||
|
||||
:let matchparen_disable_cursor_hl = 1
|
||||
|
||||
The characters to be matched come from the 'matchpairs' option. You can
|
||||
change the value to highlight different matches. Note that not everything is
|
||||
possible. For example, you can't highlight single or double quotes, because
|
||||
@@ -46,10 +57,10 @@ are:
|
||||
closed folds.
|
||||
- 'synmaxcol' times 2 bytes before or after the cursor to avoid a delay
|
||||
in a long line with syntax highlighting.
|
||||
- A timeout of 300 msec (60 msec in Insert mode). This can be changed with the
|
||||
g:matchparen_timeout and g:matchparen_insert_timeout variables and their
|
||||
buffer-local equivalents b:matchparen_timeout and
|
||||
b:matchparen_insert_timeout.
|
||||
- A timeout of 300 msec (60 msec in Insert mode). This can be changed with
|
||||
the "g:matchparen_timeout" and "g:matchparen_insert_timeout" variables and
|
||||
their buffer-local equivalents "b:matchparen_timeout" and
|
||||
"b:matchparen_insert_timeout".
|
||||
|
||||
If you would like the |%| command to work better, the matchit plugin can be
|
||||
used, see |matchit-install|. This plugin also helps to skip matches in
|
||||
|
||||
59
runtime/doc/pi_tutor.txt
Normal file
59
runtime/doc/pi_tutor.txt
Normal file
@@ -0,0 +1,59 @@
|
||||
*pi_tutor.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
INTERACTIVE TUTORIALS FOR VIM *vim-tutor-mode*
|
||||
|
||||
vim-tutor-mode provides a system to follow and create interactive tutorials
|
||||
for vim and third party plugins. It replaces the venerable `vimtutor` system.
|
||||
|
||||
=============================================================================
|
||||
1. Usage *vim-tutor-usage*
|
||||
|
||||
vim-tutor-mode tutorials are hypertext documents, they have rich text and
|
||||
contain links. To stand out from the rest of the text, links are underlined.
|
||||
You can follow them by placing the cursor over them and pressing <Enter>, or
|
||||
by double-clicking them.
|
||||
|
||||
1.1 Commands
|
||||
------------
|
||||
*:Tutor*
|
||||
:Tutor [tutorial] Opens a tutorial. Command-line completion for
|
||||
[tutorial] is provided, the candidates are a list of
|
||||
".tutor" files found in the "tutor/<lang>/" folder in
|
||||
the 'runtimepath'. Tutorials prefixed with "vim-"
|
||||
will always be shown first.
|
||||
|
||||
If no [tutorial] is provided, the command starts the
|
||||
"vim-01-beginner" tutorial, which is equivalent to
|
||||
Vim's `vimtutor`, chapter 1.
|
||||
|
||||
Uses the translated tutorial for the current message
|
||||
language if possible (|v:lang|), e.g. to open the
|
||||
chapter 1 of the Italian tutor, use: >
|
||||
|
||||
:lang it_IT.utf-8
|
||||
:Tutor
|
||||
<
|
||||
=============================================================================
|
||||
2. Creating tutorials *vim-tutor-create*
|
||||
|
||||
Writing vim-tutor-mode tutorials is easy. For an overview of the format used,
|
||||
please consult the "tutor.tutor" file: >
|
||||
|
||||
:Tutor tutor
|
||||
<
|
||||
New tutorials must be placed in the 'tutor/' folder in the 'runtimepath'
|
||||
to be detected by the :Tutor command.
|
||||
|
||||
It is recommended to use a less formal style when writing tutorials than in
|
||||
regular documentation (unless the content requires it).
|
||||
|
||||
=============================================================================
|
||||
3. Contributing
|
||||
|
||||
Development of the plugin is done over at github [1]. Feel free to report
|
||||
issues and make suggestions.
|
||||
|
||||
[1]: https://github.com/fmoralesc/vim-tutor-mode
|
||||
|
||||
=============================================================================
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickfix.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*quickfix.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -361,7 +361,7 @@ processing a quickfix or location list command, it will be aborted.
|
||||
Example: >
|
||||
:g/mypattern/caddexpr expand("%") .. ":" .. line(".") .. ":" .. getline(".")
|
||||
<
|
||||
*:lad* *:addd* *:laddexpr*
|
||||
*:lad* *:ladd* *:laddexpr*
|
||||
:lad[dexpr] {expr} Same as ":caddexpr", except the location list for the
|
||||
current window is used instead of the quickfix list.
|
||||
|
||||
@@ -1331,10 +1331,171 @@ g:compiler_gcc_ignore_unmatched_lines
|
||||
JAVAC *compiler-javac*
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
g:javac_makeprg_params variable. For example: >
|
||||
b/g:javac_makeprg_params variable. For example: >
|
||||
|
||||
let g:javac_makeprg_params = "-Xlint:all -encoding utf-8"
|
||||
<
|
||||
|
||||
MAVEN *compiler-maven*
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
b/g:maven_makeprg_params variable. For example: >
|
||||
|
||||
let g:maven_makeprg_params = "-DskipTests -U -X"
|
||||
|
||||
SPOTBUGS *compiler-spotbugs*
|
||||
|
||||
SpotBugs is a static analysis tool that can be used to find bugs in Java.
|
||||
It scans the Java bytecode of all classes in the currently open buffer.
|
||||
(Therefore, `:compiler! spotbugs` is not supported.)
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
"b:" or "g:spotbugs_makeprg_params" variable. For example: >vim
|
||||
|
||||
let b:spotbugs_makeprg_params = "-longBugCodes -effort:max -low"
|
||||
|
||||
The global default is "-workHard -experimental".
|
||||
|
||||
By default, the class files are searched in the directory where the source
|
||||
files are placed. However, typical Java projects use distinct directories
|
||||
for source files and class files. To make both known to SpotBugs, assign
|
||||
their paths (distinct and relative to their common root directory) to the
|
||||
following properties (using the example of a common Maven project): >vim
|
||||
|
||||
let g:spotbugs_properties = {
|
||||
\ 'sourceDirPath': ['src/main/java'],
|
||||
\ 'classDirPath': ['target/classes'],
|
||||
\ 'testSourceDirPath': ['src/test/java'],
|
||||
\ 'testClassDirPath': ['target/test-classes'],
|
||||
\ }
|
||||
|
||||
Note that source and class path entries are expected to come in pairs: define
|
||||
both "sourceDirPath" and "classDirPath" when you are considering at least one,
|
||||
and apply the same logic to "testSourceDirPath" and "testClassDirPath".
|
||||
Note that values for the path keys describe only for SpotBugs where to look
|
||||
for files; refer to the documentation for particular compiler plugins for more
|
||||
information.
|
||||
|
||||
The default pre- and post-compiler actions are provided for Ant, Maven, and
|
||||
Javac compiler plugins and can be selected by assigning the name of a compiler
|
||||
plugin (`ant`, `maven`, or `javac`) to the "compiler" key: >vim
|
||||
|
||||
let g:spotbugs_properties = {
|
||||
\ 'compiler': 'maven',
|
||||
\ }
|
||||
|
||||
This single setting is essentially equivalent to all the settings below, with
|
||||
the exception made for the "PreCompilerAction" and "PreCompilerTestAction"
|
||||
values: their listed |Funcref|s will obtain no-op implementations whereas the
|
||||
implicit Funcrefs of the "compiler" key will obtain the requested defaults if
|
||||
available. >vim
|
||||
|
||||
let g:spotbugs_properties = {
|
||||
\ 'PreCompilerAction':
|
||||
\ function('spotbugs#DefaultPreCompilerAction'),
|
||||
\ 'PreCompilerTestAction':
|
||||
\ function('spotbugs#DefaultPreCompilerTestAction'),
|
||||
\ 'PostCompilerAction':
|
||||
\ function('spotbugs#DefaultPostCompilerAction'),
|
||||
\ 'sourceDirPath': ['src/main/java'],
|
||||
\ 'classDirPath': ['target/classes'],
|
||||
\ 'testSourceDirPath': ['src/test/java'],
|
||||
\ 'testClassDirPath': ['target/test-classes'],
|
||||
\ }
|
||||
|
||||
With default actions, the compiler of choice will attempt to rebuild the class
|
||||
files for the buffer (and possibly for the whole project) as soon as a Java
|
||||
syntax file is loaded; then, `spotbugs` will attempt to analyze the quality of
|
||||
the compilation unit of the buffer.
|
||||
|
||||
Vim commands proficient in 'makeprg' [0] can be composed with default actions.
|
||||
Begin by considering which of the supported keys, "DefaultPreCompilerCommand",
|
||||
"DefaultPreCompilerTestCommand", or "DefaultPostCompilerCommand", you need to
|
||||
write an implementation for, observing that each of these keys corresponds to
|
||||
a particular "*Action" key. Follow it by defining a new function that always
|
||||
declares an only parameter of type string and puts to use a command equivalent
|
||||
of |:make|, and assigning its |Funcref| to the selected key. For example:
|
||||
>vim
|
||||
function! GenericPostCompilerCommand(arguments) abort
|
||||
execute 'make ' . a:arguments
|
||||
endfunction
|
||||
|
||||
let g:spotbugs_properties = {
|
||||
\ 'DefaultPostCompilerCommand':
|
||||
\ function('GenericPostCompilerCommand'),
|
||||
\ }
|
||||
|
||||
When default actions are not suited to a desired workflow, proceed by writing
|
||||
arbitrary functions yourself and matching their Funcrefs to the supported
|
||||
keys: "PreCompilerAction", "PreCompilerTestAction", and "PostCompilerAction".
|
||||
|
||||
The next example re-implements the default pre-compiler actions for a Maven
|
||||
project and requests other default Maven settings with the "compiler" entry:
|
||||
>vim
|
||||
function! MavenPreCompilerAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler maven
|
||||
make compile
|
||||
cc
|
||||
endfunction
|
||||
|
||||
function! MavenPreCompilerTestAction() abort
|
||||
call spotbugs#DeleteClassFiles()
|
||||
compiler maven
|
||||
make test-compile
|
||||
cc
|
||||
endfunction
|
||||
|
||||
let g:spotbugs_properties = {
|
||||
\ 'compiler': 'maven',
|
||||
\ 'PreCompilerAction':
|
||||
\ function('MavenPreCompilerAction'),
|
||||
\ 'PreCompilerTestAction':
|
||||
\ function('MavenPreCompilerTestAction'),
|
||||
\ }
|
||||
|
||||
Note that all entered custom settings will take precedence over the matching
|
||||
default settings in "g:spotbugs_properties".
|
||||
Note that it is necessary to notify the plugin of the result of a pre-compiler
|
||||
action before further work can be undertaken. Using |:cc| after |:make| (or
|
||||
|:ll| after |:lmake|) as the last command of an action is the supported means
|
||||
of such communication.
|
||||
|
||||
Two commands, "SpotBugsRemoveBufferAutocmd" and "SpotBugsDefineBufferAutocmd",
|
||||
are provided to toggle actions for buffer-local autocommands. For example, to
|
||||
also run actions on any |BufWritePost| and |SigUSR1| event, add these lines to
|
||||
`~/.vim/after/ftplugin/java.vim`: >vim
|
||||
|
||||
if exists(':SpotBugsDefineBufferAutocmd') == 2
|
||||
SpotBugsDefineBufferAutocmd BufWritePost SigUSR1
|
||||
endif
|
||||
|
||||
Otherwise, you can turn to `:doautocmd java_spotbugs User` at any time.
|
||||
|
||||
The "g:spotbugs_properties" variable is consulted by the Java filetype plugin
|
||||
(|ft-java-plugin|) to arrange for the described automation, and, therefore, it
|
||||
must be defined before |FileType| events can take place for the buffers loaded
|
||||
with Java source files. It could, for example, be set in a project-local
|
||||
|vimrc| loaded by [1].
|
||||
|
||||
Both "g:spotbugs_properties" and "b:spotbugs_properties" are recognized and
|
||||
must be modifiable (|:unlockvar|). The "*Command" entries are always treated
|
||||
as global functions to be shared among all Java buffers.
|
||||
|
||||
The SpotBugs Java library and, by extension, its distributed shell scripts do
|
||||
not support in the `-textui` mode listed pathnames with directory filenames
|
||||
that contain blank characters [2]. To work around this limitation, consider
|
||||
making a symbolic link to such a directory from a directory that does not have
|
||||
blank characters in its name and passing this information to SpotBugs: >vim
|
||||
|
||||
let g:spotbugs_alternative_path = {
|
||||
\ 'fromPath': 'path/to/dir_without_blanks',
|
||||
\ 'toPath': 'path/to/dir with blanks',
|
||||
\ }
|
||||
|
||||
[0] https://github.com/Konfekt/vim-compilers
|
||||
[1] https://github.com/MarcWeber/vim-addon-local-vimrc
|
||||
[2] https://github.com/spotbugs/spotbugs/issues/909
|
||||
|
||||
GNU MAKE *compiler-make*
|
||||
|
||||
Since the default make program is "make", the compiler plugin for make,
|
||||
@@ -1405,6 +1566,32 @@ being checked. To disable this set g:perl_compiler_force_warnings to a zero
|
||||
value. For example: >
|
||||
let g:perl_compiler_force_warnings = 0
|
||||
|
||||
MYPY TYPE CHECKER *compiler-mypy*
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
b/g:mypy_makeprg_params variable. For example: >
|
||||
|
||||
let b:mypy_makeprg_params = "--warn-unused-ignores"
|
||||
|
||||
The global default is "--strict --ignore-missing-imports".
|
||||
|
||||
RUFF LINTER *compiler-ruff*
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
b/g:ruff_makeprg_params variable. For example: >
|
||||
|
||||
let b:ruff_makeprg_params = "--max-line-length "..&textwidth
|
||||
|
||||
The global default is "--preview".
|
||||
|
||||
PYLINT LINTER *compiler-pylint*
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
b/g:pylint_makeprg_params variable. For example: >
|
||||
|
||||
let b:pylint_makeprg_params = "--max-line-length "..&textwidth
|
||||
|
||||
The global default is "--jobs=0" to use (almost) all cores.
|
||||
|
||||
PYUNIT COMPILER *compiler-pyunit*
|
||||
|
||||
@@ -1424,6 +1611,14 @@ Useful values for the 'makeprg' options therefore are:
|
||||
|
||||
Also see http://vim.sourceforge.net/tip_view.php?tip_id=280.
|
||||
|
||||
PYTEST COMPILER *compiler-pytest*
|
||||
|
||||
Commonly used compiler options can be added to 'makeprg' by setting the
|
||||
b/g:pytest_makeprg_params variable. For example: >
|
||||
|
||||
let b:pytest_makeprg_params = "--verbose --no-summary --disable-warnings"
|
||||
|
||||
The global default is "--tb=short --quiet"; Python warnings are suppressed.
|
||||
|
||||
TEX COMPILER *compiler-tex*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*quickref.txt* For Vim version 9.1. Last change: 2024 Mar 03
|
||||
*quickref.txt* For Vim version 9.1. Last change: 2024 Nov 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -707,6 +707,7 @@ Short explanation of each option: *option-list*
|
||||
'fileignorecase' 'fic' ignore case when using file names
|
||||
'filetype' 'ft' type of file, used for autocommands
|
||||
'fillchars' 'fcs' characters to use for displaying special items
|
||||
'findfunc' 'ffu' function to be called for the |:find| command
|
||||
'fixendofline' 'fixeol' make sure last line in file has <EOL>
|
||||
'fkmap' 'fk' obsolete option for Farsi
|
||||
'foldclose' 'fcl' close a fold when the cursor leaves it
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*repeat.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*repeat.txt* For Vim version 9.1. Last change: 2024 Oct 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1398,9 +1398,9 @@ For example, to profile the one_script.vim script file: >
|
||||
clear the profiling statistics and start profiling again.
|
||||
|
||||
:prof[ile] pause
|
||||
Don't profile until the following `:profile continue`. Can be
|
||||
used when doing something that should not be counted (e.g., an
|
||||
external command). Does not nest.
|
||||
Stop profiling until the next `:profile continue` command.
|
||||
Can be used when doing something that should not be counted
|
||||
(e.g., an external command). Does not nest.
|
||||
|
||||
:prof[ile] continue
|
||||
Continue profiling after `:profile pause`.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 9.1. Last change: 2024 Oct 13
|
||||
*syntax.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -883,12 +883,15 @@ There are many types of assembly languages that all use the same file name
|
||||
extensions. Therefore you will have to select the type yourself, or add a
|
||||
line in the assembly file that Vim will recognize. Currently these syntax
|
||||
files are included:
|
||||
asm GNU assembly (the default)
|
||||
asm GNU assembly (usually have .s or .S extension and were
|
||||
already built using C compiler such as GCC or CLANG)
|
||||
asm68k Motorola 680x0 assembly
|
||||
asmh8300 Hitachi H-8300 version of GNU assembly
|
||||
ia64 Intel Itanium 64
|
||||
fasm Flat assembly (http://flatassembler.net)
|
||||
masm Microsoft assembly (probably works for any 80x86)
|
||||
masm Microsoft assembly (.masm files are compiled with
|
||||
Microsoft's Macro Assembler. This is only supported
|
||||
for x86, x86_64, ARM and AARCH64 CPU families)
|
||||
nasm Netwide assembly
|
||||
tasm Turbo Assembly (with opcodes 80x86 up to Pentium, and
|
||||
MMX)
|
||||
@@ -1679,20 +1682,20 @@ on" command in your .vimrc file.
|
||||
When you edit an existing Fortran file, the syntax script will assume free
|
||||
source form if the fortran_free_source variable has been set, and assumes
|
||||
fixed source form if the fortran_fixed_source variable has been set. Suppose
|
||||
neither of these variables have been set. In that case, the syntax script attempts to
|
||||
determine which source form has been used by examining the file extension
|
||||
using conventions common to the ifort, gfortran, Cray, NAG, and PathScale
|
||||
compilers (.f, .for, .f77 for fixed-source, .f90, .f95, .f03, .f08 for
|
||||
free-source). No default is used for the .fpp and .ftn file extensions because
|
||||
different compilers treat them differently. If none of this works, then the
|
||||
script examines the first five columns of the first 500 lines of your file. If
|
||||
no signs of free source form are detected, then the file is assumed to be in
|
||||
fixed source form. The algorithm should work in the vast majority of cases.
|
||||
In some cases, such as a file that begins with 500 or more full-line comments,
|
||||
the script may incorrectly decide that the code is in fixed form. If that
|
||||
happens, just add a non-comment statement beginning anywhere in the first five
|
||||
columns of the first twenty-five lines, save (:w), and then reload (:e!) the
|
||||
file.
|
||||
neither of these variables have been set. In that case, the syntax script
|
||||
attempts to determine which source form has been used by examining the file
|
||||
extension using conventions common to the ifort, gfortran, Cray, NAG, and
|
||||
PathScale compilers (.f, .for, .f77 for fixed-source, .f90, .f95, .f03, .f08
|
||||
for free-source). No default is used for the .fpp and .ftn file extensions
|
||||
because different compilers treat them differently. If none of this works,
|
||||
then the script examines the first five columns of the first 500 lines of your
|
||||
file. If no signs of free source form are detected, then the file is assumed
|
||||
to be in fixed source form. The algorithm should work in the vast majority of
|
||||
cases. In some cases, such as a file that begins with 500 or more full-line
|
||||
comments, the script may incorrectly decide that the code is in fixed form.
|
||||
If that happens, just add a non-comment statement beginning anywhere in the
|
||||
first five columns of the first twenty-five lines, save (:w), and then reload
|
||||
(:e!) the file.
|
||||
|
||||
Vendor extensions ~
|
||||
Fixed-form Fortran requires a maximum line length of 72 characters but the
|
||||
@@ -2226,9 +2229,9 @@ define the vim variable 'lace_case_insensitive' in your startup file: >
|
||||
LF (LFRC) *lf.vim* *ft-lf-syntax* *g:lf_shell_syntax*
|
||||
*b:lf_shell_syntax*
|
||||
|
||||
For the lf file manager configuration files (lfrc) the shell commands
|
||||
syntax highlighting can be changed globally and per buffer by setting
|
||||
a different 'include' command search pattern using these variables:
|
||||
For the lf file manager configuration files (lfrc) the shell commands syntax
|
||||
highlighting can be changed globally and per buffer by setting a different
|
||||
'include' command search pattern using these variables: >
|
||||
let g:lf_shell_syntax = "syntax/dosbatch.vim"
|
||||
let b:lf_shell_syntax = "syntax/zsh.vim"
|
||||
|
||||
@@ -2538,9 +2541,10 @@ set "msql_minlines" to the value you desire. Example: >
|
||||
:let msql_minlines = 200
|
||||
|
||||
|
||||
NEOMUTT *neomutt.vim* *ft-neomuttrc-syntax* *ft-neomuttlog-syntax*
|
||||
NEOMUTT *neomutt.vim* *ft-neomuttrc-syntax*
|
||||
*ft-neomuttlog-syntax*
|
||||
|
||||
To disable the default NeoMutt log colors >
|
||||
To disable the default NeoMutt log colors: >
|
||||
|
||||
:let g:neolog_disable_default_colors = 1
|
||||
|
||||
@@ -2669,7 +2673,7 @@ To specify elements that should not be concealed, set the following variable: >
|
||||
|
||||
:let g:pandoc#syntax#conceal#blacklist = []
|
||||
|
||||
This is a list of the rules wich can be used here:
|
||||
This is a list of the rules which can be used here:
|
||||
|
||||
- titleblock
|
||||
- image
|
||||
@@ -2710,9 +2714,9 @@ specified. Default = 1 >
|
||||
|
||||
:let g:pandoc#syntax#codeblocks#embeds#use = 1
|
||||
|
||||
For specify what languages and using what syntax files to highlight embeds. This is a
|
||||
list of language names. When the language pandoc and vim use don't match, you
|
||||
can use the "PANDOC=VIM" syntax. For example: >
|
||||
For specify what languages and using what syntax files to highlight embeds.
|
||||
This is a list of language names. When the language pandoc and vim use don't
|
||||
match, you can use the "PANDOC=VIM" syntax. For example: >
|
||||
|
||||
:let g:pandoc#syntax#codeblocks#embeds#langs = ["ruby", "bash=sh"]
|
||||
|
||||
@@ -3922,7 +3926,7 @@ set "tf_minlines" to the value you desire. Example: >
|
||||
:let tf_minlines = your choice
|
||||
<
|
||||
TYPESCRIPT *typescript.vim* *ft-typescript-syntax*
|
||||
*typescriptreact.vim* *ft-typescriptreact-syntax*
|
||||
*typescriptreact.vim* *ft-typescriptreact-syntax*
|
||||
|
||||
There is one option to control the TypeScript syntax highlighting.
|
||||
|
||||
@@ -5309,12 +5313,15 @@ of colors by using the `:colorscheme` command, for example: >
|
||||
This is basically the same as >
|
||||
:echo g:colors_name
|
||||
< In case g:colors_name has not been defined :colo will
|
||||
output "default". When compiled without the |+eval|
|
||||
feature it will output "unknown".
|
||||
output "default". Its palette is defined in the file
|
||||
"$VIMRUNTIME/syntax/syncolor.vim" and is based on
|
||||
legacy versions of peachpuff and desert. When compiled
|
||||
without the |+eval| feature it will output "unknown".
|
||||
|
||||
:colo[rscheme] {name} Load color scheme {name}. This searches 'runtimepath'
|
||||
for the file "colors/{name}.vim". The first one that
|
||||
is found is loaded.
|
||||
Use `:colo default` to load the default colorscheme.
|
||||
Also searches all plugins in 'packpath', first below
|
||||
"start" and then under "opt".
|
||||
|
||||
@@ -5718,8 +5725,8 @@ guisp={color-name} *highlight-guisp*
|
||||
:highlight Comment guifg=#11f0c3 guibg=#ff00ff
|
||||
<
|
||||
If you are authoring a color scheme and use the same hexadecimal value
|
||||
repeatedly, you can define a (lower case) name for it in |v:colornames|.
|
||||
For example: >
|
||||
repeatedly, you can define a (lower case) name for it in
|
||||
|v:colornames|. For example: >
|
||||
|
||||
# provide a default value for this color but allow the user to
|
||||
# override it.
|
||||
@@ -5850,6 +5857,8 @@ PmenuThumb Popup menu: Thumb of the scrollbar.
|
||||
PmenuMatch Popup menu: Matched text in normal item.
|
||||
*hl-PmenuMatchSel*
|
||||
PmenuMatchSel Popup menu: Matched text in selected item.
|
||||
*hl-ComplMatchIns*
|
||||
ComplMatchIns Matched text of the currently inserted completion.
|
||||
*hl-PopupNotification*
|
||||
PopupNotification
|
||||
Popup window created with |popup_notification()|. If not
|
||||
@@ -6139,7 +6148,8 @@ This will set the "w:current_syntax" variable to "foo". The value of
|
||||
restoring "b:current_syntax", since the syntax files do set
|
||||
"b:current_syntax". The value set by the syntax file is assigned to
|
||||
"w:current_syntax".
|
||||
Note: This resets the 'spell', 'spellcapcheck' and 'spellfile' options.
|
||||
Note: This resets the 'spell', 'spellcapcheck', 'spellfile' and 'spelloptions'
|
||||
options.
|
||||
|
||||
Once a window has its own syntax, syntax commands executed from other windows
|
||||
on the same buffer (including :syntax clear) have no effect. Conversely,
|
||||
|
||||
@@ -269,6 +269,7 @@ $quote eval.txt /*$quote*
|
||||
'fex' options.txt /*'fex'*
|
||||
'ff' options.txt /*'ff'*
|
||||
'ffs' options.txt /*'ffs'*
|
||||
'ffu' options.txt /*'ffu'*
|
||||
'fic' options.txt /*'fic'*
|
||||
'fileencoding' options.txt /*'fileencoding'*
|
||||
'fileencodings' options.txt /*'fileencodings'*
|
||||
@@ -277,6 +278,7 @@ $quote eval.txt /*$quote*
|
||||
'fileignorecase' options.txt /*'fileignorecase'*
|
||||
'filetype' options.txt /*'filetype'*
|
||||
'fillchars' options.txt /*'fillchars'*
|
||||
'findfunc' options.txt /*'findfunc'*
|
||||
'fixendofline' options.txt /*'fixendofline'*
|
||||
'fixeol' options.txt /*'fixeol'*
|
||||
'fk' options.txt /*'fk'*
|
||||
@@ -497,6 +499,7 @@ $quote eval.txt /*$quote*
|
||||
'menc' options.txt /*'menc'*
|
||||
'menuitems' options.txt /*'menuitems'*
|
||||
'mesg' vi_diff.txt /*'mesg'*
|
||||
'messagesopt' options.txt /*'messagesopt'*
|
||||
'mfd' options.txt /*'mfd'*
|
||||
'mh' options.txt /*'mh'*
|
||||
'mis' options.txt /*'mis'*
|
||||
@@ -514,6 +517,7 @@ $quote eval.txt /*$quote*
|
||||
'modelines' options.txt /*'modelines'*
|
||||
'modifiable' options.txt /*'modifiable'*
|
||||
'modified' options.txt /*'modified'*
|
||||
'mopt' options.txt /*'mopt'*
|
||||
'more' options.txt /*'more'*
|
||||
'mouse' options.txt /*'mouse'*
|
||||
'mousef' options.txt /*'mousef'*
|
||||
@@ -2123,10 +2127,12 @@ $quote eval.txt /*$quote*
|
||||
:GnatFind ft_ada.txt /*:GnatFind*
|
||||
:GnatPretty ft_ada.txt /*:GnatPretty*
|
||||
:GnatTags ft_ada.txt /*:GnatTags*
|
||||
:HelpToc helphelp.txt /*:HelpToc*
|
||||
:Hexplore pi_netrw.txt /*:Hexplore*
|
||||
:LP pi_logipat.txt /*:LP*
|
||||
:LPE pi_logipat.txt /*:LPE*
|
||||
:LPF pi_logipat.txt /*:LPF*
|
||||
:Launch pi_netrw.txt /*:Launch*
|
||||
:Lexplore pi_netrw.txt /*:Lexplore*
|
||||
:Lfilter quickfix.txt /*:Lfilter*
|
||||
:LogiPat pi_logipat.txt /*:LogiPat*
|
||||
@@ -2144,6 +2150,7 @@ $quote eval.txt /*$quote*
|
||||
:Ntree pi_netrw.txt /*:Ntree*
|
||||
:Nw pi_netrw.txt /*:Nw*
|
||||
:Nwrite pi_netrw.txt /*:Nwrite*
|
||||
:Open pi_netrw.txt /*:Open*
|
||||
:Over terminal.txt /*:Over*
|
||||
:P various.txt /*:P*
|
||||
:Pexplore pi_netrw.txt /*:Pexplore*
|
||||
@@ -2173,6 +2180,7 @@ $quote eval.txt /*$quote*
|
||||
:Termdebug terminal.txt /*:Termdebug*
|
||||
:TermdebugCommand terminal.txt /*:TermdebugCommand*
|
||||
:Texplore pi_netrw.txt /*:Texplore*
|
||||
:Tutor pi_tutor.txt /*:Tutor*
|
||||
:Until terminal.txt /*:Until*
|
||||
:Up terminal.txt /*:Up*
|
||||
:UseVimball pi_vimball.txt /*:UseVimball*
|
||||
@@ -2211,7 +2219,6 @@ $quote eval.txt /*$quote*
|
||||
:abo windows.txt /*:abo*
|
||||
:aboveleft windows.txt /*:aboveleft*
|
||||
:abstract vim9class.txt /*:abstract*
|
||||
:addd quickfix.txt /*:addd*
|
||||
:al windows.txt /*:al*
|
||||
:all windows.txt /*:all*
|
||||
:am gui.txt /*:am*
|
||||
@@ -2731,6 +2738,7 @@ $quote eval.txt /*$quote*
|
||||
:lab quickfix.txt /*:lab*
|
||||
:labove quickfix.txt /*:labove*
|
||||
:lad quickfix.txt /*:lad*
|
||||
:ladd quickfix.txt /*:ladd*
|
||||
:laddb quickfix.txt /*:laddb*
|
||||
:laddbuffer quickfix.txt /*:laddbuffer*
|
||||
:laddexpr quickfix.txt /*:laddexpr*
|
||||
@@ -3018,6 +3026,8 @@ $quote eval.txt /*$quote*
|
||||
:packadd repeat.txt /*:packadd*
|
||||
:packl repeat.txt /*:packl*
|
||||
:packloadall repeat.txt /*:packloadall*
|
||||
:pb windows.txt /*:pb*
|
||||
:pbuffer windows.txt /*:pbuffer*
|
||||
:pc windows.txt /*:pc*
|
||||
:pclose windows.txt /*:pclose*
|
||||
:pe if_perl.txt /*:pe*
|
||||
@@ -4572,6 +4582,7 @@ E1510 change.txt /*E1510*
|
||||
E1511 options.txt /*E1511*
|
||||
E1512 options.txt /*E1512*
|
||||
E1513 message.txt /*E1513*
|
||||
E1514 options.txt /*E1514*
|
||||
E152 helphelp.txt /*E152*
|
||||
E153 helphelp.txt /*E153*
|
||||
E154 helphelp.txt /*E154*
|
||||
@@ -5777,6 +5788,7 @@ V visual.txt /*V*
|
||||
VIMINIT starting.txt /*VIMINIT*
|
||||
VMS os_vms.txt /*VMS*
|
||||
Vi intro.txt /*Vi*
|
||||
Vietnamese vietnamese.txt /*Vietnamese*
|
||||
View starting.txt /*View*
|
||||
Vim9 vim9.txt /*Vim9*
|
||||
Vim9-abstract-class vim9class.txt /*Vim9-abstract-class*
|
||||
@@ -5812,6 +5824,8 @@ W19 autocmd.txt /*W19*
|
||||
W20 if_pyth.txt /*W20*
|
||||
W21 if_pyth.txt /*W21*
|
||||
W22 userfunc.txt /*W22*
|
||||
W23 gui_x11.txt /*W23*
|
||||
W24 gui_x11.txt /*W24*
|
||||
WORD motion.txt /*WORD*
|
||||
WSL os_win32.txt /*WSL*
|
||||
WWW intro.txt /*WWW*
|
||||
@@ -6554,10 +6568,16 @@ compiler-hpada ft_ada.txt /*compiler-hpada*
|
||||
compiler-javac quickfix.txt /*compiler-javac*
|
||||
compiler-make quickfix.txt /*compiler-make*
|
||||
compiler-manx quickfix.txt /*compiler-manx*
|
||||
compiler-maven quickfix.txt /*compiler-maven*
|
||||
compiler-mypy quickfix.txt /*compiler-mypy*
|
||||
compiler-pandoc quickfix.txt /*compiler-pandoc*
|
||||
compiler-perl quickfix.txt /*compiler-perl*
|
||||
compiler-pylint quickfix.txt /*compiler-pylint*
|
||||
compiler-pytest quickfix.txt /*compiler-pytest*
|
||||
compiler-pyunit quickfix.txt /*compiler-pyunit*
|
||||
compiler-ruff quickfix.txt /*compiler-ruff*
|
||||
compiler-select quickfix.txt /*compiler-select*
|
||||
compiler-spotbugs quickfix.txt /*compiler-spotbugs*
|
||||
compiler-tex quickfix.txt /*compiler-tex*
|
||||
compiler-typst quickfix.txt /*compiler-typst*
|
||||
compiler-vaxada ft_ada.txt /*compiler-vaxada*
|
||||
@@ -7114,6 +7134,7 @@ file-read insert.txt /*file-read*
|
||||
file-searching editing.txt /*file-searching*
|
||||
file-type filetype.txt /*file-type*
|
||||
file-types filetype.txt /*file-types*
|
||||
file-watcher editing.txt /*file-watcher*
|
||||
file_readable() builtin.txt /*file_readable()*
|
||||
filecopy() builtin.txt /*filecopy()*
|
||||
fileencoding-changed version6.txt /*fileencoding-changed*
|
||||
@@ -7199,6 +7220,7 @@ fold-create-marker fold.txt /*fold-create-marker*
|
||||
fold-delete-marker fold.txt /*fold-delete-marker*
|
||||
fold-diff fold.txt /*fold-diff*
|
||||
fold-expr fold.txt /*fold-expr*
|
||||
fold-expr-slow fold.txt /*fold-expr-slow*
|
||||
fold-foldcolumn fold.txt /*fold-foldcolumn*
|
||||
fold-foldlevel fold.txt /*fold-foldlevel*
|
||||
fold-foldtext fold.txt /*fold-foldtext*
|
||||
@@ -7322,6 +7344,8 @@ ft-html-omni insert.txt /*ft-html-omni*
|
||||
ft-html-syntax syntax.txt /*ft-html-syntax*
|
||||
ft-htmlos-syntax syntax.txt /*ft-htmlos-syntax*
|
||||
ft-ia64-syntax syntax.txt /*ft-ia64-syntax*
|
||||
ft-idris2-indent indent.txt /*ft-idris2-indent*
|
||||
ft-idris2-plugin filetype.txt /*ft-idris2-plugin*
|
||||
ft-inform-syntax syntax.txt /*ft-inform-syntax*
|
||||
ft-java-plugin filetype.txt /*ft-java-plugin*
|
||||
ft-java-syntax syntax.txt /*ft-java-syntax*
|
||||
@@ -7337,6 +7361,7 @@ ft-lifelines-syntax syntax.txt /*ft-lifelines-syntax*
|
||||
ft-lisp-syntax syntax.txt /*ft-lisp-syntax*
|
||||
ft-lite-syntax syntax.txt /*ft-lite-syntax*
|
||||
ft-lpc-syntax syntax.txt /*ft-lpc-syntax*
|
||||
ft-lua-plugin filetype.txt /*ft-lua-plugin*
|
||||
ft-lua-syntax syntax.txt /*ft-lua-syntax*
|
||||
ft-mail-plugin filetype.txt /*ft-mail-plugin*
|
||||
ft-mail.vim syntax.txt /*ft-mail.vim*
|
||||
@@ -7369,6 +7394,7 @@ ft-neomuttlog-syntax syntax.txt /*ft-neomuttlog-syntax*
|
||||
ft-neomuttrc-syntax syntax.txt /*ft-neomuttrc-syntax*
|
||||
ft-nroff-syntax syntax.txt /*ft-nroff-syntax*
|
||||
ft-ocaml-syntax syntax.txt /*ft-ocaml-syntax*
|
||||
ft-org-plugin filetype.txt /*ft-org-plugin*
|
||||
ft-pandoc-syntax syntax.txt /*ft-pandoc-syntax*
|
||||
ft-papp-syntax syntax.txt /*ft-papp-syntax*
|
||||
ft-pascal-syntax syntax.txt /*ft-pascal-syntax*
|
||||
@@ -7746,6 +7772,8 @@ g:typescript_host_keyword syntax.txt /*g:typescript_host_keyword*
|
||||
g:typst_cmd quickfix.txt /*g:typst_cmd*
|
||||
g:typst_conceal filetype.txt /*g:typst_conceal*
|
||||
g:typst_embedded_languages syntax.txt /*g:typst_embedded_languages*
|
||||
g:typst_folding filetype.txt /*g:typst_folding*
|
||||
g:typst_foldnested filetype.txt /*g:typst_foldnested*
|
||||
g:var eval.txt /*g:var*
|
||||
g:vim_indent indent.txt /*g:vim_indent*
|
||||
g:vim_indent_cont indent.txt /*g:vim_indent_cont*
|
||||
@@ -7825,6 +7853,7 @@ getbufinfo() builtin.txt /*getbufinfo()*
|
||||
getbufline() builtin.txt /*getbufline()*
|
||||
getbufoneline() builtin.txt /*getbufoneline()*
|
||||
getbufvar() builtin.txt /*getbufvar()*
|
||||
getcellpixels() builtin.txt /*getcellpixels()*
|
||||
getcellwidths() builtin.txt /*getcellwidths()*
|
||||
getchangelist() builtin.txt /*getchangelist()*
|
||||
getchar() builtin.txt /*getchar()*
|
||||
@@ -8053,11 +8082,13 @@ hasmapto() builtin.txt /*hasmapto()*
|
||||
hebrew hebrew.txt /*hebrew*
|
||||
hebrew.txt hebrew.txt /*hebrew.txt*
|
||||
help helphelp.txt /*help*
|
||||
help-TOC helphelp.txt /*help-TOC*
|
||||
help-buffer-options helphelp.txt /*help-buffer-options*
|
||||
help-context help.txt /*help-context*
|
||||
help-curwin tips.txt /*help-curwin*
|
||||
help-summary usr_02.txt /*help-summary*
|
||||
help-tags tags 1
|
||||
help-toc-install helphelp.txt /*help-toc-install*
|
||||
help-translated helphelp.txt /*help-translated*
|
||||
help-writing helphelp.txt /*help-writing*
|
||||
help-xterm-window helphelp.txt /*help-xterm-window*
|
||||
@@ -8105,6 +8136,7 @@ hit-return message.txt /*hit-return*
|
||||
hitest.vim syntax.txt /*hitest.vim*
|
||||
hjkl usr_02.txt /*hjkl*
|
||||
hl-ColorColumn syntax.txt /*hl-ColorColumn*
|
||||
hl-ComplMatchIns syntax.txt /*hl-ComplMatchIns*
|
||||
hl-Conceal syntax.txt /*hl-Conceal*
|
||||
hl-CurSearch syntax.txt /*hl-CurSearch*
|
||||
hl-Cursor syntax.txt /*hl-Cursor*
|
||||
@@ -8376,6 +8408,7 @@ inactive-buffer windows.txt /*inactive-buffer*
|
||||
include-search tagsrch.txt /*include-search*
|
||||
inclusion helphelp.txt /*inclusion*
|
||||
inclusive motion.txt /*inclusive*
|
||||
inclusive-motion-selection-exclusive motion.txt /*inclusive-motion-selection-exclusive*
|
||||
incomp-small-6 version6.txt /*incomp-small-6*
|
||||
incompatible-5 version5.txt /*incompatible-5*
|
||||
incompatible-6 version6.txt /*incompatible-6*
|
||||
@@ -9121,7 +9154,6 @@ netrw-write pi_netrw.txt /*netrw-write*
|
||||
netrw-x pi_netrw.txt /*netrw-x*
|
||||
netrw-xfer pi_netrw.txt /*netrw-xfer*
|
||||
netrw.vim pi_netrw.txt /*netrw.vim*
|
||||
netrw_filehandler pi_netrw.txt /*netrw_filehandler*
|
||||
netterm-mouse options.txt /*netterm-mouse*
|
||||
network pi_netrw.txt /*network*
|
||||
new() vim9class.txt /*new()*
|
||||
@@ -9269,6 +9301,7 @@ o_CTRL-V motion.txt /*o_CTRL-V*
|
||||
o_V motion.txt /*o_V*
|
||||
o_object-select motion.txt /*o_object-select*
|
||||
o_v motion.txt /*o_v*
|
||||
obj-var-type-any vim9class.txt /*obj-var-type-any*
|
||||
object vim9class.txt /*object*
|
||||
object-const-variable vim9class.txt /*object-const-variable*
|
||||
object-empty() vim9class.txt /*object-empty()*
|
||||
@@ -9318,6 +9351,7 @@ options.txt options.txt /*options.txt*
|
||||
optwin options.txt /*optwin*
|
||||
or() builtin.txt /*or()*
|
||||
oracle ft_sql.txt /*oracle*
|
||||
os-support vi_diff.txt /*os-support*
|
||||
os2 os_os2.txt /*os2*
|
||||
os390 os_390.txt /*os390*
|
||||
os_390.txt os_390.txt /*os_390.txt*
|
||||
@@ -9429,6 +9463,7 @@ pi_netrw.txt pi_netrw.txt /*pi_netrw.txt*
|
||||
pi_paren.txt pi_paren.txt /*pi_paren.txt*
|
||||
pi_spec.txt pi_spec.txt /*pi_spec.txt*
|
||||
pi_tar.txt pi_tar.txt /*pi_tar.txt*
|
||||
pi_tutor.txt pi_tutor.txt /*pi_tutor.txt*
|
||||
pi_vimball.txt pi_vimball.txt /*pi_vimball.txt*
|
||||
pi_zip.txt pi_zip.txt /*pi_zip.txt*
|
||||
pkzip options.txt /*pkzip*
|
||||
@@ -10197,6 +10232,7 @@ state() builtin.txt /*state()*
|
||||
static-tag tagsrch.txt /*static-tag*
|
||||
status-line windows.txt /*status-line*
|
||||
statusmsg-variable eval.txt /*statusmsg-variable*
|
||||
stl-%! options.txt /*stl-%!*
|
||||
stl-%{ options.txt /*stl-%{*
|
||||
str2float() builtin.txt /*str2float()*
|
||||
str2list() builtin.txt /*str2list()*
|
||||
@@ -10228,12 +10264,18 @@ strstr() builtin.txt /*strstr()*
|
||||
strtrans() builtin.txt /*strtrans()*
|
||||
strutf16len() builtin.txt /*strutf16len()*
|
||||
strwidth() builtin.txt /*strwidth()*
|
||||
style-braces develop.txt /*style-braces*
|
||||
style-changes develop.txt /*style-changes*
|
||||
style-comments develop.txt /*style-comments*
|
||||
style-common-functions develop.txt /*style-common-functions*
|
||||
style-compiler develop.txt /*style-compiler*
|
||||
style-declarations develop.txt /*style-declarations*
|
||||
style-examples develop.txt /*style-examples*
|
||||
style-functions develop.txt /*style-functions*
|
||||
style-indentation develop.txt /*style-indentation*
|
||||
style-names develop.txt /*style-names*
|
||||
style-spaces develop.txt /*style-spaces*
|
||||
style-types develop.txt /*style-types*
|
||||
style-various develop.txt /*style-various*
|
||||
sub-menu-priority gui.txt /*sub-menu-priority*
|
||||
sub-replace-\= change.txt /*sub-replace-\\=*
|
||||
@@ -10612,6 +10654,7 @@ template autocmd.txt /*template*
|
||||
tempname() builtin.txt /*tempname()*
|
||||
term++close terminal.txt /*term++close*
|
||||
term++open terminal.txt /*term++open*
|
||||
term++shell terminal.txt /*term++shell*
|
||||
term-dependent-settings term.txt /*term-dependent-settings*
|
||||
term-list syntax.txt /*term-list*
|
||||
term.txt term.txt /*term.txt*
|
||||
@@ -10658,7 +10701,9 @@ termdebug-starting terminal.txt /*termdebug-starting*
|
||||
termdebug-stepping terminal.txt /*termdebug-stepping*
|
||||
termdebug-timeout terminal.txt /*termdebug-timeout*
|
||||
termdebug-variables terminal.txt /*termdebug-variables*
|
||||
termdebug_contributing terminal.txt /*termdebug_contributing*
|
||||
termdebug_disasm_window terminal.txt /*termdebug_disasm_window*
|
||||
termdebug_evaluate_in_popup terminal.txt /*termdebug_evaluate_in_popup*
|
||||
termdebug_map_K terminal.txt /*termdebug_map_K*
|
||||
termdebug_map_minus terminal.txt /*termdebug_map_minus*
|
||||
termdebug_map_plus terminal.txt /*termdebug_map_plus*
|
||||
@@ -10690,6 +10735,7 @@ terminal-job-index index.txt /*terminal-job-index*
|
||||
terminal-key-codes term.txt /*terminal-key-codes*
|
||||
terminal-mouse term.txt /*terminal-mouse*
|
||||
terminal-ms-windows terminal.txt /*terminal-ms-windows*
|
||||
terminal-nospecial terminal.txt /*terminal-nospecial*
|
||||
terminal-options term.txt /*terminal-options*
|
||||
terminal-output-codes term.txt /*terminal-output-codes*
|
||||
terminal-resizing terminal.txt /*terminal-resizing*
|
||||
@@ -11202,6 +11248,15 @@ vi-features vi_diff.txt /*vi-features*
|
||||
vi: options.txt /*vi:*
|
||||
vi_diff.txt vi_diff.txt /*vi_diff.txt*
|
||||
vib motion.txt /*vib*
|
||||
vietnamese vietnamese.txt /*vietnamese*
|
||||
vietnamese-ime_diff vietnamese.txt /*vietnamese-ime_diff*
|
||||
vietnamese-intro vietnamese.txt /*vietnamese-intro*
|
||||
vietnamese-keymap vietnamese.txt /*vietnamese-keymap*
|
||||
vietnamese-l10n vietnamese.txt /*vietnamese-l10n*
|
||||
vietnamese-telex_utf-8 vietnamese.txt /*vietnamese-telex_utf-8*
|
||||
vietnamese-viqr_utf-8 vietnamese.txt /*vietnamese-viqr_utf-8*
|
||||
vietnamese-vni_utf-8 vietnamese.txt /*vietnamese-vni_utf-8*
|
||||
vietnamese.txt vietnamese.txt /*vietnamese.txt*
|
||||
view starting.txt /*view*
|
||||
view-diffs diff.txt /*view-diffs*
|
||||
view-file starting.txt /*view-file*
|
||||
@@ -11228,6 +11283,9 @@ vim-script-intro usr_41.txt /*vim-script-intro*
|
||||
vim-script-library eval.txt /*vim-script-library*
|
||||
vim-security intro.txt /*vim-security*
|
||||
vim-shebang various.txt /*vim-shebang*
|
||||
vim-tutor-create pi_tutor.txt /*vim-tutor-create*
|
||||
vim-tutor-mode pi_tutor.txt /*vim-tutor-mode*
|
||||
vim-tutor-usage pi_tutor.txt /*vim-tutor-usage*
|
||||
vim-use intro.txt /*vim-use*
|
||||
vim-variable eval.txt /*vim-variable*
|
||||
vim.b if_lua.txt /*vim.b*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*terminal.txt* For Vim version 9.1. Last change: 2024 Jul 28
|
||||
*terminal.txt* For Vim version 9.1. Last change: 2024 Dec 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -197,6 +197,13 @@ Command syntax ~
|
||||
if [command] is NONE no job is started, the pty of the
|
||||
terminal can be used by a command like gdb.
|
||||
|
||||
*terminal-nospecial*
|
||||
Vim itself only recognizes |cmdline-special|
|
||||
characters inside [command]. Everything else will be
|
||||
passed untouched. When needed to expand wildcards,
|
||||
environment variables or other shell specials consider
|
||||
|term++shell| option.
|
||||
|
||||
If [command] is missing the default behavior is to
|
||||
close the terminal when the shell exits. This can be
|
||||
changed with the ++noclose argument.
|
||||
@@ -241,10 +248,16 @@ Command syntax ~
|
||||
no window will be used.
|
||||
++norestore Do not include this terminal window
|
||||
in a session file.
|
||||
|
||||
*term++shell*
|
||||
++shell Instead of executing {command}
|
||||
directly, use a shell, like with
|
||||
`:!command` *E279*
|
||||
{only works on Unix and MS-Windows}
|
||||
The resulting command will look like
|
||||
'shell' 'shellcmdflag' [command]
|
||||
Other options related to `:!command`
|
||||
have no effect.
|
||||
++kill={how} When trying to close the terminal
|
||||
window kill the job with {how}. See
|
||||
|term_setkill()| for the values.
|
||||
@@ -1537,6 +1550,7 @@ If there is no g:termdebug_config you can use: >
|
||||
<
|
||||
However, the latter form will be deprecated in future releases.
|
||||
|
||||
|
||||
Mappings ~
|
||||
The termdebug plugin enables a few default mappings. All those mappings
|
||||
are reset to their original values once the termdebug session concludes.
|
||||
@@ -1591,6 +1605,7 @@ If the current window has enough horizontal space, it will be vertically split
|
||||
and the Var window will be shown side by side with the source code window (and
|
||||
the height options won't be used).
|
||||
|
||||
|
||||
Communication ~
|
||||
*termdebug-communication*
|
||||
There is another, hidden, buffer, which is used for Vim to communicate with
|
||||
@@ -1675,18 +1690,23 @@ If there is no g:termdebug_config you can use: >
|
||||
|
||||
However, the latter form will be deprecated in future releases.
|
||||
|
||||
|
||||
Change default signs ~
|
||||
*termdebug_signs*
|
||||
Termdebug uses the hex number of the breakpoint ID in the signcolumn to
|
||||
represent breakpoints. if it is greater than "0xFF", then it will be displayed
|
||||
represent breakpoints. If it is greater than "0xFF", then it will be displayed
|
||||
as "F+", due to we really only have two screen cells for the sign.
|
||||
You may also use decimal breakpoint signs instead, in which case IDs greater
|
||||
than 99 will be displayed as "9+".
|
||||
|
||||
If you want to customize the breakpoint signs: >
|
||||
If you want to customize the breakpoint signs to show `>>` in the signcolumn: >
|
||||
let g:termdebug_config['sign'] = '>>'
|
||||
If there is no g:terminal_config yet you can use: >
|
||||
If you would like to use decimal (base 10) breakpoint signs: >
|
||||
let g:termdebug_config['sign_decimal'] = 1
|
||||
If the variable g:termdebug_config does not yet exist, you can use: >
|
||||
let g:termdebug_config = {'sign': '>>'}
|
||||
|
||||
After this, breakpoints will be displayed as `>>` in the signcolumn.
|
||||
Likewise, to enable decimal signs: >
|
||||
let g:termdebug_config = {'sign_decimal': 1}
|
||||
|
||||
|
||||
Window toolbar ~
|
||||
@@ -1716,4 +1736,37 @@ Set the wide value to 1 to use a vertical split without ever changing
|
||||
'columns'. This is useful when the terminal can't be resized by Vim.
|
||||
|
||||
|
||||
Evaluate in Popup Window at Cursor ~
|
||||
*termdebug_evaluate_in_popup*
|
||||
By default |:Evaluate| will simply echo its output. For larger entities this
|
||||
might become difficult to read or even truncated.
|
||||
Alternatively, the evaluation result may be output into a popup window at the
|
||||
current cursor position: >
|
||||
let g:termdebug_config['evaluate_in_popup'] = v:true
|
||||
This can also be used in a "one-shot" manner: >
|
||||
func OnCursorHold()
|
||||
let g:termdebug_config['evaluate_in_popup'] = v:true
|
||||
:Evaluate
|
||||
let g:termdebug_config['evaluate_in_popup'] = v:false
|
||||
endfunc
|
||||
<
|
||||
|
||||
Contributing ~
|
||||
*termdebug_contributing*
|
||||
Contributions for termdebug improvements are welcome.
|
||||
However, it is fairly common that during the development process you need some
|
||||
mechanisms like `echo` statements (or similar) to help you in your job.
|
||||
For this reason, you can set: >
|
||||
let g:termdebug_config['debug'] = true
|
||||
<
|
||||
This sets the `DEBUG` variable to `true`, which can be referenced in the
|
||||
source code. An example of its usage follows: >
|
||||
if exists('g:termdebug_loaded')
|
||||
if DEBUG
|
||||
Echoerr('Termdebug already loaded.')
|
||||
endif
|
||||
finish
|
||||
endif
|
||||
<
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 9.1. Last change: 2024 Sep 29
|
||||
*todo.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -55,32 +55,17 @@ When a help item can't be found, then open 'helpfile'. Search for the tag in
|
||||
that file and gtive E149 only when not found. Helps for a tiny Vim installed
|
||||
without all the help files.
|
||||
|
||||
SpellCap highlight not updated - PR #12428
|
||||
|
||||
Virtual text problems:
|
||||
- If 'list' is on, 'below' virtual text which includes 1 or 2 characters are
|
||||
gone (Issue #12028)
|
||||
- Virtual text aligned "above": Wrong indentation when using tabs (Issue
|
||||
#12232)
|
||||
- Virtual text to the right of the line that isn't visible doesn't cause the
|
||||
'extends' character to show in 'list' mode. #12478
|
||||
- Virtual text to the right of the line that fits exactly on screen causes
|
||||
that line and all lines below it not to be displayed (Issue #12213)
|
||||
- Window screen gets wrong when a virtual text is placed on 'above' or
|
||||
'below' on an empty line (Issue #11959)
|
||||
- truncated Virtual text below an empty line causes display error #12493
|
||||
|
||||
When 'virtualedit' is "all" and 'cursorcolumn' is set, the wrong column may be
|
||||
highlighted. (van-de-bugger, 2018 Jan 23, #2576)
|
||||
|
||||
Improve profiling by caching matching functions: PR #12192
|
||||
|
||||
With 'smoothscroll' set and "lastline" in 'display', moving the cursor to a
|
||||
wrapping line that makes the display scroll up may scroll much more than
|
||||
needed, thus jump-scrolling. (part of issue 12411)
|
||||
|
||||
Implement foreach() PR #12166
|
||||
|
||||
Errors when running tests with valgrind:
|
||||
- test_codestyle.vim: e.g.:
|
||||
command line..script /home/mool/vim/vim91/src/testdir/runtest.vim[569]..function RunTheTest[52]..Test_test_files line 6: keycode_check.vim: space before tab: Expected 0 but got 7
|
||||
@@ -117,7 +102,6 @@ Upcoming larger works:
|
||||
|
||||
Further Vim9 improvements:
|
||||
- Classes and Interfaces. See |vim9-classes|
|
||||
- Cannot use class type of itself in the method (Issue #12369)
|
||||
- Getting member of variable with "any" type should be handled at runtime.
|
||||
Remove temporary solution from #12096 / patch 9.0.1375.
|
||||
- "obj.Method()" does not always work in a compiled function, assumes "obj"
|
||||
@@ -127,9 +111,6 @@ Further Vim9 improvements:
|
||||
Possibly issue #11981 can be fixed at the same time (has two examples).
|
||||
- Forward declaration of a class? E.g. for Clone() function.
|
||||
Email lifepillar 2023 Mar 26
|
||||
- When "Meta" is a class, is "const MetaAlias = Meta" allowed? It should
|
||||
either work or given an error. Possibly give an error now and implement it
|
||||
later (using a typedef). #12006
|
||||
- how about lock/unlock?
|
||||
- For chaining, allow using the class name as type for function return
|
||||
value.
|
||||
@@ -147,7 +128,7 @@ Further Vim9 improvements:
|
||||
has(featureName), len(someString)
|
||||
- Implement as part of an expression: ++expr, --expr, expr++, expr--.
|
||||
- The use of the literal value "null" and the type specific "null_xxx"
|
||||
values is confusing (#13458, #11770).
|
||||
values is confusing (#13433, #11770).
|
||||
|
||||
Information missing in terminfo:
|
||||
- Codes used for focus gained and lost termcodes are hard-coded in
|
||||
@@ -225,8 +206,6 @@ Popup windows:
|
||||
positioned? PopupNew? Could be used to set some options or move it out of
|
||||
the way. (#5737)
|
||||
However, it may also cause trouble, changing the popup of another plugin.
|
||||
- Width is not computed correctly when minwidth and maxwidth are &columns
|
||||
and padding and a scrollbar are used. (#6676)
|
||||
- Should popup_getoptions() also return the mask? #7774
|
||||
- Add a way to use popup_menu() synchronously: instead of invoking the
|
||||
callback, return the choice. (Ben Jackson, #6534)
|
||||
@@ -296,8 +275,6 @@ Terminal emulator window:
|
||||
- Use CTRL-W CTRL-K to enter a digraph? #5371
|
||||
- When Vim runs in the terminal and changes the title, the statusline needs to
|
||||
be redrawn.
|
||||
- GUI: When using ":set go+=!" a system() call causes the hit-enter prompt.
|
||||
(#3327)
|
||||
- Allow for specifying the directory, with ++cwd={dir}.
|
||||
- When pasting should call vterm_keyboard_start_paste(), e.g. when using
|
||||
K_MIDDLEMOUSE, calling insert_reg().
|
||||
@@ -323,9 +300,6 @@ Cursor is after the end of the line: #12137.
|
||||
|
||||
Crash when a variable is removed while listing variables (Issue #11435)
|
||||
|
||||
Autoconf: must use autoconf 2.69, later version generates lots of warnings
|
||||
- try using autoconf 2.71 and fix all "obsolete" warnings #11322
|
||||
|
||||
Problem with Visual highlight when 'linebreak' and 'showbreak' are set.
|
||||
#11272
|
||||
|
||||
@@ -343,8 +317,6 @@ Support dark mode for MS-Windows: #12282
|
||||
Remote command escapes single quote with backslash, should be doubling the
|
||||
single quote in vim_strsave_escaped_ext() #12202.
|
||||
|
||||
PR to add custom and customlist completion types. #12228
|
||||
|
||||
Can deref_func_name() and deref_function_name() be merged?
|
||||
|
||||
Using :global with a pattern containing \zs doesn't use the line where \zs
|
||||
@@ -1121,9 +1093,6 @@ Problem with 'delcombine'. (agguser, 2017 Nov 10, #2313)
|
||||
MS-Windows: buffer completion doesn't work when using backslash (or slash)
|
||||
for a path separator. (xtal8, #2201)
|
||||
|
||||
Would be nice for Insert mode completion to highlight the text that was added
|
||||
(and may change when picking another completion).
|
||||
|
||||
Test more runtime files.
|
||||
|
||||
Window not closed when deleting buffer. (Harm te Hennepe, 2017 Aug 27, #2029)
|
||||
@@ -4777,13 +4746,9 @@ Insert mode completion/expansion:
|
||||
(Prabir Shrestha, 2017 May 19, #1713)
|
||||
- When 'completeopt' has "noselect" does not insert a newline.
|
||||
(Lifepillar, 2017 Apr 23, #1653)
|
||||
- Can 'completeopt' be made buffer-local? (#5487)
|
||||
- When complete() first argument is before where insert started and
|
||||
'backspace' is Vi compatible, the completion fails.
|
||||
(Hirohito Higashi, 2015 Feb 19)
|
||||
- The CompleteDone autocommand needs some info passed to it:
|
||||
- The word that was selected (empty if abandoned complete)
|
||||
- Type of completion: tag, omnifunc, user func.
|
||||
- When a:base in 'completefunc' starts with a number it's passed as a
|
||||
number, not a string. (Sean Ma) Need to add flag to call_func_retlist()
|
||||
to force a string value.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*undo.txt* For Vim version 9.1. Last change: 2024 Sep 29
|
||||
*undo.txt* For Vim version 9.1. Last change: 2024 Nov 09
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -183,7 +183,7 @@ g- Go to older text state. With a count repeat that many
|
||||
g+ Go to newer text state. With a count repeat that many
|
||||
times.
|
||||
*:lat* *:later*
|
||||
:lat[er] {count} Go to newer text state {count} times.
|
||||
:lat[er] {count} Go to newer text state {count} times.
|
||||
:lat[er] {N}s Go to newer text state about {N} seconds later.
|
||||
:lat[er] {N}m Go to newer text state about {N} minutes later.
|
||||
:lat[er] {N}h Go to newer text state about {N} hours later.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_01.txt* For Vim version 9.1. Last change: 2024 May 11
|
||||
*usr_01.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -107,9 +107,11 @@ For more info see |vimrc| and |compatible-default|.
|
||||
==============================================================================
|
||||
*01.3* Using the Vim tutor *tutor* *vimtutor*
|
||||
|
||||
For the interactive tutor, see |vim-tutor-mode|
|
||||
|
||||
Instead of reading the text (boring!) you can use the vimtutor to learn your
|
||||
first Vim commands. This is a 30-minute tutorial that teaches the most basic
|
||||
Vim functionality hands-on.
|
||||
first Vim commands. This is a 30-minute tutorial provided in 2 chapters, that
|
||||
teaches the most basic Vim functionality hands-on.
|
||||
|
||||
On Unix, if Vim has been properly installed, you can start it from the shell:
|
||||
>
|
||||
@@ -118,8 +120,11 @@ On Unix, if Vim has been properly installed, you can start it from the shell:
|
||||
On MS-Windows you can find it in the Program/Vim menu. Or execute
|
||||
vimtutor.bat in the $VIMRUNTIME directory.
|
||||
|
||||
This will make a copy of the tutor file, so that you can edit it without
|
||||
the risk of damaging the original.
|
||||
This will make a copy of chapter 1 tutor file, so that you can edit it without
|
||||
the risk of damaging the original. To continue with chapter 2, you can use
|
||||
the following command: >
|
||||
vimtutor -c 2
|
||||
<
|
||||
There are a few translated versions of the tutor. To find out if yours is
|
||||
available, use the two-letter language code. For French: >
|
||||
|
||||
@@ -140,13 +145,13 @@ On other systems, you have to do a little work:
|
||||
|
||||
1. Copy the tutor file. You can do this with Vim (it knows where to find it):
|
||||
>
|
||||
vim --clean -c 'e $VIMRUNTIME/tutor/tutor' -c 'w! TUTORCOPY' -c 'q'
|
||||
vim --clean -c 'e $VIMRUNTIME/tutor/tutor1' -c 'w! TUTORCOPY' -c 'q'
|
||||
<
|
||||
This will write the file "TUTORCOPY" in the current directory. To use a
|
||||
translated version of the tutor, append the two-letter language code to the
|
||||
filename. For French:
|
||||
>
|
||||
vim --clean -c 'e $VIMRUNTIME/tutor/tutor.fr' -c 'w! TUTORCOPY' -c 'q'
|
||||
vim --clean -c 'e $VIMRUNTIME/tutor/tutor1.fr' -c 'w! TUTORCOPY' -c 'q'
|
||||
<
|
||||
2. Edit the copied file with Vim:
|
||||
>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_10.txt* For Vim version 9.1. Last change: 2019 Nov 22
|
||||
*usr_10.txt* For Vim version 9.1. Last change: 2024 Nov 12
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -736,6 +736,11 @@ The "!!" command filters the current line through a filter. In Unix the "date"
|
||||
command prints the current time and date. "!!date<Enter>" replaces the current
|
||||
line with the output of "date". This is useful to add a timestamp to a file.
|
||||
|
||||
Note: There is a difference between "!cmd" (e.g. using it without any file
|
||||
range) and "{range}!cmd". While the former will simply execute the external
|
||||
command and Vim will show the output, the latter will filter {range}lines
|
||||
through the filter and replace that range by the result of the filter command.
|
||||
See |:!| and |:range!| for details.
|
||||
|
||||
WHEN IT DOESN'T WORK
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_41.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*usr_41.txt* For Vim version 9.1. Last change: 2024 Nov 11
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -778,6 +778,7 @@ String manipulation: *string-functions*
|
||||
strdisplaywidth() size of string when displayed, deals with tabs
|
||||
setcellwidths() set character cell width overrides
|
||||
getcellwidths() get character cell width overrides
|
||||
getcellpixels() get character cell pixel size
|
||||
reverse() reverse the order of characters in a string
|
||||
substitute() substitute a pattern match with a string
|
||||
submatch() get a specific match in ":s" and substitute()
|
||||
@@ -1394,6 +1395,7 @@ Various: *various-functions*
|
||||
did_filetype() check if a FileType autocommand was used
|
||||
diff() diff two Lists of strings
|
||||
eventhandler() check if invoked by an event handler
|
||||
getcellpixels() get List of cell pixel size
|
||||
getpid() get process ID of Vim
|
||||
getscriptinfo() get list of sourced vim scripts
|
||||
getimstatus() check if IME status is active
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*usr_51.txt* For Vim version 9.1. Last change: 2024 Apr 04
|
||||
*usr_51.txt* For Vim version 9.1. Last change: 2024 Nov 13
|
||||
|
||||
VIM USER MANUAL - by Bram Moolenaar
|
||||
|
||||
@@ -656,6 +656,8 @@ an example: >
|
||||
CompilerSet errorformat& " use the default 'errorformat'
|
||||
CompilerSet makeprg=nmake
|
||||
|
||||
Note: arguments need to be escaped according to |option-backslash|.
|
||||
|
||||
When you write a compiler plugin for the Vim distribution or for a system-wide
|
||||
runtime directory, use the mechanism mentioned above. When
|
||||
"current_compiler" was already set by a user plugin nothing will be done.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*various.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -254,7 +254,19 @@ g8 Print the hex values of the bytes used in the
|
||||
|
||||
*:!cmd* *:!*
|
||||
:!{cmd} Execute {cmd} with the shell. See also the 'shell'
|
||||
and 'shelltype' option.
|
||||
and 'shelltype' option. For the filter command, see
|
||||
|:range!|.
|
||||
|
||||
Vim builds command line using options 'shell', 'shcf',
|
||||
'sxq' and 'shq' in the following order:
|
||||
`&sh &shcf &sxq &shq {cmd} &shq &sxq`
|
||||
So setting both 'sxq' and 'shq' is possible but rarely
|
||||
useful. Additional escaping inside `{cmd}` may also
|
||||
be due to 'sxe' option.
|
||||
|
||||
Also, all |cmdline-special| characters in {cmd} are
|
||||
replaced by Vim before passing them to shell.
|
||||
|
||||
*E34*
|
||||
Any '!' in {cmd} is replaced with the previous
|
||||
external command (see also 'cpoptions'). But not when
|
||||
@@ -305,7 +317,10 @@ g8 Print the hex values of the bytes used in the
|
||||
CTRL-L or ":redraw!" if the command did display
|
||||
something. However, this depends on what the |t_ti|
|
||||
and |t_te| termcap entries are set to.
|
||||
Also see |shell-window|.
|
||||
|
||||
Hint: use |:terminal| command if you want to run {cmd}
|
||||
in Vim window. `:term ++shell ++close {cmd}` could
|
||||
serve as close approximation to what `:!{cmd}` does.
|
||||
|
||||
*:!!*
|
||||
:!! Repeat last ":!{cmd}".
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*version9.txt* For Vim version 9.1. Last change: 2024 Oct 08
|
||||
*version9.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -31790,7 +31790,7 @@ Changed ~
|
||||
- The features |++builtin_terms|, |+cmdline_info|, |+cmdwin|, |+file_in_path|,
|
||||
|+float|, |+path_extra|, |+textobjects|, |+wildignore| and |+wildmenu| are
|
||||
available in all the builds.
|
||||
- Support for Windows-XP is dropped.
|
||||
- Support for Windows-XP is dropped (starting with v9.0.0496)
|
||||
- Support for VisVim is removed.
|
||||
- The "small" and "big" builds are dropped in favor of "tiny" and "huge"
|
||||
builds.
|
||||
@@ -41598,6 +41598,25 @@ Changed~
|
||||
- the regex engines match correctly case-insensitive multi-byte characters
|
||||
(and apply proper case folding)
|
||||
- |:keeppatterns| preserves the last substitute pattern when used with |:s|
|
||||
- |setqflist()| and |setloclist()| can optionally try to preserve the current
|
||||
selection in the quickfix list with the "u" action.
|
||||
- the putty terminal is detected using an |TermResponse| autocommand in
|
||||
|defaults.vim| and Vim switches to a dark background
|
||||
- the |help-TOC| package is included to ease navigating the documentation.
|
||||
- an interactive tutor plugin has been included |vim-tutor-mode|, can be
|
||||
started via |:Tutor|
|
||||
- improve the |vimtutor| and add a second chapter for more advanced tips
|
||||
- allow to pass local Vim script variables to python interpreter |py3eval()|
|
||||
- |getwininfo()| now also returns the "leftcol" property for a window
|
||||
- 'rulerformat' now supports the |stl-%!| item
|
||||
- the default 'history' option value has been increased to 200 and removed
|
||||
from |defaults.vim|
|
||||
- the default 'backspace' option for Vim has been set to "indent,eol,start"
|
||||
and removed from |defaults.vim|
|
||||
- the completed word and completion type are provided when handling the
|
||||
|CompleteDone| autocommand in the |v:event| dictionary
|
||||
- the default fontsize for the GTK builds of Vim (Windows and Unix) has been
|
||||
increased to 12pt to accomodate modern high-dpi monitors
|
||||
|
||||
*added-9.2*
|
||||
Added ~
|
||||
@@ -41612,6 +41631,7 @@ Functions: ~
|
||||
|foreach()| apply function to List items
|
||||
|getcmdcomplpat()| Shell command line completion
|
||||
|getcmdprompt()| get prompt for input()/confirm()
|
||||
|getcellpixels()| get List of terminal cell pixel size
|
||||
|getregion()| get a region of text from a buffer
|
||||
|getregionpos()| get a list of positions for a region
|
||||
|id()| get unique identifier for a Dict, List, Object,
|
||||
@@ -41633,6 +41653,7 @@ Autocommands: ~
|
||||
|
||||
Highlighting: ~
|
||||
|
||||
|hl-ComplMatchIns| matched text of the currently inserted completion.
|
||||
|hl-MsgArea| highlighting of the Command-line and messages area
|
||||
|hl-PmenuMatch| Popup menu: highlighting of matched text
|
||||
|hl-PmenuMatchSel| Popup menu: highlighting of matched text in selected
|
||||
@@ -41641,12 +41662,16 @@ Highlighting: ~
|
||||
Commands: ~
|
||||
|
||||
|[r| and |]r| to move the cursor to previous/next rare word
|
||||
|
||||
|:pbuffer| Edit buffer [N] from the buffer list in the preview
|
||||
window
|
||||
|
||||
Options: ~
|
||||
|
||||
'completeitemalign' Order of |complete-items| in Insert mode completion
|
||||
popup
|
||||
'findfunc' Vim function to obtain the results for a |:find|
|
||||
command
|
||||
'messagesopt' configure |:messages| and |hit-enter| prompt
|
||||
'winfixbuf' Keep buffer focused in a window
|
||||
'tabclose' Which tab page to focus after closing a tab page
|
||||
't_xo' Terminal uses XON/XOFF handshaking (e.g. vt420)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 9.1. Last change: 2024 Oct 05
|
||||
*vi_diff.txt* For Vim version 9.1. Last change: 2024 Nov 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -21,6 +21,7 @@ is missing something or because Posix is beside the mark).
|
||||
6. Supported Vi features |vi-features|
|
||||
7. Command-line arguments |cmdline-arguments|
|
||||
8. POSIX compliance |posix-compliance|
|
||||
9. Supported Operating Systems |os-support|
|
||||
|
||||
==============================================================================
|
||||
1. Simulated command *simulated-command*
|
||||
@@ -1361,5 +1362,37 @@ These are remarks about running the POSIX test suite:
|
||||
1 instead of 2.
|
||||
- ex test 534 fails because .exrc isn't read in silent mode.
|
||||
|
||||
==============================================================================
|
||||
9. Supported Operating systems *os-support*
|
||||
|
||||
Vim tries to support some old operating systems, however support for older
|
||||
operating systems might be dropped if maintenance becomes a burden or can no
|
||||
longer be verified.
|
||||
|
||||
Here is the status of some operating systems. Note fully supported means,
|
||||
support is verified as part of the CI test suite.
|
||||
|
||||
System | Status:~
|
||||
--------------------------------+-----------------------------------------
|
||||
Amiga (OS4, AROS & MorphOS): | still supported (?)
|
||||
Haiku: | still supported (?)
|
||||
Linux: | fully supported (on maintained versions)
|
||||
Mac OS: | fully supported up until v10.6 (?)
|
||||
MS-Windows 7, 8, 10, 11: | fully supported
|
||||
UNIX: | supported (on maintained versions)
|
||||
OpenVMS: | supported
|
||||
QNX: | still supported (?)
|
||||
zOS/OS390: | still supported (?)
|
||||
|
||||
The following operating systems are no longer supported:
|
||||
|
||||
System | Status:~
|
||||
--------------------------------+-----------------------------------------
|
||||
Atari MiNT | support was dropped with v8.2.1215
|
||||
BeOS: | support was dropped with v8.2.0849
|
||||
MS-DOS: | support was dropped with v7.4.1399
|
||||
MS-Windows XP and Vista: | support was dropped with v9.0.0496
|
||||
OS/2 | support was dropped with v7.4.1008
|
||||
RISC OS: | support was dropped with v7.3.0187
|
||||
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
|
||||
82
runtime/doc/vietnamese.txt
Normal file
82
runtime/doc/vietnamese.txt
Normal file
@@ -0,0 +1,82 @@
|
||||
*vietnamese.txt* For Vim version 9.1. Last change: 2024 Dec 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Phạm Bình An
|
||||
|
||||
|
||||
Vietnamese language support in Vim *vietnamese* *Vietnamese*
|
||||
|
||||
1. Introduction |vietnamese-intro|
|
||||
2. Vietnamese keymaps |vietnamese-keymap|
|
||||
3. Localization |vietnamese-l10n|
|
||||
|
||||
===============================================================================
|
||||
1. Introduction
|
||||
*vietnamese-intro*
|
||||
Vim supports Vietnamese language in the following ways:
|
||||
|
||||
- Built-in |vietnamese-keymap|, which allows you to type Vietnamese characters
|
||||
in |Insert-mode| and |search-commands| using US keyboard layout.
|
||||
- Localization in Vietnamese. See |vietnamese-l10n|
|
||||
|
||||
===============================================================================
|
||||
2. Vietnamese keymaps
|
||||
*vietnamese-keymap*
|
||||
To switch between languages you can use your system native keyboard switcher,
|
||||
or use one of the Vietnamese keymaps included in the Vim distribution, like
|
||||
below >
|
||||
:set keymap=vietnamese-telex_utf-8
|
||||
<
|
||||
See |'keymap'| for more information.
|
||||
|
||||
In the latter case, you can type Vietnamese even if you do not have a
|
||||
Vietnamese input method engine (IME) or you want Vim to be independent from a
|
||||
system-wide keyboard settings (when |'imdisable'| is set). You can also |:map|
|
||||
a key to switch between keyboards.
|
||||
|
||||
Vim comes with the following Vietnamese keymaps:
|
||||
- *vietnamese-telex_utf-8* Telex input method, |UTF-8| encoding.
|
||||
- *vietnamese-viqr_utf-8* VIQR input method, |UTF-8| encoding.
|
||||
- *vietnamese-vni_utf-8* VNI input method, |UTF-8| encoding.
|
||||
|
||||
*vietnamese-ime_diff*
|
||||
Since these keymaps were designed to be minimalistic, they do not support all
|
||||
features of the corresponding input methods. The differences are described
|
||||
below:
|
||||
|
||||
- You can only type each character individually, entering the base letter first
|
||||
and then the diacritics later. For example, to type the word `nến` using
|
||||
|vietnamese-vni_utf-8|, you must type `ne61n`, not `nen61` or `ne6n1`
|
||||
- For characters with more than 1 diacritic, you need to type vowel mark before
|
||||
tone mark. For example, to type `ồ` using |vietnamese-telex_utf-8|, you need
|
||||
to type `oof`, not `ofo`.
|
||||
- With |vietnamese-telex_utf-8|, you need to type all uppercase letters to
|
||||
produce uppercase characters with diacritics. For example, `Ừ` must be typed
|
||||
as `UWF`.
|
||||
- With |vietnamese-telex_utf-8|, the escape character `\` from VNI is added,
|
||||
hence the confusing `ooo` input to type `oo` is removed, which could lead to
|
||||
ambiguities. For example, to type the word `Đoòng`, you would type
|
||||
`DDo\ofng`.
|
||||
- Simple Telex (both v1 and v2), including the `w[]{}` style, is not
|
||||
supported.
|
||||
- Removing diacritics using `z` in Telex or `0` in VNI and VIQR is not supported.
|
||||
|
||||
===============================================================================
|
||||
3. Localization
|
||||
*vietnamese-l10n*
|
||||
Vim |messages| are also available in Vietnamese. If you wish to see messages
|
||||
in Vietnamese, you can run the command |:language| with an argument being the
|
||||
name of the Vietnamese locale. For example, >
|
||||
:language vi_VN
|
||||
< or >
|
||||
:language vi_VN.utf-8
|
||||
<
|
||||
Note that the name of the Vietnamese locale may vary depending on your system.
|
||||
See |mbyte-first| for details.
|
||||
|
||||
|vimtutor| is also available in Vietnamese. To start Vimtutor in Vietnamese,
|
||||
run the following command in terminal: >
|
||||
vimtutor vi
|
||||
<
|
||||
===============================================================================
|
||||
vim:tw=78:ts=8:noet:ft=help:norl:
|
||||
@@ -3,9 +3,7 @@
|
||||
.\" This file was generated with po4a. Translate the source file.
|
||||
.\"
|
||||
.\"*******************************************************************
|
||||
.\" Translated by bw1 (2008) and Florian Rehnisch <fm-r@gmx.de> (2012)
|
||||
.\" Kudos to the folks on vim-dev and debian-l10n-german
|
||||
.TH VIM 1 "2006 Apr 11"
|
||||
.TH VIM 1 "28. November 2024"
|
||||
.SH BEZEICHNUNG
|
||||
vim \- Vi IMproved, ein Text\-Editor f<>r Programmierer
|
||||
.SH <EFBFBD>BERSICHT
|
||||
@@ -31,8 +29,8 @@ vim \- Vi IMproved, ein Text\-Editor f
|
||||
verwendet werden, um alle Arten von Klartext zu bearbeiten. Er ist besonders
|
||||
n<EFBFBD>tzlich, um Programme zu bearbeiten.
|
||||
.PP
|
||||
Vim hat einige Erweiterungen gegen<65>ber Vi, z.B.: R<EFBFBD>ckg<EFBFBD>ngigmachen in
|
||||
mehreren Schritten, mehrere Fenster und Puffer, Syntax\-Hervorhebung,
|
||||
\fBVim\fP hat eine Menge an Erweiterungen gegen<65>ber Vi, z.B.: Mehrstufiges
|
||||
R<EFBFBD>ckg<EFBFBD>ngigmachen, mehrere Fenster und Puffer, Syntax\-Hervorhebung,
|
||||
Bearbeiten der Befehlszeile, Dateinamenerg<72>nzung, eingebaute Hilfe, visuelle
|
||||
Auswahl, usw. ... Siehe <20>:help vi_diff.txt<78> f<>r eine <20>bersicht der
|
||||
Unterschiede zwischen \fBVim\fP und Vi.
|
||||
@@ -41,7 +39,7 @@ Im laufenden \fBVim\fP kann mit dem Befehl
|
||||
eingebaute Hilfesystem erlangt werden. Siehe den Abschnitt EINGEBAUTE HILFE
|
||||
weiter unten.
|
||||
.PP
|
||||
Meistens wird \fBVim\fP zum Editieren einer einzigen Datei mit dem folgende
|
||||
Meistens wird \fBVim\fP zum Bearbeiten einer einzigen Datei mit dem folgenden
|
||||
Befehl gestartet:
|
||||
.PP
|
||||
vim Datei
|
||||
@@ -51,8 +49,8 @@ Allgemeiner betrachtet, wird \fBVim\fP folgenderma
|
||||
vim [Optionen] [Dateiliste]
|
||||
.PP
|
||||
Bei einer fehlenden Dateiliste startet der Editor mit einem leeren
|
||||
Puffer. Andernfalls werden nach den folgenden vier M<>glichkeiten eine oder
|
||||
mehrere Dateien bearbeitet:
|
||||
Puffer. Andernfalls werden eine oder mehrere Dateien mit einer der folgenden
|
||||
vier Optionen bearbeitet:
|
||||
.TP 12
|
||||
Datei ...
|
||||
Eine Liste von Dateinamen. Die erste Datei wird in den Puffer geladen und
|
||||
@@ -60,14 +58,14 @@ zur aktuellen. Der Cursor wird auf der ersten Zeile des Puffers
|
||||
platziert. Zu den anderen Dateien kann mit dem Befehl <20>:next<78> gelangt
|
||||
werden. Falls einer der Dateinamen mit einem Bindestrich beginnt, stellen
|
||||
Sie der Dateiliste <20>\-\-<EFBFBD> voran.
|
||||
.TP
|
||||
\-
|
||||
.TP
|
||||
\fB\-\fP
|
||||
Die zu bearbeitende Datei wird von der Standardeingabe gelesen. Befehle
|
||||
werden von der Standardfehlerausgabe gelesen, die ein Text\-Terminal sein
|
||||
sollte.
|
||||
.TP
|
||||
\-t {Tag}
|
||||
Die zu editierende Datei und die anf<6E>ngliche Cursor\-Position h<>ngen von
|
||||
.TP
|
||||
\fB\-t\fP {Tag}
|
||||
Die zu bearbeitende Datei und die anf<6E>ngliche Cursor\-Position h<>ngen von
|
||||
einem <20>Tag<61> ab, einer Art Sprungmarke. {Tag} wird in der Tag\-Datei
|
||||
nachgeschlagen, die zugeh<65>rige Datei wird zur aktuellen und der zugeh<65>rige
|
||||
Befehl wird ausgef<65>hrt. Dies wird meistens f<>r Programme in der Sprache <20>C<EFBFBD>
|
||||
@@ -75,394 +73,448 @@ benutzt, wobei {Tag} ein Funktionsname sein k
|
||||
Befehls ist, dass die Datei, die die Funktion enth<74>lt, als aktuelle im
|
||||
Editor ge<67>ffnet und angezeigt wird und der Cursor auf dem Beginn der
|
||||
Funktion positioniert wird. Siehe <20>:help tag\-commands<EFBFBD>.
|
||||
.TP
|
||||
\-q [Fehlerdatei]
|
||||
.TP
|
||||
\fB\-q\fP [Fehlerdatei]
|
||||
Startet im QuickFix\-Modus. Die Datei [Fehlerdatei] wird gelesen und der
|
||||
erste Fehler wird angezeigt. Falls [Fehlerdatei] ausgelassen wird, wird der
|
||||
Dateiname aus der Option 'errorfile' verwendet (bei AmigaOS ist dies
|
||||
vorgabem<EFBFBD><EFBFBD>ig <20>AztecC.Err<72>, sowie "errors.err<72> bei anderen). Weitere Fehler
|
||||
k<EFBFBD>nnen mit dem <20>:cn<63>\-Befehl angesprungen werden. Siehe ":help quickfix<69>.
|
||||
Dateiname aus der Option <EFBFBD>Fehlerdatei<EFBFBD> ermittelt (auf dem Amiga ist dies
|
||||
standardm<EFBFBD><EFBFBD>ig <20>AztecC.Err<72>, sowie <EFBFBD>errors.err<72> bei anderen). Weitere Fehler
|
||||
k<EFBFBD>nnen mit dem <20>:cn<63>\-Befehl angesprungen werden. Siehe <EFBFBD>:help quickfix<69>.
|
||||
.PP
|
||||
\fBVim\fP reagiert unterschiedlich auf den Namen, der verwendet wird, um Vim zu
|
||||
starten (die ausf<73>hrbare Datei kann dieselbe sein).
|
||||
\fBVim\fP reagiert in Abh<62>ngigkeit vom benutzten Programmnamen unterschiedlich
|
||||
(die ausf<73>hrbare Datei kann dieselbe sein).
|
||||
.TP 10
|
||||
vim
|
||||
der <20>normale<6C> Weg, alles ist standardm<64><6D>ig
|
||||
.TP
|
||||
ex
|
||||
Startet im Ex\-Modus. Mit dem Befehl <20>:vi<76> gelangt man in den normalen
|
||||
Modus. Funktioniert auch mit dem Argument <EFBFBD>\-e<EFBFBD>.
|
||||
.TP
|
||||
view
|
||||
Startet im Nur\-Lesen\-Modus. Die Datei wird vor dem <20>berschreiben
|
||||
gesch<EFBFBD>tzt. Dasselbe wird mit dem Parameter <20>\-R<EFBFBD> erreicht.
|
||||
.TP
|
||||
gvim gview
|
||||
Die grafische Version: <20>ffnet ein neues Fenster. Dasselbe wird mit dem
|
||||
Parameter <20>\-g<EFBFBD> erreicht.
|
||||
.TP
|
||||
evim eview
|
||||
Die grafische Version im einfachen Modus: <20>ffnet ein neues Fenster. Dasselbe
|
||||
wird mit dem Parameter <20>\-y<EFBFBD> erreicht.
|
||||
.TP
|
||||
rvim rview rgvim rgview
|
||||
Wie die obigen, aber mit Beschr<68>nkungen: Es ist nicht m<>glich, Shell\-Befehle
|
||||
aufzurufen oder mit Unterbrechung in eine Shell zur<75>ckzuspringen. Dasselbe
|
||||
wird mit dem Parameter <20>\-Z<EFBFBD> erreicht.
|
||||
\fBvim\fP
|
||||
Der <20>normale<6C> Weg, alles ist standardm<64><6D>ig.
|
||||
.TP
|
||||
\fBex\fP
|
||||
Startet im Ex\-Modus. Mit dem Befehl <20>:vi<76> gelangen Sie in den normalen
|
||||
Modus. Funktioniert auch mit dem Argument \fB\-e\fP.
|
||||
.TP
|
||||
\fBview\fP
|
||||
Startet im schreibgesch<EFBFBD>tzten Modus. Die Datei wird vor dem <20>berschreiben
|
||||
gesch<EFBFBD>tzt. Dasselbe wird mit dem Argument \fB\-R\fP erreicht.
|
||||
.TP
|
||||
\fBgvim gview\fP
|
||||
Startet die grafische Version. <20>ffnet ein neues Fenster. Dasselbe wird mit
|
||||
dem Argument \fB\-g\fP erreicht.
|
||||
.TP
|
||||
\fBevim eview\fP
|
||||
Startet die grafische Version im einfachen Modus. <20>ffnet ein neues
|
||||
Fenster. Dasselbe wird mit dem Argument \fB\-y\fP erreicht.
|
||||
.TP
|
||||
\fBrvim rview rgvim rgview\fP
|
||||
Wie die obigen, aber mit Beschr<68>nkungen. Es ist nicht m<>glich, Shell\-Befehle
|
||||
aufzurufen oder \fBVim\fP zu suspendieren. Dasselbe wird mit dem Argument \fB\-Z\fP
|
||||
erreicht.
|
||||
.SH OPTIONEN
|
||||
Die Optionen k<>nnen in beliebiger Reihenfolge vor oder nach den Dateinamen
|
||||
angegeben werden. Optionen ohne Parameter k<>nnen hinter einem einzigen
|
||||
angegeben werden. Optionen ohne Argument k<>nnen hinter einem einzigen
|
||||
Bindestrich gruppiert werden.
|
||||
.TP 12
|
||||
+[Nummer]
|
||||
\fB+\fP[Nummer]
|
||||
In der ersten Datei wird der Cursor auf die Zeile [Nummer] gesetzt. Falls
|
||||
[Nummer] nicht angegeben wird, wird der Cursor in die letzte Zeile der Datei
|
||||
gesetzt.
|
||||
.TP
|
||||
+/{Suchmuster}
|
||||
.TP
|
||||
\fB+\fP/{Suchmuster}
|
||||
In der ersten Datei wird der Cursor auf das erste Auftreten von {Suchmuster}
|
||||
gesetzt. Siehe <20>:help search\-pattern<EFBFBD>.
|
||||
.TP
|
||||
+{Befehl}
|
||||
.TP
|
||||
\-c {Befehl}
|
||||
gesetzt. Siehe <20>:help search\-pattern<EFBFBD> f<>r die verf<72>gbaren Suchmuster.
|
||||
.TP
|
||||
\fB+\fP{Befehl}
|
||||
.TP
|
||||
\fB\-c\fP {Befehl}
|
||||
{Befehl} wird nach dem Lesen der ersten Datei ausgef<65>hrt. Als {Befehl} wird
|
||||
ein Ex\-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss alles
|
||||
in Anf<EFBFBD>hrungszeichen gesetzt werden (h<>ngt von der verwendeten Shell
|
||||
ab). Beispiel: vim "+set si" main.c
|
||||
ein Ex\-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss er in
|
||||
Anf<EFBFBD>hrungszeichen gesetzt werden (h<>ngt von der verwendeten Shell
|
||||
ab). Beispiel: <EFBFBD>vim "+set si" main.c<EFBFBD>
|
||||
.br
|
||||
Anmerkung: Sie k<>nnen bis zu 10 <20>+<2B>\- oder "\-c<EFBFBD>\-Befehle verwenden.
|
||||
.TP
|
||||
\-S {Datei}
|
||||
{Datei} wird nach dem Lesen der ersten Datei ausgef<65>hrt. Dies entspricht <20>\-c
|
||||
"source {Datei}"<22>. {Datei} darf nicht mit einem Bindestrich (\-)
|
||||
anfangen. Wenn kein Dateiname angegeben wird, wird <20>Session.vim<69> verwendet
|
||||
(Funktioniert nur, wenn <20>\-S<EFBFBD> als letzter Parameter steht).
|
||||
.TP
|
||||
\-\-cmd {Befehl}
|
||||
Wie <20>\-c<EFBFBD>, aber dieser Befehl wird vor allen VimRC\-Dateien ausgef<65>hrt. Sie
|
||||
k<EFBFBD>nnen unabh<62>ngig von den <20>\-c<EFBFBD>\-Befehlen bis zu 10 dieser Befehle verwenden.
|
||||
.TP
|
||||
\-A
|
||||
Anmerkung: Sie k<>nnen bis zu zehn \fB+c\fP\- oder \fB\-c\fP\-Befehle verwenden.
|
||||
.TP
|
||||
\fB\-A\fP
|
||||
Falls \fBVim\fP mit Unterst<73>tzung f<>r das Schreiben von rechts nach links und
|
||||
arabischer Tastaturbelegung compiliert wurde (ARABIC), startet dieser
|
||||
Parameter den Modus f<>rs Arabische (:set arabic). Anderenfalls beendet sich
|
||||
\fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
b
|
||||
.TP
|
||||
\fB\-b\fP
|
||||
Bin<EFBFBD>rer Modus: Es werden einige Variablen gesetzt, sodass es m<>glich ist,
|
||||
eine bin<69>re oder ausf<73>hrbare Datei zu bearbeiten.
|
||||
.TP
|
||||
\-C
|
||||
Kompatibel: Setzt die Option 'compatible'. Das macht \fBVim\fP im Verhalten
|
||||
sehr <20>hnlich zu Vi, selbst wenn eine VimRC\-Datei existiert.
|
||||
.TP
|
||||
\-d
|
||||
Startet im diff\-Modus. Es sollten zwei, drei oder vier Dateinamen als
|
||||
Parameter <EFBFBD>bergeben werden. \fBVim\fP <20>ffnet sie alle und zeigt die
|
||||
Unterschiede an. Arbeitet wie vimdiff(1).
|
||||
.TP
|
||||
\-d {Ger<65>t}
|
||||
<EFBFBD>ffnet das {Ger<65>t}, um es als Terminal zu nutzen. Nur f<EFBFBD>r AmigaOS. Beispiel:
|
||||
"\-d con:20/30/600/150".
|
||||
.TP
|
||||
D
|
||||
Debug\-Modus: \fBVim\fP geht in den Debug\-Modus, wenn der erste Befehl in einem
|
||||
Skript ausgef<65>hrt wird.
|
||||
.TP
|
||||
\-e
|
||||
Startet \fBVim\fP im Ex\-Modus, als w<>rde als ausf<73>hrbare Datei <EFBFBD>ex<EFBFBD> aufgerufen.
|
||||
.TP
|
||||
\-E
|
||||
Startet \fBVim\fP im erweiterten Ex\-Modus, als w<>rde die ausf<73>hrbare Datei als
|
||||
<EFBFBD>exim<EFBFBD> aufgerufen.
|
||||
.TP
|
||||
\-f
|
||||
.TP
|
||||
\fB\-C\fP
|
||||
Kompatibler Modus: Setzt die Option <EFBFBD>compatible<EFBFBD>. Das macht \fBVim\fP im
|
||||
Verhalten sehr <20>hnlich zu Vi, selbst wenn eine .vimrc\-Datei existiert.
|
||||
.TP
|
||||
\fB\-d\fP
|
||||
Diff\-Modus: Es sollten von zwei bis zu acht Dateinamen als Argumente
|
||||
<EFBFBD>bergeben werden. \fBVim\fP <20>ffnet sie alle und zeigt deren die Unterschiede
|
||||
an. Arbeitet wie \fBvimdiff\fP(1).
|
||||
.TP
|
||||
\fB\-d\fP {Ger<65>t}, \fB\-dev\fP {Ger<65>t}
|
||||
<EFBFBD>ffnet das {Ger<65>t}, um es als Terminal zu nutzen. Nur auf dem
|
||||
Amiga. Beispiel: <20>\-d con:20/30/600/150<EFBFBD>.
|
||||
.TP
|
||||
\fB\-D\fP
|
||||
Debug\-Modus: \fBVim\fP geht in den Modus zur Fehlersuche, wenn der erste Befehl
|
||||
aus einem Skript ausgef<65>hrt wird.
|
||||
.TP
|
||||
\fB\-e\fP
|
||||
Ex\-Modus: Startet \fBVim\fP als w<>rde die ausf<73>hrbare Datei \fBex\fP lauten.
|
||||
.TP
|
||||
\fB\-E\fP
|
||||
Verbesserter Ex\-Modus: Startet \fBVim\fP als w<>rde die ausf<73>hrbare Datei
|
||||
\fBexim\fP lauten.
|
||||
.TP
|
||||
\fB\-f\fP
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
l<EFBFBD>st sich nicht von der Shell, in der er aufgerufen wurde. Bei AmigaOS wird
|
||||
kein neues Fenster ge<67>ffnet. Dieser Parameter wird benutzt, damit das
|
||||
aufrufende Programm auf das Beenden des Bearbeitungssitzung wartet (z.B.:
|
||||
mail). Bei AmigaOS funktionieren die Befehle <20>:sh<73> und ":!<21> nicht.
|
||||
.TP
|
||||
\-\-nofork
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
l<EFBFBD>st sich nicht von der Shell, in der er aufgerufen wurde.
|
||||
.TP
|
||||
\-F
|
||||
l<EFBFBD>st sich nicht von der Shell, in der er aufgerufen wurde. Auf dem Amiga
|
||||
wird kein neues Fenster ge<67>ffnet. Dieser Parameter wird benutzt, damit das
|
||||
aufrufende Programm auf das Beenden der Bearbeitungssitzung wartet
|
||||
(z.B. mail). Auf dem Amiga funktionieren die Befehle <20>:sh<73> und <EFBFBD>:!<21> nicht.
|
||||
.TP
|
||||
\fB\-F\fP
|
||||
Wenn \fBVim\fP mit FKMAP\-Unterst<EFBFBD>tzung f<>r das Schreiben von rechts nach links
|
||||
und Farsi\-Tastatur\-Belegung kompiliert wurde, startet Vim im Farsi\-Modus,
|
||||
d.h. die Optionen 'fkmap' und 'rightleft' werden gesetzt. Andernfalls bricht
|
||||
und Farsi\-Tastatur\-Belegung kompiliert wurde, startet \fBVim\fP im Farsi\-Modus,
|
||||
d.h. die Optionen <EFBFBD>fkmap<EFBFBD> und <EFBFBD>rightleft<EFBFBD> werden gesetzt. Andernfalls bricht
|
||||
\fBVim\fP mit einer Fehlermeldung ab.
|
||||
.TP
|
||||
\-g
|
||||
.br
|
||||
Hinweis: Die Unterst<73>tzung von Farsi wurde im Patch 8.1.0932 entfernt.
|
||||
.TP
|
||||
\fB\-g\fP
|
||||
Falls \fBVim\fP mit GUI\-Unterst<EFBFBD>tzung kompiliert wurde, wird die GUI
|
||||
aktiviert. Falls keine GUI\-Unterst<EFBFBD>tzung einkompiliert wurde, wird mit einer
|
||||
Fehlermeldung abgebrochen.
|
||||
.TP
|
||||
\-h
|
||||
Gibt eine kleine Hilfe f<>r die Befehlszeilenparameter aus. Danach beendet
|
||||
sich \fBVim.\fP
|
||||
.TP
|
||||
\-H
|
||||
Hebr<EFBFBD>isch\-Modus, falls \fBVim\fP mit RIGHTLEFT\-Unterst<EFBFBD>tzung f<>r das Schreiben
|
||||
von rechts nach links und hebr<62>ischer Tastaturbelegung kompiliert wurde,
|
||||
werden die Optionen 'hkmap' und 'rightleft' gesetzt. Andernfalls beendet
|
||||
sich \fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
\-i {VimInfo}
|
||||
Wenn eine VimInfo\-Datei verwendet wird: Verwendet statt <20>~/.viminfo<66> die
|
||||
angegebene Datei. Es ist auch m<>glich die Verwendung einer VimInfo\-Datei
|
||||
durch Angabe des Dateinamen <20>NONE<4E> zu verhindern,
|
||||
.TP
|
||||
\-L
|
||||
dasselbe wie <20>\-r<EFBFBD>
|
||||
.TP
|
||||
\-l
|
||||
Lisp\-Modus. Aktiviert die Optionen 'lisp' und 'showmatch'.
|
||||
.TP
|
||||
\-m
|
||||
Deaktiviert das Ver<65>ndern von Dateien, indem die Option 'write' gel<65>scht
|
||||
wird. Der Puffer kann ver<65>ndert werden, nur das Schreiben einer Datei ist
|
||||
nicht m<>glich.
|
||||
.TP
|
||||
\-M
|
||||
Keine Ver<65>nderungen erlaubt: Die Optionen 'modifiable' und 'write' werden
|
||||
gel<EFBFBD>scht, so dass <20>nderungen nicht erlaubt sind und Dateien nicht
|
||||
geschrieben werden k<EFBFBD>nnen. Man beachte, dass diese Optionen ('modifiable',
|
||||
\&'write') dennnoch nachtr<74>glich zum Erlauben von <20>nderungen gesetzt werden
|
||||
k<EFBFBD>nnen.
|
||||
.TP
|
||||
\-N
|
||||
Nicht\-kompatibler Modus: L<>scht die Option 'compatible'. Dies veranlasst
|
||||
\fBVim\fP, sich ein wenig besser, aber weniger Vi\-kompatibel zu verhalten,
|
||||
selbst wenn es keine VimRC\-Datei gibt.
|
||||
.TP
|
||||
\-n
|
||||
Verwendet keine Auslagerungsdatei: Eine Wiederherstellung nach einem Absturz
|
||||
ist nicht m<>glich. Auf einem langsamen Medium (Diskette) kann diese
|
||||
aktiviert. Falls keine GUI\-Unterst<EFBFBD>tzung einkompiliert wurde, wird \fBVim\fP
|
||||
mit einer Fehlermeldung abgebrochen.
|
||||
.TP
|
||||
\fB\-H\fP
|
||||
Falls \fBVim\fP mit RIGHTLEFT\-Unterst<EFBFBD>tzung f<>r das Schreiben von rechts nach
|
||||
links und hebr<62>ischer Tastaturbelegung kompiliert wurde, startet \fBVim\fP im
|
||||
hebr<EFBFBD>ischen Modus und die Optionen <20>hkmap<61> und <20>rightleft<66> werden
|
||||
gesetzt. Andernfalls beendet sich \fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
\fB\-i\fP {VimInfo}
|
||||
Verwendet zum Lesen und Schreiben die angegebene Datei anstatt der Vorgabe
|
||||
<EFBFBD>~/.viminfo<66>. Es ist auch m<>glich, die Verwendung einer .viminfo\-Datei durch
|
||||
Angabe des Dateinamens <20>NONE<4E> zu verhindern.
|
||||
.TP
|
||||
\fB\-l\fP
|
||||
Lisp\-Modus: Aktiviert die Optionen <20>lisp<73> und <20>showmatch<63>.
|
||||
.TP
|
||||
\fB\-L\fP
|
||||
Dasselbe wie \fB\-r\fP.
|
||||
.TP
|
||||
\fB\-m\fP
|
||||
Deaktiviert das Ver<65>ndern von Dateien, indem die Option <20>write<74>
|
||||
zur<EFBFBD>ckgesetzt wird. Der Puffer kann ver<65>ndert werden, nur das Schreiben
|
||||
einer Datei ist nicht m<>glich.
|
||||
.TP
|
||||
\fB\-M\fP
|
||||
Keine Ver<65>nderungen erlaubt. Die Optionen <20>modifiable<6C> und <20>write<74> werden
|
||||
zur<EFBFBD>ckgesetzt, so dass <20>nderungen nicht erlaubt sind und Dateien nicht
|
||||
geschrieben werden k<>nnen. Beachten Sie, dass diese Optionen dennoch
|
||||
nachtr<EFBFBD>glich zum Erlauben von <20>nderungen gesetzt werden k<>nnen.
|
||||
.TP
|
||||
\fB\-n\fP
|
||||
Verwendet keine Auslagerungsdatei. Eine Wiederherstellung nach einem Absturz
|
||||
ist nicht m<>glich. Auf einem langsamen Medium (z.B. Diskette) kann diese
|
||||
Einstellung n<>tzlich sein. Kann auch mit <20>set uc=0<> erreicht werden; kann
|
||||
mit <20>set uc=200<30> aufgehoben werden.
|
||||
.TP
|
||||
\-nb
|
||||
\fBVim\fP fungiert als Server f<>r NetBeans. Details siehe Dokumentation.
|
||||
.TP
|
||||
\-o[N]
|
||||
<EFBFBD>ffnet [N] Fenster <20>bereinander. Wenn keine Zahl angegeben wird, <20>ffne ein
|
||||
.TP
|
||||
\fB\-N\fP
|
||||
Nicht\-kompatibler Modus: Setzt die Option <20>compatible<6C> zur<75>ck. Dies
|
||||
veranlasst \fBVim\fP, sich ein wenig besser, aber weniger Vi\-kompatibel zu
|
||||
verhalten, selbst wenn es keine .vimrc\-Datei gibt.
|
||||
.TP
|
||||
\fB\-nb\fP
|
||||
\fBVim\fP fungiert als Editor\-Server f<>r NetBeans. Details siehe Dokumentation.
|
||||
.TP
|
||||
\fB\-o\fP[N]
|
||||
<EFBFBD>ffnet N Fenster <20>bereinander. Wenn keine Zahl angegeben wird, <20>ffnet ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-O[N]
|
||||
<EFBFBD>ffnet [N] Fenster nebeneinander. Wenn keine Zahl angegeben wird, <20>ffne ein
|
||||
.TP
|
||||
\fB\-O\fP[N]
|
||||
<EFBFBD>ffnet N Fenster nebeneinander. Wenn keine Zahl angegeben wird, <20>ffnet ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-p[N]
|
||||
<EFBFBD>ffnet [N] Reiterseiten. Wenn keine Zahl angegeben wird, <20>ffne eine
|
||||
.TP
|
||||
\fB\-p\fP[N]
|
||||
<EFBFBD>ffnet N Reiterseiten. Wenn keine Zahl angegeben wird, <20>ffnet eine
|
||||
Reiterseite pro Datei.
|
||||
.TP
|
||||
\-R
|
||||
Nur\-Lesen\-Modus: Die Option 'readonly' wird gesetzt. Der Puffer kann noch
|
||||
bearbeitet werden, aber es wird verhindert, eine Datei aus Versehen zu
|
||||
<EFBFBD>berschreiben. Wenn Sie wirklich eine Datei <20>berschreiben wollen, f<>gen Sie
|
||||
dem Ex\-Befehl ein Ausrufezeichen hinzu (wie in <20>:w!<21>). Die Option "\-R<EFBFBD>
|
||||
bedingt die Option <20>\-n<EFBFBD> (siehe oben). Die Option 'readonly' kann durch ":set
|
||||
noro<EFBFBD> gel<65>scht werden. Siehe <20>:help 'readonly'<27>.
|
||||
.TP
|
||||
\-r
|
||||
Listet die Auslagerungsdateien und gibt Informationen zu ihrer
|
||||
Verwendbarkeit zur Wiederherstellung.
|
||||
.TP
|
||||
\-r {Datei}
|
||||
.TP
|
||||
\fB\-P\fP {Eltern\-Titel}
|
||||
Nur Win32\-GUI: Gibt den Titel der Elternapplikation an. Wenn m<>glich l<>uft
|
||||
\fBVim\fP in einem MDI\-Fenster innerhalb der Applikation. {Eltern\-Titel} muss
|
||||
im Fenstertitel der Elternapplikation vorkommen. Stellen Sie sicher, dass er
|
||||
spezifisch genug ist. Beachten Sie, dass die Implementierung immer noch
|
||||
primitiv ist. Sie wird nicht mit allen Applikationen funktionieren und das
|
||||
Men<EFBFBD> funktioniert nicht.
|
||||
.TP
|
||||
\fB\-r\fP
|
||||
Listet die Auslagerungsdateien auf und gibt Informationen zu ihrer
|
||||
Verwendbarkeit zur Wiederherstellung aus.
|
||||
.TP
|
||||
\fB\-r\fP {Datei}
|
||||
Wiederherstellungsmodus: Die Auslagerungsdatei wird zur Wiederherstellung
|
||||
verwendet und hat denselben Dateinamen wie die Text\-Datei + <20>.swp<77>. Siehe
|
||||
":help recovery<72>.
|
||||
.TP
|
||||
\-s
|
||||
Der stille Modus: Nur wenn die ausf<73>hrbare Datei als <20>ex<65> aufgerufen wird
|
||||
oder vor <20>\-s<EFBFBD> die Option "\-e<EFBFBD> gegeben wird.
|
||||
.TP
|
||||
\-s {Eingabeskript}
|
||||
Die Datei {Eingabeskript} wird gelesen und ausgef<65>hrt, als w<>rden Sie die
|
||||
Zeichen in ihr tippen. Dasselbe kann mit dem Befehl <20>:source!
|
||||
einer abgest<73>rzten Bearbeitungssitzung verwendet und hat denselben
|
||||
Dateinamen wie die Textdatei mit angeh<65>ngtem <20>.swp<77>. Siehe <20>:help recovery<72>.
|
||||
.TP
|
||||
\fB\-R\fP
|
||||
Schreibgesch<EFBFBD>tzter Modus: Die Option <20>readonly<6C> wird gesetzt. Der Puffer
|
||||
kann noch bearbeitet werden, aber es wird verhindert, eine Datei aus
|
||||
Versehen zu <20>berschreiben. Wenn Sie wirklich eine Datei <20>berschreiben
|
||||
wollen, f<>gen Sie dem Ex\-Befehl ein Ausrufezeichen hinzu (wie in <20>:w!<21>). Die
|
||||
Option \fB\-R\fP bedingt die Option \fB\-n\fP (siehe oben). Die Option <20>readonly<6C>
|
||||
kann durch <20>:set noro<72> zur<75>ckgesetzt werden. Siehe <20>:help readonly<6C>.
|
||||
.TP
|
||||
\fB\-s\fP
|
||||
Stiller Modus: Nur wenn die ausf<73>hrbare Datei als \fBex\fP aufgerufen wird oder
|
||||
vor \fB\-s\fP die Option \fB\-e\fP angegeben wird.
|
||||
.TP
|
||||
\fB\-s\fP {Eingabeskript}
|
||||
Die Skriptdatei {Eingabeskript} wird gelesen und ausgef<65>hrt, als w<>rden Sie
|
||||
die Zeichen eingeben. Dasselbe kann mit dem Befehl <20>:source!
|
||||
{Eingabeskript}<7D> erreicht werden. Wird das Ende der Datei vor dem Beenden
|
||||
des Editors erreicht, werden weitere Zeichen von der Tastatur gelesen.
|
||||
.TP
|
||||
\-T {Terminal}
|
||||
.TP
|
||||
\fB\-S\fP {Datei}
|
||||
{Datei} wird nach dem Lesen der ersten Datei ausgef<65>hrt. Dies entspricht <20>\-c
|
||||
"source {Datei}"<22>. {Datei} darf nicht mit einem Bindestrich (\-)
|
||||
anfangen. Wenn kein Dateiname angegeben wird, wird <20>Session.vim<69> verwendet
|
||||
(Funktioniert nur, wenn \fB\-S\fP als letztes Argument steht).
|
||||
.TP
|
||||
\fB\-T\fP {Terminal}
|
||||
Setzt den Namen des benutzten Terminals. Nur erforderlich, wenn die
|
||||
Automatik nicht funktioniert. Sollte ein \fBVim\fP bekanntes Terminal sein:
|
||||
(builtin) oder in einer termcap\- oder terminfo\-Datei definiert.
|
||||
.TP
|
||||
\-u {VimRC}
|
||||
Verwendet zur Initialisierung die Befehle in der Datei {VimRC}. Alle anderen
|
||||
Automatik nicht funktioniert. Sollte ein \fBVim\fP bekanntes (eingebautes) oder
|
||||
in einer Termcap\- oder Terminfo\-Datei definiertes Terminal sein.
|
||||
.TP
|
||||
\fB\-u\fP {vimrc}
|
||||
Verwendet zur Initialisierung die Befehle in der Datei {vimrc}. Alle anderen
|
||||
Initialisierungen werden <20>bersprungen. Benutzen Sie dies, um eine besondere
|
||||
Art von Dateien zu bearbeiten. Dies kann auch benutzt werden, um alle
|
||||
Initialisierungen zu <20>berspringen, indem der Name <20>NONE<4E> angegeben wird. F<>r
|
||||
weitere Einzelheiten siehe <20>:help initialisation<EFBFBD> innerhalb von Vim.
|
||||
.TP
|
||||
\-U {GvimRC}
|
||||
Benutzt die Befehle in der Datei {GvimRC} f<>r die Initialisierung der
|
||||
grafischen Oberfl<66>che. Alle anderen Initialisierungen werden
|
||||
weitere Einzelheiten siehe <20>:help initialization<EFBFBD> innerhalb von \fBVim\fP.
|
||||
.TP
|
||||
\fB\-U\fP {gvimrc}
|
||||
Benutzt die Befehle in der Datei {gvimrc} f<>r die Initialisierung der
|
||||
grafischen Oberfl<66>che. Alle anderen GUI\-Initialisierungen werden
|
||||
<EFBFBD>bersprungen. Dies kann ebenfalls benutzt werden, um alle
|
||||
GUI\-Initialisierungen zu <20>berspringen, indem der Name <20>NONE<4E> angegeben
|
||||
wird. Siehe <20>:help gui\-init<EFBFBD> innerhalb von Vim f<>r weitere Einzelheiten.
|
||||
.TP
|
||||
\-V[N]
|
||||
Ausf<EFBFBD>hrlich (verbose): Gibt Meldungen dar<61>ber, welche Befehlsdateien
|
||||
eingelesen werden, und <20>ber das Lesen und Schreiben einer VimInfo\-Datei. Die
|
||||
optionale Zahl N ist der Wert f<>r 'verbose'. Vorgabe ist 10.
|
||||
.TP
|
||||
\-v
|
||||
Startet \fBVim\fP im Vi\-Modus, so als w<>rde die ausf<73>hrbare Datei mit <20>vi<76>
|
||||
aufgerufen. Dies wirkt sich nur aus, wenn die ausf<73>hrbare Datei als <20>ex<65>
|
||||
wird. Siehe <20>:help gui\-init<EFBFBD> innerhalb von \fBVim\fP f<>r weitere Einzelheiten.
|
||||
.TP
|
||||
\fB\-v\fP
|
||||
Vi\-Modus: Startet \fBVim\fP als w<>rde die ausf<73>hrbare Datei mit \fBvi\fP
|
||||
aufgerufen. Dies wirkt sich nur aus, wenn die ausf<73>hrbare Datei als \fBex\fP
|
||||
aufgerufen wird.
|
||||
.TP
|
||||
\-w {Ausgabeskript}
|
||||
Alle Zeichen, die eingetippt werden, werden in der Datei {Ausgabeskript}
|
||||
.TP
|
||||
\fB\-V\fP[N]
|
||||
Ausf<EFBFBD>hrlich (verbose): Gibt Meldungen dar<61>ber, welche Befehlsdateien
|
||||
ausgef<EFBFBD>hrt werden, und <20>ber das Lesen und Schreiben einer viminfo\-Datei. Die
|
||||
optionale Zahl N ist der Wert f<>r <20>verbose<73>. Vorgabe ist 10.
|
||||
.TP
|
||||
\fB\-V\fP[N]{Dateiname}
|
||||
Wie \fB\-V\fP und setzt <20>verbosefile<6C> auf {Dateiname}. Das Ergebnis besteht
|
||||
darin, dass Meldungen nicht angezeigt werden, sondern in die Datei
|
||||
{Dateiname} geschrieben werden. {Dateiname} darf nicht mit einer Ziffer
|
||||
anfangen.
|
||||
.TP
|
||||
\fB\-w\fP{Nummer}
|
||||
Setzt die Option <20>window<6F> auf {Nummer}.
|
||||
.TP
|
||||
\fB\-w\fP {Ausgabeskript}
|
||||
Alle Zeichen, die eingegeben werden, werden in der Datei {Ausgabeskript}
|
||||
aufgezeichnet, solange bis Sie \fBVim\fP beenden. Dies ist n<>tzlich, falls Sie
|
||||
eine Skript\-Datei zum Benutzen mit <20>vim \-s<EFBFBD> oder ":source!<21> erzeugen
|
||||
eine Skript\-Datei zum Benutzen mit <20>vim \-s<EFBFBD> oder <EFBFBD>:source!<21> erzeugen
|
||||
wollen. Falls die Datei {Ausgabeskript} vorhanden ist, werden die Zeichen
|
||||
angeh<EFBFBD>ngt.
|
||||
.TP
|
||||
\-W {Ausgabeskript}
|
||||
Wie \-w, aber eine bereits vorhandene Datei wird <20>berschrieben.
|
||||
.TP
|
||||
\-x
|
||||
Benutzt beim Schreiben von Dateien eine Verschl<68>sselung. Fragt nach dem
|
||||
.TP
|
||||
\fB\-W\fP {Ausgabeskript}
|
||||
Wie \fB\-w\fP, aber eine bereits vorhandene Datei wird <20>berschrieben.
|
||||
.TP
|
||||
\fB\-x\fP
|
||||
Benutzt beim Schreiben von Dateien eine Verschl<68>sselung, falls \fBVim\fP mit
|
||||
Unterst<EFBFBD>tzung von Verschl<68>sselung kompiliert worden ist. Fragt nach dem
|
||||
Schl<EFBFBD>ssel.
|
||||
.TP
|
||||
\-X
|
||||
F<EFBFBD>hrt keine Verbindung zum X\-Server durch. Dadurch verk<72>rzt sich die
|
||||
Startzeit, aber der Fenstertitel und die Zwischenablage werden nicht
|
||||
.TP
|
||||
\fB\-X\fP
|
||||
Verbindet nicht mit dem X\-Server. Dadurch verk<72>rzt sich die Startzeit in
|
||||
einem Terminal, aber der Fenstertitel und die Zwischenablage werden nicht
|
||||
verwendet.
|
||||
.TP
|
||||
\-y
|
||||
Startet \fBVim\fP im einfachen Modus, als w<>rde die ausf<73>hrbare Datei mit
|
||||
<EFBFBD>evim<EFBFBD> oder <20>eview<65> aufgerufen. \fBVim\fP verh<72>lt sich dann wie ein Editor zum
|
||||
Klicken und Tippen.
|
||||
.TP
|
||||
\-Z
|
||||
.TP
|
||||
\fB\-y\fP
|
||||
Einfacher Modus: Startet \fBVim\fP als w<>rde die ausf<73>hrbare Datei \fBevim\fP oder
|
||||
\fBeview\fP hei<65>en. \fBVim\fP verh<72>lt sich dann wie ein Editor zum Klicken und
|
||||
Tippen.
|
||||
.TP
|
||||
\fB\-Z\fP
|
||||
Eingeschr<EFBFBD>nkter Modus: Funktioniert, als w<>rde der Name der ausf<73>hrbaren
|
||||
Datei mit <20>r<EFBFBD> beginnen.
|
||||
.TP
|
||||
\-\-
|
||||
.TP
|
||||
\fB\-\-\fP
|
||||
Markiert das Ende der Optionen. Argumente, die folgen, werden als Dateinamen
|
||||
behandelt. Dies kann benutzt werden, um einen Dateinamen mit <20>\-<EFBFBD> am Anfang
|
||||
zu verwenden.
|
||||
.TP
|
||||
\-\-echo\-wid
|
||||
.TP
|
||||
\fB\-\-clean\fP
|
||||
Verwendet keine pers<72>nlichen Einstellungen (vimrc, plugins,
|
||||
usw,). Hilfreich, um festzustellen, ob ein Problem mit einer sauberen
|
||||
Vim\-Konfiguration reproduzierbar ist.
|
||||
.TP
|
||||
\fB\-\-cmd\fP {Befehl}
|
||||
Wie \fB\-c\fP, aber dieser Befehl wird vor allen vimrc\-Dateien ausgef<65>hrt. Sie
|
||||
k<EFBFBD>nnen unabh<62>ngig von den \fB\-c\fP\-Befehlen bis zu zehn dieser Befehle
|
||||
verwenden.
|
||||
.TP
|
||||
\fB\-\-echo\-wid\fP
|
||||
Nur GTK\-GUI: Schreibe die Fenster\-ID auf die Standardausgabe.
|
||||
.TP
|
||||
\-\-help
|
||||
Gibt eine Hilfe\-Nachricht aus und beendet, wie <20>\-h<EFBFBD>.
|
||||
.TP
|
||||
\-\-literal
|
||||
Nimmt die Dateinamen so wie sie sind und vervollst<73>ndigt sie nicht nach
|
||||
Metazeichen (*,?). Dies wirkt sich nicht unter Unix aus, wo die Shell die
|
||||
Metazeichen expandiert.
|
||||
.TP
|
||||
\-\-noplugin
|
||||
Lade keine Plugins. Impliziert durch <20>\-u NONE<4E>.
|
||||
.TP
|
||||
\-\-remote
|
||||
.TP
|
||||
\fB\-\-gui\-dialog\-file\fP {Name}
|
||||
Schreibt bei der Verwendung der GUI den Titel und die Meldung des Dialogs in
|
||||
die Datei {Name}, anstatt sie als Dialog anzuzeigen. Die Datei wird entweder
|
||||
erzeugt oder erweitert. Dies ist nur f<>r Testzwecke hilfreich, um zu
|
||||
verhindern, dass Tests bei einem nicht sichtbaren Dialog h<>ngen
|
||||
bleiben. Ohne Verwendung der GUI wird dieses Argument ignoriert.
|
||||
.TP
|
||||
\fB\-\-help, \-h, \-?\fP
|
||||
Gibt eine kleine Hilfe f<>r die Befehlszeilenparameter und Optionen
|
||||
aus. Danach beendet sich \fBVim\fP.
|
||||
.TP
|
||||
\fB\-\-literal\fP
|
||||
Nimmt die Dateinamen so wie sie sind und vervollst<73>ndigt sie nicht unter
|
||||
Ber<EFBFBD>cksichtigung von Metazeichen. Dies wirkt sich nicht unter Unix aus, wo
|
||||
die Shell die Metazeichen expandiert.
|
||||
.TP
|
||||
\fB\-\-log\fP {Dateiname}
|
||||
Wenn \fBVim\fP mit dem Eval\- und dem Channel\-Feature kompiliert worden ist,
|
||||
wird das Protokollieren gestartet. Eintr<74>ge werden nach {Dateiname}
|
||||
geschrieben. Dies funktioniert wie das Aufrufen von
|
||||
\fIch_logfile({Dateiname}, 'ao')\fP sehr fr<66>h w<>hrend des Programmstarts.
|
||||
.TP
|
||||
\fB\-\-nofork\fP
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
l<EFBFBD>st sich nicht von der Shell, in der er aufgerufen wurde.
|
||||
.TP
|
||||
\fB\-\-noplugin\fP
|
||||
L<EFBFBD>dt keine Erweiterungen. Impliziert durch <20>\-u NONE<4E>.
|
||||
.TP
|
||||
\fB\-\-not\-a\-term\fP
|
||||
Teilt \fBVim\fP mit, dass dem Benutzer klar ist, dass Eingabe und/oder Ausgabe
|
||||
nicht mit einem Terminal verbunden sind. Das vermeidet die entsprechende
|
||||
Warnung und eine Verz<72>gerung von zwei Sekunden.
|
||||
.TP
|
||||
\fB\-\-remote\fP
|
||||
Verbindet mit einem Vim\-Server und l<>sst ihn die in den restlichen
|
||||
Argumenten angegeben Dateien editieren. Wenn kein Server gefunden wird,
|
||||
f<EFBFBD>hrt dies zu einer Warnmeldung und die Dateien werden im gegenw<6E>rtigen Vim
|
||||
zum Bearbeiten ge<67>ffnet.
|
||||
.TP
|
||||
\-\-remote\-expr {Ausdruck}
|
||||
Verbindet mit einem Vim\-Server, f<EFBFBD>hrt {Ausdruck} aus und zeigt das Ergebnis
|
||||
auf der Standardausgabe an.
|
||||
.TP
|
||||
\-\-remote\-send {Zeichen}
|
||||
f<EFBFBD>hrt dies zu einer Warnmeldung und die Dateien werden im gegenw<6E>rtigen
|
||||
\fBVim\fP zum Bearbeiten ge<67>ffnet.
|
||||
.TP
|
||||
\fB\-\-remote\-expr\fP {Ausdruck}
|
||||
Verbindet mit einem Vim\-Server, wertet dort {Ausdruck} aus und zeigt das
|
||||
Ergebnis auf der Standardausgabe an.
|
||||
.TP
|
||||
\fB\-\-remote\-send\fP {Zeichen}
|
||||
Verbindet mit einem Vim\-Server und sendet ihm {Zeichen}.
|
||||
.TP
|
||||
\-\-remote\-silent
|
||||
Wie <EFBFBD>\-\-remote<EFBFBD>, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-remote\-wait
|
||||
Wie <EFBFBD>\-\-remote<EFBFBD>, aber Vim beendet sich nicht, bis die Dateien bearbeitet
|
||||
.TP
|
||||
\fB\-\-remote\-silent\fP
|
||||
Wie \fB\-\-remote\fP, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\fB\-\-remote\-wait\fP
|
||||
Wie \fB\-\-remote\fP, aber \fBVim\fP beendet sich nicht, bis die Dateien bearbeitet
|
||||
wurden.
|
||||
.TP
|
||||
\-\-remote\-wait\-silent
|
||||
Wie <EFBFBD>\-\-remote\-wait<EFBFBD>, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-serverlist
|
||||
.TP
|
||||
\fB\-\-remote\-wait\-silent\fP
|
||||
Wie \fB\-\-remote\-wait\fP, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\fB\-\-serverlist\fP
|
||||
Listet die Namen aller gefundenen Vim\-Server auf.
|
||||
.TP
|
||||
\-\-servername {Name}
|
||||
Benutzt {Name} als Server\-Namen. Wird f<>r den gegenw<6E>rtigen Vim benutzt,
|
||||
au<EFBFBD>er es wird mit dem Argument <20>\-\-remote<EFBFBD> benutzt, dann ist es der Name des
|
||||
zu kontaktierenden Servers.
|
||||
.TP
|
||||
\-\-socketid {id}
|
||||
Nur GTK\-GUI: Benutzt den GtkPlug\-Mechanismus, um GVim in einem anderen
|
||||
.TP
|
||||
\fB\-\-servername\fP {Name}
|
||||
Benutzt {Name} als Server\-Namen. Wird f<>r den gegenw<6E>rtigen \fBVim\fP benutzt,
|
||||
au<EFBFBD>er es wird mit einem der \fB\-\-remote\fP\-Argumente benutzt, dann ist es der
|
||||
Name des zu kontaktierenden Servers.
|
||||
.TP
|
||||
\fB\-\-socketid\fP {ID}
|
||||
Nur GTK\-GUI: Benutzt den GtkPlug\-Mechanismus, um \fBgVim\fP in einem anderen
|
||||
Fenster laufen zu lassen.
|
||||
.TP
|
||||
\-\-version
|
||||
Versionsinformation anzeigen und beenden
|
||||
.TP
|
||||
\fB\-\-startuptime\fP {Datei}
|
||||
Schreibt w<>hrend des Programmstarts Meldungen zu Zeitmessungen in die Datei
|
||||
{Datei}.
|
||||
.TP
|
||||
\fB\-\-ttyfail\fP
|
||||
Beendet das Programm sofort, wenn Standardeingabe oder Standardausgabe keine
|
||||
Terminals (tty) sind.
|
||||
.TP
|
||||
\fB\-\-version\fP
|
||||
Versionsinformation anzeigen und beenden.
|
||||
.TP
|
||||
\fB\-\-windowid\fP {ID}
|
||||
Nur Win32\-GUI: Veranlasst, dass \fBgVim\fP versucht, das Fenster {ID} als
|
||||
Eltern zu verwenden, so dass es in diesem Fenster abl<62>uft.
|
||||
.SH "EINGEBAUTE HILFE"
|
||||
Tippen Sie in \fBVim\fP <20>:help<6C>, um zu beginnen. Geben Sie ":help begriff<66> ein,
|
||||
um Hilfe <20>ber ein bestimmtes Thema zu bekommen. Zum Beispiel <20>:help ZZ<5A> f<>r
|
||||
Hilfe <20>ber den Befehl <20>ZZ<5A>. Benutzen Sie <Tab> und CTRL\-D, um
|
||||
Begriffe zu vervollst<73>ndigen (<28>:help cmdline\-completion<EFBFBD>). Tags sind
|
||||
vorhanden, um von einem Ort zum anderen zu springen (eine Art
|
||||
Hypertext\-Verkn<EFBFBD>pfungen, siehe <20>:help<6C>). Auf diese Weise k<>nnen alle
|
||||
Dokumentations\-Dateien aufgerufen werden, zum Beispiel <20>:help syntax.txt<78>.
|
||||
Geben Sie in \fBVim\fP <20>:help<6C> ein, um eine Einstiegshilfe zu erhalten. Geben
|
||||
Sie <20>:help Begriff<66> ein, um Hilfe <20>ber ein bestimmtes Thema zu bekommen. Zum
|
||||
Beispiel <20>:help ZZ<5A> f<>r Hilfe <20>ber den Befehl <20>ZZ<5A>. Benutzen Sie
|
||||
<Tab> und STRG\-D, um Begriffe zu vervollst<73>ndigen (<28>:help
|
||||
cmdline\-completion<EFBFBD>). Tags sind vorhanden, um von einem Ort zum anderen zu
|
||||
springen (eine Art Hypertext\-Verkn<EFBFBD>pfungen, siehe <20>:help<6C>). Auf diese Weise
|
||||
k<EFBFBD>nnen alle Dokumentations\-Dateien aufgerufen werden, zum Beispiel <20>:help
|
||||
syntax.txt<78>.
|
||||
.SH DATEIEN
|
||||
.TP 15
|
||||
/usr/local/lib/vim/doc/*.txt
|
||||
/usr/local/share/vim/vim??/doc/*.txt
|
||||
Dokumentations\-Dateien f<>r \fBVim\fP. Verwenden Sie <20>:help doc\-file\-list<EFBFBD>, um
|
||||
die gesamte Liste zu bekommen.
|
||||
.TP
|
||||
/usr/local/lib/vim/doc/tags
|
||||
Die <20>Tag<61>\-Datei, die verwendet wird, um Informationen in der Dokumentation
|
||||
zu finden.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/syntax.vim
|
||||
Die systemweite Einrichtung der Syntaxhervorhebung.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/*.vim
|
||||
Syntaxdateien f<>r die verschiedenen Sprachen.
|
||||
.TP
|
||||
/usr/local/lib/vim/vimrc
|
||||
Systemweite Einstellungsdatei f<>r \fBVim\fP
|
||||
.TP
|
||||
~/.vimrc
|
||||
Pers<EFBFBD>nliche Einstellungsdatei f<>r \fBVim\fP
|
||||
.TP
|
||||
/usr/local/lib/vim/gvimrc
|
||||
Systemweite Einstellungsdatei f<>r GVim
|
||||
.TP
|
||||
~/.gvimrc
|
||||
Pers<EFBFBD>nliche Einstellungsdatei f<>r GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/optwin.vim
|
||||
Das Script, das von dem Befehl <20>:options<6E> verwendet wird, eine sch<63>ne
|
||||
M<EFBFBD>glichkeit, um Optionen zu betrachten und zu setzen.
|
||||
.TP
|
||||
/usr/local/lib/vim/menu.vim
|
||||
Systemweite Einstellungsdatei f<>r das Men<65> von GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/bugreport.vim
|
||||
Das Script zum Generieren eines Fehlerberichts. Siehe <20>:help bugs<67>.
|
||||
.TP
|
||||
/usr/local/lib/vim/filetype.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Dateinamens. Siehe <20>:help 'filetype'<27>.
|
||||
.TP
|
||||
/usr/local/lib/vim/scripts.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Inhaltes. Siehe <20>:help 'filetype'<27>.
|
||||
.TP
|
||||
/usr/local/lib/vim/print/*.ps
|
||||
Diese Dateien werden zum Drucken von PostScript verwendet.
|
||||
.br
|
||||
\fIvim??\fP ist die verk<72>rzte Versionsnummer, wie vim91 von \fBVim 9.1\fP
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/doc/tags
|
||||
<EFBFBD>Tag<EFBFBD>\-Datei zum Auffinden von Informationen in der Dokumentation.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/syntax/syntax.vim
|
||||
Systemweite Einrichtung der Syntaxhervorhebung.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/syntax/*.vim
|
||||
Syntaxdateien f<>r verschiedenen Sprachen.
|
||||
.TP
|
||||
/usr/local/share/vim/vimrc
|
||||
Systemweite Einstellungsdatei f<>r \fBVim\fP.
|
||||
.TP
|
||||
~/.vimrc, ~/.vim/vimrc, $XDG_CONFIG_HOME/vim/vimrc
|
||||
Pers<EFBFBD>nlichen Einstellungen f<>r \fBVim\fP.
|
||||
.TP
|
||||
/usr/local/share/vim/gvimrc
|
||||
Systemweite Einstellungsdatei f<>r \fBgVim\fP.
|
||||
.TP
|
||||
~/.gvimrc, ~/.vim/gvimrc, $XDG_CONFIG_HOME/vim/gvimrc
|
||||
Pers<EFBFBD>nlichen Einstellungen f<>r \fBgVim\fP.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/optwin.vim
|
||||
Script zur Verwendung von dem Befehl <20>:options<6E>. Eine sch<63>ne M<>glichkeit, um
|
||||
Optionen zu betrachten und zu setzen.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/menu.vim
|
||||
Systemweite Einstellungsdatei f<>r das Men<65> von \fBgVim\fP.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/bugreport.vim
|
||||
Script zum Generieren eines Fehlerberichts. Siehe <20>:help bugs<67>.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/filetype.vim
|
||||
Script zur Erkennung des Typs einer Datei anhand ihres Dateinamens. Siehe
|
||||
<EFBFBD>:help filetype<70>.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/scripts.vim
|
||||
Script zur Erkennung des Typs einer Datei anhand ihres Inhalts. Siehe <20>:help
|
||||
filetype<EFBFBD>.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/print/*.ps
|
||||
Dateien zum Drucken von PostScript.
|
||||
.PP
|
||||
F<EFBFBD>r die neuesten Informationen lesen Sie die Vim\-Homepage:
|
||||
.br
|
||||
<URL:http://www.vim.org/>
|
||||
.SH "SIEHE AUCH"
|
||||
vimtutor(1)
|
||||
\fBvimtutor\fP(1)
|
||||
.SH AUTOR
|
||||
\fBVim\fP wurde gr<67><72>tenteils von Bram Moolenaar erstellt, mit viel Hilfe von
|
||||
anderen Leuten. Siehe <20>:help credits<74> in \fBVim.\fP
|
||||
anderen Leuten. Siehe <20>:help credits<74> in \fBVim\fP.
|
||||
.br
|
||||
\fBVim\fP basiert auf Stevie, der von Tim Thompson, Tony Andrews und
|
||||
G.R. (Fred) Walter geschrieben wurde. Es ist jedoch kaum etwas vom
|
||||
@@ -474,5 +526,5 @@ Beachten Sie, dass gewisse Dinge, die manche Leute als Fehler betrachten
|
||||
m<EFBFBD>gen, in Wirklichkeit durch zu getreue Nachbildung des Vi\-Verhaltens
|
||||
verursacht werden. Und falls Sie denken, dass andere Dinge Fehler sind,
|
||||
<EFBFBD>weil Vi es anders tut<75>, sollten Sie einen genaueren Blick auf die Datei
|
||||
vi_diff.txt werfen (oder in Vim <20>:help vi_diff.txt<78> tippen). Sehen Sie sich
|
||||
auch die Optionen 'compatible' und 'cpoptions' an.
|
||||
vi_diff.txt werfen (oder in Vim <20>:help vi_diff.txt<78> eingeben). Sehen Sie
|
||||
sich auch die Optionen <EFBFBD>compatible<EFBFBD> und <EFBFBD>cpoptions<EFBFBD> an.
|
||||
|
||||
@@ -3,14 +3,12 @@
|
||||
.\" This file was generated with po4a. Translate the source file.
|
||||
.\"
|
||||
.\"*******************************************************************
|
||||
.\" Translated by bw1 (2008) and Florian Rehnisch <fm-r@gmx.de> (2012)
|
||||
.\" Kudos to the folks on vim-dev and debian-l10n-german
|
||||
.TH VIM 1 "2006 Apr 11"
|
||||
.TH VIM 1 "28. November 2024"
|
||||
.SH BEZEICHNUNG
|
||||
vim \- Vi IMproved, ein Text\-Editor für Programmierer
|
||||
.SH ÜBERSICHT
|
||||
.br
|
||||
\fBvim\fP [Optionen] [Datei …]
|
||||
\fBvim\fP [Optionen] [Datei ...]
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-
|
||||
.br
|
||||
@@ -31,17 +29,17 @@ vim \- Vi IMproved, ein Text\-Editor für Programmierer
|
||||
verwendet werden, um alle Arten von Klartext zu bearbeiten. Er ist besonders
|
||||
nützlich, um Programme zu bearbeiten.
|
||||
.PP
|
||||
Vim hat einige Erweiterungen gegenüber Vi, z.B.: Rückgängigmachen in
|
||||
mehreren Schritten, mehrere Fenster und Puffer, Syntax\-Hervorhebung,
|
||||
\fBVim\fP hat eine Menge an Erweiterungen gegenüber Vi, z.B.: Mehrstufiges
|
||||
Rückgängigmachen, mehrere Fenster und Puffer, Syntax\-Hervorhebung,
|
||||
Bearbeiten der Befehlszeile, Dateinamenergänzung, eingebaute Hilfe, visuelle
|
||||
Auswahl, usw. … Siehe »:help vi_diff.txt« für eine Übersicht der
|
||||
Auswahl, usw. ... Siehe »:help vi_diff.txt« für eine Übersicht der
|
||||
Unterschiede zwischen \fBVim\fP und Vi.
|
||||
.PP
|
||||
Im laufenden \fBVim\fP kann mit dem Befehl »:help« viel Hilfe durch das
|
||||
eingebaute Hilfesystem erlangt werden. Siehe den Abschnitt EINGEBAUTE HILFE
|
||||
weiter unten.
|
||||
.PP
|
||||
Meistens wird \fBVim\fP zum Editieren einer einzigen Datei mit dem folgende
|
||||
Meistens wird \fBVim\fP zum Bearbeiten einer einzigen Datei mit dem folgenden
|
||||
Befehl gestartet:
|
||||
.PP
|
||||
vim Datei
|
||||
@@ -51,23 +49,23 @@ Allgemeiner betrachtet, wird \fBVim\fP folgendermaßen gestartet:
|
||||
vim [Optionen] [Dateiliste]
|
||||
.PP
|
||||
Bei einer fehlenden Dateiliste startet der Editor mit einem leeren
|
||||
Puffer. Andernfalls werden nach den folgenden vier Möglichkeiten eine oder
|
||||
mehrere Dateien bearbeitet:
|
||||
Puffer. Andernfalls werden eine oder mehrere Dateien mit einer der folgenden
|
||||
vier Optionen bearbeitet:
|
||||
.TP 12
|
||||
Datei …
|
||||
Datei ...
|
||||
Eine Liste von Dateinamen. Die erste Datei wird in den Puffer geladen und
|
||||
zur aktuellen. Der Cursor wird auf der ersten Zeile des Puffers
|
||||
platziert. Zu den anderen Dateien kann mit dem Befehl »:next« gelangt
|
||||
werden. Falls einer der Dateinamen mit einem Bindestrich beginnt, stellen
|
||||
Sie der Dateiliste »\-\-« voran.
|
||||
.TP
|
||||
\-
|
||||
.TP
|
||||
\fB\-\fP
|
||||
Die zu bearbeitende Datei wird von der Standardeingabe gelesen. Befehle
|
||||
werden von der Standardfehlerausgabe gelesen, die ein Text\-Terminal sein
|
||||
sollte.
|
||||
.TP
|
||||
\-t {Tag}
|
||||
Die zu editierende Datei und die anfängliche Cursor\-Position hängen von
|
||||
.TP
|
||||
\fB\-t\fP {Tag}
|
||||
Die zu bearbeitende Datei und die anfängliche Cursor\-Position hängen von
|
||||
einem »Tag« ab, einer Art Sprungmarke. {Tag} wird in der Tag\-Datei
|
||||
nachgeschlagen, die zugehörige Datei wird zur aktuellen und der zugehörige
|
||||
Befehl wird ausgeführt. Dies wird meistens für Programme in der Sprache »C«
|
||||
@@ -75,394 +73,448 @@ benutzt, wobei {Tag} ein Funktionsname sein könnte. Die Wirkung dieses
|
||||
Befehls ist, dass die Datei, die die Funktion enthält, als aktuelle im
|
||||
Editor geöffnet und angezeigt wird und der Cursor auf dem Beginn der
|
||||
Funktion positioniert wird. Siehe »:help tag\-commands«.
|
||||
.TP
|
||||
\-q [Fehlerdatei]
|
||||
.TP
|
||||
\fB\-q\fP [Fehlerdatei]
|
||||
Startet im QuickFix\-Modus. Die Datei [Fehlerdatei] wird gelesen und der
|
||||
erste Fehler wird angezeigt. Falls [Fehlerdatei] ausgelassen wird, wird der
|
||||
Dateiname aus der Option 'errorfile' verwendet (bei AmigaOS ist dies
|
||||
vorgabemäßig »AztecC.Err«, sowie „errors.err« bei anderen). Weitere Fehler
|
||||
können mit dem »:cn«\-Befehl angesprungen werden. Siehe „:help quickfix«.
|
||||
Dateiname aus der Option »Fehlerdatei« ermittelt (auf dem Amiga ist dies
|
||||
standardmäßig »AztecC.Err«, sowie »errors.err« bei anderen). Weitere Fehler
|
||||
können mit dem »:cn«\-Befehl angesprungen werden. Siehe »:help quickfix«.
|
||||
.PP
|
||||
\fBVim\fP reagiert unterschiedlich auf den Namen, der verwendet wird, um Vim zu
|
||||
starten (die ausführbare Datei kann dieselbe sein).
|
||||
\fBVim\fP reagiert in Abhängigkeit vom benutzten Programmnamen unterschiedlich
|
||||
(die ausführbare Datei kann dieselbe sein).
|
||||
.TP 10
|
||||
vim
|
||||
der »normale« Weg, alles ist standardmäßig
|
||||
.TP
|
||||
ex
|
||||
Startet im Ex\-Modus. Mit dem Befehl »:vi« gelangt man in den normalen
|
||||
Modus. Funktioniert auch mit dem Argument »\-e«.
|
||||
.TP
|
||||
view
|
||||
Startet im Nur\-Lesen\-Modus. Die Datei wird vor dem Überschreiben
|
||||
geschützt. Dasselbe wird mit dem Parameter »\-R« erreicht.
|
||||
.TP
|
||||
gvim gview
|
||||
Die grafische Version: Öffnet ein neues Fenster. Dasselbe wird mit dem
|
||||
Parameter »\-g« erreicht.
|
||||
.TP
|
||||
evim eview
|
||||
Die grafische Version im einfachen Modus: Öffnet ein neues Fenster. Dasselbe
|
||||
wird mit dem Parameter »\-y« erreicht.
|
||||
.TP
|
||||
rvim rview rgvim rgview
|
||||
Wie die obigen, aber mit Beschränkungen: Es ist nicht möglich, Shell\-Befehle
|
||||
aufzurufen oder mit Unterbrechung in eine Shell zurückzuspringen. Dasselbe
|
||||
wird mit dem Parameter »\-Z« erreicht.
|
||||
\fBvim\fP
|
||||
Der »normale« Weg, alles ist standardmäßig.
|
||||
.TP
|
||||
\fBex\fP
|
||||
Startet im Ex\-Modus. Mit dem Befehl »:vi« gelangen Sie in den normalen
|
||||
Modus. Funktioniert auch mit dem Argument \fB\-e\fP.
|
||||
.TP
|
||||
\fBview\fP
|
||||
Startet im schreibgeschützten Modus. Die Datei wird vor dem Überschreiben
|
||||
geschützt. Dasselbe wird mit dem Argument \fB\-R\fP erreicht.
|
||||
.TP
|
||||
\fBgvim gview\fP
|
||||
Startet die grafische Version. Öffnet ein neues Fenster. Dasselbe wird mit
|
||||
dem Argument \fB\-g\fP erreicht.
|
||||
.TP
|
||||
\fBevim eview\fP
|
||||
Startet die grafische Version im einfachen Modus. Öffnet ein neues
|
||||
Fenster. Dasselbe wird mit dem Argument \fB\-y\fP erreicht.
|
||||
.TP
|
||||
\fBrvim rview rgvim rgview\fP
|
||||
Wie die obigen, aber mit Beschränkungen. Es ist nicht möglich, Shell\-Befehle
|
||||
aufzurufen oder \fBVim\fP zu suspendieren. Dasselbe wird mit dem Argument \fB\-Z\fP
|
||||
erreicht.
|
||||
.SH OPTIONEN
|
||||
Die Optionen können in beliebiger Reihenfolge vor oder nach den Dateinamen
|
||||
angegeben werden. Optionen ohne Parameter können hinter einem einzigen
|
||||
angegeben werden. Optionen ohne Argument können hinter einem einzigen
|
||||
Bindestrich gruppiert werden.
|
||||
.TP 12
|
||||
+[Nummer]
|
||||
\fB+\fP[Nummer]
|
||||
In der ersten Datei wird der Cursor auf die Zeile [Nummer] gesetzt. Falls
|
||||
[Nummer] nicht angegeben wird, wird der Cursor in die letzte Zeile der Datei
|
||||
gesetzt.
|
||||
.TP
|
||||
+/{Suchmuster}
|
||||
.TP
|
||||
\fB+\fP/{Suchmuster}
|
||||
In der ersten Datei wird der Cursor auf das erste Auftreten von {Suchmuster}
|
||||
gesetzt. Siehe »:help search\-pattern«.
|
||||
.TP
|
||||
+{Befehl}
|
||||
.TP
|
||||
\-c {Befehl}
|
||||
gesetzt. Siehe »:help search\-pattern« für die verfügbaren Suchmuster.
|
||||
.TP
|
||||
\fB+\fP{Befehl}
|
||||
.TP
|
||||
\fB\-c\fP {Befehl}
|
||||
{Befehl} wird nach dem Lesen der ersten Datei ausgeführt. Als {Befehl} wird
|
||||
ein Ex\-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss alles
|
||||
in Anführungszeichen gesetzt werden (hängt von der verwendeten Shell
|
||||
ab). Beispiel: vim "+set si" main.c
|
||||
ein Ex\-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss er in
|
||||
Anführungszeichen gesetzt werden (hängt von der verwendeten Shell
|
||||
ab). Beispiel: »vim "+set si" main.c«
|
||||
.br
|
||||
Anmerkung: Sie können bis zu 10 »+«\- oder „\-c«\-Befehle verwenden.
|
||||
.TP
|
||||
\-S {Datei}
|
||||
{Datei} wird nach dem Lesen der ersten Datei ausgeführt. Dies entspricht »\-c
|
||||
"source {Datei}"«. {Datei} darf nicht mit einem Bindestrich (\-)
|
||||
anfangen. Wenn kein Dateiname angegeben wird, wird »Session.vim« verwendet
|
||||
(Funktioniert nur, wenn »\-S« als letzter Parameter steht).
|
||||
.TP
|
||||
\-\-cmd {Befehl}
|
||||
Wie »\-c«, aber dieser Befehl wird vor allen VimRC\-Dateien ausgeführt. Sie
|
||||
können unabhängig von den »\-c«\-Befehlen bis zu 10 dieser Befehle verwenden.
|
||||
.TP
|
||||
\-A
|
||||
Anmerkung: Sie können bis zu zehn \fB+c\fP\- oder \fB\-c\fP\-Befehle verwenden.
|
||||
.TP
|
||||
\fB\-A\fP
|
||||
Falls \fBVim\fP mit Unterstützung für das Schreiben von rechts nach links und
|
||||
arabischer Tastaturbelegung compiliert wurde (ARABIC), startet dieser
|
||||
Parameter den Modus fürs Arabische (:set arabic). Anderenfalls beendet sich
|
||||
\fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
b
|
||||
.TP
|
||||
\fB\-b\fP
|
||||
Binärer Modus: Es werden einige Variablen gesetzt, sodass es möglich ist,
|
||||
eine binäre oder ausführbare Datei zu bearbeiten.
|
||||
.TP
|
||||
\-C
|
||||
Kompatibel: Setzt die Option 'compatible'. Das macht \fBVim\fP im Verhalten
|
||||
sehr ähnlich zu Vi, selbst wenn eine VimRC\-Datei existiert.
|
||||
.TP
|
||||
\-d
|
||||
Startet im diff\-Modus. Es sollten zwei, drei oder vier Dateinamen als
|
||||
Parameter übergeben werden. \fBVim\fP öffnet sie alle und zeigt die
|
||||
Unterschiede an. Arbeitet wie vimdiff(1).
|
||||
.TP
|
||||
\-d {Gerät}
|
||||
Öffnet das {Gerät}, um es als Terminal zu nutzen. Nur für AmigaOS. Beispiel:
|
||||
"\-d con:20/30/600/150".
|
||||
.TP
|
||||
D
|
||||
Debug\-Modus: \fBVim\fP geht in den Debug\-Modus, wenn der erste Befehl in einem
|
||||
Skript ausgeführt wird.
|
||||
.TP
|
||||
\-e
|
||||
Startet \fBVim\fP im Ex\-Modus, als würde als ausführbare Datei »ex« aufgerufen.
|
||||
.TP
|
||||
\-E
|
||||
Startet \fBVim\fP im erweiterten Ex\-Modus, als würde die ausführbare Datei als
|
||||
»exim« aufgerufen.
|
||||
.TP
|
||||
\-f
|
||||
.TP
|
||||
\fB\-C\fP
|
||||
Kompatibler Modus: Setzt die Option »compatible«. Das macht \fBVim\fP im
|
||||
Verhalten sehr ähnlich zu Vi, selbst wenn eine .vimrc\-Datei existiert.
|
||||
.TP
|
||||
\fB\-d\fP
|
||||
Diff\-Modus: Es sollten von zwei bis zu acht Dateinamen als Argumente
|
||||
übergeben werden. \fBVim\fP öffnet sie alle und zeigt deren die Unterschiede
|
||||
an. Arbeitet wie \fBvimdiff\fP(1).
|
||||
.TP
|
||||
\fB\-d\fP {Gerät}, \fB\-dev\fP {Gerät}
|
||||
Öffnet das {Gerät}, um es als Terminal zu nutzen. Nur auf dem
|
||||
Amiga. Beispiel: »\-d con:20/30/600/150«.
|
||||
.TP
|
||||
\fB\-D\fP
|
||||
Debug\-Modus: \fBVim\fP geht in den Modus zur Fehlersuche, wenn der erste Befehl
|
||||
aus einem Skript ausgeführt wird.
|
||||
.TP
|
||||
\fB\-e\fP
|
||||
Ex\-Modus: Startet \fBVim\fP als würde die ausführbare Datei \fBex\fP lauten.
|
||||
.TP
|
||||
\fB\-E\fP
|
||||
Verbesserter Ex\-Modus: Startet \fBVim\fP als würde die ausführbare Datei
|
||||
\fBexim\fP lauten.
|
||||
.TP
|
||||
\fB\-f\fP
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
löst sich nicht von der Shell, in der er aufgerufen wurde. Bei AmigaOS wird
|
||||
kein neues Fenster geöffnet. Dieser Parameter wird benutzt, damit das
|
||||
aufrufende Programm auf das Beenden des Bearbeitungssitzung wartet (z.B.:
|
||||
mail). Bei AmigaOS funktionieren die Befehle »:sh« und „:!« nicht.
|
||||
.TP
|
||||
\-\-nofork
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
löst sich nicht von der Shell, in der er aufgerufen wurde.
|
||||
.TP
|
||||
\-F
|
||||
löst sich nicht von der Shell, in der er aufgerufen wurde. Auf dem Amiga
|
||||
wird kein neues Fenster geöffnet. Dieser Parameter wird benutzt, damit das
|
||||
aufrufende Programm auf das Beenden der Bearbeitungssitzung wartet
|
||||
(z.B. mail). Auf dem Amiga funktionieren die Befehle »:sh« und »:!« nicht.
|
||||
.TP
|
||||
\fB\-F\fP
|
||||
Wenn \fBVim\fP mit FKMAP\-Unterstützung für das Schreiben von rechts nach links
|
||||
und Farsi\-Tastatur\-Belegung kompiliert wurde, startet Vim im Farsi\-Modus,
|
||||
d.h. die Optionen 'fkmap' und 'rightleft' werden gesetzt. Andernfalls bricht
|
||||
und Farsi\-Tastatur\-Belegung kompiliert wurde, startet \fBVim\fP im Farsi\-Modus,
|
||||
d.h. die Optionen »fkmap« und »rightleft« werden gesetzt. Andernfalls bricht
|
||||
\fBVim\fP mit einer Fehlermeldung ab.
|
||||
.TP
|
||||
\-g
|
||||
.br
|
||||
Hinweis: Die Unterstützung von Farsi wurde im Patch 8.1.0932 entfernt.
|
||||
.TP
|
||||
\fB\-g\fP
|
||||
Falls \fBVim\fP mit GUI\-Unterstützung kompiliert wurde, wird die GUI
|
||||
aktiviert. Falls keine GUI\-Unterstützung einkompiliert wurde, wird mit einer
|
||||
Fehlermeldung abgebrochen.
|
||||
.TP
|
||||
\-h
|
||||
Gibt eine kleine Hilfe für die Befehlszeilenparameter aus. Danach beendet
|
||||
sich \fBVim.\fP
|
||||
.TP
|
||||
\-H
|
||||
Hebräisch\-Modus, falls \fBVim\fP mit RIGHTLEFT\-Unterstützung für das Schreiben
|
||||
von rechts nach links und hebräischer Tastaturbelegung kompiliert wurde,
|
||||
werden die Optionen 'hkmap' und 'rightleft' gesetzt. Andernfalls beendet
|
||||
sich \fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
\-i {VimInfo}
|
||||
Wenn eine VimInfo\-Datei verwendet wird: Verwendet statt »~/.viminfo« die
|
||||
angegebene Datei. Es ist auch möglich die Verwendung einer VimInfo\-Datei
|
||||
durch Angabe des Dateinamen »NONE« zu verhindern,
|
||||
.TP
|
||||
\-L
|
||||
dasselbe wie »\-r«
|
||||
.TP
|
||||
\-l
|
||||
Lisp\-Modus. Aktiviert die Optionen 'lisp' und 'showmatch'.
|
||||
.TP
|
||||
\-m
|
||||
Deaktiviert das Verändern von Dateien, indem die Option 'write' gelöscht
|
||||
wird. Der Puffer kann verändert werden, nur das Schreiben einer Datei ist
|
||||
nicht möglich.
|
||||
.TP
|
||||
\-M
|
||||
Keine Veränderungen erlaubt: Die Optionen 'modifiable' und 'write' werden
|
||||
gelöscht, so dass Änderungen nicht erlaubt sind und Dateien nicht
|
||||
geschrieben werden können. Man beachte, dass diese Optionen ('modifiable',
|
||||
\&'write') dennnoch nachträglich zum Erlauben von Änderungen gesetzt werden
|
||||
können.
|
||||
.TP
|
||||
\-N
|
||||
Nicht\-kompatibler Modus: Löscht die Option 'compatible'. Dies veranlasst
|
||||
\fBVim\fP, sich ein wenig besser, aber weniger Vi\-kompatibel zu verhalten,
|
||||
selbst wenn es keine VimRC\-Datei gibt.
|
||||
.TP
|
||||
\-n
|
||||
Verwendet keine Auslagerungsdatei: Eine Wiederherstellung nach einem Absturz
|
||||
ist nicht möglich. Auf einem langsamen Medium (Diskette) kann diese
|
||||
aktiviert. Falls keine GUI\-Unterstützung einkompiliert wurde, wird \fBVim\fP
|
||||
mit einer Fehlermeldung abgebrochen.
|
||||
.TP
|
||||
\fB\-H\fP
|
||||
Falls \fBVim\fP mit RIGHTLEFT\-Unterstützung für das Schreiben von rechts nach
|
||||
links und hebräischer Tastaturbelegung kompiliert wurde, startet \fBVim\fP im
|
||||
hebräischen Modus und die Optionen »hkmap« und »rightleft« werden
|
||||
gesetzt. Andernfalls beendet sich \fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
\fB\-i\fP {VimInfo}
|
||||
Verwendet zum Lesen und Schreiben die angegebene Datei anstatt der Vorgabe
|
||||
»~/.viminfo«. Es ist auch möglich, die Verwendung einer .viminfo\-Datei durch
|
||||
Angabe des Dateinamens »NONE« zu verhindern.
|
||||
.TP
|
||||
\fB\-l\fP
|
||||
Lisp\-Modus: Aktiviert die Optionen »lisp« und »showmatch«.
|
||||
.TP
|
||||
\fB\-L\fP
|
||||
Dasselbe wie \fB\-r\fP.
|
||||
.TP
|
||||
\fB\-m\fP
|
||||
Deaktiviert das Verändern von Dateien, indem die Option »write«
|
||||
zurückgesetzt wird. Der Puffer kann verändert werden, nur das Schreiben
|
||||
einer Datei ist nicht möglich.
|
||||
.TP
|
||||
\fB\-M\fP
|
||||
Keine Veränderungen erlaubt. Die Optionen »modifiable« und »write« werden
|
||||
zurückgesetzt, so dass Änderungen nicht erlaubt sind und Dateien nicht
|
||||
geschrieben werden können. Beachten Sie, dass diese Optionen dennoch
|
||||
nachträglich zum Erlauben von Änderungen gesetzt werden können.
|
||||
.TP
|
||||
\fB\-n\fP
|
||||
Verwendet keine Auslagerungsdatei. Eine Wiederherstellung nach einem Absturz
|
||||
ist nicht möglich. Auf einem langsamen Medium (z.B. Diskette) kann diese
|
||||
Einstellung nützlich sein. Kann auch mit »set uc=0« erreicht werden; kann
|
||||
mit »set uc=200« aufgehoben werden.
|
||||
.TP
|
||||
\-nb
|
||||
\fBVim\fP fungiert als Server für NetBeans. Details siehe Dokumentation.
|
||||
.TP
|
||||
\-o[N]
|
||||
Öffnet [N] Fenster übereinander. Wenn keine Zahl angegeben wird, öffne ein
|
||||
.TP
|
||||
\fB\-N\fP
|
||||
Nicht\-kompatibler Modus: Setzt die Option »compatible« zurück. Dies
|
||||
veranlasst \fBVim\fP, sich ein wenig besser, aber weniger Vi\-kompatibel zu
|
||||
verhalten, selbst wenn es keine .vimrc\-Datei gibt.
|
||||
.TP
|
||||
\fB\-nb\fP
|
||||
\fBVim\fP fungiert als Editor\-Server für NetBeans. Details siehe Dokumentation.
|
||||
.TP
|
||||
\fB\-o\fP[N]
|
||||
Öffnet N Fenster übereinander. Wenn keine Zahl angegeben wird, öffnet ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-O[N]
|
||||
Öffnet [N] Fenster nebeneinander. Wenn keine Zahl angegeben wird, öffne ein
|
||||
.TP
|
||||
\fB\-O\fP[N]
|
||||
Öffnet N Fenster nebeneinander. Wenn keine Zahl angegeben wird, öffnet ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-p[N]
|
||||
Öffnet [N] Reiterseiten. Wenn keine Zahl angegeben wird, öffne eine
|
||||
.TP
|
||||
\fB\-p\fP[N]
|
||||
Öffnet N Reiterseiten. Wenn keine Zahl angegeben wird, öffnet eine
|
||||
Reiterseite pro Datei.
|
||||
.TP
|
||||
\-R
|
||||
Nur\-Lesen\-Modus: Die Option 'readonly' wird gesetzt. Der Puffer kann noch
|
||||
bearbeitet werden, aber es wird verhindert, eine Datei aus Versehen zu
|
||||
überschreiben. Wenn Sie wirklich eine Datei überschreiben wollen, fügen Sie
|
||||
dem Ex\-Befehl ein Ausrufezeichen hinzu (wie in »:w!«). Die Option „\-R«
|
||||
bedingt die Option »\-n« (siehe oben). Die Option 'readonly' kann durch „:set
|
||||
noro« gelöscht werden. Siehe »:help 'readonly'«.
|
||||
.TP
|
||||
\-r
|
||||
Listet die Auslagerungsdateien und gibt Informationen zu ihrer
|
||||
Verwendbarkeit zur Wiederherstellung.
|
||||
.TP
|
||||
\-r {Datei}
|
||||
.TP
|
||||
\fB\-P\fP {Eltern\-Titel}
|
||||
Nur Win32\-GUI: Gibt den Titel der Elternapplikation an. Wenn möglich läuft
|
||||
\fBVim\fP in einem MDI\-Fenster innerhalb der Applikation. {Eltern\-Titel} muss
|
||||
im Fenstertitel der Elternapplikation vorkommen. Stellen Sie sicher, dass er
|
||||
spezifisch genug ist. Beachten Sie, dass die Implementierung immer noch
|
||||
primitiv ist. Sie wird nicht mit allen Applikationen funktionieren und das
|
||||
Menü funktioniert nicht.
|
||||
.TP
|
||||
\fB\-r\fP
|
||||
Listet die Auslagerungsdateien auf und gibt Informationen zu ihrer
|
||||
Verwendbarkeit zur Wiederherstellung aus.
|
||||
.TP
|
||||
\fB\-r\fP {Datei}
|
||||
Wiederherstellungsmodus: Die Auslagerungsdatei wird zur Wiederherstellung
|
||||
verwendet und hat denselben Dateinamen wie die Text\-Datei + ».swp«. Siehe
|
||||
„:help recovery«.
|
||||
.TP
|
||||
\-s
|
||||
Der stille Modus: Nur wenn die ausführbare Datei als »ex« aufgerufen wird
|
||||
oder vor »\-s« die Option „\-e« gegeben wird.
|
||||
.TP
|
||||
\-s {Eingabeskript}
|
||||
Die Datei {Eingabeskript} wird gelesen und ausgeführt, als würden Sie die
|
||||
Zeichen in ihr tippen. Dasselbe kann mit dem Befehl »:source!
|
||||
einer abgestürzten Bearbeitungssitzung verwendet und hat denselben
|
||||
Dateinamen wie die Textdatei mit angehängtem ».swp«. Siehe »:help recovery«.
|
||||
.TP
|
||||
\fB\-R\fP
|
||||
Schreibgeschützter Modus: Die Option »readonly« wird gesetzt. Der Puffer
|
||||
kann noch bearbeitet werden, aber es wird verhindert, eine Datei aus
|
||||
Versehen zu überschreiben. Wenn Sie wirklich eine Datei überschreiben
|
||||
wollen, fügen Sie dem Ex\-Befehl ein Ausrufezeichen hinzu (wie in »:w!«). Die
|
||||
Option \fB\-R\fP bedingt die Option \fB\-n\fP (siehe oben). Die Option »readonly«
|
||||
kann durch »:set noro« zurückgesetzt werden. Siehe »:help readonly«.
|
||||
.TP
|
||||
\fB\-s\fP
|
||||
Stiller Modus: Nur wenn die ausführbare Datei als \fBex\fP aufgerufen wird oder
|
||||
vor \fB\-s\fP die Option \fB\-e\fP angegeben wird.
|
||||
.TP
|
||||
\fB\-s\fP {Eingabeskript}
|
||||
Die Skriptdatei {Eingabeskript} wird gelesen und ausgeführt, als würden Sie
|
||||
die Zeichen eingeben. Dasselbe kann mit dem Befehl »:source!
|
||||
{Eingabeskript}« erreicht werden. Wird das Ende der Datei vor dem Beenden
|
||||
des Editors erreicht, werden weitere Zeichen von der Tastatur gelesen.
|
||||
.TP
|
||||
\-T {Terminal}
|
||||
.TP
|
||||
\fB\-S\fP {Datei}
|
||||
{Datei} wird nach dem Lesen der ersten Datei ausgeführt. Dies entspricht »\-c
|
||||
"source {Datei}"«. {Datei} darf nicht mit einem Bindestrich (\-)
|
||||
anfangen. Wenn kein Dateiname angegeben wird, wird »Session.vim« verwendet
|
||||
(Funktioniert nur, wenn \fB\-S\fP als letztes Argument steht).
|
||||
.TP
|
||||
\fB\-T\fP {Terminal}
|
||||
Setzt den Namen des benutzten Terminals. Nur erforderlich, wenn die
|
||||
Automatik nicht funktioniert. Sollte ein \fBVim\fP bekanntes Terminal sein:
|
||||
(builtin) oder in einer termcap\- oder terminfo\-Datei definiert.
|
||||
.TP
|
||||
\-u {VimRC}
|
||||
Verwendet zur Initialisierung die Befehle in der Datei {VimRC}. Alle anderen
|
||||
Automatik nicht funktioniert. Sollte ein \fBVim\fP bekanntes (eingebautes) oder
|
||||
in einer Termcap\- oder Terminfo\-Datei definiertes Terminal sein.
|
||||
.TP
|
||||
\fB\-u\fP {vimrc}
|
||||
Verwendet zur Initialisierung die Befehle in der Datei {vimrc}. Alle anderen
|
||||
Initialisierungen werden übersprungen. Benutzen Sie dies, um eine besondere
|
||||
Art von Dateien zu bearbeiten. Dies kann auch benutzt werden, um alle
|
||||
Initialisierungen zu überspringen, indem der Name »NONE« angegeben wird. Für
|
||||
weitere Einzelheiten siehe »:help initialisation« innerhalb von Vim.
|
||||
.TP
|
||||
\-U {GvimRC}
|
||||
Benutzt die Befehle in der Datei {GvimRC} für die Initialisierung der
|
||||
grafischen Oberfläche. Alle anderen Initialisierungen werden
|
||||
weitere Einzelheiten siehe »:help initialization« innerhalb von \fBVim\fP.
|
||||
.TP
|
||||
\fB\-U\fP {gvimrc}
|
||||
Benutzt die Befehle in der Datei {gvimrc} für die Initialisierung der
|
||||
grafischen Oberfläche. Alle anderen GUI\-Initialisierungen werden
|
||||
übersprungen. Dies kann ebenfalls benutzt werden, um alle
|
||||
GUI\-Initialisierungen zu überspringen, indem der Name »NONE« angegeben
|
||||
wird. Siehe »:help gui\-init« innerhalb von Vim für weitere Einzelheiten.
|
||||
.TP
|
||||
\-V[N]
|
||||
Ausführlich (verbose): Gibt Meldungen darüber, welche Befehlsdateien
|
||||
eingelesen werden, und über das Lesen und Schreiben einer VimInfo\-Datei. Die
|
||||
optionale Zahl N ist der Wert für 'verbose'. Vorgabe ist 10.
|
||||
.TP
|
||||
\-v
|
||||
Startet \fBVim\fP im Vi\-Modus, so als würde die ausführbare Datei mit »vi«
|
||||
aufgerufen. Dies wirkt sich nur aus, wenn die ausführbare Datei als »ex«
|
||||
wird. Siehe »:help gui\-init« innerhalb von \fBVim\fP für weitere Einzelheiten.
|
||||
.TP
|
||||
\fB\-v\fP
|
||||
Vi\-Modus: Startet \fBVim\fP als würde die ausführbare Datei mit \fBvi\fP
|
||||
aufgerufen. Dies wirkt sich nur aus, wenn die ausführbare Datei als \fBex\fP
|
||||
aufgerufen wird.
|
||||
.TP
|
||||
\-w {Ausgabeskript}
|
||||
Alle Zeichen, die eingetippt werden, werden in der Datei {Ausgabeskript}
|
||||
.TP
|
||||
\fB\-V\fP[N]
|
||||
Ausführlich (verbose): Gibt Meldungen darüber, welche Befehlsdateien
|
||||
ausgeführt werden, und über das Lesen und Schreiben einer viminfo\-Datei. Die
|
||||
optionale Zahl N ist der Wert für »verbose«. Vorgabe ist 10.
|
||||
.TP
|
||||
\fB\-V\fP[N]{Dateiname}
|
||||
Wie \fB\-V\fP und setzt »verbosefile« auf {Dateiname}. Das Ergebnis besteht
|
||||
darin, dass Meldungen nicht angezeigt werden, sondern in die Datei
|
||||
{Dateiname} geschrieben werden. {Dateiname} darf nicht mit einer Ziffer
|
||||
anfangen.
|
||||
.TP
|
||||
\fB\-w\fP{Nummer}
|
||||
Setzt die Option »window« auf {Nummer}.
|
||||
.TP
|
||||
\fB\-w\fP {Ausgabeskript}
|
||||
Alle Zeichen, die eingegeben werden, werden in der Datei {Ausgabeskript}
|
||||
aufgezeichnet, solange bis Sie \fBVim\fP beenden. Dies ist nützlich, falls Sie
|
||||
eine Skript\-Datei zum Benutzen mit »vim \-s« oder „:source!« erzeugen
|
||||
eine Skript\-Datei zum Benutzen mit »vim \-s« oder »:source!« erzeugen
|
||||
wollen. Falls die Datei {Ausgabeskript} vorhanden ist, werden die Zeichen
|
||||
angehängt.
|
||||
.TP
|
||||
\-W {Ausgabeskript}
|
||||
Wie \-w, aber eine bereits vorhandene Datei wird überschrieben.
|
||||
.TP
|
||||
\-x
|
||||
Benutzt beim Schreiben von Dateien eine Verschlüsselung. Fragt nach dem
|
||||
.TP
|
||||
\fB\-W\fP {Ausgabeskript}
|
||||
Wie \fB\-w\fP, aber eine bereits vorhandene Datei wird überschrieben.
|
||||
.TP
|
||||
\fB\-x\fP
|
||||
Benutzt beim Schreiben von Dateien eine Verschlüsselung, falls \fBVim\fP mit
|
||||
Unterstützung von Verschlüsselung kompiliert worden ist. Fragt nach dem
|
||||
Schlüssel.
|
||||
.TP
|
||||
\-X
|
||||
Führt keine Verbindung zum X\-Server durch. Dadurch verkürzt sich die
|
||||
Startzeit, aber der Fenstertitel und die Zwischenablage werden nicht
|
||||
.TP
|
||||
\fB\-X\fP
|
||||
Verbindet nicht mit dem X\-Server. Dadurch verkürzt sich die Startzeit in
|
||||
einem Terminal, aber der Fenstertitel und die Zwischenablage werden nicht
|
||||
verwendet.
|
||||
.TP
|
||||
\-y
|
||||
Startet \fBVim\fP im einfachen Modus, als würde die ausführbare Datei mit
|
||||
»evim« oder »eview« aufgerufen. \fBVim\fP verhält sich dann wie ein Editor zum
|
||||
Klicken und Tippen.
|
||||
.TP
|
||||
\-Z
|
||||
.TP
|
||||
\fB\-y\fP
|
||||
Einfacher Modus: Startet \fBVim\fP als würde die ausführbare Datei \fBevim\fP oder
|
||||
\fBeview\fP heißen. \fBVim\fP verhält sich dann wie ein Editor zum Klicken und
|
||||
Tippen.
|
||||
.TP
|
||||
\fB\-Z\fP
|
||||
Eingeschränkter Modus: Funktioniert, als würde der Name der ausführbaren
|
||||
Datei mit »r« beginnen.
|
||||
.TP
|
||||
\-\-
|
||||
.TP
|
||||
\fB\-\-\fP
|
||||
Markiert das Ende der Optionen. Argumente, die folgen, werden als Dateinamen
|
||||
behandelt. Dies kann benutzt werden, um einen Dateinamen mit »\-« am Anfang
|
||||
zu verwenden.
|
||||
.TP
|
||||
\-\-echo\-wid
|
||||
.TP
|
||||
\fB\-\-clean\fP
|
||||
Verwendet keine persönlichen Einstellungen (vimrc, plugins,
|
||||
usw,). Hilfreich, um festzustellen, ob ein Problem mit einer sauberen
|
||||
Vim\-Konfiguration reproduzierbar ist.
|
||||
.TP
|
||||
\fB\-\-cmd\fP {Befehl}
|
||||
Wie \fB\-c\fP, aber dieser Befehl wird vor allen vimrc\-Dateien ausgeführt. Sie
|
||||
können unabhängig von den \fB\-c\fP\-Befehlen bis zu zehn dieser Befehle
|
||||
verwenden.
|
||||
.TP
|
||||
\fB\-\-echo\-wid\fP
|
||||
Nur GTK\-GUI: Schreibe die Fenster\-ID auf die Standardausgabe.
|
||||
.TP
|
||||
\-\-help
|
||||
Gibt eine Hilfe\-Nachricht aus und beendet, wie »\-h«.
|
||||
.TP
|
||||
\-\-literal
|
||||
Nimmt die Dateinamen so wie sie sind und vervollständigt sie nicht nach
|
||||
Metazeichen (*,?). Dies wirkt sich nicht unter Unix aus, wo die Shell die
|
||||
Metazeichen expandiert.
|
||||
.TP
|
||||
\-\-noplugin
|
||||
Lade keine Plugins. Impliziert durch »\-u NONE«.
|
||||
.TP
|
||||
\-\-remote
|
||||
.TP
|
||||
\fB\-\-gui\-dialog\-file\fP {Name}
|
||||
Schreibt bei der Verwendung der GUI den Titel und die Meldung des Dialogs in
|
||||
die Datei {Name}, anstatt sie als Dialog anzuzeigen. Die Datei wird entweder
|
||||
erzeugt oder erweitert. Dies ist nur für Testzwecke hilfreich, um zu
|
||||
verhindern, dass Tests bei einem nicht sichtbaren Dialog hängen
|
||||
bleiben. Ohne Verwendung der GUI wird dieses Argument ignoriert.
|
||||
.TP
|
||||
\fB\-\-help, \-h, \-?\fP
|
||||
Gibt eine kleine Hilfe für die Befehlszeilenparameter und Optionen
|
||||
aus. Danach beendet sich \fBVim\fP.
|
||||
.TP
|
||||
\fB\-\-literal\fP
|
||||
Nimmt die Dateinamen so wie sie sind und vervollständigt sie nicht unter
|
||||
Berücksichtigung von Metazeichen. Dies wirkt sich nicht unter Unix aus, wo
|
||||
die Shell die Metazeichen expandiert.
|
||||
.TP
|
||||
\fB\-\-log\fP {Dateiname}
|
||||
Wenn \fBVim\fP mit dem Eval\- und dem Channel\-Feature kompiliert worden ist,
|
||||
wird das Protokollieren gestartet. Einträge werden nach {Dateiname}
|
||||
geschrieben. Dies funktioniert wie das Aufrufen von
|
||||
\fIch_logfile({Dateiname}, 'ao')\fP sehr früh während des Programmstarts.
|
||||
.TP
|
||||
\fB\-\-nofork\fP
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
löst sich nicht von der Shell, in der er aufgerufen wurde.
|
||||
.TP
|
||||
\fB\-\-noplugin\fP
|
||||
Lädt keine Erweiterungen. Impliziert durch »\-u NONE«.
|
||||
.TP
|
||||
\fB\-\-not\-a\-term\fP
|
||||
Teilt \fBVim\fP mit, dass dem Benutzer klar ist, dass Eingabe und/oder Ausgabe
|
||||
nicht mit einem Terminal verbunden sind. Das vermeidet die entsprechende
|
||||
Warnung und eine Verzögerung von zwei Sekunden.
|
||||
.TP
|
||||
\fB\-\-remote\fP
|
||||
Verbindet mit einem Vim\-Server und lässt ihn die in den restlichen
|
||||
Argumenten angegeben Dateien editieren. Wenn kein Server gefunden wird,
|
||||
führt dies zu einer Warnmeldung und die Dateien werden im gegenwärtigen Vim
|
||||
zum Bearbeiten geöffnet.
|
||||
.TP
|
||||
\-\-remote\-expr {Ausdruck}
|
||||
Verbindet mit einem Vim\-Server, führt {Ausdruck} aus und zeigt das Ergebnis
|
||||
auf der Standardausgabe an.
|
||||
.TP
|
||||
\-\-remote\-send {Zeichen}
|
||||
führt dies zu einer Warnmeldung und die Dateien werden im gegenwärtigen
|
||||
\fBVim\fP zum Bearbeiten geöffnet.
|
||||
.TP
|
||||
\fB\-\-remote\-expr\fP {Ausdruck}
|
||||
Verbindet mit einem Vim\-Server, wertet dort {Ausdruck} aus und zeigt das
|
||||
Ergebnis auf der Standardausgabe an.
|
||||
.TP
|
||||
\fB\-\-remote\-send\fP {Zeichen}
|
||||
Verbindet mit einem Vim\-Server und sendet ihm {Zeichen}.
|
||||
.TP
|
||||
\-\-remote\-silent
|
||||
Wie »\-\-remote«, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-remote\-wait
|
||||
Wie »\-\-remote«, aber Vim beendet sich nicht, bis die Dateien bearbeitet
|
||||
.TP
|
||||
\fB\-\-remote\-silent\fP
|
||||
Wie \fB\-\-remote\fP, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\fB\-\-remote\-wait\fP
|
||||
Wie \fB\-\-remote\fP, aber \fBVim\fP beendet sich nicht, bis die Dateien bearbeitet
|
||||
wurden.
|
||||
.TP
|
||||
\-\-remote\-wait\-silent
|
||||
Wie »\-\-remote\-wait«, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-serverlist
|
||||
.TP
|
||||
\fB\-\-remote\-wait\-silent\fP
|
||||
Wie \fB\-\-remote\-wait\fP, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\fB\-\-serverlist\fP
|
||||
Listet die Namen aller gefundenen Vim\-Server auf.
|
||||
.TP
|
||||
\-\-servername {Name}
|
||||
Benutzt {Name} als Server\-Namen. Wird für den gegenwärtigen Vim benutzt,
|
||||
außer es wird mit dem Argument »\-\-remote« benutzt, dann ist es der Name des
|
||||
zu kontaktierenden Servers.
|
||||
.TP
|
||||
\-\-socketid {id}
|
||||
Nur GTK\-GUI: Benutzt den GtkPlug\-Mechanismus, um GVim in einem anderen
|
||||
.TP
|
||||
\fB\-\-servername\fP {Name}
|
||||
Benutzt {Name} als Server\-Namen. Wird für den gegenwärtigen \fBVim\fP benutzt,
|
||||
außer es wird mit einem der \fB\-\-remote\fP\-Argumente benutzt, dann ist es der
|
||||
Name des zu kontaktierenden Servers.
|
||||
.TP
|
||||
\fB\-\-socketid\fP {ID}
|
||||
Nur GTK\-GUI: Benutzt den GtkPlug\-Mechanismus, um \fBgVim\fP in einem anderen
|
||||
Fenster laufen zu lassen.
|
||||
.TP
|
||||
\-\-version
|
||||
Versionsinformation anzeigen und beenden
|
||||
.TP
|
||||
\fB\-\-startuptime\fP {Datei}
|
||||
Schreibt während des Programmstarts Meldungen zu Zeitmessungen in die Datei
|
||||
{Datei}.
|
||||
.TP
|
||||
\fB\-\-ttyfail\fP
|
||||
Beendet das Programm sofort, wenn Standardeingabe oder Standardausgabe keine
|
||||
Terminals (tty) sind.
|
||||
.TP
|
||||
\fB\-\-version\fP
|
||||
Versionsinformation anzeigen und beenden.
|
||||
.TP
|
||||
\fB\-\-windowid\fP {ID}
|
||||
Nur Win32\-GUI: Veranlasst, dass \fBgVim\fP versucht, das Fenster {ID} als
|
||||
Eltern zu verwenden, so dass es in diesem Fenster abläuft.
|
||||
.SH "EINGEBAUTE HILFE"
|
||||
Tippen Sie in \fBVim\fP »:help«, um zu beginnen. Geben Sie „:help begriff« ein,
|
||||
um Hilfe über ein bestimmtes Thema zu bekommen. Zum Beispiel »:help ZZ« für
|
||||
Hilfe über den Befehl »ZZ«. Benutzen Sie <Tab> und CTRL\-D, um
|
||||
Begriffe zu vervollständigen (»:help cmdline\-completion«). Tags sind
|
||||
vorhanden, um von einem Ort zum anderen zu springen (eine Art
|
||||
Hypertext\-Verknüpfungen, siehe »:help«). Auf diese Weise können alle
|
||||
Dokumentations\-Dateien aufgerufen werden, zum Beispiel »:help syntax.txt«.
|
||||
Geben Sie in \fBVim\fP »:help« ein, um eine Einstiegshilfe zu erhalten. Geben
|
||||
Sie »:help Begriff« ein, um Hilfe über ein bestimmtes Thema zu bekommen. Zum
|
||||
Beispiel »:help ZZ« für Hilfe über den Befehl »ZZ«. Benutzen Sie
|
||||
<Tab> und STRG\-D, um Begriffe zu vervollständigen (»:help
|
||||
cmdline\-completion«). Tags sind vorhanden, um von einem Ort zum anderen zu
|
||||
springen (eine Art Hypertext\-Verknüpfungen, siehe »:help«). Auf diese Weise
|
||||
können alle Dokumentations\-Dateien aufgerufen werden, zum Beispiel »:help
|
||||
syntax.txt«.
|
||||
.SH DATEIEN
|
||||
.TP 15
|
||||
/usr/local/lib/vim/doc/*.txt
|
||||
/usr/local/share/vim/vim??/doc/*.txt
|
||||
Dokumentations\-Dateien für \fBVim\fP. Verwenden Sie »:help doc\-file\-list«, um
|
||||
die gesamte Liste zu bekommen.
|
||||
.TP
|
||||
/usr/local/lib/vim/doc/tags
|
||||
Die »Tag«\-Datei, die verwendet wird, um Informationen in der Dokumentation
|
||||
zu finden.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/syntax.vim
|
||||
Die systemweite Einrichtung der Syntaxhervorhebung.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/*.vim
|
||||
Syntaxdateien für die verschiedenen Sprachen.
|
||||
.TP
|
||||
/usr/local/lib/vim/vimrc
|
||||
Systemweite Einstellungsdatei für \fBVim\fP
|
||||
.TP
|
||||
~/.vimrc
|
||||
Persönliche Einstellungsdatei für \fBVim\fP
|
||||
.TP
|
||||
/usr/local/lib/vim/gvimrc
|
||||
Systemweite Einstellungsdatei für GVim
|
||||
.TP
|
||||
~/.gvimrc
|
||||
Persönliche Einstellungsdatei für GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/optwin.vim
|
||||
Das Script, das von dem Befehl »:options« verwendet wird, eine schöne
|
||||
Möglichkeit, um Optionen zu betrachten und zu setzen.
|
||||
.TP
|
||||
/usr/local/lib/vim/menu.vim
|
||||
Systemweite Einstellungsdatei für das Menü von GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/bugreport.vim
|
||||
Das Script zum Generieren eines Fehlerberichts. Siehe »:help bugs«.
|
||||
.TP
|
||||
/usr/local/lib/vim/filetype.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Dateinamens. Siehe »:help 'filetype'«.
|
||||
.TP
|
||||
/usr/local/lib/vim/scripts.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Inhaltes. Siehe »:help 'filetype'«.
|
||||
.TP
|
||||
/usr/local/lib/vim/print/*.ps
|
||||
Diese Dateien werden zum Drucken von PostScript verwendet.
|
||||
.br
|
||||
\fIvim??\fP ist die verkürzte Versionsnummer, wie vim91 von \fBVim 9.1\fP
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/doc/tags
|
||||
»Tag«\-Datei zum Auffinden von Informationen in der Dokumentation.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/syntax/syntax.vim
|
||||
Systemweite Einrichtung der Syntaxhervorhebung.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/syntax/*.vim
|
||||
Syntaxdateien für verschiedenen Sprachen.
|
||||
.TP
|
||||
/usr/local/share/vim/vimrc
|
||||
Systemweite Einstellungsdatei für \fBVim\fP.
|
||||
.TP
|
||||
~/.vimrc, ~/.vim/vimrc, $XDG_CONFIG_HOME/vim/vimrc
|
||||
Persönlichen Einstellungen für \fBVim\fP.
|
||||
.TP
|
||||
/usr/local/share/vim/gvimrc
|
||||
Systemweite Einstellungsdatei für \fBgVim\fP.
|
||||
.TP
|
||||
~/.gvimrc, ~/.vim/gvimrc, $XDG_CONFIG_HOME/vim/gvimrc
|
||||
Persönlichen Einstellungen für \fBgVim\fP.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/optwin.vim
|
||||
Script zur Verwendung von dem Befehl »:options«. Eine schöne Möglichkeit, um
|
||||
Optionen zu betrachten und zu setzen.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/menu.vim
|
||||
Systemweite Einstellungsdatei für das Menü von \fBgVim\fP.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/bugreport.vim
|
||||
Script zum Generieren eines Fehlerberichts. Siehe »:help bugs«.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/filetype.vim
|
||||
Script zur Erkennung des Typs einer Datei anhand ihres Dateinamens. Siehe
|
||||
»:help filetype«.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/scripts.vim
|
||||
Script zur Erkennung des Typs einer Datei anhand ihres Inhalts. Siehe »:help
|
||||
filetype«.
|
||||
.TP
|
||||
/usr/local/share/vim/vim??/print/*.ps
|
||||
Dateien zum Drucken von PostScript.
|
||||
.PP
|
||||
Für die neuesten Informationen lesen Sie die Vim\-Homepage:
|
||||
.br
|
||||
<URL:http://www.vim.org/>
|
||||
.SH "SIEHE AUCH"
|
||||
vimtutor(1)
|
||||
\fBvimtutor\fP(1)
|
||||
.SH AUTOR
|
||||
\fBVim\fP wurde größtenteils von Bram Moolenaar erstellt, mit viel Hilfe von
|
||||
anderen Leuten. Siehe »:help credits« in \fBVim.\fP
|
||||
anderen Leuten. Siehe »:help credits« in \fBVim\fP.
|
||||
.br
|
||||
\fBVim\fP basiert auf Stevie, der von Tim Thompson, Tony Andrews und
|
||||
G.R. (Fred) Walter geschrieben wurde. Es ist jedoch kaum etwas vom
|
||||
@@ -474,5 +526,5 @@ Beachten Sie, dass gewisse Dinge, die manche Leute als Fehler betrachten
|
||||
mögen, in Wirklichkeit durch zu getreue Nachbildung des Vi\-Verhaltens
|
||||
verursacht werden. Und falls Sie denken, dass andere Dinge Fehler sind,
|
||||
»weil Vi es anders tut«, sollten Sie einen genaueren Blick auf die Datei
|
||||
vi_diff.txt werfen (oder in Vim »:help vi_diff.txt« tippen). Sehen Sie sich
|
||||
auch die Optionen 'compatible' und 'cpoptions' an.
|
||||
vi_diff.txt werfen (oder in Vim »:help vi_diff.txt« eingeben). Sehen Sie
|
||||
sich auch die Optionen »compatible« und »cpoptions« an.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*vim9class.txt* For Vim version 9.1. Last change: 2024 Apr 13
|
||||
*vim9class.txt* For Vim version 9.1. Last change: 2024 Nov 11
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -873,6 +873,33 @@ Note that the method name must start with "new". If there is no method called
|
||||
"new()" then the default constructor is added, even though there are other
|
||||
constructor methods.
|
||||
|
||||
Using variable type "any" for an Object~
|
||||
*obj-var-type-any*
|
||||
You can use a variable declared with type "any" to hold an object. e.g.
|
||||
>
|
||||
vim9script
|
||||
class A
|
||||
var n = 10
|
||||
def Get(): number
|
||||
return this.n
|
||||
enddef
|
||||
endclass
|
||||
|
||||
def Fn(o: any)
|
||||
echo o.n
|
||||
echo o.Get()
|
||||
enddef
|
||||
|
||||
var a = A.new()
|
||||
Fn(a)
|
||||
<
|
||||
In this example, Vim cannot determine the type of the parameter "o" for
|
||||
function Fn() at compile time. It can be either a |Dict| or an |Object|
|
||||
value. Therefore, at runtime, when the type is known, the object member
|
||||
variable and method are looked up. This process is not efficient, so it is
|
||||
recommended to use a more specific type whenever possible for better
|
||||
efficiency.
|
||||
|
||||
Compiling methods in a Class ~
|
||||
*class-compile*
|
||||
The |:defcompile| command can be used to compile all the class and object
|
||||
|
||||
@@ -1,61 +1,106 @@
|
||||
.TH VIMTUTOR 1 "12 agosto 2024"
|
||||
.TH VIMTUTOR 1 "03 dicembre 2024"
|
||||
.SH NOME
|
||||
vimtutor \- Un breve corso introduttivo a Vim
|
||||
.SH SINTASSI
|
||||
.br
|
||||
.B vimtutor [\-g] [lingua]
|
||||
.B vimtutor [\-l | \-\-language ISO639] [\-c | \-\-chapter NUMERO] [\-g | \-\-gui] [ISO639]
|
||||
.br
|
||||
.B vimtutor [\-h | \-\-help]
|
||||
.br
|
||||
.B vimtutor [\-\-list]
|
||||
.SH DESCRIZIONE
|
||||
.B Vimtutor
|
||||
inizia il
|
||||
.B Vim
|
||||
tutor (un breve corso introduttivo a Vim).
|
||||
Viene utilizzata una copia del file di lavoro, che pu<70> cos<6F> essere modificato
|
||||
a piacere senza alterare il file usato come modello.
|
||||
.PP
|
||||
Il comando
|
||||
.B Vimtutor
|
||||
<EFBFBD> utile a chi voglia imparare i primi comandi di
|
||||
.B Vim
|
||||
.
|
||||
.B Vim.
|
||||
L'argomento opzionale [ISO639] specifica l'abbreviazione di due o tre lettere
|
||||
del nome di una lingua, per esempio "it" oppure "es".
|
||||
.PP
|
||||
L'argomento opzionale \-g inizia vimtutor usando gvim invece che vim, se la
|
||||
versione GUI di vim <20> disponibile; altrimenti viene utilizzato vim.
|
||||
.PP
|
||||
L'argomento opzionale [lingua] <20> l'abbreviazione di due lettere del nome
|
||||
di una lingua, per esempio "it" oppure "es".
|
||||
Se l'argomento [lingua] non viene specificato, si utilizza la lingua "locale"
|
||||
del computer.
|
||||
Se la versione in tale lingua del "tutor" non <20> disponibile,
|
||||
verr<EFBFBD> usata la versione inglese.
|
||||
.B Vimtutor
|
||||
utilizza delle copie dei file originali, non c'<27> pericolo di danneggiare
|
||||
i file stessi.
|
||||
.PP
|
||||
.B Vim
|
||||
<EFBFBD> sempre iniziato in Modo compatibile con Vi.
|
||||
.SH OPZIONI
|
||||
.TP
|
||||
.BR \-l ", " \-\-language\ \fIISO639\fR
|
||||
Imposta il codice di due o tre lettere che designa la lingua.
|
||||
P.es., 'it', 'es', 'bar'.
|
||||
Il default <20> il linguaggio locale, se una traduzione <20> disponibile,
|
||||
altrimenti viene utilizzato il testo originale in inglese.
|
||||
.TP
|
||||
.BR \-c ", " \-\-chapter\ \fINUMERO\fR
|
||||
Imposta il numero del capitolo. Il default <20> il capitolo uno.
|
||||
.TP
|
||||
.BR \-g ", " \-\-gui
|
||||
Inizia
|
||||
.B vimtutor
|
||||
nella versione GUI di vim, se disponibile, altrimenti viene usata la versione console.
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
Visualizza le informazioni relative all'uso del comando.
|
||||
.TP
|
||||
.BR \-\-list
|
||||
Visualizza capitoli e lingue disponibili.
|
||||
.SH ESEMPI
|
||||
Per iniziare
|
||||
.B vimtutor
|
||||
in tedesco, dal capitolo uno:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor de
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
In inglese, dal capitolo due:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor -c2
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
Comandi nel formato esteso per usare il linguaggio bavarese, nella GUI, dal capitolo uno:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor --language bar --chapter 1 --gui
|
||||
.RE
|
||||
.fi
|
||||
.SH FILE
|
||||
.TP 15
|
||||
/usr/local/lib/vim/vim??/tutor/tutor[.lingua]
|
||||
I file di testo per
|
||||
/usr/local/lib/vim/vim??/tutor/tutor1[.lingua]
|
||||
I file di testo per il capitolo uno di
|
||||
.B Vimtutor
|
||||
.
|
||||
.br
|
||||
.I vim??
|
||||
<EFBFBD> il numero di versione corto, p.es., vim91 per indicare
|
||||
.B Vim 9.1.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor2[.lingua]
|
||||
I file di testo per il capitolo due di
|
||||
.B Vimtutor.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor.vim
|
||||
Lo script di Vim usato per copiare il file di testo
|
||||
.B Vimtutor
|
||||
.
|
||||
.B Vimtutor.
|
||||
.SH AUTORE
|
||||
Il corso introduttivo
|
||||
.B Vimtutor
|
||||
<EFBFBD> stato scritto in origine per Vi da Michael C. Pierce e Robert K. Ware,
|
||||
Colorado School of Mines, usando idee fornite da Charles Smith,
|
||||
Colorado State University.
|
||||
E-mail: bware@mines.colorado.edu (non pi<70> valido).
|
||||
.br
|
||||
<EFBFBD> stato modificato per
|
||||
.B E-mail: bware@mines.colorado.edu (non pi<EFBFBD> valido).
|
||||
.PP
|
||||
.B Vimtutor
|
||||
<EFBFBD> stato modificato per
|
||||
.B Vim
|
||||
da Bram Moolenaar.
|
||||
.PP
|
||||
Per i nomi dei traduttori, vedere i file nelle rispettive lingue.
|
||||
.SH VEDERE ANCHE
|
||||
vim(1)
|
||||
|
||||
@@ -1,61 +1,106 @@
|
||||
.TH VIMTUTOR 1 "12 agosto 2024"
|
||||
.TH VIMTUTOR 1 "03 dicembre 2024"
|
||||
.SH NOME
|
||||
vimtutor \- Un breve corso introduttivo a Vim
|
||||
.SH SINTASSI
|
||||
.br
|
||||
.B vimtutor [\-g] [lingua]
|
||||
.B vimtutor [\-l | \-\-language ISO639] [\-c | \-\-chapter NUMERO] [\-g | \-\-gui] [ISO639]
|
||||
.br
|
||||
.B vimtutor [\-h | \-\-help]
|
||||
.br
|
||||
.B vimtutor [\-\-list]
|
||||
.SH DESCRIZIONE
|
||||
.B Vimtutor
|
||||
inizia il
|
||||
.B Vim
|
||||
tutor (un breve corso introduttivo a Vim).
|
||||
Viene utilizzata una copia del file di lavoro, che può così essere modificato
|
||||
a piacere senza alterare il file usato come modello.
|
||||
.PP
|
||||
Il comando
|
||||
.B Vimtutor
|
||||
è utile a chi voglia imparare i primi comandi di
|
||||
.B Vim
|
||||
.
|
||||
.B Vim.
|
||||
L'argomento opzionale [ISO639] specifica l'abbreviazione di due o tre lettere
|
||||
del nome di una lingua, per esempio "it" oppure "es".
|
||||
.PP
|
||||
L'argomento opzionale \-g inizia vimtutor usando gvim invece che vim, se la
|
||||
versione GUI di vim è disponibile; altrimenti viene utilizzato vim.
|
||||
.PP
|
||||
L'argomento opzionale [lingua] è l'abbreviazione di due lettere del nome
|
||||
di una lingua, per esempio "it" oppure "es".
|
||||
Se l'argomento [lingua] non viene specificato, si utilizza la lingua "locale"
|
||||
del computer.
|
||||
Se la versione in tale lingua del "tutor" non è disponibile,
|
||||
verrà usata la versione inglese.
|
||||
.B Vimtutor
|
||||
utilizza delle copie dei file originali, non c'è pericolo di danneggiare
|
||||
i file stessi.
|
||||
.PP
|
||||
.B Vim
|
||||
è sempre iniziato in Modo compatibile con Vi.
|
||||
.SH OPZIONI
|
||||
.TP
|
||||
.BR \-l ", " \-\-language\ \fIISO639\fR
|
||||
Imposta il codice di due o tre lettere che designa la lingua.
|
||||
P.es., 'it', 'es', 'bar'.
|
||||
Il default è il linguaggio locale, se una traduzione è disponibile,
|
||||
altrimenti viene utilizzato il testo originale in inglese.
|
||||
.TP
|
||||
.BR \-c ", " \-\-chapter\ \fINUMERO\fR
|
||||
Imposta il numero del capitolo. Il default è il capitolo uno.
|
||||
.TP
|
||||
.BR \-g ", " \-\-gui
|
||||
Inizia
|
||||
.B vimtutor
|
||||
nella versione GUI di vim, se disponibile, altrimenti viene usata la versione console.
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
Visualizza le informazioni relative all'uso del comando.
|
||||
.TP
|
||||
.BR \-\-list
|
||||
Visualizza capitoli e lingue disponibili.
|
||||
.SH ESEMPI
|
||||
Per iniziare
|
||||
.B vimtutor
|
||||
in tedesco, dal capitolo uno:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor de
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
In inglese, dal capitolo due:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor -c2
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
Comandi nel formato esteso per usare il linguaggio bavarese, nella GUI, dal capitolo uno:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor --language bar --chapter 1 --gui
|
||||
.RE
|
||||
.fi
|
||||
.SH FILE
|
||||
.TP 15
|
||||
/usr/local/lib/vim/vim??/tutor/tutor[.lingua]
|
||||
I file di testo per
|
||||
/usr/local/lib/vim/vim??/tutor/tutor1[.lingua]
|
||||
I file di testo per il capitolo uno di
|
||||
.B Vimtutor
|
||||
.
|
||||
.br
|
||||
.I vim??
|
||||
è il numero di versione corto, p.es., vim91 per indicare
|
||||
.B Vim 9.1.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor2[.lingua]
|
||||
I file di testo per il capitolo due di
|
||||
.B Vimtutor.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor.vim
|
||||
Lo script di Vim usato per copiare il file di testo
|
||||
.B Vimtutor
|
||||
.
|
||||
.B Vimtutor.
|
||||
.SH AUTORE
|
||||
Il corso introduttivo
|
||||
.B Vimtutor
|
||||
è stato scritto in origine per Vi da Michael C. Pierce e Robert K. Ware,
|
||||
Colorado School of Mines, usando idee fornite da Charles Smith,
|
||||
Colorado State University.
|
||||
E-mail: bware@mines.colorado.edu (non più valido).
|
||||
.br
|
||||
È stato modificato per
|
||||
.B E-mail: bware@mines.colorado.edu (non più valido).
|
||||
.PP
|
||||
.B Vimtutor
|
||||
è stato modificato per
|
||||
.B Vim
|
||||
da Bram Moolenaar.
|
||||
.PP
|
||||
Per i nomi dei traduttori, vedere i file nelle rispettive lingue.
|
||||
.SH VEDERE ANCHE
|
||||
vim(1)
|
||||
|
||||
@@ -1,63 +1,111 @@
|
||||
.TH VIMTUTOR 1 "12 <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2024"
|
||||
.TH VIMTUTOR 1 "04 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2024"
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> vimtutor \[em] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim.
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> vimtutor \[em] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vim
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.br
|
||||
.B vimtutor [\-g] [<5B><><EFBFBD><EFBFBD>]
|
||||
.B vimtutor [\-l | \-\-language ISO639] [\-c | \-\-chapter <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] [\-g | \-\-gui] [ISO639]
|
||||
.br
|
||||
.B vimtutor [\-h | \-\-help]
|
||||
.br
|
||||
.B vimtutor [\-\-list]
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B vimtutor
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim.
|
||||
<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20> Σ<> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B vimtutor
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim.
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> \-g <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim.
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [ISO639] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><EFBFBD><EFBFBD><EFBFBD>- <20><><EFBFBD> <20>ң<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>,
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, "ru" <20><><EFBFBD> "it", <20><><EFBFBD> "bar".
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<5B><><EFBFBD><EFBFBD>] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
|
||||
"ru" <20><><EFBFBD> "it".
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>] <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><>, <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>.
|
||||
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vimtutor
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20> Σ<> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Vi.
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vi.
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.TP
|
||||
.BR \-l ", " \-\-language =\fIISO639\fR
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>- <20><><EFBFBD> <20>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, "ru", "es", "bar". <20><>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>. <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>.
|
||||
.TP
|
||||
.BR \-c ", " \-\-chapter =\fI<66><49><EFBFBD><EFBFBD><EFBFBD>\fR
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> 1 <20><><EFBFBD> 2. <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
.TP
|
||||
.BR \-g ", " \-\-gui
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD> <20><><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim.
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
.TP
|
||||
.BR \-\-list
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor de
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor -c2
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor --language bar --chapter 1 --gui
|
||||
.RE
|
||||
.fi
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
.I "vim??"
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, vim91 <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim 9.1
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor[.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>]
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/usr/local/share/vim/vim??/tutor/tutor1[.ISO639]
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vimtutor.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor2[.ISO639]
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vimtutor.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor.vim
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim,
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vimtutor.
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vimtutor
|
||||
<EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> Vi <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Michael C. Pierce) <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>.
|
||||
<EFBFBD><EFBFBD><EFBFBD> (Robert K. Ware) <20><> Colorado School of Mines <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> (Charles
|
||||
Smith) <20><> Colorado State University. E-mail: bware@mines.colorado.edu (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>).
|
||||
.br
|
||||
Smith) <20><> Colorado State University.
|
||||
.B E-mail: bware@mines.colorado.edu
|
||||
(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>).
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
.B Vim
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Bram Moolenaar).
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
.PP
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
|
||||
.SH <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
vim(1)
|
||||
|
||||
@@ -1,63 +1,111 @@
|
||||
.TH VIMTUTOR 1 "12 августа 2024"
|
||||
.TH VIMTUTOR 1 "04 ноября 2024"
|
||||
.SH НАЗНАЧЕНИЕ
|
||||
Программа vimtutor \[em] выполняет запуск учебника по редактору Vim.
|
||||
Программа vimtutor \[em] выполняет запуск учебника по редактору Vim
|
||||
.SH КРАТКИЙ ОБЗОР
|
||||
.br
|
||||
.B vimtutor [\-g] [язык]
|
||||
.B vimtutor [\-l | \-\-language ISO639] [\-c | \-\-chapter НОМЕР] [\-g | \-\-gui] [ISO639]
|
||||
.br
|
||||
.B vimtutor [\-h | \-\-help]
|
||||
.br
|
||||
.B vimtutor [\-\-list]
|
||||
.SH ОПИСАНИЕ
|
||||
По команде
|
||||
.B vimtutor
|
||||
выполняется запуск редактора
|
||||
.B Vim.
|
||||
с загруженным файлом, содержащем текст учебника. Но перед этим происходит
|
||||
создание копии файла учебника, чтобы в нём можно было выполнять практические
|
||||
задания без опасения испортить исходный файл.
|
||||
с загруженным файлом, содержащем текст учебника.
|
||||
.PP
|
||||
Практический курс, который будет открыт по команде
|
||||
.B vimtutor
|
||||
полезен для новичков, желающих научиться самым основным командам редактора
|
||||
.B Vim.
|
||||
.PP
|
||||
Через необязательный аргумент командной строки \-g даётся указание на запуск
|
||||
учебника в графическом интерфейсе редактора, если это, конечно, возможно.
|
||||
При не возможности выполнить это, будет запущен консольный вариант редактора
|
||||
.B Vim.
|
||||
Необязательный аргумент [ISO639] задаётся как двух- или трёхсимвольный код языка,
|
||||
например, "ru" или "it", или "bar".
|
||||
.PP
|
||||
Необязательный аргумент [язык] задаётся как двухсимвольный код языка, например,
|
||||
"ru" или "it".
|
||||
Если аргумент [язык] не указан, то используется язык, заданный в действующих
|
||||
в настоящий момент региональных настройках. Если учебника на этом языке не
|
||||
существует, то, по умолчанию, используется учебник на английском языке.
|
||||
По команде
|
||||
.B Vimtutor
|
||||
будет открыта созданная копии файла учебника, чтобы в нём можно было выполнять
|
||||
практические задания без опасения испортить исходный файл.
|
||||
.PP
|
||||
При работе с учебником, редактор
|
||||
.B Vim
|
||||
всегда запускается в режиме совместимости с редактором Vi.
|
||||
всегда запускается в режиме совместимости с редактором
|
||||
.B Vi.
|
||||
.SH АРГУМЕНТЫ КОМАНДНОЙ СТРОКИ
|
||||
.TP
|
||||
.BR \-l ", " \-\-language =\fIISO639\fR
|
||||
Задаёт двух- или трёхсимволный код языка. Например, "ru", "es", "bar". По
|
||||
умолчанию используется язык, заданный в действующих региональных настройках,
|
||||
если такие настройки есть. В противном случае используется английский язык.
|
||||
.TP
|
||||
.BR \-c ", " \-\-chapter =\fIНОМЕР\fR
|
||||
Задаёт номер главы учебника. Значением может быть 1 или 2. По умолчанию будет
|
||||
открыта первая глава учебника.
|
||||
.TP
|
||||
.BR \-g ", " \-\-gui
|
||||
Указывает на запуск учебника в графическом интерфейсе редактора, если это
|
||||
возможно. В противном случае будет запущен консольный вариант редактора
|
||||
.B Vim.
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
Будет показана краткая информация об аргументах и параметрах командной строки.
|
||||
.TP
|
||||
.BR \-\-list
|
||||
Будет показана информация о доступных главах и языках учебника.
|
||||
.SH ПРИМЕРЫ
|
||||
Чтобы открыть первую главу учебника на немецком языке, наберите команду
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor de
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
Чтобы открыть вторую главу учебника на английском языке, наберите команду
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor -c2
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
Пример с использованием полных форм аргументов командной строки для баварского
|
||||
языка с открытием первой главы учебника в графическом интерфейсе редактора
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor --language bar --chapter 1 --gui
|
||||
.RE
|
||||
.fi
|
||||
.SH ФАЙЛЫ
|
||||
Здесь и далее
|
||||
.I "vim??"
|
||||
означает сокращённую запись номера версии, например, vim91 для версии редактора
|
||||
.B Vim 9.1
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor[.язык]
|
||||
Файлы с текстом учебника
|
||||
/usr/local/share/vim/vim??/tutor/tutor1[.ISO639]
|
||||
Файлы с текстом первой главы учебника
|
||||
.B Vimtutor.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor2[.ISO639]
|
||||
Файлы с текстом второй главы учебника
|
||||
.B Vimtutor.
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor.vim
|
||||
Командный файл редактора
|
||||
.B Vim,
|
||||
который используется для создания рабочей копии текста учебника
|
||||
который используется для создания рабочей копии файла учебника
|
||||
.B Vimtutor.
|
||||
.SH АВТОРЫ
|
||||
Учебник
|
||||
.B Vimtutor
|
||||
был впервые написан для Vi Майклом К. Пирсом (Michael C. Pierce) и Робертом К.
|
||||
Уэа (Robert K. Ware) из Colorado School of Mines по идее Чарльза Смита (Charles
|
||||
Smith) из Colorado State University. E-mail: bware@mines.colorado.edu (теперь
|
||||
недоступен).
|
||||
.br
|
||||
Smith) из Colorado State University.
|
||||
.B E-mail: bware@mines.colorado.edu
|
||||
(теперь недоступен).
|
||||
.PP
|
||||
Впоследствии учебник был доработан для использования в редакторе
|
||||
.B Vim
|
||||
Брамом Моленаром (Bram Moolenaar).
|
||||
Имена переводчиков учебника упоминаются в соответствующих файлах.
|
||||
.PP
|
||||
Имена переводчиков указаны в соответствующих файлах с переводами учебника.
|
||||
.SH СМОТРИТЕ ТАКЖЕ
|
||||
vim(1)
|
||||
|
||||
@@ -1,61 +1,108 @@
|
||||
.TH VIMTUTOR 1 "2024 August 12"
|
||||
.TH VIMTUTOR 1 "2024 December 03"
|
||||
.SH NAME
|
||||
vimtutor \- the Vim tutor
|
||||
.SH SYNOPSIS
|
||||
.br
|
||||
.B vimtutor [\-g] [language]
|
||||
.B vimtutor [\-l | \-\-language ISO639] [\-c | \-\-chapter NUMBER] [\-g | \-\-gui] [ISO639]
|
||||
.br
|
||||
.B vimtutor [\-h | \-\-help]
|
||||
.br
|
||||
.B vimtutor [\-\-list]
|
||||
.SH DESCRIPTION
|
||||
.B Vimtutor
|
||||
starts the
|
||||
.B Vim
|
||||
tutor.
|
||||
It copies the tutor file first, so that it can be modified without changing
|
||||
the original file.
|
||||
.PP
|
||||
The
|
||||
.B Vimtutor
|
||||
is useful for people that want to learn their first
|
||||
.B Vim
|
||||
commands.
|
||||
The optional [ISO639] argument is the two or three letter name of a language,
|
||||
like "it" or "es".
|
||||
.PP
|
||||
The optional argument \-g starts vimtutor with gvim rather than vim, if the
|
||||
GUI version of Vim is available, or falls back to vim if gvim is not found.
|
||||
.PP
|
||||
The optional [language] argument is the two-letter name of a language, like
|
||||
"it" or "es".
|
||||
If the [language] argument is missing, the language of the current locale will
|
||||
be used.
|
||||
If a tutor in this language is available, it will be used.
|
||||
Otherwise the English version will be used.
|
||||
.B Vimtutor
|
||||
only opens temporary copies of the original tutor files, there is no danger
|
||||
of overwriting the lessons.
|
||||
.PP
|
||||
.B Vim
|
||||
is always started in Vi compatible mode.
|
||||
is always started in
|
||||
.B Vi
|
||||
compatible mode.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BR \-l ", " \-\-language\ \fIISO639\fR
|
||||
Set the two or three letter language code. E.g. 'it', 'es', 'bar'.
|
||||
Defaults to language of locale if available, else to English.
|
||||
.TP
|
||||
.BR \-c ", " \-\-chapter\ \fINUMBER\fR
|
||||
Set the chapter number. Defaults to chapter one.
|
||||
.TP
|
||||
.BR \-g ", " \-\-gui
|
||||
Start
|
||||
.B vimtutor
|
||||
in the GUI version of vim if available, otherwise fallback to console vim.
|
||||
.TP
|
||||
.BR \-h ", " \-\-help
|
||||
Display usage information.
|
||||
.TP
|
||||
.BR \-\-list
|
||||
Display chapters and languages.
|
||||
.SH EXAMPLES
|
||||
To start
|
||||
.B vimtutor
|
||||
in German on chapter one:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor de
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
In English on chapter two:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor -c2
|
||||
.RE
|
||||
.fi
|
||||
.PP
|
||||
Longform command for Bavarian in the GUI on chapter one:
|
||||
.PP
|
||||
.nf
|
||||
.RS
|
||||
vimtutor --language bar --chapter 1 --gui
|
||||
.RE
|
||||
.fi
|
||||
.SH FILES
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor[.language]
|
||||
/usr/local/share/vim/vim??/tutor/tutor1[.language]
|
||||
The
|
||||
.B Vimtutor
|
||||
text file(s).
|
||||
.br
|
||||
.I vim??
|
||||
is short version number, like vim91 for
|
||||
.B Vim 9.1
|
||||
chapter one text file(s).
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor2[.language]
|
||||
The
|
||||
.B Vimtutor
|
||||
chapter two text file(s).
|
||||
.TP 15
|
||||
/usr/local/share/vim/vim??/tutor/tutor.vim
|
||||
The Vim script used to copy the
|
||||
The
|
||||
.B Vim
|
||||
script used to copy the
|
||||
.B Vimtutor
|
||||
text file.
|
||||
.SH AUTHOR
|
||||
The
|
||||
.B Vimtutor
|
||||
was originally written for Vi by Michael C. Pierce and Robert K. Ware,
|
||||
Colorado School of Mines using ideas supplied by Charles Smith,
|
||||
Colorado State University.
|
||||
E-mail: bware@mines.colorado.edu (now invalid).
|
||||
.br
|
||||
It was modified for
|
||||
.B The Vi Tutorial
|
||||
was originally written for Vi by Michael C. Pierce and Robert K. Ware, Colorado
|
||||
School of Mines using ideas supplied by Charles Smith, Colorado State University.
|
||||
.B E-mail: bware@mines.colorado.edu (now invalid).
|
||||
.PP
|
||||
Modified for
|
||||
.B Vim
|
||||
by Bram Moolenaar.
|
||||
For the names of the translators see the tutor files.
|
||||
.PP
|
||||
Translation contributors are listed in the tutor files.
|
||||
.SH SEE ALSO
|
||||
vim(1)
|
||||
|
||||
@@ -1,51 +1,78 @@
|
||||
VIMTUTOR(1) General Commands Manual VIMTUTOR(1)
|
||||
|
||||
|
||||
|
||||
NAME
|
||||
vimtutor - the Vim tutor
|
||||
|
||||
SYNOPSIS
|
||||
vimtutor [-g] [language]
|
||||
vimtutor [-l | --language ISO639] [-c | --chapter NUMBER] [-g | --gui]
|
||||
[ISO639]
|
||||
vimtutor [-h | --help]
|
||||
vimtutor [--list]
|
||||
|
||||
DESCRIPTION
|
||||
Vimtutor starts the Vim tutor. It copies the tutor file first, so that
|
||||
it can be modified without changing the original file.
|
||||
Vimtutor starts the Vim tutor.
|
||||
|
||||
The Vimtutor is useful for people that want to learn their first Vim
|
||||
commands.
|
||||
commands. The optional [ISO639] argument is the two or three letter
|
||||
name of a language, like "it" or "es".
|
||||
|
||||
The optional argument -g starts vimtutor with gvim rather than vim, if
|
||||
the GUI version of Vim is available, or falls back to vim if gvim is
|
||||
not found.
|
||||
|
||||
The optional [language] argument is the two-letter name of a language,
|
||||
like "it" or "es". If the [language] argument is missing, the language
|
||||
of the current locale will be used. If a tutor in this language is
|
||||
available, it will be used. Otherwise the English version will be
|
||||
used.
|
||||
Vimtutor only opens temporary copies of the original tutor files, there
|
||||
is no danger of overwriting the lessons.
|
||||
|
||||
Vim is always started in Vi compatible mode.
|
||||
|
||||
OPTIONS
|
||||
-l, --language ISO639
|
||||
Set the two or three letter language code. E.g. 'it', 'es',
|
||||
'bar'. Defaults to language of locale if available, else to
|
||||
English.
|
||||
|
||||
-c, --chapter NUMBER
|
||||
Set the chapter number. Defaults to chapter one.
|
||||
|
||||
-g, --gui
|
||||
Start vimtutor in the GUI version of vim if available, otherwise
|
||||
fallback to console vim.
|
||||
|
||||
-h, --help
|
||||
Display usage information.
|
||||
|
||||
--list Display chapters and languages.
|
||||
|
||||
EXAMPLES
|
||||
To start vimtutor in German on chapter one:
|
||||
|
||||
vimtutor de
|
||||
|
||||
In English on chapter two:
|
||||
|
||||
vimtutor -c2
|
||||
|
||||
Longform command for Bavarian in the GUI on chapter one:
|
||||
|
||||
vimtutor --language bar --chapter 1 --gui
|
||||
|
||||
FILES
|
||||
/usr/local/share/vim/vim??/tutor/tutor[.language]
|
||||
The Vimtutor text file(s).
|
||||
vim?? is short version number, like vim91 for Vim 9.1
|
||||
/usr/local/share/vim/vim??/tutor/tutor1[.language]
|
||||
The Vimtutor chapter one text file(s).
|
||||
|
||||
/usr/local/share/vim/vim??/tutor/tutor2[.language]
|
||||
The Vimtutor chapter two text file(s).
|
||||
|
||||
/usr/local/share/vim/vim??/tutor/tutor.vim
|
||||
The Vim script used to copy the Vimtutor text file.
|
||||
|
||||
AUTHOR
|
||||
The Vimtutor was originally written for Vi by Michael C. Pierce and
|
||||
Robert K. Ware, Colorado School of Mines using ideas supplied by
|
||||
Charles Smith, Colorado State University. E-mail: bware@mines.col‐
|
||||
The Vi Tutorial was originally written for Vi by Michael C. Pierce and
|
||||
Robert K. Ware, Colorado School of Mines using ideas supplied by
|
||||
Charles Smith, Colorado State University. E-mail: bware@mines.col‐
|
||||
orado.edu (now invalid).
|
||||
It was modified for Vim by Bram Moolenaar. For the names of the trans‐
|
||||
lators see the tutor files.
|
||||
|
||||
Modified for Vim by Bram Moolenaar.
|
||||
|
||||
Translation contributors are listed in the tutor files.
|
||||
|
||||
SEE ALSO
|
||||
vim(1)
|
||||
|
||||
|
||||
|
||||
2024 August 12 VIMTUTOR(1)
|
||||
2024 December 03 VIMTUTOR(1)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*windows.txt* For Vim version 9.1. Last change: 2024 Sep 08
|
||||
*windows.txt* For Vim version 9.1. Last change: 2024 Dec 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1005,6 +1005,15 @@ CTRL-W g } *CTRL-W_g}*
|
||||
it. Make the new Preview window (if required) N high. If N is
|
||||
not given, 'previewheight' is used.
|
||||
|
||||
*:pb* *:pbuffer*
|
||||
:[N]pb[uffer][!] [+cmd] [N]
|
||||
Edit buffer [N] from the buffer list in the preview window.
|
||||
If [N] is not given, the current buffer remains being edited.
|
||||
See |:buffer-!| for [!]. This will also edit a buffer that is
|
||||
not in the buffer list, without setting the 'buflisted' flag.
|
||||
The notation with single quotes does not work here, `:pbuffer
|
||||
12'345'` uses 12'345 as a buffer name. Also see |+cmd|.
|
||||
|
||||
*:ped* *:pedit*
|
||||
:ped[it][!] [++opt] [+cmd] {file}
|
||||
Edit {file} in the preview window. The preview window is
|
||||
@@ -1012,6 +1021,8 @@ CTRL-W g } *CTRL-W_g}*
|
||||
position isn't changed. Useful example: >
|
||||
:pedit +/fputc /usr/include/stdio.h
|
||||
<
|
||||
Also see |++opt| and |+cmd|.
|
||||
|
||||
*:ps* *:psearch*
|
||||
:[range]ps[earch][!] [count] [/]pattern[/]
|
||||
Works like |:ijump| but shows the found match in the preview
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: The Vim Project <https://github.com/vim/vim>
|
||||
" Last Change: 2024 May 31
|
||||
" Last Change: 2024 Dec 12
|
||||
" Former Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
@@ -183,8 +183,15 @@ au BufNewFile,BufRead *.demo,*.dm{1,2,3,t},*.wxm,maxima-init.mac setf maxima
|
||||
|
||||
" Assembly (all kinds)
|
||||
" *.lst is not pure assembly, it has two extra columns (address, byte codes)
|
||||
" *.[sS], *.[aA] usually Assembly - GNU
|
||||
au BufNewFile,BufRead *.asm,*.[sS],*.[aA],*.mac,*.lst call dist#ft#FTasm()
|
||||
|
||||
" Assembly - Netwide
|
||||
au BufNewFile,BufRead *.nasm setf nasm
|
||||
|
||||
" Assembly - Microsoft
|
||||
au BufNewFile,BufRead *.masm setf masm
|
||||
|
||||
" Assembly - Macro (VAX)
|
||||
au BufNewFile,BufRead *.mar setf vmasm
|
||||
|
||||
@@ -283,7 +290,7 @@ au BufNewFile,BufRead *.blade.php setf blade
|
||||
au BufNewFile,BufRead *.bl setf blank
|
||||
|
||||
" Bitbake
|
||||
au BufNewFile,BufRead *.bb,*.bbappend,*.bbclass,*/build/conf/*.conf,*/meta{-*,}/conf/*.conf setf bitbake
|
||||
au BufNewFile,BufRead *.bb,*.bbappend,*.bbclass,*/build/conf/*.conf,*/meta{-*,}/conf/*.conf,*/project-spec/configs/*.conf setf bitbake
|
||||
|
||||
" Blkid cache file
|
||||
au BufNewFile,BufRead */etc/blkid.tab,*/etc/blkid.tab.old setf xml
|
||||
@@ -311,6 +318,9 @@ au BufNewFile,BufRead */.bundle/config setf yaml
|
||||
au BufNewFile,BufRead *.c call dist#ft#FTlpc()
|
||||
au BufNewFile,BufRead *.lpc,*.ulpc setf lpc
|
||||
|
||||
" C3
|
||||
au BufNewFile,BufRead *.c3,*.c3i,*.c3t setf c3
|
||||
|
||||
" Cairo
|
||||
au BufNewFile,BufRead *.cairo setf cairo
|
||||
|
||||
@@ -449,6 +459,9 @@ au BufNewFile,BufRead .clang-format setf yaml
|
||||
" Clang-tidy
|
||||
au BufNewFile,BufRead .clang-tidy setf yaml
|
||||
|
||||
" Conda configuration file
|
||||
au BufNewFile,BufRead .condarc,condarc setf yaml
|
||||
|
||||
" Matplotlib
|
||||
au BufNewFile,BufRead *.mplstyle,matplotlibrc setf yaml
|
||||
|
||||
@@ -570,6 +583,9 @@ au BufNewFile,BufRead *.dsp call dist#ft#FTdsp()
|
||||
au BufNewFile,BufRead *.xcu,*.xlb,*.xlc,*.xba setf xml
|
||||
au BufNewFile,BufRead psprint.conf,sofficerc setf dosini
|
||||
|
||||
" Libtool files
|
||||
au BufNewFile,BufRead *.lo,*.la,*.lai setf sh
|
||||
|
||||
" Lynx config files
|
||||
au BufNewFile,BufRead lynx.cfg setf lynx
|
||||
|
||||
@@ -640,9 +656,9 @@ au BufNewFile,BufRead *.dfy setf dafny
|
||||
au BufRead,BufNewfile *.dart,*.drt setf dart
|
||||
|
||||
" Debian Control
|
||||
au BufNewFile,BufRead */debian/control setf debcontrol
|
||||
au BufNewFile,BufRead */{debian,DEBIAN}/control setf debcontrol
|
||||
au BufNewFile,BufRead control
|
||||
\ if getline(1) =~ '^Source:'
|
||||
\ if getline(1) =~ '^Source:\|^Package:'
|
||||
\| setf debcontrol
|
||||
\| endif
|
||||
|
||||
@@ -751,8 +767,12 @@ au BufNewFile,BufRead *.dsl
|
||||
" DTD (Document Type Definition for XML)
|
||||
au BufNewFile,BufRead *.dtd setf dtd
|
||||
|
||||
" DTS/DSTI/DTSO (device tree files)
|
||||
au BufNewFile,BufRead *.dts,*.dtsi,*.dtso,*.its,*.keymap setf dts
|
||||
" Devicetree (.its for U-Boot Flattened Image Trees, .keymap for ZMK keymap, and
|
||||
" .overlay for Zephyr overlay)
|
||||
au BufNewFile,BufRead *.dts,*.dtsi,*.dtso setf dts
|
||||
au BufNewFile,BufRead *.its setf dts
|
||||
au BufNewFile,BufRead *.keymap setf dts
|
||||
au BufNewFile,BufRead *.overlay setf dts
|
||||
|
||||
" Earthfile
|
||||
au BufNewFile,BufRead Earthfile setf earthfile
|
||||
@@ -1092,8 +1112,8 @@ au BufRead,BufNewFile *.hurl setf hurl
|
||||
" Hyper Builder
|
||||
au BufNewFile,BufRead *.hb setf hb
|
||||
|
||||
" Hyprlang
|
||||
au BufNewFile,BufRead hypr\(land\|paper\|idle\|lock\).conf setf hyprlang
|
||||
" Hyprland Configuration language
|
||||
au BufNewFile,BufRead */hypr/*.conf,hypr\(land\|paper\|idle\|lock\).conf setf hyprlang
|
||||
|
||||
" Httest
|
||||
au BufNewFile,BufRead *.htt,*.htb setf httest
|
||||
@@ -1126,6 +1146,10 @@ au BufNewFile,BufRead indent.pro call dist#ft#ProtoCheck('indent')
|
||||
" IDL (Interactive Data Language), Prolog, Cproto or zsh module C
|
||||
au BufNewFile,BufRead *.pro call dist#ft#ProtoCheck('idlang')
|
||||
|
||||
" Idris2
|
||||
au BufNewFile,BufRead *.idr setf idris2
|
||||
au BufNewFile,BufRead *.lidr setf lidris2
|
||||
|
||||
" Indent RC
|
||||
au BufNewFile,BufRead indentrc setf indent
|
||||
|
||||
@@ -1145,6 +1169,9 @@ au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c setf usw2
|
||||
" Ipfilter
|
||||
au BufNewFile,BufRead ipf.conf,ipf6.conf,ipf.rules setf ipfilter
|
||||
|
||||
" Ipkg for Idris 2 language
|
||||
au BufNewFile,BufRead *.ipkg setf ipkg
|
||||
|
||||
" Informix 4GL (source - canonical, include file, I4GL+M4 preproc.)
|
||||
au BufNewFile,BufRead *.4gl,*.4gh,*.m4gl setf fgl
|
||||
|
||||
@@ -1248,6 +1275,12 @@ au BufNewFile,BufRead *.jl setf julia
|
||||
" Just
|
||||
au BufNewFile,BufRead [jJ]ustfile,.justfile,*.just setf just
|
||||
|
||||
" KAREL
|
||||
au BufNewFile,BufRead *.kl setf karel
|
||||
if has("fname_case")
|
||||
au BufNewFile,BufRead *.KL setf karel
|
||||
endif
|
||||
|
||||
" KDL
|
||||
au BufNewFile,BufRead *.kdl setf kdl
|
||||
|
||||
@@ -1282,6 +1315,9 @@ au BufNewFile,BufRead Kconfig,Kconfig.debug,Config.in setf kconfig
|
||||
" Lace (ISE)
|
||||
au BufNewFile,BufRead *.ace,*.ACE setf lace
|
||||
|
||||
" Lalrpop
|
||||
au BufNewFile,Bufread *.lalrpop setf lalrpop
|
||||
|
||||
" Larch Shared Language
|
||||
au BufNewFile,BufRead .lsl call dist#ft#FTlsl()
|
||||
|
||||
@@ -1318,6 +1354,9 @@ au BufRead,BufNewFile *.ldg,*.ledger,*.journal setf ledger
|
||||
" lf configuration (lfrc)
|
||||
au BufNewFile,BufRead lfrc setf lf
|
||||
|
||||
" Leo
|
||||
au BufNewFile,BufRead *.leo setf leo
|
||||
|
||||
" Less
|
||||
au BufNewFile,BufRead *.less setf less
|
||||
|
||||
@@ -1334,7 +1373,7 @@ au BufNewFile,BufRead */etc/sensors.conf,*/etc/sensors3.conf setf sensors
|
||||
au BufNewFile,BufRead lftp.conf,.lftprc,*lftp/rc setf lftp
|
||||
|
||||
" Lifelines (or Lex for C++!)
|
||||
au BufNewFile,BufRead *.ll setf lifelines
|
||||
au BufNewFile,BufRead *.ll call dist#ft#FTll()
|
||||
|
||||
" Lilo: Linux loader
|
||||
au BufNewFile,BufRead lilo.conf setf lilo
|
||||
@@ -1342,14 +1381,17 @@ au BufNewFile,BufRead lilo.conf setf lilo
|
||||
" Lilypond
|
||||
au BufNewFile,BufRead *.ly,*.ily setf lilypond
|
||||
|
||||
" Lisp (*.el = ELisp, *.cl = Common Lisp)
|
||||
" Lisp (*.el = ELisp)
|
||||
" *.jl was removed, it's also used for Julia, better skip than guess wrong.
|
||||
if has("fname_case")
|
||||
au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,*.L,.emacs,.sawfishrc,*.stsg,*/supertux2/config setf lisp
|
||||
au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.L,.emacs,.sawfishrc,*.stsg,*/supertux2/config setf lisp
|
||||
else
|
||||
au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,*.cl,.emacs,.sawfishrc,*.stsg,*/supertux2/config setf lisp
|
||||
au BufNewFile,BufRead *.lsp,*.lisp,*.asd,*.el,.emacs,.sawfishrc,*.stsg,*/supertux2/config setf lisp
|
||||
endif
|
||||
|
||||
" *.cl = Common Lisp or OpenCL
|
||||
au BufNewFile,BufRead *.cl call dist#ft#FTcl()
|
||||
|
||||
" SBCL implementation of Common Lisp
|
||||
au BufNewFile,BufRead sbclrc,.sbclrc setf lisp
|
||||
|
||||
@@ -1706,7 +1748,7 @@ au BufNewFile,BufRead *.scad setf openscad
|
||||
" Oracle config file
|
||||
au BufNewFile,BufRead *.ora setf ora
|
||||
|
||||
" Org
|
||||
" Org (Emacs' org-mode)
|
||||
au BufNewFile,BufRead *.org,*.org_archive setf org
|
||||
|
||||
" Packet filter conf
|
||||
@@ -1834,6 +1876,9 @@ au BufNewFile,BufRead requires/*.txt setf requirements
|
||||
au BufNewFile,BufRead Pipfile setf toml
|
||||
au BufNewFile,BufRead Pipfile.lock setf json
|
||||
|
||||
" Pixi lock
|
||||
au BufNewFile,BufRead pixi.lock setf yaml
|
||||
|
||||
" PL/1, PL/I
|
||||
au BufNewFile,BufRead *.pli,*.pl1 setf pli
|
||||
|
||||
@@ -1944,6 +1989,10 @@ au BufNewFile,BufRead *.pk setf poke
|
||||
" Protocols
|
||||
au BufNewFile,BufRead */etc/protocols setf protocols
|
||||
|
||||
" Nvidia PTX (Parallel Thread Execution)
|
||||
" See https://docs.nvidia.com/cuda/parallel-thread-execution/
|
||||
au BufNewFile,BufRead *.ptx setf ptx
|
||||
|
||||
" Purescript
|
||||
au BufNewFile,BufRead *.purs setf purescript
|
||||
|
||||
@@ -1953,8 +2002,8 @@ au BufNewFile,BufRead MANIFEST.in setf pymanifest
|
||||
" Pyret
|
||||
au BufNewFile,BufRead *.arr setf pyret
|
||||
|
||||
" Pyrex
|
||||
au BufNewFile,BufRead *.pyx,*.pxd setf pyrex
|
||||
" Pyrex/Cython
|
||||
au BufNewFile,BufRead *.pyx,*.pyx+,*.pxd,*.pxi setf pyrex
|
||||
|
||||
" Python, Python Shell Startup and Python Stub Files
|
||||
" Quixote (Python-based web framework)
|
||||
@@ -2423,6 +2472,9 @@ au BufNewFile,BufRead *.sml setf sml
|
||||
" Sratus VOS command macro
|
||||
au BufNewFile,BufRead *.cm setf voscm
|
||||
|
||||
" Sway (programming language)
|
||||
au BufNewFile,BufRead *.sw setf sway
|
||||
|
||||
" Swift
|
||||
au BufNewFile,BufRead *.swift,*.swiftinterface setf swift
|
||||
au BufNewFile,BufRead *.swift.gyb setf swiftgyb
|
||||
@@ -2579,6 +2631,9 @@ au BufNewFile,BufReadPost *.tsscl setf tsscl
|
||||
" TSV Files
|
||||
au BufNewFile,BufRead *.tsv setf tsv
|
||||
|
||||
" Tutor mode
|
||||
au BufNewFile,BufReadPost *.tutor setf tutor
|
||||
|
||||
" TWIG files
|
||||
au BufNewFile,BufReadPost *.twig setf twig
|
||||
|
||||
@@ -2815,8 +2870,9 @@ au BufNewFile,BufRead xorg.conf,xorg.conf-4 let b:xf86conf_xfree86_version = 4 |
|
||||
au BufNewFile,BufRead */etc/xinetd.conf setf xinetd
|
||||
|
||||
" Xilinx Vivado/Vitis project files and block design files
|
||||
au BufNewFile,BufRead *.xpr,*.xpfm,*.spfm,*.bxml setf xml
|
||||
au BufNewFile,BufRead *.xpr,*.xpfm,*.spfm,*.bxml,*.mmi setf xml
|
||||
au BufNewFile,BufRead *.bd,*.bda,*.xci setf json
|
||||
au BufNewFile,BufRead *.mss setf mss
|
||||
|
||||
" XS Perl extension interface language
|
||||
au BufNewFile,BufRead *.xs setf xs
|
||||
@@ -2896,6 +2952,7 @@ au BufNewFile,BufRead *.y call dist#ft#FTy()
|
||||
|
||||
" Yaml
|
||||
au BufNewFile,BufRead *.yaml,*.yml,*.eyaml setf yaml
|
||||
au BufNewFile,BufRead */.kube/config setf yaml
|
||||
|
||||
" Raml
|
||||
au BufNewFile,BufRead *.raml setf raml
|
||||
|
||||
14
runtime/ftplugin/c3.vim
Normal file
14
runtime/ftplugin/c3.vim
Normal file
@@ -0,0 +1,14 @@
|
||||
" Vim filetype plugin
|
||||
" Language: C3
|
||||
" Maintainer: Turiiya <34311583+ttytm@users.noreply.github.com>
|
||||
" Last Change: 2024 Nov 24
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setl comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/,:///,://
|
||||
setl commentstring=//\ %s
|
||||
|
||||
let b:undo_ftplugin = 'setl com< cms<'
|
||||
13
runtime/ftplugin/cook.vim
Normal file
13
runtime/ftplugin/cook.vim
Normal file
@@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Cooklang
|
||||
" Maintainer: Riley Bruins <ribru17@gmail.com>
|
||||
" Last Change: 2024 Nov 03
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setl comments=:-- commentstring=--\ %s
|
||||
|
||||
let b:undo_ftplugin = 'setl com< cms<'
|
||||
@@ -6,13 +6,14 @@
|
||||
" 2023 Aug 28 - Added undo_ftplugin (Vim Project)
|
||||
" 2018 Nov 03 - Added commentstring (Markus Mottl)
|
||||
" 2017 Sep 06 - Initial version (Etienne Millon)
|
||||
" 2024 Nov 09 - use setl instead of :set
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin=1
|
||||
|
||||
set lisp
|
||||
setl lisp
|
||||
|
||||
" Comment string
|
||||
setl commentstring=;\ %s
|
||||
|
||||
34
runtime/ftplugin/idris2.vim
Normal file
34
runtime/ftplugin/idris2.vim
Normal file
@@ -0,0 +1,34 @@
|
||||
" Vim ftplugin file
|
||||
" Language: Idris 2
|
||||
" Last Change: 2024 Nov 05
|
||||
" Maintainer: Idris Hackers (https://github.com/edwinb/idris2-vim), Serhii Khoma <srghma@gmail.com>
|
||||
" License: Vim (see :h license)
|
||||
" Repository: https://github.com/ShinKage/idris2-nvim
|
||||
"
|
||||
" Based on ftplugin/idris2.vim from https://github.com/edwinb/idris2-vim
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
setlocal shiftwidth=2
|
||||
setlocal tabstop=2
|
||||
|
||||
" Set g:idris2#allow_tabchar = 1 to use tabs instead of spaces
|
||||
if exists('g:idris2#allow_tabchar') && g:idris2#allow_tabchar != 0
|
||||
setlocal noexpandtab
|
||||
else
|
||||
setlocal expandtab
|
||||
endif
|
||||
|
||||
setlocal comments=s1:{-,mb:-,ex:-},:\|\|\|,:--
|
||||
setlocal commentstring=--\ %s
|
||||
|
||||
" makes ? a part of a word, e.g. for named holes `vzipWith f [] [] = ?vzipWith_rhs_3`, uncomment if want to reenable
|
||||
" setlocal iskeyword+=?
|
||||
|
||||
setlocal wildignore+=*.ibc
|
||||
|
||||
let b:undo_ftplugin = "setlocal shiftwidth< tabstop< expandtab< comments< commentstring< iskeyword< wildignore<"
|
||||
|
||||
let b:did_ftplugin = 1
|
||||
19
runtime/ftplugin/ipkg.vim
Normal file
19
runtime/ftplugin/ipkg.vim
Normal file
@@ -0,0 +1,19 @@
|
||||
" Vim ftplugin file
|
||||
" Language: Ipkg
|
||||
" Maintainer: Idris Hackers (https://github.com/edwinb/idris2-vim), Serhii Khoma <srghma@gmail.com>
|
||||
" Last Change: 2024 Nov 05
|
||||
" Author: ShinKage
|
||||
" License: Vim (see :h license)
|
||||
" Repository: https://github.com/ShinKage/idris2-nvim
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
|
||||
setlocal comments=:--
|
||||
setlocal commentstring=--\ %s
|
||||
setlocal wildignore+=*.ibc
|
||||
|
||||
let b:undo_ftplugin = "setlocal shiftwidth< tabstop< expandtab< comments< commentstring< iskeyword< wildignore<"
|
||||
|
||||
let b:did_ftplugin = 1
|
||||
@@ -3,7 +3,7 @@
|
||||
" Maintainer: Aliaksei Budavei <0x000c70 AT gmail DOT com>
|
||||
" Former Maintainer: Dan Sharp
|
||||
" Repository: https://github.com/zzzyxwvut/java-vim.git
|
||||
" Last Change: 2024 Sep 26
|
||||
" Last Change: 2024 Dec 16
|
||||
" 2024 Jan 14 by Vim Project (browsefilter)
|
||||
" 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring')
|
||||
|
||||
@@ -90,10 +90,233 @@ if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
endif
|
||||
endif
|
||||
|
||||
"""" Support pre- and post-compiler actions for SpotBugs.
|
||||
if (!empty(get(g:, 'spotbugs_properties', {})) ||
|
||||
\ !empty(get(b:, 'spotbugs_properties', {}))) &&
|
||||
\ filereadable($VIMRUNTIME . '/compiler/spotbugs.vim')
|
||||
|
||||
function! s:SpotBugsGetProperty(name, default) abort
|
||||
return get(
|
||||
\ {s:spotbugs_properties_scope}spotbugs_properties,
|
||||
\ a:name,
|
||||
\ a:default)
|
||||
endfunction
|
||||
|
||||
function! s:SpotBugsHasProperty(name) abort
|
||||
return has_key(
|
||||
\ {s:spotbugs_properties_scope}spotbugs_properties,
|
||||
\ a:name)
|
||||
endfunction
|
||||
|
||||
function! s:SpotBugsGetProperties() abort
|
||||
return {s:spotbugs_properties_scope}spotbugs_properties
|
||||
endfunction
|
||||
|
||||
" Work around ":bar"s and ":autocmd"s.
|
||||
function! s:ExecuteActionOnce(cleanup_cmd, action_cmd) abort
|
||||
try
|
||||
execute a:cleanup_cmd
|
||||
finally
|
||||
execute a:action_cmd
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
if exists("b:spotbugs_properties")
|
||||
let s:spotbugs_properties_scope = 'b:'
|
||||
|
||||
" Merge global entries, if any, in buffer-local entries, favouring
|
||||
" defined buffer-local ones.
|
||||
call extend(
|
||||
\ b:spotbugs_properties,
|
||||
\ get(g:, 'spotbugs_properties', {}),
|
||||
\ 'keep')
|
||||
elseif exists("g:spotbugs_properties")
|
||||
let s:spotbugs_properties_scope = 'g:'
|
||||
endif
|
||||
|
||||
let s:commands = {}
|
||||
|
||||
for s:name in ['DefaultPreCompilerCommand',
|
||||
\ 'DefaultPreCompilerTestCommand',
|
||||
\ 'DefaultPostCompilerCommand']
|
||||
if s:SpotBugsHasProperty(s:name)
|
||||
let s:commands[s:name] = remove(
|
||||
\ s:SpotBugsGetProperties(),
|
||||
\ s:name)
|
||||
endif
|
||||
endfor
|
||||
|
||||
if s:SpotBugsHasProperty('compiler')
|
||||
" XXX: Postpone loading the script until all state, if any, has been
|
||||
" collected.
|
||||
if !empty(s:commands)
|
||||
let g:spotbugs#state = {
|
||||
\ 'compiler': remove(s:SpotBugsGetProperties(), 'compiler'),
|
||||
\ 'commands': copy(s:commands),
|
||||
\ }
|
||||
else
|
||||
let g:spotbugs#state = {
|
||||
\ 'compiler': remove(s:SpotBugsGetProperties(), 'compiler'),
|
||||
\ }
|
||||
endif
|
||||
|
||||
" Merge default entries in global (or buffer-local) entries, favouring
|
||||
" defined global (or buffer-local) ones.
|
||||
call extend(
|
||||
\ {s:spotbugs_properties_scope}spotbugs_properties,
|
||||
\ spotbugs#DefaultProperties(),
|
||||
\ 'keep')
|
||||
elseif !empty(s:commands)
|
||||
" XXX: Postpone loading the script until all state, if any, has been
|
||||
" collected.
|
||||
let g:spotbugs#state = {'commands': copy(s:commands)}
|
||||
endif
|
||||
|
||||
unlet s:commands s:name
|
||||
let s:request = 0
|
||||
|
||||
if s:SpotBugsHasProperty('PostCompilerAction')
|
||||
let s:request += 4
|
||||
endif
|
||||
|
||||
if s:SpotBugsHasProperty('PreCompilerTestAction')
|
||||
let s:dispatcher = printf('call call(%s, [])',
|
||||
\ string(s:SpotBugsGetProperties().PreCompilerTestAction))
|
||||
let s:request += 2
|
||||
endif
|
||||
|
||||
if s:SpotBugsHasProperty('PreCompilerAction')
|
||||
let s:dispatcher = printf('call call(%s, [])',
|
||||
\ string(s:SpotBugsGetProperties().PreCompilerAction))
|
||||
let s:request += 1
|
||||
endif
|
||||
|
||||
" Adapt the tests for "s:FindClassFiles()" from "compiler/spotbugs.vim".
|
||||
if (s:request == 3 || s:request == 7) &&
|
||||
\ (!empty(s:SpotBugsGetProperty('sourceDirPath', [])) &&
|
||||
\ !empty(s:SpotBugsGetProperty('classDirPath', [])) &&
|
||||
\ !empty(s:SpotBugsGetProperty('testSourceDirPath', [])) &&
|
||||
\ !empty(s:SpotBugsGetProperty('testClassDirPath', [])))
|
||||
function! s:DispatchAction(paths_action_pairs) abort
|
||||
let name = expand('%:p')
|
||||
|
||||
for [paths, Action] in a:paths_action_pairs
|
||||
for path in paths
|
||||
if name =~# (path . '.\{-}\.java\=$')
|
||||
call Action()
|
||||
return
|
||||
endif
|
||||
endfor
|
||||
endfor
|
||||
endfunction
|
||||
|
||||
let s:dir_cnt = min([
|
||||
\ len(s:SpotBugsGetProperties().sourceDirPath),
|
||||
\ len(s:SpotBugsGetProperties().classDirPath)])
|
||||
let s:test_dir_cnt = min([
|
||||
\ len(s:SpotBugsGetProperties().testSourceDirPath),
|
||||
\ len(s:SpotBugsGetProperties().testClassDirPath)])
|
||||
|
||||
" Do not break up path pairs with filtering!
|
||||
let s:dispatcher = printf('call s:DispatchAction(%s)',
|
||||
\ string([[s:SpotBugsGetProperties().sourceDirPath[0 : s:dir_cnt - 1],
|
||||
\ s:SpotBugsGetProperties().PreCompilerAction],
|
||||
\ [s:SpotBugsGetProperties().testSourceDirPath[0 : s:test_dir_cnt - 1],
|
||||
\ s:SpotBugsGetProperties().PreCompilerTestAction]]))
|
||||
unlet s:test_dir_cnt s:dir_cnt
|
||||
endif
|
||||
|
||||
if exists("s:dispatcher")
|
||||
function! s:ExecuteActions(pre_action, post_action) abort
|
||||
try
|
||||
execute a:pre_action
|
||||
catch /\<E42:/
|
||||
execute a:post_action
|
||||
endtry
|
||||
endfunction
|
||||
endif
|
||||
|
||||
if s:request
|
||||
if exists("b:spotbugs_syntax_once") || empty(join(getline(1, 8), ''))
|
||||
let s:actions = [{'event': 'User'}]
|
||||
else
|
||||
" XXX: Handle multiple FileType events when vimrc contains more
|
||||
" than one filetype setting for the language, e.g.:
|
||||
" :filetype plugin indent on
|
||||
" :autocmd BufRead,BufNewFile *.java setlocal filetype=java ...
|
||||
" XXX: DO NOT ADD b:spotbugs_syntax_once TO b:undo_ftplugin !
|
||||
let b:spotbugs_syntax_once = 1
|
||||
let s:actions = [{
|
||||
\ 'event': 'Syntax',
|
||||
\ 'once': 1,
|
||||
\ }, {
|
||||
\ 'event': 'User',
|
||||
\ }]
|
||||
endif
|
||||
|
||||
for s:idx in range(len(s:actions))
|
||||
if s:request == 7 || s:request == 6 || s:request == 5
|
||||
let s:actions[s:idx].cmd = printf('call s:ExecuteActions(%s, %s)',
|
||||
\ string(s:dispatcher),
|
||||
\ string(printf('compiler spotbugs | call call(%s, [])',
|
||||
\ string(s:SpotBugsGetProperties().PostCompilerAction))))
|
||||
elseif s:request == 4
|
||||
let s:actions[s:idx].cmd = printf(
|
||||
\ 'compiler spotbugs | call call(%s, [])',
|
||||
\ string(s:SpotBugsGetProperties().PostCompilerAction))
|
||||
elseif s:request == 3 || s:request == 2 || s:request == 1
|
||||
let s:actions[s:idx].cmd = printf('call s:ExecuteActions(%s, %s)',
|
||||
\ string(s:dispatcher),
|
||||
\ string('compiler spotbugs'))
|
||||
else
|
||||
let s:actions[s:idx].cmd = ''
|
||||
endif
|
||||
endfor
|
||||
|
||||
if !exists("#java_spotbugs")
|
||||
augroup java_spotbugs
|
||||
augroup END
|
||||
endif
|
||||
|
||||
" The events are defined in s:actions.
|
||||
silent! autocmd! java_spotbugs User <buffer>
|
||||
silent! autocmd! java_spotbugs Syntax <buffer>
|
||||
|
||||
for s:action in s:actions
|
||||
if has_key(s:action, 'once')
|
||||
execute printf('autocmd java_spotbugs %s <buffer> ' .
|
||||
\ 'call s:ExecuteActionOnce(%s, %s)',
|
||||
\ s:action.event,
|
||||
\ string(printf('autocmd! java_spotbugs %s <buffer>',
|
||||
\ s:action.event)),
|
||||
\ string(s:action.cmd))
|
||||
else
|
||||
execute printf('autocmd java_spotbugs %s <buffer> %s',
|
||||
\ s:action.event,
|
||||
\ s:action.cmd)
|
||||
endif
|
||||
endfor
|
||||
|
||||
unlet! s:action s:actions s:idx s:dispatcher
|
||||
endif
|
||||
|
||||
delfunction s:SpotBugsGetProperties
|
||||
delfunction s:SpotBugsHasProperty
|
||||
delfunction s:SpotBugsGetProperty
|
||||
unlet! s:request s:spotbugs_properties_scope
|
||||
endif
|
||||
|
||||
function! JavaFileTypeCleanUp() abort
|
||||
setlocal suffixes< suffixesadd< formatoptions< comments< commentstring< path< includeexpr<
|
||||
unlet! b:browsefilter
|
||||
|
||||
" The concatenated removals may be misparsed as a User autocmd.
|
||||
silent! autocmd! java_spotbugs User <buffer>
|
||||
silent! autocmd! java_spotbugs Syntax <buffer>
|
||||
endfunction
|
||||
|
||||
" Undo the stuff we changed.
|
||||
let b:undo_ftplugin = "setlocal suffixes< suffixesadd<" .
|
||||
\ " formatoptions< comments< commentstring< path< includeexpr<" .
|
||||
\ " | unlet! b:browsefilter"
|
||||
let b:undo_ftplugin = 'call JavaFileTypeCleanUp() | delfunction JavaFileTypeCleanUp'
|
||||
|
||||
" See ":help vim9-mix".
|
||||
if !has("vim9script")
|
||||
@@ -114,6 +337,21 @@ if exists("s:zip_func_upgradable")
|
||||
setlocal suffixesadd<
|
||||
endif
|
||||
|
||||
if exists("*s:DispatchAction")
|
||||
def! s:DispatchAction(paths_action_pairs: list<list<any>>)
|
||||
const name: string = expand('%:p')
|
||||
|
||||
for [paths: list<string>, Action: func: any] in paths_action_pairs
|
||||
for path in paths
|
||||
if name =~# (path .. '.\{-}\.java\=$')
|
||||
Action()
|
||||
return
|
||||
endif
|
||||
endfor
|
||||
endfor
|
||||
enddef
|
||||
endif
|
||||
|
||||
" Restore the saved compatibility options.
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
16
runtime/ftplugin/karel.vim
Normal file
16
runtime/ftplugin/karel.vim
Normal file
@@ -0,0 +1,16 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: KAREL
|
||||
" Last Change: 2024-11-18
|
||||
" Maintainer: Kirill Morozov <kirill@robotix.pro>
|
||||
" Credits: Patrick Meiser-Knosowski for the initial implementation.
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal comments=:--
|
||||
setlocal commentstring=--\ %s
|
||||
setlocal suffixesadd+=.kl,.KL
|
||||
|
||||
let b:undo_ftplugin = "setlocal com< cms< sua<"
|
||||
13
runtime/ftplugin/leo.vim
Normal file
13
runtime/ftplugin/leo.vim
Normal file
@@ -0,0 +1,13 @@
|
||||
" Vim filetype plugin
|
||||
" Language: Leo
|
||||
" Maintainer: Riley Bruins <ribru17@gmail.com>
|
||||
" Last Change: 2024 Nov 03
|
||||
|
||||
if exists('b:did_ftplugin')
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setl comments=:// commentstring=//\ %s
|
||||
|
||||
let b:undo_ftplugin = 'setl com< cms<'
|
||||
12
runtime/ftplugin/llvm.vim
Normal file
12
runtime/ftplugin/llvm.vim
Normal file
@@ -0,0 +1,12 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: LLVM IR
|
||||
" Last Change: 2024 Oct 22
|
||||
" Maintainer: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
||||
|
||||
if exists("b:did_ftplugin") | finish | endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setl comments=:;
|
||||
setl commentstring=;\ %s
|
||||
|
||||
let b:undo_ftplugin = "setl commentstring< comments<"
|
||||
@@ -5,7 +5,7 @@
|
||||
" Contributor: Dorai Sitaram <ds26@gte.com>
|
||||
" C.D. MacEachern <craig.daniel.maceachern@gmail.com>
|
||||
" Tyler Miller <tmillr@proton.me>
|
||||
" Last Change: 2024 Jan 14
|
||||
" Last Change: 2024 Dec 03
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
@@ -48,6 +48,64 @@ if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
let b:undo_ftplugin ..= " | unlet! b:browsefilter"
|
||||
endif
|
||||
|
||||
if has("folding") && get(g:, "lua_folding", 0)
|
||||
setlocal foldmethod=expr
|
||||
setlocal foldexpr=LuaFold(v:lnum)
|
||||
let b:lua_lasttick = -1
|
||||
let b:undo_ftplugin ..= "|setl foldexpr< foldmethod< | unlet! b:lua_lasttick b:lua_foldlists"
|
||||
endif
|
||||
|
||||
|
||||
" The rest of the file needs to be :sourced only once per Vim session
|
||||
if exists('s:loaded_lua') || &cp
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
finish
|
||||
endif
|
||||
let s:loaded_lua = 1
|
||||
|
||||
let s:patterns = [
|
||||
\ ['do', 'end'],
|
||||
\ ['if\s+.+\s+then', 'end'],
|
||||
\ ['repeat', 'until\s+.+'],
|
||||
\ ['for\s+.+\s+do', 'end'],
|
||||
\ ['while\s+.+\s+do', 'end'],
|
||||
\ ['function.+', 'end'],
|
||||
\ ['return\s+function.+', 'end'],
|
||||
\ ['local\s+function\s+.+', 'end'],
|
||||
\ ]
|
||||
|
||||
function! LuaFold(lnum) abort
|
||||
if b:lua_lasttick == b:changedtick
|
||||
return b:lua_foldlists[a:lnum-1]
|
||||
endif
|
||||
let b:lua_lasttick = b:changedtick
|
||||
|
||||
let b:lua_foldlists = []
|
||||
let foldlist = []
|
||||
let buf = getline(1, '$')
|
||||
for line in buf
|
||||
for t in s:patterns
|
||||
let tagopen = '\v^\s*'..t[0]..'\s*$'
|
||||
let tagclose = '\v^\s*'..t[1]..'\s*$'
|
||||
if line =~# tagopen
|
||||
call add(foldlist, t)
|
||||
break
|
||||
elseif line =~# tagclose
|
||||
if len(foldlist) > 0 && line =~# foldlist[-1][1]
|
||||
call remove(foldlist, -1)
|
||||
else
|
||||
let foldlist = []
|
||||
endif
|
||||
break
|
||||
endif
|
||||
endfor
|
||||
call add(b:lua_foldlists, len(foldlist))
|
||||
endfor
|
||||
|
||||
return lua_foldlists[a:lnum-1]
|
||||
endfunction
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
|
||||
16
runtime/ftplugin/mss.vim
Normal file
16
runtime/ftplugin/mss.vim
Normal file
@@ -0,0 +1,16 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Vivado mss file
|
||||
" Last Change: 2024 Oct 22
|
||||
" Document: https://docs.amd.com/r/2020.2-English/ug1400-vitis-embedded/Microprocessor-Software-Specification-MSS
|
||||
" Maintainer: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
||||
|
||||
if exists("b:did_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_ftplugin = 1
|
||||
|
||||
setlocal comments=b:#,fb:-
|
||||
setlocal commentstring=#\ %s
|
||||
|
||||
let b:match_words = '\<BEGIN\>:\<END\>'
|
||||
let b:undo_ftplugin = "setl com< cms< | unlet b:match_words"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user