sublime的功能其实很强大,当然需要安装插件,前面我们没有介绍如何用sublime调试程序。下面学习如何用sublime调试python和C++。

调试python

参考https://blog.csdn.net/qq_35308309/article/details/78106800和

https://www.cnblogs.com/xiami303/p/4336273.html

pycharmt等IDE虽然用着爽,但毕竟在速度、资源上还是比较让人不爽的。

使用IDE无非是图个方便省事,特别是像我这种有些记性差的来说。

IDE说起来方便于的几个地方就是:

1、语法颜色高亮

2、语法自动完成

3、方便的调试功能

现在有了Sublime Text这枚神器,配合上插件也可以比较方便地搭建一个方便的类似IDE的python调试环境了。

1、现在可以安装sublime text 3,然后安装package control,这玩意可以让你方便安装插件包。安装方法网上一砣。

2、安装SublimeCodeIntel插件,可以实现语法自动完成功能(这个安装Anaconda也可以)。

安装AutoPEP8可以自动将python规范化。(Anaconda里面带有PEP8)

3、重点安装SublimeREPL插件,安装打开python文件时,将布局切换为2行查式,选择菜单:

然后就出现如下的pdb调试界面。

然后你就可以输出各种pdb命令进行调试了。比如:

(Pdb) b 31              #在31行建立断点

Breakpoint 1 at c:\work\code\workspace\test\sqlalchemy\docopt.py:31

(Pdb) r                    #运行到断点处

> c:\work\code\workspace\test\sqlalchemy\docopt.py(31)()

-> m=MyClass()

(Pdb)                       #在这个命令行下就可以执行当前上下文的python

具体的pdb命令百度去.

注:(1)sublime设置快捷键F5为运行,Ctrl+F5调试。就会对python调试方便很多。

Preferneces -> Key Bingdings-User进行设置

[

{

"keys":[

"f5"

],

"caption":"SublimeREPL: Python - RUN current file",

"command":"run_existing_window_command",

"args":{

"id":"repl_python_run",

"file":"config/Python/Main.sublime-menu"

}

},

{

"keys":[

"ctrl+f5"

],

"caption":"SublimeREPL: Python - PDB current file",

"command":"run_existing_window_command",

"args":

{

"id":"repl_python_pdb",

"file":"config/Python/Main.sublime-menu"

}

}

]

好的,我们来试一试(我用的是快捷键)

这个是靠命令来调试的而不是按照图形化的界面来调试的,查看变量的值也需要靠命令,不过也还好。当然用p a也是可以打印值的。还可以用id查看地址。

还是挺不错的。

sublime调试C/C++

参考https://blog.csdn.net/one___thousand/article/details/53219751

和https://www.cnblogs.com/Just--Do--It/p/7476467.html

可以用gdb调试:

这个是MinGW-W64安装的时候就有的。不过比较麻烦,我们还是需要安装sublimegdb。

如果package control出问题,我们自己手动安装:

https://packagecontrol.io/search/sublimegdb

当然其实最后也都是跳转到https://github.com/quarnster/SublimeGDB

这说是配合sublime2的,不过我们先试试。然后把下载好的文件夹放进如下类似的文件夹。

这个文件夹是在Browse Packages这里打开的。

修改配置文件

依次选择Preferneces -> Package Settings -> SublimeGDB -> Settings – User

输入下面的内容

{

"workingdir":"${folder:${file}}",

"commandline":"g++ -g -std=c++11 ${file} -o ${file_base_name} && gdb --interpreter=mi --args ./${file_base_name}",

}

保存。重启sublime。

这里面有些快捷键和我们设置的重复了,我们需要在

key bindings里面改一改。然后按F9就会出现小红点,也会出现下面的一些窗口。

不过这个调试的时候要注意路径中不可以有中文的。如果路径没有问题的话,就可以开始调试了。

按F9是设置断点的,然后按F5开始调试(先设置断点再调试,一旦F5就设置不了断点了),下面的窗口时接收输入的,我输入的是abc,不过下面变量窗口的值是9abc,不知道这个9怎么来的,回车之后,程序自动运行到断点,程序运行到的地方是绿色的。然后ctrl+F5结束调试,绿色消失,再次F9可以消除断点,然后可以把那些窗口拉到下面,这个GDB的窗口我也不知道怎么搞掉,不过你可以把它拉低。它不影响你编译运行程序:

