Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
5abeb010
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5abeb010
编写于
12月 20, 2017
作者:
I
isidor
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
new file command
上级
71a35713
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
37 addition
and
7 deletion
+37
-7
src/vs/workbench/parts/files/electron-browser/fileActions.contribution.ts
.../parts/files/electron-browser/fileActions.contribution.ts
+12
-4
src/vs/workbench/parts/files/electron-browser/fileActions.ts
src/vs/workbench/parts/files/electron-browser/fileActions.ts
+15
-3
src/vs/workbench/parts/files/electron-browser/fileCommands.ts
...vs/workbench/parts/files/electron-browser/fileCommands.ts
+10
-0
未找到文件。
src/vs/workbench/parts/files/electron-browser/fileActions.contribution.ts
浏览文件 @
5abeb010
...
...
@@ -9,7 +9,7 @@ import { Registry } from 'vs/platform/registry/common/platform';
import
{
Action
,
IAction
}
from
'
vs/base/common/actions
'
;
import
{
ActionItem
,
BaseActionItem
,
Separator
}
from
'
vs/base/browser/ui/actionbar/actionbar
'
;
import
{
Scope
,
IActionBarRegistry
,
Extensions
as
ActionBarExtensions
,
ActionBarContributor
}
from
'
vs/workbench/browser/actions
'
;
import
{
GlobalNewUntitledFileAction
,
SaveFileAsAction
,
ShowOpenedFileInNewWindow
,
CopyPathAction
,
GlobalCopyPathAction
,
RevealInOSAction
,
GlobalRevealInOSAction
,
pasteIntoFocusedFilesExplorerViewItem
,
FocusOpenEditorsView
,
FocusFilesExplorer
,
GlobalCompareResourcesAction
,
GlobalNewFileAction
,
GlobalNewFolderAction
,
RevertFileAction
,
SaveFilesAction
,
SaveAllAction
,
SaveFileAction
,
MoveFileToTrashAction
,
TriggerRenameFileAction
,
PasteFileAction
,
CopyFileAction
,
NewFolderAction
,
NewFileAction
,
ShowActiveFileInExplorer
,
CollapseExplorerView
,
RefreshExplorerView
,
CompareWithSavedAction
,
CompareWithClipboardAction
}
from
'
vs/workbench/parts/files/electron-browser/fileActions
'
;
import
{
GlobalNewUntitledFileAction
,
SaveFileAsAction
,
ShowOpenedFileInNewWindow
,
CopyPathAction
,
GlobalCopyPathAction
,
RevealInOSAction
,
GlobalRevealInOSAction
,
pasteIntoFocusedFilesExplorerViewItem
,
FocusOpenEditorsView
,
FocusFilesExplorer
,
GlobalCompareResourcesAction
,
GlobalNewFileAction
,
GlobalNewFolderAction
,
RevertFileAction
,
SaveFilesAction
,
SaveAllAction
,
SaveFileAction
,
MoveFileToTrashAction
,
TriggerRenameFileAction
,
PasteFileAction
,
CopyFileAction
,
NewFolderAction
,
ShowActiveFileInExplorer
,
CollapseExplorerView
,
RefreshExplorerView
,
CompareWithSavedAction
,
CompareWithClipboardAction
}
from
'
vs/workbench/parts/files/electron-browser/fileActions
'
;
import
{
revertLocalChangesCommand
,
acceptLocalChangesCommand
,
CONFLICT_RESOLUTION_CONTEXT
}
from
'
vs/workbench/parts/files/electron-browser/saveErrorHandler
'
;
import
{
SyncActionDescriptor
,
MenuId
,
MenuRegistry
}
from
'
vs/platform/actions/common/actions
'
;
import
{
IWorkbenchActionRegistry
,
Extensions
as
ActionExtensions
}
from
'
vs/workbench/common/actions
'
;
...
...
@@ -17,7 +17,7 @@ import { IInstantiationService } from 'vs/platform/instantiation/common/instanti
import
{
IKeybindingService
}
from
'
vs/platform/keybinding/common/keybinding
'
;
import
{
FileStat
,
Model
}
from
'
vs/workbench/parts/files/common/explorerModel
'
;
import
{
KeyMod
,
KeyChord
,
KeyCode
}
from
'
vs/base/common/keyCodes
'
;
import
{
copyFocusedFilesExplorerViewItem
,
openWindowCommand
,
deleteFocusedFilesExplorerViewItemCommand
,
moveFocusedFilesExplorerViewItemToTrashCommand
,
renameFocusedFilesExplorerViewItemCommand
,
REVEAL_IN_OS_COMMAND_ID
,
COPY_PATH_COMMAND_ID
,
REVEAL_IN_EXPLORER_COMMAND_ID
,
OPEN_TO_SIDE_COMMAND_ID
,
EditorWithResourceFocusedInOpenEditorsContext
,
REVERT_FILE_COMMAND_ID
,
SAVE_FILE_COMMAND_ID
,
SAVE_FILE_LABEL
,
UntitledEditorFocusedInOpenEditorsContext
,
SAVE_FILE_AS_COMMAND_ID
,
SAVE_FILE_AS_LABEL
,
SAVE_ALL_IN_GROUP_COMMAND_ID
,
GroupFocusedInOpenEditorsContext
,
COMPARE_WITH_SAVED_COMMAND_ID
,
COMPARE_RESOURCE_COMMAND_ID
,
SELECT_FOR_COMPARE_COMMAND_ID
,
EditorFocusedInOpenEditorsContext
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
copyFocusedFilesExplorerViewItem
,
openWindowCommand
,
deleteFocusedFilesExplorerViewItemCommand
,
moveFocusedFilesExplorerViewItemToTrashCommand
,
renameFocusedFilesExplorerViewItemCommand
,
REVEAL_IN_OS_COMMAND_ID
,
COPY_PATH_COMMAND_ID
,
REVEAL_IN_EXPLORER_COMMAND_ID
,
OPEN_TO_SIDE_COMMAND_ID
,
EditorWithResourceFocusedInOpenEditorsContext
,
REVERT_FILE_COMMAND_ID
,
SAVE_FILE_COMMAND_ID
,
SAVE_FILE_LABEL
,
UntitledEditorFocusedInOpenEditorsContext
,
SAVE_FILE_AS_COMMAND_ID
,
SAVE_FILE_AS_LABEL
,
SAVE_ALL_IN_GROUP_COMMAND_ID
,
GroupFocusedInOpenEditorsContext
,
COMPARE_WITH_SAVED_COMMAND_ID
,
COMPARE_RESOURCE_COMMAND_ID
,
SELECT_FOR_COMPARE_COMMAND_ID
,
EditorFocusedInOpenEditorsContext
,
NEW_FILE_COMMAND_ID
,
NEW_FILE_LABEL
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
CommandsRegistry
,
ICommandHandler
}
from
'
vs/platform/commands/common/commands
'
;
import
{
ContextKeyExpr
}
from
'
vs/platform/contextkey/common/contextkey
'
;
import
{
KeybindingsRegistry
}
from
'
vs/platform/keybinding/common/keybindingsRegistry
'
;
...
...
@@ -56,8 +56,6 @@ class FilesViewerActionContributor extends ActionBarContributor {
// Directory Actions
if
(
stat
.
isDirectory
&&
!
stat
.
nonexistentRoot
)
{
// New File
actions
.
push
(
this
.
instantiationService
.
createInstance
(
NewFileAction
,
tree
,
<
FileStat
>
stat
));
// New Folder
actions
.
push
(
this
.
instantiationService
.
createInstance
(
NewFolderAction
,
tree
,
<
FileStat
>
stat
));
...
...
@@ -436,3 +434,13 @@ MenuRegistry.appendMenuItem(MenuId.ExplorerContext, {
},
when
:
ContextKeyExpr
.
and
(
ExplorerRootContext
,
ExplorerFolderContext
)
});
MenuRegistry
.
appendMenuItem
(
MenuId
.
ExplorerContext
,
{
group
:
'
3_create
'
,
order
:
10
,
command
:
{
id
:
NEW_FILE_COMMAND_ID
,
title
:
NEW_FILE_LABEL
},
when
:
ContextKeyExpr
.
and
(
ExplorerFolderContext
)
});
src/vs/workbench/parts/files/electron-browser/fileActions.ts
浏览文件 @
5abeb010
...
...
@@ -41,14 +41,15 @@ import { IMessageService, IMessageWithAction, IConfirmation, Severity, CancelAct
import
{
IModel
}
from
'
vs/editor/common/editorCommon
'
;
import
{
IBackupFileService
}
from
'
vs/workbench/services/backup/common/backup
'
;
import
{
IWindowsService
}
from
'
vs/platform/windows/common/windows
'
;
import
{
withFocusedFilesExplorer
,
REVERT_FILE_COMMAND_ID
,
COMPARE_WITH_SAVED_COMMAND_ID
,
REVEAL_IN_OS_COMMAND_ID
,
COPY_PATH_COMMAND_ID
,
REVEAL_IN_EXPLORER_COMMAND_ID
,
SAVE_FILE_AS_COMMAND_ID
,
SAVE_FILE_COMMAND_ID
,
SAVE_FILE_LABEL
,
SAVE_FILE_AS_LABEL
,
SAVE_ALL_COMMAND_ID
,
SAVE_ALL_LABEL
,
SAVE_ALL_IN_GROUP_COMMAND_ID
,
SAVE_FILES_COMMAND_ID
,
SAVE_FILES_LABEL
,
COMPARE_WITH_SAVED_SCHEMA
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
withFocusedFilesExplorer
,
REVERT_FILE_COMMAND_ID
,
COMPARE_WITH_SAVED_COMMAND_ID
,
REVEAL_IN_OS_COMMAND_ID
,
COPY_PATH_COMMAND_ID
,
REVEAL_IN_EXPLORER_COMMAND_ID
,
SAVE_FILE_AS_COMMAND_ID
,
SAVE_FILE_COMMAND_ID
,
SAVE_FILE_LABEL
,
SAVE_FILE_AS_LABEL
,
SAVE_ALL_COMMAND_ID
,
SAVE_ALL_LABEL
,
SAVE_ALL_IN_GROUP_COMMAND_ID
,
SAVE_FILES_COMMAND_ID
,
SAVE_FILES_LABEL
,
COMPARE_WITH_SAVED_SCHEMA
,
NEW_FILE_LABEL
,
NEW_FILE_COMMAND_ID
,
IExplorerContext
}
from
'
vs/workbench/parts/files/electron-browser/fileCommands
'
;
import
{
ITextModelService
,
ITextModelContentProvider
}
from
'
vs/editor/common/services/resolverService
'
;
import
{
IConfigurationService
,
ConfigurationTarget
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
once
}
from
'
vs/base/common/event
'
;
import
{
IClipboardService
}
from
'
vs/platform/clipboard/common/clipboardService
'
;
import
{
IModeService
}
from
'
vs/editor/common/services/modeService
'
;
import
{
IModelService
}
from
'
vs/editor/common/services/modelService
'
;
import
{
ICommandService
}
from
'
vs/platform/commands/common/commands
'
;
import
{
ICommandService
,
CommandsRegistry
}
from
'
vs/platform/commands/common/commands
'
;
import
{
IListService
}
from
'
vs/platform/list/browser/listService
'
;
export
interface
IEditableData
{
action
:
IAction
;
...
...
@@ -443,7 +444,7 @@ export class NewFileAction extends BaseNewAction {
@
ITextFileService
textFileService
:
ITextFileService
,
@
IInstantiationService
instantiationService
:
IInstantiationService
)
{
super
(
'
explorer.newFile
'
,
nls
.
localize
(
'
newFile
'
,
"
New File
"
)
,
tree
,
true
,
instantiationService
.
createInstance
(
CreateFileAction
,
element
),
null
,
fileService
,
messageService
,
textFileService
);
super
(
'
explorer.newFile
'
,
NEW_FILE_LABEL
,
tree
,
true
,
instantiationService
.
createInstance
(
CreateFileAction
,
element
),
null
,
fileService
,
messageService
,
textFileService
);
this
.
class
=
'
explorer-action new-file
'
;
this
.
_updateEnablement
();
...
...
@@ -1754,3 +1755,14 @@ if (!diag) {
console
.
log
(
args
[
1
]
+
'
-
'
+
args
[
0
]
+
'
(time:
'
+
args
[
2
].
getTime
()
+
'
[
'
+
args
[
2
].
toUTCString
()
+
'
])
'
);
});
}
CommandsRegistry
.
registerCommand
({
id
:
NEW_FILE_COMMAND_ID
,
handler
:
(
accessor
,
resource
:
URI
,
explorerContext
:
IExplorerContext
)
=>
{
const
instantationService
=
accessor
.
get
(
IInstantiationService
);
const
listService
=
accessor
.
get
(
IListService
);
const
newFileAction
=
instantationService
.
createInstance
(
NewFileAction
,
listService
.
lastFocusedList
,
explorerContext
.
stat
);
return
newFileAction
.
run
(
explorerContext
);
}
});
src/vs/workbench/parts/files/electron-browser/fileCommands.ts
浏览文件 @
5abeb010
...
...
@@ -39,6 +39,7 @@ import { IEditorViewState } from 'vs/editor/common/editorCommon';
import
{
getCodeEditor
}
from
'
vs/editor/browser/services/codeEditorService
'
;
import
{
KeybindingsRegistry
}
from
'
vs/platform/keybinding/common/keybindingsRegistry
'
;
import
{
KeyMod
,
KeyCode
,
KeyChord
}
from
'
vs/base/common/keyCodes
'
;
import
{
IEvent
}
from
'
vs/platform/contextview/browser/contextView
'
;
// Commands
...
...
@@ -65,6 +66,9 @@ export const SAVE_ALL_IN_GROUP_COMMAND_ID = 'workbench.action.files.saveAllInGro
export
const
SAVE_FILES_COMMAND_ID
=
'
workbench.command.files.saveFiles
'
;
export
const
SAVE_FILES_LABEL
=
nls
.
localize
(
'
saveFiles
'
,
"
Save All Files
"
);
export
const
NEW_FILE_COMMAND_ID
=
'
workbench.command.files.newFile
'
;
export
const
NEW_FILE_LABEL
=
nls
.
localize
(
'
newFile
'
,
"
New File
"
);
export
const
EditorFocusedInOpenEditorsContext
=
new
RawContextKey
<
boolean
>
(
'
editorFocusedInOpenEditors
'
,
false
);
export
const
EditorWithResourceFocusedInOpenEditorsContext
=
new
RawContextKey
<
boolean
>
(
'
editorWithResourceFocusedInOpenEditors
'
,
false
);
export
const
UntitledEditorFocusedInOpenEditorsContext
=
new
RawContextKey
<
boolean
>
(
'
untitledEditorFocusedInOpenEditors
'
,
false
);
...
...
@@ -75,6 +79,12 @@ export const openWindowCommand = (accessor: ServicesAccessor, paths: string[], f
windowsService
.
openWindow
(
paths
,
{
forceNewWindow
});
};
export
interface
IExplorerContext
{
viewletState
:
any
;
event
:
IEvent
;
stat
:
FileStat
;
}
function
runActionOnFocusedFilesExplorerViewItem
(
accessor
:
ServicesAccessor
,
id
:
string
,
context
?:
any
):
void
{
withFocusedFilesExplorerViewItem
(
accessor
).
then
(
res
=>
{
if
(
res
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录