在Visual Studio中是否有类似Emacs的toggle-read-only?

时间:2009-06-12 00:15:38

标签: visual-studio emacs editing

主题说明了一切。有没有一种简单的方法可以在Visual Studio中切换缓冲区的可编辑性?这与Emacs中的toggle-read-only命令类似。

我不打算更改文件属性...我是否可以在Visual Studio中打开文件时编辑该文件。我正在使用2008年和2005年。

为什么我要这样做?我倾向于同时打开几个文件....有时一天几天(也许是一个坏习惯)而且我有+/-一个字符或几个没有任何意义或注意的字符......也担心关于“猫走过键盘”

此外......像emacs这样的“古代”代码编辑器有它:)我开始期待这个功能。

TIA!

4 个答案:

答案 0 :(得分:2)

Visual Studio有一个名为CodeMaid的扩展,它将为您提供每个文件的只读切换。

http://www.codemaid.net/documentation/#andmore

您可以在http://visualstudiogallery.msdn.microsoft.com/76293c4d-8c16-4f4a-aee6-21f83a571496

下载

答案 1 :(得分:1)

你可以使用这段vba

Public Sub ToggleReadOnly()

    Dim doc As Document
    doc = DTE.ActiveDocument

    If (doc.ReadOnly) Then
        doc.ReadOnly = False
    Else
        doc.ReadOnly = True
    End If

End Sub

注意:msdn文档特别提到不应该明确使用属性ReadOnly但我在vs.net 2005上验证了这对我有用。

我还验证了实际的文件属性没有改变。

答案 2 :(得分:0)

我不知道任何可以迅速达到你想要的东西。而且,我不确定你为什么需要这样的东西。通常我使用subversion告诉我哪些文件已被更改以及它们被修改的位置,这样我可以还原任何不属于的文件。

你可以稍微扩展一下你的问题,让我们知道你的用例是什么吗?

如果你真的需要切换只读....也许你可以:

  1. 右键单击文件
  2. 选择打开包含文件夹
  3. 右键单击该文件并选择属性
  4. 选中只读复选框

答案 3 :(得分:0)

启动工具 - >宏 - >宏IDE。添加新模块(详细描述here)并按如下方式定义程序:

Imports EnvDTE

Public Sub SwitchReadOnly()
    DTE.ActiveDocument.ReadOnly = Not DTE.ActiveDocument.ReadOnly
End Sub

将宏指定给键盘键(详细说明here)。就是这样。