分享一个刚写的aar代码格式化工具源码

哇哈哈 哇哈哈
发布:2017-06-18 00:35:02 分类:心得经验
图片名称
快捷键是Ctrl+Q ,利用了Astyle进行的格式化,安装很方便,把压缩包里的文件解压到aar的目录中即可,
安装说明:
第一步, 复制压缩包到 你的aardio 安装目录的相应位置
例如我的目录:  D:\aardio\tools\编码

第二步 ,解压到此目录中.得到两个文件.
第三步: 打开aardio软件,在右侧选择 [工具] 项,找到[编码]右键选择[同步目录]
第四步, 双击新增的这个 [代码格式化工具] 打开工具.
第五步,点击 打开的界面 ,使工具最小化运行到托盘, 以后在 AARdio 中需要格式化的代码编辑器中 用组合快捷键 Ctrl + Q  即可调用格式化工具自动格式化!

注意: 如果不需要编写软件的时候,尽量在此图标上 [右键点击] 选择 [退出]

我把整个源码和安装使用说明打包到了百度网盘,有需要的可以去下载:

https://pan.baidu.com/s/1nu8iomH
//代码格式化工具
import ide;
import win.ui;
import win.ui.menu;
import win.util.tray;
import win.ui.atom;
import process.popen;
/*DSG{{*/
var winform = win.form(text="代码格式化工具(Crtl+Q)";right=364;bottom=73;border="none";max=false;min=false)
winform.add(
button={cls="button";text="最小化到托盘(格式化快捷键 Ctrl + Q)";left=0;top=1;right=365;bottom=74;bgcolor=255;flat=1;font=LOGFONT(h=-21);z=1}
)
/*}}*/

//防止多次启动
var atom, hwnd = winform.atom ( "{0981F655-C822-4A90-8FB7-332A643C86A3}" );
if ( !atom )
{
win.show ( hwnd )
win.setForeground ( hwnd );
win.quitMessage();
return;
}

win.setTopmost ( winform.hwnd );

winform.popmenu = win.ui.popmenu ( winform ); //创建弹出菜单
winform.popmenu.add ( '显示主界面', function ( id )
{
winform.show ( true )

} );
winform.popmenu.add();//分隔线
winform.popmenu.add ( '退出', function ( id )
{
winform.close()
} )

winform.button.oncommand = function ( id, event )
{
tray = win.util.tray ( winform ) //创建托盘图标
tray.pop ( "不用的时候记得点我退出哦!" )
tray.tip = "代码格式化工具" //设置鼠标提示
winform.show ( false ); //隐藏窗口
}
winform.wndproc = function ( hwnd, message, wParam, lParam )
{

select ( message ) //判断消息类型
{
case ( 0xACCF/*_WM_TRAYMESSAGE*/ ) //托盘图标消息
{

if ( lParam = 0x205/*_WM_RBUTTONUP*/ )
{
import mouse;
x, y = mouse.getPos();

//弹出托盘菜单以前,一定要前置主窗口中,不然不点击菜单不会消失
win.setForeground ( winform.hwnd )
winform.popmenu.popup ( x, y, true )
}
if ( lParam = 0x203/*_WM_LBUTTONDBLCLK*/ )
{
winform.show ( true )
}
}

}
}
Astyle_Run = function()
{
var codeEditor = ide.getActiveCodeEditor()
if ( !codeEditor )
{
return;
}
var edithandle, codepath = ide.getActiveViewHwnd();
if ( codepath == null || codepath == "")
{
winform.msgboxErr ( "代码还未保存为文件,请先保存为文件!然后再次格式化!", "警告" );
ide.save();
return;
}
ide.save();
process.popen ( "~\tools\编码\AStyle.exe", "--style=gnu --suffix=none -P -p " ++ codepath )
codeEditor.clear();
sleep ( 200 ) //缓冲
//打开文件
filecontent = string.load ( codepath );
codeEditor.text = filecontent;
}
//定义快捷键Ctrl+Q
hkid = winform.reghotkey ( function ( id, mod, vk )
{
Astyle_Run();
}
, 0x2/*_MOD_CONTROL*/, 0x51/*_VK_Q*/ );

