DesaKami.ID > Blog > Uncategorized >

 

Extensible / multiline config? 26 Jan 2020, 10:27 pm

I’m coming back to this thread as I’ve been further thinking about potential improvements for package settings. Maybe we can collect them here before writing a feature request or even contribute a PR to the settings-view package.

Here are some mentioned earlier and some new ones:

  • additional types
    • text areas
    • radio button groups
    • key / value pairs
    • file / folder selection (e.g. to select compilers, build folders etc.)
  • GUI
    • add / remove / edit array items (like in Visual Studio Code, see above)
    • ranges for numeric inputs with min / max value (like input type="range")
  • callback functions similar to inquirer.js
    • conditional disabling
    • conditional display (e.g. for OS-specific or interdependent settings)
    • input validation
    • filters (manipulate input prior to calling atom.config.get())
  • other
    • search filter for all settings, similar to Visual Studio Code
    • hidden settings (programmatic settings, hidden from the settings view)

Please add your ideas!

How to turn off auto-ruin feature? 26 Jan 2020, 7:14 pm

Yes of course, that is what I was proposing.

Import user defined module 26 Jan 2020, 3:44 pm

Hello Charlene.

Atom has no built-in ability to run code.
Such abilities are given by (community) packages.
Which package are you using?

Best to print the following from your code:

  • the work directory
  • the version of Python being used
    This should help to pin-point the problem.

Add this script or run it as a new script within the same directory

import sys
import os

print('Python version ............ ', sys.version)
print('Working directory ......... ', os.getcwd())
print('Directory of this file .... ', os.path.realpath(__file__))

Import user defined module 26 Jan 2020, 2:52 pm

To add on it, the module that I want to import is placed under the same folder where script is.

Build AND run Pascal scripts 26 Jan 2020, 2:49 pm

Almost two years later - facing the same problem.
I am new to programming so maybe I overlook something.
My pascal file runs in Atom but I can not see the output unless I open the file through the terminal.

Import user defined module 26 Jan 2020, 2:47 pm

Hi guys,

I am a new user to Atom and I am having issues importing self defined python modules. Errors showing module can’t be found from a temp file folder, which is not the folder which my script is in.

Could anyone suggest how to import user defined modules properly in Atom?

Thanks a ton!
Charlene

Highlight Selected Package 26 Jan 2020, 11:46 am

That’s what I understand for a highlight selected package

Single code base to run Electron in desktop and web page 26 Jan 2020, 11:33 am

I never said your URL was online. As an example I put a localhost address which means that the web app is launched on your computer.

Single code base to run Electron in desktop and web page 26 Jan 2020, 10:21 am

The desktop app needs to work offline also. Pointing to URL won’t work.

How to turn off auto-ruin feature? 26 Jan 2020, 10:20 am

Personally, I like the way it works right now. Pressing an extra-key for confirmation would feel like a slowdown. I’d rather press an extra key if I don’t want a completion to expand (like you can already do with Esc) since that happens less often. But I guess I’m simply used to this after years of using editors that do it like this (e.g. TextMate, Sublime Text). There is no best way, the best way is to have user preferences to control this kind of behaviour.

PS: the console also accepts Tab and Enter.

Syntax Suggestions No Longer Working 25 Jan 2020, 8:10 pm

Thanks for responding.
The built-in package autocomplete-plus provides much of the heavy lifting to what you described now. Deactivating this package will have the effect you described in your question. Also some settings inside autocomplete-plus may mute / limit / delay some of its actions.

There are other providers that rely on the services of autocomplete-plus.

It is good if you explore Atom in the way you have done.
It would be a good idea to note somewhere if you make a changes to configurations.
Remember that many changes are only seen when restarting Atom.
Follow the DOCS link above for the flight-manual (user manual) on Atom to understand where what is stored to make backups of a stable configuration.

Enjoy your journey.

Syntax Suggestions No Longer Working 25 Jan 2020, 7:52 pm

Not really… When Typing code in it would provide a popup list of possible keywords. That’s what I was missing.

Highlight Selected Package 25 Jan 2020, 7:44 pm

Are you inquiring on how to make a language / syntax package?

Have you searched if the one you are looking to create is already available?
Which grammar are you aiming to create?

To which grammar would you say your version would resemble most closely?..
C++, Python, Assembler or [NSFW]

Syntax Suggestions No Longer Working 25 Jan 2020, 7:39 pm

Thank you for the feedback.

Could you please make a screen capture and show me what you were originally missing?

Unable to run Python from Atom after installing new version 25 Jan 2020, 7:37 pm

The search words I used was
python path hydrogen
https://duckduckgo.com/?q=python+path+hydrogen

Some interesting results came up, though you will have to evaluate if it is helpful.
There is mention of Jupyter and its run-time configuration.
Some time ago I have used Jupyter for a few days;
I am aware of running code in the type of sandbox.
This could be the case for you - perhaps?

Consider working through the Hydrogen documentation, focusing on the Python configuration.
https://atom.io/packages/hydrogen
Else wait for some community member who is familiar with your situation
to help configure Hydrogen again.

