sublime text一键命令行运行python/java/C/C++

最近在搞sqlite3项目,那个整合版的sqlite3.c有22w行,vs或者vscode打开都经常卡住,而且不是卡一会,会一直卡,随便改个东西又要重新解析一下。

主要还是整合版的源代码太长太复杂了。用editplus打开不卡,但是配色太朴素了,试了网上说的monokai主题设置也没有sublime text或vscode里面的好看。

用sublime text打开也不卡,于是顺便配置一下sublime编译运行环境吧。

其实sublime自动支持python运行环境,但是无法交互,要是有input就悲剧了,

可以配置直接在命令行运行python,这样就可以交互了,

sublime就是自带的终端无法交互,网上有说装个插件可以交互的,不过我一直没有成功过,

 

1.sublime使用系统命令行运行python

其实就是用shell_cmd运行start cmd,这样就可以打开一个cmd窗口运行了。

点击工具-编译系统-新建编译系统,输入

{
"working_dir": "$file_path",
"shell_cmd": "start cmd /c \"python -u \"$file\"&pause\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"encoding": "cp936"
}

保存到默认的User文件夹,名字可以叫cmdPython.sublime-build,运行时选cmdPython编译系统就可以了。

这个python是添加了系统环境变量,系统默认的python,

如果没有添加环境变量,或者想用不同的版本,可以输入具体的python路径,比如

"shell_cmd": "start cmd /c \"D:\\python\\py64\\python.exe -u \"$file\"&pause\"",

注意\"不能少,这是为了保证所有命令都在这个cmd窗口执行。

 

2.sublime一键命令行编译运行java

跟python类似,都是start cmd,但是java还有个编译,

网上的教程都是编译+运行分开的,可能为了方便在编译时发现问题,

但是用sublime一般都编辑比较简单的脚本,复杂的直接上idea了,

还是搞成一键编译运行简单一点,用\"拼接命令就可以了,

也是新建编译系统,输入:

{
"working_dir": "$file_path",
"shell_cmd": "start cmd /c \"javac -encoding UTF-8 \"$file\"&& java ${file_base_name}&pause\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.java",
//"encoding": "cp936"
}

这里加了个-encoding UTF-8编码参数,因为很多java文件都是utf-8编码的,sublime默认GBK,有中文就会乱码,

当然如果文件不是UTF-8的就不用加这个编码了。

可以把这个保存为javaUTF8,另外再新建一个javaGBK的编译系统:

{
"working_dir": "$file_path",
"shell_cmd": "start cmd /c \"javac \"$file\"&& java ${file_base_name}&pause\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.java",
"encoding": "cp936"
}

 

3.sublime命令行一键编译运行C/C++

网上很多都是编译运行分开的,这里也搞成一键编译运行,快速高效。

gcc:

跟java类似,新建编译系统,输入:

{
"working_dir": "$file_path",
"shell_cmd": "start cmd /c \"gcc \"${file}\" -o \"${file_path}/${file_base_name}\" -lm -Wall -std=c11 &&\"${file_path}/${file_base_name}\"& pause\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"selector" : "source.c, source.c++"
}

保存为gcc.sublime-build

-lm是加math库,-Wall是warning all,提示所有警告(C的warning很多,一般不影响运行)

g++:

跟gcc类似,但是不用-lm和-std=c11

新建编译系统,输入

{
"working_dir": "$file_path",
"shell_cmd": "start cmd /c \"g++ \"${file}\" -o \"${file_path}/${file_base_name}\" -Wall &&\"${file_path}/${file_base_name}\"& pause\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"selector" : "source.c, source.c++",
}

保存为g++.sublime-build

sublime选好编译系统后可以直接按ctrl+B编译运行,非常方便。

另外可以配置直接在sublime显示错误和警告,但是我感觉那样很奇怪,还不如直接在命令行报错。

网上有免安装版的sublime,配置一次可以用一辈子,重装系统也不影响。

posted @ 2022-09-17 09:35  科学修行的红客  阅读(513)  评论(0编辑  收藏  举报