Is there an easy way to do this? On Aptana I used Control+click and I wish there was a way to do something similar on Atom.
-
1Atom on it's own doesn't have that feature, you can install some packages that do handle it https://atom.io/packages/navigate – IROEGBU Jun 26 '15 at 15:59
-
@iroegbu I tried the package but it doesn't work as expected and that 'double click to go to definition' business is also not warranted because sometimes you simply want to select some code nugget and what it does is jump to a new file without the option of going back (f3 doesn't work). – andromeda Jun 27 '15 at 13:53
-
1I don't use Atom, you might want to check out https://discuss.atom.io/t/is-there-a-simple-go-to-definition/11809 – IROEGBU Jun 27 '15 at 18:14
-
Thanks @iroegbu I'll definitely watch the page to see what pops up. – andromeda Jun 28 '15 at 22:10
-
https://discuss.atom.io/t/is-there-a-simple-go-to-definition – Dennis Jan 06 '16 at 13:48
-
autocomplete-python-jedi is the only one that uses ctrl-click . – Alex Sep 25 '20 at 09:00
10 Answers
I had the same issue and atom-goto-definition (package name goto-definition) worked like charm for me. Please try once. You can download directly from Atom.
This package is DEPRECATED. Please check it in Github.

- 1,821
- 5
- 25
- 51