Good luck.

Syntax Suggestions No Longer Working 25 Jan 2020, 5:40 pm

I think it messed up when I clicked on Styles? I went ahead and deleted everything then reinstalled Atom. It is working again.

Thanks

Unable to run Python from Atom after installing new version 25 Jan 2020, 4:46 pm

The command line shows version 3.8.1 is installed. I’ve been using the Hydrogen package to run Python, but wasn’t able to find any info on setting the execution path, either on Google or in the package settings (I’m still a bit new, which is probably obvious). My config file has code to set the execution path for Stata, but not for Python, and I similarly didn’t see anything in the config files for Hydrogen (although I may have missed something because there are a lot of those and I’m not sure where to look).

Syntax Suggestions No Longer Working 25 Jan 2020, 4:40 pm

I am not sure what you are talking of.
Linter / Autocomplete / something else?

Have you disabled any packages (built-in and community) recently?
Execute apm list in the command line to see which packages are installed and disabled.

Else there is a setting change or deletion of configuration file that occurred.

What do you think?

Unable to run Python from Atom after installing new version 25 Jan 2020, 4:36 pm

Additionally … there is not just one Python path in your PATH environment variable.
Which one executes if you execute python --version in the command line?

Unable to run Python from Atom after installing new version 25 Jan 2020, 4:34 pm

@rinalynne:
Please tell us which package do you use to trigger a Python script to run.
Atom at its core does not have this ability.
Without this information we are going to make assumptions that does not suit your case.

Also have a look at that package.
It may have a setting that was set for the execution path.
Else the path was hard-coded into the package (modified clone).

Also have a look at the configuration file of Atom.
The setting you are looking for may be there.

Unable to run Python from Atom after installing new version 25 Jan 2020, 4:27 pm

Like I said in my original post - the file extension is in my PATH, but Atom is still giving me an error message that it can’t find the old version (see the screenshot below).

Syntax Suggestions No Longer Working 25 Jan 2020, 2:50 pm

I started using Atom yesterday and was very pleased. Somehow I’ve managed to “turn off” the Syntax Suggestions. I’m coding in C# and this was very helpful to me.

How do I turn it back on?

Thanks

Unable to run Python from Atom after installing new version 25 Jan 2020, 9:37 am

This was asked numerous times on the forum, so please use search prior to asking.

As for your question: make sure to tick the Add Python 3.8 to PATH checkbox in the installer:

Single code base to run Electron in desktop and web page 25 Jan 2020, 8:58 am

Yes,

So recode your app in a node server app and use electron as a desktop wrapper :
Just load the url of the app :

browserWindow.loadURL("https://localhost:8080") // or whatever url is your app

And boom it works

This page processed in 2.048 seconds.

 

Atom Blog

A hackable text editor for the 21st Century

Atom 1.39 23 Jul 2019, 12:00 am

Atom 1.39 speeds up find-and-replace operations by an order of magnitude, improves loading performance for large, single-line files, and upgrades Atom to Electron 3.1. Atom 1.40 beta brings richer integration with GitHub pull requests, improved reliability for many common operations, and continued enhancements to support for numerous programming languages.

Ripgrep-based find and replace

Performing a project-wide search on a large repository just got a lot faster with a new search backend based on ripgrep. For now, ripgrep is an experimental option that can be toggled in the settings for the find-and-replace package.

Enable ripgrep via in the find-and-replace settings

We’ve been testing against repositories of various sizes, and we’re seeing searches run up to 22 times faster.

Type Num Files Time (standard) Time (ripgrep) Improvements
Small 2K 940ms 62ms 15X faster 🎉
Medium 30K 7.7s 620ms 12X faster 🎉
Large (returning 5 results) 270K 129s 5.9s 22X faster 🎉
Large (returning 26k results) 270K 142s 17.5s 8X faster 🎉

Upgrade to Electron 3.1

Atom now runs on Electron 3.1, which advances our underlying browser implementation from Chrome 61 to Chrome 66 and gives packages access to new browser features, including native support for async iterators and generators.

Improved performance loading large single-line files

In the past, loading multi-megabyte files containing a single line has caused performance problems for Atom. In 1.39, these kinds of files now load about 75 times faster than they did previously.

Improved JSX support in TypeScript

JSX expressions in .tsx files are now supported by the ide-typescript package. In addition, you can now provide type arguments in JSX expressions without confusing Atom’s syntax highlighting.

Community contribution highlights

We’re thankful for the community contributors that help Atom get better on each release. 💟

As usual, @50wliu makes a strong showing with multiple pull requests. He helped us fix apm installation issues on Linux, improved our approach to deserializing workspace items added by packages, and added the ability to hold ctrl/cmd when dragging to copy items in the tree view. He also contributed a few other PRs that were less visible but equally important. See the release notes for details.

Long-time contributor @Ben3eee continued his refinement of language support in Atom with a PR to improve the styling of strings in the Tree-sitter C grammar and added support for Tree-sitter to our JSON language package.

