A Community-led Hyper-Hackable Text Editor
Go to file
Andrew Dupont e49b919703 [language-(java|type)script] Add exhaustive indentation configuration
We are crossing the Rubicon.

https://github.com/orgs/pulsar-edit/discussions/249 is a discussion of specific ways that indentation is different in JavaScript because of the new grammar. We intentionally didn’t try to preserve the indentation decisions in the old TextMate grammar, but this is (predictably) disruptive to some people. We don’t want to punt like legacy Tree-sitter did and rely on the TextMate grammar’s coarse regexes to decide what gets indented, but we can at least make the new indentation system granularly configurable.

This commit makes practically every indentation decision configurable in JavaScript and TypeScript. It groups these settings under a new “Indentation” section in each package’s settings.

I might decide that this goes too far and roll back the granular settings for `{`, `[`, and `(`, but the other indentation hints are absolutely matters of taste, so it’s only proper that users can choose to disable them.

In the long run, we could _consider_ allowing users to swap in another indentation engine altogther, much like #895 proposes for folds. That would let us legitimately offer users a way to opt into “the way the TextMate grammar does it” without affecting other users.

Another stopgap option would be to add a way for a user to disable indentation hinting altogether for a given grammar.
2024-01-28 11:21:59 -08:00
.github Upload videos unless task is cancelled 2024-01-21 20:48:13 -08:00
docs GH Action Documentation 2024-01-07 23:36:02 +00:00
dot-atom rebrand and relinking to new site 2022-12-31 20:07:22 +00:00
exports Reformat all JS files using prettier 2019-05-31 18:33:56 +02:00
hooks Replace incorrect spellings of 'macOS' with the correct one 2023-01-19 18:54:05 +01:00
integration A vain attempt to get the integration testing working for PHP 2024-01-21 16:11:34 -08:00
keymaps [keymaps] Rename A[a]tom -> P[p]ulsar 2022-08-17 01:22:11 -03:00
menus Revert "[skip ci] Create i18n API" 2023-04-06 16:44:38 -03:00
packages [language-(java|type)script] Add exhaustive indentation configuration 2024-01-28 11:21:59 -08:00
ppm@0bc207133b ppm: Update ppm to commit 0bc207133b26de82aa28500e 2023-12-18 20:30:03 -05:00
resources Fix exit codes for User Installs, better errors 2023-06-23 21:42:06 -07:00
script Fix CI validation trying to check for a file that has been deleted 2024-01-18 13:53:23 -08:00
spec Fix issue with looking up objects in atom.config 2024-01-28 00:47:32 -08:00
src Fix issue with looking up objects in atom.config 2024-01-28 00:47:32 -08:00
static Migrate to getAppDetails() 2023-09-03 14:50:39 -07:00
vendor Add a modern Tree-sitter PHP grammar 2024-01-11 15:07:07 -08:00
.cirrus.yml CI: Update Rolling upload token for Cirrus 2023-11-21 02:19:03 -05:00
.codacy.yaml File Glob not having the effect expected 2022-11-20 22:32:37 -08:00
.eslintignore Add some more stray .eslintrc files 2024-01-18 13:53:23 -08:00
.eslintrc.js Stop ESLint from complaining about require('atom') 2024-01-22 23:32:35 -08:00
.gitattributes Make changelog easier to merge 2023-05-16 10:51:48 -03:00
.gitignore Ignore direnv and asdf config files 2023-04-06 12:39:43 -07:00
.gitmodules Update submodule to use the public URL 2022-09-07 18:54:44 -03:00
.nvmrc bump .nvmrc to 16 2022-09-26 01:02:20 +01:00
.yarnrc Make yarn sane 2023-05-29 21:07:19 -03:00
CHANGELOG.md Add last minute PR update 2024-01-15 17:05:58 -08:00
CODE_OF_CONDUCT.md 📝 Update Contributing.md (#20707) 2021-01-19 06:34:39 +03:00
CONTRIBUTING.md use init.js by default 2022-11-03 14:15:11 +01:00
Dockerfile rename Atom to Pulsar in Dockerfile 2022-12-13 19:33:04 +00:00
LICENSE.md update copyright year (2023) 2023-01-16 20:12:46 -06:00
package.json Add back dev 2024-01-15 20:09:52 -08:00
playwright.config.ts Packages test 2022-11-19 01:04:18 -03:00
pnpm-workspace.yaml chore: sync with the repository template 2021-07-21 17:59:40 -05:00
PULL_REQUEST_TEMPLATE.md Apply suggestions from code review 2019-06-14 09:21:07 -07:00
pulsar.sh Return to original logic for ATOM_DISABLE_SHELLING_OUT_FOR_ENVIRONMENT 2023-12-12 20:28:55 -08:00
README.md Small Readme Touchup 2023-02-26 13:16:23 -08:00
SUPPORT.md SUPPORT.md add developer documentation, and a minor update (#430) 2022-07-05 19:03:49 -07:00
yarn.lock GH Action Documentation 2024-01-11 22:38:07 +00:00


Badge Discussions Badge Discord Badge Reddit

Badge Status Badge License


Pulsar


Button Install Button Documentation Button Build

Badge Codacy Badge Crowdin Badge OpenCollective


A Community-led Hyper-Hackable Text Editor, Forked from Atom, built on Electron.

Designed to be deeply customizable, but still approachable using the default configuration.



Preview