Merge remote-tracking branch 'origin/rebrand' into rebrand-and-bump-electron-to-12

This commit is contained in:
Maurício Szabo 2022-09-11 11:50:31 -03:00
commit 68d48d5872
125 changed files with 461 additions and 439 deletions

View File

@ -21,8 +21,8 @@ RUN apt-get update && \
npm && \
rm -rf /var/lib/apt/lists/*
# Update npm and dependencies
RUN npm install -g npm --loglevel error
COPY . /pulsar
WORKDIR /pulsar
# Use python2 by default
RUN npm config set python /usr/bin/python2 -g

View File

@ -2,4 +2,4 @@
On this directory, we can include things that we found out how they work, and how do we want to handle that in the future
- [Tree Sitter](tree-sitter.md), the tokenizer for the Atom Text Editor
- [Tree Sitter](tree-sitter.md), the tokenizer for the Pulsar Text Editor

2
dot-atom/.gitignore vendored
View File

@ -5,4 +5,4 @@ storage
.apm
.node-gyp
.npm
.atom-socket-secret-*
.pulsar-socket-secret-*

View File

@ -1,6 +1,6 @@
# Your init script
#
# Atom will evaluate this file each time a new window is opened. It is run
# Pulsar will evaluate this file each time a new window is opened. It is run
# after packages are loaded/activated and after the previous editor state
# has been restored.
#

View File

@ -1,14 +1,14 @@
# Your keymap
#
# Atom keymaps work similarly to style sheets. Just as style sheets use
# selectors to apply styles to elements, Atom keymaps use selectors to associate
# Pulsar keymaps work similarly to style sheets. Just as style sheets use
# selectors to apply styles to elements, Pulsar keymaps use selectors to associate
# keystrokes with events in specific contexts. Unlike style sheets however,
# each selector can only be declared once.
#
# You can create a new keybinding in this file by typing "key" and then hitting
# tab.
#
# Here's an example taken from Atom's built-in keymap:
# Here's an example taken from Pulsar's built-in keymap:
#
# 'atom-text-editor':
# 'enter': 'editor:newline'
@ -28,5 +28,5 @@
#
# This file uses CoffeeScript Object Notation (CSON).
# If you are unfamiliar with CSON, you can read more about it in the
# Atom Flight Manual:
# Pulsar Flight Manual:
# http://flight-manual.atom.io/using-atom/sections/basic-customization/#configuring-with-cson

View File

@ -1,6 +1,6 @@
# Your snippets
#
# Atom snippets allow you to enter a simple prefix in the editor and hit tab to
# Pulsar snippets allow you to enter a simple prefix in the editor and hit tab to
# expand the prefix into a larger code block with templated values.
#
# You can create a new snippet in this file by typing "snip" and then hitting
@ -17,5 +17,5 @@
#
# This file uses CoffeeScript Object Notation (CSON).
# If you are unfamiliar with CSON, you can read more about it in the
# Atom Flight Manual:
# Pulsar Flight Manual:
# http://flight-manual.atom.io/using-atom/sections/basic-customization/#_cson

View File

@ -6,7 +6,7 @@
'shift-end': 'editor:select-to-end-of-line'
'atom-text-editor:not([mini])':
# Atom Specific
# Pulsar Specific
'ctrl-shift-c': 'editor:copy-path'
'alt-up': 'editor:select-larger-syntax-node'
'alt-down': 'editor:select-smaller-syntax-node'

View File

@ -17,7 +17,7 @@
'ctrl-h': 'core:backspace'
'ctrl-d': 'core:delete'
# Atom Specific
# Pulsar Specific
'enter': 'core:confirm'
'escape': 'core:cancel'
'up': 'core:move-up'
@ -83,12 +83,12 @@
'cmd--': 'window:decrease-font-size'
'cmd-0': 'window:reset-font-size'
'cmd-k up': 'pane:split-up-and-copy-active-item' # Atom Specific
'cmd-k down': 'pane:split-down-and-copy-active-item' # Atom Specific
'cmd-k left': 'pane:split-left-and-copy-active-item' # Atom Specific
'cmd-k right': 'pane:split-right-and-copy-active-item' # Atom Specific
'cmd-k cmd-w': 'pane:close' # Atom Specific
'cmd-k alt-cmd-w': 'pane:close-other-items' # Atom Specific
'cmd-k up': 'pane:split-up-and-copy-active-item' # Pulsar Specific
'cmd-k down': 'pane:split-down-and-copy-active-item' # Pulsar Specific
'cmd-k left': 'pane:split-left-and-copy-active-item' # Pulsar Specific
'cmd-k right': 'pane:split-right-and-copy-active-item' # Pulsar Specific
'cmd-k cmd-w': 'pane:close' # Pulsar Specific
'cmd-k alt-cmd-w': 'pane:close-other-items' # Pulsar Specific
'cmd-k cmd-p': 'window:focus-previous-pane'
'cmd-k cmd-n': 'window:focus-next-pane'
'cmd-k cmd-up': 'window:focus-pane-above'
@ -128,7 +128,7 @@
'ctrl-e': 'editor:move-to-end-of-line'
'ctrl-k': 'editor:cut-to-end-of-line'
# Atom Specific
# Pulsar Specific
'ctrl-shift-w': 'editor:select-word'
'cmd-ctrl-left': 'editor:move-selection-left'
'cmd-ctrl-right': 'editor:move-selection-right'
@ -163,7 +163,7 @@
'ctrl-alt-delete': 'editor:delete-to-end-of-subword'
'atom-workspace atom-text-editor:not([mini])':
# Atom specific
# Pulsar specific
'alt-cmd-z': 'editor:checkout-head-revision'
'cmd-<': 'editor:scroll-to-cursor'
'alt-cmd-ctrl-f': 'editor:fold-selection'
@ -186,8 +186,8 @@
'cmd-alt-[': 'editor:fold-current-row'
'cmd-alt-]': 'editor:unfold-current-row'
'cmd-alt-{': 'editor:fold-all' # Atom Specific
'cmd-alt-}': 'editor:unfold-all' # Atom Specific
'cmd-alt-{': 'editor:fold-all' # Pulsar Specific
'cmd-alt-}': 'editor:unfold-all' # Pulsar Specific
'cmd-k cmd-0': 'editor:unfold-all'
'cmd-k cmd-1': 'editor:fold-at-indent-level-1'
'cmd-k cmd-2': 'editor:fold-at-indent-level-2'

View File

@ -1,5 +1,5 @@
'body':
# Atom Specific
# Pulsar Specific
'enter': 'core:confirm'
'escape': 'core:cancel'
'up': 'core:move-up'
@ -65,12 +65,12 @@
'ctrl-_': 'window:decrease-font-size'
'ctrl-0': 'window:reset-font-size'
'ctrl-k up': 'pane:split-up-and-copy-active-item' # Atom Specific
'ctrl-k down': 'pane:split-down-and-copy-active-item' # Atom Specific
'ctrl-k left': 'pane:split-left-and-copy-active-item' # Atom Specific
'ctrl-k right': 'pane:split-right-and-copy-active-item' # Atom Specific
'ctrl-k ctrl-w': 'pane:close' # Atom Specific
'ctrl-k ctrl-alt-w': 'pane:close-other-items' # Atom Specific
'ctrl-k up': 'pane:split-up-and-copy-active-item' # Pulsar Specific
'ctrl-k down': 'pane:split-down-and-copy-active-item' # Pulsar Specific
'ctrl-k left': 'pane:split-left-and-copy-active-item' # Pulsar Specific
'ctrl-k right': 'pane:split-right-and-copy-active-item' # Pulsar Specific
'ctrl-k ctrl-w': 'pane:close' # Pulsar Specific
'ctrl-k ctrl-alt-w': 'pane:close-other-items' # Pulsar Specific
'ctrl-k ctrl-p': 'window:focus-previous-pane'
'ctrl-k ctrl-n': 'window:focus-next-pane'
'ctrl-k ctrl-up': 'window:focus-pane-above'
@ -114,7 +114,7 @@
'ctrl-l': 'editor:select-line'
'atom-workspace atom-text-editor:not([mini])':
# Atom specific
# Pulsar specific
'ctrl-<': 'editor:scroll-to-cursor'
'ctrl-alt-shift-[': 'editor:fold-selection'
@ -133,8 +133,8 @@
'ctrl-alt-[': 'editor:fold-current-row'
'ctrl-alt-]': 'editor:unfold-current-row'
'ctrl-alt-{': 'editor:fold-all' # Atom Specific
'ctrl-alt-}': 'editor:unfold-all' # Atom Specific
'ctrl-alt-{': 'editor:fold-all' # Pulsar Specific
'ctrl-alt-}': 'editor:unfold-all' # Pulsar Specific
'ctrl-k ctrl-0': 'editor:unfold-all'
'ctrl-k ctrl-1': 'editor:fold-at-indent-level-1'
'ctrl-k ctrl-2': 'editor:fold-at-indent-level-2'

View File

@ -3,7 +3,7 @@
'ctrl-pageup': 'pane:show-previous-item'
'ctrl-pagedown': 'pane:show-next-item'
# Atom Specific
# Pulsar Specific
'enter': 'core:confirm'
'escape': 'core:cancel'
'up': 'core:move-up'
@ -70,12 +70,12 @@
'ctrl-_': 'window:decrease-font-size'
'ctrl-0': 'window:reset-font-size'
'ctrl-k up': 'pane:split-up-and-copy-active-item' # Atom Specific
'ctrl-k down': 'pane:split-down-and-copy-active-item' # Atom Specific
'ctrl-k left': 'pane:split-left-and-copy-active-item' # Atom Specific
'ctrl-k right': 'pane:split-right-and-copy-active-item' # Atom Specific
'ctrl-k ctrl-w': 'pane:close' # Atom Specific
'ctrl-k ctrl-alt-w': 'pane:close-other-items' # Atom Specific
'ctrl-k up': 'pane:split-up-and-copy-active-item' # Pulsar Specific
'ctrl-k down': 'pane:split-down-and-copy-active-item' # Pulsar Specific
'ctrl-k left': 'pane:split-left-and-copy-active-item' # Pulsar Specific
'ctrl-k right': 'pane:split-right-and-copy-active-item' # Pulsar Specific
'ctrl-k ctrl-w': 'pane:close' # Pulsar Specific
'ctrl-k ctrl-alt-w': 'pane:close-other-items' # Pulsar Specific
'ctrl-k ctrl-p': 'window:focus-previous-pane'
'ctrl-k ctrl-n': 'window:focus-next-pane'
'ctrl-k ctrl-up': 'window:focus-pane-above'
@ -119,7 +119,7 @@
'ctrl-l': 'editor:select-line'
'atom-workspace atom-text-editor:not([mini])':
# Atom specific
# Pulsar specific
'ctrl-<': 'editor:scroll-to-cursor'
'ctrl-alt-shift-[': 'editor:fold-selection'
@ -136,8 +136,8 @@
'ctrl-alt-[': 'editor:fold-current-row'
'ctrl-alt-]': 'editor:unfold-current-row'
'ctrl-alt-{': 'editor:fold-all' # Atom Specific
'ctrl-alt-}': 'editor:unfold-all' # Atom Specific
'ctrl-alt-{': 'editor:fold-all' # Pulsar Specific
'ctrl-alt-}': 'editor:unfold-all' # Pulsar Specific
'ctrl-k ctrl-0': 'editor:unfold-all'
'ctrl-k ctrl-1': 'editor:fold-at-indent-level-1'
'ctrl-k ctrl-2': 'editor:fold-at-indent-level-2'

View File

@ -1,8 +1,8 @@
'menu': [
{
label: 'Atom'
label: 'Pulsar'
submenu: [
{ label: 'About Atom', command: 'application:about' }
{ label: 'About Pulsar', command: 'application:about' }
{ label: 'View License', command: 'application:open-license' }
{ label: 'VERSION', enabled: false }
{ label: 'Restart and Install Update', command: 'application:install-update', visible: false}
@ -22,11 +22,11 @@
{ type: 'separator' }
{ label: 'Services', role: 'services', submenu: [] }
{ type: 'separator' }
{ label: 'Hide Atom', command: 'application:hide' }
{ label: 'Hide Pulsar', command: 'application:hide' }
{ label: 'Hide Others', command: 'application:hide-other-applications' }
{ label: 'Show All', command: 'application:unhide-all-applications' }
{ type: 'separator' }
{ label: 'Quit Atom', command: 'application:quit' }
{ label: 'Quit Pulsar', command: 'application:quit' }
]
}
{

View File

@ -199,7 +199,7 @@
{ label: 'Report Issue', command: 'application:report-issue' }
{ label: 'Search Issues', command: 'application:search-issues' }
{ type: 'separator' }
{ label: 'About Atom', command: 'application:about' }
{ label: 'About Pulsar', command: 'application:about' }
{ type: 'separator' }
]
}

View File

@ -202,7 +202,7 @@
{ label: 'Report Issue', command: 'application:report-issue' }
{ label: 'Search Issues', command: 'application:search-issues' }
{ type: 'separator' }
{ label: 'About Atom', command: 'application:about' }
{ label: 'About Pulsar', command: 'application:about' }
{ type: 'separator' }
]
}

View File

@ -1,6 +1,7 @@
{
"name": "atom",
"productName": "Atom",
"name": "pulsar",
"author": "Pulsar-Edit",
"productName": "Pulsar",
"author": "Pulsar Community <noreply@pulsar-edit.com>",
"version": "1.63.0-dev",
"description": "A hackable text editor for the 21st Century.",
@ -13,10 +14,10 @@
"main": "./src/main-process/main.js",
"repository": {
"type": "git",
"url": "https://github.com/atom/atom.git"
"url": "https://github.com/pulsar-edit/pulsar.git"
},
"bugs": {
"url": "https://github.com/atom/atom/issues"
"url": "https://github.com/pulsar-edit/pulsar/issues"
},
"license": "MIT",
"electronVersion": "12.2.3",

View File

@ -12,7 +12,7 @@ module.exports = class AboutStatusBar extends EtchComponent {
this.subscriptions.add(
atom.tooltips.add(this.element, {
title:
'An update will be installed the next time Atom is relaunched.<br/><br/>Click the squirrel icon for more information.'
'An update will be installed the next time Pulsar is relaunched.<br/><br/>Click the squirrel icon for more information.'
})
);
}

View File

@ -200,8 +200,8 @@ module.exports = class AboutView extends EtchComponent {
{ className: 'about-credits group-item' },
$.span({ className: 'inline' }, 'And the awesome '),
$.a(
{ href: 'https://github.com/atom/atom/contributors' },
'Atom Community'
{ href: 'https://github.com/pulsar-edit/pulsar/contributors' },
'Pulsar community'
)
)
);

View File

@ -50,7 +50,7 @@ module.exports = class UpdateView extends EtchComponent {
'about-updates-item is-shown about-default-update-message'
},
this.props.updateManager.getAutoUpdatesEnabled()
? 'Atom will check for updates automatically'
? 'Pulsar will check for updates automatically'
: 'Automatic updates are disabled please check manually'
);
break;
@ -96,7 +96,7 @@ module.exports = class UpdateView extends EtchComponent {
$.span({ className: 'icon icon-check' }),
$.span(
{ className: 'about-updates-label is-strong' },
'Atom is up to date!'
'Pulsar is up to date!'
)
);
break;

View File

@ -133,8 +133,8 @@ let UpdateManager = class UpdateManager {
}
const releaseRepo =
appVersion.indexOf('nightly') > -1 ? 'atom-nightly-releases' : 'atom';
return `https://github.com/atom-ide-community/${releaseRepo}/releases/tag/${appVersion}`;
appVersion.indexOf('nightly') > -1 ? 'pulsar-nightly-releases' : 'pulsar';
return `https://github.com/pulsar-edit/${releaseRepo}/releases/tag/${appVersion}`;
}
};

View File

@ -2,7 +2,7 @@
"name": "base16-tomorrow-dark-theme",
"theme": "syntax",
"version": "1.6.0",
"description": "Base16 dark theme for Pulsar",
"description": "Base16 dark theme developed for Atom, repurposed for Pulsar",
"keywords": [
"base16",
"dark",

View File

@ -2,7 +2,7 @@
"name": "base16-tomorrow-light-theme",
"theme": "syntax",
"version": "1.6.0",
"description": "Base16 light theme for Pulsar",
"description": "Base16 light theme developed for Atom, repurposed for Pulsar",
"keywords": [
"base16",
"light",

View File

@ -2,7 +2,7 @@
"name": "dalek",
"main": "./lib/main",
"version": "0.2.2",
"description": "EXTERMINATEs built-in packages installed in ~/.atom/packages",
"description": "EXTERMINATEs built-in packages installed in ~/.pulsar/packages",
"keywords": [],
"repository": "https://github.com/pulsar-edit/pulsar",
"license": "MIT",

View File

@ -20,14 +20,14 @@ describe('dalek', function() {
'an-unduplicated-installed-package': path.join(
'Users',
'username',
'.atom',
'.pulsar',
'packages',
'an-unduplicated-installed-package'
),
'duplicated-package': path.join(
'Users',
'username',
'.atom',
'.pulsar',
'packages',
'duplicated-package'
),
@ -40,7 +40,7 @@ describe('dalek', function() {
atom.devMode = false;
bundledPackages = ['duplicated-package', 'unduplicated-package'];
packageDirPaths = [path.join('Users', 'username', '.atom', 'packages')];
packageDirPaths = [path.join('Users', 'username', '.pulsar', 'packages')];
sandbox = sinon.createSandbox();
sandbox
.stub(dalek, 'realpath')
@ -88,7 +88,7 @@ describe('dalek', function() {
const packagePath = path.join(
'Users',
'username',
'.atom',
'.pulsar',
'packages',
'duplicated-package'
);

View File

@ -114,6 +114,7 @@ export default class DeprecationCopView {
if (packageNames.length === 0) {
return <li className="list-item">No deprecated calls</li>;
} else {
//TODO_PULSAR: Validate 'atom core'
return packageNames.sort().map(packageName => (
<li className="deprecation list-nested-item collapsed">
<div
@ -481,8 +482,8 @@ export default class DeprecationCopView {
const packagePaths = this.getPackagePathsByPackageName();
for (const [packageName, packagePath] of packagePaths) {
if (
packagePath.includes('.atom/dev/packages') ||
packagePath.includes('.atom/packages')
packagePath.includes('.pulsar/dev/packages') ||
packagePath.includes('.pulsar/packages')
) {
packagePaths.set(packageName, fs.absolute(packagePath));
}

View File

@ -2,7 +2,7 @@
"name": "dev-live-reload",
"main": "./lib/main",
"version": "0.48.1",
"description": "Live reload atom themes and packages.",
"description": "Live reload Pulsar themes and packages.",
"repository": "https://github.com/pulsar-edit/pulsar",
"license": "MIT",
"dependencies": {

View File

@ -29,7 +29,7 @@ export default class Reporter {
return {
apiKey: API_KEY,
notifier: {
name: 'Atom',
name: 'Pulsar',
version: LIB_VERSION,
url: 'https://www.atom.io'
},
@ -245,7 +245,7 @@ export default class Reporter {
) {
this.requestPrivateMetadataConsent(
error,
'The Atom team would like to collect the following information to resolve this error:',
'The Pulsar team would like to collect the following information to resolve this error:',
error => this.reportUncaughtException(error)
);
return;
@ -269,7 +269,7 @@ export default class Reporter {
) {
this.requestPrivateMetadataConsent(
error,
'The Atom team would like to collect some information to resolve an unexpected condition:',
'The Pulsar team would like to collect some information to resolve an unexpected condition:',
error => this.reportFailedAssertion(error)
);
return;

View File

@ -2,7 +2,7 @@
"name": "exception-reporting",
"main": "./lib/main",
"version": "0.43.1",
"description": "Reports uncaught Atom exceptions to the Atom team via bugsnag.com",
"description": "Reports uncaught Pulsar exceptions to the Pulsar team via bugsnag.com",
"repository": "https://github.com/pulsar-edit/pulsar",
"license": "MIT",
"engines": {

View File

@ -44,7 +44,7 @@ describe('Reporter', () => {
});
describe('.reportUncaughtException(error)', () => {
it('posts errors originated inside Atom Core to BugSnag', () => {
it('posts errors originated inside Pulsar Core to BugSnag', () => {
const repositoryRootPath = path.join(__dirname, '..');
reporter = new Reporter({
request: (url, options) =>
@ -68,7 +68,7 @@ describe('Reporter', () => {
expect(request.url).toBe('https://notify.bugsnag.com');
expect(request.headers.get('Content-Type')).toBe('application/json');
let body = JSON.parse(request.body);
// Delete `inProject` field because tests may fail when run as part of Atom core
// Delete `inProject` field because tests may fail when run as part of Pulsar Core
// (i.e. when this test file will be located under `node_modules/exception-reporting/spec`)
delete body.events[0].exceptions[0].stacktrace[0].inProject;
@ -112,7 +112,7 @@ describe('Reporter', () => {
});
});
it('posts errors originated outside Atom Core to BugSnag', () => {
it('posts errors originated outside Pulsar Core to BugSnag', () => {
fs.getHomeDirectory = () => path.join(__dirname, '..', '..');
let error = new Error();
@ -129,7 +129,7 @@ describe('Reporter', () => {
expect(request.url).toBe('https://notify.bugsnag.com');
expect(request.headers.get('Content-Type')).toBe('application/json');
let body = JSON.parse(request.body);
// Delete `inProject` field because tests may fail when run as part of Atom core
// Delete `inProject` field because tests may fail when run as part of Pulsar Core
// (i.e. when this test file will be located under `node_modules/exception-reporting/spec`)
delete body.events[0].exceptions[0].stacktrace[0].inProject;
@ -335,7 +335,7 @@ describe('Reporter', () => {
expect(request.url).toBe('https://notify.bugsnag.com');
expect(request.headers.get('Content-Type')).toBe('application/json');
let body = JSON.parse(request.body);
// Delete `inProject` field because tests may fail when run as part of Atom core
// Delete `inProject` field because tests may fail when run as part of Pulsar Core
// (i.e. when this test file will be located under `node_modules/exception-reporting/spec`)
delete body.events[0].exceptions[0].stacktrace[0].inProject;

View File

@ -66,9 +66,9 @@ export default class IncompatiblePackagesComponent {
return (
<div className={'alert icon ' + alertClass}>
{this.rebuiltPackageCount} of {this.incompatiblePackages.length}{' '}
packages were rebuilt successfully. Reload Atom to activate them.
packages were rebuilt successfully. Reload Pulsar to activate them.
<button ref="reloadButton" className="btn pull-right">
Reload Atom
Reload Pulsar
</button>
</div>
);
@ -76,7 +76,7 @@ export default class IncompatiblePackagesComponent {
return (
<div className="alert alert-danger icon icon-bug">
Some installed packages could not be loaded because they contain
native modules that were compiled for an earlier version of Atom.
native modules that were compiled for an earlier version of Pulsar.
<button
ref="rebuildButton"
className="btn pull-right"

View File

@ -1 +1 @@
See the [Atom contributing guide](https://github.com/atom/atom/blob/master/CONTRIBUTING.md)
See the [Pulsar contributing guide](https://github.com/pulsar-edit/.github/blob/main/CONTRIBUTING.md)

View File

@ -1,7 +1,7 @@
# C/C++ language support in Atom
# C/C++ language support in Pulsar
![CI Status](https://github.com/atom/language-c/actions/workflows/main.yml/badge.svg)
Adds syntax highlighting and snippets to C/C++ files in Atom.
Adds syntax highlighting and snippets to C/C++ files in Pulsar.
Originally [converted](http://flight-manual.atom.io/hacking-atom/sections/converting-from-textmate)
from the [C TextMate bundle](https://github.com/textmate/c.tmbundle).

View File

@ -1,7 +1,7 @@
# Clojure language support in Atom
# Clojure language support in Pulsar
[![macOS Build Status](https://travis-ci.org/atom/language-clojure.svg?branch=master)](https://travis-ci.org/atom/language-clojure) [![Build status](https://ci.appveyor.com/api/projects/status/6kd5fs48y5hixde6/branch/master?svg=true)](https://ci.appveyor.com/project/Atom/language-clojure/branch/master) [![Dependency Status](https://david-dm.org/atom/language-clojure.svg)](https://david-dm.org/atom/language-clojure)
Adds syntax highlighting to Clojure files in Atom.
Adds syntax highlighting to Clojure files in Pulsar.
Originally [converted](http://flight-manual.atom.io/hacking-atom/sections/converting-from-textmate)
from the [Clojure TextMate bundle](https://github.com/mmcgrana/textmate-clojure).

View File

@ -1,8 +1,8 @@
# CoffeeScript language support in Atom
# CoffeeScript language support in Pulsar
[![macOS Build Status](https://travis-ci.org/atom/language-coffee-script.svg?branch=master)](https://travis-ci.org/atom/language-coffee-script)
[![Windows Build status](https://ci.appveyor.com/api/projects/status/4j9aak7iwn2f2x7a/branch/master?svg=true)](https://ci.appveyor.com/project/Atom/language-coffee-script/branch/master) [![Dependency Status](https://david-dm.org/atom/language-coffee-script.svg)](https://david-dm.org/atom/language-coffee-script)
Adds syntax highlighting and snippets to CoffeeScript files in Atom.
Adds syntax highlighting and snippets to CoffeeScript files in Pulsar.
Originally [converted](http://flight-manual.atom.io/hacking-atom/sections/converting-from-textmate) from the [CoffeeScript TextMate bundle](https://github.com/jashkenas/coffee-script-tmbundle).

View File

@ -1,8 +1,8 @@
# C# language support in Atom
# C# language support in Pulsar
[![macOS Build Status](https://travis-ci.org/atom/language-csharp.svg?branch=master)](https://travis-ci.org/atom/language-csharp)
[![Windows Build Status](https://ci.appveyor.com/api/projects/status/j1as3753y5t90obn/branch/master?svg=true)](https://ci.appveyor.com/project/Atom/language-csharp/branch/master) [![Dependency Status](https://david-dm.org/atom/language-csharp.svg)](https://david-dm.org/atom/language-csharp)
Adds syntax highlighting and snippets to C# files in Atom.
Adds syntax highlighting and snippets to C# files in Pulsar.
The C# grammar comes from the [.NET Foundation's C# grammar](https://github.com/dotnet/csharp-tmLanguage)

View File

@ -1 +1 @@
See the [Atom contributing guide](https://github.com/atom/atom/blob/master/CONTRIBUTING.md)
See the [Pulsar contributing guide](https://github.com/pulsar-edit/.github/blob/main/CONTRIBUTING.md)

View File

@ -1,7 +1,7 @@
# CSS language support in Atom
# CSS language support in Pulsar
![CI Status](https://github.com/atom/language-css/actions/workflows/main.yml/badge.svg)
Adds syntax highlighting, completions, and snippets to CSS files in Atom.
Adds syntax highlighting, completions, and snippets to CSS files in Pulsar.
Originally [converted](http://flight-manual.atom.io/hacking-atom/sections/converting-from-textmate)
from the [CSS TextMate bundle](https://github.com/textmate/css.tmbundle).

View File

@ -1 +1 @@
See the [Atom contributing guide](https://github.com/atom/atom/blob/master/CONTRIBUTING.md)
See the [Pulsar contributing guide](https://github.com/pulsar-edit/.github/blob/main/CONTRIBUTING.md)

View File

@ -1,6 +1,6 @@
# GitHub flavored Markdown package
[![OS X Build Status](https://travis-ci.org/atom/language-gfm.svg?branch=master)](https://travis-ci.org/atom/language-gfm) [![Windows Build Status](https://ci.appveyor.com/api/projects/status/rpub8qjyd8lt7wai/branch/master?svg=true)](https://ci.appveyor.com/project/Atom/language-gfm/branch/master) [![Dependency Status](https://david-dm.org/atom/language-gfm.svg)](https://david-dm.org/atom/language-gfm)
Adds syntax highlighting and snippets to [GitHub flavored Markdown](https://help.github.com/articles/github-flavored-markdown) files in Atom.
Adds syntax highlighting and snippets to [GitHub flavored Markdown](https://help.github.com/articles/github-flavored-markdown) files in Pulsar.
Contributions are greatly appreciated. Please fork this repository and open a pull request to add snippets, make grammar tweaks, etc.

View File

@ -1 +1 @@
See the [Atom contributing guide](https://github.com/atom/atom/blob/master/CONTRIBUTING.md)
See the [Pulsar contributing guide](https://github.com/pulsar-edit/.github/blob/main/CONTRIBUTING.md)

View File

@ -1,11 +1,11 @@
# Git editing support in Atom
# Git editing support in Pulsar
[![macOS Build Status](https://travis-ci.org/atom/language-git.svg?branch=master)](https://travis-ci.org/atom/language-git)
[![Windows Build Status](https://ci.appveyor.com/api/projects/status/481319gyrr1feo8b/branch/master?svg=true)](https://ci.appveyor.com/project/Atom/language-git/branch/master)
[![Dependency Status](https://david-dm.org/atom/language-git.svg)](https://david-dm.org/atom/language-git)
Adds syntax highlighting to Git commit, merge, and rebase messages edited in Atom.
Adds syntax highlighting to Git commit, merge, and rebase messages edited in Pulsar.
You can configure Atom to be your Git editor with the following command:
You can configure Pulsar to be your Git editor with the following command:
```sh
git config --global core.editor "atom --wait"

View File

@ -2,7 +2,7 @@
"name": "one-light-syntax",
"theme": "syntax",
"version": "1.8.4",
"description": "Pulsar One light syntax theme",
"description": "One light syntax theme developed for Atom, repurposed for Pulsar",
"keywords": [
"light",
"syntax"

View File

@ -2,7 +2,7 @@
"name": "one-light-ui",
"theme": "ui",
"version": "1.12.5",
"description": "Pulsar One light UI theme",
"description": "One light UI theme developed for Atom, repurposed for Pulsar",
"keywords": [
"light",
"adaptive",

View File

@ -380,7 +380,7 @@ export default class GuideView {
getApplicationMenuName() {
if (process.platform === 'darwin') {
return 'Atom';
return 'Pulsar';
} else if (process.platform === 'linux') {
return 'Edit';
} else {
@ -450,17 +450,17 @@ export default class GuideView {
didClickStylingButton() {
this.props.reporterProxy.sendEvent('clicked-styling-cta');
atom.workspace.open('atom://.atom/stylesheet', { split: 'left' });
atom.workspace.open('atom://.pulsar/stylesheet', { split: 'left' });
}
didClickInitScriptButton() {
this.props.reporterProxy.sendEvent('clicked-init-script-cta');
atom.workspace.open('atom://.atom/init-script', { split: 'left' });
atom.workspace.open('atom://.pulsar/init-script', { split: 'left' });
}
didClickSnippetsButton() {
this.props.reporterProxy.sendEvent('clicked-snippets-cta');
atom.workspace.open('atom://.atom/snippets', { split: 'left' });
atom.workspace.open('atom://.pulsar/snippets', { split: 'left' });
}
didClickTeletypeButton() {

View File

@ -99,7 +99,7 @@ export default class WelcomeView {
<ul>
<li>
The{' '}
// TODO: Update to our docs or test {atom.branding.urlWeb}+"/docs"
{/* // TODO_PULSAR: Update to our docs or test {atom.branding.urlWeb}+"/docs" */}
<a
href="https://www.atom.io/docs"
dataset={{ event: 'atom-docs' }}