Also on the Tree-sitter front, @Caleb531 improved the handling of *args and **kwargs in our Python grammar.

There are many more details in the release notes.

Atom 1.40 Beta

See the status of pull request checks right inside Atom

When you’re working on a repository that has build statuses reported through the Checks API, you’ll now see the overall build status in the GitHub tab, and you can see the status of each individual check in the detail view for the pull request.

Status of Checks inside Atom

And speaking of pull requests, you can now edit pull request review comments and summaries directly within Atom as well.

Enjoy enhanced reliability

Atom 1.40 beta brings a more reliable experience across numerous common operations. When updating Atom, the “restart and install” operation provides more dependable behavior. Atom no longer stalls when opening a branch for a pull request that has a large patch (more than 1 megabyte). And the GitHub package now gracefully detects a loss of network connectivity and attempts to reconnect when the network becomes available again.

Experience improved language support

This release continues the march toward a rich and robust syntax highlighting experience for the many programming languages that Atom supports out-of-the-box. Among the improvements in Atom 1.40 beta are:

Check out many more improvements and bug fixes in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Introducing Atom Nightly Releases 21 Jun 2019, 12:00 am

Atom Nightly

Today we’re excited to introduce Atom Nightly releases! This new release channel gives you access to Atom’s latest feature improvements and bug fixes each day as they are merged into our master branch. If you want to have an influence on the future of Atom, this release channel is for you.

Atom Release Channels

Atom has been producing stable and beta releases at a monthly cadence since late 2015, enabling the team to introduce new features to the beta channel without disrupting users of the stable channel. Each month we ship the latest changes in Atom’s master branch into our new beta release and then roll the previous beta changes into the new stable release:

Diagram 1

We’ve found that while this release model certainly helps protect Atom Stable users from regressions, it slows down the pace at which we’re able to get feedback on new features and bug fixes as they’re being implemented. Thus, we created the Atom Nightly channel to enable a much tighter feedback loop with our most intrepid early adopters.

Diagram 2

Why Use Atom Nightly?

In the past if a user wanted to try daily improvements to Atom, they had to clone the Atom repository and run a full product build. Building Atom takes time and requires a number of development prerequisites, making this a poor experience if you merely want to try out new features. Some users figured out how to download Atom’s developer builds but there was never a way to update them without installing a newer build manually. Atom Nightly removes this friction by providing an official release channel that gets updated any day there have been changes on master.

If you’re an Atom Beta user, you’re likely using it because you want access to improvements earlier than they appear in Atom Stable releases. If this sounds like you, you’ll love Atom Nightly even more:

  • You’ll get to try the latest Atom improvements every day
  • Your feedback will support the daily efforts of the Atom maintainers

Caveats

You should be aware of a few limitations that impact the new nightly channel:

  • On Linux, Atom (Stable, Beta and Nightly) does not support automatic updates. Please, use the official debian or rpm repositories to manually update Atom when new releases come out.
  • On Windows, installing Atom Nightly and Atom Stable/Beta side-by-side is not currently supported.

Try it out Today

We hope you’ll consider trying the Atom Nightly channel. Any time you spend using Nightly releases will be greatly beneficial to Atom’s continued improvement. Since this is a bleeding-edge release it’s likely that you will hit the occasional bug, so please file an issue for anything that you come across.

Thanks again for all of your support of Atom :heart:

Atom 1.38 11 Jun 2019, 12:00 am

Atom 1.38 includes some improvements to the GitHub package and improvements to JS, ERB, Python, and JSON language support. Atom 1.39 beta includes a new ripgrep-based project search backend, an upgrade to Electron 3.1, and much improved loading times for multi-megabyte files containing only a single line of text.

Github package improvements

  • Now Atom displays an “edited” label next to a pull request comment if it has been edited.
  • User badges (like “First time contributor” or “Collaborator”) are shown next to the authors on PRs and review comments to encourage people to be kind to new folks.
  • Resolved comments are grouped together to make the pull request conversation easier to read.

Improvements to JS, ERB, and Python language grammars

A few fixes have been added to the language parsers/syntax highlighter. Now Atom allows folding the default label of switch statements in JS, it improves the handling of comment characters in ERB and it fixes an issue when folding if statements in Python.

Tree-sitter parsing support for JSON

Syntax highlighting performance on JSON files is now substantially improved thanks to Atom now using Tree-sitter to syntax highlight JSON files by default. Syntax-based folding and selection while editing JSON are another nice benefit of the switch to Tree-sitter.

There are many more details in the release notes.

Atom 1.39 Beta

Ripgrep based find and replace

Performing a project-wide search on a large repository just got a lot faster with a new search backend based on ripgrep. For now, ripgrep is an experimental option that can be toggled in the settings for the find-and-replace package.

Here are some results from our testing against repositories of various sizes. We’re seeing searches run up to 22 times faster.

Type Num Files Time (standard) Time (ripgrep) Improvements
Small 2K 940ms 62ms 15X faster 🎉
Medium 30K 7.7s 620ms 12X faster 🎉
Large (returning 5 results) 270K 129s 5.9s 22X faster 🎉
Large (returning 26k results) 270K 142s 17.5s 8X faster 🎉

