- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用CodeMirror构建一个简单的浏览器内原型(prototype)工具。和 Emmet ,可以轻松更新到 future 版本的库。它可以工作,但我接下来需要的是允许键盘映射和片段自定义而不触及 lib 文件。
引用http://docs.emmet.io/customization/
Emmet offers wide range of tweaks you can use to fine-tune your plugin experience. Almost all officially developed editor plugins (except PSPad and browser-based) has extensions support: a special folder where you can put json and js files to extend Emmet. Please refer to README file bundled with your editor’s plugin to find out where Emmet looks for extensions.
太棒了!但是...不幸的是,我在https://github.com/emmetio/codemirror中找不到这样的信息。 。等等...好吧,这是“基于浏览器的”。
我在 dist/emmet.js
中找到了一个函数 loadExtensions: function(fileList)
但我不确定如何使用它,或者它是否正确还有很长的路要走。
注意:在主流https://github.com/emmetio/emmet中,代码片段现在被移动到一个单独的文件 snippets.json
中,这听起来很适合维护和引用,但对于 codemirror 插件来说(还不是?)情况并非如此。
我尝试过:
emmetPlugin.emmet.loadExtensions(['snippets.json']);
(也有文件的完整路径),但得到:
Uncaught TypeError: Object #<Object> has no method 'readFileSync' emmet.js:18352
_.extend._read emmet.js:18352
_.extend.readText emmet.js:18376
bound emmet.js:2006
next emmet.js:22295
loadExtensions emmet.js:22337
window.onload (index):62
代码片段文件只是主 emmet 项目中的文件的副本。
当前版本:
你能帮我吗?
根据谢尔盖的提议,这是我尝试使用 jquery's ajax facility 的方法:
window.onload = function() {
// ...
$.getJSON( "snippets.json", function( data ) {
emmetPlugin.emmet.loadUserData(data);
});
// ...
};
使用file:
协议(protocol),页面会引发请求的资源上不存在“Access-Control-Allow-Origin” header 。
异常。
所以它需要从一些 HTTP 服务器加载
python -m SimpleHTTPServer
它现在可以在控制台中正确加载,但我的新代码片段不起作用。我从 excellent talk from A. Montalenti 中挑选的这让我发现 Emmet.io ,在他的emmet.js中,它完美地工作了:
{
"abbreviations": {
"bootstrap": "html>(head>meta[charset=UTF-8]+title{${1:Bootstrapped}}+link[href=\"../css/lib/bootstrap.css\"]+link[href=\"../css/lib/bootstrap-responsive.css\"]+script[src=\"../js/lib/bootstrap.js\"]+script[src=\"../js/lib/jquery.js\"])+body>div.container",
}
}
尽管像 doc4
这样的默认代码片段效果很好。
最佳答案
如果你看一下loadExtensions
method ,您会看到它实际上读取给定的文件列表,将它们组合起来并传递给 loadUserData
method .
所以你有两个选择:
loadUserData
、loadSnippets
等方法并传递纯 JSON 文件。关于javascript - 如何为 codemirror 自定义 Emmet (snippets.json)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25215959/
当我输入以下内容时: ul*3>li{Item $}*5 我将得到以下内容: Item 1 Item 2 Item 3 Item 4 Item 5
我正在使用带括号的 emmet。在这个文件 lib/AppSupport/Brackets/extensions/user/brackets-emmet/snippets.json我在正确的位置添加了
我正在使用 atom 编辑器的全新安装,我刚刚安装了 emmet。 但是当我输入例如: div.abcde 然后按 TAB,没有任何反应。 我是不是忘了激活什么? 最佳答案 在 atom 1.3.1
我在 Atom 文本编辑器 (Win7 x64) 上将 emmet.io 作为软件包安装时遇到问题。 知道我怎么能做到这一点吗? 我总是收到一条错误消息 `npm http GET https://r
我看到人们在 VS Code 中使用 Emmet 缩写的任何地方,代码编辑器的行为都是相同的。如果有人把下面的代码, a:link*3 结果如下 然而,当我在我自己的 VS Code 副本中尝试
我只是在学习 zen-coding 并且正在尝试这样做: 输入 'lorem' 并点击 Tab 将产生 50 字的 lorem 文本。 但是,如果我从 开始然后在标签内输入 lorem + tab,
好的,这是我要完成的工作: 在INSERT模式下,我希望emmet使用TAB键自动完成 这是我尝试过的 let g:user_emmet_expandabbr_key = ''(仅在NORMAL模式下
我一直在关注 Jeffery Way 在 Tuts+ 上提供的 HTML 和 CSS 类(class): http://learncss.tutsplus.com/ 我看到了关于 Zen Coding
如果我输入 .myClass 并按 tab emmet 扩展它应该如何... 但如果我输入 .myClass class2 它不会扩展,因为有一个空格。 如何使用 emmet 向 div 添加两个类?
我的vim版本是8.2,vim-emmet版本是0.86。 如下CSS的缩写怎么写? border: 1px solid #dcd2ba; 在手册中说: css abbreviation For ex
我正在 emmet 工具包的帮助下编写 HTML 代码,想知道是否有办法将唯一文本值(预定义为某种列表)传递到 emmet html 元素生成器表达式中。 span.myClass{textVa
我正在使用 Sublime Text 和 Emmet。我在想是否有办法将一些 html 代码转换为 emmet 快捷方式?所以在其他意义上使用 Emmet。 我在网上没有找到任何东西。 从这里开始:
我刚刚安装了 Emmet VIM 插件,看起来很有趣。激活 Emmet 插件功能的“触发组合键”并不是最好的。因此我尝试在我的 vimrc 文件中重新映射它。我已经成功地完成了重新映射 Escape
我对 SASS 中的 Emmet 有疑问。例如我写'w10'然后按tab css 返回“宽度:10px” sass 只返回制表符。 有什么想法吗?感谢您的宝贵时间! 最佳答案 如果您使用 sublim
(这是在 OSX 最新的 10.9.x 上) 一些快捷方式与选项卡一起使用,其他快捷方式则不... 例如: .class>ul>li*5>a 当 Tab 给 .class>ul>li*5> 尽管 di
刚开始学习emmet,可以用它做简单的菜单结构,例如: #navcontainer>ul>(li>a{Item$})*5 生成这个: Item1 Item2 Item3
您好,我在 Atom 代码编辑器上使用 Emmet,它只适用于像 meta 这样的简单标签。 然而,当我尝试像 ul>li*5 或 meta[property=""] 这样复杂的东西然后按 Tab 键
您好,我正在使用 Emmet 插件进行 html 编码,我在序列化图像时遇到问题,有人可以帮我解决这个问题吗。 .row>.col-xs-6*2>p.img*2>img[src="gallery-$.
我真的很头疼——我开始使用 vim 来完成我的日常编程任务,所以我决定使用可用的优秀插件。所以我从 Pathogen 开始,我相信我成功安装了它。然后我尝试了 emmet.vim 但我真的无法完成这项
在 PHPSTORM 中,当我输入 .classname 或 #id 并点击 TAB 时,我得到了 但我希望它是: 最佳答案 在原始 Emmet 中,您可以使用 |c过滤以产生自动评论:http:
我是一名优秀的程序员,十分优秀!