我前几天在Vim中寻找一种快速自动格式化/漂亮打印JSON的方法,并在Stack Overflow上找到了这个很棒的小命令: :%!python -m json.tool
这让我找到了一个其他Python工具的列表来打印常见的网络文件,但我找不到多少.是否有一个很好的资源/ Python工具列表,他们发现这些工具对于清理Vim中格式不正确的Web内容特别有用(例如HTML,XML,JavaScript等)?
我正在开发一个自定义轻量级JavaScript库,它需要在主要浏览器以及众多独立站点之间稳定运行,而不会受到现有库或命名空间的影响或损害.也许最重要的是,图书馆需要轻量级(最大约15k).
更新为了澄清对这样一个小型库的需求:这是一个第三方服务,网站将进入他们的页面.我们需要尽可能保持一切尽可能轻,快速和自包含,因为我们无法控制现有的库,速度或页面加载.15k是仅由服务的动态内容访问的库的目标编号.
在这一点上,我的想法是从我能找到的最简洁的类jQuery基础开始,然后使用自定义模块进行扩展.
所需功能:
我遇到过EnderJS和MicroJS,但我似乎无法找到很多讨论.我现在对Ender更熟悉和感兴趣,因为它似乎解决了所有上述功能,几乎开箱即用的"The Jeesh"重达7.5k.在我的情况下,只需要几个额外的包就可以将它推到10k,这是完美的,因为我只需要几个k来充实任何自定义模块.它还允许我编写和版本化不同的模块,这些模块可以在构建时合并并压缩到主库中,以及定义一个独特的命名空间来将它们保存在一起并希望保护它.Ender图书馆的另一个引人注目的部分是它使用了NodeJS,无论如何我更喜欢玩它.然而,尽管如此,我仍然对其他想法持开放态度.
所以我的问题是:
有没有人对EnderJS或MicroJS有任何经验,或者有其他解决方案/方法来解决我想要实现的目标?我意识到这不是"讨厌,开放式问题"的地方,而这不是我的意图.我只是在寻找关于构建轻量级自定义库的最佳方法的建议,而无需重新发明轮子,而是插入最新的微库.
窗口级别的以下声明:
var event; // for IE
var event = "anything"; // for Chrome
将销毁此处使用的事件对象:
<div onMouseOver = "alert(event.type);">Mouseover Div</div>
两个声明似乎都没有逐步实现Firefox.
我意识到声明一个名为"event"的变量是错误的代码,但我对这里的技术差异感到好奇,例如,在IE中使用var会将变量重新初始化为null,而Chrome不会使用var声明覆盖,除非值是显式赋值的,并且FF可能会将事件对象完全保存在窗口的var声明范围之外.
这更像是一种好奇心.我在我控制之外的网站上遇到了一个由此造成的错误,我看到的越多,我看到浏览器之间的细微差别.只是想知道是否有人在这里有任何见解.
javascript ×2
dom ×1
dom-events ×1
ender ×1
events ×1
jquery ×1
pretty-print ×1
python ×1
vim ×1