Upgrade to Electron 3.1

Atom now runs on Electron 3.1, which advances our underlying browser implementation from Chrome 61 to Chrome 66 and gives packages access to new browser features, including native support for async iterators and generators.

Improved performance loading large single-line files

In the past, loading multi-megabyte files containing a single line has caused performance problems for Atom. In 1.39, these kinds of files now load about 75 times faster than they did previously.

Improved JSX support in TypeScript

JSX expressions in .tsx files are now supported by the ide-typescript package when Tree-sitter is enabled. In addition, you can now provide type arguments in JSX expressions without confusing Atom’s syntax highlighting.

Community Contribution Highlights

We’re thankful for the community contributors that help Atom get better on each release. These are some of them:

As usual, @50wliu makes a strong showing with multiple pull requests. He helped us fix apm installation issues on Linux, improved our approach to deserializing workspace items added by packages, and added the ability to hold ctrl/cmd when dragging to copy items in the tree view. He also contributed a few other PRs that were less visible but equally important. See the release notes for details.

Long-time contributor @Ben3eee continued his refinement of language support in Atom with a PR to improve the styling of strings in the Tree-sitter C grammar and added support for Tree-sitter to our JSON language package.

Also on the Tree-sitter front, @Caleb531 improved the handling of *args and **kwargs in our Python grammar.

Check out many more improvements and bug fixes in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Atom 1.37 12 May 2019, 12:00 am

Atom 1.37 has shipped! This version introduces a complete flow for handling review comments you’ve received on a pull request and an experimental faster mode in fuzzy finder that dramatically improves its performance.

In-editor pull request review comments

Pull request review comments in the GitHub package

Responding to review comments that a reviewer has left on a pull request you’ve submitted can be cumbersome. You need to cross-reference lines back and forth between GitHub and your editor, using the diff context and line numbers to find the place where the comment was made.

Now, to reduce the amount of mental context switching you need to do, we show reviews and review comments right in your favorite editor :tada: To open the all-new reviews tab, click on the “see reviews” button in the GitHub tab while you’re on a branch associated with a pull request, or click “see reviews” in the footer of a pull request detail view.

see reviews footer button

With the reviews tab open, expand any review comment thread to read how awesome your code is. Click “Jump To File” to open or focus an editor and scroll to that line, or click “open diff” to scroll to the commented line on the diff in the pull request detail view. We’ll automatically account for any changes you’ve made locally but haven’t pushed yet.

While you’re in an editor, any lines that have been commented on are highlighted. Click on the comment icon in the left gutter to jump back to that comment in the review tab.

jump to file

Beneath the comment thread in the reviews tab, you can respond to the thread directly with the provided text box to keep the conversation going, or react with a reaction emoji. When you’re satisfied that you’ve addressed the feedback from a specific comment thread, click “Resolve conversation” to mark the thread as resolved. To help you keep track of your progress through review feedback, resolved comment threads will be greyed out and counted in a progress bar at the top of the tab.

reply and resolve

Get the bar green, get those green checks, and get your code shipped! :rocket: :rocket: :rocket:

Dramatic fuzzy-finder performance boost

The fuzzy finder’s project crawling performance has been improved dramatically by switching to a ripgrep-powered backend.

Similarly, the filtering performance has been drastically improved. This means that results will show much faster while typing on the fuzzy finder.

These two improvements are most noticeable in projects with large numbers of files - for example, we measured a 14x speed boost in the crawling performance on a project with 270K files.

Since these changes cause some slightly different results, we’ve placed them behind a configuration option for now while we work out any unexpected kinks in the transition. When you open a project with a large amount of files you’ll see a prompt to enable it:

fuzzy finder prompt

Authenticate and encrypt communications over Atom’s activation socket

While it’s launching, Atom uses a UNIX domain socket (on macOS and Linux) or a named pipe (on Windows) to determine if an existing main process is hanging around to open a window for you before starting a new one. Now, all communication that occurs through that channel is authenticated and encrypted to keep other people with access to your machine from reading or interfering with those messages.

As a related change, the --socket-path command-line argument has been removed, although it doesn’t look like it was used outside of internal testing.

Language package improvements

The bundled language packages have another set of goodies in the pipeline in beta as well:

And more

Don’t forget to check out all the other improvements shipping with Atom 1.37 in the release notes! :memo:

Atom Beta

Atom 1.38 Beta

Atom 1.38 beta includes some improvements on the GitHub package and a few fixes on the language parsers.

Github package improvements

  • Now Atom displays an “edited” label next to a pull request comment if it has been edited.
  • User badges (like “First time contributor” or “Collaborator”) are shown next to the authors on PRs and review comments to encourage people to be kind to new folks.
  • Resolved comments are grouped together to make the pull request conversation easier to read.

Fixes when handling some languages

A few fixes have been added to the language parsers/syntax highlighter. Now Atom allows folding the default label in switch statements, it improves the handling of comment characters in ERB and it fixes an issue when folding if statements in Python.

