gogoprog / atom-gdb Goto Github PK
View Code? Open in Web Editor NEWAtom plugin to set gdb breakpoints in .gdbinit file and run an external debugger as QtCreator or ddd
License: MIT License
Atom plugin to set gdb breakpoints in .gdbinit file and run an external debugger as QtCreator or ddd
License: MIT License
A "Stop debugging" ( Shift + f5 ) would be nice.
Also, when pressing f5, it launches a new debugging session every time, even if you are already debugging. Could you prevent this from happening? Or stop the current debugging session and start a new one?
Redisplay breakpoints when a file is re-opened
Breakpoints are not functional on OsX
Save the binary path and the startup directory in a .atom-gdb file in the root directory
Tested on Linux Mint 17.2:
Atom Version: 1.0.5
System: Linux Mint
Thrown From: atom-gdb package, v0.2.0
Uncaught TypeError: Cannot use 'in' operator to search for 'executablePath' in null
At /home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:45
TypeError: Cannot use 'in' operator to search for 'executablePath' in null
at Object.module.exports.AtomGdb.getSetting (/home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:45:43)
at Object.module.exports.AtomGdb.start (/home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:85:12)
at atom-workspace.subscriptions.add.atom.commands.add.atom-gdb:start (/home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:27:82)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:241:29)
at /usr/share/atom/resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:524:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:347:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app.asar/src/window-event-handler.js:177:20)
-0:39.2.0 editor:delete-to-beginning-of-word (atom-text-editor.editor.mini.is-focused)
-0:38.4.0 core:backspace (atom-text-editor.editor.mini.is-focused)
-0:31 core:confirm (atom-text-editor.editor.mini.is-focused)
-0:00.7.0 atom-gdb:start (atom-text-editor.editor.is-focused)
{
"core": {
"themes": [
"one-dark-ui",
"solarized-dark-syntax"
]
},
"atom-gdb": {}
}
# User
atom-gdb, v0.2.0
# Dev
No dev packages
In atom-gdb/styles/atom-gdb.atom-text-editor.less
:
Starting from Atom v1.13.0, the contents of atom-text-editor
elements are no longer encapsulated within a shadow DOM boundary. This means you should stop using :host
and ::shadow
pseudo-selectors, and prepend all your syntax selectors with syntax--
. To prevent breakage with existing style sheets, Atom will automatically upgrade the following selectors:
.breakpoint
=> .syntax--breakpoint
Automatic translation of selectors will be removed in a few release cycles to minimize startup time. Please, make sure to upgrade the above selectors as soon as possible.
Save on start debugging
I select the correct startup directory and executable. QT opens, but nothing more happens.
[Enter steps to reproduce:]
Atom: 1.46.0 x64
Electron: 4.2.7
OS: Ubuntu 20.04
Thrown From: atom-gdb package 0.6.0
Uncaught Error: pid must be a number
At /home/jonatan/.atom/packages/atom-gdb/node_modules/tree-kill/index.js:18
Error: pid must be a number
at module.exports (/packages/atom-gdb/node_modules/tree-kill/index.js:18:19)
at Object.stopChildProcess (/packages/atom-gdb/lib/atom-gdb.js:214:33)
at /packages/atom-gdb/lib/atom-gdb.js:55:34)
at CommandRegistry.handleCommandEvent (/snap/atom/250/usr/share/atom/resources/app/static/<embedded>:11:349538)
at CommandRegistry.dispatch (/snap/atom/250/usr/share/atom/resources/app/static/<embedded>:11:348013)
at AtomEnvironment.dispatchApplicationMenuCommand (/snap/atom/250/usr/share/atom/resources/app/static/<embedded>:1:725693)
at EventEmitter.t (/snap/atom/250/usr/share/atom/resources/app/static/<embedded>:1:733616)
at EventEmitter.emit (events.js:182:13)
-3:29.7.0 atom-gdb:start (input.hidden-input)
2x -2:14 core:move-down (atom-text-editor.editor.is-focused)
5x -2:13.3.0 core:move-up (atom-text-editor.editor.is-focused)
-1:27.8.0 settings-view:open (input.hidden-input)
-1:02.9.0 core:select-all (input.hidden-input)
-0:30.3.0 atom-gdb:start (input.hidden-input)
-0:21.9.0 atom-gdb:stop (atom-notification.warning.icon.icon-alert.native-key-bindings.has-close)
-0:12.5.0 atom-gdb:start (input.hidden-input)
-0:05.6.0 atom-gdb:stop (input.hidden-input)
atom-build-clickable 0.3.0
atom-gdb 0.6.0
build 0.70.0
busy-signal 2.0.1
dbg 1.6.3
dbg-gdb 1.7.8
output-panel 0.3.4
Atom Version: 1.0.11
System: Ubuntu 15.04
Thrown From: atom-gdb package, v0.4.0
Uncaught Error: Can't save buffer with no file path
At /usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1011
Error: Can't save buffer with no file path
at TextBuffer.module.exports.TextBuffer.saveAs (/usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1011:15)
at TextBuffer.module.exports.TextBuffer.save (/usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1005:19)
at TextEditor.module.exports.TextEditor.save (/usr/share/atom/resources/app.asar/src/text-editor.js:584:26)
at Object.module.exports.AtomGdb.saveAll (/home/wr-linux/.atom/packages/atom-gdb/lib/atom-gdb.coffee:216:18)
at Object.module.exports.AtomGdb.start (/home/wr-linux/.atom/packages/atom-gdb/lib/atom-gdb.coffee:94:6)
at atom-workspace.subscriptions.add.atom.commands.add.atom-gdb:start (/home/wr-linux/.atom/packages/atom-gdb/lib/atom-gdb.coffee:31:82)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:245:29)
at /usr/share/atom/resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:524:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:347:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app.asar/src/window-event-handler.js:184:20)
-0:00.5.0 atom-gdb:start (atom-text-editor.editor.is-focused)
{
"core": {},
"atom-gdb": {}
}
# User
atom-gdb, v0.4.0
docblockr, v0.7.3
sync-settings, v0.6.0
# Dev
No dev packages
Would be nice to have a visual indication ( message box, or in the button bar ), showing that the debugger is launching. I didn't know if it worked, spam clicking f5 with 10 instances spawning ;)
[Enter steps to reproduce below:]
Atom Version: 1.12.7
Electron Version: 1.4.12
System: linux 4.8.13-1-ARCH
Thrown From: atom-gdb package, v0.4.0
Uncaught TypeError: Cannot read property 'showOpenDialog' of undefined
At /home/stlouky/.atom/packages/atom-gdb/lib/atom-gdb.coffee:82
TypeError: Cannot read property 'showOpenDialog' of undefined
at Object.selectStartupDirectory (/home/stlouky/.atom/packages/atom-gdb/lib/atom-gdb.coffee:82:19)
at Object.updateGdbInit (/home/stlouky/.atom/packages/atom-gdb/lib/atom-gdb.coffee:169:28)
at Object.toggleBreakpoint (/home/stlouky/.atom/packages/atom-gdb/lib/atom-gdb.coffee:148:6)
at atom-text-editor.subscriptions.add.atom.commands.add.atom-gdb:toggle-breakpoint (/home/stlouky/.atom/packages/atom-gdb/lib/atom-gdb.coffee:35:96)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/lib/atom/src/command-registry.js:259:29)
at CommandRegistry.handleCommandEvent (/usr/lib/atom/src/command-registry.js:3:59)
at CommandRegistry.module.exports.CommandRegistry.dispatch (/usr/lib/atom/src/command-registry.js:160:19)
at AtomEnvironment.module.exports.AtomEnvironment.dispatchContextMenuCommand (/usr/lib/atom/src/atom-environment.js:1142:28)
at EventEmitter.outerCallback (/usr/lib/atom/src/application-delegate.js:332:25)
at emitThree (events.js:116:13)
at EventEmitter.emit (events.js:194:7)
-1:39.9.0 atom-gdb:start (ol.tree-view.full-menu.list-tree.has-collapsable-children.focusable-panel)
-0:14.5.0 gpp-compiler:compile (atom-text-editor.editor.is-focused)
-0:00.0 atom-gdb:toggle-breakpoint (atom-text-editor.editor.is-focused)
{
"core": {}
}
# User
atom-gdb, v0.4.0 (active)
gpp-compiler, v3.0.7 (active)
linter, v1.11.18 (active)
linter-gcc, v0.6.15 (active)
minimap, v4.25.7 (active)
terminal-plus, v0.14.5 (active)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.52.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.45.0 (inactive)
base16-tomorrow-dark-theme, v1.3.0 (inactive)
base16-tomorrow-light-theme, v1.3.0 (inactive)
one-dark-ui, v1.6.2 (active)
one-light-ui, v1.6.2 (inactive)
one-dark-syntax, v1.5.0 (active)
one-light-syntax, v1.5.0 (inactive)
solarized-dark-syntax, v1.0.5 (inactive)
solarized-light-syntax, v1.0.5 (inactive)
about, v1.7.0 (active)
archive-view, v0.62.0 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.13.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.4 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.1 (active)
bookmarks, v0.42.0 (active)
bracket-matcher, v0.82.2 (active)
command-palette, v0.39.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.40.0 (active)
find-and-replace, v0.202.2 (inactive)
fuzzy-finder, v1.4.0 (active)
git-diff, v1.1.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.2 (active)
image-view, v0.60.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.2 (inactive)
markdown-preview, v0.158.8 (active)
metrics, v1.1.2 (active)
notifications, v0.65.1 (active)
open-on-github, v1.2.1 (inactive)
package-generator, v1.0.1 (inactive)
settings-view, v0.243.1 (active)
snippets, v1.0.4 (active)
spell-check, v0.68.4 (active)
status-bar, v1.4.1 (active)
styleguide, v0.47.2 (active)
symbols-view, v0.113.1 (inactive)
tabs, v0.103.0 (active)
timecop, v0.33.2 (active)
tree-view, v0.210.0 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.35.1 (active)
whitespace, v0.35.0 (active)
wrap-guide, v0.38.2 (active)
language-c, v0.54.0 (active)
language-clojure, v0.22.1 (active)
language-coffee-script, v0.48.0 (active)
language-csharp, v0.13.0 (active)
language-css, v0.40.1 (active)
language-gfm, v0.88.0 (active)
language-git, v0.15.0 (active)
language-go, v0.43.0 (active)
language-html, v0.47.1 (active)
language-hyperlink, v0.16.1 (active)
language-java, v0.24.0 (active)
language-javascript, v0.122.0 (active)
language-json, v0.18.3 (active)
language-less, v0.29.6 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.37.0 (active)
language-php, v0.37.3 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.1 (active)
language-ruby, v0.70.2 (active)
language-ruby-on-rails, v0.25.1 (active)
language-sass, v0.57.0 (active)
language-shellscript, v0.23.0 (active)
language-source, v0.9.0 (active)
language-sql, v0.25.0 (active)
language-text, v0.7.1 (active)
language-todo, v0.29.1 (active)
language-toml, v0.18.1 (active)
language-xml, v0.34.12 (active)
language-yaml, v0.27.1 (active)
# Dev
No dev packages
[Enter steps to reproduce below:]
After some undoing, I tried to remove my breakpoint
Atom Version: 1.0.19
System: Linux Mint
Thrown From: atom-gdb package, v0.4.0
Uncaught TypeError: Cannot read property 'destroy' of undefined
At /home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:145
TypeError: Cannot read property 'destroy' of undefined
at Object.module.exports.AtomGdb.toggleBreakpoint (/home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:145:35)
at atom-text-editor.subscriptions.add.atom.commands.add.atom-gdb:toggle-breakpoint (/home/pieter/.atom/packages/atom-gdb/lib/atom-gdb.coffee:35:96)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:245:29)
at /usr/share/atom/resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:524:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:347:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app.asar/src/window-event-handler.js:184:20)
2x -1:19.3.0 autocomplete-plus:confirm (atom-text-editor.editor.is-focused.autocomplete-active)
-1:15.4.0 core:move-right (atom-text-editor.editor.is-focused)
-1:12.6.0 editor:newline (atom-text-editor.editor.is-focused)
2x -1:10.2.0 core:backspace (atom-text-editor.editor.is-focused.autocomplete-active)
-1:08.6.0 core:move-right (atom-text-editor.editor.is-focused.autocomplete-active)
2x -0:50.7.0 core:backspace (atom-text-editor.editor.is-focused)
-0:48.4.0 core:save (atom-text-editor.editor.is-focused)
-0:43.9.0 atom-gdb:toggle-breakpoint (atom-text-editor.editor.is-focused)
-0:43 build:trigger (atom-text-editor.editor.is-focused)
-0:35 core:copy (atom-text-editor.editor.is-focused)
95x -0:33.6.0 core:undo (atom-text-editor.editor.is-focused)
2x -0:19.8.0 core:redo (atom-text-editor.editor.is-focused)
-0:18.1.0 core:undo (atom-text-editor.editor.is-focused)
-0:17.2.0 core:redo (atom-text-editor.editor.is-focused)
-0:10.2.0 core:paste (atom-text-editor.editor.is-focused)
-0:04.0 atom-gdb:toggle-breakpoint (atom-text-editor.editor.is-focused)
{
"core": {
"themes": [
"one-dark-ui",
"solarized-dark-syntax"
],
"excludeVcsIgnoredPaths": false
},
"atom-gdb": {
"debuggerCommand": "nemiver"
}
}
# User
Sublime-Style-Column-Selection, v1.3.0
atom-gdb, v0.4.0
build, v0.48.0
file-icons, v1.6.11
language-lua, v0.9.4
project-manager, v2.6.5
sass-watch, v0.3.1
switch-header-source, v0.20.0
# Dev
No dev packages
Check ~/.gdbinit file for set auto-load safe-path /
and set it automatically
Support command line arguments in .atom-gdb.json file
[Enter steps to reproduce below:]
Atom Version: 1.8.0
System: Ubuntu 14.04.4
Thrown From: atom-gdb package, v0.4.0
Uncaught Error: spawn EACCES
At /usr/share/atom/resources/app.asar/src/buffered-process.js:262
Error: spawn EACCES
at exports._errnoException (util.js:856:11)
at ChildProcess.spawn (internal/child_process.js:298:11)
at Object.exports.spawn (child_process.js:374:9)
at BufferedProcess.module.exports.BufferedProcess.spawn (/usr/share/atom/resources/app.asar/src/buffered-process.js:190:44)
at new BufferedProcess (/usr/share/atom/resources/app.asar/src/buffered-process.js:52:14)
at Object.module.exports.AtomGdb.runProcess (/home/tarek/.atom/packages/atom-gdb/lib/atom-gdb.coffee:67:24)
at Object.module.exports.AtomGdb.startNoDebug (/home/tarek/.atom/packages/atom-gdb/lib/atom-gdb.coffee:125:6)
at atom-workspace.subscriptions.add.atom.commands.add.atom-gdb:start-no-debug (/home/tarek/.atom/packages/atom-gdb/lib/atom-gdb.coffee:32:91)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:260:29)
at CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:3:61)
at CommandRegistry.module.exports.CommandRegistry.dispatch (/usr/share/atom/resources/app.asar/src/command-registry.js:160:19)
at AtomEnvironment.module.exports.AtomEnvironment.dispatchApplicationMenuCommand (/usr/share/atom/resources/app.asar/src/atom-environment.js:1100:28)
at EventEmitter.outerCallback (/usr/share/atom/resources/app.asar/src/application-delegate.js:327:25)
at emitTwo (events.js:87:13)
at EventEmitter.emit (events.js:172:7)
25x -2:38.6.0 core:backspace (atom-text-editor.editor.mini.is-focused)
-2:25.1.0 core:confirm (atom-text-editor.editor.mini.is-focused)
4x -2:15.7.0 core:backspace (atom-text-editor.editor.mini.is-focused)
-2:10.3.0 core:confirm (atom-text-editor.editor.mini.is-focused)
-0:45.6.0 atom-gdb:start (ul.list-inline.tab-bar.inset-panel)
-0:00.5.0 atom-gdb:start-no-debug (atom-text-editor.editor.power-mode.is-focused)
{
"core": {
"themes": [
"one-dark-ui",
"material"
]
}
}
# User
activate-power-mode, v0.6.0
atom-gdb, v0.4.0
material, v2.2.0
# Dev
No dev packages
Failed to spawn command qtcreator. Make sure qtcreator is installed and on your PATH
Where can I get qtcreator?
/home/AmarOk/.atom/packages/atom-gdb/lib/atom-gdb.js:141
TypeError: Cannot read property 'showOpenDialog' of undefined
at Object.module.exports.AtomGdb.selectExecutable (/home/AmarOk/.atom/packages/atom-gdb/lib/atom-gdb.js:141:23)
at atom-workspace.subscriptions.add.atom.commands.add.atom-gdb:select-executable (/home/AmarOk/.atom/packages/atom-gdb/lib/atom-gdb.js:62:34)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:260:29)
at CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:3:61)
at CommandRegistry.module.exports.CommandRegistry.dispatch (/usr/share/atom/resources/app.asar/src/command-registry.js:160:19)
at AtomEnvironment.module.exports.AtomEnvironment.dispatchApplicationMenuCommand (/usr/share/atom/resources/app.asar/src/atom-environment.js:1013:28)
at emitOne (events.js:77:13)
at EventEmitter.emit (events.js:169:7)
[Enter steps to reproduce:]
Atom: 1.23.3 x64
Electron: 1.6.15
OS: Mac OS X 10.13.2
Thrown From: atom-gdb package 0.6.0
Uncaught Error: Can't save a buffer with no file
At /Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/text-buffer.js:1262
Error: Can't save a buffer with no file
at TextBuffer.module.exports.TextBuffer.saveTo (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/text-buffer.js:1262:21)
at TextBuffer.module.exports.TextBuffer.save (/Applications/Atom.app/Contents/Resources/app/node_modules/text-buffer/lib/text-buffer.js:1246:25)
at TextEditor.save (/Applications/Atom.app/Contents/Resources/app/src/text-editor.js:1129:38)
at Object.saveAll (/packages/atom-gdb/lib/atom-gdb.js:328:37)
at Object.start (/packages/atom-gdb/lib/atom-gdb.js:168:18)
at /packages/atom-gdb/lib/atom-gdb.js:41:34)
at CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:388:36)
at CommandRegistry.dispatch (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:273:23)
at AtomEnvironment.module.exports.AtomEnvironment.dispatchApplicationMenuCommand (/Applications/Atom.app/Contents/Resources/app/src/atom-environment.js:1393:34)
at EventEmitter.outerCallback (/Applications/Atom.app/Contents/Resources/app/src/application-delegate.js:335:31)
at emitThree (events.js:116:13)
at EventEmitter.emit (events.js:194:7)
-0:07.4.0 atom-gdb:start (input.hidden-input)
atom-gdb 0.6.0
dbg 1.6.3
dbg-gdb 1.7.8
output-panel 0.3.4
vim-mode-plus 1.25.1
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.