View File

@ -10,13 +10,13 @@ else
fi
case $(basename $0) in
atom-beta)
pulsar-beta)
CHANNEL=beta
;;
atom-nightly)
pulsar-nightly)
CHANNEL=nightly
;;
atom-dev)
pulsar-dev)
CHANNEL=dev
;;
*)
@ -87,7 +87,7 @@ if [ $REDIRECT_STDERR ]; then
exec 2> /dev/null
fi
ATOM_HOME="${ATOM_HOME:-$HOME/.atom}"
ATOM_HOME="${ATOM_HOME:-$HOME/.pulsar}"
mkdir -p "$ATOM_HOME"
if [ $OS == 'Mac' ]; then
@ -110,13 +110,13 @@ if [ $OS == 'Mac' ]; then
else
# Else choose it from the inferred channel name
if [ "$CHANNEL" == 'beta' ]; then
ATOM_EXECUTABLE_NAME="Atom Beta"
ATOM_EXECUTABLE_NAME="Pulsar Beta"
elif [ "$CHANNEL" == 'nightly' ]; then
ATOM_EXECUTABLE_NAME="Atom Nightly"
ATOM_EXECUTABLE_NAME="Pulsar Nightly"
elif [ "$CHANNEL" == 'dev' ]; then
ATOM_EXECUTABLE_NAME="Atom Dev"
ATOM_EXECUTABLE_NAME="Pulsar Dev"
else
ATOM_EXECUTABLE_NAME="Atom"
ATOM_EXECUTABLE_NAME="Pulsar"
fi
fi
@ -127,10 +127,10 @@ if [ $OS == 'Mac' ]; then
elif [ -x "$HOME/Applications/$ATOM_APP_NAME" ]; then
ATOM_PATH="$HOME/Applications"
else
# We haven't found an Atom.app, use spotlight to search for Atom
ATOM_PATH="$(mdfind "kMDItemCFBundleIdentifier == 'com.github.atom'" | grep -v ShipIt | head -1 | xargs -0 dirname)"
# We haven't found an Pulsar.app, use spotlight to search for Pulsar
ATOM_PATH="$(mdfind "kMDItemCFBundleIdentifier == 'com.github.pulsar'" | grep -v ShipIt | head -1 | xargs -0 dirname)"
# Exit if Atom can't be found
# Exit if Pulsar can't be found
if [ ! -x "$ATOM_PATH/$ATOM_APP_NAME" ]; then
echo "Cannot locate ${ATOM_APP_NAME}, it is usually located in /Applications. Set the ATOM_PATH environment variable to the directory containing ${ATOM_APP_NAME}."
exit 1
@ -155,27 +155,27 @@ elif [ $OS == 'Linux' ]; then
case $CHANNEL in
beta)
ATOM_PATH="$USR_DIRECTORY/share/atom-beta/atom"
ATOM_PATH="$USR_DIRECTORY/share/pulsar-beta/pulsar"
;;
nightly)
ATOM_PATH="$USR_DIRECTORY/share/atom-nightly/atom"
ATOM_PATH="$USR_DIRECTORY/share/pulsar-nightly/pulsar"
;;
dev)
ATOM_PATH="$USR_DIRECTORY/share/atom-dev/atom"
ATOM_PATH="$USR_DIRECTORY/share/pulsar-dev/pulsar"
;;
*)
ATOM_PATH="$USR_DIRECTORY/share/atom/atom"
ATOM_PATH="$USR_DIRECTORY/share/pulsar/pulsar"
;;
esac
#Will allow user to get context menu on cinnamon desktop enviroment
if [[ "$(expr substr $(printenv | grep "DESKTOP_SESSION=") 17 8)" == "cinnamon" ]]; then
cp "resources/linux/desktopenviroment/cinnamon/atom.nemo_action" "/usr/share/nemo/actions/atom.nemo_action"
cp "resources/linux/desktopenviroment/cinnamon/pulsar.nemo_action" "/usr/share/nemo/actions/pulsar.nemo_action"
fi
: ${TMPDIR:=/tmp}
[ -x "$ATOM_PATH" ] || ATOM_PATH="$TMPDIR/atom-build/Atom/atom"
[ -x "$ATOM_PATH" ] || ATOM_PATH="$TMPDIR/pulsar-build/Pulsar/pulsar"
if [ $EXPECT_OUTPUT ]; then
"$ATOM_PATH" --executed-from="$(pwd)" --pid=$$ "$@"
@ -196,13 +196,13 @@ elif [ $OS == 'Linux' ]; then
fi
fi
# Exits this process when Atom is used as $EDITOR
# Exits this process when Pulsar is used as $EDITOR
on_die() {
exit 0
}
trap 'on_die' SIGQUIT SIGTERM
# If the wait flag is set, don't exit this process until Atom kills it.
# If the wait flag is set, don't exit this process until Pulsar kills it.
if [ $WAIT ]; then
WAIT_FIFO="$ATOM_HOME/.wait_fifo"