Community Contribution Highlights

We’re thankful for the community contributors that help Atom get better on each release. These are some of them:

There are many more details in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Atom 1.36 9 Apr 2019, 12:00 am

Atom 1.36 has shipped! Upgrade today to open single files in large directories much faster, see pull request review comments from GitHub, specify multiple wrap guides at once, and more.

Open a single file without its parent directory

Have you ever wanted to make a quick edit to a single file in your home directory, only to have Atom dutifully process and index all of your files?

When a root directory is added to your open project, we do a bunch of work to understand its contents, watching for relevant filesystem changes and populating the tree view. Previously, when you opened Atom on a single file, we automatically added its containing directory as a root directory. This was good for restoring persisted session state, but had the unfortunate consequence of slowing things to a crawl when that directory was a large one. Now we only open the file you’ve asked us to, which we can do much more quickly.

Happy dotfile editing! :sparkles:

Fuzzy Finder Performance

Once upon a time, there was a noticeable lag between when you opened Atom with a large repository and when you could use the fuzzy finder to actually open files. Thanks to some smart detective work, fuzzy finder performance is now much improved! This release shaves a whopping 40% off the time it takes to index files in medium and large repositories.

Pull request review comments and large diff detection in the GitHub package

The GitHub package allows you to read review comments left on pull requests without leaving the comfort of your editor. Open the “files changed” tab of a pull request detail view to check it out.

We’ve been researching and iterating and refining on this one heavily in the past few months. Peek ahead at the beta release notes below to see where we’ve taken the review experience next :eyes:

pull requests comments

You can also collapse and expand any files within diff views that show diffs from multiple files, such as commit preview and the pull request files view. Large files are collapsed by default, because you probably don’t need to see those 800 lines of package-lock.json changes in such great detail. (And if you do, just expand them!)

Keyboard shortcuts for finding text now work within the diff view. That’ll make it easier to remove all those forgotten console.log() statements you were about to commit.

find text

On a related note, if you write a package that embeds a TextEditor within a custom workspace item, you too can wire it up to integrate with find-and-replace by implementing the getEmbeddedTextEditor() or observeEmbeddedTextEditors() methods on your item.

Auto-updater improvements for Windows and macOS

We’ve taken care of some rough edges that had accumulated in our auto-updater logic. On Windows, if the core.automaticallyUpdate setting was set to false, Atom would incorrectly tell you that you couldn’t manually upgrade from the “About” pane. Meanwhile, on macOS, clicking “restart and install update” would close Atom but not properly re-launch as the new version. Both of these have been fixed.

Multiple wrap guides

Hat tip to @lexicalunit for this one: you may now configure multiple wrap guide columns. This can be useful if you want to give yourself a “soft limit” to let yourself know you should be wrapping up that line soon.

To turn it on, edit your config.cson file to include the array of guide columns:

'wrap-guide':
  'columns': [72, 80, 100, 120]

Language package improvements

We have a host of improvements to bundled language packages in this release:

Isolated Atom environment for Jasmine tests

Package authors take note! Previously, if your package used the default Jasmine test runner, the Atom environment used by your tests would activate any packages that you happened to have installed locally. This could cause your tests to unexpectedly fail if there were any problems with your other packages, or, worse, to silently depend on something that was changed by a different package. We now further isolate the Atom environment to keep things nice and reproducible.

If your tests do depend on another package being activated, set the APM_TEST_PACKAGES environment variable to a space-separated list of package names and they will be available to your tests. Conveniently, this is the same way that atom/ci allows you to specify package dependencies.

And more

Don’t forget to check out all the other improvements shipping with Atom 1.36 in the release notes! :memo:

Atom Beta

Atom 1.37 Beta

Atom 1.37 beta introduces a complete flow for handling review comments you’ve received on a pull request.

In-editor pull request review comments

Pull request review comments in the GitHub package

Responding to review comments that a reviewer has left on a pull request you’ve submitted can be cumbersome. You need to cross-reference lines back and forth between GitHub and your editor, using the diff context and line numbers to find the place where the comment was made.

Now, to reduce the amount of mental context switching you need to do, we show reviews and review comments right in your favorite editor :tada: To open the all-new reviews tab, click on the “see reviews” button in the GitHub tab while you’re on a branch associated with a pull request, or click “see reviews” in the footer of a pull request detail view.

see reviews footer button

With the reviews tab open, expand any review comment thread to read how awesome your code is. Click “Jump To File” to open or focus an editor and scroll to that line, or click “open diff” to scroll to the commented line on the diff in the pull request detail view. We’ll automatically account for any changes you’ve made locally but haven’t pushed yet.

While you’re in an editor, any lines that have been commented on are highlighted. Click on the comment icon in the left gutter to jump back to that comment in the review tab.

jump to file