- 3,123
- 2
- 21
- 40
-
1I can confirm that this works. Thanks. The default key binding is CTRL+ALT+ENTER – andromeda Jul 15 '16 at 08:15
-
3This is the only package which works on a little bigger project. Thanks! I have tried atom-ctags, symbol-get, goto packages and none of them worked :-(. Either caused atom crash or took too long. – Mi-La Oct 20 '16 at 10:42
-
This is pretty sluggish but it works. My project is tiny so I don't really think this will scale well. – davegallant Jan 31 '17 at 19:18
-
Not working good in javascript ES6 (P.S. I'm developing with React), and can't go to definition inside node modules files...just uninstalled it. – Marson Mao Jun 28 '17 at 02:15
-
-
64
-
1
-
please see the answer by Q-Bart below: https://stackoverflow.com/a/34227075/12377933 – julian Dec 04 '19 at 15:56
-
@StevenShaw, python-tools works absolutely fine for python [tested on atom 1.45.0, Ubuntu 18.04 LTS, python3]. Install using this command `apm install python-tools`. after installing restart your atom editor and it will work (eg. ctrl+alt+g). – Kevin Patel Apr 13 '20 at 07:37
-
I believe the problem with "go to" packages is that they would work diferently for each language.
If you use Javascript js-hyperclick and hyperclick (since code-links is deprecated) may do what you need.
Use symbols-view
package which let your search and jump to functions declaration but just of current opened file. Unfortunately, I don't know of any other language's equivalent.
There is also another package which could be useful for go-to in Python: python-tools
As of May 2016, recent version of Atom now support "Go-To" natively. At the GitHub repo for this module you get a list of the following keys:
symbols-view:toggle-file-symbols
to Show all symbols in current filesymbols-view:toggle-project-symbols
to Show all symbols in the projectsymbols-view:go-to-declaration
to Jump to the symbol under the cursorsymbols-view:return-from-declaration
to Return from the jump
I now only have one thing missing with Atom for this: mouse click bindings. There's an open issue on Github if anyone want to follow that feature.
-
Thanks @corpy code-links looks like a neat idea for js and I'll try it out. I've had to adjust to a workflow that doesn't include this feature since I mostly code in php. – andromeda Sep 01 '15 at 11:58
-
I wouldn't know about php packages. And this may be a long shot, but have you tried [symbols-tree-view](https://atom.io/packages/symbols-tree-view)? It's certainly not what you wanted, but at least it'd give some easier visual navigation if your php classes/files are long – cortopy Sep 02 '15 at 11:22
-
-
-
python-tools works absolutely fine for python [tested]. Install using this command `apm install python-tools`. after installing restart your atom editor and it will work (eg. ctrl+alt+g). – Kevin Patel Apr 13 '20 at 07:32
I also had the same problem. And I find the solution:
CTRL+ALT+G
Update:
Thanks to @Joost, install Atom package python-tools to make it work

- 1,503
- 4
- 22
- 41
-
15
-
This combination launch the Styleguide of Atom, that will show you all the UI components used in Atom. It is useful as a reference when developing themes and packages. – Javi Ps Mar 11 '17 at 10:05
-
Ctrl+Shift+g run the Styleguide, Ctrl+Alt+g does not seem to do anything. – Pablo Bianchi Jul 29 '17 at 00:53
-
3Just for you wondering where this comes from, `CTRL+ALT+G` is the default key binding for `goto:definition` in the `python-tools` atom package. – Joost Apr 19 '18 at 00:08
-
You also need to have python installed on your machine for `python-tools` to work – BugShotGG Jul 07 '18 at 08:59
-
Useless package. Only work for inline file, can't jump to other file if the function is imported – TomSawyer May 06 '20 at 15:11
The functionality is already present in atom via the Symbols View package you don't need to install anything.
The command you are searching for is symbols-view:go-to-declaration (Jump to the symbol under the cursor) which is bound by default to cmd-alt-down on macOS and ctrl-alt-down on Linux.
just note that it will work only if you will have generated tags for your project, either via this package or via ctags (exuberant or not)

- 4,485
- 1
- 27
- 31
-
1By default on Linux you will get Emacs ctag. As [said here](https://stackoverflow.com/a/2968545/4970442) to run the _real_ `ctags` install `exuberant-ctags` package (considering [this](https://github.com/atom/symbols-view/issues/171) and [this](https://discuss.atom.io/t/struggling-with-ctags/12550/6) seems the one Atom currently use). – Pablo Bianchi Jul 29 '17 at 00:39
-
6"**ctrl-alt-down** on Linux" -- Great choice of keys, it's not like that is used to move around workspaces. Damn atom, why so complicated. :-\ – Daniel Aug 02 '18 at 12:29
-
1@Daniel - or if you're unfortunate to have just the right kind of *windows*, you might **flip your screen** instead! damn windows, why so stupid ;/ – Eliran Malka Nov 13 '21 at 21:45
This feature has been built-in into Atom editor (see: symbols-view
package), but you need to generate ctags symbols file for your project GH-9, GH-20.
To do that, install ctags
command (e.g. brew install ctags
on macOS), then:
Append, link or copy
ctags-config
to your~/.ctags
, example on macOS:ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
Go to your project folder and run:
cd your/project/directory ctags -R .
Restart Atom editor.
Alternatively you can use symbol-gen
package to generate ctags symbols file for your project based on the options found in .ctags
file. You can install it from Atom Package Manager by: apm install symbol-gen
. Then hit CMD-Alt-G to generate tags file for your project.
After following above, you can use Go To Declaration option from the context menu.
On macOS you can use also use the following keyboard shortcuts:
- CMD-R to jump to a function/method in the current ,editor
- Alt-CMD-Down to go to declaration.

- 155,785
- 88
- 678
- 743
To solve this, you'll need to install only 2 packages. Follow the steps below.
Open atom, go to Packages(top bar) --> Settings View --> Install Packages/Themes.
Type "goto" in the search field and click the packages button on the right.
- Install both "goto(1.8.3)" and "goto-definition(1.1.9)", or later versions. Make sure both of them are enabled after download.
- If necessary, you can restart atom (for some people).
- It should be able to work now. Right-Click on the method/attr/whatever, then select "Goto Definition"

- 51,713
- 20
- 123
- 112

- 1,210
- 14
- 13
Check out goto package:
This is a replacement for Atom’s built-in symbols-view package that uses Atom’s own syntax files to identify symbols rather than ctags. The ctags project is very useful but it is never going to keep up with all of the new Atom syntaxes that will be created as Atom grows.
Commands:
- cmd-r - Goto File Symbol
- cmd-shift-r - Goto Project Symbol
- cmd-alt-down - Goto Declaration
- Rebuild Index
- Invalidate Index
Link here: https://atom.io/packages/goto (or search "goto" in package installer)

- 39,950
- 26
- 134
- 184
For Typescript users, the "atom-typescript" package adds a typescript aware symbols view, you can trigger it with Cmd+R, and it works great to jump to methods-
https://atom.io/packages/atom-typescript#alternative-to-symbols-view

- 11,488
- 9
- 84
- 97
Use atom-ctags as a package for C language with all things you need:
- Generated ctags for your project. Auto-complete.
- Go to declaration: Ctrl+Alt+Down and Alt+Click by default.
- There are customizable options for Click action.

- 2,768
- 3
- 30
- 44

- 11
- 1
-
-
You can return, but to return you should go to somewhere first of all. After you do "Alt + Click", you can return with "Alt + Left Click" of course. And then "Alt + Right Click" to "re-return" forward. – Aleksandr Fadeev Jul 07 '17 at 16:16
-
If you try this package and then remove it remember to also re-enable symbols-view: `apm enable symbols-view`. – Pablo Bianchi Jul 29 '17 at 00:54
As of November 2018 the package autocomplete-python offers this functionality with this key combo:
Ctrl+Alt+G
with mouse cursor on the function call.

- 107
- 15