这里需要说一点,debug的时候是没办法编译程序的。Ctrl+F5之后才行。这样搞过之后,python的调试输出也到下面了。

不过也还行。

sublime python调试_如何用sublime调试程序相关推荐

  1. sublime运行python代码_怎么用sublime运行python

    首先需要安装一个Sublime Text(http://www.sublimetext.com/)和一个Python(https://www.python.org/downloads/) 接下来打开S ...

  2. excel和python建模_如何用Python提高办公(Excel)效率?

    1 T: G2 ^3 U. x0 ?. W* A: `如何用Python提高办公(Excel)效率? ; m+ Z; f& U4 H' I这几天在家里利用网络视频教程学习了一下简单的Pytho ...

  3. spyder python调试_使用spyder编译器单步调试python

    1.将需要进行单步调试的函数在脚本中进行调用(十分重要的一步).由于python是解释型语言,在进行单步调试的时候需要告诉系统你使用了这个函数,单步调试才会进入你所需要调式的函数.如下图所示,我们定义 ...

  4. python剪刀石头布_如何用python写剪刀石头布

    如何用python写剪刀石头布 发布时间:2020-07-20 11:52:16 来源:亿速云 阅读:111 本篇文章给大家分享的是有关如何用python写剪刀石头布,小编觉得挺实用的,因此分享给大家 ...

  5. python租房_如何用Python爬租房网站信息

    展开全部 首先你需要了解如何用python进行爬虫,然后需要了解正则或者找寻条件的方法,给你62616964757a686964616fe4b893e5b19e31333337383839举个例子: ...

  6. 词云python灿烈_如何用Python做中文词云?

    打算绘制中文词云图?那你得先学会如何做中文文本分词.跟着我们的教程,一步步用Python来动手实践吧. 需求 在<如何用Python做词云>一文中,我们介绍了英文文本的词云制作方法.大家玩 ...

  7. python月亮_如何用python代码画一个月亮

    如何用python代码画一个月亮 发布时间:2020-06-17 15:52:21 来源:亿速云 阅读:181 作者:元一 Python简介 Python是一种跨平台的计算机程序设计语言. 是一个高层 ...

  8. python怎么用交互式界面_交互式python教程_如何用python做交互式界面

    什么叫做交互式python解释器 个例子来说明交互式解释  (看看 Onion - 老杨 解释的内容如下) 例: 创建文件 zoo.py.在该文件义函数 hours(),输出字符串'Open 9-5 ...

  9. 简单几段python代码_如何用python跑一段鸿蒙最简单代码?

    首先,鸿蒙并不支持python,HarmonyOS代码开发支持多语言,包括Java.XML(Extensible Markup Language).C/C++ . JS(JavaScript).CSS ...

最新文章

  1. android helloworld程序
  2. FreeMarker学习2
  3. ios 获取当前系统时间
  4. 4.3 计算机网络之IPv4(IPv4分组、IPv4地址、NAT、子网划分与子网掩码、CIDR、ARP协议、DHCP、ICMP)
  5. C#Winform调用wsdl接口webservice#http
  6. java thread_Java(多线程Thread)
  7. Colossal Fibonacci Numbers! UVA - 11582(斐波那契求模)+快速幂+周期规律
  8. jQuery+pjax简单示例汇总
  9. 修改docker内mysql配置后无法启动解决方法
  10. 软件测试--计算机基础
  11. GlobalMapper20提取点位的高程信息
  12. 矢量图svg转png的简单方法
  13. 基于K均值聚类算法的图像分割(Matlab)
  14. 计算机加入域用户名,使用PowerShell重新命名计算机并加入域
  15. 计算机时间单位,时间单位换算表与计算机单位换算
  16. 去除WMP10上面的东方宽屏图标
  17. 大型机、小型机、x86架构以及ARM架构服务器的区别大型机、小型机、x86架构以及ARM架构服务器的区别
  18. 大数据技术基础学习总结
  19. DBlink 入门案例
  20. sublime快捷键设置(十年积累经常在用)

热门文章

  1. JS中的事件委托/事件代理详解
  2. MVC中使用T4模板
  3. html5——3D转换
  4. [forwarding]Android上dip、dp、px、sp等单位说明
  5. 第一次自己成功写成的js程序
  6. Audio Playback过程
  7. x265将yuv转h265(七)
  8. Android5.0 netd架构流程
  9. Android 蓝牙音箱开发
  10. Android唤醒屏幕