View File

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 148 KiB

View File

Before

Width:  |  Height:  |  Size: 146 KiB

After

Width:  |  Height:  |  Size: 146 KiB

View File

Before

Width:  |  Height:  |  Size: 151 KiB

After

Width:  |  Height:  |  Size: 151 KiB

View File

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 150 KiB

View File

@ -9,4 +9,4 @@ Architecture: <%= arch %>
Installed-Size: <%= installedSize %>
Maintainer: GitHub <atom@github.com>
Description: <%= description %>
Atom is a free and open source text editor that is modern, approachable, and hackable to the core.
Pulsar is a free and open source text editor that is modern, approachable, and hackable to the core.

View File

@ -1,9 +1,9 @@
[Nemo Action]
Active=true
Name=Open in Atom
Comment=Open in Atom
Name=Open in Pulsar
Comment=Open in Pulsar
#%U is the current selected file, this will also work on current directory
Exec=atom -n %U
Icon-Name=atom
Exec=pulsar -n %U
Icon-Name=pulsar
Selection=any
Extensions=any

View File

@ -3,7 +3,7 @@
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1.0/policyconfig.dtd">
<policyconfig>
<vendor>Atom</vendor>
<vendor>Pulsar</vendor>
<action id="atom.pkexec.dd">
<description gettext-domain="atom">Admin privileges required</description>
<message gettext-domain="atom">Please enter your password to save this file</message>

View File

@ -26,7 +26,7 @@ mkdir -p "%{buildroot}/<%= installDir %>/share/<%= appFileName %>/"
cp -r "<%= appName %>"/* "%{buildroot}/<%= installDir %>/share/<%= appFileName %>/"
mkdir -p "%{buildroot}/<%= installDir %>/bin/"
ln -sf "../share/<%= appFileName %>/resources/app/apm/node_modules/.bin/apm" "%{buildroot}/<%= installDir %>/bin/<%= apmFileName %>"
cp atom.sh "%{buildroot}/<%= installDir %>/bin/<%= appFileName %>"
cp pulsar.sh "%{buildroot}/<%= installDir %>/bin/<%= appFileName %>"
chmod 755 "%{buildroot}/<%= installDir %>/bin/<%= appFileName %>"
mkdir -p "%{buildroot}/<%= installDir %>/share/applications/"
cp "<%= appFileName %>.desktop" "%{buildroot}/<%= installDir %>/share/applications/"

View File

@ -5,15 +5,15 @@
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>Atom Helper</string>
<string>Pulsar Helper</string>
<key>CFBundleExecutable</key>
<string>Atom Helper</string>
<string>Pulsar Helper</string>
<key>CFBundleIdentifier</key>
<string>com.github.atom.helper</string>
<string>com.github.pulsar.helper</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>Atom Helper</string>
<string>Pulsar Helper</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>

View File

@ -3,15 +3,15 @@
<plist version="1.0">
<dict>
<key>CFBundleExecutable</key>
<string>Atom</string>
<string>Pulsar</string>
<key>CFBundleIconFile</key>
<string>atom.icns</string>
<string>pulsar.icns</string>
<key>CFBundleIdentifier</key>
<string>com.github.atom</string>
<string>com.github.pulsar</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>Atom</string>
<string>Pulsar</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleDevelopmentRegion</key>
@ -43,10 +43,10 @@
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>atom</string>
<string>pulsar</string>
</array>
<key>CFBundleURLName</key>
<string>Atom Shared Session Protocol</string>
<string>Pulsar Shared Session Protocol</string>
</dict>
</array>
<key>CFBundleDocumentTypes</key>

BIN
resources/pulsar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 416 KiB

View File

@ -47,5 +47,5 @@ IF "%EXPECT_OUTPUT%"=="YES" (
"%~dp0\..\..\<%= atomExeName %>" %*
)
) ELSE (
"%~dp0\..\app\apm\bin\node.exe" "%~dp0\atom.js" "<%= atomExeName %>" %*
"%~dp0\..\app\apm\bin\node.exe" "%~dp0\pulsar.js" "<%= atomExeName %>" %*
)

View File

@ -2,8 +2,8 @@
# Get current path in Windows format
if command -v "cygpath" > /dev/null; then
# We have cygpath to do the conversion
ATOMCMD=$(cygpath "$(dirname "$0")/atom.cmd" -a -w)
ARGS=( $(cygpath -a -w "$@" | tr '\n' ' ') )
ATOMCMD=$(cygpath "$(dirname "$0")/pulsar.cmd" -a -w)
ARGS=( $(cygpath -a -w "$@" | tr '\n' ' ') )
else
ARGS=$@
pushd "$(dirname "$0")" > /dev/null
@ -13,10 +13,10 @@ else
# If different root mount point defined in /etc/wsl.conf, use that instead
eval $(grep "^root" /etc/wsl.conf | sed -e "s/ //g")
root="$(echo $root | sed 's|/|\\/|g')"
ATOMCMD="$(echo $PWD | sed 's/\/mnt\/\([a-z]*\)\(.*\)/\1:\2/')/atom.cmd"
ATOMCMD="$(echo $PWD | sed 's/\/mnt\/\([a-z]*\)\(.*\)/\1:\2/')/pulsar.cmd"
else
# We don't have cygpath or WSL so try pwd -W
ATOMCMD="$(pwd -W)/atom.cmd"
ATOMCMD="$(pwd -W)/pulsar.cmd"
fi
popd > /dev/null
fi

View File

@ -29,7 +29,7 @@ const argv = yargs
.help('help')
.describe(
'existing-binaries',
'Use existing Atom binaries (skip clean/transpile/cache)'
'Use existing Pulsar binaries (skip clean/transpile/cache)'
)
.describe('code-sign', 'Code-sign executables (macOS and Windows only)')
.describe('test-sign', 'Test-sign executables (macOS only)')
@ -38,10 +38,10 @@ const argv = yargs
.describe('create-rpm-package', 'Create .rpm package (Linux only)')
.describe(
'compress-artifacts',
'Compress Atom binaries (and symbols on macOS)'
'Compress Pulsar binaries (and symbols on macOS)'
)
.describe('generate-api-docs', 'Only build the API documentation')
.describe('install', 'Install Atom')
.describe('install', 'Install Pulsar')
.string('install')
.describe(
'ci',
@ -227,7 +227,7 @@ async function build() {
compressArtifacts(packagedAppPath);
} else {
console.log(
'Skipping artifacts compression. Specify the --compress-artifacts option to compress Atom binaries (and symbols on macOS)'
'Skipping artifacts compression. Specify the --compress-artifacts option to compress Pulsar binaries (and symbols on macOS)'
.gray
);
}
@ -236,7 +236,7 @@ async function build() {
installApplication(packagedAppPath, argv.install);
} else {
console.log(
'Skipping installation. Specify the --install option to install Atom'
'Skipping installation. Specify the --install option to install Pulsar'
.gray
);
}

View File

@ -18,7 +18,7 @@ const symbolsPath = path.join(buildOutputPath, 'symbols');
const electronDownloadPath = path.join(repositoryRootPath, 'electron');
const homeDirPath = process.env.HOME || process.env.USERPROFILE;
const atomHomeDirPath =
process.env.ATOM_HOME || path.join(homeDirPath, '.atom');
process.env.ATOM_HOME || path.join(homeDirPath, '.pulsar');
const appMetadata = require(path.join(repositoryRootPath, 'package.json'));
const apmMetadata = require(path.join(apmRootPath, 'package.json'));
@ -36,10 +36,10 @@ if (process.env.npm_config_jobs === undefined) {
process.env.npm_config_jobs = 'max';
}
const REPO_OWNER = process.env.REPO_OWNER || 'atom';
const MAIN_REPO = process.env.MAIN_REPO || 'atom';
const REPO_OWNER = process.env.REPO_OWNER || 'pulsar-edit';
const MAIN_REPO = process.env.MAIN_REPO || 'pulsar';
const NIGHTLY_RELEASE_REPO =
process.env.NIGHTLY_RELEASE_REPO || 'atom-nightly-releases';
process.env.NIGHTLY_RELEASE_REPO || 'pulsar-nightly-releases';
module.exports = {
appMetadata,
@ -71,13 +71,13 @@ module.exports = {
};
function getChannelName(channel) {
return channel === 'stable' ? 'atom' : `atom-${channel}`;
return channel === 'stable' ? 'pulsar' : `pulsar-${channel}`;
}
function getChannel(version) {
const match = version.match(/\d+\.\d+\.\d+(-([a-z]+)(\d+|-\w{4,})?)?$/);
if (!match) {
throw new Error(`Found incorrectly formatted Atom version ${version}`);
throw new Error(`Found incorrectly formatted Pulsar version ${version}`);
} else if (match[2]) {
return match[2];
}
@ -87,8 +87,8 @@ function getChannel(version) {
function getAppName(channel) {
return channel === 'stable'
? 'Atom'
: `Atom ${process.env.ATOM_CHANNEL_DISPLAY_NAME ||
? 'Pulsar'
: `Pulsar ${process.env.ATOM_CHANNEL_DISPLAY_NAME ||
channel.charAt(0).toUpperCase() + channel.slice(1)}`;
}
@ -96,9 +96,9 @@ function getExecutableName(channel, appName) {
if (process.platform === 'darwin') {
return appName;
} else if (process.platform === 'win32') {
return channel === 'stable' ? 'atom.exe' : `atom-${channel}.exe`;
return channel === 'stable' ? 'pulsar.exe' : `pulsar-${channel}.exe`;
} else {
return 'atom';
return 'pulsar';
}
}

View File

@ -41,7 +41,8 @@ const Platform = builder.Platform
const generate = require('./lib/generate-metadata.js')
const pngIcon = 'resources/app-icons/nightly/png/1024.png'
const icoIcon = 'resources/app-icons/nightly/atom.ico'
const icoIcon = 'resources/app-icons/nightly/pulsar.ico'
let options = {
"appId": "link.mauricioszabo.pulsar",
"npmRebuild": false,
@ -76,7 +77,7 @@ let options = {
"to": "app/apm"
}, {
"from": pngIcon,
"to": "atom.png"
"to": "pulsar.png"
},
],
compression: "normal",

View File

@ -0,0 +1,15 @@
const path = require('path');
const fs = require('fs');
const { createCanvas, loadImage, registerFont } = require('canvas');
const imageCanvas = createCanvas(1024, 1024);
const context = imageCanvas.getContext('2d');
const channel = 'dev';
loadImage(path.resolve(__dirname, '..', 'resources', 'app-icons', channel, 'png', '1024.png')).then((background) => {
context.drawImage(background, 0, 0, imageCanvas.width, imageCanvas.height)
const buffer = imageCanvas.toBuffer('image/png')
fs.writeFileSync(path.resolve(__dirname, '..', 'resources', 'pulsar.png'), buffer);
})

View File

@ -15,10 +15,10 @@ module.exports = function() {
path.join(CONFIG.atomHomeDirPath, '.npm'),
path.join(CONFIG.atomHomeDirPath, 'compile-cache'),
path.join(CONFIG.atomHomeDirPath, 'snapshot-cache'),
path.join(CONFIG.atomHomeDirPath, 'atom-shell'),
path.join(CONFIG.atomHomeDirPath, 'pulsar-shell'),
path.join(CONFIG.atomHomeDirPath, 'electron'),
path.join(os.tmpdir(), 'atom-build'),
path.join(os.tmpdir(), 'atom-cached-atom-shells')
path.join(os.tmpdir(), 'pulsar-build'),
path.join(os.tmpdir(), 'pulsar-cached-pulsar-shells')
];
const rmPromises = [];
for (let path of cachePaths) {

View File

@ -14,7 +14,7 @@ module.exports = function(packagedAppPath) {
if (process.platform === 'darwin') {
const symbolsArchivePath = path.join(
CONFIG.buildOutputPath,
'atom-mac-symbols.zip'
'pulsar-mac-symbols.zip'
);
compress(CONFIG.symbolsPath, symbolsArchivePath);
}
@ -23,11 +23,11 @@ module.exports = function(packagedAppPath) {
function getArchiveName() {
switch (process.platform) {
case 'darwin':
return 'atom-mac.zip';
return 'pulsar-mac.zip';
case 'win32':
return `atom-${process.arch === 'x64' ? 'x64-' : ''}windows.zip`;
return `pulsar-${process.arch === 'x64' ? 'x64-' : ''}windows.zip`;
default:
return `atom-${getLinuxArchiveArch()}.tar.gz`;
return `pulsar-${getLinuxArchiveArch()}.tar.gz`;
}
}

View File

@ -39,7 +39,7 @@ module.exports = function() {
// We do this to ensure that symlinked repo-local bundled packages get
// copied to the output folder correctly. We dereference only the top-level
// symlinks and not nested symlinks to avoid issues where symlinked binaries
// are duplicated in Atom's installation packages (see atom/atom#18490).
// are duplicated in Pulsar's installation packages (see atom/atom#18490).
const nodeModulesPath = path.join(CONFIG.repositoryRootPath, 'node_modules');
glob
.sync(path.join(nodeModulesPath, '*'))
@ -69,7 +69,7 @@ module.exports = function() {
'png',
'1024.png'
),
path.join(CONFIG.intermediateAppPath, 'resources', 'atom.png')
path.join(CONFIG.intermediateAppPath, 'resources', 'pulsar.png')
)
);

View File

@ -10,9 +10,9 @@ const CONFIG = require('../config');
module.exports = function(packagedAppPath) {
console.log(`Creating Debian package for "${packagedAppPath}"`);
const atomExecutableName =
CONFIG.channel === 'stable' ? 'atom' : `atom-${CONFIG.channel}`;
const apmExecutableName =
const editorExecutableName =
CONFIG.channel === 'stable' ? 'pulsar' : `pulsar-${CONFIG.channel}`;
const pkgMgrExecutableName =
CONFIG.channel === 'stable' ? 'apm' : `apm-${CONFIG.channel}`;
const appDescription = CONFIG.appMetadata.description;
const appVersion = CONFIG.appMetadata.version;
@ -29,7 +29,7 @@ module.exports = function(packagedAppPath) {
const outputDebianPackageFilePath = path.join(
CONFIG.buildOutputPath,
`atom-${arch}.deb`
`pulsar-${arch}.deb`
);
const debianPackageDirPath = path.join(
os.tmpdir(),
@ -44,7 +44,7 @@ module.exports = function(packagedAppPath) {
);
const debianPackageAtomDirPath = path.join(
debianPackageShareDirPath,
atomExecutableName
editorExecutableName
);
const debianPackageApplicationsDirPath = path.join(
debianPackageShareDirPath,
@ -57,7 +57,7 @@ module.exports = function(packagedAppPath) {
const debianPackageDocsDirPath = path.join(
debianPackageShareDirPath,
'doc',
atomExecutableName
editorExecutableName
);
if (fs.existsSync(debianPackageDirPath)) {
@ -97,14 +97,14 @@ module.exports = function(packagedAppPath) {
console.log(`Copying binaries into "${debianPackageBinDirPath}"`);
fs.copySync(
path.join(CONFIG.repositoryRootPath, 'atom.sh'),
path.join(debianPackageBinDirPath, atomExecutableName)
path.join(CONFIG.repositoryRootPath, 'pulsar.sh'),
path.join(debianPackageBinDirPath, editorExecutableName)
);
fs.symlinkSync(
path.join(
'..',
'share',
atomExecutableName,
editorExecutableName,
'resources',
'app',
'apm',
@ -112,7 +112,7 @@ module.exports = function(packagedAppPath) {
'.bin',
'apm'
),
path.join(debianPackageBinDirPath, apmExecutableName)
path.join(debianPackageBinDirPath, pkgMgrExecutableName)
);
fs.chmodSync(path.join(debianPackageAtomDirPath, 'chrome-sandbox'), '4755');
@ -131,7 +131,7 @@ module.exports = function(packagedAppPath) {
)
);
const controlFileContents = template(controlFileTemplate)({
appFileName: atomExecutableName,
appFileName: editorExecutableName,
version: appVersion,
arch: arch,
installedSize: packageSizeInKilobytes,
@ -150,20 +150,20 @@ module.exports = function(packagedAppPath) {
CONFIG.repositoryRootPath,
'resources',
'linux',
'atom.desktop.in'
'pulsar.desktop.in'
)
);
const desktopEntryContents = template(desktopEntryTemplate)({
appName: CONFIG.appName,
appFileName: atomExecutableName,
appFileName: editorExecutableName,
description: appDescription,
installDir: '/usr',
iconPath: atomExecutableName
iconPath: editorExecutableName
});
fs.writeFileSync(
path.join(
debianPackageApplicationsDirPath,
`${atomExecutableName}.desktop`
`${editorExecutableName}.desktop`
),
desktopEntryContents
);
@ -175,9 +175,9 @@ module.exports = function(packagedAppPath) {
'resources',
'app.asar.unpacked',
'resources',
'atom.png'
'pulsar.png'
),
path.join(debianPackageIconsDirPath, `${atomExecutableName}.png`)
path.join(debianPackageIconsDirPath, `${editorExecutableName}.png`)
);
console.log(`Copying license into "${debianPackageDocsDirPath}"`);
@ -190,12 +190,12 @@ module.exports = function(packagedAppPath) {
`Copying polkit configuration into "${debianPackageShareDirPath}"`
);
fs.copySync(
path.join(CONFIG.repositoryRootPath, 'resources', 'linux', 'atom.policy'),
path.join(CONFIG.repositoryRootPath, 'resources', 'linux', 'pulsar.policy'),
path.join(
debianPackageShareDirPath,
'polkit-1',
'actions',
`atom-${CONFIG.channel}.policy`
`pulsar-${CONFIG.channel}.policy`
)
);

View File

@ -10,16 +10,16 @@ const CONFIG = require('../config');
module.exports = function(packagedAppPath) {
console.log(`Creating rpm package for "${packagedAppPath}"`);
const atomExecutableName =
CONFIG.channel === 'stable' ? 'atom' : `atom-${CONFIG.channel}`;
const apmExecutableName =
const editorExecutableName =
CONFIG.channel === 'stable' ? 'pulsar' : `pulsar-${CONFIG.channel}`;
const pkgMgrExecutableName =
CONFIG.channel === 'stable' ? 'apm' : `apm-${CONFIG.channel}`;
const appName = CONFIG.appName;
const appDescription = CONFIG.appMetadata.description;
// RPM versions can't have dashes or tildes in them.
// (Ref.: https://twiki.cern.ch/twiki/bin/view/Main/RPMAndDebVersioning)
const appVersion = CONFIG.appMetadata.version.replace(/-/g, '.');
const policyFileName = `atom-${CONFIG.channel}.policy`;
const policyFileName = `pulsar-${CONFIG.channel}.policy`;
const rpmPackageDirPath = path.join(CONFIG.homeDirPath, 'rpmbuild');
const rpmPackageBuildDirPath = path.join(rpmPackageDirPath, 'BUILD');
@ -65,20 +65,20 @@ module.exports = function(packagedAppPath) {
);
console.log(`Writing rpm package spec file into "${rpmPackageSpecsDirPath}"`);
const rpmPackageSpecFilePath = path.join(rpmPackageSpecsDirPath, 'atom.spec');
const rpmPackageSpecFilePath = path.join(rpmPackageSpecsDirPath, 'pulsar.spec');
const rpmPackageSpecsTemplate = fs.readFileSync(
path.join(
CONFIG.repositoryRootPath,
'resources',
'linux',
'redhat',
'atom.spec.in'
'pulsar.spec.in'
)
);
const rpmPackageSpecsContents = template(rpmPackageSpecsTemplate)({
appName: appName,
appFileName: atomExecutableName,
apmFileName: apmExecutableName,
appFileName: editorExecutableName,
apmFileName: pkgMgrExecutableName,
description: appDescription,
installDir: '/usr',
version: appVersion,
@ -92,30 +92,30 @@ module.exports = function(packagedAppPath) {
CONFIG.repositoryRootPath,
'resources',
'linux',
'atom.desktop.in'
'pulsar.desktop.in'
)
);
const desktopEntryContents = template(desktopEntryTemplate)({
appName: appName,
appFileName: atomExecutableName,
appFileName: editorExecutableName,
description: appDescription,
installDir: '/usr',
iconPath: atomExecutableName
iconPath: editorExecutableName
});
fs.writeFileSync(
path.join(rpmPackageBuildDirPath, `${atomExecutableName}.desktop`),
path.join(rpmPackageBuildDirPath, `${editorExecutableName}.desktop`),
desktopEntryContents
);
console.log(`Copying atom.sh into "${rpmPackageBuildDirPath}"`);
console.log(`Copying pulsar.sh into "${rpmPackageBuildDirPath}"`);
fs.copySync(
path.join(CONFIG.repositoryRootPath, 'atom.sh'),
path.join(rpmPackageBuildDirPath, 'atom.sh')
path.join(CONFIG.repositoryRootPath, 'pulsar.sh'),
path.join(rpmPackageBuildDirPath, 'pulsar.sh')
);
console.log(`Copying atom.policy into "${rpmPackageBuildDirPath}"`);
console.log(`Copying pulsar.policy into "${rpmPackageBuildDirPath}"`);
fs.copySync(
path.join(CONFIG.repositoryRootPath, 'resources', 'linux', 'atom.policy'),
path.join(CONFIG.repositoryRootPath, 'resources', 'linux', 'pulsar.policy'),
path.join(rpmPackageBuildDirPath, policyFileName)
);
@ -137,7 +137,7 @@ module.exports = function(packagedAppPath) {
);
const outputRpmPackageFilePath = path.join(
CONFIG.buildOutputPath,
`atom.${generatedArch}.rpm`
`pulsar.${generatedArch}.rpm`
);
console.log(
`Copying "${generatedPackageFilePath}" into "${outputRpmPackageFilePath}"`

View File

@ -20,7 +20,7 @@ module.exports = packagedAppPath => {
authors: 'GitHub Inc.',
iconUrl: `https://raw.githubusercontent.com/${REPO_OWNER}/${MAIN_REPO}/master/resources/app-icons/${
CONFIG.channel
}/atom.ico`,
}/pulsar.ico`,
loadingGif: path.join(
CONFIG.repositoryRootPath,
'resources',
@ -32,13 +32,13 @@ module.exports = packagedAppPath => {
remoteReleases: `${updateUrlPrefix}/api/updates${archSuffix}?version=${
CONFIG.computedAppVersion
}`,
setupExe: `AtomSetup${process.arch === 'x64' ? '-x64' : ''}.exe`,
setupExe: `PulsarSetup${process.arch === 'x64' ? '-x64' : ''}.exe`,
setupIcon: path.join(
CONFIG.repositoryRootPath,
'resources',
'app-icons',
CONFIG.channel,
'atom.ico'
'pulsar.ico'
)
};
@ -49,7 +49,7 @@ module.exports = packagedAppPath => {
}
let appName =
CONFIG.channel === 'stable' ? 'atom' : `atom-${CONFIG.channel}`;
CONFIG.channel === 'stable' ? 'pulsar' : `pulsar-${CONFIG.channel}`;
for (let nupkgPath of glob.sync(
`${CONFIG.buildOutputPath}/${appName}-*.nupkg`
)) {
@ -60,7 +60,7 @@ module.exports = packagedAppPath => {
fs.unlinkSync(nupkgPath);
} else {
if (process.arch === 'x64') {
// Use the original .nupkg filename to generate the `atom-x64` name by inserting `-x64` after `atom`
// Use the original .nupkg filename to generate the `pulsar-x64` name by inserting `-x64` after `pulsar`
const newNupkgPath = nupkgPath.replace(
`${appName}-`,
`${appName}-x64-`

View File

@ -9,7 +9,7 @@ module.exports = function(downloadURL, destinationPath) {
const response = syncRequest('GET', downloadURL, {
headers: {
Accept: 'application/vnd.github.v3.raw',
'User-Agent': 'Atom Build',
'User-Agent': 'Pulsar Build',
Authorization: `token ${process.env.GITHUB_TOKEN}`
}
});

View File

@ -10,7 +10,7 @@ const path = require('path');
const CONFIG = require('../config');
module.exports = function() {
const generatedJSONPath = path.join(CONFIG.docsOutputPath, 'atom-api.json');
const generatedJSONPath = path.join(CONFIG.docsOutputPath, 'pulsar-api.json');
console.log(`Generating API docs at ${generatedJSONPath}`);
// Unfortunately, correct relative paths depend on a specific working

View File

@ -13,7 +13,7 @@ let appName = CONFIG.appMetadata.name;
if (process.platform === 'win32') {
// Use the channel name in the app name on Windows so that the installer will
// place it in a different folder in AppData\Local
appName = CONFIG.channel === 'stable' ? 'atom' : `atom-${CONFIG.channel}`;
appName = CONFIG.channel === 'stable' ? 'pulsar' : `pulsar-${CONFIG.channel}`;
}
module.exports = function() {

View File

@ -76,19 +76,19 @@ module.exports = function(packagedAppPath, installDir) {
});
}
} else {
const atomExecutableName =
CONFIG.channel === 'stable' ? 'atom' : 'atom-' + CONFIG.channel;
const apmExecutableName =
const editorExecutableName =
CONFIG.channel === 'stable' ? 'pulsar' : 'pulsar-' + CONFIG.channel;
const pkgMgrExecutableName =
CONFIG.channel === 'stable' ? 'apm' : 'apm-' + CONFIG.channel;
const appName =
CONFIG.channel === 'stable'
? 'Atom'
: startCase('Atom ' + CONFIG.channel);
? 'Pulsar'
: startCase('Pulsar ' + CONFIG.channel);
const appDescription = CONFIG.appMetadata.description;
const prefixDirPath =
installDir !== '' ? handleTilde(installDir) : path.join('/usr', 'local');
const shareDirPath = path.join(prefixDirPath, 'share');
const installationDirPath = path.join(shareDirPath, atomExecutableName);
const installationDirPath = path.join(shareDirPath, editorExecutableName);
const applicationsDirPath = path.join(shareDirPath, 'applications');
const binDirPath = path.join(prefixDirPath, 'bin');
@ -101,7 +101,7 @@ module.exports = function(packagedAppPath, installDir) {
{
// Install icons
const baseIconThemeDirPath = findBaseIconThemeDirPath();
const fullIconName = atomExecutableName + '.png';
const fullIconName = editorExecutableName + '.png';
let existingIconsFound = false;
fs.readdirSync(baseIconThemeDirPath).forEach(size => {
@ -156,7 +156,7 @@ module.exports = function(packagedAppPath, installDir) {
// Install xdg desktop file
const desktopEntryPath = path.join(
applicationsDirPath,
`${atomExecutableName}.desktop`
`${editorExecutableName}.desktop`
);
if (fs.existsSync(desktopEntryPath)) {
console.log(
@ -170,51 +170,51 @@ module.exports = function(packagedAppPath, installDir) {
CONFIG.repositoryRootPath,
'resources',
'linux',
'atom.desktop.in'
'pulsar.desktop.in'
)
);
const desktopEntryContents = template(desktopEntryTemplate)({
appName,
appFileName: atomExecutableName,
appFileName: editorExecutableName,
description: appDescription,
installDir: prefixDirPath,
iconPath: atomExecutableName
iconPath: editorExecutableName
});
fs.writeFileSync(desktopEntryPath, desktopEntryContents);
}
{
// Add atom executable to the PATH
const atomBinDestinationPath = path.join(binDirPath, atomExecutableName);
if (fs.existsSync(atomBinDestinationPath)) {
// Add pulsar executable to the PATH
const editorBinDestinationPath = path.join(binDirPath, editorExecutableName);
if (fs.existsSync(editorBinDestinationPath)) {
console.log(
`Removing existing executable at "${atomBinDestinationPath}"`
`Removing existing executable at "${editorBinDestinationPath}"`
);
fs.removeSync(atomBinDestinationPath);
fs.removeSync(editorBinDestinationPath);
}
console.log(`Copying atom.sh to "${atomBinDestinationPath}"`);
console.log(`Copying pulsar.sh to "${editorBinDestinationPath}"`);
fs.copySync(
path.join(CONFIG.repositoryRootPath, 'atom.sh'),
atomBinDestinationPath
path.join(CONFIG.repositoryRootPath, 'pulsar.sh'),
editorBinDestinationPath
);
}
{
// Link apm executable to the PATH
const apmBinDestinationPath = path.join(binDirPath, apmExecutableName);
const pkgMgrBinDestinationPath = path.join(binDirPath, pkgMgrExecutableName);
try {
fs.lstatSync(apmBinDestinationPath);
fs.lstatSync(pkgMgrBinDestinationPath);
console.log(
`Removing existing executable at "${apmBinDestinationPath}"`
`Removing existing executable at "${pkgMgrBinDestinationPath}"`
);
fs.removeSync(apmBinDestinationPath);
fs.removeSync(pkgMgrBinDestinationPath);
} catch (e) {}
console.log(`Symlinking apm to "${apmBinDestinationPath}"`);
console.log(`Symlinking apm to "${pkgMgrBinDestinationPath}"`);
fs.symlinkSync(
path.join(
'..',
'share',
atomExecutableName,
editorExecutableName,
'resources',
'app',
'apm',
@ -222,7 +222,7 @@ module.exports = function(packagedAppPath, installDir) {
'.bin',
'apm'
),
apmBinDestinationPath
pkgMgrBinDestinationPath
);
}

View File

@ -4,7 +4,7 @@ const CONFIG = require('../config.js');
module.exports = function() {
if (process.platform === 'win32') {
// Use START as a way to ignore error if Atom.exe isnt running
// Use START as a way to ignore error if Pulsar.exe isnt running
childProcess.execSync(`START taskkill /F /IM ${CONFIG.executableName}`);
} else {
childProcess.execSync(`pkill -9 ${CONFIG.appMetadata.productName} || true`);

View File

@ -1,7 +1,7 @@
const notarize = require('electron-notarize').notarize;
module.exports = async function(packagedAppPath) {
const appBundleId = 'com.github.atom';
const appBundleId = 'com.github.pulsar';
const appleId = process.env.AC_USER;
const appleIdPassword = process.env.AC_PASSWORD;
console.log(`Notarizing application at ${packagedAppPath}`);

View File

@ -22,7 +22,8 @@ module.exports = function() {
} with app name "${appName}"`
);
return runPackager({
appBundleId: 'com.github.atom',
appBundleId: 'com.github.pulsar',
//TODO_PULSAR: Check to see if we should/need to migrate away from GitHub as a CompanyName
appCopyright: `Copyright © 2014-${new Date().getFullYear()} GitHub, Inc. All rights reserved.`,
appVersion: CONFIG.appMetadata.version,
arch: process.platform === 'darwin' ? 'x64' : HOST_ARCH, // OS X is 64-bit only
@ -36,25 +37,26 @@ module.exports = function() {
CONFIG.repositoryRootPath,
'resources',
'mac',
'atom-Info.plist'
'pulsar-Info.plist'
),
helperBundleId: 'com.github.atom.helper',
helperBundleId: 'com.github.pulsar.helper',
icon: path.join(
CONFIG.repositoryRootPath,
'resources',
'app-icons',
CONFIG.channel,
'atom'
'pulsar'
),
name: appName,
out: CONFIG.buildOutputPath,
overwrite: true,
platform: process.platform,
// Atom doesn't have devDependencies, but if prune is true, it will delete the non-standard packageDependencies.
// Pulsar doesn't have devDependencies, but if prune is true, it will delete the non-standard packageDependencies.
prune: false,
win32metadata: {
//TODO_PULSAR: Check to see if we should/need to migrate away from GitHub as a CompanyName
CompanyName: 'GitHub, Inc.',
FileDescription: 'Atom',
FileDescription: 'Pulsar',
ProductName: CONFIG.appName
}
}).then(packagedAppPath => {
@ -109,8 +111,8 @@ function copyNonASARResources(packagedAppPath, bundledResourcesPath) {
)
);
fs.copySync(
path.join(CONFIG.repositoryRootPath, 'atom.sh'),
path.join(bundledResourcesPath, 'app', 'atom.sh')
path.join(CONFIG.repositoryRootPath, 'pulsar.sh'),
path.join(bundledResourcesPath, 'app', 'pulsar.sh')
);
}
if (process.platform === 'darwin') {
@ -128,12 +130,12 @@ function copyNonASARResources(packagedAppPath, bundledResourcesPath) {
'png',
'1024.png'
),
path.join(packagedAppPath, 'atom.png')
path.join(packagedAppPath, 'pulsar.png')
);
} else if (process.platform === 'win32') {
[
'atom.sh',
'atom.js',
'pulsar.sh',
'pulsar.js',
'apm.cmd',
'apm.sh',
'file.ico',
@ -145,7 +147,7 @@ function copyNonASARResources(packagedAppPath, bundledResourcesPath) {
)
);
// Customize atom.cmd for the channel-specific atom.exe name (e.g. atom-beta.exe)
// Customize pulsar.cmd for the channel-specific pulsar.exe name (e.g. pulsar-beta.exe)
generateAtomCmdForChannel(bundledResourcesPath);
}
@ -162,11 +164,11 @@ function setAtomHelperVersion(packagedAppPath) {
const frameworksPath = path.join(packagedAppPath, 'Contents', 'Frameworks');
const helperPListPath = path.join(
frameworksPath,
'Atom Helper.app',
'Pulsar Helper.app',
'Contents',
'Info.plist'
);
console.log(`Setting Atom Helper Version for ${helperPListPath}`);
console.log(`Setting Pulsar Helper Version for ${helperPListPath}`);
spawnSync('/usr/libexec/PlistBuddy', [
'-c',
`Add CFBundleVersion string ${CONFIG.appMetadata.version}`,
@ -197,7 +199,7 @@ function buildAsarUnpackGlobExpression() {
path.join('**', 'node_modules', 'dugite', 'git', '**'),
path.join('**', 'node_modules', 'github', 'bin', '**'),
path.join('**', 'node_modules', 'vscode-ripgrep', 'bin', '**'),
path.join('**', 'resources', 'atom.png')
path.join('**', 'resources', 'pulsar.png')
];
return `{${unpack.join(',')}}`;
@ -207,9 +209,9 @@ function getAppName() {
if (process.platform === 'darwin') {
return CONFIG.appName;
} else if (process.platform === 'win32') {
return CONFIG.channel === 'stable' ? 'atom' : `atom-${CONFIG.channel}`;
return CONFIG.channel === 'stable' ? 'pulsar' : `pulsar-${CONFIG.channel}`;
} else {
return 'atom';
return 'pulsar';
}
}
@ -236,7 +238,7 @@ function renamePackagedAppDir(packageOutputDirPath) {
);
} else if (process.platform === 'linux') {
const appName =
CONFIG.channel !== 'stable' ? `atom-${CONFIG.channel}` : 'atom';
CONFIG.channel !== 'stable' ? `pulsar-${CONFIG.channel}` : 'pulsar';
let architecture;
if (HOST_ARCH === 'ia32') {
architecture = 'i386';
@ -264,13 +266,13 @@ function renamePackagedAppDir(packageOutputDirPath) {
function generateAtomCmdForChannel(bundledResourcesPath) {
const atomCmdTemplate = fs.readFileSync(
path.join(CONFIG.repositoryRootPath, 'resources', 'win', 'atom.cmd')
path.join(CONFIG.repositoryRootPath, 'resources', 'win', 'pulsar.cmd')
);
const atomCmdContents = template(atomCmdTemplate)({
atomExeName: CONFIG.executableName
});
fs.writeFileSync(
path.join(bundledResourcesPath, 'cli', 'atom.cmd'),
path.join(bundledResourcesPath, 'cli', 'pulsar.cmd'),
atomCmdContents
);
}

View File

@ -6,7 +6,7 @@ const CONFIG = require('../config');
module.exports = function(packagePath, ci, stdioOptions) {
const installEnv = Object.assign({}, process.env);
// Set resource path so that apm can load metadata related to Atom.
// Set resource path so that apm can load metadata related to Pulsar.
installEnv.ATOM_RESOURCE_PATH = CONFIG.repositoryRootPath;
childProcess.execFileSync(CONFIG.getApmBinPath(), [ci ? 'ci' : 'install'], {

View File

@ -64,7 +64,7 @@ function transpilePackagesWithCustomTranspilerPaths() {
pathsToCompile.forEach(transpilePath);
}
// Now that we've transpiled everything in-place, we no longer want Atom to try to transpile
// Now that we've transpiled everything in-place, we no longer want Pulsar to try to transpile
// the same files when they're being required.
delete metadata.atomTranspilers;
fs.writeFileSync(

View File

@ -8,6 +8,7 @@ const git = (git, repositoryRootPath) => {
'package-lock.json'
);
try {
//TODO_PULSAR: Update remotes
git.getRemotes((err, remotes) => {
if (!err && !remotes.map(({ name }) => name).includes('ATOM')) {
git.addRemote(

View File

@ -4,7 +4,7 @@ const { REPO_OWNER, MAIN_REPO } = require('../../config');
const requestWithAuth = request.defaults({
baseUrl: 'https://api.github.com',
headers: {
'user-agent': 'atom',
'user-agent': 'pulsar',
authorization: `token ${process.env.AUTH_TOKEN}`
},
owner: REPO_OWNER,
@ -18,7 +18,7 @@ module.exports = {
) => {
let description = `Bumps ${moduleName} from ${installed} to ${latest}`;
if (isCorePackage) {
description = `*List of changes between ${moduleName}@${installed} and ${moduleName}@${latest}: https://github.com/atom/${moduleName}/compare/v${installed}...v${latest}*`;
description = `*List of changes between ${moduleName}@${installed} and ${moduleName}@${latest}: https://github.com/pulsar-edit/${moduleName}/compare/v${installed}...v${latest}*`;
}
return requestWithAuth('POST /repos/:owner/:repo/pulls', {
title: `⬆️ ${moduleName}@${latest}`,
@ -34,7 +34,7 @@ module.exports = {
},
findOpenPRs: async () => {
return requestWithAuth('GET /search/issues', {
q: 'type:pr repo:atom/atom state:open label:"depency ⬆️"'
q: 'type:pr repo:pulsar-edit/pulsar state:open label:"depency ⬆️"'
});
},
checkCIstatus: async ({ ref }) => {

View File

@ -16,7 +16,7 @@ function verifyNode() {
console.log(`Node:\tv${fullVersion}`);
} else {
throw new Error(
`node v10.12+ is required to build Atom. node v${fullVersion} is installed.`
`node v10.12+ is required to build Pulsar. node v${fullVersion} is installed.`
);
}
}
@ -110,7 +110,7 @@ function verifyPython() {
throw new Error(
`NODE_GYP_FORCE_PYTHON is set to: "${binary}", but this is not a valid Python.\n` +
'Please set NODE_GYP_FORCE_PYTHON to something valid, or unset it entirely.\n' +
'(Python 2.6, 2.7 or 3.5+ is required to build Atom.)\n'
'(Python 2.6, 2.7 or 3.5+ is required to build Pulsar.)\n'
);
}
}
@ -139,7 +139,7 @@ function verifyPython() {
} else {
throw new Error(
`\n${triedLog}\n` +
'Python 2.6, 2.7 or 3.5+ is required to build Atom.\n' +
'Python 2.6, 2.7 or 3.5+ is required to build Pulsar.\n' +
'verify-machine-requirements.js was unable to find such a version of Python.\n' +
"Set the PYTHON env var to e.g. 'C:/path/to/Python27/python.exe'\n" +
'if your Python is installed in a non-default location.\n'

View File

@ -48,7 +48,7 @@ const runApmInstall = require('./lib/run-apm-install');
function assertExecutablePaths(executablePaths) {
assert(
executablePaths.length !== 0,
`No atom build found. Please run "script/build" and try again.`
`No Pulsar build found. Please run "script/build" and try again.`
);
assert(
executablePaths.length === 1,
@ -71,13 +71,13 @@ if (process.platform === 'darwin') {
);
} else if (process.platform === 'linux') {
const executablePaths = glob.sync(
path.join(CONFIG.buildOutputPath, 'atom-*', 'atom')
path.join(CONFIG.buildOutputPath, 'pulsar-*', 'pulsar')
);
assertExecutablePaths(executablePaths);
executablePath = executablePaths[0];
} else if (process.platform === 'win32') {
const executablePaths = glob.sync(
path.join(CONFIG.buildOutputPath, '**', 'atom*.exe')
path.join(CONFIG.buildOutputPath, '**', 'pulsar*.exe')
);
assertExecutablePaths(executablePaths);
executablePath = executablePaths[0];

View File

@ -7,12 +7,12 @@ const express = require('express');
const app = express();
const port = process.env.PORT || 3456;
// Load the metadata for the local build of Atom
// Load the metadata for the local build of Pulsar
const buildPath = path.resolve(__dirname, '..', '..', 'out');
const packageJsonPath = path.join(buildPath, 'app', 'package.json');
if (!fs.existsSync(buildPath) || !fs.existsSync(packageJsonPath)) {
console.log(
`This script requires a full Atom build with release packages for the current platform in the following path:\n ${buildPath}\n`
`This script requires a full Pulsar build with release packages for the current platform in the following path:\n ${buildPath}\n`
);
if (process.platform === 'darwin') {
console.log(
@ -37,8 +37,8 @@ console.log(
);
function getMacZip(req, res) {
console.log(`Received request for atom-mac.zip, sending it`);
res.sendFile(path.join(buildPath, 'atom-mac.zip'));
console.log(`Received request for pulsar-mac.zip, sending it`);
res.sendFile(path.join(buildPath, 'pulsar-mac.zip'));
}
function getMacUpdates(req, res) {
@ -46,7 +46,7 @@ function getMacUpdates(req, res) {
const updateInfo = {
name: appMetadata.version,
pub_date: new Date().toISOString(),
url: `http://localhost:${port}/mac/atom-mac.zip`,
url: `http://localhost:${port}/mac/pulsar-mac.zip`,
notes: '<p>No Details</p>'
};
@ -59,7 +59,7 @@ function getMacUpdates(req, res) {
res.json(updateInfo);
} else {
console.log(
`Received request for macOS updates, sending 204 as Atom is up to date (version = ${
`Received request for macOS updates, sending 204 as Pulsar is up to date (version = ${
req.query.version
})`
);
@ -79,7 +79,7 @@ function getReleasesFile(fileName) {
const versionChannel = (versionMatch && versionMatch[1]) || 'stable';
if (releaseChannel !== versionChannel) {
console.log(
`Atom requested an update for version ${
`Pulsar requested an update for version ${
req.query.version
} but the current release channel is ${releaseChannel}`
);
@ -96,9 +96,9 @@ function getNupkgFile(is64bit) {
return function(req, res) {
let nupkgFile = req.params.nupkg;
if (is64bit) {
const nupkgMatch = nupkgFile.match(/atom-(.+)-(delta|full)\.nupkg/);
const nupkgMatch = nupkgFile.match(/pulsar-(.+)-(delta|full)\.nupkg/);
if (nupkgMatch) {
nupkgFile = `atom-x64-${nupkgMatch[1]}-${nupkgMatch[2]}.nupkg`;
nupkgFile = `pulsar-x64-${nupkgMatch[1]}-${nupkgMatch[2]}.nupkg`;
}
}
@ -110,7 +110,7 @@ function getNupkgFile(is64bit) {
}
if (process.platform === 'darwin') {
app.get('/mac/atom-mac.zip', getMacZip);
app.get('/mac/pulsar-mac.zip', getMacZip);
app.get('/api/updates', getMacUpdates);
} else if (process.platform === 'win32') {
app.get('/api/updates/RELEASES', getReleasesFile('RELEASES'));
@ -128,7 +128,7 @@ if (process.platform === 'darwin') {
app.listen(port, () => {
console.log(
`Run Atom with ATOM_UPDATE_URL_PREFIX="http://localhost:${port}" set to test updates!\n`
`Run Pulsar with ATOM_UPDATE_URL_PREFIX="http://localhost:${port}" set to test updates!\n`
.yellow
);
});

View File

@ -15,12 +15,12 @@ const argv = yargs
function getAppName(version) {
const match = version.match(/\d+\.\d+\.\d+(-([a-z]+)(\d+|-\w{4,})?)?$/);
if (!match) {
throw new Error(`Found incorrectly formatted Atom version ${version}`);
throw new Error(`Found incorrectly formatted Pulsar version ${version}`);
} else if (match[2]) {
return `atom-${match[2]}`;
return `pulsar-${match[2]}`;
}
return 'atom';
return 'pulsar';
}
async function getReleaseVersion() {
@ -30,7 +30,7 @@ async function getReleaseVersion() {
url: `https://api.github.com/repos/${REPO_OWNER}/${NIGHTLY_RELEASE_REPO}/releases`,
headers: {
Accept: 'application/vnd.github.v3+json',
'User-Agent': 'Atom Release Build'
'User-Agent': 'Pulsar Release Build'
},
json: true
});

View File

@ -74,7 +74,7 @@ module.exports.generateForVersion = async function(
let prString = changelog.pullRequestsToString(pullRequests);
let title = repo;
if (repo === MAIN_REPO) {
title = 'Atom Core';
title = 'Pulsar Core';
fromTag = oldVersionName;
toTag = releaseVersion;
}
@ -126,7 +126,7 @@ module.exports.generateForNightly = async function(
if (oldReleaseNotes) {
const extractMatch = oldReleaseNotes.match(
/atom\/atom\/commit\/([0-9a-f]{5,40})/
/pulsar-edit\/pulsar\/commit\/([0-9a-f]{5,40})/
);
if (extractMatch.length > 1 && extractMatch[1]) {
output.push('', '---', '');

View File

@ -39,7 +39,7 @@ const releaseVersion = CONFIG.computedAppVersion;
const isNightlyRelease = CONFIG.channel === 'nightly';
const assetsPath = argv.assetsPath || CONFIG.buildOutputPath;
const assetsPattern =
'/**/*(*.exe|*.zip|*.nupkg|*.tar.gz|*.rpm|*.deb|RELEASES*|atom-api.json)';
'/**/*(*.exe|*.zip|*.nupkg|*.tar.gz|*.rpm|*.deb|RELEASES*|pulsar-api.json)';
const assets = glob.sync(assetsPattern, { root: assetsPath, nodir: true });
const azureBlobPath = argv.azureBlobPath || `releases/v${releaseVersion}/`;

View File

@ -52,7 +52,7 @@ const stat = util.promisify(fs.stat);
let nextId = 0;
// Essential: Atom global for dealing with packages, themes, menus, and the window.
// Essential: Pulsar global for dealing with packages, themes, menus, and the window.
//
// An instance of this class is always available as the `atom` global.
class AtomEnvironment {
@ -387,15 +387,15 @@ class AtomEnvironment {
registerDefaultOpeners() {
this.workspace.addOpener(uri => {
switch (uri) {
case 'atom://.atom/stylesheet':
case 'atom://.pulsar/stylesheet':
return this.workspace.openTextFile(
this.styles.getUserStyleSheetPath()
);
case 'atom://.atom/keymap':
case 'atom://.pulsar/keymap':
return this.workspace.openTextFile(this.keymaps.getUserKeymapPath());
case 'atom://.atom/config':
case 'atom://.pulsar/config':
return this.workspace.openTextFile(this.config.getUserConfigPath());
case 'atom://.atom/init-script':
case 'atom://.pulsar/init-script':
return this.workspace.openTextFile(this.getUserInitScriptPath());
}
});
@ -534,7 +534,7 @@ class AtomEnvironment {
}
/*
Section: Atom Details
Section: Pulsar Details
*/
// Public: Returns a {Boolean} that is `true` if the current window is in development mode.
@ -563,7 +563,7 @@ class AtomEnvironment {
return this.firstLoad;
}
// Public: Get the full name of this Atom release (e.g. "Atom", "Atom Beta")
// Public: Get the full name of this Pulsar release (e.g. "Pulsar", "Pulsar Beta")
//
// Returns the app name {String}.
getAppName() {
@ -571,7 +571,7 @@ class AtomEnvironment {
return this.appName;
}
// Public: Get the version of the Atom application.
// Public: Get the version of the Pulsar application.
//
// Returns the version text {String}.
getVersion() {
@ -580,10 +580,10 @@ class AtomEnvironment {
return this.appVersion;
}
// Public: Gets the release channel of the Atom application.
// Public: Gets the release channel of the Pulsar application.
//
// Returns the release channel as a {String}. Will return a specific release channel
// name like 'beta' or 'nightly' if one is found in the Atom version or 'stable'
// name like 'beta' or 'nightly' if one is found in the Pulsar version or 'stable'
// otherwise.
getReleaseChannel() {
return getReleaseChannel(this.getVersion());
@ -625,10 +625,10 @@ class AtomEnvironment {
}
/*
Section: Managing The Atom Window
Section: Managing The Pulsar Window
*/
// Essential: Open a new Atom window using the given options.
// Essential: Open a new Pulsar window using the given options.
//
// Calling this method without an options parameter will open a prompt to pick
// a file/folder to open in the new window.
@ -638,10 +638,10 @@ class AtomEnvironment {
// * `newWindow` A {Boolean}, true to always open a new window instead of
// reusing existing windows depending on the paths to open.
// * `devMode` A {Boolean}, true to open the window in development mode.
// Development mode loads the Atom source from the locally cloned
// repository and also loads all the packages in ~/.atom/dev/packages
// Development mode loads the Pulsar source from the locally cloned
// repository and also loads all the packages in ~/.pulsar/dev/packages
// * `safeMode` A {Boolean}, true to open the window in safe mode. Safe
// mode prevents all packages installed to ~/.atom/packages from loading.
// mode prevents all packages installed to ~/.pulsar/packages from loading.
open(params) {
return this.applicationDelegate.open(params);
}
@ -1773,7 +1773,7 @@ module.exports = AtomEnvironment;
// Preserve this deprecation until 2.0. Sorry. Should have removed Q sooner.
Promise.prototype.done = function (callback) {
deprecate('Atom now uses ES6 Promises instead of Q. Call promise.then instead of promise.done')
deprecate('Pulsar now uses ES6 Promises instead of Q. Call promise.then instead of promise.done')
return this.then(callback)
}

View File

@ -27,15 +27,15 @@ const getAppDirectory = () => {
module.exports = {
setAtomHome: homePath => {
// When a read-writeable .atom folder exists above app use that
const portableHomePath = path.join(getAppDirectory(), '..', '.atom');
// When a read-writeable .pulsar folder exists above app use that
const portableHomePath = path.join(getAppDirectory(), '..', '.pulsar');
if (fs.existsSync(portableHomePath)) {
if (hasWriteAccess(portableHomePath)) {
process.env.ATOM_HOME = portableHomePath;
} else {
// A path exists so it was intended to be used but we didn't have rights, so warn.
console.log(
`Insufficient permission to portable Atom home "${portableHomePath}".`
`Insufficient permission to portable Pulsar home "${portableHomePath}".`
);
}
}
@ -46,7 +46,7 @@ module.exports = {
}
// Fall back to default .atom folder in users home folder
process.env.ATOM_HOME = path.join(homePath, '.atom');
process.env.ATOM_HOME = path.join(homePath, '.pulsar');
},
setUserData: app => {

View File

@ -1,7 +1,7 @@
const crypto = require('crypto');
const { clipboard } = require('electron');
// Extended: Represents the clipboard used for copying and pasting in Atom.
// Extended: Represents the clipboard used for copying and pasting in Pulsar.
//
// An instance of this class is always available as the `atom.clipboard` global.
//

View File

@ -60,8 +60,8 @@ module.exports = class CommandInstaller {
installAtomCommand(askForPrivilege, callback) {
this.installCommand(
path.join(this.getResourcesDirectory(), 'app', 'atom.sh'),
this.getCommandNameForChannel('atom'),
path.join(this.getResourcesDirectory(), 'app', 'pulsar.sh'),
this.getCommandNameForChannel('pulsar'),
askForPrivilege,
callback
);

View File

@ -12,7 +12,7 @@ let SequenceCount = 0;
// presented in the command palette.
//
// The global command registry facilitates a style of event handling known as
// *event delegation* that was popularized by jQuery. Atom commands are expressed
// *event delegation* that was popularized by jQuery. Pulsar commands are expressed
// as custom DOM events that can be invoked on the currently focused element via
// a key binding or manually via the command palette. Rather than binding
// listeners for command events directly to DOM nodes, you instead register

View File

@ -1,6 +1,6 @@
'use strict';
// Atom's compile-cache when installing or updating packages, called by apm's Node-js
// Pulsar's compile-cache when installing or updating packages, called by apm's Node-js
const path = require('path');
const fs = require('fs-plus');

View File

@ -77,6 +77,7 @@ module.exports = class ConfigFile {
this.requestLoad();
});
} catch (error) {
//TODO_PULSAR: Find out why the atom global variable isn't available at this point
this.emitter.emit(
'did-error',
dedent`

View File

@ -51,7 +51,7 @@ const configSchema = {
default: 'native',
enum: ['native', 'hidden'],
description:
'Experimental: The title bar can be completely `hidden`.<br>This setting will require a relaunch of Atom to take effect.'
'Experimental: The title bar can be completely `hidden`.<br>This setting will require a relaunch of Pulsar to take effect.'
},
versionPinnedPackages: {
type: 'array',
@ -80,12 +80,12 @@ const configSchema = {
type: 'string',
default: 'prompt',
description:
'When should Atom register itself as the default handler for atom:// URIs',
'When should Pulsar register itself as the default handler for atom:// URIs',
enum: [
{
value: 'prompt',
description:
'Prompt to register Atom as the default atom:// URI handler'
'Prompt to register Pulsar as the default atom:// URI handler'
},
{
value: 'always',
@ -105,7 +105,7 @@ const configSchema = {
type: 'string'
},
description:
'Names of UI and syntax themes which will be used when Atom starts.'
'Names of UI and syntax themes which will be used when Pulsar starts.'
},
audioBeep: {
type: 'boolean',
@ -118,7 +118,7 @@ const configSchema = {
default: false,
title: 'Close Deleted File Tabs',
description:
'Close corresponding editors when a file is deleted outside Atom.'
'Close corresponding editors when a file is deleted outside Pulsar.'
},
destroyEmptyPanes: {
type: 'boolean',
@ -312,7 +312,7 @@ const configSchema = {
enum: ['no', 'yes', 'always'],
default: 'yes',
description:
"When selected 'no', a blank environment is loaded. When selected 'yes' and Atom is started from the icon or `atom` by itself from the command line, restores the last state of all Atom windows; otherwise a blank environment is loaded. When selected 'always', restores the last state of all Atom windows always, no matter how Atom is started."
"When selected 'no', a blank environment is loaded. When selected 'yes' and Pulsar is started from the icon or `atom` by itself from the command line, restores the last state of all Pulsar windows; otherwise a blank environment is loaded. When selected 'always', restores the last state of all Pulsar windows always, no matter how Pulsar is started."
},
reopenProjectMenuCount: {
description:
@ -322,7 +322,7 @@ const configSchema = {
},
automaticallyUpdate: {
description:
'Automatically update Atom when a new release is available.',
'Automatically update Pulsar when a new release is available.',
type: 'boolean',
default: true
},
@ -341,8 +341,8 @@ const configSchema = {
},
telemetryConsent: {
description:
'Allow usage statistics and exception reports to be sent to the Atom team to help improve the product.',
title: 'Send Telemetry to the Atom Team',
'Allow usage statistics and exception reports to be sent to the Pulsar team to help improve the product.',
title: 'Send Telemetry to the Pulsar Team',
type: 'string',
default: 'undecided',
enum: [
@ -358,7 +358,7 @@ const configSchema = {
{
value: 'undecided',
description:
'Undecided (Atom will ask again next time it is launched)'
'Undecided (Pulsar will ask again next time it is launched)'
}
]
},
@ -370,7 +370,7 @@ const configSchema = {
},
fileSystemWatcher: {
description:
'Choose the underlying implementation used to watch for filesystem changes. Emulating changes will miss any events caused by applications other than Atom, but may help prevent crashes or freezes.',
'Choose the underlying implementation used to watch for filesystem changes. Emulating changes will miss any events caused by applications other than Pulsar, but may help prevent crashes or freezes.',
type: 'string',
default: 'native',
enum: [
@ -388,7 +388,7 @@ const configSchema = {
},
{
value: 'atom',
description: 'Emulated with Atom events'
description: 'Emulated with Pulsar events'
}
]
},
@ -399,7 +399,7 @@ const configSchema = {
},
colorProfile: {
description:
"Specify whether Atom should use the operating system's color profile (recommended) or an alternative color profile.<br>Changing this setting will require a relaunch of Atom to take effect.",
"Specify whether Pulsar should use the operating system's color profile (recommended) or an alternative color profile.<br>Changing this setting will require a relaunch of Pulsar to take effect.",
type: 'string',
default: 'default',
enum: [
@ -587,7 +587,7 @@ const configSchema = {
invisibles: {
type: 'object',
description:
'A hash of characters Atom will use to render whitespace characters. Keys are whitespace character types, values are rendered characters (use value false to turn off individual whitespace character types).',
'A hash of characters Pulsar will use to render whitespace characters. Keys are whitespace character types, values are rendered characters (use value false to turn off individual whitespace character types).',
properties: {
eol: {
type: ['boolean', 'string'],
@ -650,7 +650,7 @@ if (process.platform === 'darwin') {
default: 'native',
enum: ['native', 'custom', 'custom-inset', 'hidden'],
description:
'Experimental: A `custom` title bar adapts to theme colors. Choosing `custom-inset` adds a bit more padding. The title bar can also be completely `hidden`.<br>Note: Switching to a custom or hidden title bar will compromise some functionality.<br>This setting will require a relaunch of Atom to take effect.'
'Experimental: A `custom` title bar adapts to theme colors. Choosing `custom-inset` adds a bit more padding. The title bar can also be completely `hidden`.<br>Note: Switching to a custom or hidden title bar will compromise some functionality.<br>This setting will require a relaunch of Pulsar to take effect.'
};
configSchema.core.properties.simpleFullScreenWindows = {
type: 'boolean',

View File

@ -13,7 +13,7 @@ const ScopeDescriptor = require('./scope-descriptor');
const schemaEnforcers = {};
// Essential: Used to access all of Atom's configuration details.
// Essential: Used to access all of Pulsar's configuration details.
//
// An instance of this class is always available as the `atom.config` global.
//
@ -616,7 +616,7 @@ class Config {
// See [the scopes docs](http://flight-manual.atom.io/behind-atom/sections/scoped-settings-scopes-and-scope-descriptors/)
// for more information.
//
// Returns the value from Atom's default settings, the user's configuration
// Returns the value from Pulsar's default settings, the user's configuration
// file in the type specified by the configuration schema.
get(...args) {
let keyPath, options, scope;
@ -688,7 +688,7 @@ class Config {
// Essential: Sets the value for a configuration setting.
//
// This value is stored in Atom's internal configuration file.
// This value is stored in Pulsar's internal configuration file.
//
// ### Examples
//

Some files were not shown because too many files have changed in this diff Show More