• 2018-8-29-dotnet-core-添加-SublimeText-编译插件


    title author date CreateTime categories
    dotnet core 添加 SublimeText 编译插件
    lindexi
    2018-08-29 08:53:47 +0800
    2018-08-12 10:52:54 +0800
    dotnetcore sublimetext

    因为 SublimeText 有很多插件都是使用 Py 写的,而我想使用 dotnet core 给 SublimeText 写一个编译插件,也就是在我使用 Markdown 的时候可以点击编译,将 Markdown 转 doc 或者做其他的。

    在 SublimeText 有一个功能就是使用 Tools 的 Build System 添加新的 Build 通过点击new Build System 就可以新建一个用 sublime-build 结束的文件

    将会这个文件保存到 SublimeText 所在的文件夹,在C:Users用户名AppDataRoamingSublime Text 3PackagesUser 就可以添加编译

    先来创建一个 dotnet core 项目,这个项目先给一个随意的名字

    这个项目只是用来输出拿到的参数

            static void Main(string[] args)
            {
                var str = new StringBuilder();
                foreach (var temp in args)
                {
                    str.Append(temp + "
    ");
    
                    Console.WriteLine(temp);
                }
    
                File.WriteAllText(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "KeameaMouhalis"), str.ToString());
            }

    代码很简单,上面用Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)因为想写文件到运行的文件夹

    例如这个项目编译出的路径是 D:lindexigithubPisairtekaDrallhairloPisairtekaDrallhairloinDebug etcoreapp2.0PisairtekaDrallhairlo.dll 在刚才打开的 sublime-build 可以添加下面代码

    {
    	"file_patterns":["*.md"],
    	"cmd": ["dotnet" , "D:\lindexi\github\PisairtekaDrallhairlo\PisairtekaDrallhairlo\bin\Debug\netcoreapp2.0\PisairtekaDrallhairlo.dll","$file"]
    }

    这里的 file_patterns 就是表示在什么的文件可以使用这个编译,第二个就是调用 cmd 运行命令

    可以传入的参数很多,这里的 $file 表示当前进行编译文件,可以选的参数请看下面

    • $file_path 当前文件所在路径,比如 C:Files
    • $file 当前文件的完整路径,比如 C:FilesChapter1.txt
    • $file_name 当前文件的文件名,比如 Chapter1.txt
    • $file_extension 当前文件的扩展名,比如 txt
    • $file_base_name 当前文件仅包含文件名的部分,比如 Document
    • $packages Packages 文件夹的完整路径
    • $project 当前项目文件的完整路径
    • $project_path 当前项目文件的路径
    • $project_name 当前项目文件的名称
    • $project_extension 当前项目文件的扩展部分
    • $project_base_name 当前项目仅包括名的部分

    现在将 sublime-build 文件存放到 SublimeText 所在的文件夹,注意给一个名字,然后就可以在 Build 里看到,现在选择 Build System 的对应的方式进行编译,点击 Build 就可以看到输出编译

    在刚才的项目写文件是因为在 SublimeText 的控制台看到的是如下界面

    对于所有的中文都没有显示,所以写入文件就可以从文件里看,可以看到传入的文件是不会和 SublieText 显示一样

    现在有了需要编译的文件的路径,就请发挥想想开发自己的编译插件

    参见:Build Systems – Sublime Text 3 Documentation

    如何优雅地使用Sublime Text3 - 简书

    Build Systems — Sublime Text非官方文档(中文翻译版)

  • 相关阅读:
    转载:div和flash层级关系问题
    转载:页面加载swf插件:swfobject
    C++ code:浮点数的比较(Floating-Pointing Number Comparison)
    Deep Learning系统实训之三:卷积神经网络
    C++ code:指针类型(pointer types)
    Linear Algebra(未完待续)
    Deep Learning系统实训之二:梯度下降原理
    C++ code:向量操作之添加元素
    Deep Learning系统实训之一:深度学习基础知识
    机器学习与优化关系、凸集、凸函数简介
  • 原文地址:https://www.cnblogs.com/lindexi/p/12086228.html
Copyright © 2020-2023  润新知