android docs本地帮助文档

在sdk\docs目录下,有android本地帮助文档 *.html, 实质就是保存的在线文档.

每次打开本地帮助 页面都要加载很长时间, 因为 原来的页面中 有几个远程资源引用, 改成本地文件之后 权限问题每次都加载不成, 但每次启动都加载...



手动把这些远程资源 引用 都删掉, 再打开文件就轻快很多了.

html文件几千个, 直接写脚本来处理,关键代码只有几句:


//处理 html 文件, 滤掉远程资源引用
function processFile(path){
	var f1=new TextFile(path);
	var s0=f1.readAll();
	f1.close();f1=null;

	s0=s0.replace(/<link[^>]*?href="http:\/\/fonts\.googleapis\.com\/[^>]*?>/ig,'');
	s0=s0.replace(/<script[^>]*?src="http:\/\/www\.google\.com\/[^>]*>.*?<\/script>/ig,'');
	s0=s0.replace(/<script[^>]*>\s+var _gaq =[\s\S]*?<\/script>/ig,'');
	s0=s0.replace(/html>\s+/ig,'html>\r\n');

//	var path2=path.replace(/\.html$/,'_1.html');
	var path2=path;

	var f2=new TextFile(path2,2,1);
	f2.write(s0);
	f2.close();f2=null;
}

//遍历文件夹
function traversal(folder,regex,level){//路径,正则,目录深度
	try{
		var f=fso.getFolder(folder);
	}catch(e){
		alert(e.number.toString(16)+': '+e.description);
		return [];
	}
	var arr=[];
	
	//遍历目录内文件
	var files = new Enumerator(f.files);
	for (; !files.atEnd(); files.moveNext()){
		if(regex.test(files.item().path))
			arr.push( files.item().path );
			//alert(files.item().path);
	}
	if(!level)return arr;
	//遍历子文件夹
	var folders = new Enumerator(f.subFolders);	
	for (; !folders.atEnd(); folders.moveNext()){
		arr=arr.concat(	traversal(folders.item().path, regex, level-1) );
	}
	return arr;
}

//上层调用
function doProcess(path){
	files=traversal(path,/\.html$/i,999);
	var n=files.length;
	var i=0;
	for(i=0;i<n;i++){
		processFile(files[i]);
	}
}

脚本就是效率有些低.我用hta做ui,运行效果:

filesProcess.png

处理了几分钟 才完 -_-!!..

 

---------------------

另外看到这个, 才知道 原来 IntelliJ idea 里面也是可以直接调用 外部帮助的(Shift+F1).

tips.png

另外,还有Ctrl+Q也可以 显示 内嵌的帮助提示气泡, 它是把 html  解析并呈现出来的,( 我篡改 html内容之后,看到提示的确变了)

Ctrl+Q.png

 

 

更多关于 IntelliJ 的快捷键: http://www.cnblogs.com/sky100/archive/2009/01/22/1379949.html

有空看看自带帮助也是不错的.

 

最后是 处理 html 的脚本: files_process.rar (1.输入目录 2.点打开 等待 3.点处理 等待)


标签: javascript hta android IDE

添加新评论 »

贴图表情