zoukankan      html  css  js  c++  java
  • 用GO语言开发editplus编辑器插件(附源码)

        我要开发的插件功能极为简单,就是对用户选中的内容进行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 ")
    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(" 說明:")
    fmt.Println("  這個程式由 Seven (http://7di.net) 製作,用來對內容進行 base64 加/解密.")
    fmt.Println(" 參數:")
    fmt.Println("  -a 對內容加密")
    fmt.Println("  -x 對內容解密")
    fmt.Println("  -v 軟件版本")
    fmt.Println("  -h 使用幫助")
    fmt.Println(" 用法:")
    fmt.Println("  加密: base64.exe -a 要加密的內容")
    fmt.Println("  解密: base64.exe -x 要解密的內容")
    fmt.Println(" 交流:")
    fmt.Println("  Go語言技術QQ群: 195112")
    return
    default:
    fmt.Println("請使用 -h 查看軟件使用方法, Go語言技術QQ群: 195112 ")
    return
    }
    }


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

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

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

     

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

    Go語言技術QQ群: 195112

  • 相关阅读:
    【转】PowerDesigner数据库视图同时显示Code和Name
    [转]BT原理分析
    异常机制及throw与throws的区别(转)
    BS与CS的联系与区别。
    ASP.NET和C#的区别/
    上百例Silverlight网站及演示汇总,供友参考
    Bing Maps进阶系列九:使用MapCruncher进行地图切片并集成进Bing Maps
    【Silverlight】Bing Maps学习系列(八):使用Bing Maps Silverlight Control加载自己部署的Google Maps
    学习MAP 地图好地址
    Bing必应地图中国API
  • 原文地址:https://www.cnblogs.com/see7di/p/3963065.html
Copyright © 2011-2022 走看看