`
Army
  • 浏览: 38268 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

时隔很久了,JSSC4 beta版终于亮相……

阅读更多

http://code.google.com/p/jssc/

 

 

自从jssc ver 3 rc版发布之后,我就因为刚毕业而一直处于半消失状态,因此很长一段时间也没有更新。期间收到很多朋友们的来信,社区消息也好、qq也好、msn也好、email也好,总之是不少。许多建议都是很有价值的,当然也是很有难度的,嘿~

 

好吧,闲话不说,jssc4的新版本终于即将来到,而它将带来什么变化呢?请往下看:

 

1.平台变迁。

其实在叫《jssc》这个名字有点儿不适合了,因为它已经“不纯”了。不过为了延续习惯,还是继续下去吧。之所以“不纯”的原因,原因是分析处理的大头已经放在了as上,js只是以调用和生成者的身份出现。

 

2.速度提升。

js来执行高亮分析的性能一直是让人头疼的问题,即使jssc2已经做得很好了,但依然不容乐观。显然,解释执行的js代码不仅慢,而且在各个浏览器上的表现都不一样。那么为何不另辟蹊径呢?

jssc4中主要的分析工作变成了由action script 3来执行,as3的速度和跨平台甚至对oop支持可好得太多了。于是这样做带来的速度提升,是显而易见的。

 

3.富文本复制。

fins希望在选择代码后复制到word等编辑器中能够连带颜色一块儿复制过去,这在之前的版本中是无法办到的。因为若要复制,高亮后的结果必须是<font color="(color)">code</font>或者<span style="color:#(color)">code</span>的形式。若想纯js办到,需要牺牲掉很多东西。然而在jssc4中,这些都可以了,因为这一切都是在flash编译期间完成的事。

 

4.扩展。

这可能是需要特殊提及一下的事情了。

jssc4由于主分析工作是由as3来完成的,因此若需要修改、扩展等,都必须修改as代码重新编译才行。想要定制自己的高亮器的话,都必须这样做。

 

5.大小。

可以看到swf文件目前只有8k多,编译成abc字节码后大小的确很令人惊喜啊。

 

---

 

当然有人会这样问:极少数人的浏览器没有flash播放器或者级别太低怎么办?

答案就是不支持的话代码不会被高亮,仍旧原样显示,这算是一种折中吧。代码放在pre或者textarea里,定义好css,也不会乱。

 

制作过程中仍旧有许多问题,解决后有很多心得,将陆续发布出来讨论。一些改进仍需,请回帖发言……

评论
19 楼 Army 2009-01-08  
MonkeyLin 写道

感谢楼主做出了这么优秀的东西,赞一个!
只是引入了ActionScript以后,虽然速度变快了,但是在本地打开就会遇到Flash的提示,说它想和本地html文件通信,如果要继续必须设置一下之类的.给文档交流带来不便。鉴于以后JS运行速度越来越快的趋势,不知LZ有没有打算在未来开发纯JS版本?

这个……到没有计划……
18 楼 MonkeyLin 2009-01-08  
感谢楼主做出了这么优秀的东西,赞一个!
只是引入了ActionScript以后,虽然速度变快了,但是在本地打开就会遇到Flash的提示,说它想和本地html文件通信,如果要继续必须设置一下之类的.给文档交流带来不便。鉴于以后JS运行速度越来越快的趋势,不知LZ有没有打算在未来开发纯JS版本?
17 楼 Army 2008-12-30  
hanfeng 写道

要是能支持 jsp 就好了,至少让 jsp 页面不要出现颜色混乱。

好的~类似php和asp也都一样~
16 楼 hanfeng 2008-12-26  
要是能支持 jsp 就好了,至少让 jsp 页面不要出现颜色混乱。
15 楼 Army 2008-12-18  
ftmouse 写道

相当的天才。支持了。直接商用可以嘛?

Code License: LGPL。
14 楼 ftmouse 2008-12-18  
相当的天才。支持了。直接商用可以嘛?
13 楼 Army 2008-12-18  
折叠功能全出,released 4.0~

http://code.google.com/p/jssc/downloads/list
12 楼 Army 2008-12-17  
hanfeng 写道

html和xml的标签中属性换行还是不行,jssc3时就存在的bug,请看图:  上图是在 jssc4beta3 的index.html基础上修改得来。

OK了,另外css也添加进去,beta4。
11 楼 Army 2008-12-16  
hanfeng 写道

html和xml的标签中属性换行还是不行,jssc3时就存在的bug,请看图:  上图是在 jssc4beta3 的index.html基础上修改得来。

原来如此。
10 楼 hanfeng 2008-12-16  
html和xml的标签中属性换行还是不行,jssc3时就存在的bug,请看图:



上图是在 jssc4beta3 的index.html基础上修改得来。
9 楼 Army 2008-12-15  
加入了html和xml了~

另外,激活变量这个功能很实用~点击变量名将激活所有同名变量,只是无法做到区分出全局和局部。
8 楼 Army 2008-12-15  
lococode 写道

Army 写道
怪现象之一: 整体执行流程是,js找到textarea或者pre节点,取出代码内容-&gt;js传递source给as-&gt;as解析出结果-&gt;as将结果传递回js-&gt;js生成结果-&gt;js检查是否还有其它节点-&gt;继续或者结束。 最初js取出所有代码节点是将它们放在一个数组里的,每传递一次内容从数组shift一个出来。在最后一步循环时检测数组是否为空来判断结束还是继续。 古怪的是ie下最多只能循环6次,超过6次就自动结束了,其他浏览器并没有这个现象。更奇特的是ie下每刷新一次就会自动减少一个,这意味着刷新6次后页面上所有的显示结果都没了…… 解决办法很搞笑,也是一个很常见的解决办法:在最后一布判断时增加一个setTimeout(function, 0)即可……


Java代码

else&nbsp;{ &nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert("您的留言起不支持此操作!"); &nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return; &nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;else {
alert("您的留言起不支持此操作!");
return;
}


……
我是错字大王~
7 楼 Army 2008-12-15  
xzj127 写道

UTF 乱码。。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

我手写的页面,忘了加charset了……gb2312
6 楼 lococode 2008-12-15  
Army 写道
怪现象之一:
整体执行流程是,js找到textarea或者pre节点,取出代码内容->js传递source给as->as解析出结果->as将结果传递回js->js生成结果->js检查是否还有其它节点->继续或者结束。

最初js取出所有代码节点是将它们放在一个数组里的,每传递一次内容从数组shift一个出来。在最后一步循环时检测数组是否为空来判断结束还是继续。

古怪的是ie下最多只能循环6次,超过6次就自动结束了,其他浏览器并没有这个现象。更奇特的是ie下每刷新一次就会自动减少一个,这意味着刷新6次后页面上所有的显示结果都没了……

解决办法很搞笑,也是一个很常见的解决办法:在最后一布判断时增加一个setTimeout(function, 0)即可……



else {
			alert("您的留言起不支持此操作!");
			return;
		}
5 楼 xzj127 2008-12-12  
UTF 乱码。。
     
4 楼 xzj127 2008-12-12  
我用的IE8 不行啊。。
         说是不安全 完全不能正常打开。不过用360..能打开
3 楼 Army 2008-12-12  
怪现象之一:
整体执行流程是,js找到textarea或者pre节点,取出代码内容->js传递source给as->as解析出结果->as将结果传递回js->js生成结果->js检查是否还有其它节点->继续或者结束。

最初js取出所有代码节点是将它们放在一个数组里的,每传递一次内容从数组shift一个出来。在最后一步循环时检测数组是否为空来判断结束还是继续。

古怪的是ie下最多只能循环6次,超过6次就自动结束了,其他浏览器并没有这个现象。更奇特的是ie下每刷新一次就会自动减少一个,这意味着刷新6次后页面上所有的显示结果都没了……

解决办法很搞笑,也是一个很常见的解决办法:在最后一布判断时增加一个setTimeout(function, 0)即可……
2 楼 fins 2008-12-12  
支持!!!
希望可以成为 世界上最好的 语法着色js框架(现在叫as比较好 呵呵)
(我觉得已经是了 )
1 楼 Army 2008-12-12  
http://code.google.com/p/jssc/

哈哈,我也去弄个google code开源~

相关推荐

    基于SMIC 180nm工艺的10bit 20MHz SAR ADC设计详解:原理、电路与仿真 数字滤波器

    内容概要:本文详细解读了基于SMIC 180nm工艺的10bit 20MHz SAR ADC设计,涵盖设计原理、电路结构和技术细节。文中介绍了常用栅压自举开关Bootstrap、Vcm_Based开关时序、上级板采样差分CDAC阵列、两级动态比较器、比较器高速异步时钟和动态SAR逻辑等关键技术。此外,还涉及10位DFF输出和10位理想DAC还原做DFT的技术。文档提供详细的理论介绍、完整电路图和预设好的仿真参数,方便用户直接在Cadence环境中进行仿真运行。 适合人群:适合初学者和希望提升SAR ADC设计技能的工程师。 使用场景及目标:①帮助初学者快速上手SAR ADC设计;②提供详细的原理和技术细节供深入研究;③通过实际仿真实践,巩固对SAR ADC的理解和应用。 其他说明:该设计的有效位数ENOB为9.8,具有高精度和可靠性,适合在个人电脑上进行仿真练习。

    ssm071北京集联软件科技有限公司信息管理系统(文档+源码)_kaic

    ssm071北京集联软件科技有限公司信息管理系统(文档+源码)_kaic

    基于Comsol的工件感应加热仿真:多物理场耦合下温度场与电磁场分析 电磁场

    内容概要:本文详细介绍了利用Comsol进行工件感应加热仿真的方法和技术。首先概述了Comsol作为多物理场仿真工具的优势,特别是在工件感应加热中的应用。接着深入探讨了温度场和电磁场的耦合计算,解释了这两者的相互作用以及如何通过仿真获得工件加热过程中详细的温度分布和电磁场强度。文中还提供了具体的实证案例,展示了如何通过仿真优化加热工艺,从而提升生产效率。最后给出了Matlab代码示例,指导用户如何在Comsol中设置和运行仿真模型,获取并可视化仿真结果。 适合人群:机械工程专业人员、制造行业工程师、仿真技术爱好者。 使用场景及目标:适用于需要深入了解和优化工件感应加热过程的专业人士,旨在提高加热工艺的精度和效率,降低能耗,提升产品质量。 其他说明:文章不仅提供了理论知识,还包括具体的操作指南和实例演示,有助于读者快速上手并在实践中应用所学内容。

    类autosar的os代码实现

    实现了一个基本的任务调度器,能够创建、激活和终止任务,支持任务的优先级调度、资源管理以及定时任务的启动和停止。代码结构清晰,便于扩展和维护。然而,实际硬件中断的处理和上下文切换等细节需要根据具体的硬件平台进行实现。

    直齿轮六自由度平移-扭转耦合非线性动力学程序:时变压力角与齿侧间隙的影响分析 齿轮动力学

    内容概要:本文详细介绍了直齿轮六自由度平移-扭转耦合非线性动力学程序的研究,重点探讨了时变压力角和齿侧间隙对齿轮动力学特性的影响。文章首先解释了齿轮啮合刚度建模的基础,接着展示了如何通过状态空间法构建六自由度微分方程来处理平移和扭转耦合运动。文中还提供了具体的MATLAB和Python代码片段,用于实现时变刚度、非线性齿侧间隙以及惯性矩耦合的处理方法。此外,文章讨论了多种可视化工具(如时域图、相图、FFT图、庞加莱图和分岔图)的应用及其重要性,强调了在仿真过程中需要注意的数值稳定性和参数调整技巧。 适合人群:机械工程专业学生、从事齿轮动力学研究的科研人员和技术工程师。 使用场景及目标:①理解和掌握直齿轮六自由度平移-扭转耦合非线性动力学的基本原理;②学会利用MATLAB和Python进行齿轮动力学仿真的具体实现;③能够通过各种可视化图表分析齿轮系统的动态行为,识别系统中的非线性现象。 阅读建议:由于涉及复杂的数学模型和编程实现,建议读者具备一定的力学基础知识和编程经验。同时,可以结合实际案例进行练习,逐步深入理解各个概念和方法。

    OC- (精细2)UTM转WGS84 获取ITIF图片的投影信息把图片投影在高德地图

    OC- (精细2)UTM转WGS84 获取ITIF图片的投影信息把图片投影在高德地图。

    OverLoCK实战:使用OverLoCK实现图像分类任务

    OverLoCK是一种全新的卷积神经网络(ConvNet)架构,旨在模仿人类视觉系统中的“纵观全局-聚焦细节”(Overview-first-Look-Closely-next)双阶段认知机制。该架构通过引入自上而下的注意机制,结合动态卷积技术,显著提升了模型在图像分类、目标检测和语义分割等视觉任务中的性能。其核心设计包括深层分解策略(Deep-stage Decomposition Strategy, DDS)和上下文混合动态卷积(Context-Mixing Dynamic Convolution, ContMix),以有效建模长距离依赖关系,同时保留局部归纳偏差。实验表明,OverLoCK在多个基准任务中超越了现有的ConvNet和Transformer架构,同时显著降低了计算成本[3][4][9]。 原文链接:https://blog.csdn.net/hhhhhhhhhhwwwwwwwwww/article/details/147011934

    【遥感影像处理】基于Google Earth Engine的Landsat5影像分类与精度评估:随机森林算法应用

    内容概要:本文档《gee scripts.txt》记录了利用Google Earth Engine(GEE)进行遥感影像处理与分类的脚本流程。首先,对指定区域内的Landsat 5卫星图像进行了数据筛选,排除云量超过7%的影像,并应用缩放因子调整光学波段和热波段的数值。接着,基于样本数据集训练随机森林分类器,用于区分植被、水体、建筑、土壤、拜耳作物、岩石和草地等地物类型。最后,将训练好的模型应用于处理后的Landsat 5影像,生成分类结果图层,并计算混淆矩阵以评估模型准确性,同时将分类结果导出至Google Drive。 适合人群:从事地理信息系统(GIS)、遥感科学或环境监测领域的研究人员和技术人员,特别是那些希望深入了解GEE平台及其在地物分类中的应用的人士。 使用场景及目标:①从Landsat卫星获取特定时间段内的高质量影像数据;②通过预处理步骤提高影像质量,确保后续分析的有效性;③构建并训练机器学习模型以实现地物自动分类;④评估分类模型性能,保证结果可靠性;⑤将最终成果高效存储于云端平台以便进一步研究或共享。 阅读建议:由于涉及较多专业术语和技术细节,在阅读时建议先熟悉GEE平台的基本操作以及相关遥感知识,重点关注数据处理流程和分类算法的选择依据。此外,对于代码部分,可以尝试在自己的GEE环境中运行,以便更好地理解每个步骤的具体作用。

    基于李雅普诺夫的编队控制算法仿真

    基于李雅普诺夫的编队控制算法仿真

    精品水果线上销售网站系统 2025免费毕设附带论文 SpringBoot+Vue.js

    2025免费毕设附带论文 SpringBoot+Vue.js 启动教程: https://www.bilibili.com/video/BV11ktveuE2d/?share_source=copy_web 二开教程:https://www.bilibili.com/video/BV18i421i7Dx/?share_source=copy_web 讲解视频:https://www.bilibili.com/video/BV1Tb421n72S/?share_source=copy_web

    企业三级推广报单分销系统源码-会员注册管理系统

    企业三级推广报单分销系统源码-会员注册管理系统,企业3级推广报单分销源码下载会员注册管理系统。 支持多级,带商城。手机自动适配。 可自定义添加会员级别、奖励、权限;后台可手动添加报单;商品购买。

    舌下络脉诊断中舌背区域自动撷取算法的研究.zip

    舌下络脉诊断中舌背区域自动撷取算法的研究.zip

    rtmidi钢琴程序代码.zip

    rtmidi钢琴程序代码.zip

    铝片表面工业缺陷目标检测-数据集

    412张含缺陷的铝片(针孔、擦伤、脏污、褶皱),coco格式的标注数据集(train.json、valid.json)。

    MATLAB模糊控制算法在驾驶员制动意图识别中的应用:模型与试验案例 Fuzzy工具箱

    内容概要:本文详细介绍了MATLAB模糊控制算法在驾驶员制动意图识别中的应用。首先解释了为什么传统的精确数学模型难以应对人类驾驶行为的不确定性,接着展示了如何利用MATLAB Fuzzy工具箱来解决这一问题。文中具体描述了一个基于速度差和减速度变化率两个输入参数的模糊控制系统的设计过程,包括定义隶属度函数、建立规则库以及进行模糊推理的具体步骤。此外,还提供了实际驾驶数据的测试结果,证明了该方法的有效性和优越性。最后给出了调试经验和完整的Simulink工程包。 适合人群:从事汽车安全系统开发的研究人员和技术人员,尤其是对智能驾驶辅助系统感兴趣的开发者。 使用场景及目标:适用于希望提高车辆主动安全性、优化制动系统的团队。主要目标是在复杂路况下快速准确地识别驾驶员的真实制动意图,从而提升行车安全。 其他说明:附带的实际案例和源代码有助于读者更好地理解和实践模糊控制理论。建议读者亲自尝试构建并调试自己的模糊控制器,以便深入掌握相关技能。

    基于卷积神经网络和注意力机制实现猫狗分类pytorch.zip

    Kaggle竞赛题猫狗大战 ,用于PyTorch入门 代码运行步骤 先将代码中各个文件夹路径进行修改 训练时,运行train.py 测试时,运行test.py

    注塑机自动排列机械手程序

    注塑机机械手中达优控触摸屏加三菱FX3UPLC自动控制程序

    卡尔曼滤波在优化估计中的应用及其Python实现 线性最小方差估计

    内容概要:本文详细介绍了卡尔曼滤波的基本原理及其在优化估计中的应用。首先解释了卡尔曼滤波作为一种递归的最佳估计方法,通过线性修正来获得现时刻的最佳估计。接着阐述了其作为线性最小方差统计估算方法,在处理带噪声的测量数据时的作用。文中还提供了简化的Python代码实现,展示如何通过预测和更新两个关键步骤来逐步逼近真实值。最后总结了卡尔曼滤波的重要性和广泛应用领域,如导航、控制和信号处理等。 适合人群:对卡尔曼滤波感兴趣的研究人员和技术爱好者,尤其是从事相关领域的工程师。 使用场景及目标:适用于需要从含噪数据中提取有用信息的应用场景,如自动驾驶汽车定位、无人机飞行控制、金融数据分析等。目标是帮助读者理解卡尔曼滤波的工作机制,并掌握其实现方法。 其他说明:尽管文中提供的Python代码仅为简化版本,但它足以让读者初步了解卡尔曼滤波的核心思想。进一步的学习可以通过查阅更多专业文献或参与实际项目来完成。

    基于MATLAB的数字信号处理工具:GUI界面实现信号绘制、卷积计算、傅里叶变换与IIR滤波器 Fast Fourier Transform

    内容概要:本文介绍了一款基于MATLAB的数字信号处理(DSP)工具,该工具采用MATLAB App Designer构建了一个带有图形用户界面(GUI)的四模块系统。这四个模块分别是:基本信号绘制(如抽样、正弦、矩形、方波)、卷积计算(包括线性卷积、圆周卷积及其优化方法)、傅里叶变换(涉及幅频响应和相频响应的正确绘制),以及IIR滤波器的设计(涵盖低通、高通、带通、带阻滤波器)。文中详细解释了各模块的关键技术和实现细节,提供了具体的代码示例并分享了一些实践经验和技术要点。 适用人群:对数字信号处理感兴趣的研究人员、工程师及学生,尤其是那些希望深入了解MATLAB在DSP领域的应用的人群。 使用场景及目标:本工具适用于教学演示、实验研究和工程开发等多种场合。它可以帮助用户更好地理解和掌握数字信号处理的基本概念和技术,同时为实际工程项目提供有效的支持。 其他说明:作者强调了在实现过程中的一些注意事项,如时间向量的精确表示、圆周卷积的正确实现方式、频谱图的正确绘制以及IIR滤波器设计中的稳定性问题。此外,还提到了使用MATLAB App Designer进行GUI开发的优势,特别是在数据传递方面相比传统GUIDE更为可靠。

    餐馆点餐管理系统-数据库课程设计-MySQL

    《餐馆点餐管理系统——基于Java和MySQL的课程设计解析》 在信息技术日益发达的今天,餐饮行业的数字化管理已经成为一种趋势。本次课程设计的主题是“餐馆点餐管理系统”,它结合了编程语言Java和数据库管理系统MySQL,旨在帮助初学者理解如何构建一个实际的、具有基本功能的餐饮管理软件。下面,我们将深入探讨这个系统的实现细节及其所涉及的关键知识点。 我们要关注的是数据库设计。在“res_db.sql”文件中,我们可以看到数据库的结构,可能包括菜品表、订单表、顾客信息表等。在MySQL中,我们需要创建这些表格并定义相应的字段,如菜品ID、名称、价格、库存等。此外,还要设置主键、外键来保证数据的一致性和完整性。例如,菜品ID作为主键,确保每个菜品的唯一性;订单表中的顾客ID和菜品ID则作为外键,与顾客信息表和菜品表关联,形成数据间的联系。 接下来,我们来看Java部分。在这个系统中,Java主要负责前端界面的展示和后端逻辑的处理。使用Java Swing或JavaFX库可以创建用户友好的图形用户界面(GUI),让顾客能够方便地浏览菜单、下单。同时,Java还负责与MySQL数据库进行交互,通过JDBC(Java Database Connectivity)API实现数据的增删查改操作。在程序中,我们需要编写SQL语句,比如INSERT用于添加新的菜品信息,SELECT用于查询所有菜品,UPDATE用于更新菜品的价格,DELETE用于删除不再提供的菜品。 在系统设计中,我们还需要考虑一些关键功能的实现。例如,“新增菜品和价格”的功能,需要用户输入菜品信息,然后通过Java程序将这些信息存储到数据库中。在显示所有菜品的功能上,程序需要从数据库获取所有菜品数据,然后在界面上动态生成列表或者表格展示。同时,为了提高用户体验,可能还需要实现搜索和排序功能,允许用户根据菜品名称或价格进行筛选。 另外,安全性也是系统设计的重要一环。在连接数据库时,要避免SQL注入攻击,可以通过预编译的PreparedStatement对象来执行SQL命令。对于用户输入的数据,需要进行验证和过滤,防止非法字符和异常值。 这个“餐馆点餐管理系统”项目涵盖了Java编程、数据库设计与管理、用户界面设计等多个方面,是一个很好的学习实践平台。通过这个项目,初学者不仅可以提升编程技能,还能对数据库管理和软件工程有更深入的理解。在实际开发过程中,还会遇到调试、测试、优化等挑战,这些都是成长为专业开发者不可或缺的经验积累

Global site tag (gtag.js) - Google Analytics