Beneath the comment thread in the reviews tab, you can respond to the thread directly with the provided text box to keep the conversation going, or react with a reaction emoji. When you’re satisfied that you’ve addressed the feedback from a specific comment thread, click “Resolve conversation” to mark the thread as resolved. To help you keep track of your progress through review feedback, resolved comment threads will be greyed out and counted in a progress bar at the top of the tab.

reply and resolve

Get the bar green, get those green checks, and get your code shipped! :rocket: :rocket: :rocket:

Dramatic fuzzy-finder performance boost

The fuzzy finder’s project crawling performance has been improved dramatically by switching to a ripgrep-powered backend. This is most noticeable in projects with large numbers of files - for example, we measured a 14x speed boost in a project with 270K files.

The ripgrep-powered search returns somewhat different results, so we’ve placed it behind a configuration option for now while we work out any unexpected kinks in the transition. To turn it on, open the fuzzy-finder package settings in your Settings view and enable the “Use Rip Grep” option.

ripgrep option

Authenticate and encrypt communications over Atom’s activation socket

While it’s launching, Atom uses a UNIX domain socket (on macOS and Linux) or a named pipe (on Windows) to determine if an existing main process is hanging around to open a window for you before starting a new one. Now, all communication that occurs through that channel is authenticated and encrypted to keep other people with access to your machine from reading or interfering with those messages.

As a related change, the --socket-path command-line argument has been removed, although it doesn’t look like it was used outside of internal testing.

Language package improvements

The bundled language packages have another set of goodies in the pipeline in beta as well:

There are many more details in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Atom 1.35 12 Mar 2019, 12:00 am

With Atom 1.35 comes a fix for the recent Chrome vulnerability, ability to view the full diff for pull requests directly within Atom, and a variety of enhancements and stability improvements.

Chrome Vulnerability Fix

You might have heard about a high-severity vulnerability in Chrome, involving remote code execution. Electron has published a fix, which we have pulled into Atom. Be diligent about upgrading any other apps you run that are powered by Chromium.

Commit Details

Have you ever committed some changes, had a brain fart, and then thought to yourself “what the heck did I just write?” :scream: Worry not — now you can more easily perform code archaeology in the comfort of your editor. The GitHub package now supports viewing the contents of any commit in a pane. To try it out, you can either click on a commit in the “Recent Commits” view, or you can use the command palette (github:open-commit) and input the SHA of any commit in the current repository. Good news for keyboard users, too: the recent commits view now supports keyboard navigation.

commit-details

Pull Request Diffs

The GitHub pull request view has a new tab that shows all files changed in that pull request. It allows users to view pull requests diffs without context switching to GitHub.com, and brings us one step closer to code review in the editor.

changed-files

Community Contribution Highlights

Shout out to contributor @karevn for making it so that File -> Open works even if there are no open Atom windows.

Do you love trying to log in when you can’t see what you’re typing? Neither do we! Props to community contributor @ericcornelissen for adding the ability to show and hide password text in the SSH password field.

There are many more details in the release notes.

Don’t forget to check out all the other improvements shipping with Atom 1.35 in the release notes! :memo:

Atom Beta

Atom 1.36 Beta

Atom 1.36 gives you a faster fuzzy finder, comments in the GitHub pull request view, and a smoother Atom upgrade process on macOS and Windows.

Fuzzy Finder Performance

Once upon a time, there was a noticeable lag between when you opened Atom with a large repository, and when you could use the fuzzy finder to actually open files. Thanks to some smart detective work, fuzzy finder performance is now much improved! This release shaves a whopping 40% off the time it takes to index files in medium and large repositories.

Smoother Atom Upgrades

We have heard from users that Atom updates can be a headache, and we are listening. Now, Atom users on macOS will no longer have to restart Atom twice during the update process. For our Windows users, we’ve fixed an unfortunate regression that caused Atom to believe it couldn’t automatically update on Windows while core.automaticallyUpdate was set to false.

GitHub Package Improvements

The GitHub package now allows you to read comments on pull requests without leaving the comfort of your editor. You can also collapse and expand any files within multi-file diff views (such as commit preview and the pull request files view). Large files are collapsed by default, because you probably don’t need to see those 800 lines of package-lock.json changes in such great detail. (And if you do, just expand them!)

pull requests comments

Also, keyboard shortcuts for finding text now work within the diff view. That’ll make it easier to remove all those forgotten console.log() statements you were about to commit.

find text

Community Contribution Highlights

Get ready for some love to the settings view from longtime maintainers. Thanks to @arcanemagus, settings view now uses the repository URL defined by atom.io, preventing potential author impersonation issues. Single quotes are now escaped correctly in CSON files thanks to @aerijo, so go forth and copy paste from your snippets file.

Sometimes, better empty states fill the emptiness inside. All jokes aside, props to first time contributor @robertrossmann for polishing the remote selector and no remove views.

Writing code isn’t the only way to contribute to Atom. Bug reports are also a crucial component of a healthy open source project. Props to @issacgerges for reporting a problem with the keybinding resolver incorrectly resolving non-Latin characters, which we were able to fix in this release.

There are many more details in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Atom 1.34 8 Jan 2019, 12:00 am

