• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

用GO语言开发editplus编辑器插件(附源码)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

    我要开发的插件功能极为简单,就是对用户选中的内容进行base64编码或解密工作.

其中所涉及的技术部分主要是GO语言程序开发和editplus插件配置的部分,首先我们来看一下GO语言代码的写法,如下:

package main


import (
"encoding/base64"
"fmt"
"os"
)


const (
version string = "1.0"
)


func main() {
num := len(os.Args)
if num < 2 || num > 3 {
fmt.Println("請使用 -h 查看軟件使用方法, Go語言技術QQ群: 195112\n")
return
}


switch os.Args[1] {
case "-a": //encode
data := []byte(os.Args[2])
out := base64.StdEncoding.EncodeToString(data)
fmt.Print(out)
case "-x": //decode
out, err := base64.StdEncoding.DecodeString(os.Args[2])
if err != nil {
fmt.Println("")
return
}
fmt.Printf("%s", out)
case "-v":
fmt.Println("ver:", version)
return
case "-h": //decode
fmt.Println("\n說明:")
fmt.Println("  這個程式由 Seven (http://7di.net) 製作,用來對內容進行 base64 加/解密.")
fmt.Println("\n參數:")
fmt.Println("  -a 對內容加密")
fmt.Println("  -x 對內容解密")
fmt.Println("  -v 軟件版本")
fmt.Println("  -h 使用幫助")
fmt.Println("\n用法:")
fmt.Println("  加密: base64.exe -a 要加密的內容")
fmt.Println("  解密: base64.exe -x 要解密的內容")
fmt.Println("\n交流:")
fmt.Println("  Go語言技術QQ群: 195112")
return
default:
fmt.Println("請使用 -h 查看軟件使用方法, Go語言技術QQ群: 195112\n")
return
}
}


原理是执行编译好的exe文件时同时传递三个参数进来,然后用os.Args接收,接收之后要判断参数的数量,我们允许传递一个或两个参数进来,如果小于两个或大于三个参数则出错

 

两个参数是为了应付-h查看使用帮助或-v显示版本号,三个参数则是为了处理加密或解密工作.

我们把上边的代码存成.go文件,然后编译成.exe文件,最后把mail.exe改成base64.exe,并把base64.exe复制到editplus的stx目录下,并对editplus进行相应的配置,配制方法如下:

 

 

希望此为能起到抛砖引玉的功能,对大家开发插件能够有所帮助.

Go語言技術QQ群: 195112


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
go语言之进阶篇接口的定义和实现以及接口的继承发布时间:2022-07-10
下一篇:
Go语言实现的23种设计模式之结构型模式发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap