Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
b985edc9
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b985edc9
编写于
6月 21, 2016
作者:
K
kieferrm
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
introduce activation telemetry
上级
b9b2a6d8
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
44 addition
and
3 deletion
+44
-3
extensions/markdown/package.json
extensions/markdown/package.json
+3
-1
extensions/markdown/src/extension.ts
extensions/markdown/src/extension.ts
+35
-2
extensions/markdown/src/typings/vscode-extension-telemetry.d.ts
...ions/markdown/src/typings/vscode-extension-telemetry.d.ts
+6
-0
未找到文件。
extensions/markdown/package.json
浏览文件 @
b985edc9
...
...
@@ -4,6 +4,7 @@
"description"
:
"Markdown for VS Code"
,
"version"
:
"0.2.0"
,
"publisher"
:
"Microsoft"
,
"aiKey"
:
"AIF-d9b70cd4-b9f9-4d70-929b-a071c400b217"
,
"engines"
:
{
"vscode"
:
"^1.0.0"
},
...
...
@@ -111,6 +112,7 @@
"dependencies"
:
{
"highlight.js"
:
"^9.3.0"
,
"markdown-it"
:
"^6.0.1"
,
"markdown-it-named-headers"
:
"0.0.4"
"markdown-it-named-headers"
:
"0.0.4"
,
"vscode-extension-telemetry"
:
"^0.0.5"
}
}
\ No newline at end of file
extensions/markdown/src/extension.ts
浏览文件 @
b985edc9
...
...
@@ -8,9 +8,22 @@
import
*
as
vscode
from
'
vscode
'
;
import
*
as
path
from
'
path
'
;
import
{
ExtensionContext
,
TextDocumentContentProvider
,
EventEmitter
,
Event
,
Uri
,
ViewColumn
}
from
'
vscode
'
;
import
TelemetryReporter
from
'
vscode-extension-telemetry
'
;
interface
IPackageInfo
{
name
:
string
;
version
:
string
;
aiKey
:
string
;
}
var
telemetryReporter
:
TelemetryReporter
;
export
function
activate
(
context
:
ExtensionContext
)
{
let
packageInfo
=
getPackageInfo
(
context
);
telemetryReporter
=
packageInfo
&&
new
TelemetryReporter
(
packageInfo
.
name
,
packageInfo
.
version
,
packageInfo
.
aiKey
);
let
provider
=
new
MDDocumentContentProvider
(
context
);
let
registration
=
vscode
.
workspace
.
registerTextDocumentContentProvider
(
'
markdown
'
,
provider
);
...
...
@@ -53,8 +66,9 @@ function getMarkdownUri(uri: Uri) {
return
uri
.
with
({
scheme
:
'
markdown
'
,
path
:
uri
.
path
+
'
.rendered
'
,
query
:
uri
.
toString
()
});
}
function
showPreview
(
resource
?:
Uri
,
sideBySide
:
boolean
=
false
)
{
function
showPreview
(
uri
?:
Uri
,
sideBySide
:
boolean
=
false
)
{
let
resource
=
uri
;
if
(
!
(
resource
instanceof
Uri
))
{
if
(
vscode
.
window
.
activeTextEditor
)
{
// we are relaxed and don't check for markdown files
...
...
@@ -71,10 +85,17 @@ function showPreview(resource?: Uri, sideBySide: boolean = false) {
return
;
}
return
vscode
.
commands
.
executeCommand
(
'
vscode.previewHtml
'
,
let
thenable
=
vscode
.
commands
.
executeCommand
(
'
vscode.previewHtml
'
,
getMarkdownUri
(
resource
),
getViewColumn
(
sideBySide
),
`Preview '
${
path
.
basename
(
resource
.
fsPath
)}
'`
);
telemetryReporter
.
sendTelemetryEvent
(
'
openPreview
'
,
{
where
:
sideBySide
?
'
sideBySide
'
:
'
inPlace
'
,
how
:
(
uri
instanceof
Uri
)
?
'
action
'
:
'
pallete
'
});
return
thenable
;
}
function
getViewColumn
(
sideBySide
):
ViewColumn
{
...
...
@@ -115,6 +136,18 @@ function showSource(mdUri: Uri) {
});
}
function
getPackageInfo
(
context
:
ExtensionContext
):
IPackageInfo
{
let
extensionPackage
=
require
(
context
.
asAbsolutePath
(
'
./package.json
'
));
if
(
extensionPackage
)
{
return
{
name
:
extensionPackage
.
name
,
version
:
extensionPackage
.
version
,
aiKey
:
extensionPackage
.
aiKey
};
}
return
null
;
}
interface
IRenderer
{
render
(
text
:
string
)
:
string
;
...
...
extensions/markdown/src/typings/vscode-extension-telemetry.d.ts
0 → 100644
浏览文件 @
b985edc9
declare
module
'
vscode-extension-telemetry
'
{
export
default
class
TelemetryReporter
{
constructor
(
extensionId
:
string
,
extensionVersion
:
string
,
key
:
string
);
sendTelemetryEvent
(
eventName
:
string
,
properties
?:
{
[
key
:
string
]:
string
},
measures
?:
{
[
key
:
string
]:
number
}):
void
;
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录