Atom 1.34 is out! With this release, you’ll enjoy a host of enhancements to help you craft the perfect commit, including a faster diff view, the ability to preview all staged changes, and support for commit message templates.

Commit Previews

Are you the conscientious sort, who loves to double check the specific changes that are going into each commit? When crafting commit messages, do you have a desire to draw inspiration from the diff of your staged changes? If so, you’re going to love the commit preview feature. Just click the “See All Staged Changes” button above the commit message box, and you’ll see all of your staged changes in a single pane.

commit preview

Improved Diffs

Calling performance enthusiasts: the GitHub package now renders diff views with a TextEditor. TextEditor offers many performance enhancements, allowing us to render large diffs faster. Furthermore, your text editor key bindings now work in diffs.

Commit Message Templates

Thanks to community contributor @gauravchl, Atom now supports commit message templates. You can add a template on a per-project basis or globally through your git configuration. The template text will then appear in the commit input box within Atom.

Community Contribution Highlights

When editing markdown code blocks, the Kotlin language now has syntax highlighting. Thanks @radixdev for your first-time contribution to Atom.

Long time volunteer maintainer @50Wliu fixed a nasty bug where package searches from the settings view were throwing uncaught exceptions.

Thanks to first-time contributor @edahlseng, you can now collapse all directories in the tree view even if nothing is selected.

Don’t forget to check out all the other improvements shipping with Atom 1.34 in the release notes! :memo:

Atom Beta

Atom 1.35 Beta

With Atom 1.35 Beta comes quick access to details for recent commits, ability to view the full diff for pull requests directly within Atom, and a variety of enhancements and stability improvements.

Commit Details

Have you ever committed some changes, had a brain fart, and then thought to yourself “what the heck did I just write?” :scream: Worry not — now you can more easily perform code archaeology in the comfort of your editor. The GitHub package now supports viewing the contents of any commit in a pane. To try it out, you can either click on a commit in the “Recent Commits” view, or you can use the command palette (github:open-commit) and input the SHA of any commit in the current repository. Good news for keyboard users, too: the recent commits view now supports keyboard navigation.

commit-details

Pull Request Diffs

The GitHub pull request view has a new tab that shows all files changed in that pull request. It allows users to view pull requests diffs without context switching to GitHub.com, and brings us one step closer to code review in the editor.

changed-files

Community Contribution Highlights

Do you love trying to log in when you can’t see what you’re typing? Neither do we! Props to community contributor @ericcornelissen for adding the ability to show and hide password text in the SSH password field.

There are many more details in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Facebook retires Nuclide extension 12 Dec 2018, 12:00 am

At this time, Facebook has decided to retire their open source efforts on Nuclide, the Atom-IDE, and other associated repos.

As the hackable text editor, Atom has always been a place where individuals or teams can create interesting packages that help customize and tailor a developer’s workflow. Atom has shown this level of flexibility and extensibility by being the platform where contributors can build on top of the editor, ranging from robust IDEs to simple keyboard shortcuts. The packages have proved to be incredibly powerful and can change everything from the look and feel of the entire interface, to the basic operation of core functionality.

A few years ago, Facebook introduced Nuclide to provide a first-class IDE experience which included associated repos such as Atom IDE. Both Nuclide and Atom IDE were developed by Facebook and supported by an open source community. At this time, Facebook has decided to retire their open source efforts on Nuclide, the Atom IDE, and other associated repos. All of the source code will remain available in the Facebook Open Source Archives, and, if you’re interested, we encourage you to check it out and continue to build on top of it. More details at Nuclide.io.

GitHub remains committed to developing and supporting Atom. We understand that while languages change and careers progress, choosing an editor to grow with is one of the most personal decisions a developer makes. Atom is home to many developers, and we look forward to continuing to make enhancements and build with the community.

Thanks for reading, and for being a part of the Atom community!

Atom 1.33 28 Nov 2018, 12:00 am

Atom 1.33 is out! With this release, you’ll enjoy built-in Rust support, improved discoverability for Git and GitHub functionality, and faster performance for bracket matching.

Built-in Rust Support

rust support

Atom now features built-in support for the Rust programming language, using the new Tree-sitter parsing system. Thanks to a Tree-sitter Rust parser initially created by @MaximSokolov, Rust programmers should see more consistent highlighting of things like types and struct fields, as well as more reliable code folding.

GitHub Package

If you like commits, you’re in luck – the pull request detail view now shows a list of commit details. The Undo Discard button now lives behind a context menu, which should help prevent pesky accidental clicks. We’ve increased metrics instrumentation to better understand user interactions. Also, the status bar has new Git and GitHub icons, to (hopefully!) improve discoverability.

open git and github from the status-bar

Shout out to our first-time community contributors @mimidumpling and @colinschindler for their contributions, which make the GitHub package more polished.

Soft Wrapping Improvements

Previously, Atom only wrapped lines at whitespace boundaries. This meant that long character sequences like URLs would often be wrapped abruptly. Now, thanks to @ariasuni, we also soft-wrap after - and / characters, which makes URLs more readable, and matches the behavior of most other programs.

