How do you hide arbitrary section of code in VS Code?

徘徊边缘 提交于 2019-12-22 04:56:19

问题


By "VS Code" I mean the lightweight text editor not the monolithic IDE, unfortunately searching this on google will bring up many pieces of irrelevant information about how to do this in Visual Studio.

To the question itself, Anybody knows how to hide arbitrary selected lines of code in "Visual Studio Code", preferably into a plus sign like collapsing does?

Note: this is different than collapsing nested code which probably could be achieved by Ctrl+K,Ctrl+<num> , what I need here is to hide specific block of code of choice, no matter nested or not.

EDIT: I see there are people who don't understand my requirements.

for example, you may think what I want is this:

before hiding:

for i in j:
    for k in i:
        for l in k:
            somestuff...

after hiding:

[+] for i in j: ...

What I actually want is this:

before hiding:

# doing stuff about a
a = ClassA()
a.bar()
a.i = 2
a.j = 3
a.k = 5

after hiding:

[+] ...  ( doing stuff about a )

2017.10.17 EDIT: turns out VS Code implemented a very similar feature called "Folding Regions" in VS Code 1.17.1 Update. link


回答1:


You can use the following delimiters for code folding:

C/C++:       #pragma region and #pragma endregion
C#:          #region and #endregion
CSS:         /* #region */ and /* #endregion */
Java:        //region and //endregion
JavaScript:  //#region and //#endregion and //region and //endregion
PHP:         #region and #endregion
Powershell:  #region and #endregion
Python:      #region and #endregion
VB:          #Region and #End Region

See https://github.com/Microsoft/vscode/issues/12146 ([folding] fold regions)




回答2:


Unfortunately, it doesn't appear that VSCode currently allows you to hide an arbitrary selection of code like Visual Studio does via Ctrl+M,Ctrl+H. For now you could use the code folding feature, which depends on indentation. That is, if you indent the code you want to hide, you could then collapse it via Ctrl+Shift+[, like so:

Obviously, this is kind of an ugly solution to your problem; it requires multiple steps and makes actual changes to the file. Also, it's clearly useless if you're writing in a whitespace-dependent language like Python, but I don't think you are going to find a better solution short of finding an extension (or writing one yourself). It also might be worth posting an issue on the official VSCode GitHub repo if this feature is important to you.



来源:https://stackoverflow.com/questions/44060551/how-do-you-hide-arbitrary-section-of-code-in-vs-code

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!