2016-05-04 9 views
0

Gibt es eine Möglichkeit, Vim Falten zu benennen?Gibt es eine Möglichkeit, Vim Falten zu benennen?

Ich verstehe, dass Sie mithilfe von Kommentaren oder der Foldtext-Methode Falten effektiv benennen können. Ich schreibe jedoch eine Azure Resource Manager-Vorlage, bei der es sich um reines JSON handelt, sodass keine Kommentare zulässig sind.

+0

Es sieht wie folgt aus ist möglich, mit dem foldtext (Methode) – onlyanegg

Antwort

0

Ein falscher "Name" kann über die Option flangext festgelegt werden. Das ist, was ich für die für die ARM-Vorlage getan:

set foldtext=ARMFoldText() 

function! ARMFoldText() 
" Between foldstart and foldend, return the line that has the name 
let i = v:foldstart + 1 
while i < v:foldend 
    let foldName = getline(i) 
    if foldName =~# '^\s*"name":' 
    break 
    endif 
    let i += 1 
endwhile 
"if foldlevel = 2 return foldName else return foldtext 
if foldlevel(v:foldstart) == 2 
    return foldName 
else 
    return foldtext() 
endif 
endfunction 

Dies ist, wie es mit meiner benutzerdefinierten falten Ausdruck aussieht:

1 { 
    2 "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", 
    3 "contentVersion": "1.0.0.0", 
    4 +-- 24 lines: "variables": {--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
28 +-- 16 lines: "parameters": {-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
44 "resources": { 
45 "name": "[variables('vnet-name')]",----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
66  "name": "[variables(ip-public-name)]",-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
75  "name": "[variables('lb-web-01')]",-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
115  "name": "[variables('nic-01-name')]",------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 
148  "name": "[variables('sg-app-01')]",-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
172  "name": "[variables('sg-web-01')]",------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 

Es gibt auch viele andere Beispiele aus zu arbeiten. Diejenigen, die ich verwiesen waren folgende:

http://dhruvasagar.com/2013/03/28/vim-better-foldtext http://vim.wikia.com/wiki/Customize_text_for_closed_folds

Verwandte Themen