winform.show()
win.loopMessage();
希望能帮到大家
  • zhoubujin zhoubujin    
    Time:2017-06-18 08:29:59
    棒棒棒棒
  • Admin Admin    
    Time:2017-06-18 09:30:36
    搞这么高级。。。。
    还有个思路是比较简单的,把编辑框的内容复制过来,然后用JS代码格式化脚本把它处理一下再粘贴回去,应该也可以。
  • 火天大有 火天大有    
    Time:2018-07-31 04:07:01
    感觉不错啊
  • Running Running    
    Time:2018-10-02 02:47:44
    其他人有没有遇到问题呢,这个工具刚出来的时候用的挺好的,现在格式化之后有点问题,有的代码段落缩进会有点问题,不知道是不是IDE的原因还是什么缘故呢,烦请作者不忙的话更新一下,这个对于新人来说太有用了,谢谢大佬了
[ 发单/接单 ]
换IP投票软件
PC蛋蛋自动挂机投注
新浪微博发微博显示尾巴的方法,比如显示来自iphone 7
百度文库批量自动上传软件
一点资讯app刷阅读量/评论/收藏/订阅功能/手机号注册
定做一个阿迪达斯官网注册器(需要破点击文字式验证码)
定制人人网自动注册/修改资料/采集/私聊软件
酷狗繁星直播网页协yi
YY多功能刷订阅刷粉丝
滑块验证码本地识别
狼人杀POST QQ登录注册 获取金币数量
做个贴吧发发帖的软件懂的来
今日头条账号保存cookie
抖音粉丝软件定做,只要粉丝
百家号自媒体发文软件定制
哔哩哔哩播放量
读取TB某个商品上架时间和相关信息
网易博客软件定制
定制天涯论坛发帖软件
定制今日头条批量自动发私信软件
[ 站内搜索 ]
[ 最近热帖 ]
万能助手 -- 扩展库大全集 13757
用aardio创建web工程图文讲解(1) 12848
电脑编程入门自学:Fiddler https 抓包时提示创建根证书不成功问题彻底解决(https插件dll方式) 11748
aardio绘图演示 11416
通过chrome.dll中间件控制外部chrome浏览器 10132
我常用的aardio技巧 9781
《边学C语言边赚钱——简码编程入门教程》系列集合 9620
aardio使用http或whttp进行get/post请求时经常cookies失效怎么办?__电脑计算机编程入门教程自学 9324
[源码下载]简码视频加密解密播放工具个人版v1.0发布,永久免费开源的知识变现神器 8559
python人工智能爬虫系列:怎么查看python版本_电脑计算机编程入门教程自学 8052
编程入门教程:aardio批量上传文件并显示进度条 7889
aardio调用nodejs的ws模块做一个简单的聊天通信示例 7041
电脑计算机编程入门教程自学:原生JavaScript判断字符是否为A-Za-z英文字母 6911
电脑计算机编程入门教程自学:腾讯tx或极验geetest滑块按住拖动完成拼图验证成功破解思路及源码 6506
乐玩插件AARDIO调用 6092
[ 近期热答 ]
电脑计算机编程入门教程自学:什么是buffer缓冲区? 1
aardio_代码编辑框书签管理器开源 1
aardio_怎么用ide库从代码编辑框中取出指定行的源码? 1
aardio_codepage代码页编码乱码暴力猜解工具 1
aardio内嵌echarts图表添加鼠标事件响应功能 2
aardio列表框listbox_模糊查找和精确查找 1
8亿QQ绑定手机泄露:通过腾讯QQ号查询QQ绑定的手机号码漏洞! 1
carl listviewex调用例子----------源码搬运工 2
Aardio内嵌Electron浏览框怎么正确添加启动参数? 1
Aardio取汉字的字节数或字符数 1
怎么实现mssql图片数据的读写 2
aardio_从49个数字里选六个和值为150的不重复的数字 1
在嵌入wps的时候,多了一个 透明的边框,这个怎么消除它 1
万能助手入门帮助教程:学会科学地管理工作文件 1
Aaardio开发内嵌Electron浏览框放服务器上无法下载组件的解决办法 1