Ability to Disable Snippets

A lot of language packages provide handy snippets, which is great. But sometimes you might want to disable them. Thanks to @savetheclocktower and @Ben3eeE, you can now do so:

  1. Open a language package’s settings.
  2. Scroll down until you see the “Snippets” section
  3. Click on the “Enable” checkbox

disable snippets

Now that the default snippets are disabled, you’re free to create your own snippets.

Performance Improvements - Bracket Matching

When you move your cursor over a bracket character like ( or {, or an HTML tag, Atom highlights the matching bracket or tag. This was previously done using a regex search, which was slow in the case of widely-spaced brackets. This caused lags when moving the cursor over certain characters.

Now, for supported languages, Atom finds the matching brackets and tags using the syntax trees provided by Tree-sitter. This eliminates any lag due to bracket matching!

Don’t forget to check out all the other improvements shipping with Atom 1.33 in the release notes! :memo:

Atom Beta

Atom 1.34 Beta

With Atom 1.34 Beta comes diff rendering improvements, commit preview functionality, and an upgrade to Electron 2.0.14.

GitHub Package

Calling performance enthusiasts: the GitHub package now renders diff views with a TextEditor. TextEditor offers many performance enhancements, allowing us to render large diffs faster. Furthermore, your text editor key bindings now work in diffs.

Are you the conscientious sort, who loves to double check the specific changes that are going into each commit? When crafting commit messages do you have a desire to draw inspiration from the diff of your staged changes? If so, you’re going to love the commit preview feature. Just click the “See All Staged Changes” button above the commit message box, and you’ll see all of your staged changes in a single pane.

commit preview

Thanks to community contributor @gauravchl, Atom now supports commit message templates. You can add a template on a per-project basis or globally through your git configuration. The template text will then appear in the commit input box within Atom.

Community Contribution Highlights

When editing markdown code blocks, the Kotlin language now has syntax highlighting. Thanks @radixdev for your first-time contribution to Atom.

Long time volunteer maintainer @50Wliu fixed a nasty bug where package searches from the settings view were throwing uncaught exceptions.

Thanks to first-time contributor @edahlseng, you can now collapse all directories in tree view even if nothing is selected.

Electron 2.0.14 Upgrade

Atom is now running latest stable version of the Electron 2.x branch. This update fixes some crashes that were happening on macOS, along with some other improvements. Keeping Electron up to date makes future upgrades less painful. See Electron’s release notes for additional details.

There are many more details in the release notes.

Get all these improvements today by joining the Atom Beta Channel!

Usability Interviews for Atom 14 Nov 2018, 12:00 am

We want to make Atom better, and we need your help. We’ve started conducting usability interviews where we can get direct feedback from humans about how they work and how what we build affects that workflow.

Users Giving Feedback

We’ve been running usability interviews on other client applications such as GitHub Desktop and the editor integration with Visual Studio to get a better understanding of who uses our products, what their goals are, and how they use our tools to accomplish those goals. Our users have been able to walk us through workflows related to pull requests, branching, and solving build errors and folks have been able to give us feedback to influence our designs and products for the better!

Users have been able to give us ideas, concerns, and insight on our client application products (e.g. editor integrations), GitHub.com features (e.g. forking a public repository flow), and even on 3rd party applications (e.g. VS Code). These conversations help us scope what parts of your workflow are most clunky, and explore ways of improving it.

What to Expect

After you sign up for our usability interview we will reach out when the next available study has availability. You will then get a chance to sign up for a time that works best for your schedule. You can expect to receive a confirmation email ~24-hours before the interview is scheduled.

Our usability interviews are typically done remotely over video conference software and are often between 30-60 minutes (we will let you know ahead of time what amount of time to expect). We will often ask you a couple of questions about your typical work environment, the type of team you work on, and the way you collaborate with your team. This helps us understand who we are building our software for.

We will then often lead you through a scenario where we might give you a goal, such as “Merge That Pull Request!!” We’ll ask you to walk us through your thought process and what steps you would take to accomplish that goal. This part is a conversation, where we might ask clarifying questions to better understand any blockers you encounter.

Afterwards, we will follow up with an email thanking you and asking if you’d like to participate in any future usability interviews.

How to Get Involved

If you’re interested in giving us feedback to improve Atom, there are three ways you can help.

We’re doing some research to learn where Atom could provide a more helpful experience for people that are just getting started. If you are new to coding, we’d love to hear from you. Sign up for an interview here.

We are also conducting interviews focused on the Git / GitHub Atom integration. Our primary goal is to provide developers with an effective workflow from writing code in their editor to merging their pull request on GitHub.com. Participants of all experience levels are welcome - sign up today.

Usability interviews aren’t the only way we are learning from our users. Atom team is also running a separate initiative to improve our application’s performance. We’re conducting a survey, so we can focus our efforts on the biggest pain points the community is experiencing. You can fill it out here.

This page processed in 0.993 seconds.

Leave a Reply

Your email address will not be published. Required fields are marked *