Comparar commits

...

3772 Commits

Autor SHA1 Mensagem Data
probablycorey 77bf358d7a Upgrade to welcome@0.9.0 2014-02-26 11:55:43 -08:00
Kevin Sawicki 9ed7254277 Use 16 as font size default 2014-02-26 11:46:07 -08:00
Kevin Sawicki 1a08d99079 Prepare 0.58.0 release 2014-02-26 11:38:41 -08:00
Kevin Sawicki f852dcfd20 Upgrade apm for search command auth fix 2014-02-26 11:23:03 -08:00
Kevin Sawicki 04a4f4d5bb Upgrade apm for removed travis command 2014-02-26 11:17:46 -08:00
Kevin Sawicki 2e42dd3308 Upgrade apm version package.json version bump 2014-02-26 10:44:56 -08:00
Kevin Sawicki e9cf8d4647 Remove internal docs for beta
These can come back, just don't want them searchable for beta.
2014-02-26 10:30:15 -08:00
Kevin Sawicki 216351803b Upgrade to metrics@0.30.0 2014-02-26 10:17:40 -08:00
Kevin Sawicki d3eb969095 Upgrade to metrics@0.29.0 2014-02-26 10:14:26 -08:00
Kevin Sawicki 77c405626f Prepare 0.57.0 release 2014-02-26 09:55:28 -08:00
Kevin Sawicki e0af2122d2 📝 Add missing comma 2014-02-26 09:22:02 -08:00
Kevin Sawicki 1bd1121d50 📝 when instead of with 2014-02-26 09:20:57 -08:00
Kevin Sawicki 54e2a2af9d Upgrade to language-coffee-script@0.13.0 2014-02-26 08:37:46 -08:00
Kevin Sawicki 90a0b31cf8 Upgrade to feedback@0.27.0 2014-02-26 08:36:18 -08:00
Kevin Sawicki 1b257df5cf Upgrade to welcome@0.8.0 2014-02-25 21:34:33 -08:00
probablycorey b73acc88a7 Send release notes along with releaseName 2014-02-25 20:40:14 -08:00
Kevin Sawicki c6bb6b48b6 Upgrade to welcome@0.7.0 2014-02-25 20:32:52 -08:00
Kevin Sawicki cb95c3050d Prepare 0.56.0 release 2014-02-25 20:11:20 -08:00
Kevin Sawicki 3434a68ac0 Only use token to download grunt-download-atom-shell 2014-02-25 19:55:19 -08:00
Kevin Sawicki 9a941b97cb Use new atom-bot token 2014-02-25 19:52:59 -08:00
Kevin Sawicki 9074219145 Bump biscotto to 2.1.1 2014-02-25 19:41:45 -08:00
Kevin Sawicki e8d9512f02 Set stability level to 1 2014-02-25 19:34:24 -08:00
Kevin Sawicki 764e4ac7dd Upgrade apm for auth changes 2014-02-25 19:23:26 -08:00
Kevin Sawicki 9350b9dc7b Upgrade apm for template tweaks 2014-02-25 18:19:26 -08:00
Kevin Sawicki fb4e16250a Upgrade to markdown-preview@0.37.0 2014-02-25 18:19:26 -08:00
Corey Johnson 32a1d0c134 Prepare 0.55.0 release 2014-02-25 17:36:23 -08:00
Kevin Sawicki d471d60bfa Upgrade to markdown-preview@0.36.0 2014-02-25 16:41:15 -08:00
Corey Johnson 75d6aab811 🔥 logs 2014-02-25 16:27:39 -08:00
Corey Johnson a80fcff81c Upgrade to release-notes@0.24.0 2014-02-25 16:26:09 -08:00
Kevin Sawicki 42bce0d438 Upgrade ui themes 2014-02-25 16:25:29 -08:00
Corey Johnson 168e1d7c58 Prepare 0.54.0 release 2014-02-25 16:21:31 -08:00
Kevin Sawicki bdf0f7d10a Upgrade tomorrow theme 2014-02-25 16:09:13 -08:00
Kevin Sawicki d21060fd87 Upgrade solarized themes 2014-02-25 16:01:59 -08:00
Corey Johnson ddc7ebb576 Revert "Make master ci output verbose"
This reverts commit b1492037d5.
2014-02-25 15:59:20 -08:00
Kevin Sawicki 4ad45a1955 Upgrade syntax themes to 0.14.0 2014-02-25 15:38:41 -08:00
Kevin Sawicki 6c5b7cbd1e Downloaded instead of downloading 2014-02-25 15:21:09 -08:00
Corey Johnson b1492037d5 Make master ci output verbose 2014-02-25 14:45:26 -08:00
Kevin Sawicki 7a5537d01e Update icon 2014-02-25 13:26:42 -08:00
Kevin Sawicki 91fbb10fd3 Upgrade to biscotto@2.1 2014-02-25 11:47:10 -08:00
Corey Johnson 684687e412 Upgrade to welcome@0.6.0 2014-02-25 10:30:27 -08:00
Kevin Sawicki 4612d42fb3 Remove github-sign-in package from bundled packages 2014-02-25 10:22:20 -08:00
Kevin Sawicki 026a0672df Remove github-sign-in package from bundled packages 2014-02-25 10:19:52 -08:00
Kevin Sawicki fe4b60d6b0 Prepare 0.53.0 release 2014-02-25 10:17:08 -08:00
Cheng Zhao 040d76e3bf Merge pull request #1581 from atom/atom-shell-v0.10.1
Upgrade to atom-shell@0.10.1
2014-02-25 14:19:42 +00:00
Cheng Zhao 1885d50374 Upgrade to atom-shell@0.10.1 2014-02-25 20:14:14 +08:00
Kevin Sawicki f9e508e958 Upgrade apm for link tweaks 2014-02-24 17:40:13 -08:00
Kevin Sawicki de695e31d2 Drop www in atom.io links 2014-02-24 17:38:49 -08:00
Kevin Sawicki 4eabb5bec6 Upgrade to settings-view@0.82.0 2014-02-24 17:37:01 -08:00
Kevin Sawicki f3ec868af6 Remove Report an Issue menu 2014-02-24 17:34:02 -08:00
Kevin Sawicki 4e96d24d78 Upgrade to tree-view@0.71.0 2014-02-24 17:27:29 -08:00
Kevin Sawicki b5c3c01cc1 Upgrade to fuzzy-finder@0.37.0 2014-02-24 17:22:09 -08:00
Kevin Sawicki 13aa29b485 :memo TomDoc BufferedNodeProcess 2014-02-24 17:09:22 -08:00
Kevin Sawicki be5342fb51 Assign all ivars in constructor 2014-02-24 16:59:58 -08:00
Kevin Sawicki 50dc82d074 Add example to overview 2014-02-24 16:59:15 -08:00
Kevin Sawicki 4358ff9183 Add Editor to usage message 2014-02-24 16:41:34 -08:00
Kevin Sawicki 336f0382b5 Don't require ~/github/atom for dev mode windows
Use ~/github/atom when available but keep the dev mode flag
on the window's load settings even when it does not exist.

Changes both cmd-shift-o and `atom --dev`
2014-02-24 16:38:17 -08:00
Kevin Sawicki 0307c0e6c9 Rename ~/.atom/styles.css to ~/.atom/styles.less 2014-02-24 16:14:05 -08:00
Kevin Sawicki fc1e62471f Upgrade to feedback@0.26.0 2014-02-24 16:00:47 -08:00
Kevin Sawicki 137e9aacab Implement ::serialize in example 2014-02-24 15:26:04 -08:00
Kevin Sawicki 4ddc6c1c1d Don't bundle gists package
It will come back better than ever
2014-02-24 15:22:14 -08:00
Kevin Sawicki ef12913422 Upgrade apm for login fix and template updates 2014-02-24 15:21:24 -08:00
Kevin Sawicki 29c36836fe Upgrade to jasmine-tagged 1.1.1 2014-02-24 10:29:29 -08:00
Nathan Sobo 5c2614544d Update tabs to 0.24.0 for undefined underscore fix 2014-02-24 11:08:12 -07:00
Nathan Sobo 4c1d85e2bf 💄 A few grammar tweaks to creating-a-theme.md 2014-02-24 10:42:41 -07:00
Kevin Sawicki 2dd04c449c Merge pull request #1578 from atom/ks-dont-export-fs-and-_
Don't export fs and _
2014-02-23 17:35:37 -08:00
Kevin Sawicki 55f4a7b63e Remove unneeded exists checks 2014-02-23 17:26:49 -08:00
Kevin Sawicki a651254e38 Require fs-plus directly in specs 2014-02-23 17:19:00 -08:00
Kevin Sawicki 1131952a54 Remove stray unicode char 2014-02-23 17:11:38 -08:00
Kevin Sawicki 189ebc4476 Remove _/fs from modules directly 2014-02-23 17:09:05 -08:00
Kevin Sawicki 0688ddf083 Remove _ and fs from exports 2014-02-23 17:05:26 -08:00
Kevin Sawicki de2e59ddcb Upgrade to find-and-replace@0.85.0 2014-02-23 17:04:23 -08:00
Kevin Sawicki 41632f2d95 Upgrade to tabs@0.23.0 2014-02-23 17:03:26 -08:00
Kevin Sawicki d21e8f0aa8 Upgrade to spell-check@0.26.0 2014-02-23 16:57:25 -08:00
Kevin Sawicki 5521d3765a Upgrade to wrap-guide@0.15.0 2014-02-23 16:55:35 -08:00
Kevin Sawicki d8b4e00fa8 Upgrade to whitespace@0.15.0 2014-02-23 16:50:18 -08:00
Kevin Sawicki e1906ec9ba Upgrade to welcome@0.5.0 2014-02-23 16:45:53 -08:00
Kevin Sawicki 35fce94025 Upgrade to update-package-dependencies@0.4.0 2014-02-23 16:41:49 -08:00
Kevin Sawicki 4708ffa8f6 Upgrade to tree-view@0.70.0 2014-02-23 16:36:15 -08:00
Kevin Sawicki 8a858a1836 Upgrade to to timecop@0.15.0 2014-02-23 16:27:23 -08:00
Kevin Sawicki f8ce0be095 Upgrade to tabs@0.22.0 2014-02-23 16:20:44 -08:00
Kevin Sawicki cb17078c48 Upgrade to symbols-view@0.38.0 2014-02-23 16:14:32 -08:00
Kevin Sawicki 28ed117db8 Upgrade to styleguide@0.25.0 2014-02-23 16:05:05 -08:00
Kevin Sawicki 67d505fc7e Upgrade to status-bar@0.33.0 2014-02-23 15:59:01 -08:00
Kevin Sawicki dba2ab55e0 Upgrade to snippets@0.32.0 2014-02-23 15:52:58 -08:00
Kevin Sawicki 119bf1a879 Upgrade to settings-view@0.81.0 2014-02-23 15:48:11 -08:00
Kevin Sawicki 30dd202f33 Upgrade to release-notes@0.23.0 2014-02-23 15:43:42 -08:00
Kevin Sawicki 4a4285b18f Upgrade to package-generator@0.28.0 2014-02-23 15:38:35 -08:00
Kevin Sawicki 37b5a00df3 Upgrade to open-on-github@0.21.0 2014-02-23 15:30:55 -08:00
Kevin Sawicki 45fff99967 Upgrade to metrics@0.28.0 2014-02-23 15:26:53 -08:00
Kevin Sawicki c319329b23 Upgrade to markdown-preview@0.35.0 2014-02-23 15:12:57 -08:00
Kevin Sawicki e280aa7f40 Update to link@0.18.0 2014-02-23 15:11:51 -08:00
Kevin Sawicki f06a976052 Upgrade to keybinding-resolver@0.11.0 2014-02-23 15:02:26 -08:00
Kevin Sawicki 77b8b51c16 Upgrade to image-view@0.25.0 2014-02-23 14:52:29 -08:00
Kevin Sawicki 3b86bb528c Upgrade to grammar-selector@0.21.0 2014-02-23 14:28:30 -08:00
Kevin Sawicki d55acdd67b Upgrade to go-to-line@0.17.0 2014-02-23 14:23:51 -08:00
Kevin Sawicki de8d0197ff Upgrade to github-sign-in@0.20.0 2014-02-23 14:17:50 -08:00
Kevin Sawicki 1fb9697229 Upgrade to git-diff@0.25.0 2014-02-23 14:09:30 -08:00
Kevin Sawicki 5f8fe698ba Upgrade to gists@0.18.0 2014-02-23 13:56:13 -08:00
Kevin Sawicki ed41ba49f9 Upgrade to fuzzy-finder@0.36.0 2014-02-23 13:51:56 -08:00
Kevin Sawicki b500b23a69 Upgrade to find-and-replace@0.84.0 2014-02-23 13:35:36 -08:00
Kevin Sawicki 27099392f4 Upgrade to feedback@0.25.0 2014-02-23 13:26:16 -08:00
Kevin Sawicki 19e63996ac Upgrade to exception-reporting@0.15.0 2014-02-23 13:17:09 -08:00
Kevin Sawicki 87a4f3fc20 Upgrade to dev-live-reload@0.28.0 2014-02-23 13:13:01 -08:00
Kevin Sawicki 1dfed85f37 Upgrade to command-palette@0.18.0 2014-02-23 12:58:49 -08:00
Kevin Sawicki cac2599b55 Upgrade to bracket-matcher@0.22.0 2014-02-23 12:53:47 -08:00
Kevin Sawicki d765e7f115 Upgrade to bookmarks@0.21.0 2014-02-23 12:48:20 -08:00
Kevin Sawicki 552af032f4 Upgrade to background-tips@0.8.0 2014-02-23 12:40:51 -08:00
Kevin Sawicki 9bd82b201c Upgrade to autosave@0.12.0 2014-02-23 12:34:40 -08:00
Kevin Sawicki 662e8b8a11 Upgrade to autoflow@0.15.0 2014-02-23 12:29:21 -08:00
Kevin Sawicki eda4e53b2c Upgrade to autocomplete@0.24.0 2014-02-23 12:24:47 -08:00
Kevin Sawicki b8cbc3b5af Upgrade to archive-view@0.24.0 2014-02-23 12:09:49 -08:00
Kevin Sawicki f6309ec489 Mention menus for opening ~/.atom files 2014-02-23 11:57:20 -08:00
Kevin Sawicki be30cce41a Upgrade to settings-view@0.79.0 2014-02-23 10:30:52 -08:00
Daniel Hengeveld a6efeb7a19 Merge pull request #1575 from atom/organization-over-org
Prefer 'organization' over 'org'
2014-02-22 22:18:00 -08:00
Kevin Sawicki bc3791f738 Make it more obvious that example argument is a folder 2014-02-22 18:50:56 -08:00
Kevin Sawicki a8cc73c5e6 📝 Add deeper instructions on project tags 2014-02-22 18:45:53 -08:00
Kevin Sawicki 2a8dce75cd 📝 Tweak add/move/delete intro sentence 2014-02-22 18:31:52 -08:00
Kevin Sawicki e7200fb938 📝 Mention cmd-shift-b 2014-02-22 18:29:31 -08:00
Kevin Sawicki 8c60207fde 📝 on instead of at 2014-02-22 18:27:53 -08:00
Kevin Sawicki 1ca86d36fd Use .ctags file from symbols view 2014-02-22 18:27:07 -08:00
Kevin Sawicki 6f971901d7 📝 Settings view not preferences pane 2014-02-22 18:25:50 -08:00
Kevin Sawicki 6f353b6c54 Upgrade apm for init/view fixes 2014-02-22 18:23:27 -08:00
Kevin Sawicki a7ebdbb361 Update customizing doc for new settings view UI 2014-02-22 18:23:10 -08:00
Kevin Sawicki d84a0337b4 Merge pull request #1572 from atom/ks-review-theme-doc
Review theme doc
2014-02-22 17:41:10 -08:00
Kevin Sawicki 0d1f980940 Correct grammar in clone step 2014-02-22 17:26:52 -08:00
Kevin Sawicki cf382ea2f8 style instead of styles 2014-02-22 17:26:52 -08:00
Kevin Sawicki a674950ce1 Your instead of you 2014-02-22 17:26:52 -08:00
Kevin Sawicki 2b7bd8a9d7 📝 Document theme key in package.json 2014-02-22 17:26:52 -08:00
Kevin Sawicki d98fef52f2 📝 Update create a theme doc 2014-02-22 17:26:52 -08:00
Kevin Sawicki c2d1a10684 Upgrade to package-generator@0.27.0 2014-02-22 17:26:52 -08:00
Kevin Sawicki 2580c3e29f Upgrade to settings-view@0.78.0 2014-02-22 17:04:35 -08:00
Kevin Sawicki d2a340c8d0 Upgrade to snippets@0.31.0 2014-02-22 16:53:59 -08:00
Kevin Sawicki 8ec01b1583 Upgrade to language-make@0.8.0 2014-02-22 16:50:20 -08:00
Kevin Sawicki 1e3dc14729 Upgrade to language-yaml@0.6.0 2014-02-22 16:47:04 -08:00
Kevin Sawicki 253593431d Upgrade to language-xml@0.7.0 2014-02-22 16:38:49 -08:00
Kevin Sawicki 730fbec9ce Upgrade to language-gfm@0.18.0 2014-02-22 16:36:09 -08:00
Kevin Sawicki ec70b71511 Upgrade to language-toml@0.11.0 2014-02-22 16:35:04 -08:00
Kevin Sawicki 0b33709c69 Upgrade to language-toml@0.10.0 2014-02-22 16:33:04 -08:00
Kevin Sawicki 7db3f7fefb Upgrade to language-todo@0.6.0 2014-02-22 16:30:15 -08:00
Kevin Sawicki 9bb81b3db9 Upgrade to language-text@0.6.0 2014-02-22 16:27:27 -08:00
Kevin Sawicki dc1ee10aa4 Upgrade to language-sql@0.7.0 2014-02-22 16:15:15 -08:00
Kevin Sawicki 18214be4f7 Upgrade to language-source@0.7.0 2014-02-22 16:13:34 -08:00
Kevin Sawicki 1dd4e5bb87 Upgrade to language-shellscript@0.7.0 2014-02-22 16:07:29 -08:00
Kevin Sawicki 5c17e20a23 Upgrade to language-sass@0.8.0 2014-02-22 16:04:35 -08:00
Kevin Sawicki b040aed702 Upgrade to language-sass@0.7.0 2014-02-22 16:03:37 -08:00
Kevin Sawicki b68b075b1e Upgrade to language-ruby-on-rails@0.7.0 2014-02-22 15:46:43 -08:00
Kevin Sawicki df5f2c4f81 Upgrade to language-ruby@0.13.0 2014-02-22 15:35:36 -08:00
Kevin Sawicki 281eb99d88 Upgrade to language-python@0.8.0 2014-02-22 15:09:49 -08:00
Kevin Sawicki b03694efff Upgrade to language-property-list@0.7.0 2014-02-22 15:05:38 -08:00
Kevin Sawicki 2d9a805d8f Upgrade to language-php@0.8.0 2014-02-22 15:03:03 -08:00
Kevin Sawicki ee110dfd91 Upgrade to language-perl@0.8.0 2014-02-22 14:54:28 -08:00
Kevin Sawicki 6a0fee406e Upgrade to language-objective-c@0.9.0 2014-02-22 14:50:32 -08:00
Kevin Sawicki b8d2473c6a Upgrade to language-make@0.7.0 2014-02-22 14:23:18 -08:00
Kevin Sawicki ec4469aebb Upgrade to language-less@0.5.0 2014-02-22 14:20:22 -08:00
Kevin Sawicki 209adda958 Upgrade to language-json@0.8.0 2014-02-22 14:15:30 -08:00
Kevin Sawicki 1f74ae1206 Upgrade to language-javascript@0.11.0 2014-02-22 13:59:24 -08:00
Kevin Sawicki 04b0d6d930 Upgrade to language-java@0.8.0 2014-02-22 13:53:25 -08:00
Kevin Sawicki 5b6fcca58a Upgrade to language-hyperlink@0.8.0 2014-02-22 13:48:19 -08:00
Kevin Sawicki cfb785705b Upgrade to language-coffee-script@0.12.0 2014-02-22 13:45:42 -08:00
Kevin Sawicki 80460850d4 Upgrade to language-go@0.6.0 2014-02-22 13:45:16 -08:00
Kevin Sawicki 116b920703 Upgrade to language-html@0.8.0 2014-02-22 13:37:31 -08:00
Kevin Sawicki 89b683d9d3 Upgrade to language-go@0.5.0 2014-02-22 13:27:27 -08:00
Kevin Sawicki 5ac8611a2c Upgrade to language-css@0.10.0 2014-02-22 13:24:08 -08:00
Kevin Sawicki 52051837c9 Upgrade to language-git@0.9.0 2014-02-22 13:21:08 -08:00
Kevin Sawicki 1ed3767f0c Upgrade to language-css@0.9.0 2014-02-22 13:15:32 -08:00
Kevin Sawicki 7f0e6fd86c Upgrade to language-coffee-script@0.11.0 2014-02-22 13:01:45 -08:00
Kevin Sawicki 03610f01d4 Upgrade to language-c 0.12.0 2014-02-22 11:53:57 -08:00
Kevin Sawicki 5f548627b3 Add contributing guide 2014-02-22 11:50:45 -08:00
Kevin Sawicki 80497be71b Upgrade to language-c@0.11.0 2014-02-22 11:47:10 -08:00
Kevin Sawicki 952b5e84f7 Upgrade to season 1.0.2 2014-02-22 11:38:41 -08:00
Lee Reilly 25eb38ff60 Prefer 'organization' over 'org'
Per the Style Guide @ https://github.com/styleguide/words
2014-02-21 22:55:02 -08:00
Kevin Sawicki b4517c5393 Upgrade to biscotto 2.x
Closes #1571
2014-02-21 17:24:42 -08:00
Nathan Sobo 67a1112ced Don't destroy empty panes in specs 2014-02-21 16:08:35 -07:00
Nathan Sobo 6f38a40b94 Destroy empty panes by default. Closes #1569 2014-02-21 16:08:35 -07:00
Nathan Sobo 5a20066d2e Merge pull request #1551 from atom/ns-licenses
Check that all bundled modules have permissive licenses during CI build
2014-02-22 00:57:51 +02:00
Kevin Sawicki 37be8fab30 Upgrade to settings-view@0.37.0 2014-02-21 14:34:30 -08:00
Nathan Sobo 91fffc08b9 Upgrade release-notes and markdown-preview for fully-licensed roaster 2014-02-21 14:38:43 -07:00
Nathan Sobo 458dea9780 Allow language-coffee-script without a license for now 2014-02-21 14:22:40 -07:00
Nathan Sobo ea43384244 Remove mustache, pegs, and clojure because they aren't licensed 2014-02-21 14:17:41 -07:00
Nathan Sobo 65a8c8d946 Override license for promzard@0.2.0
It's a dependency of npm which makes it difficult to upgrade
2014-02-21 14:16:45 -07:00
Nathan Sobo 0e93a11850 Upgrade to legal-eagle 0.3.0 to check LICENSE file first 2014-02-21 13:30:07 -07:00
Nathan Sobo ce34f758bd Add "View License" item to the application menu 2014-02-21 13:11:30 -07:00
Nathan Sobo 0eaf3b6336 Add an 'application:open-license' command
It just opens the LICENSE file in a buffer
2014-02-21 13:08:26 -07:00
Nathan Sobo 4700eeb7e2 Remove Apache license and use plain-text, copyright-only license instead 2014-02-21 12:49:17 -07:00
Nathan Sobo d7d2a6f1f0 Merge branch 'master' into ns-licenses
Conflicts:
	package.json
2014-02-21 12:38:41 -07:00
Nathan Sobo 878831bfc7 Write LICENSE to the appDir during build task 2014-02-21 12:35:05 -07:00
Nathan Sobo 324ae3fe3a Replace report-licenses with generate-license task. Output plain text. 2014-02-21 11:54:04 -07:00
Kevin Sawicki bc22130938 Add publish doc to index 2014-02-21 09:51:44 -08:00
Kevin Sawicki 461b95b1ac Upgrade apm for publish fix 2014-02-20 18:29:29 -08:00
Kevin Sawicki d14396e2d3 Upgrade to language-coffee-script@0.10.0 2014-02-20 17:39:35 -08:00
Kevin Sawicki 1e0fd948a5 Upgrade to settings-view@0.77.0 2014-02-20 16:14:38 -08:00
Nathan Sobo 9d9e33f245 Merge pull request #1561 from atom/ns-modernize-doc-links
Use CoffeeScript literal syntax to reference methods in docs
2014-02-21 02:09:47 +02:00
Nathan Sobo f612a85599 Merge remote-tracking branch 'origin/master' into ns-modernize-doc-links 2014-02-20 16:35:16 -07:00
Nathan Sobo 136e7d3491 Update reference syntax in contributing docs 2014-02-20 16:34:53 -07:00
Nathan Sobo 00b913d363 Upgrade to biscotto 1.x for new method reference syntax 2014-02-20 16:30:01 -07:00
Nathan Sobo 3fd11b7aaf Merge branch 'master' into ns-modernize-doc-links 2014-02-20 16:26:34 -07:00
Nathan Sobo c1cf4efb31 Merge branch 'master' into ns-licenses
Conflicts:
	package.json
2014-02-20 16:16:01 -07:00
Kevin Sawicki 4c65d711b0 Log warning when ~/.atom/keymap.cson can't be parsed
Previously an uncaught error would be thrown and the file
would no longer be watched
2014-02-20 14:31:27 -08:00
Corey Johnson 090f737647 Upgrade to markdown-preview@0.33.0 2014-02-20 14:30:31 -08:00
Corey Johnson 224294d00f Merge pull request #1555 from atom/cj-ns-markdown-preview-pane-fixes
Changes needed by markdown preview refactoring
2014-02-20 14:10:13 -08:00
Corey Johnson 8c145168ef Merge pull request #1554 from atom/cj-ns-rename-workspace-view-pane-methods
Rename workspace view pane methods
2014-02-20 14:00:05 -08:00
Corey Johnson 4660ed5745 Prepare 0.52.0 release 2014-02-20 13:57:05 -08:00
Kevin Sawicki c515cf880c Verify selector before registering keybinding 2014-02-20 12:23:08 -08:00
Kevin Sawicki eb58ce7736 Return false on invalid selectors 2014-02-20 11:49:13 -08:00
Kevin Sawicki 08ede33b66 Log warning when enabled theme isn't installed 2014-02-20 11:42:04 -08:00
Corey Johnson & Nathan Sobo ff519d52b2 Upgrade to feedback@0.24.0 2014-02-20 11:15:17 -08:00
Corey Johnson & Nathan Sobo 6c5a5c49da Remove unused Point 2014-02-20 11:14:15 -08:00
Nathan Sobo b5a799c997 Point at biscotto branch on github until atom/biscotto#27 lands 2014-02-20 12:01:12 -07:00
Kevin Sawicki ca7d2695ea Upgrade to settings-view@0.76.0 2014-02-19 19:11:36 -08:00
Kevin Sawicki 81c2374c87 Upgrade to dev-live-reload@0.26.0 2014-02-19 19:06:57 -08:00
Kevin Sawicki e5200d5414 Merge pull request #1549 from atom/ks-remove-some-default-packages
Remove some default packages
2014-02-19 18:26:28 -08:00
Kevin Sawicki f4fdbbc307 Remove editor-stats from default packages 2014-02-19 17:53:17 -08:00
Kevin Sawicki c6a7e84640 Remove visual bell from default packages 2014-02-19 17:52:34 -08:00
Kevin Sawicki fac70d080d Remove command-logger from default packages 2014-02-19 17:52:34 -08:00
Kevin Sawicki 5e2a641861 Remove terminal from default packages 2014-02-19 17:52:34 -08:00
Kevin Sawicki 9cf79730ea Merge pull request #1558 from atom/ks-show-featured-packages
Show featured packages
2014-02-19 17:51:31 -08:00
Kevin Sawicki 737d41ad16 Upgrade to settings-view@0.75.0 2014-02-19 17:44:25 -08:00
Kevin Sawicki a49ae766ae Upgrade apm for uninstall tweaks 2014-02-19 17:44:25 -08:00
Kevin Sawicki 239e6ce156 Upgrade apm for view command output tweak 2014-02-19 17:44:25 -08:00
Kevin Sawicki fb42086a6f Upgrade apm for view command 2014-02-19 17:44:25 -08:00
Kevin Sawicki 3f53b8d2cb Upgrade apm for featured/search commands 2014-02-19 17:44:25 -08:00
Nathan Sobo 53fb36d0e2 Switch all documentation links to match CoffeeScript literal notation
Foo::bar for instance methods
Foo.bar for class methods
2014-02-19 17:23:47 -07:00
Nathan Sobo 545b375bb5 Merge pull request #1556 from atom/ns-contributing-doc
Add public contribution guide
2014-02-20 00:14:38 +02:00
Nathan Sobo 383d8f6940 Don't mention vendor 2014-02-19 15:12:49 -07:00
Nathan Sobo 280fc9af85 Go back to old biscotto syntax until it's updated 2014-02-19 15:12:28 -07:00
Nathan Sobo 029e4336bc Add a link to the Emoji Cheat Sheet 2014-02-19 15:09:06 -07:00
Nathan Sobo aebca38ae6 Use a better imperative mood example 2014-02-19 14:01:03 -07:00
Nathan Sobo 01f6ca3cae Discuss clone location and ATOM_REPOS_HOME environment variable 2014-02-19 13:57:19 -07:00
Nathan Sobo 2275a6d2d1 Use --dev instead of -d for clarity 2014-02-19 13:54:18 -07:00
Kevin Sawicki 893493960f Relativize stack trace paths 2014-02-19 11:12:58 -08:00
Kevin Sawicki 26121489be Trim stack traces 2014-02-19 11:07:02 -08:00
Kevin Sawicki f0dc88e33c Merge pull request #1557 from atom/ks-remove-file-directory-exports
Remove File/Directory exports
2014-02-19 11:03:44 -08:00
Nathan Sobo 99f6b89b6e Upgrade language-css to 0.8.0 for update license and readme 2014-02-19 11:58:25 -07:00
Nathan Sobo ff42526199 Upgrade language-yaml to 0.5.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo dea7fafee7 Upgrade language-xml to 0.6.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo 357f158f8a Upgrade language-todo to 0.5.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo c18fa805f9 Upgrade language-text to 0.5.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo 5fd0850f5b Upgrade language-sql to 0.6.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo 66225736fe Upgrade language-source to 0.6.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo a87036b538 Upgrade language-shellscript to 0.6.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo 62b8ef7bb3 Upgrade language-ruby to 0.12.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo 546351dd46 Upgrade language-python to 0.6.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo 69f0572f2a Upgrade language-property-list to 0.6.0 for included license 2014-02-19 11:58:25 -07:00
Nathan Sobo a6ffaff2a2 Upgrade language-php to 0.7.0 for included license 2014-02-19 11:58:24 -07:00
Nathan Sobo 4e62540a9b Upgrade language-perl to 0.7.0 for included license 2014-02-19 11:58:24 -07:00
Nathan Sobo bb03d6b83d Upgrade language-objective-c to 0.8.0 for included license 2014-02-19 11:58:24 -07:00
Nathan Sobo 8aaa34b8fa Upgrade language-make to 0.6.0 for included license 2014-02-19 11:58:24 -07:00
Kevin Sawicki a8f4019693 Remove File and Directory 2014-02-19 10:58:14 -08:00
Nathan Sobo 03a60561b7 Upgrade language-json to 0.7.0 for included license 2014-02-19 11:57:21 -07:00
Nathan Sobo 761e96429d Upgrade language-javascript to 0.10.0 for included license 2014-02-19 11:53:59 -07:00
Nathan Sobo 3e685d91a5 Upgrade language-java to 0.7.0 for included license 2014-02-19 11:44:03 -07:00
Nathan Sobo 668d3d3672 Upgrade language-hyperlink to 0.7.0 for included license 2014-02-19 11:42:05 -07:00
Kevin Sawicki ad1fe5f5f0 Upgrade to snippets@0.30.0 2014-02-19 10:40:56 -08:00
Nathan Sobo 23308625f6 Upgrade language-html to 0.7.0 for included license 2014-02-19 11:39:50 -07:00
Kevin Sawicki abc6386ad6 Upgrade to markdown-preview@0.32.0 2014-02-19 10:39:01 -08:00
Nathan Sobo 91a1ce84d0 Upgrade language-git to 0.8.0 for included license 2014-02-19 11:36:47 -07:00
Kevin Sawicki 5695a209da Upgrade to dev-live-reload@0.25.0 2014-02-19 10:36:33 -08:00
Kevin Sawicki 97782de8d3 Upgrade to archive-view@0.23.0 2014-02-19 10:11:24 -08:00
Kevin Sawicki a056f44a66 Require File from pathwatcher 2014-02-19 10:01:56 -08:00
Nathan Sobo a8f57ed276 Upgrade language-c to 0.10.0 for included license 2014-02-19 11:00:52 -07:00
Kevin Sawicki dbd20bcd31 Remove File and Directory exports 2014-02-19 09:53:20 -08:00
Kevin Sawicki e6d63656b7 Upgrade to text-buffer 1.1.2 2014-02-19 09:50:40 -08:00
Kevin Sawicki 49fdd24af3 Pluralize outside of curlies 2014-02-19 09:30:29 -08:00
Kevin Sawicki db6018d847 Add File, Directory, and TextBuffer to includes 2014-02-19 09:29:38 -08:00
Kevin Sawicki d87393f21e Merge pull request #1553 from atom/ks-extract-text-buffer
Extract TextBuffer
2014-02-19 09:26:47 -08:00
Kevin Sawicki 857c467497 Upgrade to symbols-view@0.36.0 2014-02-19 09:19:09 -08:00
Kevin Sawicki 33a207d57c Experiment with bumping up the timeout 2014-02-19 09:19:09 -08:00
Kevin Sawicki 02e3754dd9 Upgrade to text-buffer 1.1.1 2014-02-19 09:19:09 -08:00
Kevin Sawicki 70ab01d376 💄 Remove accidental newline 2014-02-19 09:19:09 -08:00
Kevin Sawicki 6a34d58ff4 Remove debug logging 2014-02-19 09:19:09 -08:00
Kevin Sawicki 2c5ae6e553 Add back size check when creating buffers 2014-02-19 09:19:09 -08:00
Kevin Sawicki 1988ed9e92 📝 Doc undefined return case 2014-02-19 09:19:09 -08:00
Kevin Sawicki 7a04a414f7 Remove relative URI usage 2014-02-19 09:19:09 -08:00
Kevin Sawicki c16435a604 Upgrade to pathwatcher@0.16.0 2014-02-19 09:19:08 -08:00
Kevin Sawicki a9b2661d3c Require TextBuffer from text-buffer module 2014-02-19 09:19:08 -08:00
Kevin Sawicki 43220fb189 Remove extracted specs 2014-02-19 09:19:08 -08:00
Kevin Sawicki 43f272d1e7 Require Directory from pathwatcher 2014-02-19 09:19:08 -08:00
Kevin Sawicki 8900d9efdd Require TextBuffer from text-buffer module 2014-02-19 09:19:08 -08:00
Kevin Sawicki 4cc18cd936 Require File from pathwatcher 2014-02-19 09:19:08 -08:00
Kevin Sawicki ae060fb450 Export File/Directory from pathwatcher 2014-02-19 09:19:08 -08:00
Kevin Sawicki affaf9007a Upgrade to text-buffer 1.1 2014-02-19 09:19:08 -08:00
Kevin Sawicki 54e35a5014 Upgrade to pathwatcher@0.15.0 2014-02-19 09:19:08 -08:00
Kevin Sawicki 9fa72c0841 📝 Tweak header comment 2014-02-19 09:19:08 -08:00
Corey Johnson & Nathan Sobo cfaa5ac3cb Upgrade to whitespace@0.14.0 2014-02-19 08:59:56 -08:00
Nathan Sobo 76903a0b91 Upgrade release-notes to 0.21.0 for licensed roaster dependency 2014-02-19 09:25:30 -07:00
Nathan Sobo d316b14c4d Add license override for specificity@0.1.3
The author added a license to the repository
2014-02-19 09:24:58 -07:00
Nathan Sobo 523f965791 Remove language-puppet because the source TextMate bundle is GPL'd 2014-02-19 09:24:58 -07:00
Nathan Sobo 9f2d6fd8b5 Upgrade scandal to 0.15.0 for isbinaryfile license 2014-02-19 09:23:25 -07:00
Nathan Sobo b176a246b3 Upgrade to clear-cut 0.4.0 for included license 2014-02-19 09:23:25 -07:00
Nathan Sobo fac844c255 Add license override for buffers@0.1.1 2014-02-19 09:23:25 -07:00
Nathan Sobo 59bd424e89 Note that content is omitted from aws-sign 2014-02-19 09:23:25 -07:00
Nathan Sobo 12bc2a0a39 Add license-check step to CI grunt task 2014-02-19 09:23:25 -07:00
Nathan Sobo dca5fadeec Upgrade legal-eagle to 0.2.0 2014-02-19 09:23:25 -07:00
Nathan Sobo 0872db3780 Fix exit call in check licenses task 2014-02-19 09:23:25 -07:00
Nathan Sobo 6134d95bfd WIP 2014-02-19 09:23:25 -07:00
Nathan Sobo 1bf98f5b8d Add check-licenses task and break license-overrides into their own file 2014-02-19 09:23:24 -07:00
Nathan Sobo f468420a29 Add report-licenses task
It logs a report about the licenses of all dependencies to standard out,
including the license type, the source of the information, and the text
of the source if it's not just an entry in the `package.json`.

There are still some licenses that couldn't be automatically harvested
that will need to be covered in the overrides.
2014-02-19 09:23:24 -07:00
Nathan Sobo 459c11b602 Add initial doc for contributing to packages 2014-02-19 08:40:21 -07:00
probablycorey 6f8cb24e5a Add Workspace::paneForUri 2014-02-18 15:40:36 -08:00
probablycorey b8d8ae68a3 Add Workspace::getActivePane 2014-02-18 15:40:36 -08:00
probablycorey 63eb032472 Give precedence to searchAllPanes option in Workspace::open 2014-02-18 15:40:36 -08:00
probablycorey 69396922db Remove WorkspaceView::indexOfPane 2014-02-18 15:39:06 -08:00
probablycorey 99774d7417 Add comment to PaneContainer::indexOfPane 2014-02-18 15:39:06 -08:00
probablycorey e67fb86084 Remove Workspace::getFocusedPane 2014-02-18 15:39:05 -08:00
probablycorey 98a25ca5e3 💄 2014-02-18 15:39:05 -08:00
probablycorey 245ad7a356 Rename pane focusing methods on Workspace 2014-02-18 15:39:05 -08:00
probablycorey b042dffc2c Rename Workspace::getPanes to Workspace::getPaneViews 2014-02-18 15:39:05 -08:00
probablycorey ef263580df Replace WorkspaceView:eachPane with WorkspaceView:eachPaneView 2014-02-18 15:39:05 -08:00
Kevin Sawicki c0010789bc Remove debug logging 2014-02-18 11:53:55 -08:00
probablycorey 77453ff989 Upgrade to markdown-preview@0.31.0 2014-02-18 11:35:48 -08:00
Kevin Sawicki da945de5f5 Only require init script when it exists 2014-02-18 11:01:24 -08:00
Kevin Sawicki 7a7521d810 Upgrade apm for argument parsing tweaks 2014-02-18 09:35:32 -08:00
Kevin Sawicki 31811ea4ae Upgrade to open-on-github@0.20.0 2014-02-18 09:19:00 -08:00
Kevin Sawicki 512a14d2ed Show the window synchronously in specs
Showing it asynchronously was causing specs to fail that relied on a mini
editor having focus in the very first spec run.
2014-02-18 09:01:44 -08:00
Kevin Sawicki cdeb5d1a3d 💄 Use @ instead of this 2014-02-18 08:39:06 -08:00
Kevin Sawicki 72b120cfe1 Move random-words to dependencies 2014-02-17 16:43:09 -08:00
Kevin Sawicki 14424abe08 Remove unused first-mate dependency 2014-02-17 16:43:09 -08:00
Kevin Sawicki 254730dc9f Merge pull request #1552 from atom/ks-remove-npm-warnings
Remove npm warnings
2014-02-17 16:21:23 -08:00
Kevin Sawicki ba3ae00b76 Upgrade to markdown-preview@0.30.0 2014-02-17 16:14:21 -08:00
Kevin Sawicki ea2793a746 Upgrade to symbols-view@0.35.0 2014-02-17 15:56:55 -08:00
Kevin Sawicki e5fe583a3c Upgrade to settings-view@0.74.0 2014-02-17 15:56:05 -08:00
Kevin Sawicki fe19798af9 Upgrade to less-cache@0.12.0 2014-02-17 15:55:07 -08:00
Kevin Sawicki ce6751859c Upgrade to image-view@0.24.0 2014-02-17 15:52:41 -08:00
Kevin Sawicki b7aa88f9a1 Upgrade to snippets@0.29.0 2014-02-17 15:51:48 -08:00
Kevin Sawicki 0c01df5d29 Upgrade to fs-plus 2.x in build 2014-02-17 15:49:47 -08:00
Kevin Sawicki 24403ef0b0 Upgrade to nslog@0.5.0 2014-02-17 15:46:04 -08:00
Kevin Sawicki 56cb847633 Upgrade apm for version bumps 2014-02-17 15:33:55 -08:00
Kevin Sawicki a7a0ecd019 Upgrade to snippets@0.28.0 2014-02-17 15:32:39 -08:00
Kevin Sawicki 0dce31e02d Don't dedupe nan 2014-02-17 15:26:40 -08:00
Kevin Sawicki ad36db61c6 Upgrade to first-mate 1.1.5 2014-02-17 15:26:18 -08:00
Kevin Sawicki 69fe67d6e1 Upgrade to fs-plus 2.x 2014-02-17 15:25:51 -08:00
Kevin Sawicki 57ed5d7d57 Merge pull request #1550 from atom/ks-no-more-text-mate-package
Remove TextMatePackage
2014-02-17 15:06:42 -08:00
Kevin Sawicki 320acab126 Wait for activation promise 2014-02-17 14:58:55 -08:00
Kevin Sawicki a91285c754 Upgrade to settings-view@0.73.0 2014-02-17 14:57:52 -08:00
Kevin Sawicki 313fb79fdc Remove stray c 2014-02-17 14:50:34 -08:00
Kevin Sawicki 3571d1e60e Remove unused .tmbundle fixture 2014-02-17 14:47:05 -08:00
Kevin Sawicki 3d89f76abf Upgrade apm for init fix 2014-02-17 14:36:45 -08:00
Kevin Sawicki 9e19f62b47 Update packages for CSS selectors in scoped properties 2014-02-17 14:34:38 -08:00
Kevin Sawicki e439847b59 Remove preferences folder spec 2014-02-17 14:24:26 -08:00
Kevin Sawicki ce6d5b3b2a Upgrade to language-ruby@0.11.0 2014-02-17 14:21:54 -08:00
Kevin Sawicki b4e8d5480c Use Q.all 2014-02-17 14:07:18 -08:00
Kevin Sawicki 04290ebbbb Wait for package to be activated 2014-02-17 14:06:59 -08:00
Kevin Sawicki 366684f3d7 Add missing ThemePackage require 2014-02-17 13:23:21 -08:00
Kevin Sawicki 5f9549e279 Default metadata to empty hash 2014-02-17 13:16:00 -08:00
Kevin Sawicki a149056408 Remove unnecessary rejection 2014-02-17 13:12:38 -08:00
Kevin Sawicki fb60a3189a Call load on package 2014-02-17 13:10:19 -08:00
Kevin Sawicki 94f26b99cc grammarsPromise not grammarPromise 2014-02-17 13:00:29 -08:00
Kevin Sawicki 3f8d9a4c47 Combine AtomPackage and Package 2014-02-17 12:59:03 -08:00
Kevin Sawicki 50a27e99bb Chain activate promise with grammar/properties promises 2014-02-17 12:43:29 -08:00
Kevin Sawicki eb885357e6 Memoize AtomPackage/ThemePackage 2014-02-17 12:10:49 -08:00
Kevin Sawicki 9b3463ef64 Organize requires 2014-02-17 12:08:34 -08:00
Kevin Sawicki 39762081b1 Upgrade apm for init changes 2014-02-17 12:07:21 -08:00
Kevin Sawicki 0dd96a0732 Load scoped properties asynchronously 2014-02-17 12:01:37 -08:00
Kevin Sawicki 70d8777db6 Load grammars asynchronously 2014-02-17 11:47:04 -08:00
Kevin Sawicki bb0a31228d Call super from AtomPackage constructor 2014-02-17 11:34:01 -08:00
Kevin Sawicki cec35ed7c8 Use name ivar instead of metadata.name 2014-02-17 11:31:44 -08:00
Kevin Sawicki 95e68c8c2b Store metadata in Package constructor 2014-02-17 11:31:20 -08:00
Kevin Sawicki 3f5cd19ddc Add missing path. prefix 2014-02-17 11:29:29 -08:00
Kevin Sawicki d0dd0a9882 Rename e variables to error 2014-02-17 11:29:11 -08:00
Kevin Sawicki 2d52f3deac Rename path variables to packagePath 2014-02-17 11:28:55 -08:00
Kevin Sawicki fa376d9543 Remove TextMatePackage 2014-02-17 11:26:58 -08:00
Kevin Sawicki 31480f92ce Upgrade to language-yaml@0.3.0 2014-02-17 11:25:37 -08:00
Kevin Sawicki 7d725d5597 Upgrade to language-xml@0.4.0 2014-02-17 11:25:37 -08:00
Kevin Sawicki dbfcd0c4d1 Upgrade to language-toml@0.9.0 2014-02-17 11:25:37 -08:00
Kevin Sawicki 55eff7cd69 Upgrade to language-todo@0.4.0 2014-02-17 11:25:37 -08:00
Kevin Sawicki 97951e38ad Upgrade to language-text@0.4.0 2014-02-17 11:25:37 -08:00
Kevin Sawicki 68f190ab9a Upgrade to language-sql@0.4.0 2014-02-17 11:25:37 -08:00
Kevin Sawicki a7edf10f1f Upgrade to language-source@0.4.0 2014-02-17 11:25:36 -08:00
Kevin Sawicki bd050a817d Update to language-shellscript@0.4.0 2014-02-17 11:25:36 -08:00
Kevin Sawicki 0c267f35ef Upgrade to language-sass@0.5.0 2014-02-17 11:25:36 -08:00
Kevin Sawicki 4437255f65 Upgrade to language-ruby-on-rails@0.6.0 2014-02-17 11:25:32 -08:00
Kevin Sawicki 85af8a2225 Upgrade to language-ruby@0.10.0 2014-02-17 11:15:53 -08:00
Kevin Sawicki db64dd5426 Upgrade to language-python@0.4.0 2014-02-17 11:15:24 -08:00
Kevin Sawicki 34732d059e Upgrade to language-puppet@0.4.0 2014-02-17 11:14:47 -08:00
Kevin Sawicki 8888de0256 Upgrade to language-property-list@0.4.0 2014-02-17 11:14:02 -08:00
Kevin Sawicki 87b7d9d5e3 Upgrade to language-php@0.5.0 2014-02-17 11:13:33 -08:00
Kevin Sawicki 67de3ceb5e Upgrade to language-perl@0.4.0 2014-02-17 11:13:11 -08:00
Kevin Sawicki 60b4554cb3 Upgrade to language-pegjs@0.3.0 2014-02-17 11:10:26 -08:00
Kevin Sawicki f7ae280760 Upgrade to language-objective-c@0.4.0 2014-02-17 11:09:43 -08:00
Kevin Sawicki 42320c5227 Upgrade to language-mustache@0.3.0 2014-02-17 11:09:09 -08:00
Kevin Sawicki 7f090fdac8 Upgrade to language-make@0.3.0 2014-02-17 11:08:30 -08:00
Kevin Sawicki 4c69abc7db Upgrade to language-less@0.3.0 2014-02-17 11:08:02 -08:00
Kevin Sawicki 3406b5ee1f Upgrade to language-json@0.4.0 2014-02-17 11:07:33 -08:00
Kevin Sawicki 2af12a7b7a Upgrade to language-javascript@0.7.0 2014-02-17 11:06:01 -08:00
Kevin Sawicki b3c3b55131 Upgrade to language-java@0.4.0 2014-02-17 11:05:14 -08:00
Kevin Sawicki 74aceb02fc Upgrade to language-hyperlink@0.5.0 2014-02-17 11:04:42 -08:00
Kevin Sawicki 4a36d2ee89 Upgrade to language-html@0.4.0 2014-02-17 11:03:23 -08:00
Kevin Sawicki de24128009 Upgrade to language-go@0.4.0 2014-02-17 11:02:45 -08:00
Kevin Sawicki 415c871b83 Upgrade to language-git@0.5.0 2014-02-17 11:01:08 -08:00
Kevin Sawicki 7f826dd005 Upgrade to language-gfm@0.17.0 2014-02-17 11:00:13 -08:00
Kevin Sawicki 408901360f Upgrade to language-css@0.4.0 2014-02-17 10:59:13 -08:00
Kevin Sawicki ec6accbc8b Upgrade to language-coffee-script@0.8.0 2014-02-17 10:58:03 -08:00
Kevin Sawicki 523460166f Upgrade to language-clojure@0.2.0 2014-02-17 10:56:29 -08:00
Kevin Sawicki df996695c8 Upgrade to language-c@0.5.0 2014-02-17 10:56:18 -08:00
Kevin Sawicki 86a9279743 Remove support for Syntaxes/Preferences directories
All existing packages have the lower-case version of these directory
names and `apm init --convert` generates them with lower case names.
2014-02-17 09:45:34 -08:00
Kevin Sawicki 53b423496f Only allow json and cson grammars 2014-02-17 09:44:08 -08:00
Kevin Sawicki ead21bfc33 Remove synchronous activation of TextMate packages 2014-02-17 09:40:47 -08:00
Kevin Sawicki ee14214c7a Measure activate time of TextMate packages 2014-02-17 09:38:50 -08:00
probablycorey 8f26feadb5 Assume cli files are executable 2014-02-14 17:53:31 -08:00
probablycorey 760d8c60ad Don't try and install cli commands if they are already symlinked.
Closes #1548
2014-02-14 17:43:54 -08:00
probablycorey bec5c9c9c9 Remove unnecessary chmod command 2014-02-14 17:43:54 -08:00
Kevin Sawicki 02a8a41427 Merge pull request #1547 from atom/ks-shutdown-errors
Remove shutdown errors
2014-02-14 17:03:20 -08:00
Kevin Sawicki d5f7e2a6e2 Remove remove() method 2014-02-14 15:45:28 -08:00
Kevin Sawicki 3e6e530b44 Delete socket file when atom.exit() is called
Previously the socket file was not being deleted when `apm test` was run
causing a noticeable delay the next time a window was opened and the
socket had to timeout before the window would display.
2014-02-14 15:27:29 -08:00
Kevin Sawicki c277a19781 Merge pull request #1545 from atom/ks-grammar-selector-cleanup
Changes based on cleaning up grammar-selector
2014-02-14 15:03:51 -08:00
Kevin Sawicki 3191697a38 Rename editorView to filterEditorView in specs 2014-02-14 14:48:32 -08:00
Kevin Sawicki 0cead13df7 Upgrade to grammar-selector@0.20.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki 59872889db Upgrade to symbols-view@0.34.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki da14629826 Upgrade to styleguide@0.24.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki 3bf551cefd Upgrade to spell-check@0.25.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki 85543888b4 Upgrade to fuzzy-finder@0.35.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki 37cd047c46 Upgrade to command-palette@0.17.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki e2dc48456d Upgrade to bookmarks@0.20.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki bf2a3d3ca4 Upgrade to autocomplete@0.23.0 2014-02-14 14:48:32 -08:00
Kevin Sawicki 63f7f01169 Tweak SelectListView comments 2014-02-14 14:48:32 -08:00
Kevin Sawicki 6d68c4eeea 💄 Wrap callbacks 2014-02-14 14:48:32 -08:00
Kevin Sawicki d91dd2f6ea Revert accidental require rename 2014-02-14 14:48:32 -08:00
Kevin Sawicki c91443825b Rename focusEditor to focusFilterEditor 2014-02-14 14:48:31 -08:00
Kevin Sawicki c31e981479 Mention viewForItem can return a String 2014-02-14 14:48:31 -08:00
Kevin Sawicki 2cefd4f4d6 Make storeFocusedElement public 2014-02-14 14:48:31 -08:00
Kevin Sawicki 2a9b1260c2 Rename editorView to filterEditorView 2014-02-14 14:48:31 -08:00
Kevin Sawicki e53feba1fd Add full example to header comment 2014-02-14 14:48:31 -08:00
Kevin Sawicki 24752ff006 Clean up docs 2014-02-14 14:48:31 -08:00
Kevin Sawicki 29ef6366ca Remove getViewClasses 2014-02-14 14:48:31 -08:00
Kevin Sawicki 06e782e920 Add spec for return element from viewForItem 2014-02-14 14:48:31 -08:00
Kevin Sawicki 6e29f08469 Throw error when methods are not implemented 2014-02-14 14:48:31 -08:00
Kevin Sawicki 52c1747aaf Update SelectListView spec for API changes 2014-02-14 14:48:31 -08:00
Kevin Sawicki b2973556d6 Call getSelectedItemView from getSelectedItem 2014-02-14 14:48:31 -08:00
Kevin Sawicki d0c2dfffb1 Use item in confirmSelection 2014-02-14 14:48:31 -08:00
Kevin Sawicki f3af21c5d2 Append view instead of item 2014-02-14 14:48:31 -08:00
Kevin Sawicki e5b4302407 Remove return type 2014-02-14 14:48:31 -08:00
Kevin Sawicki fc6aa2aa12 Rename filteredArray to filteredItems 2014-02-14 14:48:31 -08:00
Kevin Sawicki 883f6dd50b Add public API to set max items 2014-02-14 14:48:30 -08:00
Kevin Sawicki 8ac197074d selectItemView instead of selectItem 2014-02-14 14:48:30 -08:00
Kevin Sawicki d045bc9836 Rename data attribute to select-list-item 2014-02-14 14:48:30 -08:00
Kevin Sawicki d31c0f81d2 Rename viewClass to getViewClasses 2014-02-14 14:48:30 -08:00
Kevin Sawicki 5bad4c95c1 Rename miniEditor to editorView 2014-02-14 14:48:30 -08:00
Kevin Sawicki dc11573862 Outdent code block 2014-02-14 14:48:30 -08:00
Kevin Sawicki 4d42cb908d Rename getSelectedElement to getSelectedItem 2014-02-14 14:48:30 -08:00
Kevin Sawicki db2bb9274d Rename array ivar to items 2014-02-14 14:48:30 -08:00
Kevin Sawicki 0e3b6628f3 Call getFilterKey() instead of filterKey ivar 2014-02-14 14:48:30 -08:00
Kevin Sawicki 65dafd58c1 Doc that subclasses must implement confirmed(item) 2014-02-14 14:48:30 -08:00
Kevin Sawicki 0c0b082604 Mark viewClass as public 2014-02-14 14:48:30 -08:00
Kevin Sawicki 906fcf0929 Doc that subclasses must implement viewForItem 2014-02-14 14:48:30 -08:00
Kevin Sawicki 36458331f8 Rename itemForElement to viewForItem 2014-02-14 14:48:30 -08:00
Kevin Sawicki 4b1e44a967 Rename setArray to setItems 2014-02-14 14:48:30 -08:00
Kevin Sawicki c7855dbcd3 Upgrade to whitespace@0.13.0 2014-02-14 09:24:48 -08:00
Nathan Sobo 950a0ce153 Merge pull request #1492 from atom/ns-fix-softwrap
Fix whacky soft-wrap issues
2014-02-14 18:35:12 +02:00
Nathan Sobo d64fefd96c Merge branch 'master' into ns-fix-softwrap
Conflicts:
	src/row-map.coffee
2014-02-14 08:36:58 -07:00
Kevin Sawicki 7f903bc6e7 Merge pull request #1544 from atom/ks-publish-doc
Publishing doc
2014-02-13 17:27:34 -08:00
Kevin Sawicki d4dfdd17ff Remove stray g 2014-02-13 15:37:10 -08:00
Kevin Sawicki 2e8bf53a04 Outdent list 2014-02-13 15:37:10 -08:00
Kevin Sawicki d9262a8415 Remove extra space 2014-02-13 15:37:10 -08:00
Kevin Sawicki 504ec58d93 Lowercase package 2014-02-13 15:37:10 -08:00
Kevin Sawicki 3de158bbdd Link to http://guides.github.com/overviews/desktop 2014-02-13 15:37:10 -08:00
Kevin Sawicki 6cd3ef4a6c Wrap at 80 2014-02-13 15:37:10 -08:00
Kevin Sawicki d5c8b052c6 Tweak pre-req checks 2014-02-13 15:37:10 -08:00
Kevin Sawicki ffdbefc0f4 List out what publish command does before running 2014-02-13 15:37:10 -08:00
Kevin Sawicki fccddd9200 Remove stray ] 2014-02-13 15:37:09 -08:00
Kevin Sawicki bdb37c4dee Remove extra newline 2014-02-13 15:37:09 -08:00
Kevin Sawicki 4b28cc78b1 Drop ./ from link 2014-02-13 15:37:09 -08:00
Kevin Sawicki 28032cb257 Use link name 2014-02-13 15:37:09 -08:00
Kevin Sawicki 75c3197a62 Link to publish doc from converting docs 2014-02-13 15:37:09 -08:00
Kevin Sawicki e0459fa069 Link to publish from your first package doc 2014-02-13 15:37:09 -08:00
Kevin Sawicki 8f9d845683 People can now install it 2014-02-13 15:37:09 -08:00
Kevin Sawicki 7caece7c77 Tweak wording around versioning 2014-02-13 15:37:09 -08:00
Kevin Sawicki e279c75653 Add name check and post publish instructions 2014-02-13 15:37:09 -08:00
Kevin Sawicki f678d836fa Add initial publishing doc 2014-02-13 15:37:09 -08:00
probablycorey 131a457da8 Upgrade to imave-view@0.23.0 2014-02-13 15:26:57 -08:00
Kevin Sawicki df4e791f47 Update apm for publish tweaks 2014-02-13 15:25:01 -08:00
Corey Johnson 752d028581 Merge pull request #1543 from atom/cz-non-admin-command-install
Enable privilege escalation when install command
2014-02-13 14:51:44 -08:00
Corey Johnson 543a2ad266 Merge pull request #1539 from atom/cj-move-openers-to-workspace
Cj move openers to workspace
2014-02-13 14:23:11 -08:00
probablycorey c2fe0b7aa1 Replace editor with item 2014-02-13 13:58:23 -08:00
probablycorey 9e0436d10e Always check existing active for uri first 2014-02-13 13:57:59 -08:00
probablycorey b3550c6526 Use full url when opening uri 2014-02-13 13:55:37 -08:00
probablycorey 75745bccc7 🔥 moar whitespace 2014-02-13 11:03:58 -08:00
probablycorey 93bd0c8412 🔥 whitespace 2014-02-13 11:00:29 -08:00
probablycorey f473bfdb95 Move actual opener logic back to project.
Not all specs create a workspace and workspaceView, so there were
failures. They probably SHOULD all have workspace and workspaceView
but that is beyond the scope of this PR.
2014-02-13 10:52:07 -08:00
probablycorey 9300ee0f47 Fix spec 2014-02-13 10:08:08 -08:00
probablycorey c7bd1f0a87 Use string because it is easier to read 2014-02-13 10:03:44 -08:00
probablycorey 763c5053ad Shell commands installed on startup don't ask for admin privleges 2014-02-13 10:00:18 -08:00
probablycorey 3053760880 Update error message 2014-02-13 09:54:03 -08:00
probablycorey a428b03db5 Combine all command creation methods 2014-02-13 09:53:55 -08:00
Kevin Sawicki 0153bb538b Upgrade apm for publish command tweaks 2014-02-13 09:26:18 -08:00
probablycorey 1f47e7ae64 Remove check for /usr/local/bin 2014-02-13 08:40:48 -08:00
Cheng Zhao a78dff15c4 Use "error?" to check error. 2014-02-13 21:42:10 +08:00
Cheng Zhao def39f94df Use runas to do the install when got EACESS error. 2014-02-13 20:47:52 +08:00
Cheng Zhao 382afba835 Upgrade to runas@0.5.x 2014-02-13 20:36:39 +08:00
Cheng Zhao 0358e9ad54 Merge pull request #1542 from atom/atom-shell-v0.9.2
Upgrade to atom-shell@v0.9.2
2014-02-13 14:14:49 +08:00
Cheng Zhao 8f4bf6d897 Upgrade to atom-shell@v0.9.2 2014-02-13 14:07:11 +08:00
probablycorey 6428d1cb60 Upgrade to markdown-preview@0.29.0 2014-02-12 17:26:48 -08:00
probablycorey 6b4e68f127 💄 2014-02-12 17:24:47 -08:00
probablycorey 9e9cdaecc0 Delegate methods correctly 2014-02-12 17:24:27 -08:00
probablycorey 410f573095 Make addEditor and removeEditor private methods on project 2014-02-12 17:19:50 -08:00
probablycorey 41761ffbcf Move eachEditor and getEditors to Workspace 2014-02-12 17:19:25 -08:00
probablycorey ee09eee374 Move (un)registerOpener to Workspace 2014-02-12 17:12:48 -08:00
Kevin Sawicki a57c58d5d9 Upgrade to image-view@0.21.0 2014-02-12 16:56:18 -08:00
Kevin Sawicki 1d3163cda1 📝 Outdent code block 2014-02-12 16:34:08 -08:00
probablycorey e3505fd45b Prepare 0.50.0 release 2014-02-12 16:33:05 -08:00
probablycorey 5461de5856 Wait 5 seconds before downloading update.
And don't show 'check for updates' menu item on launch.
2014-02-12 16:17:36 -08:00
probablycorey 88b214067f 🔥 whitespace 2014-02-12 16:08:40 -08:00
probablycorey 5304afd69a Check for updates 10 seconds after atom launches 2014-02-12 16:07:41 -08:00
probablycorey a99c404a78 Merge branch 'cj-remove-openSingletonSync' 2014-02-12 14:30:49 -08:00
probablycorey 6b971e36b0 Upgrade to find-and-replace@0.83.0 2014-02-12 14:23:16 -08:00
probablycorey e550d8a3bc Remove Workspace:openSingletonSync 2014-02-12 14:11:41 -08:00
Kevin Sawicki f3ff802aa4 Upgrade to settings-view@0.72.0 2014-02-12 13:08:08 -08:00
Kevin Sawicki 52241a45df Merge pull request #1536 from atom/ks-synchronize-cursor-blink
Blink all cursors in same interval
2014-02-12 13:07:39 -08:00
Kevin Sawicki 86b19c1ffc Remove unneeded if/else 2014-02-12 13:01:47 -08:00
Kevin Sawicki 680e1cc80a Inline style variable 2014-02-12 13:01:47 -08:00
Kevin Sawicki 017cc23bbf Remove unused param 2014-02-12 13:01:47 -08:00
Kevin Sawicki d49bb2416b Use subscribe instead of namespace 2014-02-12 13:01:47 -08:00
Kevin Sawicki 1d2c3bce20 Remove unused requires 2014-02-12 13:01:47 -08:00
Kevin Sawicki 48f69880e0 💄 Use this instead of @ 2014-02-12 13:01:47 -08:00
Kevin Sawicki ed7de42ba0 Use single interval to blink all cursors 2014-02-12 13:01:47 -08:00
Kevin Sawicki 95c4e2170b 📝 Outdent code block 2014-02-12 11:45:00 -08:00
Kevin Sawicki 4e2218b005 Use @ instead of EditorView prefix 2014-02-12 08:59:06 -08:00
Kevin Sawicki 8b83918a24 📝 Doc params in window.coffee 2014-02-12 08:54:16 -08:00
Kevin Sawicki a1ce1c9ef6 📝 . instead of , 2014-02-12 08:43:16 -08:00
Cheng Zhao 0419ae8712 Use new runas API for grunt install on Windows. 2014-02-12 22:23:14 +08:00
Cheng Zhao d8737ba4a1 Upgrade to runas@0.4.0 2014-02-12 22:08:56 +08:00
Cheng Zhao 9bd1835ea1 Merge pull request #1529 from atom/privilege-escalation
Ask for privilege escalation when writing file on OS X
2014-02-12 20:47:00 +08:00
Cheng Zhao 823a79610f 💄 "Private:" is not needed anymore. 2014-02-12 20:41:09 +08:00
Cheng Zhao 3929189e7a Merge branch 'master' into privilege-escalation
Conflicts:
	src/text-buffer.coffee
2014-02-12 19:32:49 +08:00
Kevin Sawicki fb73240654 Guard against non-existent .workspace element 2014-02-11 17:13:37 -08:00
Kevin Sawicki cc890ebdc0 Add editor.fontFamily config default
This causes it to display in the settings view.
2014-02-11 17:00:25 -08:00
Corey Johnson 7708d645c9 Merge pull request #1526 from atom/ks-remove-immediate-and-sync-activate-calls
Remove immediate/sync option to activatePackage
2014-02-11 16:56:49 -08:00
Kevin Sawicki 29cbea4d50 📝 optional not option 2014-02-11 16:53:36 -08:00
Kevin Sawicki 8b1b3d237d Init pendingUpdateOperation in ctor 2014-02-11 16:53:00 -08:00
Kevin Sawicki 7d7f208fc5 Add missing keybidings to menu
This was caused by the test element not simulating a div element
with the .workspace class.
2014-02-11 16:48:32 -08:00
probablycorey 1302a38ddf Upgrade to find-and-replace@0.82.0 2014-02-11 16:47:44 -08:00
Kevin Sawicki f9d70e5623 Make skipped specs yellowish 2014-02-11 16:19:46 -08:00
Kevin Sawicki 0e60d73b10 Use info alert until suite completes or failure occurs 2014-02-11 16:18:43 -08:00
Kevin Sawicki 136928f36e Merge pull request #1534 from atom/ks-move-lines-around-folds
Handle moving lines around folds
2014-02-11 16:06:23 -08:00
Kevin Sawicki d6fc3e6d01 Move insertDelta computation under transact call 2014-02-11 15:55:32 -08:00
Kevin Sawicki 04d8584742 Use fold directly 2014-02-11 15:55:32 -08:00
Kevin Sawicki de88d6b624 Support moving up folds around folds 2014-02-11 15:55:32 -08:00
Kevin Sawicki 32a15796c1 Mention screen rows are used 2014-02-11 15:55:32 -08:00
Kevin Sawicki 905e456a15 Only fold valid buffer rows 2014-02-11 15:55:32 -08:00
Kevin Sawicki 04c59952d5 Support moving down folds around folds 2014-02-11 15:55:32 -08:00
Kevin Sawicki a93bfb5f8c Make sure moved lines don't go into a fold 2014-02-11 15:55:32 -08:00
Kevin Sawicki 2579f2993b 💄 folded not folder 2014-02-11 15:55:32 -08:00
Kevin Sawicki f9cdc4883e Move around folds when moving lines down 2014-02-11 15:55:32 -08:00
Kevin Sawicki d8da977b20 Add failing spec 2014-02-11 15:55:31 -08:00
Kevin Sawicki 4d230a0517 📝 Pluralize line 2014-02-11 15:55:31 -08:00
Kevin Sawicki 258218b166 Merge pull request #1532 from atom/ks-font-size-commands
Consistent font size commands
2014-02-11 15:55:10 -08:00
Kevin Sawicki 211d222291 Remove auto-indent conflict with increase zoom 2014-02-11 15:40:12 -08:00
Kevin Sawicki dda412d5ec Add window:reset-font-size command 2014-02-11 15:40:12 -08:00
Kevin Sawicki d7fabc5a58 Map cmd-_ to window:decrease-font-size
Makes it consistent with increase-font-size having two keybindings
2014-02-11 15:40:12 -08:00
Kevin Sawicki 16ab2031fa Upgrade to markdown-preview@0.28.0 2014-02-11 15:13:32 -08:00
probablycorey 0ea03bc389 Upgrade to markdown-preview@0.28.0 2014-02-11 12:52:35 -08:00
probablycorey 1bc38c191f Upgrade to markdown-preview@0.27.0 2014-02-11 12:44:41 -08:00
probablycorey c6baed045d Merge remote-tracking branch 'origin/master' into ks-remove-immediate-and-sync-activate-calls
Conflicts:
	package.json
2014-02-11 12:29:02 -08:00
probablycorey 71ae6b28dd Upgrade to markdown-preview@0.26.0 2014-02-11 11:40:12 -08:00
probablycorey 57e7335907 Merge branch 'cj-update-markdown-preview'
Conflicts:
	src/pane.coffee
2014-02-11 11:33:46 -08:00
Corey Johnson 15442c3dba Merge pull request #1527 from atom/cj-update-markdown-preview
Changes inspired by Markdown Preview
2014-02-11 11:27:02 -08:00
probablycorey d5c4b74608 🔥 whitespace 2014-02-11 10:58:32 -08:00
probablycorey a2fcc7aa7a Add Workspace::getActiveEditor and Pane::getActiveEditor 2014-02-11 10:58:24 -08:00
Kevin Sawicki de0aba6165 Merge pull request #1528 from atom/ks-spec-runner-ui
Tweak spec reporter styles
2014-02-11 09:33:30 -08:00
probablycorey 4b529ae167 Make methods private 2014-02-11 09:33:12 -08:00
Kevin Sawicki 848d77d3eb Show 0 failures when all pass 2014-02-11 09:23:12 -08:00
Kevin Sawicki 069ead6b1c Show failure count at end 2014-02-11 09:21:21 -08:00
Kevin Sawicki aef3332a09 Set suite description as text 2014-02-11 09:06:14 -08:00
Kevin Sawicki 4bfc0e8ea1 Remove ivars assigned in initialize 2014-02-11 09:06:14 -08:00
Kevin Sawicki c19c4a5e27 Remove unused class 2014-02-11 09:06:13 -08:00
Kevin Sawicki 750e3565fd Remove unused margin styles 2014-02-11 09:06:13 -08:00
Kevin Sawicki 0eb874864c Remove unused specFilter method 2014-02-11 09:06:13 -08:00
Kevin Sawicki 4c60c40eb8 Nest list-unstyled rule 2014-02-11 09:06:13 -08:00
Kevin Sawicki 830a8ddc03 Use bootstrap tooltips 2014-02-11 09:06:13 -08:00
Kevin Sawicki d9b14dc492 💄 Use Date.now() 2014-02-11 09:06:13 -08:00
Kevin Sawicki 4743cf89dc Ignore lines after the first jasmine line 2014-02-11 09:06:13 -08:00
Kevin Sawicki b6710b54cf Add comment about package specs label 2014-02-11 09:06:13 -08:00
Kevin Sawicki d9e4b9d199 Remove redundant spec count 2014-02-11 09:06:13 -08:00
Kevin Sawicki 6a408a3a55 Make symbol-header font size 18px 2014-02-11 09:06:13 -08:00
Kevin Sawicki 4b2e8f8713 Use fold/unfold octicons 2014-02-11 09:06:13 -08:00
Kevin Sawicki c882d73527 Add it prefix to failure descriptions 2014-02-11 09:06:13 -08:00
Kevin Sawicki fd005380b0 Use package name in label 2014-02-11 09:06:12 -08:00
Kevin Sawicki 6776fa4f0d Remove border from symbol area 2014-02-11 09:06:12 -08:00
Kevin Sawicki 8be5f7d6c8 Use bootstrap to style spec reporter 2014-02-11 09:06:12 -08:00
Kevin Sawicki 1c51f512ea Add symbol-area class 2014-02-11 09:06:12 -08:00
Kevin Sawicki 0d724bb00d Drop colon suffix 2014-02-11 09:06:12 -08:00
Kevin Sawicki 8b94fef806 Use alert class for status area 2014-02-11 09:06:12 -08:00
Kevin Sawicki 919fafc7a4 Trim stack trace lines 2014-02-11 09:06:12 -08:00
Kevin Sawicki 89b240cd4f Use pre element for stack traces 2014-02-11 09:06:12 -08:00
Kevin Sawicki 91bd852812 Use hyphen separated class names 2014-02-11 09:06:12 -08:00
Kevin Sawicki 99c2c32e1e Nest styles 2014-02-11 09:06:12 -08:00
Kevin Sawicki ecf4dbefe3 Sanitize duplicate error and [object Object].<anonymous> lines 2014-02-11 09:06:12 -08:00
Kevin Sawicki cf73dd467a Pad stack traces 2014-02-11 09:06:11 -08:00
Kevin Sawicki 05769f8a49 💄 One property per line 2014-02-11 09:06:11 -08:00
probablycorey 51fbb1be07 Add Pane::getActiveItem 2014-02-11 08:59:34 -08:00
probablycorey af1f57048b Add Pane::getActiveItem 2014-02-11 08:55:45 -08:00
Kevin Sawicki 0e62841320 Merge pull request #1524 from atom/ks-clear-conflict-on-save
Clear conflict on save
2014-02-11 08:52:48 -08:00
Kevin Sawicki d9ddf516f8 📝 Clarify TextBuffer::isInConflict 2014-02-11 08:46:21 -08:00
Kevin Sawicki 1436b8eb5e Rename path variables to filePath 2014-02-11 08:46:00 -08:00
Kevin Sawicki 1645efa2ce Clear conflict when the buffer is saved 2014-02-11 08:46:00 -08:00
Cheng Zhao d0fe2c9a5b Cache content after file is written successfully. 2014-02-11 15:10:41 +08:00
Cheng Zhao 84ee94dfd1 Support privilege escalation when writing file. 2014-02-11 14:58:15 +08:00
Cheng Zhao f585f53144 Upgrade to runas@0.4.0 2014-02-11 14:57:51 +08:00
Kevin Sawicki 9b3cdd00c8 Upgrade to language-gfm@0.16.0 2014-02-10 21:12:05 -08:00
Kevin Sawicki b650043191 Upgrade to background-tips@0.7.0 2014-02-10 16:33:12 -08:00
probablycorey 6f422ce56b Upgrade to autosave@0.11.0 2014-02-10 16:32:48 -08:00
Kevin Sawicki abe630937e Upgrade to bookmarks@0.19.0 2014-02-10 16:26:03 -08:00
probablycorey 7cccd5f920 Upgrade to autoflow@0.14.0 2014-02-10 16:22:52 -08:00
probablycorey e4f6eb17a0 Upgrade to archive-view@0.22.0 2014-02-10 16:17:18 -08:00
probablycorey 3951c45519 Update apm 2014-02-10 16:04:56 -08:00
probablycorey 2a2858554a Remove synchronous package loading shims 2014-02-10 15:52:34 -08:00
probablycorey 5b6e0b769d Fix specs for Tokenized Buffer 2014-02-10 15:52:34 -08:00
probablycorey c189dc22d7 Remove focused specs 2014-02-10 15:52:34 -08:00
probablycorey d2abbb3681 Fix specs for Syntax 2014-02-10 15:52:34 -08:00
probablycorey 8df791c949 Fix specs for Language Mode 2014-02-10 15:52:34 -08:00
probablycorey 1d4cab404d Fix specs for Editor View 2014-02-10 15:52:34 -08:00
probablycorey 1f3ea76379 Update Editor spec 2014-02-10 15:52:33 -08:00
probablycorey e01be5d41a Update display buffer spec 2014-02-10 15:52:33 -08:00
probablycorey 13e435a4f9 Update Atom Spec 2014-02-10 15:52:33 -08:00
probablycorey 3592ec19df Don't use activation events on fixture package with serialization error 2014-02-10 15:52:33 -08:00
Kevin Sawicki b49bd6fd10 Upgrade to github-sign-in@0.19.0 2014-02-10 15:36:50 -08:00
Kevin Sawicki 2d16d3a459 Upgrade to keybinding-resolve@0.10.0 2014-02-10 15:33:58 -08:00
Kevin Sawicki 72f2824588 Upgrade to language-gfm@0.15.0 2014-02-10 15:32:01 -08:00
Kevin Sawicki a229c28e62 Upgrade to language-toml@0.8.0 2014-02-10 15:30:58 -08:00
Kevin Sawicki b6576545ba Upgrade to release-notes@0.20.0 2014-02-10 15:20:56 -08:00
Kevin Sawicki e8c0793874 Upgrade to spell-check@0.24.0 2014-02-10 15:16:53 -08:00
Kevin Sawicki 508636c06e Upgrade to update-package-dependencies@0.3.0 2014-02-10 15:14:10 -08:00
Kevin Sawicki ca49ac1730 Upgrade to visual-bell@0.7.0 2014-02-10 15:13:43 -08:00
Kevin Sawicki 44c4bc8434 Upgrade to whitespace@0.12.0 2014-02-10 15:12:02 -08:00
Kevin Sawicki a2fb288745 Upgrade to metrics@0.26.0 2014-02-10 15:02:14 -08:00
Kevin Sawicki c00c5c97f1 Remove unused file extension API 2014-02-10 14:43:47 -08:00
Kevin Sawicki 2248bbf8fb Remove unused ivars 2014-02-10 14:43:28 -08:00
Kevin Sawicki 256a9bf08a Upgrade to language-gfm@0.14.0 2014-02-10 14:30:28 -08:00
Kevin Sawicki 4d3b4529f1 Upgrade to link@0.17.0 2014-02-10 14:30:05 -08:00
Corey Johnson 723ebff69a Merge pull request #1518 from atom/cj-make-package-activation-consistent
Make package loading options consistent and asynchronous
2014-02-10 14:18:27 -08:00
probablycorey ffb7093cf3 Merge branch 'cj-make-package-activation-consistent' into cj-update-markdown-preview
Conflicts:
	src/deserializer-manager.coffee
	src/workspace.coffee
2014-02-10 14:17:46 -08:00
probablycorey d415ec9a00 Add custom load and activate method to Theme Package 2014-02-10 13:39:38 -08:00
Kevin Sawicki 2e8962501d Add hyphen between text and mate 2014-02-10 13:30:40 -08:00
Kevin Sawicki 8425c15cd7 💄 Use Array::filter instead of for/in/when 2014-02-10 13:21:08 -08:00
Kevin Sawicki f9f2688468 Upgrade to snippets@0.27.0 2014-02-10 12:18:15 -08:00
Kevin Sawicki ad0bb5098f Upgrade to wrap-guide@0.14.0 2014-02-10 12:05:56 -08:00
Kevin Sawicki 81e86c1467 📝 Remove Internal: comment 2014-02-10 11:48:21 -08:00
Kevin Sawicki 0724dd7a7c Remove unused requires 2014-02-10 11:47:07 -08:00
Kevin Sawicki 92b76e61c4 Revert apm change 2014-02-10 11:46:22 -08:00
Kevin Sawicki 8eee4d87be Guard against missing workspace view 2014-02-10 11:41:08 -08:00
probablycorey e6d7413af1 Always call deactivate on loaded packages 2014-02-10 11:24:02 -08:00
Kevin Sawicki 6685464229 Treat spec description as text instead of html 2014-02-10 10:56:56 -08:00
Kevin Sawicki 20772d045c Upgrade to background-tips@0.6.0 2014-02-10 10:04:51 -08:00
Kevin Sawicki 33b7c915eb Upgrade to symbols-view@0.33.0 2014-02-10 09:30:59 -08:00
Kevin Sawicki 31a154d7eb Use subscription to track if disabled packages are observed 2014-02-10 09:17:15 -08:00
probablycorey f0197632a3 Upgrade to fuzzy-finder@0.34.0 2014-02-07 21:29:37 -08:00
probablycorey ae7306572b Guard against empty activationDeferred var 2014-02-07 21:00:50 -08:00
Kevin Sawicki 1a81248c88 💄 Remove extra space 2014-02-07 17:14:24 -08:00
probablycorey 8d40e4df10 Merge remote-tracking branch 'origin/master' into cj-make-package-activation-consistent
Conflicts:
	package.json
	src/package-manager.coffee
	src/text-mate-package.coffee
2014-02-07 16:53:24 -08:00
Kevin Sawicki 431688e44c Remove unused require 2014-02-07 16:33:28 -08:00
Kevin Sawicki f10a70eaf4 Implement TextMatePackage.activateSync 2014-02-07 16:32:34 -08:00
probablycorey 282fb66e75 Reject and remove activation deferral on deactivation 2014-02-07 16:30:10 -08:00
Kevin Sawicki a131a03f28 Don't bundle unused jasmine-reporters/ext folder 2014-02-07 16:18:49 -08:00
Kevin Sawicki 713d7332b3 Update jasmine.js filter pattern 2014-02-07 16:09:43 -08:00
probablycorey 00f30eaf6c Make immediate package loading work 2014-02-07 15:50:48 -08:00
Kevin Sawicki f01a2a91f9 Remove spec/suite time logging
This isn't really helpful anymore now that the specs run in parallel
2014-02-07 15:44:11 -08:00
probablycorey e51c94b940 Downgrade to feedback@0.23.0 2014-02-07 15:29:25 -08:00
Kevin Sawicki fe5640df4b Return promise if it already exists
This prevents successive calls to atom.packages.activatePackage from
activating an AtomPackage multiple times.
2014-02-07 15:23:53 -08:00
Kevin Sawicki 42a777e822 Upgrade to gists@0.17.0 2014-02-07 15:13:50 -08:00
probablycorey 73cc1dadae Upgrade to fuzzy-finder@0.34.0 2014-02-07 15:13:24 -08:00
probablycorey 4b9aa18628 Upgrade to feedback@0.23.0 2014-02-07 15:10:49 -08:00
Kevin Sawicki 163150dc87 Upgrade to git-diff@0.24.0 2014-02-07 15:09:48 -08:00
Kevin Sawicki f3be876065 Upgrade to grammar-selector@0.19.0 2014-02-07 15:09:48 -08:00
probablycorey e499e32c24 Upgrade to editor-stats@0.13.0 2014-02-07 15:03:17 -08:00
Kevin Sawicki 3534ac0f32 Upgrade to image-view@0.19.0 2014-02-07 15:01:41 -08:00
probablycorey ac6675380c Upgrade to dev-live-reload@0.24.0 2014-02-07 15:01:01 -08:00
Kevin Sawicki c1e8505ebf Upgrade to link@0.16.0 2014-02-07 14:59:35 -08:00
Kevin Sawicki e567702e3f Upgrade to metrics@0.25.0 2014-02-07 14:58:13 -08:00
Kevin Sawicki 5d2c6ea4b4 Upgrade to package-generator@0.26.0 2014-02-07 14:55:58 -08:00
Kevin Sawicki df1a792675 Upgrade to settings-view@0.71.0 2014-02-07 14:52:17 -08:00
Kevin Sawicki 9c1fa74d2f Upgrade to snippets@0.26.0 2014-02-07 14:52:17 -08:00
Kevin Sawicki 009cbfd418 Upgrade to snippets@0.25.0 2014-02-07 14:52:17 -08:00
probablycorey 81fd2bbf2e Upgrade to command-pallete@0.16.0 2014-02-07 14:31:04 -08:00
probablycorey d5222f22ea Upgrade to bracket-matcher@0.20.0 2014-02-07 14:27:37 -08:00
Kevin Sawicki 69545cba61 Upgrade to symbols-view@0.32.0 2014-02-07 14:25:40 -08:00
probablycorey 625a61a18f Upgrade to autoflow@0.13.0 2014-02-07 14:12:16 -08:00
probablycorey 2d93402858 Update to autocomplete@0.22.0 2014-02-07 14:03:18 -08:00
Kevin Sawicki efbf961c4b Upgrade to tabs@0.19.0 2014-02-07 14:00:38 -08:00
Kevin Sawicki d64ff4d598 Upgrade to tree-view@0.69.0 2014-02-07 13:58:42 -08:00
Kevin Sawicki c81fcac108 Upgrade to tree-view@0.68.0 2014-02-07 13:57:43 -08:00
Kevin Sawicki 01f3f88c6c Upgrade to whitespace@0.11.0 2014-02-07 13:51:33 -08:00
Kevin Sawicki fa45af588e Upgrade to wrap-guide@0.13.0 2014-02-07 13:50:11 -08:00
Kevin Sawicki 802ec9d8c2 Upgrade to command-logger@0.11.0 2014-02-07 13:47:04 -08:00
Kevin Sawicki cce64cb9e8 Don't bundle obj.target and .deps build folders 2014-02-07 13:27:05 -08:00
Kevin Sawicki b38702d754 Upgrade to styleguide@0.23.0 2014-02-07 13:11:20 -08:00
Kevin Sawicki 6a9268cb38 Upgrade to clean language- packages
All unused files and folders have been removed from these packages.
2014-02-07 12:58:28 -08:00
Kevin Sawicki 246bbc7862 Upgrade to git-utils 1.x 2014-02-07 12:27:52 -08:00
Kevin Sawicki 7428431609 Don't bundle bootstrap examples 2014-02-07 12:15:29 -08:00
Kevin Sawicki f9308fd9fc Filter apm folter using standard node_modules filter
This reduces the apm folder size in the built app by 4MB
2014-02-07 12:13:51 -08:00
Kevin Sawicki 504a55304e Upgrade to settings-view@0.70.0 2014-02-07 11:27:16 -08:00
Kevin Sawicki 651177bc0c Upgrade apm for available command tweaks 2014-02-07 11:25:45 -08:00
probablycorey d9a47f256c Update specs 2014-02-07 11:21:52 -08:00
probablycorey 9a51c24937 Make AtomPackage:activate return a promise that is fulfilled when the
package is activated.
2014-02-07 11:21:42 -08:00
probablycorey 28f0bf645f Remove Package::isActive
It didn't seem needed anymore
2014-02-07 11:20:33 -08:00
probablycorey 0f68f095f1 Remove load and activate methods from ThemePackage
I assume these were added to speed theme loading, but now that promises
are being used it complicates overriding methods. From my tests removing
these methods and relying on Atom Package's methods added ~2 ms per 
theme.
2014-02-07 11:18:44 -08:00
probablycorey 7686b348b1 Upgrade to q@1.0.0 2014-02-07 11:16:30 -08:00
Kevin Sawicki fc67aa016a Merge pull request #1523 from atom/ks-init-dot-coffee
Rename ~/.atom/user.coffee to ~/.atom/init.coffee
2014-02-07 10:13:03 -08:00
Kevin Sawicki 422c0e36cb Assert init.coffee and styles.css are copied 2014-02-07 09:54:58 -08:00
Kevin Sawicki 0bbc631607 📝 Update docs for user.coffee rename 2014-02-07 09:52:55 -08:00
Kevin Sawicki fbdf16a8fa Use soft wrap instead of font size in example hack 2014-02-07 09:51:24 -08:00
Kevin Sawicki 23af7b4072 Make font-size larger than the default 2014-02-07 09:51:24 -08:00
Kevin Sawicki 4219d06bd9 📝 Doc ~/.atom/init.coffee 2014-02-07 09:51:24 -08:00
Kevin Sawicki e6e43f6884 Add Open Your Init Script command 2014-02-07 09:51:24 -08:00
Kevin Sawicki e52a4c1588 Rename user.coffee to init.coffee 2014-02-07 09:51:24 -08:00
Kevin Sawicki efac59be9b 📝 Use quotes for inserted text 2014-02-07 09:51:04 -08:00
Kevin Sawicki c2199e9c21 📝 Doc keymap snippet 2014-02-07 09:50:46 -08:00
Kevin Sawicki 8a9d4d8eea Upgrade to snippets@0.25.0 2014-02-07 09:48:44 -08:00
Kevin Sawicki 837d91c220 Merge pull request #1520 from atom/ks-tom-doc
Clarify TomDoc usage
2014-02-07 09:16:10 -08:00
Kevin Sawicki a49340dd6c 📝 doc parameters in workspace.coffee 2014-02-06 17:34:51 -08:00
Kevin Sawicki dfdab3d006 📝 doc parameters in theme-manager.coffee 2014-02-06 17:33:29 -08:00
Kevin Sawicki 25a9ca4224 📝 doc parameters in task.coffee 2014-02-06 17:32:44 -08:00
Kevin Sawicki f4873646c9 📝 doc parameters in syntax.coffee 2014-02-06 17:22:37 -08:00
Kevin Sawicki da9a7a18dd 📝 doc parameters in selection.coffee 2014-02-06 17:16:31 -08:00
Kevin Sawicki f213389db8 📝 doc parameters in select-list-view.coffee 2014-02-06 17:02:07 -08:00
Kevin Sawicki bca9f81be1 📝 doc parameters in project.coffee 2014-02-06 17:00:40 -08:00
Kevin Sawicki e5c31495cb 📝 doc parameters in pane.coffee 2014-02-06 16:55:19 -08:00
Kevin Sawicki 1e69ede779 📝 doc parameters in package-manager.coffee 2014-02-06 16:52:22 -08:00
Kevin Sawicki f24389a45b 📝 doc parameters in menu-manager.coffee 2014-02-06 16:51:39 -08:00
Kevin Sawicki 695fd441fb Upper case Object 2014-02-06 16:50:46 -08:00
Kevin Sawicki 8cd164ef5e 📝 doc parameters in keymap.coffee 2014-02-06 16:39:23 -08:00
Kevin Sawicki dbbfb9ae7d 📝 doc parameters in file.coffee 2014-02-06 16:37:12 -08:00
Kevin Sawicki 18348b8738 📝 doc parameters in editor-view.coffee 2014-02-06 16:35:32 -08:00
Kevin Sawicki c4cb6abef1 📝 doc parameters in editor.coffee 2014-02-06 16:30:30 -08:00
Kevin Sawicki c9ee68651d 📝 doc parameters in directory.coffee 2014-02-06 16:21:11 -08:00
Kevin Sawicki 709c70c4c4 📝 doc parameters in deserializer-manager.coffee 2014-02-06 16:17:27 -08:00
Kevin Sawicki fd7c2e92c5 📝 doc parameters in cursor.coffee 2014-02-06 16:03:00 -08:00
Kevin Sawicki bbce381e16 Add object keys to example 2014-02-06 15:55:13 -08:00
Kevin Sawicki a46fcc1985 📝 doc parameters in context-menu-manager.coffee 2014-02-06 15:50:21 -08:00
Kevin Sawicki de914193ff Upgrade to biscott@0.6.0 2014-02-06 15:46:25 -08:00
Kevin Sawicki b80c43db7b 📝 doc parameters in clipboard.coffee 2014-02-06 15:46:02 -08:00
Kevin Sawicki 83cc6a76de 📝 doc parameters in buffered-process.coffee 2014-02-06 15:38:59 -08:00
Kevin Sawicki d21b5ae75b 📝 doc parameters in atom.coffee 2014-02-06 15:34:47 -08:00
Kevin Sawicki 406743f0fb Upgrade to biscotto@0.5.0 2014-02-06 15:27:27 -08:00
Kevin Sawicki acc5c18ba3 Remove trailing slashes 2014-02-06 14:38:14 -08:00
Kevin Sawicki f0ca685a16 Add method reference 2014-02-06 14:28:43 -08:00
Kevin Sawicki b001e7e28f Add example comment 2014-02-06 14:28:10 -08:00
Kevin Sawicki 1ab12b436a Add documentation styleguide to CONTRIBUBING.md 2014-02-06 14:20:08 -08:00
Kevin Sawicki 9f67978513 Remove doc proposal 2014-02-06 14:08:17 -08:00
Kevin Sawicki ff1440be26 Merge pull request #1519 from atom/ks-remove-config-observer
Remove ConfigObserver
2014-02-06 14:06:09 -08:00
probablycorey 7a9a1ca213 Allow sync or immediate to be used (prefer immediate) 2014-02-06 13:47:18 -08:00
Kevin Sawicki 35beaf44a9 Upgrade to fuzzy-finder@0.33.0 2014-02-06 13:41:50 -08:00
Kevin Sawicki 63c24cd6e9 Upgrade to release-notes@0.18.0 2014-02-06 13:35:03 -08:00
Kevin Sawicki 6d6f41b212 Upgrade to spell-check@0.23.0 2014-02-06 13:32:40 -08:00
Kevin Sawicki af52ad9124 Upgrade to tree-view@0.68.0 2014-02-06 13:31:26 -08:00
Kevin Sawicki 8cf498e7e3 Upgrade to wrap-guide@0.13.0 2014-02-06 13:28:19 -08:00
Kevin Sawicki 2bbae7090e Upgrade to settings-view@0.69.0 2014-02-06 13:16:01 -08:00
Kevin Sawicki cb6ba3c418 Remove ConfigObserver from exports 2014-02-06 13:10:34 -08:00
Kevin Sawicki ec4cf8b497 Remove ConfigObserver
This class offers little utility now that emissary exists with beefed
up Subscriber and Emitter classes.
2014-02-06 13:07:25 -08:00
Kevin Sawicki 967db1f7b8 Remove more empty Private: comment blocks 2014-02-06 11:21:03 -08:00
Kevin Sawicki 5b453290ad Mark DisplayBuffer methods delegated to as public 2014-02-06 11:17:20 -08:00
probablycorey 972fa41528 Package loading is always synchronous, activation can be async 2014-02-06 11:15:34 -08:00
Kevin Sawicki 5ca0864753 📝 Use ## for headings 2014-02-06 11:05:41 -08:00
Kevin Sawicki ee3d928b5b Set ivars in constructor 2014-02-06 11:05:20 -08:00
Kevin Sawicki b1b541f903 📝 doc return value of Config.observe 2014-02-06 11:02:10 -08:00
Kevin Sawicki a9e4bd4aaf 📝 Doc events and calling super from initialize 2014-02-06 10:52:01 -08:00
Kevin Sawicki 2f908c171d Merge pull request #1517 from atom/ks-clean-up-comment-visibility
Clean up comment visibility
2014-02-06 10:49:28 -08:00
Kevin Sawicki 227454e27e Remove ### style visibility comments 2014-02-06 10:40:45 -08:00
Kevin Sawicki 1d9fed2464 Remove Internal header 2014-02-06 10:16:24 -08:00
Kevin Sawicki 4298733db6 Remove Internal: prefix 2014-02-06 10:14:20 -08:00
Kevin Sawicki cee0b951fb Remove empty Private: comments 2014-02-06 10:11:32 -08:00
Kevin Sawicki 932a792289 Remove Private: prefix 2014-02-06 10:02:53 -08:00
Kevin Sawicki 64a57635e9 Set load queue concurrency to 10
This shaves around 100-150ms off of the total load time for grammars
2014-02-06 09:48:41 -08:00
Kevin Sawicki eefa85e8ec Remove ### Internal ### block 2014-02-06 09:29:27 -08:00
Kevin Sawicki 5a400f1bb2 Upgrade to settings-view@0.68.0 2014-02-06 09:25:16 -08:00
Kevin Sawicki 65ec0a2f0a 📝 Use TomDoc style comments in Git class 2014-02-05 18:03:14 -08:00
probablycorey ed8b8f005f Remove log 2014-02-05 17:34:55 -08:00
probablycorey 7166937b13 Copy symlinked directories as files
Closes #1515
2014-02-05 17:34:24 -08:00
Kevin Sawicki 5481e5d664 Upgrade to settings-view@0.67.0 2014-02-05 16:58:34 -08:00
probablycorey 2ccab9d182 Update to atom-shell@0.9.1 2014-02-05 16:34:37 -08:00
Corey Johnson a646ab5bb8 Merge pull request #1507 from atom/cj-use-squirrel-as-updater
Use squirrel as updater (instead of sparkle)
2014-02-05 16:08:59 -08:00
probablycorey f10e55b4d5 Remove deferred package deserializers 2014-02-05 14:46:49 -08:00
Corey Johnson e769a8e4d5 Merge pull request #1484 from atom/directional-pane-navigation
Add commands to move directionally between panes
2014-02-05 13:29:45 -08:00
Kevin Sawicki 3ac03c9ae0 Upgrade to settings-view@0.66.0 2014-02-05 12:27:20 -08:00
Kevin Sawicki 8b2533e721 Upgrade apm for init improvements 2014-02-05 12:26:32 -08:00
probablycorey bc29ddb9b6 Change currently-focused to active 2014-02-05 12:06:15 -08:00
Kevin Sawicki 1b455a990e Upgrade to spell-check@0.22.0 refs #1514 2014-02-05 09:13:39 -08:00
Kevin Sawicki 69fa5cb3f7 Remove empty Private: comments 2014-02-05 09:13:09 -08:00
Cheng Zhao eb05e804b1 Merge pull request #1510 from atom/cz-windows-grunt-build
Fix grunt build on Windows
2014-02-05 00:02:19 -08:00
Kevin Sawicki ab456131cc Upgrade apm for init fixes 2014-02-04 17:33:04 -08:00
Kevin Sawicki a7267d93ad Upgrade to language-gfm@0.13.0 2014-02-04 17:08:41 -08:00
Kevin Sawicki 3047152fb0 Mention apm init command 2014-02-04 16:51:11 -08:00
Kevin Sawicki 220fe36167 📝 Add guide for converting a TextMate bundle 2014-02-04 16:50:21 -08:00
Kevin Sawicki e52fd3925c Drop the www 2014-02-04 16:50:09 -08:00
Kevin Sawicki 8713153f01 📝 Add publish idea 2014-02-04 16:46:54 -08:00
Kevin Sawicki 4237916759 📝 Fence as sh 2014-02-04 16:34:27 -08:00
Kevin Sawicki bcf1456df7 📝 converted instead of generated 2014-02-04 16:32:26 -08:00
Kevin Sawicki 147db97d4d Add doc for converting a TextMate theme 2014-02-04 16:22:38 -08:00
Tom Preston-Werner b462a1ffa9 Merge pull request #1508 from atom/your-first-package-doc-fixes
Clarify a few small issues from a newbie perspective.
2014-02-04 16:14:24 -08:00
Kevin Sawicki e2e838c4ec Upgrade to symbols-view@0.31.0 2014-02-04 15:34:30 -08:00
probablycorey 6b88ce8d19 Replace getActivePane with getActivePaneView 2014-02-04 15:30:58 -08:00
Kevin Sawicki 4141e1060a Upgrade to first-mate@1.1.4 2014-02-04 14:30:05 -08:00
probablycorey e66e75593d Update feed url 2014-02-04 14:10:53 -08:00
Kevin Sawicki c765d069d1 Don't mark callback field as public 2014-02-04 13:40:49 -08:00
Kevin Sawicki faf1a1565e Upgrade to first-mate@1.1.3 2014-02-04 13:37:08 -08:00
Kevin Sawicki 71cae3c937 Upgrade to biscotto@0.2.0 2014-02-04 13:20:45 -08:00
Kevin Sawicki d5b809a194 📝 Clean up EditorView docs
* Remove ### Internal ### blocks
  * Remove ### Public ### blocks
  * Remove ### Private ### blocks
  * Remove empty Private: comments
  * Add explicit Public: to comments
2014-02-04 13:19:50 -08:00
probablycorey 36427dae9f Add toHaveFocus jasmine expectation 2014-02-04 13:06:47 -08:00
Kevin Sawicki 2fb0f796c4 Capitalize Editor is method name 2014-02-04 12:46:42 -08:00
Kevin Sawicki f473d46cf1 📝 doc EditorView::setPlaceholderText 2014-02-04 12:45:56 -08:00
Kevin Sawicki 061599554e 📝 coc EditorView::getEditor 2014-02-04 12:43:47 -08:00
Kevin Sawicki a03aad6f5e 📝 doc PaneView::getContainer 2014-02-04 11:48:25 -08:00
Kevin Sawicki 0a62277cfa 📝 doc Pane::getItems 2014-02-04 11:47:04 -08:00
Kevin Sawicki 9d045d1d43 📝 doc Editor::getMarkerCount 2014-02-04 11:45:47 -08:00
Kevin Sawicki 6e4c4f43b3 Upgrade to biscotto@0.1.0 2014-02-04 11:30:27 -08:00
Kevin Sawicki 099f632a6c 📝 Remove warning on missing reference 2014-02-04 11:28:34 -08:00
Kevin Sawicki 0dc0883531 Include includes when linting docs 2014-02-04 11:02:32 -08:00
Kevin Sawicki 6d6f4671d8 Use raw instead of raw2 2014-02-04 10:57:32 -08:00
Kevin Sawicki ef942ef1c8 Upgrade to text-buffer 1.x 2014-02-04 10:52:54 -08:00
Kevin Sawicki 2a75836ca2 Remove unused environment param/ivar 2014-02-04 10:14:29 -08:00
Kevin Sawicki b845086e63 📝 Add registering example 2014-02-04 10:14:12 -08:00
Kevin Sawicki ba45dbaa6a 📝 Mention atom.deserializers global 2014-02-04 10:13:59 -08:00
probablycorey 3c90007199 Cleanup split specs 2014-02-04 10:07:17 -08:00
probablycorey 1023c421c7 Remove log 2014-02-04 10:07:01 -08:00
Kevin Sawicki ece269f158 📝 Consistently mention what classes have global instances 2014-02-04 10:06:37 -08:00
Kevin Sawicki 43ba0b9529 📝 Mark Keymap class as public 2014-02-04 10:04:06 -08:00
Kevin Sawicki b28f3f29ec 📝 Sort and include atom.workspace 2014-02-04 10:00:34 -08:00
Kevin Sawicki 92aeb9f3cb Include Grammar class in docs 2014-02-04 09:58:48 -08:00
probablycorey 89cade2d22 Merge remote-tracking branch 'origin/master' into cj-update-markdown-preview 2014-02-04 09:56:17 -08:00
Kevin Sawicki 53529dab1f Upgrade to first-mate@1.1.2 2014-02-04 09:54:54 -08:00
Cheng Zhao 35dd435397 Don't use walkdir for copying tree.
On Windows with node v0.11.x walkdir is ignoring files randomly.
2014-02-04 21:36:45 +08:00
Cheng Zhao 93aec682de Also replace the atom icon on Windows. 2014-02-04 16:58:49 +08:00
Cheng Zhao c64b84750a Merge pull request #1503 from atom/cz-sync-to-async
Remove usage of synchronous messages during startup
2014-02-04 00:32:02 -08:00
Cheng Zhao 01876c4004 Request loadSettings.windowState via IPC messages. 2014-02-04 11:46:21 +08:00
Cheng Zhao 9680ad7bb5 No need to use => when we could use ->. 2014-02-04 11:01:39 +08:00
probablycorey bc5a79564a Update docs 2014-02-03 19:00:54 -08:00
Cheng Zhao 88a65358b4 Add methods for setSize, setPosition and center. 2014-02-04 11:00:51 +08:00
probablycorey dcbd2a2102 Add split and searchAllPanes option to Workspace::open 2014-02-03 19:00:50 -08:00
Nathan Sobo 11e727e3fa Merge pull request #1509 from atom/fix-doc-arg-name
Fix name of argument in docs for clipBufferPosition
2014-02-03 18:59:28 -08:00
Tom Preston-Werner ce63aee338 Fix name of argument in docs for clipBufferPosition 2014-02-03 17:50:03 -08:00
Tom Preston-Werner d3e11a6183 BAM -> 🎉 2014-02-03 16:48:33 -08:00
probablycorey 88798fca7e Merge remote-tracking branch 'origin/master' into cj-update-markdown-preview 2014-02-03 16:16:07 -08:00
Kevin Sawicki 3c9204e464 Remove convert-theme grunt task
This is now handled by the --convert argument to the apm init command
2014-02-03 15:22:58 -08:00
probablycorey 48417338b0 Fix typo 2014-02-03 14:54:50 -08:00
probablycorey faf523f698 Document methods 2014-02-03 14:43:02 -08:00
probablycorey 8a85f488f3 💄 2014-02-03 14:41:20 -08:00
Tom Preston-Werner f75b4aa117 Clarify a few small issues from a newbie perspective. 2014-02-03 14:22:20 -08:00
Kevin Sawicki e4a65ca810 Convert update octicons from script to grunt task 2014-02-03 14:15:08 -08:00
Kevin Sawicki a36cc3a609 Method is showErrorDialog not showDialog 2014-02-03 14:01:23 -08:00
Kevin Sawicki cb8075206b Merge pull request #1480 from atom/ks-return-object-from-pasteboard-read
Clean up atom.pasteboard
2014-02-03 13:56:16 -08:00
Kevin Sawicki a04f77b400 Update atom.clipboard.read() call for new return value 2014-02-03 13:50:48 -08:00
Kevin Sawicki 0e0ae17cd3 Upgrade to tree-view@0.67.0 2014-02-03 13:39:54 -08:00
Kevin Sawicki 02f0c49d0e Unfocus spec 2014-02-03 13:36:12 -08:00
Kevin Sawicki ca6521b711 Upgrade to settings-view@0.65.0 2014-02-03 13:34:28 -08:00
Kevin Sawicki f0c200f233 Upgrade to gists@0.16.0 2014-02-03 13:32:07 -08:00
Kevin Sawicki 84e69db268 Upgrade to to-the-hubs@0.19.0 2014-02-03 13:31:52 -08:00
Kevin Sawicki fbdb5b59ea Remove pasteboard shim 2014-02-03 13:29:20 -08:00
Kevin Sawicki 66530eb69a Rename remaining pasteboard occurences 2014-02-03 13:28:09 -08:00
Kevin Sawicki 70a7514f9e Add Clipboard::readWithMetadata
This includes the associated metadata and Clipboard::read now returns
a String.
2014-02-03 13:20:28 -08:00
Kevin Sawicki 55ca32f7b3 Rename pasteboard-spec to clipboard-spec 2014-02-03 13:12:56 -08:00
Kevin Sawicki 569ab416b8 Replace pasteboard references with clipboard 2014-02-03 13:12:33 -08:00
Kevin Sawicki b1e99d9927 Use atom.clipboard instead of atom.pasteboard 2014-02-03 13:10:10 -08:00
probablycorey caeb70cf4a Add 'Check for Updates' menu item 2014-02-03 12:52:01 -08:00
probablycorey cc233fb7f6 Use Squirrel API for auto-updates 2014-02-03 12:51:38 -08:00
probablycorey c730910f7c Update to atom-shell@0.9.0 2014-02-03 12:50:35 -08:00
Kevin Sawicki fc2be08b60 Rename Pasteboard class to Clipboard 2014-02-03 12:21:32 -08:00
Kevin Sawicki e6565f6561 Return object from Pasteboard::read
Closes #1465
2014-02-03 12:19:14 -08:00
Kevin Sawicki 638aaa2e62 Merge pull request #1506 from atom/ks-theme-types
Include type in theme key
2014-02-03 11:55:11 -08:00
Kevin Sawicki e23fb98a41 Upgrade apm for template updates 2014-02-03 11:27:45 -08:00
Kevin Sawicki 8d0ddc0513 Upgrade to settings-view@0.64.0 2014-02-03 11:15:59 -08:00
Kevin Sawicki c225d180ba Set fixture theme types to "ui" 2014-02-03 11:15:31 -08:00
Kevin Sawicki 217fd8e271 Check for non-null theme value 2014-02-03 11:12:43 -08:00
Kevin Sawicki b82c808bad Upgrade to base16-tomorrow-dark-theme@0.11.0 2014-02-03 11:04:07 -08:00
Kevin Sawicki 25f97b5ef3 Upgrade to solarized-light-syntax@0.5.0 2014-02-03 11:01:50 -08:00
Kevin Sawicki 86f1a484a8 Upgrade to solarized-dark-syntax@0.9.0 2014-02-03 11:00:47 -08:00
Kevin Sawicki 49313b65b9 Upgrade to atom-light-ui@0.21.0 2014-02-03 10:59:48 -08:00
Kevin Sawicki c0d564b635 Upgrade to atom-dark-ui@0.22.0 2014-02-03 10:58:51 -08:00
Kevin Sawicki b9c14379be Upgrade to atom-light-syntax@0.13.0 2014-02-03 10:54:45 -08:00
Kevin Sawicki adb3b390bb Upgrade to atom-dark-syntax@0.13.0 2014-02-03 10:53:53 -08:00
Kevin Sawicki a192b70406 Upgrade to tree-view@0.66.0 2014-02-03 10:49:04 -08:00
Kevin Sawicki 28e6be8baf Upgrade to image-view@0.18.0 2014-02-03 10:39:45 -08:00
Kevin Sawicki f5fa89418c Prepare 0.50.0 release 2014-02-03 09:54:03 -08:00
Cheng Zhao 3d27cd662a Save the sync message in require('crash-reporter').start(). 2014-02-03 19:31:40 +08:00
Cheng Zhao 0c8744f7a7 Delay the require.remote until needed. 2014-02-03 19:21:35 +08:00
Cheng Zhao 272ce92201 Pass app version via window's url.
We could save the sync message of atom.getVersion().
2014-02-03 19:18:15 +08:00
Cheng Zhao c30f74ef9e Remove call of atom.getCurrentWindow in atom.setWindowDimensions. 2014-02-03 19:11:01 +08:00
Cheng Zhao 5912ac1d1b Merge multiple updates of menu into one update. 2014-02-03 17:02:11 +08:00
Cheng Zhao a1171f39df Do not use sync message to call BrowserWindow API. 2014-02-03 16:24:39 +08:00
Cheng Zhao 69c9172e49 Get rid of ipc call in atom.getLoadSettings. 2014-02-03 16:09:15 +08:00
Cheng Zhao c1f3aa14cd Do not send synchronous messages in index.html. 2014-02-03 16:03:59 +08:00
Cheng Zhao fae28d8c21 Upgrade apm for proxy support. 2014-02-03 14:51:15 +08:00
Nathan Sobo 5017f1473c 💄 2014-02-02 19:52:51 +06:00
Nathan Sobo 12ec3f69d6 Merge branch 'master' into ns-fix-softwrap 2014-02-02 19:32:21 +06:00
Nathan Sobo f4e43b96c2 Don't add explicit 'Private:' annotations since it is the default 2014-02-02 19:31:09 +06:00
Nathan Sobo f958322cef 💄 spelling 2014-02-02 19:30:21 +06:00
Nathan Sobo 7061ea5d23 Kill stray console.log 2014-02-02 19:29:54 +06:00
Kevin Sawicki f7e11a1fb5 Upgrade to language-javascript@0.5.0 2014-01-31 15:49:42 -08:00
Kevin Sawicki aab5deaae6 Upgrade to language-ruby@0.8.0 refs #1470 2014-01-31 15:40:53 -08:00
Kevin Sawicki 50f68c38ec Merge pull request #1499 from atom/ks-remove-select-list-shim
Remove SelectList shim
2014-01-31 15:31:26 -08:00
Kevin Sawicki d778e13ffb 💄 Sort exports 2014-01-31 15:22:48 -08:00
Kevin Sawicki 9918a0b73f Remove SelectList shim 2014-01-31 15:22:16 -08:00
Kevin Sawicki 374fe99aaf Upgrade to symbols-view@0.30.0 2014-01-31 15:21:48 -08:00
Kevin Sawicki ea052fc667 Upgrade to styleguide@0.22.0 2014-01-31 15:20:11 -08:00
Kevin Sawicki d11037f6d2 Upgrade to spell-check@0.21.0 2014-01-31 15:19:42 -08:00
Kevin Sawicki 777c4a5e43 Upgrade to grammar-selector@0.18.0 2014-01-31 15:10:42 -08:00
Kevin Sawicki a897a320a9 Upgrade to fuzzy-finder@0.32.0 2014-01-31 15:09:32 -08:00
Kevin Sawicki a94e9df641 Upgrade to command-palette@0.15.0 2014-01-31 15:07:56 -08:00
Kevin Sawicki 45d8df37fa Upgrade to bookmarks@0.18.0 2014-01-31 15:07:30 -08:00
Kevin Sawicki 83639c4cfa Upgrade to autocomplete@0.21.0 2014-01-31 15:07:12 -08:00
Kevin Sawicki 6c960183fd Merge pull request #1498 from atom/ks-rename-select-list
Rename SelectList to SelectListView
2014-01-31 15:00:08 -08:00
Kevin Sawicki 0730c7902d Update export docs for SelectListView 2014-01-31 14:51:06 -08:00
Kevin Sawicki 012c38cf11 Shim export to old name 2014-01-31 14:50:33 -08:00
Kevin Sawicki 0785fb3a48 Add export shim 2014-01-31 14:50:16 -08:00
Kevin Sawicki 563065aeb1 Rename SelectList to SelectListView 2014-01-31 14:49:36 -08:00
Kevin Sawicki 2b1f9531e5 Upgrade to exception-reporting@0.13.0 2014-01-31 14:38:47 -08:00
Kevin Sawicki 665d1b9581 Merge pull request #1497 from atom/ks-coffee-script-1-7
More CoffeeScript 1.7
2014-01-31 14:20:40 -08:00
Kevin Sawicki d79d819048 Dedupe fs-plus and season 2014-01-31 14:09:19 -08:00
Kevin Sawicki 6ae2d9737d Upgrade to settings-view@0.63.0 2014-01-31 14:02:16 -08:00
Kevin Sawicki 54b67ea6b9 Upgrade apm for version bumps 2014-01-31 13:47:37 -08:00
Kevin Sawicki 41dc113088 Upgrade to coffeestack@0.7.0 2014-01-31 13:45:45 -08:00
Kevin Sawicki 3216d767da Upgrade to jasmine-tagged 1.x 2014-01-31 13:45:14 -08:00
Kevin Sawicki 94987c6769 Upgrade to season 1.x 2014-01-31 13:43:44 -08:00
Kevin Sawicki f423b54d5b Add underscore-plus 1.x 2014-01-31 13:43:31 -08:00
Kevin Sawicki 86dc499a99 Upgrade to first-mate 1.x 2014-01-31 13:42:59 -08:00
Kevin Sawicki ec6184322c Upgrade to grunt-cson@0.6.0 2014-01-31 11:21:47 -08:00
Kevin Sawicki bde4b88f9f Upgrade to grunt-contrib-coffee@0.9.0 2014-01-31 11:18:53 -08:00
Kevin Sawicki e0f41f8cc5 Upgrade to package-generator@0.25.0 2014-01-31 11:11:07 -08:00
Kevin Sawicki c49c48381a Return functions return value from measure 2014-01-31 10:41:31 -08:00
Kevin Sawicki 73d36e464d Upgrade to settings-view@0.62.0 2014-01-31 10:29:01 -08:00
Kevin Sawicki 2e8fd21193 Upgrade to snippets@0.24.0 2014-01-31 10:24:31 -08:00
Kevin Sawicki 39d525590b Upgrade to first-mate 1.1 2014-01-31 08:48:46 -08:00
Kevin Sawicki 4f6adc51b4 Merge pull request #1493 from atom/ks-rename-user-stylesheet
Rename ~/.atom/user.css to ~/.atom/styles.css
2014-01-31 08:38:53 -08:00
Kevin Sawicki 73c714b62d 📝 Update user stylesheet docs to use styles.css 2014-01-30 17:07:19 -08:00
Kevin Sawicki caa16f2718 Update user stylesheet path in spec 2014-01-30 16:58:35 -08:00
Kevin Sawicki 1b17441bfe Update default stylesheet name to styles.less 2014-01-30 16:58:20 -08:00
Kevin Sawicki 9a97bac05d Add cursor selector example 2014-01-30 16:57:27 -08:00
Kevin Sawicki 9252cd2a1b 📝 Doc reloading of ~/.atom/styles.css 2014-01-30 16:55:51 -08:00
Kevin Sawicki 1c790a3c55 Rename ~/.atom/user.css to ~/.atom/styles.css 2014-01-30 16:53:25 -08:00
Kevin Sawicki 11f61c88d8 Upgrade to settings-view@0.61.0 2014-01-30 16:42:57 -08:00
Kevin Sawicki 64d9eb24d2 Upgrade to find-and-replace@0.81.0 2014-01-30 16:39:27 -08:00
Kevin Sawicki 73b3b9870f Use 512x522 icon 2014-01-30 16:17:18 -08:00
Kevin Sawicki 1c8781268e Try out green app icon 2014-01-30 16:15:28 -08:00
Kevin Sawicki 662c130caf Upgrade to settings-view@0.60.0 2014-01-30 15:54:32 -08:00
Kevin Sawicki 40d9d6110c Upgrade to settings-view@0.59.0 2014-01-30 15:01:38 -08:00
Kevin Sawicki a6f42d6989 Upgrade to fuzzaldrin 1.x 2014-01-30 15:01:15 -08:00
Kevin Sawicki e9b4fb828e Merge pull request #1491 from atom/ks-prevent-space-scrolling
Prevent scrolling when a space is pressed in editor
2014-01-30 14:57:25 -08:00
Kevin Sawicki 84c5a25ef3 📝 Shorten comment 2014-01-30 12:44:01 -08:00
Kevin Sawicki 4a54565f59 Prevent scrolling when a space is pressed in editor
Closes atom/settings-view#25
2014-01-30 12:44:01 -08:00
Kevin Sawicki 1b396b5ce7 Upgrade to settings-view@0.58.0 2014-01-30 11:53:43 -08:00
Nathan Sobo c3f995b165 Fix lurking soft-wrap bugs
This commit adds two important things:

1. An editor spec that randomly mutates a buffer and toggles soft wrap
on and off, then compares the screen lines to a simple reference
implementation to ensure everything stays in a correct state.

2. A new and radically simpler implementation of RowMap that eliminates
failures in the randomized test.
2014-01-30 00:52:17 -07:00
Kevin Sawicki fe748dbcc8 Update octicons 2014-01-29 18:00:00 -08:00
Kevin Sawicki 1e759ee646 Add missing package icon 2014-01-29 17:58:35 -08:00
probablycorey 99f25267a0 Make sure the filePath is never null or undefined 2014-01-29 16:52:42 -08:00
Kevin Sawicki 09952d18c0 Only attempt to require bootstrap/js/tooltip once 2014-01-29 15:28:55 -08:00
probablycorey 9176e12f58 Actually fix the method name bug
For real this time
2014-01-29 13:20:54 -08:00
probablycorey 97330d19f3 Fix method name bug 2014-01-29 13:10:07 -08:00
probablycorey e3f0e11aa8 Remove trailing ; 2014-01-29 12:14:30 -08:00
probablycorey 32cd0ee972 Make distance a local method 2014-01-29 12:10:15 -08:00
probablycorey fc5bc1632d Shrink the nearest pane code 2014-01-29 12:08:34 -08:00
Corey Johnson 337390df47 Merge pull request #1489 from atom/cj-update-coffee-script
Update coffee script v1.7.0
2014-01-29 09:09:36 -08:00
Kevin Sawicki d29a0114ef Upgrade to go-to-line@0.16.0 2014-01-28 18:12:54 -08:00
Nathan Sobo b97db1914f Merge pull request #1455 from atom/ns-workspace-specs-cleanup
Cleanup workspace and its specs
2014-01-28 17:38:58 -08:00
Nathan Sobo 29f480661c Merge branch 'master' into ns-workspace-specs-cleanup 2014-01-28 18:25:13 -07:00
probablycorey d7638b4420 Use require('coffee-script').register() 2014-01-28 16:35:05 -08:00
Corey Johnson ce881c87b9 Merge pull request #1486 from atom/cj-first-package-doc
Simplify first package docs
2014-01-28 13:51:16 -08:00
probablycorey d9b00f16f7 Upgrade to coffee-script 1.7.0
http://coffeescript.org/#changelog
2014-01-28 11:39:01 -08:00
probablycorey 2590bad75f Use json to render code block 2014-01-28 11:33:07 -08:00
probablycorey 6ff553e41c Fix reload window text 2014-01-28 11:32:31 -08:00
probablycorey ec3ca7e429 Add an and 2014-01-28 11:27:06 -08:00
probablycorey 386767868e Remove activation events comment
I think we all agree that it would be better if we didn't have to 
deal with activationEvents. But for now I'm leaving this in because it
is required.
2014-01-28 11:24:53 -08:00
probablycorey e2bb4747fa 💄 2014-01-28 11:23:50 -08:00
probablycorey 885a4e2b2a Document the update-package-dependencies:update command. 2014-01-28 11:22:17 -08:00
probablycorey e31fab7fe4 Link to npm 2014-01-28 11:21:58 -08:00
probablycorey 0a2b173270 Inline links 2014-01-28 11:11:11 -08:00
Kevin Sawicki c1a9c3b5fb Update octicons 2014-01-28 10:06:54 -08:00
Kevin Sawicki 1550511e54 Write octicon codes to variables folder 2014-01-28 10:06:40 -08:00
Kevin Sawicki 44999b0b37 Upgrade to snippets@0.22.0 2014-01-27 18:58:26 -08:00
Kevin Sawicki 0f2931d0a2 Add open-your-snippets command 2014-01-27 18:58:07 -08:00
probablycorey 064a384318 Insert 'Hello, World!' text instead of uppercasing selection. 2014-01-27 17:40:19 -08:00
probablycorey 5708140f10 Use string interpolation 2014-01-27 17:30:14 -08:00
probablycorey aceeb10a0d Upgrade to update-package-dependencies@0.2.0 2014-01-27 17:27:42 -08:00
probablycorey 0940668263 Add update-package-dependencies package 2014-01-27 17:27:42 -08:00
Kevin Sawicki bcac3cc000 Merge pull request #1487 from atom/ks-dot-atom-snippets-file
~/.atom/snippets.cson support
2014-01-27 17:19:22 -08:00
Kevin Sawicki 5b39fc2e11 Upgrade to language-coffee-script@0.6.0 2014-01-27 13:06:27 -08:00
Kevin Sawicki cb0e0751d8 Upgrade to snippets@0.21.0 2014-01-27 12:58:46 -08:00
Kevin Sawicki a67d6362c2 Assert snippet.cson is copied over 2014-01-27 12:50:57 -08:00
Kevin Sawicki 5eb8875ad2 Add Open Your Snippets menu item 2014-01-27 11:17:20 -08:00
Kevin Sawicki e6e7106ac5 Add sample snippets.cson to dot-atom template 2014-01-27 11:16:24 -08:00
Kevin Sawicki 257d0d3a25 Remove template snippets folder 2014-01-27 11:02:52 -08:00
Nathan Sobo 632ba0217a 💄 2014-01-27 11:49:09 -07:00
Nathan Sobo bf1a2a532e A little wordsmithing. Feel free to push back on whatever. 2014-01-27 11:00:32 -07:00
probablycorey 72bb83ccd0 Link to ascii art 2014-01-27 08:55:35 -08:00
probablycorey def2001eb6 Use json instead of coffeescript in code block 2014-01-27 08:54:47 -08:00
probablycorey 5bda9b8a8e Remove trailing dot 2014-01-27 08:53:47 -08:00
probablycorey 0b0ad42610 💄 2014-01-27 08:46:27 -08:00
Jason Rudolph 8772e45a39 Fix typo in method names 2014-01-27 06:41:49 -05:00
Cheng Zhao 7c4b453e64 Do not show unresponsive dialog when running specs. 2014-01-27 18:56:54 +08:00
Cheng Zhao 740e0731fe Merge pull request #1485 from atom/atom-shell-v0.8.7
Update atom-shell to v0.8.7
2014-01-27 02:53:41 -08:00
Cheng Zhao b6cf097abd Update atom-shell to v0.8.7. 2014-01-27 18:47:58 +08:00
Cheng Zhao aa8d03b092 Merge pull request #1473 from atom/cz-windows-start
Fix grunt install on Windows
2014-01-26 20:05:15 -08:00
Jason Rudolph 8c75f425e7 Add keymaps for moving directionally between panes
- Add keymaps for the new commands. Since the new commands are all about
  moving in a specific direction between panes, use the up, down, left,
  and right keys in the keymaps.
- Change the keymaps for the existing commands (since the new commands
  for moving left and right are now using the old keymaps for moving
  to the previous and next pane respectively). Use "p" instead of "left"
  in the keymap for focusing the *p*revious pane. Use "n" instead of
  "right" in the keymap for focusing the *n*ext pane.
2014-01-26 17:42:28 -05:00
Jason Rudolph f322143272 Place pane navigation specs in proximity to each other 2014-01-26 17:29:45 -05:00
Jason Rudolph dd5c65b5f9 Add commands to move directionally between panes 2014-01-26 17:25:59 -05:00
Nathan Sobo aec9e75ecb Send more info on errors converting buffer positions to screen positions
We've gotten one rogue error but I have no idea how to reproduce it.
This will tell us if soft wrap is enabled and if any folds are present
so hopefully we can start narrowing these down.
2014-01-26 15:00:58 -07:00
Nathan Sobo b05e20245f Upgrade find and replace to 0.80.0 to fix invalid regex exceptions
And also to remove live project search
2014-01-26 14:26:14 -07:00
Nathan Sobo 17d30cc526 Revise in-depth keymap overview 2014-01-25 17:49:40 -07:00
Nathan Sobo f631660b32 Start on overview of atom's global variables 2014-01-25 17:49:39 -07:00
probablycorey 2b34b2b9ba Revert "Remove sparkle keys from plist."
This reverts commit f92f130606.
2014-01-24 18:25:36 -08:00
probablycorey 5be6cfa678 Update first package documentation 2014-01-24 18:07:37 -08:00
Kevin Sawicki b5449dec6c Upgrade to fuzzaldrin@0.7.0 2014-01-24 17:56:01 -08:00
Kevin Sawicki be0e36b663 Rename Gutter to GutterView
Refs #1468
2014-01-24 17:30:29 -08:00
probablycorey f92f130606 Remove sparkle keys from plist. 2014-01-24 15:10:51 -08:00
Cheng Zhao d931299b9f Create shortcut on Desktop. 2014-01-24 21:55:49 +08:00
Cheng Zhao b1778aa7df Use administrator power to install Atom on Windows. 2014-01-24 21:07:32 +08:00
Cheng Zhao c5d7614d80 Use named pipe instead of socket file on Windows. 2014-01-24 19:22:13 +08:00
probablycorey 0d34df2238 Update metrics package to 0.24.0 2014-01-23 15:51:42 -08:00
probablycorey ee24b373c0 Update metrics package 2014-01-23 15:32:44 -08:00
Kevin Sawicki 8e6aa1ee9a Doc available classes from 2014-01-23 15:13:12 -08:00
Kevin Sawicki 9e381db265 Upgrade to to-the-hubs@0.18.0 2014-01-23 15:05:52 -08:00
Corey Johnson 6d4f532a32 Merge pull request #1464 from atom/cj-cli-install
Make CLI installation easier.
2014-01-23 12:40:57 -08:00
Cheng Zhao 998aedf367 Merge pull request #1467 from atom/atom-shell-v0.8.6
Upgrade to atom-shell@v0.8.6
2014-01-23 05:33:21 -08:00
Cheng Zhao 5f0a3061ac Remove the workaround for net.connect delay. 2014-01-23 21:03:17 +08:00
Cheng Zhao c424a39538 Upgrade to atom-shell@v0.8.6. 2014-01-23 21:02:41 +08:00
Cheng Zhao 150815edfd Merge pull request #1443 from atom/fix-windows
Fix Windows build
2014-01-22 23:18:03 -08:00
Kevin Sawicki 00ba7d92d0 Upgrade to language-coffee-script@0.5.0 for regex fix 2014-01-22 17:47:32 -08:00
Kevin Sawicki 3dc51365b3 Prepare 0.49.0 release 2014-01-22 17:25:33 -08:00
Kevin Sawicki d18a45f37c Bump remove timeout to 30 seconds 2014-01-22 16:38:47 -08:00
Kevin Sawicki d8c1587534 📝 Mark getters a public 2014-01-22 16:31:10 -08:00
Kevin Sawicki a4754b2bd5 📝 Mark ThemeManager class public 2014-01-22 16:25:55 -08:00
Kevin Sawicki f3f6ec424f 📝 Mark Pasteboard class as public 2014-01-22 16:11:58 -08:00
probablycorey 020326ffad Only display one dialog on successful installation. 2014-01-22 16:01:52 -08:00
Kevin Sawicki ac2985af36 Call getSelectedText() on Editor 2014-01-22 15:57:15 -08:00
probablycorey ca8609c925 Fix 🐛 2014-01-22 15:56:18 -08:00
probablycorey d2e4c61e0b Make cli installation work with install-cli script 2014-01-22 15:56:05 -08:00
probablycorey 399c4f9f95 Fix spelling error 2014-01-22 15:54:49 -08:00
probablycorey 3da7fe7300 Update error message 2014-01-22 15:42:08 -08:00
probablycorey 40048da314 Add 'Install Shell Commands' menu item. 2014-01-22 15:33:32 -08:00
probablycorey 04c8549c38 Use a single command to install apm and atom 2014-01-22 15:33:16 -08:00
probablycorey 4ef6eae02f Add install cli commands for apm and atom 2014-01-22 15:17:23 -08:00
Nathan Sobo 52dcf6a721 Guard against null line number elements when updating fold indicators
Fixes #1461 but doesn't really address the root cause.
2014-01-22 16:06:46 -07:00
probablycorey 9169e9e227 Verify platform inside command installer 2014-01-22 14:54:01 -08:00
probablycorey 19e0854036 Log warning if commands fail to install 2014-01-22 14:53:38 -08:00
Kevin Sawicki cd41637df0 Upgrade to git-utils@0.34.0 for symlink fix 2014-01-22 14:15:19 -08:00
probablycorey 8973a6d777 Display dialog error when commands can't be installed 2014-01-22 13:51:51 -08:00
probablycorey e6b9c67aad Merge remote-tracking branch 'origin/master' into cj-cli-install 2014-01-22 13:35:25 -08:00
probablycorey eb28c15f69 Simplify installation callbacks 2014-01-22 13:35:07 -08:00
probablycorey a42a4dd352 Escape from a tool panel does not emit core:close 2014-01-22 10:46:18 -08:00
Kevin Sawicki cc53b6fbef 📝 Doc Syntax class 2014-01-22 10:30:25 -08:00
Kevin Sawicki b31089cbb9 📝 Mention atom.project global in project docs 2014-01-22 10:21:37 -08:00
Kevin Sawicki 4d4ff84047 📝 Doc how to require WorkspaceView in package specs 2014-01-22 10:19:54 -08:00
Kevin Sawicki 0875e00f9c Upgrade to atom/biscotto@12188bfbe5 2014-01-22 10:17:04 -08:00
Kevin Sawicki b9d45680c3 📝 Wrap types in curlies 2014-01-22 10:09:08 -08:00
Kevin Sawicki 1fa2099eba Don't mark text-utils methods as public 2014-01-22 10:05:53 -08:00
Cheng Zhao 4d74a69277 Use nslog on Windows. 2014-01-22 23:10:45 +08:00
Cheng Zhao 3aa67bff8b Update to nslog@0.4.0 2014-01-22 23:10:44 +08:00
Cheng Zhao 325482353e Update grunt-download-atom-shell to v0.6.0. 2014-01-22 23:10:44 +08:00
Cheng Zhao cf4e08cdc0 Fix executing grunt under Windows. 2014-01-22 23:10:44 +08:00
Cheng Zhao ced02faf0f Updater to terminal@0.27.0 2014-01-22 23:10:43 +08:00
Cheng Zhao 8afca3ac86 Merge pull request #1459 from atom/source-map
Add source map support in dev mode
2014-01-21 23:00:43 -08:00
Cheng Zhao d13d2d3112 Generate source map in coffee-cache. 2014-01-22 14:36:50 +08:00
Nathan Sobo c3d5f713ca Rename internals directory to advanced 2014-01-21 21:04:33 -07:00
Nathan Sobo 042684212e Use atom.config instead of config 2014-01-21 21:04:33 -07:00
Nathan Sobo 81987efed7 Fix typo 2014-01-21 21:04:33 -07:00
Nathan Sobo f2e123e295 Merge pull request #1457 from shama/typo
docs: occured -> occurred.
2014-01-21 19:58:03 -08:00
Nathan Sobo 8d193d542b Update configuration docs 2014-01-21 20:56:30 -07:00
Nathan Sobo 8ca8ac5efc Make ConfigObserver a proper mixin and export it 2014-01-21 20:56:23 -07:00
Kyle Robinson Young f6c7dd0b2f docs: occured -> occurred. 2014-01-21 19:41:53 -08:00
Nathan Sobo b380551e5e Nuke private beta docs 2014-01-21 20:34:57 -07:00
Nathan Sobo 7dcb340643 Streamline the getting started docs 2014-01-21 20:33:53 -07:00
Kevin Sawicki f0339936ee Remove docs/output/api before building 2014-01-21 18:56:15 -08:00
Kevin Sawicki 1ae10e59ae Upgrade to atom/biscotto@4a0c9cb9d7 2014-01-21 18:43:07 -08:00
Kevin Sawicki e4bcb52573 📝 Add requiring in packages example to exported classes 2014-01-21 18:43:07 -08:00
Kevin Sawicki 292ff0de52 📝 Use singular package 2014-01-21 18:43:07 -08:00
probablycorey 5a70276201 Fix specs 2014-01-21 18:09:53 -08:00
probablycorey 1bd4d51879 Install atom and apm cli commands to /usr/local/bin 2014-01-21 18:00:59 -08:00
Corey Johnson a95a510770 Merge pull request #1456 from atom/cj-os-keybindings
Use file suffix to load specific platform keybindings.
2014-01-21 17:59:55 -08:00
probablycorey 7d1be155fa 💄 2014-01-21 17:55:05 -08:00
Kevin Sawicki 41de6bdb70 Just hackable for now 2014-01-21 17:51:54 -08:00
Kevin Sawicki 1d9bca12e0 📝 Mention that atom.project.getRepo() might be unavailable 2014-01-21 17:45:32 -08:00
Kevin Sawicki e9c296968d Upgrade to atom/biscotto@408b1862da 2014-01-21 17:43:36 -08:00
Kevin Sawicki 352eab47df 📝 Merge example with return doc 2014-01-21 17:21:42 -08:00
Kevin Sawicki 002c4dcb80 Upgrade to atom/biscotto@7ba14a419 2014-01-21 17:17:06 -08:00
Kevin Sawicki 03250f79c6 📝 Add period to first line of loadOrCreate doc 2014-01-21 17:05:55 -08:00
probablycorey 1142da1848 Use body instead of workspace so keymaps work inside spec window 2014-01-21 16:48:56 -08:00
probablycorey e53ed10169 Only allow one platform specific keybinding file. 2014-01-21 16:34:52 -08:00
probablycorey 3fb54b657d Update apm with new keybinding docs 2014-01-21 16:27:25 -08:00
Kevin Sawicki 4b3b0145a7 📝 Mark DisplayBuffer delegates as public 2014-01-21 16:17:47 -08:00
probablycorey ec558f9a9b Update keymap files 2014-01-21 16:13:45 -08:00
Kevin Sawicki 051f1b4777 📝 Mark setEditorWidthInChars as public 2014-01-21 16:12:06 -08:00
probablycorey 2e4e178091 Don't load keymap files with other platforms in the suffix
Example: On osx `keymap.cson` and `keymap-darwin.cson` would load. But
`keymap-win32.cson` would not load.
2014-01-21 16:03:34 -08:00
Kevin Sawicki 1fa04cb161 Use biscotto fork 2014-01-21 15:54:28 -08:00
Nathan Sobo 69df046cb0 Move font size increase/decrease to the Workspace model 2014-01-21 16:44:06 -07:00
Nathan Sobo d491007da8 Remove tests for simple delegators 2014-01-21 16:44:06 -07:00
Nathan Sobo 71c65e65eb Move specs for Workspace::reopenItemSync to model layer 2014-01-21 16:44:06 -07:00
Nathan Sobo 3fad9c616f Move specs for Workspace::open to model layer 2014-01-21 16:44:06 -07:00
Nathan Sobo 45875188a4 Rename Workspace::openSingletonSync changeFocus option to activatePane 2014-01-21 16:44:06 -07:00
Nathan Sobo 933787f1a4 Remove 'split' option from Workspace::openSync 2014-01-21 16:44:06 -07:00
Nathan Sobo 726b546004 Handle the 'split' option directly in Workspace::openSingletonSync 2014-01-21 16:44:06 -07:00
Nathan Sobo 5e83dee493 Move specs for Workspace::openSingletonSync to model layer 2014-01-21 16:44:06 -07:00
Nathan Sobo 11ab6fd2ef 💄 2014-01-21 16:44:06 -07:00
Nathan Sobo 0758bd0231 Move specs for Workspace::openSync to model layer 2014-01-21 16:44:05 -07:00
Nathan Sobo 7f63460a8c Rename Workspace::openSync's changeFocus option to activatePane
The old option is still supported as a deprecated shim.
2014-01-21 16:44:05 -07:00
Kevin Sawicki 627e43dccf Hide tooltips when window is resized
Refs atom/feedback#12
2014-01-21 12:33:23 -08:00
Kevin Sawicki cb8b38b7f7 💄 Use @ instead of this 2014-01-21 11:42:21 -08:00
Kevin Sawicki 04b2eefec3 Upgrade to styleguide@0.21.0 2014-01-21 11:39:50 -08:00
Kevin Sawicki 0694180715 Upgrade to tree-view@0.65.0 2014-01-21 11:20:46 -08:00
Kevin Sawicki f51b116c14 Upgrade to release-notes@0.17.0 2014-01-21 09:46:52 -08:00
Kevin Sawicki f001e05262 Include grammmar-registry from first-mate 2014-01-21 09:36:34 -08:00
Kevin Sawicki 77e97a7552 Link to node docs 2014-01-21 09:26:38 -08:00
Kevin Sawicki 80a1249d59 Merge pull request #1451 from atom/ks-remove-doc-warnings
Cleanup docs
2014-01-20 16:05:10 -08:00
Kevin Sawicki a03ba290f9 Use consistent coffeescript fence name 2014-01-20 16:00:02 -08:00
Kevin Sawicki c9e498f36f 📝 Use correct folder name 2014-01-20 16:00:02 -08:00
Kevin Sawicki e6a98125af Link to creating a package doc 2014-01-20 16:00:02 -08:00
Kevin Sawicki 025d2be606 📝 Triggered instead of trigged 2014-01-20 16:00:02 -08:00
Kevin Sawicki 26e21e98db 📝 Mention atom.project global 2014-01-20 16:00:02 -08:00
Kevin Sawicki e3f32ab30b Wrap Array in curlies 2014-01-20 16:00:02 -08:00
Kevin Sawicki 5d8ac56018 Remove unused temp directory 2014-01-20 16:00:02 -08:00
Kevin Sawicki 1603fab984 Download includes when building docs
This makes it so you no longer have to have the included cloned repos
locally when building.
2014-01-20 16:00:02 -08:00
Kevin Sawicki 07c7f1ea46 Add theorist to generated docs 2014-01-20 16:00:02 -08:00
Kevin Sawicki 31b68c0937 Include space-pen docs 2014-01-20 16:00:02 -08:00
Kevin Sawicki 3a02f4de0c 📝 Remove delegate warnings 2014-01-20 16:00:02 -08:00
Kevin Sawicki 45fe04f630 📝 Add require example 2014-01-20 16:00:02 -08:00
Kevin Sawicki b4a9409ec8 Add custom README.md for generated docs 2014-01-20 16:00:02 -08:00
Kevin Sawicki 7432d39301 Upgrade to text-buffer@0.16.0 2014-01-20 16:00:01 -08:00
Kevin Sawicki c5349f53b2 Wrap code example in backticks 2014-01-20 16:00:01 -08:00
Kevin Sawicki 8b4b4a6ea9 📝 Indent comment correctly 2014-01-20 16:00:01 -08:00
Kevin Sawicki 19177123a7 Upgrade to link@0.15.0 2014-01-20 15:53:05 -08:00
Kevin Sawicki dd032b739f Upgrade to language-gfm@0.12.0 2014-01-20 15:52:41 -08:00
Nathan Sobo f0ebe71c4e Merge pull request #1449 from BinaryMuse/activate_item_to_left_after_close
Closing a tab activates the wrong tab
2014-01-20 14:46:51 -08:00
Brandon Tilley 8bba4d8add Intelligently activate new items when the active item is closed
If the active item was the pane's first item, the second item (which is
the new first item) is activated. Otherwise, the item to the left of the
closed item is activated.
2014-01-20 14:34:02 -08:00
Nathan Sobo 7be0f6dd3b Upgrade apm for base.less fix 2014-01-20 15:10:39 -07:00
Nathan Sobo 571947ae93 Upgrade syntax themes to remove backward-compatible selectors 2014-01-20 15:05:52 -07:00
Nathan Sobo 338168e145 Merge pull request #1441 from atom/ns-fold-indicators
Allow folds to be toggled by clicking icons in the gutter
2014-01-20 13:53:30 -08:00
Nathan Sobo 4190f2f1ca Merge remote-tracking branch 'origin/master' into ns-fold-indicators 2014-01-20 14:40:14 -07:00
Nathan Sobo e74f026750 Upgrade bookmarks to 0.17.0 to use new markup for gutter icons 2014-01-20 14:39:02 -07:00
Nathan Sobo 525b5c9978 Don't make commented lines foldable based on the next line's indentation
Only the first line of a set of commented lines should be foldable, even
if some of the lines in the block are indented.
2014-01-20 14:29:08 -07:00
Nathan Sobo 86106cbf4d Remove redundant specs 2014-01-20 14:27:45 -07:00
Nathan Sobo 519ebb1ca6 Leave folded marker on end of lines in its natural position
Previously, we were nudging it upward. Something must have changed at
some point because it looked too high.
2014-01-20 14:22:26 -07:00
Nathan Sobo da56c1def5 💄 comments 2014-01-20 14:09:25 -07:00
Kevin Sawicki a6f9b6d2de Merge pull request #1439 from atom/ks-open-dot-atom-menu-items
Add commands to open ~/.atom files
2014-01-20 10:45:34 -08:00
Nathan Sobo d965e9f56c Ensure change doesn't precede rendered range when updating foldability 2014-01-20 11:39:30 -07:00
Kevin Sawicki 8f0e0ae4a6 Move open commands to Atom menu 2014-01-20 10:37:14 -08:00
Kevin Sawicki 57a71b3cb3 Forward open commands to browser process 2014-01-20 10:37:14 -08:00
Kevin Sawicki 71c48ec07f Open .atom files from browser process
This allows a new window to be created if there is no currently
focused window.
2014-01-20 10:37:14 -08:00
Kevin Sawicki 4ac3be7ab5 Group open commands with a separator 2014-01-20 10:37:13 -08:00
Kevin Sawicki 5dd83b12c0 Add Open Your Config item to View menu 2014-01-20 10:37:13 -08:00
Kevin Sawicki 905f628b79 Add command to open user config in an editor 2014-01-20 10:37:13 -08:00
Kevin Sawicki ddad42432b Add Open Your Keymap item to View menu 2014-01-20 10:37:13 -08:00
Kevin Sawicki 52e999fc11 Add command to open user keymap in an editor 2014-01-20 10:37:13 -08:00
Kevin Sawicki 3114efbf9c 📝 Update path in comment 2014-01-20 10:37:13 -08:00
Kevin Sawicki 8436e8f62e Reload user keymap when it is moved/removed 2014-01-20 10:37:13 -08:00
Kevin Sawicki ba1303a895 Add menu to opening user stylesheet 2014-01-20 10:37:13 -08:00
Kevin Sawicki 59c4c15afd Add command to open ~/.atom/user.less in an editor 2014-01-20 10:37:13 -08:00
Nathan Sobo 2831b43042 Update foldability indicators on changes that don't insert/remove lines
On changes that insert/remove lines, we redraw the entire gutter, which
ensures the foldability markers are up to date. But other kinds of
changes could change the foldability of lines… if a line becomes
commented or its indentation changes, the foldability of that line and
the lines above and below could be affected. For now, the gutter
understands this fact and updates the foldability for the region
extending from one line before to one line after each change. Someday
I'd like the view logic to not bake in knowledge of the folding rules,
but this works for now.
2014-01-20 11:17:58 -07:00
Kevin Sawicki 3c8cb557ed Upgrade to release-notes@0.16.0 2014-01-20 10:17:42 -08:00
Kevin Sawicki 6b8393dced Upgrade to github-sign-in@0.18.0 2014-01-20 10:16:26 -08:00
Kevin Sawicki 3356b4ac47 Upgrade to github-sign-in@0.17.0 2014-01-20 10:14:41 -08:00
Nathan Sobo 3eb7c9d767 Add LanguageMode::toggleLineCommentForBufferRow for toggling single rows 2014-01-20 11:14:27 -07:00
Nathan Sobo bbb3ebc2b9 Upgrade to tabes 0.18.0 to support dragging tabs to empty panes 2014-01-19 20:05:51 -07:00
Nathan Sobo ed93695d64 Add a foldable indicator for multi-line comments 2014-01-18 12:08:37 -07:00
Nathan Sobo 4db2ad53fd Rename .fold class to .folded on line numbers in gutter
Using an adjective blends in better with '.foldable'
2014-01-18 11:35:22 -07:00
Nathan Sobo 149a6825b4 Show bookmarks instead of fold indicators unless hovering 2014-01-17 17:20:37 -07:00
Kevin Sawicki dd1581aaca Upgrade to find-and-replace@0.79.0 2014-01-17 16:17:33 -08:00
Nathan Sobo 99f025d5d6 Rename .fold-icon to .icon-right in gutter to make it multi-purpose 2014-01-17 16:59:50 -07:00
Kevin Sawicki e0cf20cda9 Don't throw error when saving empty pane
Closes #1440
2014-01-17 15:24:55 -08:00
Kevin Sawicki c305384334 Upgrade to styleguide@0.20.0 2014-01-17 15:16:57 -08:00
Nathan Sobo d879923cdb Fix gutter view rendering specs 2014-01-17 16:03:02 -07:00
Nathan Sobo d16526a1f7 Fix references to renamed method in specs 2014-01-17 15:57:49 -07:00
Nathan Sobo a774c2ff08 🔫 unnecessary return statement 2014-01-17 15:46:49 -07:00
Nathan Sobo 475ff140a7 Make unfolded fold icons darker on hover 2014-01-17 15:22:29 -07:00
Nathan Sobo fa6bce3085 Rename LanguageModel::isBufferRowFoldable to ::isFoldableAtBufferRow
It blends in better with the methods on Editor.
2014-01-17 15:19:07 -07:00
Nathan Sobo b2dff15e51 Toggle folding upon 'mousedown' on a foldable line's fold-icon 2014-01-17 15:17:13 -07:00
Nathan Sobo 1e3dc05b3d Nudge chevron-right left a bit to align better with chevron-down 2014-01-17 14:58:16 -07:00
Nathan Sobo 1a12a17b7a Use actual markup for fold icon so we can determine when it's clicked 2014-01-17 14:55:06 -07:00
Nathan Sobo 8757e1f145 Add downward pointing chevrons next to foldable row numbers in gutter 2014-01-17 14:34:53 -07:00
Nathan Sobo 12ca214d6a 💄 Fix misleading variable name 2014-01-17 14:32:58 -07:00
Nathan Sobo 8e75831318 Rename LanguageMode::doesBufferRowStartFold to ::isBufferRowFoldable 2014-01-17 14:30:40 -07:00
Nathan Sobo 2f049b95a8 Use Delegator mixin to delegate to language mode 2014-01-17 14:07:56 -07:00
Kevin Sawicki 386d4d3eb5 Merge pull request #1437 from atom/ks-watch-user-stylesheet
Reload user stylesheet when changed
2014-01-17 12:48:17 -08:00
Kevin Sawicki 6a14c0df81 Remove unused package require 2014-01-17 12:40:33 -08:00
Kevin Sawicki 083204f737 💄 Sort requires 2014-01-17 12:40:21 -08:00
Kevin Sawicki 4d17f625f8 Null out file when unwatching 2014-01-17 12:28:30 -08:00
Kevin Sawicki 64ebc37204 Reload user stylesheet when changed 2014-01-17 11:33:25 -08:00
Nathan Sobo b4dcec9417 Prepare 0.48.0 release 2014-01-17 11:50:28 -07:00
Kevin Sawicki ede03fd634 Upgrade to exception-reporting@0.12.0 2014-01-17 10:12:05 -08:00
Nathan Sobo 926493f05c Emit 'item-added' before setting the ::activeItem when adding first item
Fixes atom/tabs#11
2014-01-17 11:10:17 -07:00
probablycorey 4f82662263 Fix page up/page down keybindings 2014-01-17 08:28:45 -08:00
Cheng Zhao dfa3d8a1c7 Temporarily workaround for slow net.connect, fixes #1429. 2014-01-17 20:31:03 +08:00
Kevin Sawicki 677ec44b37 Dedupe humanize-plus 2014-01-16 18:54:58 -08:00
Kevin Sawicki 0359e933d1 Upgrade to image-view@0.17.0 2014-01-16 18:43:58 -08:00
Kevin Sawicki ff88c1c41f Merge pull request #1434 from atom/ks-dedupe-modules
Dedupe modules
2014-01-16 18:43:05 -08:00
Kevin Sawicki 0acc632cf5 Upgrade to less-cache@0.11.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki 2c65a30d4a Upgrade to text-buffer@0.15.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki 590b8ec221 Upgrade to space-pen@3.1.1 2014-01-16 18:31:14 -08:00
Kevin Sawicki cff1a012af Upgrade apm for dependency updates 2014-01-16 18:31:14 -08:00
Kevin Sawicki 3ea057a145 Upgrade to text-buffer@0.14.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki b30ea21ab9 Upgrade to snippets@0.20.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki 44d42380b8 Upgrade to tree-view@0.63.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki f906afa8ec Upgrade to archive-view@0.21.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki 815a282146 Upgrade to image-view@0.16.0 2014-01-16 18:31:14 -08:00
Kevin Sawicki 9fe24acbe9 Upgrade to theorist 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki f2f3745022 Upgrade to link@0.14.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki d2ecc8c2b6 Upgrade to link@0.13.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki 9166a563c2 Upgrade to first-mate 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki 7388468b5a Upgrade to oniguruma 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki 21bc658230 Upgrade to terminal@0.26.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki 72f85aeae4 Upgrade to settings-view@0.57.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki 26b3cfc3b2 Upgrade to git-diff@0.23.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki c91eb1fbbe Upgrade to find-and-replace@0.77.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki 75ed3aa03b Upgrade to dev-live-reload@0.23.0 2014-01-16 18:31:13 -08:00
Kevin Sawicki 00d783fb23 Upgrade to emissary 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki b80e7fc137 Upgrade to property-accessors 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki e1d2bbabfb Upgrade to serializable 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki 9de5adf572 Upgrade to delegato 1.x 2014-01-16 18:31:13 -08:00
Kevin Sawicki 2a3eab945d Upgrade to fs-plus@1.0 2014-01-16 18:31:12 -08:00
Kevin Sawicki df8d77cc47 Upgrade to mixto@1.0 2014-01-16 18:31:12 -08:00
Kevin Sawicki 9d11ea8bcd Upgrade to underscore-plus@1.0 2014-01-16 18:31:12 -08:00
Kevin Sawicki f19d2d7369 Call selectLeft on editor 2014-01-16 16:00:20 -08:00
probablycorey 7f790137ed Fix editor method name 2014-01-16 15:55:21 -08:00
probablycorey c56dce0c80 Cache atom version 2014-01-16 14:07:20 -08:00
probablycorey 1f105542a3 Upgrade to keybinding-resolver@0.9.0 2014-01-16 14:05:22 -08:00
probablycorey ec499e2bde Remove version instance variable.
The version was being assigned to 1 causing getVersion to never check
app.getVersion for the actual version.

Fixes #1428
2014-01-16 12:39:20 -08:00
Kevin Sawicki 59202f9a56 Upgrade to command-logger@0.10.0 2014-01-16 11:01:58 -08:00
Nathan Sobo e437673fbc Upgrade ui themes to fix split pane dividers
Fixes #1278
2014-01-16 11:31:29 -07:00
Nathan Sobo ded222551a Merge pull request #1417 from atom/ns-empty-panes
Support empty panes
2014-01-16 10:21:44 -08:00
Nathan Sobo fe2def8321 Merge remote-tracking branch 'origin/master' into ns-empty-panes 2014-01-16 11:16:00 -07:00
Nathan Sobo e19368a291 Upgrade background-tips to 0.5.0 to attach tips to the empty root pane 2014-01-16 11:15:38 -07:00
Nathan Sobo 3980082e3c Upgrade terminal and tree-view for specs compatibility 2014-01-16 11:00:35 -07:00
Kevin Sawicki 9f29e423db 💄 Sort dependencies 2014-01-16 09:56:19 -08:00
probablycorey 23d9f6e41f Use actual indentation length when setting indentation for row.
Closes #1293
2014-01-16 09:27:26 -08:00
Nathan Sobo 649f0ac246 Merge branch 'master' into ns-empty-panes
Conflicts:
	package.json
2014-01-16 10:21:59 -07:00
Cheng Zhao b9dcb569b1 Merge pull request #1347 from atom/chrome31
Update atom-shell to v0.8.x
2014-01-16 08:49:55 -08:00
Cheng Zhao 6538ee47aa Update keytar to v0.15.1. 2014-01-17 00:39:01 +08:00
Cheng Zhao 043a50012e Update git-utils to v0.33.1. 2014-01-17 00:28:27 +08:00
Cheng Zhao 9ed0ded91b Update settings-view to v0.56.1. 2014-01-17 00:20:16 +08:00
Cheng Zhao ad5c0f93ed Update release-notes to v0.15.1. 2014-01-17 00:18:22 +08:00
Cheng Zhao 4265de2232 Update markdown-preview to v0.25.1. 2014-01-17 00:12:48 +08:00
Cheng Zhao b7ae12f86f Merge branch 'master' into chrome31
Conflicts:
	package.json
2014-01-16 23:42:22 +08:00
Cheng Zhao 20e7fea3ab Update scandal to v0.13.0. 2014-01-16 20:21:11 +08:00
Nathan Sobo 910469d373 Upgrade theorist to 0.14.0 to ensure new ids are > than deserialized ids 2014-01-15 20:20:00 -07:00
Nathan Sobo ff9c9adeff Upgrade find-and-replace to 0.76.0 to fix result marker updates 2014-01-15 19:26:22 -07:00
Kevin Sawicki ceac8ba0e1 Prepare 0.47.0 release 2014-01-15 18:17:14 -08:00
Kevin Sawicki 24f386df2d Wait 30 seconds for move events 2014-01-15 17:54:06 -08:00
Kevin Sawicki 1006706cf6 Consistently order less cache import paths 2014-01-15 17:42:17 -08:00
Cheng Zhao 0b0a3ae4c2 Update pathwatcher to v0.14.2. 2014-01-16 09:37:23 +08:00
Cheng Zhao 276de1e5ae Update pathwatcher to v0.14.1. 2014-01-16 09:30:59 +08:00
Cheng Zhao fcffcc83f9 Merge branch 'master' into chrome31
Conflicts:
	package.json
	vendor/apm
2014-01-16 09:11:34 +08:00
Kevin Sawicki 4122b5a43f Dedupe nan module 2014-01-15 16:58:43 -08:00
Kevin Sawicki 2430edbcb8 Upgrade to command-logger@0.9.0 2014-01-15 16:38:52 -08:00
Kevin Sawicki e2269d5d51 Ignore xmldom test folder 2014-01-15 16:36:07 -08:00
Kevin Sawicki 2d04c50184 Dedupe oniguruma 2014-01-15 16:24:30 -08:00
Kevin Sawicki 2dc8c94165 Upgrade to git-utils@0.33.0 2014-01-15 16:17:50 -08:00
Kevin Sawicki c1022d15ba Use bootstrap fork from atom org.
This uses the fork branch which is v3.0.3 with @benogle's tooltip
commit cherry picked on top of it.
2014-01-15 16:09:50 -08:00
probablycorey b620be7780 Fix cut, copy and paste key bindings
Closes #1425
2014-01-15 16:00:09 -08:00
Kevin Sawicki 70c89dfefa Merge pull request #1420 from atom/ks-shrink-the-build
Shrink the build size
2014-01-15 15:55:18 -08:00
Kevin Sawicki ace61c330a Upgrade to bracket-matcher@0.19.0 2014-01-15 15:53:24 -08:00
Kevin Sawicki 0626df5cdd Use ignored paths in package filter 2014-01-15 15:48:19 -08:00
Kevin Sawicki b1679a03d6 Ignore spellchecker/vendor folder 2014-01-15 15:48:19 -08:00
Kevin Sawicki af95abe185 Upgrade to language-ruby-on-rails@0.4.0 2014-01-15 15:48:19 -08:00
Kevin Sawicki a23561f9ce Upgrade to language-ruby@0.7.0 2014-01-15 15:48:19 -08:00
Kevin Sawicki a93048d3ae Upgrade to language-php@0.3.0 2014-01-15 15:48:19 -08:00
Kevin Sawicki 1814b187e9 Don't copy bootstrap docs during build 2014-01-15 15:48:19 -08:00
Kevin Sawicki d7d7bd2db5 Ignore less dist and test folders in build 2014-01-15 15:48:19 -08:00
Kevin Sawicki f86ca9b59a 💄 Add array of packages to dedupe 2014-01-15 15:48:19 -08:00
Kevin Sawicki 58cccd76a4 Dedupe roaster when bootstrapping 2014-01-15 15:48:19 -08:00
Kevin Sawicki fd1477fc92 Only depend on jasmine-tagged
jasmine-tagged now depends on jasmine-focused and everything needed
should be reachable from just a dependency on jasmine-tagged.
2014-01-15 15:48:19 -08:00
Kevin Sawicki eca9ba107c Upgrade to scandal@0.12.0 2014-01-15 15:48:18 -08:00
Kevin Sawicki 94126942eb Upgrade to oniguruma@0.26.0 2014-01-15 15:48:18 -08:00
Nathan Sobo e6697ce3a7 Upgrade light and dark ui theme to when empty panes are focused 2014-01-15 16:42:32 -07:00
Nathan Sobo ccd86d91de Make PaneContainer::activePaneItem behavior distinct until changed
If we switch from one empty active pane to another empty active pane,
there's no reason to emit a value from the activePaneItem behavior.
2014-01-15 16:08:36 -07:00
Nathan Sobo 2f8ec967f6 Update to markdown-preview 0.25.0 for specs compatibility 2014-01-15 16:08:36 -07:00
Nathan Sobo 709ae6a1bc Update to archive-view 0.20.0 for specs compatibility 2014-01-15 16:08:36 -07:00
Nathan Sobo 5e14d44d6a Destroy all pane models when workspace view is removed 2014-01-15 16:07:47 -07:00
Nathan Sobo 41dd4a386a Restore PaneView::getContainer. Turns out it's actually public. 2014-01-15 16:07:47 -07:00
Nathan Sobo 9af4b14716 Never allow PaneContainer::root to be null 2014-01-15 16:07:47 -07:00
Nathan Sobo aed9f18457 Accivate the first added pane item 2014-01-15 16:07:47 -07:00
Nathan Sobo edf2fbe0e5 Make 'core:close' destroy the pane itself if it is empty 2014-01-15 16:07:47 -07:00
Nathan Sobo ca71bf224b Destroy the pane completely on 'pane:close' (not just its items) 2014-01-15 16:07:47 -07:00
Nathan Sobo 012363a785 Null guard item in ::destroyActiveItem 2014-01-15 16:07:47 -07:00
Nathan Sobo 1a48903f96 Only destroy empty panes on deserialization if config option is enabled 2014-01-15 16:07:47 -07:00
Nathan Sobo 44331d0ba6 Fix issues splitting panes with DOM events
* ::copyActiveItem guards against not having an active item
* The Pane constructor removes undefined items from params.items
2014-01-15 16:07:47 -07:00
Nathan Sobo fe7c5b4bc1 Only destroy an empty panes if 'core.destroyEmptyPanes' is true 2014-01-15 16:07:47 -07:00
Nathan Sobo 1825af1309 Merge pull request #1415 from atom/ns-pane-model-specs
Move relevant pane specs from PaneView to Pane model
2014-01-15 15:06:43 -08:00
Nathan Sobo b5947f5a56 Merge branch 'master' into ns-pane-model-specs 2014-01-15 15:54:49 -07:00
Corey Johnson 864d6ce8f2 Merge pull request #1408 from atom/cj-remove-editor-view-delegate-methods
Remove editor view delegate methods
2014-01-15 14:01:10 -08:00
probablycorey ac07cf3d9a Merge remote-tracking branch 'origin/master' into cj-remove-editor-view-delegate-methods
Conflicts:
	package.json
2014-01-15 13:52:42 -08:00
Nathan Sobo 6ba3698547 Merge pull request #1423 from atom/ns-dont-null-out-pane-view-models
Don't null out the model of a pane item view when removing it
2014-01-15 13:28:00 -08:00
Nathan Sobo d57e5f389d Don't null out the model of a pane item view when removing it
Fixes #1422 (I think)
2014-01-15 14:20:30 -07:00
Cheng Zhao 2023aeef97 Use screen module to get screen's available size.
In Chrome31 the window.screen.availHeight and availWidth are sometimes
0, this is a workaround of this bug.
2014-01-15 12:49:22 +08:00
Nathan Sobo 1c6564f7a5 Move non-focus serialization specs from pane-view-spec to pane-spec 2014-01-14 21:39:47 -07:00
Nathan Sobo d9d28b5236 Move ::itemForUri specs from pane-view-spec to pane-spec 2014-01-14 20:39:13 -07:00
Nathan Sobo 8734eab8cb 💄 Give dummy pane items ::getUri and ::getPath methods 2014-01-14 20:38:07 -07:00
Nathan Sobo 1ad5158f19 Streamline active status and focus specs in pane-view-spec
The specs can be simplified now that much of this logic is covered in
the model specs.
2014-01-14 20:27:30 -07:00
Nathan Sobo 453e034a5f Simplify PaneView split specs because it's largely covered at the model 2014-01-14 20:21:24 -07:00
Nathan Sobo 9841a3588f Move specs on PaneView::remove to Pane::destroy in pane-spec 2014-01-14 20:10:01 -07:00
Nathan Sobo dd0ae8a8ea Don't remove PaneViews when their model is destroyed
They will be removed by their parent PaneContainerView or PaneAxisView,
and removing them in the previous way circumvented some of our focus
preservation logic.
2014-01-14 20:09:14 -07:00
Nathan Sobo d8ddd52df8 Move ::activateItemAtIndex specs from pane-view-spec to pane-spec 2014-01-14 19:49:15 -07:00
Nathan Sobo 83696bb9c7 Move ::activateNext/PreviousItem specs from pane-view-spec to pane-spec 2014-01-14 19:46:12 -07:00
Nathan Sobo 243c4efe20 Move ::saveActiveItemAs specs from pane-view-spec to pane-spec 2014-01-14 19:43:09 -07:00
Nathan Sobo 22c65f2407 Move ::saveActiveItem specs from pane-view-spec to pane-spec 2014-01-14 19:41:00 -07:00
Nathan Sobo e553fefc25 Add spec for Pane::destroyInactiveItems to pane-spec 2014-01-14 19:32:39 -07:00
Nathan Sobo cf6fc22c87 Add spec for Pane::destroyItems to pane-spec 2014-01-14 19:31:13 -07:00
Nathan Sobo a6d8f588c3 💄 2014-01-14 19:29:01 -07:00
Nathan Sobo 2ef74de0f8 Move ::moveItemToPane specs from pane-view-spec to pane-spec 2014-01-14 19:26:47 -07:00
Nathan Sobo 2ee6469b17 Move ::moveItem specs from pane-view-spec to pane-spec 2014-01-14 19:15:11 -07:00
Nathan Sobo 9977884a2c Move ::destroyItem specs from pane-view-spec to pane-spec 2014-01-14 19:12:27 -07:00
Nathan Sobo c331723c55 Move ::activateItem specs from pane-view-spec to pane-spec 2014-01-14 19:12:26 -07:00
Nathan Sobo dd3ca1fc2f Merge pull request #1416 from atom/ns-workspace-model
Drop a basic model out from WorkspaceView
2014-01-14 18:11:34 -08:00
Nathan Sobo f7f2da6ad2 Merge remote-tracking branch 'origin/master' into ns-workspace-model 2014-01-14 19:04:53 -07:00
Nathan Sobo eba74d1420 Upgrade text-buffer to 0.13.0 for Range::intersectsRowRange 2014-01-14 18:55:19 -07:00
Kevin Sawicki 91c9f6ffa5 Upgrade to bracket-matcher@0.18.0 2014-01-14 17:49:19 -08:00
Kevin Sawicki db319c9f9c Upgrade apm new commands and template fixes 2014-01-14 17:20:04 -08:00
Kevin Sawicki 134affcd8f Remove of tomorrow! 2014-01-14 17:18:10 -08:00
Kevin Sawicki 9bfa7704e6 Prepare 0.46.0 release 2014-01-14 17:05:19 -08:00
Kevin Sawicki 8acd84c7e2 Pull stdout out of results argument 2014-01-14 16:39:14 -08:00
Kevin Sawicki a53d223b6f Use package.json version in master builds only 2014-01-14 16:25:22 -08:00
Kevin Sawicki 673b78561a Rename set-development-version task to set-version 2014-01-14 16:16:31 -08:00
Kevin Sawicki 57c56fc46e Use package.json version in master janky builds 2014-01-14 16:16:28 -08:00
Kevin Sawicki d81fb8cabf Sign right before publishing 2014-01-14 16:03:58 -08:00
Kevin Sawicki 1dec9d0ad2 Run codesign task after build task 2014-01-14 15:31:49 -08:00
Nathan Sobo bda75c1a8f Merge remote-tracking branch 'origin/master' into ns-workspace-model 2014-01-14 15:35:00 -07:00
Nathan Sobo c0c2d797b1 Add some API documentation 2014-01-14 14:44:27 -07:00
Kevin Sawicki a342a18440 Merge pull request #1413 from atom/ks-no-more-constructicon
Get off constructicon
2014-01-14 13:39:59 -08:00
Kevin Sawicki 047425c564 Rename createRelease to createBuildRelease 2014-01-14 13:29:35 -08:00
Kevin Sawicki 8374911dab Delete existing asset before uploading new one 2014-01-14 13:29:35 -08:00
Kevin Sawicki 6ca3c90abe Use upload urls instead of assets url 2014-01-14 13:29:35 -08:00
Kevin Sawicki 96cb266c27 Release properties are _ separated 2014-01-14 13:29:35 -08:00
Kevin Sawicki 21723b155e Remove unneeded assets prefix 2014-01-14 13:29:34 -08:00
Kevin Sawicki 14c3feee17 Publish master builds to the draft release 2014-01-14 13:29:34 -08:00
Kevin Sawicki 0255f1e223 Remove unused require 2014-01-14 13:29:34 -08:00
Kevin Sawicki 76a5912126 Update expected callback name 2014-01-14 13:29:34 -08:00
Kevin Sawicki 848dc12f28 Add unlock-keychain arg 2014-01-14 13:29:34 -08:00
Kevin Sawicki 7a41fabf60 Unlock keychain before signing 2014-01-14 13:29:34 -08:00
Kevin Sawicki f4b82fe3a4 Load env vars from /var/lib/jenkins/config/xcodekeychain 2014-01-14 13:29:34 -08:00
Kevin Sawicki aec32b65a0 Remove constructicon files 2014-01-14 13:29:34 -08:00
Kevin Sawicki 01e0970406 Sign CI builds 2014-01-14 13:29:34 -08:00
Kevin Sawicki b08978a431 Add back linting of build files 2014-01-14 13:28:30 -08:00
Nathan Sobo e4b934d3fa Remove 'workspace' from serialized state in spec helper
…Instead of 'workspaceView'.
2014-01-14 13:06:42 -07:00
Nathan Sobo c350285044 Move Workspace and PaneContainer serialization to the model layer
The views are now stateless. You just construct them with a model to
deserialize.
2014-01-14 11:38:27 -07:00
Nathan Sobo 4a7b43f609 Write focusNext/PreviousPane in terms of activateNext/PreviousPane
"Activate" is the model level equivalent of focus.
2014-01-14 11:15:14 -07:00
Nathan Sobo 0d66c68fe8 Add delegator to model for PaneContainerView::saveAll 2014-01-14 11:12:08 -07:00
Kevin Sawicki b72028c68d Invoke deploy task using script/grunt 2014-01-14 10:03:05 -08:00
Kevin Sawicki 332b918c01 Ignore build/atom.build 2014-01-14 10:03:05 -08:00
Kevin Sawicki bc94dc63e6 Ignore atom.xcodeproj 2014-01-14 10:03:05 -08:00
Nathan Sobo a1d540d288 Revert WorkspaceView::getActivePane. It needs to return a PaneView. 2014-01-14 11:02:36 -07:00
Nathan Sobo af4034ba39 Move WorkspaceView::destroyActivePaneItem to the model 2014-01-14 10:58:35 -07:00
Nathan Sobo 89cbd6b834 Move PaneContainerView::saveAll to the model 2014-01-14 10:58:35 -07:00
Nathan Sobo fe01ded75b Move WorkspaceView::saveActivePaneItem* to Workspace model 2014-01-14 10:58:35 -07:00
Nathan Sobo aab4f3b761 Remove methods that I'm pretty sure are unused 2014-01-14 10:58:35 -07:00
Nathan Sobo adf5cfc78c Move WorkspaceView::reopenItemSync to the Workspace model 2014-01-14 10:58:34 -07:00
Nathan Sobo 66bb9dab93 Move WorkspaceView::openSingletonSync to the Workspace model 2014-01-14 10:58:34 -07:00
Nathan Sobo c8e4535e8b Move WorkspaceView::openSync to the Workspace model 2014-01-14 10:58:34 -07:00
Nathan Sobo 7199cda549 Derive PaneView::activeView from the model's activeItem
We're getting into some strange order-sensitive cases where we respond
to a change of the active item before the pane has a chance to reassign
the active view. Therefore it makes more sense to always just derive the
active view from the active item.
2014-01-14 10:58:34 -07:00
Nathan Sobo 1eb9c3d0d5 Move WorkspaceView::open to Workspace model 2014-01-14 10:58:34 -07:00
Nathan Sobo 27c03ae3f3 Move management of destroyedItemUris to Workspace model 2014-01-14 10:58:34 -07:00
Nathan Sobo a8ddc530a2 Emit a pane-item-destroyed event from the workspace model
…Instead of calling itemDestroyed on the workspace view via a DOM query
2014-01-14 10:58:34 -07:00
Nathan Sobo 8e78583521 Emit 'item-destroyed' in ::removeItem when destroying flag is true 2014-01-14 10:58:34 -07:00
Nathan Sobo 7317d52896 Move paneForUri to PaneContainer model 2014-01-14 10:58:34 -07:00
Nathan Sobo 54dd5ea28e Destroy the model when PaneContainerView is removed 2014-01-14 10:58:34 -07:00
Nathan Sobo 22fe04fb27 Drop out a basic workspace model 2014-01-14 10:58:33 -07:00
Nathan Sobo adb174ef5f Remove pane-model, which should have been removed during rename
Missed this somehow.
2014-01-14 10:57:50 -07:00
Kevin Sawicki d3a016bf69 Delete build/node_modules before bootstrapping 2014-01-14 09:43:03 -08:00
Cheng Zhao 46c5f09721 Update pathwatcher to v0.14.0. 2014-01-14 22:43:33 +08:00
Cheng Zhao 6401213510 Update apm. 2014-01-14 20:39:16 +08:00
Cheng Zhao 5f92c6df6c Update atom-shell to v0.8.5. 2014-01-14 20:00:47 +08:00
probablycorey 75e3659809 Upgraded to tabs@0.17.0 2014-01-13 17:39:11 -08:00
probablycorey b458b86bbd Upgraded to autocomplete@0.20.0 2014-01-13 17:38:00 -08:00
probablycorey 645f950368 Upgraded to tree-view:0.61.0 2014-01-13 17:36:22 -08:00
probablycorey 8dd183fc78 Upgraded to find-and-replace@0.75.0 2014-01-13 17:16:26 -08:00
Nathan Sobo 6ef6fb77f9 Rename pane-*-model specs 2014-01-13 17:22:02 -07:00
Nathan Sobo 159adcb00c Bump serialization version on WorkspaceView
Since we've replaced views with models, the 'PaneContainer' deserializer
now loads a model instead of a view, which isn't what we want at this
layer.
2014-01-13 16:57:17 -07:00
Kevin Sawicki 06ccb48efe Remove trailing } 2014-01-13 15:40:33 -08:00
probablycorey 95f2d02d18 Merge branch 'master' into cj-remove-editor-view-delegate-methods
Conflicts:
	package.json
	spec/workspace-view-spec.coffee
	src/editor.coffee
	src/gutter.coffee
2014-01-13 15:06:18 -08:00
Kevin Sawicki 63df8dfcdb Merge remote-tracking branch 'origin/master' into chrome31
Conflicts:
	package.json
2014-01-13 15:01:52 -08:00
Kevin Sawicki 12bf0f5381 Delete apm's node_modules folders on clean 2014-01-13 14:51:24 -08:00
probablycorey 637acf63ce Upgraded to settings-view@0.56.0 2014-01-13 14:41:26 -08:00
probablycorey 9ff23e6bed Upgraded to snippets@0.19.0 2014-01-13 14:09:51 -08:00
Kevin Sawicki d96f15e8b5 Upgrade to package-generator@0.24.0 2014-01-13 14:03:49 -08:00
Kevin Sawicki 5bf654f6cc Upgrade to grammar-selector@0.17.0 2014-01-13 13:58:19 -08:00
Kevin Sawicki 16dba3e68e Upgrade to fuzzy-finder@0.31.0 2014-01-13 13:49:26 -08:00
Nathan Sobo 08716fd888 Merge pull request #1410 from atom/ns-rename-pane-views
Add -View suffix to pane views and remove -Model suffix from pane models
2014-01-13 13:39:13 -08:00
Kevin Sawicki 43e30ad466 Upgrade to go-to-line@0.15.0 2014-01-13 13:33:41 -08:00
Kevin Sawicki 16c86047eb Add buffer delegates for getLineCount/getTextInRange 2014-01-13 13:30:32 -08:00
Kevin Sawicki 0d36eec288 Upgrade to git-diff@0.22.0 2014-01-13 13:25:51 -08:00
Kevin Sawicki 2e697f65e8 Upgrade to gists@0.15.0 2014-01-13 13:15:59 -08:00
Kevin Sawicki edab3e5a27 Upgrade to bracket-matcher@0.17.0 2014-01-13 13:15:58 -08:00
Nathan Sobo 97999f1080 Rename PaneContainerModel to PaneContainer 2014-01-13 13:56:31 -07:00
Nathan Sobo a268b3e963 Rename PaneAxisModel to PaneAxis 2014-01-13 13:54:04 -07:00
Nathan Sobo 8931bf8f3a Rename PaneModel to Pane 2014-01-13 13:51:15 -07:00
Nathan Sobo 918c31905f Rename PaneContainer to PaneContainerView 2014-01-13 13:46:28 -07:00
Nathan Sobo c7ff4f9897 Rename PaneAxis to PaneAxisView 2014-01-13 13:46:27 -07:00
Nathan Sobo 4f604ced3c Rename Pane to PaneView 2014-01-13 13:46:22 -07:00
probablycorey 8c3147f975 Update spell-check, status-bar, symbols-view, tree-view and wrap-guide 2014-01-13 12:25:22 -08:00
Nathan Sobo a29c18f8c0 And again 2014-01-13 13:14:41 -07:00
Nathan Sobo 43f517abff Fix botched merge of package.json. Sorry. 2014-01-13 13:13:57 -07:00
Nathan Sobo 8b901f81e0 Merge pull request #1379 from atom/cj-ns-pane-models
Separate models from PaneContainer, PaneAxis, and Pane
2014-01-13 12:08:34 -08:00
Kevin Sawicki 4182ee4f12 Upgrade to bookmarks@0.16.0 2014-01-13 12:08:19 -08:00
Kevin Sawicki 601b314236 Upgrade to autoflow@0.12.0 2014-01-13 12:04:07 -08:00
Kevin Sawicki 7d596355b9 Upgrade to autocomplete@0.20.0 2014-01-13 12:01:00 -08:00
Nathan Sobo fe0cdbf349 Merge remote-tracking branch 'origin/master' into cj-ns-pane-models
Conflicts:
	package.json
2014-01-13 12:55:02 -07:00
Kevin Sawicki c2381ba61c Upgrade to timecop@0.13.0 2014-01-13 11:40:01 -08:00
Cheng Zhao ccc5f8fa66 Merge branch 'master' into chrome31
Conflicts:
	build/package.json
	package.json
2014-01-13 23:28:48 +08:00
Cheng Zhao e29ffbea8c Update to atom-shell v0.8.4. 2014-01-13 23:26:05 +08:00
Cheng Zhao efbd508163 Fix git specs when running under symbolic path. 2014-01-13 17:31:03 +08:00
Nathan Sobo 4179d9d268 Add deprecated Pane::removeItem 2014-01-12 17:55:29 -07:00
Nathan Sobo 3fc3d48def Destroy empty panes after deserializing
Fixes #1399
2014-01-12 17:53:25 -07:00
Nathan Sobo b438b311f3 Rename showItem methods to activateItem
These methods set the *active* item, so the verb activate provides a
clearer correspondence. We could change the noun to "shown" item, but
that's awkward and having both active panes and active items is a nice
correspondence in terminology.
2014-01-12 17:40:57 -07:00
Nathan Sobo 561e31c0c5 Remove ::removeItemAtIndex and make ::removeItem private
Call ::destroyItem or just destroy the item directly (it should emit the
'destroyed' event)
2014-01-12 17:25:51 -07:00
Nathan Sobo 2a8a5268c6 Clean up PaneModel api docs 2014-01-11 22:09:10 -07:00
Nathan Sobo 28b085be1c Rename ::makeActive to ::activate and focus panes when they're activated 2014-01-11 20:48:01 -07:00
Nathan Sobo f5bc71e559 Move $.fn.hasFocus to space-pen 2014-01-11 19:49:25 -07:00
Nathan Sobo 2188dd201d Update wrap-guide to 0.11.0 for specs fix with flexbox panes 2014-01-11 19:28:33 -07:00
Nathan Sobo b21eb6f934 Drop .flexbox-repaint-hack div and use pseudo selector instead
We don't actually need structural markup to ensure that all pane views
are absolutely positioned. We can just use the `> *` selector inside of
.pane-items.

/cc @probablycorey is there anything I'm missing here?
2014-01-11 19:13:00 -07:00
Kevin Sawicki 9b0d8ec242 💄 Sort dependencies 2014-01-11 17:51:59 -08:00
Kevin Sawicki 3c32a8e8fb Throw error when sending to terminated process
Mirrors behavior of start method
2014-01-11 17:23:53 -08:00
Nathan Sobo 3ab7836ab2 Upgrade to emissary 0.31.0 for implicit 'value' subscriptions on signals
Previously, when you always had to specify the event name of 'value'
when calling `::subscribe` with a signal. Now, if you don't specify an
event name, 'value' is assumed.
2014-01-11 11:22:31 -07:00
Nathan Sobo ef8b7531b0 Upgrade to theorist 0.13.0 to rename Signal::flatMapLatest -> ::switch
Shorter, simpler, less intimidating.
2014-01-11 11:19:19 -07:00
Nathan Sobo b04f9f9488 Remove unused methods from PaneAxis 2014-01-11 11:11:04 -07:00
Nathan Sobo 452d86ac0c Upgrade ui themes for rename of .row to .pane-row 2014-01-11 11:04:37 -07:00
Nathan Sobo 6fe1bae40d Upgrade to image-view 0.15.0 for fix to parent pane query 2014-01-11 10:46:57 -07:00
Nathan Sobo e2170ea907 Remove unused requires and mixins 2014-01-11 10:45:33 -07:00
Nathan Sobo 545bf4bd98 Upgrade to theorist 0.12.0 to remove dependence on harmony proxies
They're turning out to cause instability in the current version of v8
or atom-shell. Perhaps we can revisit this after the upgrade to chromium
31. Once we have Object.observe, we could at least throw an exception
when someone assigns a sequence index directly via ::[] or assigns to
::length.
2014-01-11 10:38:47 -07:00
Nathan Sobo 1fdc78a157 Upgrade find-and-replace to 0.74.0 for fix to parent pane dom query 2014-01-11 10:24:18 -07:00
Nathan Sobo 738bfd7253 Fix layout of tabs with flexbox repaint hack
The .item-views div needs to be the first child of pane and contain
the absolutely positioned repaint hack div inside it, otherwise the tabs
don't get honored as flexbox items.
2014-01-10 19:02:19 -07:00
Nathan Sobo 8b0b997db6 Kill EditorView::isAlive and just tunnel to the model where it was used 2014-01-10 18:28:01 -07:00
Nathan Sobo 263ab3b4a6 Kill unused require 2014-01-10 18:27:11 -07:00
Nathan Sobo 3afbcbe25f Allow focusout events to bubble out of panes 2014-01-10 18:07:10 -07:00
Nathan Sobo 578ca8b197 Don't update highlighted gutter lines unless the editor is alive 2014-01-10 17:56:04 -07:00
probablycorey 5e674fe29e Add commonly used Editor methods to Editor View
Mini-editors use these methods very often, but really we shouldn't need to do
this.
2014-01-10 16:38:36 -08:00
Nathan Sobo 72fe586101 Remove the concept of focus from the model 2014-01-10 17:27:28 -07:00
Kevin Sawicki 82d5577bdc Upgrade to find-and-replace@0.73.0 2014-01-10 15:59:51 -08:00
Ben Ogle c703cf2050 Upgrade to find-and-replace@0.72.0 2014-01-10 15:38:04 -08:00
probablycorey c19c8c5341 Fix core specs 2014-01-10 15:32:59 -08:00
probablycorey 32b5592475 Fix EditorView spec 2014-01-10 15:32:36 -08:00
Ben Ogle 993f1ac2d6 Update status-bar@0.31.0 2014-01-10 15:31:35 -08:00
probablycorey 21b40acdf1 Remove delegate methods from EditorView 2014-01-10 15:31:33 -08:00
Nathan Sobo ddf7c04e66 Use -> arrows on methods moved to the model 2014-01-10 15:51:27 -07:00
Nathan Sobo c127237cc6 Upgrade tabs to 0.17.0 so they unsubscribe when the pane is removed 2014-01-10 15:49:46 -07:00
Nathan Sobo 9694d255f0 Simplify item removal
- Move emitting of item removal event into ::removeItemAtIndex. Pass a
destroying param instead of setting state.

- Destroy the pane if ::items is empty at the in the item removal
method, rather than with a condition. This gives the item removal event
a chance to fire first.
2014-01-10 15:48:08 -07:00
Kevin Sawicki 81b4803d56 Upgrade to tree-view@0.59.0 2014-01-10 14:44:22 -08:00
Kevin Sawicki 893e9873a1 Upgrade to exception-reporting@0.11.0 2014-01-10 14:34:51 -08:00
Nathan Sobo 23e805fe9e Remove assertion for impossible situation
We were testing the behavior of returning the active pane by removing
the active class from its view. But "active" is a model-level concept
now, so this assertion makes no sense.
2014-01-10 15:28:55 -07:00
Kevin Sawicki 43257de7cd Upgrade to metrics@0.21.0 2014-01-10 14:08:05 -08:00
Nathan Sobo c7fded0d7f Only emit 'pane:removed' events if the pane is actually destroyed
The pane may only be detached temporarily during splitting/unsplitting
2014-01-10 15:04:51 -07:00
Nathan Sobo 284d823ad5 Tighten up search for parent pane
The introduction of the .flexbox-redraw-hack required the query to be
loosened, but I went too far. We don't want to return a pane for mini
editors that happen to be nested on another view that's inside a pane.
2014-01-10 14:36:07 -07:00
Kevin Sawicki 164a121de9 Upgrade to snippets@0.18.0 2014-01-10 13:02:19 -08:00
Kevin Sawicki 50ab49aedb Upgrade to first-mate@0.17.0 2014-01-10 12:57:35 -08:00
Kevin Sawicki a127d3c4eb Upgrade to fuzzaldrin@0.6.0 2014-01-10 12:57:12 -08:00
Kevin Sawicki cac5c6e3a5 Merge pull request #1403 from atom/ks-faster-keymaps
Speed up keymap loading
2014-01-10 12:44:27 -08:00
Nathan Sobo 1ee783fdb9 Base PaneContainer::getActivePane on the model's active pane 2014-01-10 13:44:02 -07:00
Nathan Sobo 47870a1214 Remove views (rather than detaching) if Pane::destroyItem is called 2014-01-10 13:35:18 -07:00
Nathan Sobo 7801d8562f Upgrade archive-view to 0.19.0 for .flexbox-repaint-hack fix 2014-01-10 13:08:47 -07:00
Nathan Sobo 104271861c Upgrade markdown-preview to 0.24.0 for .flexbox-repaint-hack fix 2014-01-10 13:07:39 -07:00
Kevin Sawicki de25b8ea37 Cache specificities 2014-01-10 12:01:56 -08:00
Kevin Sawicki ba9f353c4a Use precompile pattern when available 2014-01-10 11:43:45 -08:00
Nathan Sobo 7665cd1a6a When a pane view is removed in anyway, make sure its model is destroyed 2014-01-10 12:35:12 -07:00
Kevin Sawicki c39d8d9aa7 Precompile pegjs parsers 2014-01-10 11:32:40 -08:00
Nathan Sobo 4b0d22917b Trust CSS to perform layout now that we've switched to flexbox
The behavior of flexbox is actually slightly different in that it
divides space evenly among the immediate children of a row or column
rather than accounting for all splits. But it's actually not that big
a deal.
2014-01-10 12:12:44 -07:00
Nathan Sobo 720b2ad47d Upgrade to serializable 0.3.0 to handle undefined states 2014-01-10 12:11:19 -07:00
Nathan Sobo d34327a667 Remove the EditorView when Editor is destroyed 2014-01-10 11:56:27 -07:00
Nathan Sobo d2146f9b2e Emit 'pane:removed' event in container when last pane is removed
Doing it in the pane view is awkward because the view may have already
been detached.
2014-01-10 11:45:08 -07:00
Nathan Sobo 732d36af28 Null guard container in Pane::makeActive
Panes can exist outside of containers, albeit only briefly. If
::makeActive is called when the pane is in this state, consider it a
no-op.
2014-01-10 11:37:42 -07:00
Nathan Sobo edfc86f153 Make PaneContainer::getActivePaneItem retrieve it from the model 2014-01-10 11:34:26 -07:00
Nathan Sobo 339e30d973 Account for pane axis class name changes in pane-container-spec 2014-01-10 11:25:02 -07:00
Nathan Sobo 5e1e092650 When the last pane is destroyed, null out the root and active pane 2014-01-10 11:22:19 -07:00
Nathan Sobo c69febd44d Preserve the active pane across serialization 2014-01-10 11:22:02 -07:00
Nathan Sobo a9d7564f3e Account for the .flexbox-repaint-hack in WorkspaceView::getEditorViews 2014-01-10 11:21:10 -07:00
Nathan Sobo a0b733b53d Skip the flexbox-repaint-hack when seeking editor pane with ::parents 2014-01-10 11:20:12 -07:00
Kevin Sawicki 8cb565ad2a Add parseKeystroke function 2014-01-10 10:10:08 -08:00
Kevin Sawicki 32158711ce Upgrade to pegjs@0.8.0 2014-01-10 10:09:47 -08:00
Kevin Sawicki e099f00739 💄 Use unless instead of if not 2014-01-10 09:57:11 -08:00
Kevin Sawicki e707ab5441 Remove unused require 2014-01-10 09:52:30 -08:00
Kevin Sawicki 3b7f1467e1 Upgrade to background-tips@0.4.0 2014-01-10 09:42:09 -08:00
Nathan Sobo 1c7eef89c3 Merge branch 'master' into ns-pane-splits-with-models 2014-01-10 10:40:52 -07:00
Kevin Sawicki 4fc1f5b248 Upgrade to find-and-replace@0.71.0 2014-01-10 09:34:23 -08:00
Nathan Sobo 6eacfa7077 Call Range::toString, not ::inspect in DisplayBufferMarker::inspect 2014-01-09 19:04:52 -07:00
Nathan Sobo 9aefafb831 Use PaneContainerModel::$activePaneItem for 'active-item-changed' events
Yay behaviors
2014-01-09 18:58:01 -07:00
Nathan Sobo 5a3353ec28 Add PaneContainer view to deserializers 2014-01-09 18:35:16 -07:00
Nathan Sobo e87b8dc463 Remove focusNext/PreviousPane methods from PaneContainer view 2014-01-09 18:35:01 -07:00
Nathan Sobo 60daa483e6 Include orientation when serializing PaneAxisModel 2014-01-09 18:34:09 -07:00
Nathan Sobo cd699d8b9b Transfer focus to the root view when the last focused pane is destroyed 2014-01-09 18:17:08 -07:00
Ben Ogle d33a962848 Upgrade to find-and-replace@0.70.0 2014-01-09 17:12:33 -08:00
Ben Ogle 0d2067e1a4 Merge pull request #1400 from atom/bo-fuck-rejection
Dont use reject in project::scan cancel
2014-01-09 17:09:58 -08:00
Nathan Sobo 8647137952 Remove active status management from Pane view; rely on model instead 2014-01-09 18:00:54 -07:00
Ben Ogle fbcfad28c3 Reject is broken. Ugh. Just resolve it 2014-01-09 17:00:34 -08:00
Nathan Sobo 5e1b2e2696 Manage the active pane at the model level 2014-01-09 18:00:19 -07:00
Kevin Sawicki a0346e95cf Upgrade to markdow-preview@0.23.0 2014-01-09 15:37:08 -08:00
Kevin Sawicki 20ee7b432c Wrap item in array since it is a trigger call 2014-01-09 15:18:44 -08:00
Nathan Sobo 4026e6ca5c Properly serialize pane focus state 2014-01-09 16:09:22 -07:00
Corey Johnson 378901e0d2 Merge pull request #1375 from atom/ns-fix-crash-exit
Properly exit when render process crashes if exitWhenDone option is true
2014-01-09 15:08:56 -08:00
Nathan Sobo 964abd3141 Suppress blur when replacing a pane axis with its last child
If the pane axis contains a child pane, its temporary removal from the
DOM causes a blur event that we don't want to screw up our focused
state.
2014-01-09 16:08:52 -07:00
Nathan Sobo 5ca7ad3bce Add spec for destroyed pane items getting removed at the model layer 2014-01-09 16:07:57 -07:00
Nathan Sobo 4dcba4bb27 Destroy remaining items when a pane is destroyed 2014-01-09 16:06:02 -07:00
Nathan Sobo 073ea84d69 Handle consequences of item removal in the model 2014-01-09 16:05:00 -07:00
Nathan Sobo 2965d2e974 Bind Pane view's focus to focus state on the model
It's a bit tricky… we don't want to blur the model when focusing the
pane's active view causes a focusout event on the pane, so we use
::suppressBlur on the model to prevent it from blurring as the focus
is transferred.
2014-01-09 16:01:52 -07:00
Nathan Sobo a67f0d4d57 Make PaneModel::items an observable sequence 2014-01-09 15:53:52 -07:00
Nathan Sobo 5309d5f24d Add ability to suppress blur on all focusable objects in a focus context
When a view receives a 'focusout' event, we relay that to the model by
calling ::blur. This is great for when users initiate the change in
focus, but 'focusout' events can *also* be caused by elements being
temporarily detached from the DOM.

The ::suppressBlur method gives the ability to ignore blur calls during
a certain operation. This is helpful, for example, when we want to
detach a model and reattach it somewhere else without changing its focus
state.
2014-01-09 15:46:32 -07:00
Nathan Sobo af3ca57094 Make focus state distinct until changed on Focusable objects 2014-01-09 15:43:05 -07:00
Corey Johnson db375cd190 Merge pull request #1398 from atom/cj-show-free-disk-space
Show low disk space errors when running CI
2014-01-09 14:40:01 -08:00
Kevin Sawicki d96b63d791 Move enable/disable to parent Package class
This was previously unimplemented in TextMatePackage causing exceptions
when trying to enable/disable a package of that type.
2014-01-09 14:13:49 -08:00
probablycorey e435b48750 Display warning if disk space is kind of full 2014-01-09 13:58:24 -08:00
probablycorey a1f8a21c7c Output warning/error if diskspace on CI server is getting low. 2014-01-09 13:56:49 -08:00
Kevin Sawicki 69f9f10c6b Upgrade to find-and-replace@0.69.0 2014-01-09 13:56:15 -08:00
probablycorey d3c6bd2f98 Use close instead of exit
stdio might still be open when exit is called (http://nodejs.org/api/child_process.html#child_process_event_exit). With close you are
guaranteed that there will be no more output.
2014-01-09 13:47:51 -08:00
Nathan Sobo 466868e639 Fix access to undefined root property
The ::filterDefined transform unfortunately doesn't prevent an undefined
initial value when applied to behaviors.
2014-01-09 12:19:01 -07:00
Nathan Sobo 2317c6835e At the model layer: Focus next pane when a focused pane is destroyed
This incorporates the Focusable mixin into PaneModel and ensures that
all panes in the same pane container share a single focus context.
2014-01-09 12:19:01 -07:00
Nathan Sobo 4e99d003ee Add Focusable mixin and FocusContext
Focusable objects have ::focus and ::blur methods and a ::focused
property. Focusable objects can be assigned a ::focusContext, and the
::focused property will only be true for at most one object with the
same context.
2014-01-09 12:19:01 -07:00
Nathan Sobo 1a5e10c1d2 Focus the new pane when splitting 2014-01-09 12:19:01 -07:00
Nathan Sobo 8efcb1abfa Remove pane splitting/unsplitting logic from view
There's still some failing specs around focus management, but it's
getting closer.
2014-01-09 12:19:01 -07:00
Nathan Sobo f031a9706d Support unsplitting in the model layer 2014-01-09 12:19:01 -07:00
Nathan Sobo eb7f3ff5af Support splitting at the model layer
Splitting in the view will need to be removed and mapped to splits in
the model.
2014-01-09 12:19:00 -07:00
Nathan Sobo bb595ab08a Start adding PaneAxisModel 2014-01-09 12:19:00 -07:00
Nathan Sobo 101326a130 Upgrade theorist to 0.9.0 for sequences 2014-01-09 12:18:56 -07:00
Nathan Sobo ad60594c13 Add mixto module 2014-01-09 12:12:22 -07:00
probablycorey ca6da5f9c1 Update expcetion-reporting 2014-01-09 10:01:25 -08:00
Kevin Sawicki c397b3cc60 Upgrade to first-mate@0.14.0 2014-01-09 08:53:29 -08:00
Cheng Zhao 1074c6c34e Merge branch 'master' into chrome31
Conflicts:
	package.json
2014-01-09 22:24:41 +08:00
Kevin Sawicki 6cb0f1ff78 Upgrade to fuzzy-finder@0.30.0 2014-01-08 18:12:36 -08:00
Kevin Sawicki 371e31c786 🐎 Test for prefix without calling path.join
Directory::relativize is called many times by the fuzzy finder
and using path.join possibly multiple times per call was consuming
much of the time take to show the fuzzy finder view.
2014-01-08 17:55:08 -08:00
Kevin Sawicki dce70b35b5 Upgrade to go-to-line@0.14.0 2014-01-08 17:37:09 -08:00
probablycorey 99a67ca1ab Remove focused spec 2014-01-08 16:37:57 -08:00
Corey Johnson 9dc1758d76 Merge pull request #1378 from atom/cj-flexbox-panes
This replaces custom pane resizing with flexbox
2014-01-08 16:36:41 -08:00
probablycorey 196942d126 Rename .row and .column in pane specs 2014-01-08 16:31:56 -08:00
Kevin Sawicki d95aa0aac1 Expand buffer range in Selection::selectLine 2014-01-08 16:27:09 -08:00
Kevin Sawicki 27f0d11039 Map cmd-l to editor:select-line 2014-01-08 15:48:52 -08:00
Kevin Sawicki a69e6136ea Upgrade to go-to-line@0.13.0 2014-01-08 15:47:29 -08:00
Kevin Sawicki 0fd8b6be8d Pluralize selection in event name 2014-01-08 15:45:09 -08:00
Kevin Sawicki 8e51a7f6d6 Bind cmd-shift-l to split selectin into lines 2014-01-08 15:44:34 -08:00
Kevin Sawicki bdb4cd5247 Upgrade to grammar-selector@0.16.0 2014-01-08 15:41:32 -08:00
Kevin Sawicki 3afe750a66 Merge pull request #1374 from atom/ks-split-selection-into-lines
Split selection into lines
2014-01-08 15:36:43 -08:00
Kevin Sawicki c8f3e056e9 Pluralize selections in method name 2014-01-08 15:17:06 -08:00
Kevin Sawicki 32fdf0b681 📝 Drop line about single line selections 2014-01-08 15:17:06 -08:00
Kevin Sawicki 82c73c9911 📝 Tweak comment for clarity 2014-01-08 15:17:06 -08:00
Kevin Sawicki fe0184d067 Add Split into Lines menu item 2014-01-08 15:17:06 -08:00
Kevin Sawicki 0ef6757e65 Add Editor::splitSelectionIntoLines 2014-01-08 15:17:06 -08:00
Kevin Sawicki deb4365d65 Upgrade to fuzzy-finder@0.29.0 2014-01-08 15:16:37 -08:00
Kevin Sawicki 750f4ee410 Upgrade to to-the-hubs@0.17.0 2014-01-08 15:14:34 -08:00
Kevin Sawicki 1382bd3b3b Upgrade to settings-view@0.55.0 2014-01-08 14:37:41 -08:00
probablycorey d908c8b026 Use absolute divs to limit repaints on keypresses 2014-01-08 14:31:46 -08:00
probablycorey 6f766acac8 Rename .row and .column to .pane-row and .pane-column
Bootstrap's .row and .column css was influencing our pane rows and
columns.
2014-01-08 14:30:33 -08:00
probablycorey 7eba9d3a23 Use flexbox to arrange panes 2014-01-08 14:29:32 -08:00
Kevin Sawicki cde5861cb8 Upgrade to fuzzaldrin@0.5.0 2014-01-08 14:17:40 -08:00
Kevin Sawicki 765c15829d Upgrade to fuzzaldrin@0.4.0 2014-01-08 14:01:15 -08:00
probablycorey 0471619269 Merge remote-tracking branch 'origin/master' into cj-ns-pane-models 2014-01-08 11:44:31 -08:00
probablycorey d8ba8f13d8 Update dev-live-reload 2014-01-08 11:28:03 -08:00
Corey Johnson c089429c14 Merge pull request #1367 from atom/cj-error-event
Add error event to atom global
2014-01-08 11:17:04 -08:00
probablycorey b22f850e03 Update status bar 2014-01-08 11:16:08 -08:00
Kevin Sawicki cf47ee5063 Only call _.isEqual when needed
Invert the logic to return if all are equal so we can fall through
on the first false call so only the minimum isEqual calls are made.

Also perform the boolean check first instead of last since it
cheaper than a Point comparison.

This showed up in the profile when profiling moving the cursor.
2014-01-08 10:59:39 -08:00
Kevin Sawicki 9d6a01d11c Use slice to clone array 2014-01-08 10:59:39 -08:00
Nathan Sobo bcf9dfd236 Merge pull request #1371 from atom/ns-text-buffer-cleanup
Clean up TextBuffer
2014-01-08 10:38:09 -08:00
Nathan Sobo c281eb9596 Move serialization of focus into PaneModel 2014-01-08 11:23:06 -07:00
Nathan Sobo 2acde6a727 Call super in constructor to assign PaneModel properties
The theorist model superclass constructor will automatically assign
all declared properties, or substitute the specified default value if
no param key is present for that property.
2014-01-08 11:21:00 -07:00
Nathan Sobo ee9b78afb6 Move copyActiveItem to PaneModel 2014-01-08 11:14:02 -07:00
Nathan Sobo a379d47230 Move methods related to item destruction and saving to PaneModel 2014-01-08 11:12:27 -07:00
Nathan Sobo 57c23e1b5f Merge remote-tracking branch 'origin/master' into ns-text-buffer-cleanup 2014-01-08 10:53:19 -07:00
Nathan Sobo f8d959ae16 Upgrade to text-buffer 0.12.0
* Drop deprecation of insert/append/delete. The method names will remain
  short.

* Replace ::getLastPosition with ::getEndPosition
2014-01-08 10:53:07 -07:00
Cheng Zhao 831454bd30 Update atom-shell to v0.8.3. 2014-01-08 12:11:35 +08:00
Kevin Sawicki 13abb28486 Upgrade to bracket-matcher@0.16.0 2014-01-07 19:54:39 -08:00
Kevin Sawicki 717704c8ed Upgrade to tree-view@0.58.0 2014-01-07 19:54:12 -08:00
Nathan Sobo eab26fb3a6 Properly exit when render process crashes if exitWhenDone option is true
Previously, we were referring to an undefined `atom` global to exit when
the render process crashed in specs. Now we only exit when exitWhenDone
is true, which will only exit in headless specs. Also, we now call .exit
on an object that's actually defined.
2014-01-07 19:22:42 -07:00
Nathan Sobo 17947d0f99 Enable harmony proxies
I want to use these in the pane-models branch, so it will be helpful
if they are enabled in atom stable since it's an atom-shell level
setting.
2014-01-07 19:22:22 -07:00
Nathan Sobo 626e22e4ae Avoid exceptions when a live editor is compared with a destroyed one 2014-01-07 18:45:18 -07:00
Corey Johnson & Nathan Sobo 5837b7cfda Move methods related to item movement to PaneModel 2014-01-07 18:39:39 -07:00
Cheng Zhao 02a9d11bb5 Update first-mate to v0.13.0. 2014-01-08 09:07:04 +08:00
Cheng Zhao 0d89be26be Merge branch 'master' into chrome31
Conflicts:
	package.json
2014-01-08 08:58:20 +08:00
Corey Johnson & Nathan Sobo 1a487db29f Move item removal events to PaneModel 2014-01-07 17:55:56 -07:00
Cheng Zhao 1144e52fea Update atom-shell to v0.8.2. 2014-01-08 08:55:26 +08:00
Corey Johnson & Nathan Sobo 2938a8e650 Move item-oriented methods to PaneModel 2014-01-07 17:47:42 -07:00
Corey Johnson & Nathan Sobo cd97de76fc 💄 2014-01-07 17:28:53 -07:00
Corey Johnson & Nathan Sobo 25c099f3a2 Serialize the items and activeItem via PaneModel
This necessitates setting the ::activeView based on the model's
::activeItem instead of doing it in ::showItem.
2014-01-07 17:23:29 -07:00
Kevin Sawicki eb39b8505e Upgrade to timecop@0.12.0 2014-01-07 15:49:19 -08:00
Kevin Sawicki 7a90cc46ad Merge pull request #1373 from atom/ks-space-pen-3
Upgrade to space pen 3
2014-01-07 15:09:52 -08:00
Kevin Sawicki c6c1cb233d Upgrade to space-pen@3.0.3 2014-01-07 14:56:07 -08:00
Kevin Sawicki f9e37c9b47 Upgrade to space-pen@3.0.2 2014-01-07 14:56:07 -08:00
Kevin Sawicki dfb6835449 Upgrade to space-pen@3.0.1 2014-01-07 14:56:07 -08:00
Kevin Sawicki bf13b426c5 Upgrade to space-pen@3.0.0 2014-01-07 14:56:07 -08:00
Corey Johnson & Nathan Sobo 14175d80ef Move Pane::activeItem to PaneModel 2014-01-07 15:46:17 -07:00
Corey Johnson & Nathan Sobo c99e211144 Store Pane items in PaneModel 2014-01-07 15:42:23 -07:00
Nathan Sobo 1d04cbf584 Enable harmony proxies
I want to use these in the pane-models branch, so it will be helpful
if they are enabled in atom stable since it's an atom-shell level
setting.
2014-01-07 15:19:51 -07:00
Kevin Sawicki 92650e079f Upgrade to feedback@0.22.0 for 🐎 2014-01-07 13:49:54 -08:00
Kevin Sawicki f29ce127db Default windowState to empty hash JSON string 2014-01-07 11:19:38 -08:00
Nathan Sobo b29f1965f0 Move more methods into text-buffer npm 2014-01-07 10:19:43 -07:00
Nathan Sobo 48a2a1934b Start moving text related methods to text-buffer npm 2014-01-07 09:18:59 -07:00
Cheng Zhao bb65a1a47e Update first-mate to v0.12.0. 2014-01-07 18:48:14 +08:00
Cheng Zhao f6a8b72fd4 Update node-oniguruma to v0.26.0. 2014-01-07 18:48:03 +08:00
Cheng Zhao 196e908961 Default window state should be empty object.
Setting default window state to empty string would cause the "Error
parsing window state" error in Atom.loadDocumentState.
2014-01-07 18:48:03 +08:00
Cheng Zhao 72744494b8 Also use node-vm-compatibility-layer in renderer. 2014-01-07 18:48:03 +08:00
Cheng Zhao c287be1725 Fix bootstrap in renderer. 2014-01-07 18:48:03 +08:00
Cheng Zhao 28ec1f3e2d delegate.browserMainParts.preMainMessageLoopRun is discarded. 2014-01-07 18:48:03 +08:00
Cheng Zhao d0bf769896 Use node-vm-compatibility-layer module. 2014-01-07 18:48:03 +08:00
Kevin Sawicki 8fe60b5838 Merge pull request #1366 from atom/ks-async-directory
Make Directory::getEntries asynchronous
2014-01-06 18:06:29 -08:00
Kevin Sawicki 484a7c95ee Upgrade to tree-view@0.57.0 2014-01-06 17:25:26 -08:00
Kevin Sawicki 44a3365787 Rename getRealPath to getRealPathSync 2014-01-06 17:25:26 -08:00
Kevin Sawicki f3e88b56f3 🐎 Reduce stat calls when building entries
Previously every entry was stated twice to determine if it was a
file/directory and a symbolic link.

Now the second stat call is only made if lstat returns stat details
for a symbolic link.
2014-01-06 17:25:26 -08:00
Kevin Sawicki d618472f95 Specify error as first argument 2014-01-06 17:25:26 -08:00
Kevin Sawicki a45ffb3aaa Add async Directory::getEntries 2014-01-06 17:25:26 -08:00
Kevin Sawicki 1d2b2eec4c Add Sync suffix to Directory::getEntries 2014-01-06 17:25:26 -08:00
Nathan Sobo 5c1f750f94 Upgrade text-buffer to 0.9.0 for completed docs and fixed memory leak 2014-01-06 18:07:53 -07:00
probablycorey 85a6db253b Spat the event arguments 2014-01-06 16:48:47 -08:00
Matt Colyer 72caf279a6 Merge pull request #1335 from atom/fix-windows-specs
Return windows specs to green
2014-01-06 16:34:19 -08:00
Nathan Sobo 05ff058ca5 Upgrade to text-buffer 0.8.0 to restore all removed Point/Range methods 2014-01-06 17:31:05 -07:00
probablycorey 022ead9228 Rename error event to uncaught-error 2014-01-06 16:22:04 -08:00
Nathan Sobo 14fd9aac7e Upgrade to text-buffer 0.7.0 to reintroduce Marker.fromPointWithDelta 2014-01-06 17:16:03 -07:00
probablycorey 5975884a0e Add error event to atom global 2014-01-06 16:11:39 -08:00
Matt Colyer e8ce559034 Merge branch 'master' into fix-windows-specs
Conflicts:
	package.json
2014-01-06 16:02:45 -08:00
Matt Colyer 9add438ea4 Revert "Windows build status reflects package status now"
This reverts commit cec731b697.
2014-01-06 15:55:21 -08:00
Nathan Sobo d65a6c3fc4 Merge pull request #1348 from atom/ns-remove-telepath-from-core
The experiment is over. To be continued in a hopefully less painful way. Sorry guys.
2014-01-06 15:45:11 -08:00
Nathan Sobo a493359b58 Upgrade text-buffer to 0.6.0 2014-01-06 16:31:53 -07:00
Nathan Sobo d6de973500 Remove shims that call super
They were previously there for documentation purposes, but we've decided
to document them in the text-buffer npm directly and link it into the
documentation. This drops some of the docs on delegated methods, because
our docs generator doesn't understand `delegatesMethods` declarations,
but TextBuffer was marked private anyway so we can get back to it later.
2014-01-06 15:16:34 -07:00
Nathan Sobo 25cc37bc86 Replace {StringMarker} references with {Marker} in API docs 2014-01-06 15:13:12 -07:00
Matt Colyer 0e6bc275b7 Merge branch 'master' into fix-windows-specs
Conflicts:
	package.json
2014-01-06 11:19:37 -08:00
Matt Colyer cec731b697 Windows build status reflects package status now 2014-01-06 11:17:34 -08:00
Cheng Zhao 6942b82a70 Update terminal to v0.24.0. 2014-01-06 15:04:43 +08:00
Cheng Zhao b6d5a1ddd8 Merge branch 'master' into chrome31
Conflicts:
	package.json
2014-01-06 14:54:24 +08:00
Nathan Sobo 8d4ae33134 Don't export Model superclass in top-level atom module
Previously, the semantics of telepath's Model class were coupled to the
wrapped documents, so it made sense to export the Model. But now that
Model is much simpler, it makes more sense to allow individual packages
to rely on their own version of Model by requiring theorist if they want
to so we can make changes to the version of model used by core without
breaking packages.
2014-01-05 10:47:22 -07:00
Nathan Sobo cbec03c158 Rename reactionary to theorist 2014-01-05 10:25:59 -07:00
Nathan Sobo 1fe0a1ad7b Upgrade to text-buffer 0.5.0 2014-01-04 15:42:53 -07:00
Nathan Sobo 8b9ede8414 Upgrade text-buffer to 0.4.0 to allow 'invalidation' marker option 2014-01-04 14:16:07 -07:00
Nathan Sobo 194094043e Upgrade tree-view to 0.54.0 to remove telepath dependency 2014-01-04 14:09:10 -07:00
Nathan Sobo 9068f28e83 Fix variable name 2014-01-04 14:08:00 -07:00
Nathan Sobo ebb5d38e1a Upgrade packages to remove telepath dependencies 2014-01-04 10:49:30 -07:00
Nathan Sobo aa1ed1dfcc Upgrade to reactionary 0.3.0 to avoid double destruction 2014-01-04 10:23:08 -07:00
Nathan Sobo 0292c66f93 Don't drop editor subscriptions in its destroyed hook
Unsubscribing should be the responsibility of the subscribers and doing
this was removing 'destroyed' subscriptions before the 'destroyed' event
was emitted now that 'destroyed' is emitted by the default
Model::destroy method.
2014-01-04 10:08:04 -07:00
Nathan Sobo 4ce68fe5d8 Merge remote-tracking branch 'origin/master' into ns-remove-telepath-from-core 2014-01-04 09:39:57 -07:00
Nathan Sobo 289e7d56c3 Upgrade to reactionary 0.2.0 for built-in property accessors mixin 2014-01-04 09:39:30 -07:00
Nathan Sobo cb7471945c Remove redundant 'destroyed' event 2014-01-03 19:35:07 -07:00
Nathan Sobo 8da9e8ddc1 Rename nostalgia to serializable
This name was surprisingly available and better matches this module's
utilitarian nature.
2014-01-03 18:32:44 -07:00
Nathan Sobo a68694e6e2 Upgrade to nostalgia 0.3.0 for ability to override mixin properties 2014-01-03 17:54:59 -07:00
probablycorey 98b5a400e6 Update packages that use new tool panel appending api 2014-01-03 16:52:38 -08:00
Nathan Sobo 0bbd9630f5 Fix pane spec 2014-01-03 17:50:46 -07:00
Nathan Sobo c6770aa83e Merge remote-tracking branch 'origin/master' into ns-remove-telepath-from-core
Conflicts:
	package.json
	src/pane.coffee
2014-01-03 17:46:45 -07:00
Nathan Sobo e26d97d5ac Remove telepath as a core dependency 2014-01-03 17:42:11 -07:00
Corey Johnson b2177cbc09 Merge pull request #1360 from atom/cj-add-prepend-append-methods-to-workspace
Add prepend/append methods to WorkspaceView
2014-01-03 16:34:16 -08:00
Ben Ogle c8663541f0 Upgrade to fnr@0.65.0 2014-01-03 15:55:40 -08:00
probablycorey 9f32a24e7e Add all Tool Panel append and prepend methods 2014-01-03 15:43:00 -08:00
Nathan Sobo 914a87290b Remove unnecessary telepath requires 2014-01-03 16:36:26 -07:00
Nathan Sobo 112b8bfa29 Generate docs from text-buffer instead of telepath 2014-01-03 16:36:08 -07:00
probablycorey 5d99acd8c5 Update docs 2014-01-03 15:26:56 -08:00
probablycorey 066d8dc944 Add prependToBottom and appendToBottom 2014-01-03 15:26:27 -08:00
Matt Colyer 9af6e99682 Merge branch 'master' into fix-windows-specs 2014-01-03 15:24:52 -08:00
Nathan Sobo bc65137911 Remove telepath from Project, WorkspaceView, and Pane* 2014-01-03 16:23:23 -07:00
Kevin Sawicki 02dfe074e6 Spawn grunt path directly 2014-01-03 15:17:55 -08:00
Matt Colyer 2b4c2f1758 Merge branch 'master' into fix-windows-specs 2014-01-03 14:34:02 -08:00
Kevin Sawicki a7494cf649 Upgrade to first-mate@0.11.0 for clojure grammar fix
Closes #1349
2014-01-03 14:27:24 -08:00
Nathan Sobo 3d494ed9fa Merge pull request #1337 from atom/ns-fix-mini-editor-leak
Fix mini editor leak
2014-01-03 11:58:02 -08:00
Kevin Sawicki 47a14bb2e6 Add callback param to publishRelease 2014-01-03 11:08:01 -08:00
Kevin Sawicki 7a71f26345 Add missing comma 2014-01-03 10:57:40 -08:00
Kevin Sawicki 870c4d4214 Link to commit list for release 2014-01-03 10:53:46 -08:00
Kevin Sawicki ac5d10fae2 Store grunt object to variable
This allows it to be used from logError
2014-01-03 10:49:03 -08:00
Kevin Sawicki 2963fe177f Pass through error from deleting asset 2014-01-03 10:48:32 -08:00
Kevin Sawicki 0947947a9d Merge pull request #1145 from atom/ks-grunt-node-modules
Store build modules in build/node_modules
2014-01-03 10:20:55 -08:00
Kevin Sawicki 0112e8887f biscotto is in build folder not tasks folder 2014-01-03 10:12:55 -08:00
Kevin Sawicki 3a7ecccec7 📝 Clarify justification for moving 2014-01-03 10:01:40 -08:00
Kevin Sawicki f9a9712f54 Upgrade to grunt-download-atom-shell@0.5.0 2014-01-03 09:48:28 -08:00
Kevin Sawicki 5e5ba63c59 Move fstream from build to dev dependency 2014-01-03 09:38:57 -08:00
Matt Colyer 2c58d1a2b7 Upgrade scandal@0.11.0 2014-01-03 09:31:44 -08:00
Kevin Sawicki 5e2e5a4b58 Use same grunt path in script/build and script/cibuild 2014-01-03 09:29:45 -08:00
Kevin Sawicki 344d237a42 Remove ~/.atom outside of tasks 2014-01-03 09:26:04 -08:00
Kevin Sawicki 04eef20c84 Use fs-plus instead of rimraf directly 2014-01-03 09:15:31 -08:00
Nathan Sobo 77dba8d19b Merge branch 'master' into ns-fix-mini-editor-leak 2014-01-03 10:03:25 -07:00
Kevin Sawicki 704294a2d5 Add build/README.md 2014-01-03 08:37:24 -08:00
Kevin Sawicki 847a8165e0 Add fields to prevent warnings 2014-01-03 08:37:16 -08:00
Kevin Sawicki 18f2f5f821 Add script/grunt 2014-01-03 08:32:24 -08:00
Kevin Sawicki 7f2e0e2317 Add back window .cmd suffix 2014-01-03 08:32:24 -08:00
Kevin Sawicki 963513e840 Wrap status code in an Error 2014-01-03 08:32:24 -08:00
Kevin Sawicki b1470fc1b5 Indent done callback 2014-01-03 08:32:24 -08:00
Kevin Sawicki 43482ea78e Add grunt param 2014-01-03 08:32:24 -08:00
Kevin Sawicki 167e6dc1bf Convert upload-release script to a grunt task 2014-01-03 08:32:24 -08:00
Kevin Sawicki 088a627468 💄 Sort build dependencies 2014-01-03 08:32:24 -08:00
Kevin Sawicki 4f6c655294 Remove grunt-download-atom-shell as package dependency 2014-01-03 08:32:23 -08:00
Kevin Sawicki e2db58c6ee Add grunt-download-atom-shell as dependency 2014-01-03 08:32:23 -08:00
Kevin Sawicki 64aba6ec24 Add first-mate dependency 2014-01-03 08:32:23 -08:00
Kevin Sawicki 2910170eeb Add name field 2014-01-03 08:32:23 -08:00
Kevin Sawicki 9bc24b8736 Add missing comma 2014-01-03 08:32:23 -08:00
Kevin Sawicki 401ef87bb2 Clean build/node_modules folder 2014-01-03 08:32:23 -08:00
Kevin Sawicki 0c5ed1eee4 Run grunt from build folder 2014-01-03 08:32:23 -08:00
Kevin Sawicki 790c227924 Add back comment 2014-01-03 08:32:23 -08:00
Kevin Sawicki 822f13d6e3 Remove unneeded lint exclude 2014-01-03 08:32:23 -08:00
Kevin Sawicki 70c14eb4f5 Move tasks to build directory 2014-01-03 08:32:23 -08:00
Kevin Sawicki 673d2330f0 Add jasmine-node/jasmine-focused to dependencies 2014-01-03 08:32:23 -08:00
Kevin Sawicki e187604942 Run grunt from tasks folder 2014-01-03 08:32:22 -08:00
Kevin Sawicki c2cd1cd13d Remove devDependencies from package.json
They are now stored as dependencies in tasks/package.json
2014-01-03 08:32:22 -08:00
Kevin Sawicki c720a6a029 Don't lint tasks/node_modules 2014-01-03 08:32:22 -08:00
Kevin Sawicki 601466782f Install build dependencies in tasks/node_modules 2014-01-03 08:32:22 -08:00
Matt Colyer 92ef8f22e4 Upgrade scandal@0.10.1 2014-01-02 15:34:36 -08:00
Corey Johnson 690ffab9c0 Merge pull request #1355 from atom/cj-update-user-keymap
Watch user's keymap file for updates
2014-01-02 13:56:53 -08:00
probablycorey 512f373ca6 Merge remote-tracking branch 'origin/master' into cj-update-user-keymap 2014-01-02 11:54:06 -08:00
Matt Colyer e8f4da54a6 Upgrade find-and-replace@0.64.0 2014-01-02 11:33:20 -08:00
probablycorey d56137e3c0 Always try to unwatch current user keymap 2014-01-02 09:56:41 -08:00
Matt Colyer 9629afb145 Merge branch 'master' into fix-windows-specs 2014-01-02 08:38:59 -08:00
Cheng Zhao 5ecbd024cf Update symbols-view to v0.28.0. 2014-01-01 21:00:37 +08:00
Cheng Zhao b4974eee41 Update spell-check to v0.19.0. 2014-01-01 20:50:43 +08:00
Cheng Zhao 3ca3b23ef8 Update github-sign-in to v0.16.0. 2014-01-01 20:35:39 +08:00
Cheng Zhao 9b48df928c Update gists to v0.14.0. 2014-01-01 20:33:52 +08:00
Cheng Zhao 884d276458 Update command-logger to v0.9.0. 2014-01-01 20:07:01 +08:00
Cheng Zhao 441e179c48 Update editor-stats to v0.10.0. 2014-01-01 20:06:37 +08:00
Cheng Zhao e1248561b6 Update keytar to v0.15.0. 2014-01-01 10:44:10 +08:00
Cheng Zhao 7b5055f974 Update apm. 2014-01-01 10:39:36 +08:00
Cheng Zhao 206db1c271 Update scandal to v0.10.0. 2014-01-01 10:38:30 +08:00
Nathan Sobo 821debcb85 Make Editor, DisplayBuffer, TokenizedBuffer to not use telepath
This commit introduces dependency on a new npm called
[reactionary](https://github.com/atom/reactionary). It will serve as a
*much* lighter weight model framework to provide the reactive features
of telepath without the replication logic.

Specs are still failing for panes and workspace. I plan to just roll
forward and remove the telepath dependency from them as well.
2013-12-31 18:19:53 -07:00
Kevin Sawicki b9395d2946 Add harmony collections when unavailable
grunt could be invoked without harmony collections enabled which
would previously cause exceptions to be logged when modules requiring
them (emissary) were loaded.
2013-12-31 17:02:16 -08:00
Kevin Sawicki 44e6e7f45d Merge pull request #1354 from atom/ks-extract-textmate-parser
Use grammar registry provided by first-mate
2013-12-31 16:20:09 -08:00
probablycorey 88ee021b4d Watch user's keycap for changes and apply them 2013-12-31 15:21:42 -08:00
Kevin Sawicki b5c8e3e1fe Upgrade to first-mate@0.10.0 2013-12-31 15:15:40 -08:00
Kevin Sawicki 9962ce9859 Implement createToken in Syntax 2013-12-31 15:15:40 -08:00
Kevin Sawicki 882d766689 Activate/deactivate grammars directly 2013-12-31 15:15:40 -08:00
Kevin Sawicki 959401f5a7 Drop TextMate prefix from class names 2013-12-31 15:15:40 -08:00
Kevin Sawicki fa9aa3691b Extend GrammarRegistry in Syntax 2013-12-31 15:15:40 -08:00
Kevin Sawicki a95fdce85f 📝 Mark Syntax class as public 2013-12-31 15:15:40 -08:00
Kevin Sawicki e8edc83e39 💄 Sort requires 2013-12-31 15:15:40 -08:00
Kevin Sawicki 3ff702581a Group shim lines 2013-12-31 15:15:40 -08:00
Kevin Sawicki 88c9275bff Activate grammar when already active 2013-12-31 15:15:39 -08:00
Kevin Sawicki 826d536c09 Add atom.syntax.grammars shim 2013-12-31 15:15:39 -08:00
Kevin Sawicki c99c2af6ae Remove NullGrammar class now in first-mate 2013-12-31 15:15:39 -08:00
Kevin Sawicki ccc6eed3da Remove unused method 2013-12-31 15:15:39 -08:00
Kevin Sawicki e1aec57ffe Create tokens in TokenizedBuffer 2013-12-31 15:15:39 -08:00
Kevin Sawicki c1fc09e510 Use grammars from registry 2013-12-31 15:15:39 -08:00
Kevin Sawicki 19212f99ee Remove TextMateGrammar use in specs 2013-12-31 15:15:39 -08:00
Kevin Sawicki 2681dcc63c Remove TextMateGrammar class now in first-mate 2013-12-31 15:15:39 -08:00
Kevin Sawicki 6f5d85edb9 Use grammar registry from first-mate 2013-12-31 15:15:39 -08:00
Kevin Sawicki a59c01c6be Move editor-specific grammar specs to editor-spec 2013-12-31 15:15:39 -08:00
Kevin Sawicki a78613b7e5 Upgrade to first-mate@0.6.0 2013-12-31 15:15:39 -08:00
Kevin Sawicki 33c1353500 Only generate evil files when needed 2013-12-31 15:11:29 -08:00
Kevin Sawicki 22a7c25104 💄 Remove unneeded requires, variables, commas, and parens 2013-12-31 15:05:34 -08:00
Kevin Sawicki 902406c572 Enable harmony collections in all scripts 2013-12-31 14:40:45 -08:00
probablycorey b0077986b4 Use temp user directory for keymap config specs 2013-12-31 14:31:06 -08:00
Kevin Sawicki 686ebf8759 Upgrade to spell-check@0.18.0 for spec description tweaks 2013-12-31 11:58:23 -08:00
Nathan Sobo 66831ce8b9 Subclass the text-buffer npm TextBuffer 2013-12-31 12:46:47 -07:00
Nathan Sobo dd2c6d2f24 Eliminate TextBuffer's dependence on telepath
Atom's TextBuffer now relies on the text-buffer npm for its core
functionality.
2013-12-31 12:13:15 -07:00
probablycorey 30a175230a Update feedback package 2013-12-31 11:11:21 -08:00
Corey Johnson fe3e71cbd7 Merge pull request #1350 from atom/cj-keybinding-fixes
keybinding fixes
2013-12-31 08:50:22 -08:00
probablycorey 8d2e1b7e43 Selection::selectToEndOfLine acts on screen lines. 2013-12-31 08:38:27 -08:00
probablycorey c37b884007 Add moveCursorToEnd/BeginningOfBufferLine
Fixes #1123
2013-12-31 08:21:35 -08:00
Cheng Zhao 033d85fd4f Update git-utils to v0.30.0. 2013-12-31 15:26:56 +08:00
Cheng Zhao 963aef70e8 Use atom-chrome31 branch of apm. 2013-12-31 15:02:54 +08:00
Cheng Zhao 1dce2c439d Update pathwatcher to v0.13.0. 2013-12-31 10:07:46 +08:00
Cheng Zhao b3ed9d468b Update node-oniguruma to v0.25.0. 2013-12-31 10:07:46 +08:00
Cheng Zhao 878eca30e9 Update node-nslog to v0.3.0. 2013-12-31 10:07:46 +08:00
probablycorey 97aed1f680 ctrl-a moves the cursor to the beginning of the line on OS X
Keybinding now matches default OS behavior
2013-12-30 14:00:38 -08:00
probablycorey bac76784e0 cmd-left moves the cursor to column 0 on lines only containing whitespace
Fixes #1344
2013-12-30 13:57:34 -08:00
probablycorey 8e970b64b8 Change window:reload keybinding to ctrl-alt-cmd-l
Fixes #1157
2013-12-30 10:45:01 -08:00
Corey Johnson dfe9f5684e Merge pull request #1343 from atom/use-default-osx-keymap-for-hiding-other-apps
Use default OS X keyboard shortcut to hide other apps
2013-12-30 10:27:44 -08:00
Cheng Zhao f0f477d481 Update to atom-shell v0.8.1. 2013-12-29 23:36:23 +08:00
Jason Rudolph 470ce7bd22 Use default OS X keyboard shortcut to hide other apps 2013-12-27 08:24:46 -05:00
Kevin Sawicki f59080ec74 Upgrade to language-gfm@0.11.0 2013-12-24 09:14:16 -08:00
Ben Ogle f5ca836e49 Add background-tips package
Fixes #1217
2013-12-21 09:00:08 -08:00
Ben Ogle 319f9a22d8 Merge pull request #1340 from atom/bo-cancel-search
Add the ability to cancel project.scan
2013-12-20 16:09:34 -08:00
Ben Ogle 458d3b3d3c Remove fat arrow 2013-12-20 15:04:17 -08:00
Ben Ogle 11ec939924 Add a cancel() function to the promise 2013-12-20 15:03:39 -08:00
Matt Colyer e14019e2dd Upgrade settings-view@0.53.0 2013-12-20 12:25:40 -06:00
Matt Colyer 180912db61 Merge branch 'master' into fix-windows-specs 2013-12-20 12:14:31 -06:00
Matt Colyer aba1900d13 Upgrade link@0.12.0 2013-12-20 11:58:38 -06:00
Ben Ogle 5fdb3196a3 Add cancelScan() 2013-12-19 17:08:18 -08:00
Ben Ogle 8763a49dc6 Remove log line 2013-12-19 16:39:01 -08:00
Ben Ogle ffbd15eb98 Upgrade scandal@0.9.0 2013-12-19 16:12:29 -08:00
Ben Ogle 871b7406cd Terminate the old search if another is run. 2013-12-19 15:41:29 -08:00
Ben Ogle 66fa9d6a42 Upgrade to find-and-replace@0.63.0 2013-12-19 13:32:42 -08:00
Ben Ogle 8c7649dd57 Update the styleguide and themes for background-message 2013-12-19 12:27:11 -08:00
Ben Ogle 38c4fb3884 Add .background-message to the default theme 2013-12-19 12:14:46 -08:00
Matt Colyer 2d17ffc792 Revert "Restore package concurrency"
This reverts commit 2ad9fb52ae.
2013-12-19 12:02:18 -08:00
Matt Colyer 1d70e12594 Revert "Check for existence"
This reverts commit 8fb729d000.
2013-12-19 12:02:12 -08:00
Matt Colyer 8fb729d000 Check for existence 2013-12-19 11:43:28 -08:00
Ben Ogle b9fd05ba1e Upgrade to feedback@0.20.0 2013-12-19 11:39:27 -08:00
Matt Colyer 2ad9fb52ae Restore package concurrency 2013-12-19 11:33:42 -08:00
Matt Colyer 91778cb566 Revert "Parallelize package specs"
This reverts commit fa18a5cb33.
2013-12-19 11:29:32 -08:00
Matt Colyer a76cda4564 Revert "Parallelize core specs as well"
This reverts commit 7cb1ea038c.
2013-12-19 11:28:42 -08:00
Matt Colyer 7cb1ea038c Parallelize core specs as well 2013-12-19 10:56:18 -08:00
Matt Colyer fa18a5cb33 Parallelize package specs 2013-12-19 10:36:19 -08:00
Kevin Sawicki a012248316 Upgrade to tree-view@0.51.0 for menu tweak 2013-12-19 08:40:30 -08:00
Kevin Sawicki 53ccf7cf87 Upgrade to command-palette@0.14.0 refs #1339 2013-12-19 08:38:56 -08:00
Kevin Sawicki fbda0028ca Upgrade to feedback@0.19.0 2013-12-19 08:24:18 -08:00
Matt Colyer 9e3648c22f Remove ci.log files 2013-12-18 18:45:41 -08:00
Matt Colyer d8374eb251 Revert "Don't run package specs"
This reverts commit fd6e5e7a13.
2013-12-18 18:45:17 -08:00
Matt Colyer fd6e5e7a13 Don't run package specs 2013-12-18 18:36:40 -08:00
Matt Colyer 1da6bca2ae Properly use writeSync 2013-12-18 18:35:20 -08:00
Matt Colyer 40630114e7 Another attempt at preventing clipping 2013-12-18 17:12:12 -08:00
Matt Colyer 6736b6af3e Don't remove ci.log files for debugging 2013-12-18 16:38:14 -08:00
Matt Colyer 9c7747efbf Don't close ci output, as it's hanging 2013-12-18 16:38:03 -08:00
Nathan Sobo 42b203d502 🚱 Fix mini editor leak
Previously, we were overriding Editor::destroy, which is now provided
by telepath. Since the real destroy wasn't being called, we were failing
to remove editors associated with mini editor views.
2013-12-18 17:05:34 -07:00
Nathan Sobo d7d4a990a5 Merge pull request #1326 from atom/ns-telepathic-pane-items
Manage serialization of pane items with Telepath
2013-12-18 16:04:53 -08:00
Matt Colyer 8597951f0c Make sure logStream exists 2013-12-18 15:24:18 -08:00
Nathan Sobo 7d47527b17 Merge remote-tracking branch 'origin/master' into ns-telepathic-pane-items 2013-12-18 16:14:44 -07:00
Nathan Sobo 197d185ea4 Upgrade settings view to 0.52.0 for forward compatibility with #1326 2013-12-18 16:12:54 -07:00
Matt Colyer 91d1c2914e Write to stderr instead, for quicker flushing 2013-12-18 15:12:30 -08:00
Nathan Sobo da2487ba84 Upgrade archive view to 0.17.0 for forward compatibility with #1326 2013-12-18 16:11:36 -07:00
Matt Colyer 171c3e018b Attempt to fix truncated log messages 2013-12-18 14:57:13 -08:00
Matt Colyer bda8397d3d Revert "Switch to git for cloning apm"
This reverts commit fd929364d1.
2013-12-18 14:23:28 -08:00
Matt Colyer c9aa082e63 Revert "Turn up debugging for atom-shell downloads"
This reverts commit 6c4eb7439a.
2013-12-18 14:22:17 -08:00
Matt Colyer 6c4eb7439a Turn up debugging for atom-shell downloads 2013-12-18 12:11:27 -08:00
Nathan Sobo 76922c2d46 Include stack of window state parse errors in CI build output 2013-12-18 13:10:25 -07:00
Nathan Sobo fd7c3f3980 Merge branch 'master' into ns-telepathic-pane-items
Conflicts:
	src/pane.coffee
2013-12-18 13:07:37 -07:00
Matt Colyer 6b750c82ca Merge pull request #1327 from atom/win32-specs
Run atom CI on windows
2013-12-18 12:07:05 -08:00
Matt Colyer 4d643242a1 Don't upload the release on windows 2013-12-18 11:43:34 -08:00
Matt Colyer e974e61012 Remove logging 2013-12-18 11:36:26 -08:00
Matt Colyer 1ce4f3c552 More debugging 2013-12-18 11:19:26 -08:00
Matt Colyer 3ac2cae355 More debugging 2013-12-18 11:17:00 -08:00
Matt Colyer 2ffa989ba4 Add a missing comma 2013-12-18 11:12:38 -08:00
Matt Colyer 341454cd81 Dont use console 2013-12-18 11:11:27 -08:00
Matt Colyer 4507981f2a Fix logging 2013-12-18 11:07:46 -08:00
Matt Colyer 14f2444883 Add debugging 2013-12-18 11:03:21 -08:00
Nathan Sobo 267b1bdce6 Upgrade to image-view 0.11.0 for forward-compatibility with #1326
It makes ImageView a telepath model subclass so panes don't have to
manually manage serialization.
2013-12-18 12:03:10 -07:00
Matt Colyer 53451e0bcd Flip concurrency models 2013-12-18 10:20:21 -08:00
Nathan Sobo 4223ea25ee Update telepath to 0.80.0 so we drop old serialized states
Now that we've added custom objects, any pane items that serialized as
raw telepath objects are invalid. This is a quick way to cut through
any of those kinds of issues.
2013-12-18 11:19:14 -07:00
Matt Colyer bb517467eb 💄 2013-12-18 09:48:03 -08:00
Matt Colyer dd16aefbb6 Restore concurrency just on OSX 2013-12-18 09:47:24 -08:00
Matt Colyer 471c323ca5 Always return true on windows, for now 2013-12-18 09:36:43 -08:00
Matt Colyer bf021ab7f7 Merge branch 'master' into win32-specs
Conflicts:
	tasks/spec-task.coffee
2013-12-18 09:34:28 -08:00
Nathan Sobo 9198f3b809 Merge pull request #1334 from atom/ns-omit-destroyed-pane-items
Omit destroyed pane items
2013-12-18 08:40:20 -08:00
Kevin Sawicki b7c227dbfc Upgrade to autocomplete@0.19.0 for tab completion 2013-12-18 08:14:29 -08:00
Nathan Sobo 0dc031140c Omit destroyed pane items
This is an interim solution which enables atom/image-view#4 to correctly
deserialize when the path has been deleted both on atom master and in
atom/atom#1326.
2013-12-17 21:39:12 -07:00
Kevin Sawicki e853bbfcb6 Use standalone apm for running test 2013-12-17 19:51:34 -08:00
Kevin Sawicki cef7577826 Install apm into node_modules
settings-views launches apm via a NodeBufferedProcess so it still needs to
be available built against Atom's headers.

The version in apm/ is just for running via the CLI directly and is compiled
against node's headers.
2013-12-17 19:25:44 -08:00
Matt Colyer 8366887df6 Don't use a logfile unless one is defined 2013-12-17 18:28:17 -08:00
Matt Colyer e7f63b7c62 Merge branch 'master' into win32-specs 2013-12-17 18:22:08 -08:00
Matt Colyer 81a04769fb Run specs serially 2013-12-17 18:21:07 -08:00
Matt Colyer d4fcfbd034 Remove ci.log from package directories 2013-12-17 18:20:44 -08:00
Matt Colyer bab92c6d0a Use atom directly to run package specs 2013-12-17 18:10:55 -08:00
Matt Colyer 72523de046 Remove fixture that got checked in 2013-12-17 17:58:01 -08:00
Kevin Sawicki 82fbba4547 Upgrade apm for keytar usage 2013-12-17 17:56:04 -08:00
Matt Colyer 8b112cfd65 Get core specs running 2013-12-17 17:55:46 -08:00
Kevin Sawicki ec83c1061b Merge pull request #1324 from atom/ks-standalone-apm
Install apm outside of node_modules
2013-12-17 17:03:49 -08:00
Kevin Sawicki 75c573fe61 Run apm commands from new apm directory 2013-12-17 16:53:31 -08:00
Kevin Sawicki ed8800d182 Install apm to apm/ from vendor/apm 2013-12-17 16:53:31 -08:00
Kevin Sawicki 0aabfddfcb 🐎 Stat without exceptions in Directory::getEntries 2013-12-17 16:51:11 -08:00
Matt Colyer 1bf1785885 Upgrade fs-plus@0.13.0 2013-12-17 16:41:10 -08:00
Matt Colyer 20df9f4666 Add --log-file option for redirecting output 2013-12-17 16:31:13 -08:00
Nathan Sobo e40b7b1412 Update to telepath 0.79.0 so representation creation can be delayed
Instead of creating representations for a class as soon as the class is
registered, we wait until all representation classes are registered and
call `::createRepresentations` on the Atom global to build everything in
a single bottom up traversal.
2013-12-17 17:05:54 -07:00
Nathan Sobo 611559ecd6 Fix pane spec. Fully test serialization lifecycle via ::testPersistence. 2013-12-17 17:05:54 -07:00
Nathan Sobo c74783ebbf Allow telepath to manage serialization of non-telepathic pane items
This is the first step in converting Pane into a telepath model. We skip
interaction with the deserializer for items and allow telepath to handle
everything. There's actually a preexisting replication error in moveItem
that I'm going to leave until we drop out a Pane model.
2013-12-17 17:05:54 -07:00
Nathan Sobo 9df69f801b Register deserializers on telepath as representation classes 2013-12-17 17:05:54 -07:00
Nathan Sobo 105f74e15e Merge pull request #1305 from atom/ns-telepathic-atom-global
Make atom global a Telepath model subclass
2013-12-17 15:56:34 -08:00
Matt Colyer d7e56c447b Remove logging, disable package specs 2013-12-17 15:53:08 -08:00
Matt Colyer cecee6a430 Merge branch 'master' into win32-specs 2013-12-17 15:47:57 -08:00
Matt Colyer e3e83918e5 Update to underscore-plus@0.6.1 2013-12-17 15:47:48 -08:00
Nathan Sobo 0438565c43 Fix site.createDocument shim 2013-12-17 16:46:16 -07:00
Matt Colyer cbfa87a3b4 Merge branch 'master' into win32-specs 2013-12-17 15:36:24 -08:00
Matt Colyer 3187013eac Upgrade underscore-plus@0.6.0 2013-12-17 15:35:27 -08:00
Nathan Sobo e7b632eb18 Merge branch 'master' into ns-telepathic-atom-global 2013-12-17 16:30:24 -07:00
Kevin Sawicki cdce91157f Reverse load path order
Packages may be linked into ~/.atom/packages or ~/.atom/dev/packages
so the resource should be loaded from there when available.
2013-12-17 15:04:17 -08:00
Kevin Sawicki a566bd469d Use fs-plus.isFileSync to check path
Previously fs::statSyncNoException not being null was used but it always
returns an object or false so the first path checked was always being used.
2013-12-17 15:01:53 -08:00
Kevin Sawicki 389586bb41 Add ~/.atom/dev/packages to load paths 2013-12-17 15:00:27 -08:00
Kevin Sawicki 51b39500fe Prepare 0.45.0 release 2013-12-17 14:24:14 -08:00
probablycorey b5a6f0db0f Update welcome package 2013-12-17 12:42:25 -08:00
Kevin Sawicki 259faa5b5a Upgrade to grunt-download-atom-shell@0.4.0 for progress fix 2013-12-17 12:41:02 -08:00
Corey Johnson c8477c2f01 Merge pull request #1329 from atom/cj-word-movment
Word movement uses `end-of-word` and `beginning-of-word`
2013-12-17 12:38:34 -08:00
Ben Ogle f6b00fc90f Upgrade to feedback@0.18.0 2013-12-17 12:10:53 -08:00
Ben Ogle b3246d63fb Upgrade to find-and-replace@0.62.0 2013-12-17 11:33:35 -08:00
probablycorey 07eb2d014a Word movement uses end-of-word and beginning-of-word
Closes #1253
2013-12-17 11:24:35 -08:00
Matt Colyer bf0015f6cc Run with cmd.exe 2013-12-17 10:49:15 -08:00
Matt Colyer ca3d1e869c Use start command to launch atom.exe 2013-12-17 10:33:39 -08:00
Nathan Sobo a57083a48b Mark Atom global class methods with instance equivalents as 'Private:' 2013-12-17 11:18:59 -07:00
Matt Colyer 2ae46734db Debug output 2013-12-17 10:07:55 -08:00
Matt Colyer 3918435c7f Correct the path to the executable on windows 2013-12-17 09:51:45 -08:00
Kevin Sawicki 180e5d4164 Delete node_modules from vendor/apm 2013-12-17 09:50:04 -08:00
Matt Colyer d8f5ef71cd Add a contentsDir for windows 2013-12-17 09:39:49 -08:00
Matt Colyer 2e2bab7778 Upgrade grunt-download-atom-shell@0.3.0 2013-12-17 09:28:21 -08:00
Kevin Sawicki b10ef9454b Disable colors in script/constructicon/build not script/build 2013-12-17 09:27:11 -08:00
Kevin Sawicki 31fc4fcde8 Disable colors in constructicon output 2013-12-17 09:22:14 -08:00
Kevin Sawicki f48514114d Disable colors when BUILT_PRODUCTS_DIR env var is set 2013-12-17 09:15:04 -08:00
Matt Colyer fd929364d1 Switch to git for cloning apm 2013-12-17 08:53:54 -08:00
Kevin Sawicki 4f758f1fe2 Upgrade apm to workaround npm shasum error 2013-12-17 08:43:19 -08:00
Corey Johnson 35e1940984 Merge pull request #1325 from atom/cj-remove-movement-menu
Remove movement menu
2013-12-17 08:30:45 -08:00
Kevin Sawicki bdadf43341 Upgrade apm for unused dependency removal 2013-12-17 08:13:24 -08:00
Nathan Sobo 92b829c89b Upgrade to telepath 0.76.0 for deprecated shim methods 2013-12-16 19:25:30 -07:00
Nathan Sobo 3db9e16637 Upgrade to telepath 0.75.0 for custom object support 2013-12-16 19:03:10 -07:00
Kevin Sawicki 29d7735848 Upgrade to language-coffee-script@0.4.0 for catch indent fix 2013-12-16 17:59:48 -08:00
Kevin Sawicki 5b4b57f10f Merge pull request #1309 from shama/cleanscript
Add clean script
2013-12-16 17:59:22 -08:00
Kyle Robinson Young ed4b50e3b4 Rename removeCommand and set tmpdir to /tmp on osx/linux. 2013-12-16 17:51:20 -08:00
Kyle Robinson Young d526cfcba0 Change .node-type to .node-gyp in clean script 2013-12-16 17:51:20 -08:00
Kyle Robinson Young 0cf2cdceea Ability to delete without node_modules 2013-12-16 17:51:20 -08:00
Kyle Robinson Young 8239bb7e05 Add clean script 2013-12-16 17:51:20 -08:00
Ben Ogle 6d3e137db8 Upgrade to find-and-replace@0.61.0 2013-12-16 17:43:26 -08:00
Matt Colyer fa34eea27a Allow script/cibuild to run on windows 2013-12-16 17:33:45 -08:00
Kevin Sawicki 3e41b0967f Upgrade apm for sorted available output 2013-12-16 17:30:07 -08:00
Nathan Sobo bd3cfda2bb Merge branch 'master' into ns-telepathic-atom-global
Conflicts:
	src/atom.coffee
2013-12-16 18:18:06 -07:00
probablycorey 386b8a9e46 Remove movement menu 2013-12-16 17:11:59 -08:00
Kevin Sawicki 099b5186ab Upgrade apm for template activation change 2013-12-16 17:10:47 -08:00
Kevin Sawicki deab6027fb Upgrade to settings-view@0.51.0 2013-12-16 17:08:24 -08:00
Kevin Sawicki 590582782b Upgrade apm for template fixes 2013-12-16 16:43:20 -08:00
probablycorey abb0a3c792 Update metrics package 2013-12-16 16:10:07 -08:00
Ben Ogle 43baee5abd Merge pull request #1322 from atom/bo-fix-tabs-and-soft-wrap
Dont re-atomicize atomic tokens
2013-12-16 15:56:22 -08:00
Ben Ogle 75153388cc Use tab char 2013-12-16 15:50:26 -08:00
Ben Ogle b959fc0a6a use @ 2013-12-16 15:46:07 -08:00
Ben Ogle 77b5fd47ca Dont re-atomicize atomic tokens.
Fixes #1318
2013-12-16 15:34:27 -08:00
Kevin Sawicki f3a9500e61 Upgrade apm for unpublish command 2013-12-16 15:12:14 -08:00
probablycorey dadb0d5427 Update feedback package 2013-12-16 14:32:58 -08:00
Kevin Sawicki 9cdc15b161 Guard against no other focusable elements
This previously occurred in areas we all the elements had a -1 tabindex
 or were disabled.
2013-12-16 13:54:59 -08:00
Kevin Sawicki 7c27cbd9f5 Merge pull request #1320 from atom/ks-native-commands
Handle native commands in render process
2013-12-16 13:46:18 -08:00
Kevin Sawicki 010931391e Use event.target 2013-12-16 12:14:41 -08:00
Kevin Sawicki eaf6aba943 Return true from event handler 2013-12-16 12:12:14 -08:00
Kevin Sawicki d60d710325 Inline sendActionToFirstResponder 2013-12-16 12:11:19 -08:00
Kevin Sawicki bb1bcc233a Handle native commands in render process
This fixes copy, paste, undo, redo for elements with a native-key-bindings
class by forwarding to the menu's first responder from the render process.
2013-12-16 12:06:43 -08:00
Ben Ogle f0813dbca8 Upgrade to find-and-replace@0.60.0 2013-12-16 11:35:20 -08:00
Matt Colyer 9bded1cd19 Upgrade metrics@0.19.0 2013-12-16 11:32:08 -08:00
Ben Ogle c6e96a6188 Merge pull request #1308 from atom/bo-common-functions-up-a-level
Common core commands to workspaceView
2013-12-16 11:12:44 -08:00
probablycorey 09ff90bfc4 Update tabs package 2013-12-16 08:54:54 -08:00
Kevin Sawicki 2bf9036578 Upgrade to to-the-hubs@0.16.0 for menu tweak 2013-12-13 15:36:39 -08:00
Kevin Sawicki 6a7e4c30fb 🐎 Memoize version to prevent future IPC calls 2013-12-13 14:49:23 -08:00
Nathan Sobo ed41cc3cad Restore comment 2013-12-13 14:07:30 -08:00
Kevin Sawicki 9aee5adeb6 Upgrade to metrics@0.18.0 to report shell load time 2013-12-13 12:26:37 -08:00
Kevin Sawicki 70f3527123 Expose shell load time render process for metrics 2013-12-13 12:15:45 -08:00
Nathan Sobo e67e8ff0f5 Restore Atom::getLoadSettings and spy on it in window spec
I initially ripped out Atom::getLoadSettings in favor of a mutable
property because window spec was making an assumption that such a
property existed anyway. Since load settings need to be available from
class methods, the instance method just delegates to the class method.
But that means there's no ::loadSettings property to mutate in that
spec. I replaced the former approach with a spy which has the added
advantage of not polluting windowSettings for subsequent specs.
2013-12-13 12:02:48 -08:00
Kevin Sawicki 4448a7419c Upgrade to tree-view@0.50.0 2013-12-13 11:16:25 -08:00
Nathan Sobo e18a0f045a Upgrade to telepath 0.74.0 to avoid shredding of orphaned object graphs
We call atom.destroyOrphans after each spec now to clean up any orphaned
objects. Previously, we we destroying any object not reachable from the
root document. This was causing children of orphaned objects to be
removed from their parent, which caused null pointer exceptions when
running the destroy handlers for the orphans. Now we only destroy the
roots of orphaned object graphs.
2013-12-13 11:02:03 -08:00
Ben Ogle e8e84cbd2f Upgrade to tree-view@0.49.0 2013-12-13 10:38:39 -08:00
Ben Ogle e8c5027026 💄 Update specs to use ::function() format 2013-12-13 10:28:38 -08:00
Nathan Sobo da964a8f15 Fix comment 2013-12-13 09:55:45 -08:00
Nathan Sobo 2c4aee1181 Restore cloning of ::loadSettings in ::getLoadSettings
It's a deprecated method, but if you call it you'll get a clone.
2013-12-13 09:55:13 -08:00
Nathan Sobo 24d3f1daeb Reduce diff size by restoring old method order where possible 2013-12-13 09:50:57 -08:00
Nathan Sobo beb2fb08ea Merge branch 'master' into ns-telepathic-atom-global
Conflicts:
	package.json
2013-12-13 09:32:13 -08:00
Kevin Sawicki 7b86891642 Upgrade to tree-view@0.48.0 for scroll left fixes 2013-12-12 18:24:54 -08:00
Kevin Sawicki 87e325dce1 Set body's visibility to hidden when unloading
Previously the display was changed to none via $.hide() which accidentally
affected the ability of package's to serialize DOM properties such as
scrollTop since the value would always be zero when the display was none.

The goal here is to just prevent a flicker when refreshing the
editor window and setting visibility to hidden still accomplishes this.
2013-12-12 18:05:36 -08:00
Kevin Sawicki ee87c757ed Upgrade to tree-view@0.47.0 for arrow fix 2013-12-12 18:04:25 -08:00
Ben Ogle a25812dca7 Move cmd-s and cmd-S to workspaceView 2013-12-12 17:50:15 -08:00
Ben Ogle 1f9a7599b7 cmd-w works anywhere in the editor 2013-12-12 17:50:15 -08:00
Kevin Sawicki 07dee8838c Upgrade to tree-view@0.46.0 2013-12-12 17:46:09 -08:00
Kevin Sawicki 8367b020ec Upgrade to editor-stats@0.9.0 for bug fix 2013-12-12 17:41:50 -08:00
Nathan Sobo 9fce6a2f1c Merge branch 'ns-guard-dead-editors' 2013-12-12 17:11:20 -08:00
Nathan Sobo 165a417a9d Upgrade to telepath 0.73.0 for Document::create default values 2013-12-12 16:59:41 -08:00
Nathan Sobo 39fe0c418b Add back deprecated Atom::getLoadSettings method for packages 2013-12-12 16:49:00 -08:00
Nathan Sobo 75cee638bc Protect from exceptions when attaching editor views w/ dead editors
Addresses #1306

We still need to know why this is happening, so I left an exception in
non-release builds. Since the pane system is about to change a lot I
think this is good enough for now.
2013-12-12 16:41:35 -08:00
Matt Colyer ae72d4ad56 Upgrade exception-reporting@0.9.0 2013-12-12 16:41:09 -08:00
Nathan Sobo bfcb24f517 Fix pesky workspace view serialization spec
This isn't beautiful, but this whole approach is slated to be replaced
in the recent future.
2013-12-12 16:36:34 -08:00
Nathan Sobo 208ed09109 Use atom.state instead of defunct windowState in spec 2013-12-12 16:35:56 -08:00
Nathan Sobo 0b7f291e17 Remove reference to workspaceView in Atom::unloadEditorWindow 2013-12-12 16:35:26 -08:00
Nathan Sobo a61b057aea Eliminate exceptions in Editor::inspect 2013-12-12 16:34:48 -08:00
Nathan Sobo 4c817baf4c Don't destroy project when WorkspaceView is removed
Whenever we're removing the workspaceView, we're usually destroying
the project anyway.
2013-12-12 16:34:10 -08:00
Nathan Sobo a564cc66f6 Replace Atom::getLoadSettings with a ::loadSettings property
We assign a value into ::loadSettings anyway in a spec, so there's not
much point leaving it a method. Eventually I'd like to pass all these
settings in when constructing the Atom object and eliminate awareness
of the loadSettings altogether from the Atom global.
2013-12-12 16:33:30 -08:00
Nathan Sobo 14c58c4517 Set up window event handler for all windows 2013-12-12 15:45:25 -08:00
Nathan Sobo ebe77065cc Destroy orphans after each spec 2013-12-12 15:45:16 -08:00
Ben Ogle e1d35ed90f Upgrade dev-live-reload@0.20.0
Fix issue with reloading on changes to variable files
2013-12-12 15:45:00 -08:00
Corey Johnson 5d23a8fceb Merge pull request #1271 from atom/cj-deleted-files-not-modified
Handle deleted files correctly
2013-12-12 15:15:47 -08:00
Nathan Sobo 30b0fed60f Remove packageStates from atom state after specs just in case 2013-12-12 15:11:59 -08:00
probablycorey 90f3726c5c Fix window specs 2013-12-12 15:10:01 -08:00
Nathan Sobo 5f10c48219 Kill double project assignment 2013-12-12 14:40:12 -08:00
Nathan Sobo 23957d7f66 WIP: Make atom global a telepath model
Specs seem to be green but hang on what I'm assuming to be a long GC
pause near the end. I need to investigate what's going on memory wise.
2013-12-12 14:33:50 -08:00
probablycorey 58bf19cc83 Fix syntax error 2013-12-12 14:00:21 -08:00
probablycorey f439b04978 Update tree-view and find-and-replace packages 2013-12-12 13:37:56 -08:00
Ben Ogle f6d1647021 Upgrade git diff and all the themes with new colors. 2013-12-12 11:56:54 -08:00
Ben Ogle 0ccaf9049f Upgrade to dev-live-reload@0.19.0
Reload all themes when syntax variables change
2013-12-12 11:24:46 -08:00
probablycorey 132194337e Merge remote-tracking branch 'origin/master' into cj-deleted-files-not-modified 2013-12-12 11:00:17 -08:00
Ben Ogle f0198944b5 Merge pull request #1297 from atom/bo-diff-reload
Apply text to buffer via diff on reload
2013-12-12 10:40:47 -08:00
probablycorey f414c0955b Specs don't prompt to save editors by default. 2013-12-12 10:35:11 -08:00
Ben Ogle 4ffa5bb90e Make this fn private. 2013-12-12 10:34:08 -08:00
Ben Ogle 4dbca94d32 spec 💄 2013-12-12 10:34:08 -08:00
Ben Ogle 7111961929 Move function into setTextViaDiff() 2013-12-12 10:34:08 -08:00
Ben Ogle 5d46d7a881 💄 2013-12-12 10:34:08 -08:00
Ben Ogle 8d1d64d9d3 bufferRow -> row 2013-12-12 10:34:08 -08:00
Ben Ogle 60498616b7 numberLines -> lineCount 2013-12-12 10:34:08 -08:00
Ben Ogle ed745d2072 Remove log lines 2013-12-12 10:34:08 -08:00
Ben Ogle 1f69963982 Apply text to buffer via diff on reload
Previously, it would blindly read from disk on reload, and set the text 
into the editor. This was problematic as it would mess with markers and 
folds. No longer. 

Fixes #1285 and fixes atom/bookmarks#3
2013-12-12 10:34:08 -08:00
probablycorey 787b6fb677 Revert "Don't pop-up save dialog in specs"
This reverts commit e0ad22d0bd.
2013-12-12 10:09:41 -08:00
probablycorey 2d5b04579f Merge branch 'master' into cj-deleted-files-not-modified
Conflicts:
	src/pane.coffee
2013-12-12 09:57:28 -08:00
Kevin Sawicki 9fbfeb970b Remove mixins already added by Model superclass 2013-12-12 09:04:16 -08:00
Kevin Sawicki 63cac904ae Export telepath Model 2013-12-12 08:51:02 -08:00
Kevin Sawicki 04ad048e1f :non-potable_water Upgrade to space-pen@2.0.0 2013-12-12 08:15:48 -08:00
Nathan Sobo b9b8c61c11 🚱 Properly remove items from pane's state document
Fixes #1299.

This updates Pane::removeItemAtIndex to call Array::splice with the
index to be removed instead of Array::remove, which was changed to take
the *object* to be remove rather than an index. Oops.
2013-12-11 21:39:38 -08:00
Kevin Sawicki 6a8697a357 Upgrade to status-bar@0.27.0 for tooltip update 2013-12-11 19:13:09 -08:00
Kevin Sawicki bb35655e67 Upgrade to status-bar@0.26.0 for icon tweak 2013-12-11 19:02:06 -08:00
Kevin Sawicki 865d94d758 Add dev mode icon to status bar
Skull colliding with tabs was too much to handle.

Red square in status bar is the new indicator.
2013-12-11 18:57:07 -08:00
Matt Colyer 965e146bf2 Merge pull request #1298 from atom/upgrade-download-atom-shell
Upgrade grunt-download-atom-shell@0.2.1
2013-12-11 18:53:31 -08:00
Matt Colyer d97b394000 Upgrade grunt-download-atom-shell@0.2.1 2013-12-11 18:23:50 -08:00
Kevin Sawicki 29b85a1bb9 Clear the goal column when the cursor moves
Previously it was only cleared when changing the position explicitly
and not as a result of the underlying marker changing such as during a
text insertion.

Closes #1295
2013-12-11 18:02:52 -08:00
Kevin Sawicki dda65d82c3 Remove unused guid require 2013-12-11 17:49:31 -08:00
Kevin Sawicki 56de32f433 📝 Mention packages instead of extension 2013-12-11 17:23:23 -08:00
Kevin Sawicki 3cb751723d Register editor with project when deserializing 2013-12-11 17:18:03 -08:00
Nathan Sobo 344e6d15ce Merge branch 'ns-latest-telepath' 2013-12-11 17:03:19 -08:00
Nathan Sobo 8e7de0dc89 Upgrade to telepath 0.70.0 for undefined marker timestamp fix
This upgrades the serialization version of telepath documents because
for a window of time we were storing undefined timestamps. It also
adds dev-mode assertions that raise when the index of a solo marker
exceeds the array length. I think that issue should actually be resolved
and if we don't see an assertion failure here for a while we can remove
the Math.min shim.

Closes atom/telepath#7
2013-12-11 16:49:05 -08:00
probablycorey 3b388f16fd Update metrics package… again. 2013-12-11 16:47:43 -08:00
probablycorey c64b1a7628 Update metrics package 2013-12-11 16:37:38 -08:00
Kevin Sawicki 5ce71f5ded Upgrade to atom-dark-ui@0.17.0 for status icon tweak 2013-12-11 16:30:32 -08:00
Kevin Sawicki 02415ca400 Upgrade ui themes for hover removal 2013-12-11 16:04:13 -08:00
Nathan Sobo 69f357b538 Merge branch 'ns-latest-telepath' 2013-12-11 15:30:49 -08:00
Nathan Sobo 780441bdb8 Upgrade to telepath 0.68.0 for solo marker multiple undo fix 2013-12-11 15:19:46 -08:00
probablycorey e0ad22d0bd Don't pop-up save dialog in specs 2013-12-11 14:51:44 -08:00
probablycorey 115203cbd2 Update spec description 2013-12-11 14:48:12 -08:00
Nathan Sobo 0b5155f496 Set telepath.devMode to true when not on an official release
This will enable assertions inside of telepath to help us diagnose
atom/telepath#7. Otherwise, the issue *should* be covered over for end
users.
2013-12-11 14:47:52 -08:00
Nathan Sobo 4f18baaed5 Upgrade telepath to 0.67.0 for devMode flag 2013-12-11 14:46:40 -08:00
Kevin Sawicki 095320680f 📝 Start CoffeeScript styleguide 2013-12-11 14:35:06 -08:00
Nathan Sobo 8a8df8d6cb Add Atom::isReleasedVersion, which determines if the version is a SHA 2013-12-11 12:28:20 -08:00
Nathan Sobo 6bb4eaee93 Merge branch 'ns-teleditor' 2013-12-11 11:17:45 -08:00
Nathan Sobo 7710845cdc Use property accessors instead of accessing state directly 2013-12-11 11:10:43 -08:00
Nathan Sobo 8471ffed29 Observe scroll* behaviors instead of the entire state document 2013-12-11 11:10:06 -08:00
Nathan Sobo ce6d793528 Merge branch 'ns-reopen-uris' 2013-12-11 11:03:59 -08:00
Nathan Sobo e5bf70544e Document methods 2013-12-11 11:02:56 -08:00
Kevin Sawicki c591911455 📝 There is no tomorrow 2013-12-11 10:37:26 -08:00
Kevin Sawicki 44955e536b Upgrade to tree-view@0.44.0 2013-12-11 10:20:29 -08:00
Kevin Sawicki 6f25945911 Upgrade to fs-plus@0.11.0 to remove npm warning 2013-12-11 10:09:06 -08:00
Kevin Sawicki e5bd341f05 Set npm log level to warn instead of silent 2013-12-11 10:03:32 -08:00
Kevin Sawicki e9d4563084 Disable apm colors in CI builds 2013-12-11 09:40:30 -08:00
Kevin Sawicki b67ce8f4f8 Only retain last 10 releases 2013-12-11 09:17:47 -08:00
Kevin Sawicki 6a90bc1b17 Create prereleases 2013-12-11 09:06:59 -08:00
Kevin Sawicki 6ba8855d51 Upgrade apm for logging failed downloads 2013-12-11 09:05:40 -08:00
Kevin Sawicki e6b55cd521 Merge pull request #1220 from shama/grunt-cli
Prefer npm created node_modules/.bin/grunt
2013-12-11 08:37:01 -08:00
Kyle Robinson Young 59f453bb06 Prefer npm created node_modules/.bin/grunt 2013-12-10 19:36:48 -08:00
Nathan Sobo e275b6c414 Merge remote-tracking branch 'origin/master' into ns-reopen-uris 2013-12-10 19:13:21 -08:00
Nathan Sobo f3cdb6e0a2 Merge remote-tracking branch 'origin/master' into ns-teleditor 2013-12-10 19:10:09 -08:00
Nathan Sobo c4fc75215b Reintroduce editor serialization specs
I added some features to telepath that make it easier to test model
objects.

- First, you can now call replicate on any telepath document/model
  object. The entire underlying database will be replicated and you will
  be handed the equivalent of that object in the replicated world. This
  is easier than forcing you to attach the model to the window state 
  and then call replicate there. However, remember that the entire
  window state is actually being replicated so any references the model
  has will also be replicated.

- Second, you can also replicate orphaned objects. Most objects in these
  specs we're converting are orphans because there's no reason to attach
  them to the root document just to test them in isolation.
2013-12-10 19:07:50 -08:00
Kevin Sawicki 68e7c209bd Update apm for ci changes 2013-12-10 18:22:52 -08:00
Kevin Sawicki 1737df6ff9 Use .zip extension 2013-12-10 18:03:28 -08:00
Kevin Sawicki 897bf2f8e0 💄 Add assetName variable 2013-12-10 17:49:53 -08:00
Kevin Sawicki 1851c81e60 Log when delete response is non-204 2013-12-10 17:47:43 -08:00
Kevin Sawicki 938c85e616 Use default headers in publish release API call 2013-12-10 17:46:34 -08:00
Kevin Sawicki 350602a740 Merge pull request #1282 from atom/ks-builds-repo
Upload releases to atom/atom-master-builds repo
2013-12-10 17:45:35 -08:00
Kevin Sawicki f1ed51a823 Only publish master builds 2013-12-10 17:37:32 -08:00
Kevin Sawicki 086f0a0684 📝 Mention build-package script and atom-master-builds 2013-12-10 17:37:32 -08:00
Kevin Sawicki fbd8f7a1a7 Use commitSha variable 2013-12-10 17:37:32 -08:00
Kevin Sawicki 3e359e3c4e Upload releases to atom/atom-master-builds repo 2013-12-10 17:37:32 -08:00
Nathan Sobo 425c076221 Make Editor a telepath.Model subclass 2013-12-10 17:32:34 -08:00
Matt Colyer 351c1f1ab8 Merge pull request #1284 from atom/fix-atom-download-windows
Fix `grunt download-atom-shell` on Windows
2013-12-10 17:32:15 -08:00
Matt Colyer 1efde26230 Merge remote-tracking branch 'origin/master' into fix-atom-download-windows 2013-12-10 17:24:46 -08:00
Kevin Sawicki 527aa61fa1 Remove line-jumper until atom.io issue is resolved 2013-12-10 17:23:59 -08:00
Nathan Sobo 18a712a1f7 Reopen closed pane items in workspace – by uri instead of deserializing
Serializing and deserializing closed pane items was turning into a pain
with the new telepath changes that are phasing out this kind of on the
fly serialization. Reopening by uri saves memory and simplifies panes
enormously. If we want non-uri reopening we can revisit it later when
telepath models are better integrated.
2013-12-10 17:19:44 -08:00
Matt Colyer 6c8db8ee49 Upgrade grunt-download-atom-shell@0.2.0 2013-12-10 17:18:52 -08:00
probablycorey 4bfcdf4d5b Remove unmodified editors from pane when the buffer is deleted 2013-12-10 17:08:07 -08:00
Kevin Sawicki c1f3499359 Upgrade to metrics@0.15.0 for window load time reporting 2013-12-10 17:06:48 -08:00
probablycorey 201717a9aa Remove duplicate destroy
Telepath now emits the 'destroy' event
2013-12-10 17:04:46 -08:00
Ben Ogle 3e83364e38 Update line-jumper 2013-12-10 16:52:49 -08:00
Kevin Sawicki ba681023da Upgrade to language-javascript@0.4.0 for log snippet 2013-12-10 16:46:31 -08:00
Ben Ogle 2ae7775caf Upgrade to underscore-plus@0.5.0 2013-12-10 16:27:29 -08:00
Ben Ogle b2ab9d3246 Upgrade the themes to fix text hover colors 2013-12-10 16:10:56 -08:00
Kevin Sawicki 7cc61c5252 📝 Add locally 2013-12-10 15:22:21 -08:00
Kevin Sawicki b3b2be2430 📝 Add setting up travis doc 2013-12-10 15:21:58 -08:00
Ben Ogle 1674f16a0e Add line-jumper package to default install 2013-12-10 15:10:27 -08:00
probablycorey 24c84fe09c Merge remote-tracking branch 'origin/master' into cj-deleted-files-not-modified 2013-12-10 14:46:26 -08:00
Kevin Sawicki 2136fdaa60 Set cwd to vendor/apm instead of cd'ing 2013-12-10 14:11:10 -08:00
Kevin Sawicki 347eb9ce83 Merge pull request #1281 from atom/ks-upload-release
Upload master builds to releases
2013-12-10 14:01:54 -08:00
probablycorey a3eb76d630 💄 2013-12-10 13:52:42 -08:00
Kevin Sawicki 163994340d Log Atom release tag name 2013-12-10 13:51:09 -08:00
probablycorey 8ffa8fed12 Always use Pane::addItem when adding items. 2013-12-10 13:50:51 -08:00
Kevin Sawicki 2141d06f61 Upload master builds only 2013-12-10 13:33:31 -08:00
Kevin Sawicki e1a1a7efc9 Log what release is being uploaded to 2013-12-10 13:24:02 -08:00
Kevin Sawicki f3f94a2af0 Drop prerelease from asset name 2013-12-10 12:59:32 -08:00
Kevin Sawicki 3d8e304b1c Allow script/upload-release to be called directly 2013-12-10 12:48:34 -08:00
Kevin Sawicki 2d0ba3e1f9 Uncomment branch check 2013-12-10 12:48:34 -08:00
Kevin Sawicki be0ebab841 Delete existing before uploading new one 2013-12-10 12:48:34 -08:00
Kevin Sawicki 8c1d49c703 Exit with 1 when upload fails 2013-12-10 12:48:34 -08:00
Kevin Sawicki 4af71391a6 Use basename of assetPath in zip command 2013-12-10 12:48:34 -08:00
Kevin Sawicki 90802e3725 Check for error being null and default body to empty string 2013-12-10 12:48:34 -08:00
Kevin Sawicki a9d1afdf65 Rename upload variable to assetRequest 2013-12-10 12:48:34 -08:00
Kevin Sawicki 2a51eb7614 Remove unneeded key name 2013-12-10 12:48:34 -08:00
Kevin Sawicki 96d38d7252 💄 Use return unless 2013-12-10 12:48:34 -08:00
Kevin Sawicki 4705e382bf Convert script/upload-release to CoffeeScript 2013-12-10 12:48:33 -08:00
Kevin Sawicki 11f8eba2c3 Add initial upload-release script 2013-12-10 12:48:33 -08:00
Ben Ogle d638fe9ca0 Upgrade to command-palette@0.13.0 2013-12-10 12:40:25 -08:00
Ben Ogle 3f69197a08 Update command palette to better handle keybindings.
Fixes #1233
2013-12-10 12:31:25 -08:00
Ben Ogle 43bf47fa26 Upgrade to underscore-plus@0.4.0 2013-12-10 11:47:53 -08:00
Kevin Sawicki 092ed37ed9 Remove unused core.hideGitIgnoredFiles config setting 2013-12-10 11:07:05 -08:00
probablycorey 19da22d440 Revert "Project doesn't serialize non-modified buffers that don't exist on disk"
This reverts commit ec3e139632.
2013-12-10 10:15:03 -08:00
probablycorey 51ff3ec46a Revert "Rename destroyNonExistentNonModified"
This reverts commit 22ec8c3a75.
2013-12-10 10:14:56 -08:00
Kevin Sawicki 36b5518add Upgrade to solarized-dark-syntax@0.5.0 for git commit colors 2013-12-10 10:10:22 -08:00
Kevin Sawicki dbdb51db2f 📝 Update wrapGuide to wrap-guide 2013-12-10 09:52:20 -08:00
Kevin Sawicki 7db11ea3c6 Upgrade to gists@0.13.0 for untitled editor fix 2013-12-10 09:51:43 -08:00
Kevin Sawicki f6ce92e52d Upgrade to wrap-guide@0.10.0 for spec fixes 2013-12-10 09:31:45 -08:00
Kevin Sawicki 6c1999ab60 Upgrade to wrap-guide@0.9.0 for config prefix change 2013-12-10 09:28:57 -08:00
Kevin Sawicki 3dde91dd3d Upgrade apm for template fixes 2013-12-10 08:06:01 -08:00
Nathan Sobo 9deec49f81 Bump editor serialization version 2013-12-10 01:44:10 -08:00
Nathan Sobo 7c3106d9d9 Merge branch 'ns-teleditor' 2013-12-10 01:40:14 -08:00
Nathan Sobo 7138d5b888 Merge branch 'master' into ns-teleditor
Conflicts:
	package.json
2013-12-10 01:33:23 -08:00
Nathan Sobo 43495f05ba Restore package specs in suite. Didn't mean to commit these comments. 2013-12-10 01:31:04 -08:00
Nathan Sobo 518a929880 Merge branch 'ns-latest-telepath' 2013-12-10 01:16:03 -08:00
Nathan Sobo dd00f0d4ea Upgrade to telepath 0.65.0 for markers + undo fix
Fixes #1197
2013-12-10 01:08:33 -08:00
Kevin Sawicki 20d8458009 Upgrade apm for package template fix 2013-12-09 19:43:00 -08:00
Kevin Sawicki 13f45c615a Upgrade to language-gfm@0.10.0 for HTML entities 2013-12-09 19:35:42 -08:00
Ben Ogle 998d542825 Upgrade to find-and-replace@0.58.0 2013-12-09 18:10:13 -08:00
Kevin Sawicki fccc47023c Upgrade to pathwatcher@0.11.0 for flaky tree-view spec fix 2013-12-09 18:08:19 -08:00
Kevin Sawicki a2f2efe8b3 Upgrade to base16-tomorrow-dark-theme@0.7.0 for git commit colors 2013-12-09 17:56:55 -08:00
Kevin Sawicki c6bdc59fef Upgrade to fuzzy-finder@0.28 for reload fix 2013-12-09 17:38:01 -08:00
Kevin Sawicki 047e5e696f Prepare 0.44.0 release 2013-12-09 15:33:28 -08:00
Kevin Sawicki 72191f3d3d Add atom.getWindowLoadTime() API to be used by metrics 2013-12-09 15:20:22 -08:00
Kevin Sawicki 5ced583a7c Prepare 0.43.0 release 2013-12-09 14:40:54 -08:00
Nathan Sobo c326988a7d Merge branch 'master' into ns-teleditor 2013-12-09 12:40:38 -08:00
Nathan Sobo 5ff47f3aa1 Call atom.create with TokenizedBuffer before testing it 2013-12-09 12:28:13 -08:00
Ben Ogle 308bb95ea2 upgrade to feedback@0.16.0 2013-12-09 12:09:37 -08:00
probablycorey 22ec8c3a75 Rename destroyNonExistentNonModified 2013-12-09 12:06:44 -08:00
Ben Ogle 3490022180 Upgrade to find-and-replace@0.57.0 2013-12-09 11:53:49 -08:00
probablycorey ec3e139632 Project doesn't serialize non-modified buffers that don't exist on disk 2013-12-09 11:41:57 -08:00
probablycorey 63e3be8630 Only mark a deleted file as modified if it was previously modified.
Fixes #693
2013-12-09 11:06:29 -08:00
Ben Ogle e61d482384 Ugrade to find-and-replace@o0.56.0 2013-12-09 10:43:41 -08:00
Kevin Sawicki b108b5030a Upgrade to language-ruby@0.6.0 2013-12-09 08:18:30 -08:00
Kevin Sawicki 943fe29ca3 Upgrade to metrics@0.14.0 for spec fixes 2013-12-09 08:17:39 -08:00
Kevin Sawicki 2bbf7fd0d7 Upgrade to metrics@0.13.0 2013-12-09 08:09:59 -08:00
Cheng Zhao 42e9c612b2 Merge pull request #1219 from atom/atom-shell-v0.7.5
Update to atom-shell v0.7.6.
2013-12-09 01:00:24 -08:00
Cheng Zhao 33778cefdd Merge branch 'master' into atom-shell-v0.7.5 2013-12-09 16:52:05 +08:00
Cheng Zhao 39fb5dc134 Update to atom-shell v0.7.6. 2013-12-09 16:46:27 +08:00
Kevin Sawicki ffedaa1bc1 Upgrade to git-diff@0.20.0 for new move commands 2013-12-08 20:02:12 -08:00
Nathan Sobo 3402504779 Merge branch 'ns-latest-telepath' 2013-12-07 14:09:39 -08:00
Nathan Sobo c8253be1ae Use the softWrap property directly 2013-12-07 14:08:00 -08:00
Nathan Sobo 9ede5f85e3 Use the ::editorWidthInChars property directly 2013-12-07 14:07:46 -08:00
Nathan Sobo 640fd0051b Clarify comment 2013-12-07 14:03:14 -08:00
Nathan Sobo 779c918179 Reorder requires 2013-12-07 14:03:07 -08:00
Nathan Sobo ee1f21439d Merge branch 'ns-latest-telepath' into ns-teleditor 2013-12-07 13:59:35 -08:00
Nathan Sobo f25d8d83c5 Merge branch 'master' into ns-latest-telepath 2013-12-07 13:58:53 -08:00
Nathan Sobo b4270b1e9e Merge branch 'ns-mock-cson-in-config-specs' 2013-12-07 13:52:00 -08:00
Kevin Sawicki 98701283e8 Merge pull request #1247 from atom/ks-observe-tab-length
Observe editor.tabLength config in TokenizedBuffer
2013-12-07 11:52:18 -08:00
Kevin Sawicki 34f71a2623 Observe editor.tabLength config in TokenizedBuffer
Closes #1224
2013-12-07 11:43:48 -08:00
Kevin Sawicki af06bf8984 Merge pull request #1258 from atom/ks-refresh-less-cache
Refresh less cache before activating themes
2013-12-07 11:38:32 -08:00
Kevin Sawicki 796632c36c Refresh less cache before activating themes
This ensures the import paths for themes contain the stylesheet directories

Closes #1225
2013-12-07 11:31:06 -08:00
Kevin Sawicki 65fa5bf880 Upgrade to settings-view@0.50.0, closes #1264 2013-12-07 11:28:02 -08:00
Nathan Sobo 1ccc93c50b Make DisplayBuffer a telepath model subclass 2013-12-07 03:07:15 -08:00
Nathan Sobo f4d19810b8 💄 2013-12-07 03:07:02 -08:00
Nathan Sobo 1c74925637 Upgrade to telepath 0.62.0 2013-12-07 02:36:07 -08:00
Nathan Sobo a4d2b4d21a Make TokenizedBuffer a telepath.Model subclass
There's a bunch of improvised code to make this work right now because
of the circularity of this refactoring. It will stabilize over time.
2013-12-07 02:25:47 -08:00
Nathan Sobo 88eb803d91 Mock season.writeFileSyne instead of fs.writeFileSync in config specs
The spec suite has been overwriting my config directory in weird cases.
While investigating it I noticed that we mock writeFileSync directly in
these specs, but we actually use season to write the config cson. This
makes this spec a bit simpler because it doesn't have to parse the CSON
in the spec. Lower level assertions belong on the season package itself.
2013-12-06 22:10:26 -08:00
Nathan Sobo b61654b52f Upgrade to telepath 0.61.0
This version adds a bunch of reactive primitives and ensures we destroy
documents when they are no longer referenced.
2013-12-06 21:55:57 -08:00
Nathan Sobo db1768a9c7 Upgrade feedback to 0.15.0 for spec fix 2013-12-06 21:55:43 -08:00
Nathan Sobo 6156dac3de Update status-bar to 0.24.0 so specs pass with new telepath 2013-12-06 19:57:05 -08:00
Daniel Hengeveld d5a7f7396e Merge pull request #1259 from atom/fix-doc-url
fix doc url
2013-12-06 14:16:06 -08:00
Daniel Hengeveld ca65ff6c55 fix doc url 2013-12-06 14:15:19 -08:00
Ben Ogle 49782d3335 Upgrade to feedback!0.14.0 2013-12-06 13:55:15 -08:00
Kevin Sawicki e45aeecb0a Update specs now that syntax themes have stylesheets folders 2013-12-06 13:24:34 -08:00
Kevin Sawicki d3edf33dc4 Upgrade syntax themes with new syntax-variables.less 2013-12-06 13:08:20 -08:00
Kevin Sawicki c54c925793 Merge pull request #1246 from atom/ks-color-commit-messages
Add a splash of color to commit messages
2013-12-06 13:06:52 -08:00
Kevin Sawicki e3b89aca93 Use defaults similar to ui-variables colors 2013-12-06 12:56:15 -08:00
Kevin Sawicki 9183d4968f Only include used colors for now 2013-12-06 12:56:14 -08:00
Kevin Sawicki 1aa96fc37a Drop text segment from color 2013-12-06 12:56:14 -08:00
Kevin Sawicki d75d3b6d09 Import syntax-variables in atom.less 2013-12-06 12:56:14 -08:00
Kevin Sawicki f60856eca7 Add more syntax variables 2013-12-06 12:56:14 -08:00
Kevin Sawicki 3a7049a1d9 Import syntax in atom.less 2013-12-06 12:56:14 -08:00
Kevin Sawicki 29d1b42d04 Move git markup styles to syntax.less 2013-12-06 12:56:14 -08:00
Kevin Sawicki 80552675d0 Add initial syntax-variables.less 2013-12-06 12:56:14 -08:00
Kevin Sawicki ff696355ee Use color variables for commit message files 2013-12-06 12:56:14 -08:00
Kevin Sawicki 3a2c4ca74d Upgrade to github-sign-in@0.15.0 2013-12-06 12:53:53 -08:00
Kevin Sawicki 777cc4b561 Merge pull request #1236 from atom/package-install-docs
Add manual package install directions to Atom docs
2013-12-06 12:27:54 -08:00
Kevin Sawicki c0fe3c01de 📝 Remove extra space 2013-12-06 12:26:52 -08:00
Kevin Sawicki 97dbe0d3b2 📝 Wording tweaks and link to apm and emmet 2013-12-06 12:26:24 -08:00
Cameron McEfee 250938869e Use @gjtorikian's suggested copy 2013-12-06 12:26:24 -08:00
Cameron McEfee 6092de9af8 Add manual package install directions to Atom docs 2013-12-06 12:26:23 -08:00
Ben Ogle 01855901e7 Upgrade release-notes and github-sign-in 2013-12-06 12:07:16 -08:00
Ben Ogle 161542a4af Merge pull request #1240 from atom/bo-token-stuff
Add token dealings to atom core
2013-12-06 12:04:52 -08:00
Ben Ogle 6d2bd7756e Add the getGitHubAuthTokenName fn back in 2013-12-06 11:57:31 -08:00
Ben Ogle f0fece2cf0 Add getters and setters for the keychain 2013-12-06 11:45:18 -08:00
Ben Ogle c36ee1dbe6 Add getGitHubTokenName 2013-12-06 11:39:40 -08:00
Ben Ogle 76ec5a98c4 Upgrade to atom-dark-ui@0.13.0 2013-12-06 10:59:16 -08:00
Ben Ogle ec022b5c77 Upgrade to feedback@0.13.0 2013-12-06 10:44:40 -08:00
Kevin Sawicki 912636a599 Upgrade to autosave@0.10.0 refs #1183 2013-12-06 10:05:44 -08:00
Kevin Sawicki 011c3cc223 Merge pull request #1237 from atom/ks-hard-tab-cache
Fix caching of hard tabs
2013-12-06 08:55:08 -08:00
Kevin Sawicki 433b64d581 Update spec for new hard tab span text length 2013-12-06 08:27:00 -08:00
Kevin Sawicki 365d69a19c Add missing s to invisible 2013-12-06 08:26:59 -08:00
Kevin Sawicki 5d1e507988 Remove extra newline 2013-12-06 08:26:59 -08:00
Kevin Sawicki 776b267396 💄 Correct indent 2013-12-06 08:26:59 -08:00
Kevin Sawicki 77e4b7f90f Use value ivar when invisible.tab is falsy 2013-12-06 08:26:59 -08:00
Kevin Sawicki 2501b98e8f Fix typo constructor 2013-12-06 08:26:59 -08:00
Kevin Sawicki 32d301ef34 typo: invisibles not invisible 2013-12-06 08:26:59 -08:00
Kevin Sawicki & Nathan Sobo f4861b7919 💄 Use @constructor instead of EditorView 2013-12-06 08:26:59 -08:00
Kevin Sawicki & Nathan Sobo 94e4fef108 Use DisplayBuffer::lineForRow in EditorView::positionLeftForLineAndColumn
Previously the tokenized lines were obtained from the tokenized buffer
which skipped the translation to screen coordinates.

Closes #1231
2013-12-06 08:26:59 -08:00
Kevin Sawicki & Nathan Sobo 7ae432fad5 Place entire hard tab value inside span
Previously only the first character was included in the span.
2013-12-06 08:26:59 -08:00
Ben Ogle 18057e303b Remove getUserAgent. just use navigator.userAgent 2013-12-05 18:55:20 -08:00
Matt Colyer 71064adae2 Upgrade grunt-download-atom-shell@0.1.3 2013-12-05 16:44:55 -08:00
Matt Colyer 43d964c357 Upgrade grunt-download-atom-shell@0.1.2 2013-12-05 11:39:59 -08:00
Ben Ogle 5f4115cb81 Add more native keybindings 2013-12-05 11:08:14 -08:00
Kevin Sawicki 8cf2cdb2a9 Add script/install-cli to install atom and apm 2013-12-05 11:02:37 -08:00
Kevin Sawicki a460530770 Show warning message opening opening dev window without repo cloned 2013-12-05 10:43:45 -08:00
Kevin Sawicki 162bab506d Mention package repositories 2013-12-05 08:50:58 -08:00
Cheng Zhao 6c5669b53d Add "productName" in package.json.
Atom-Shell would use it as application's name.
2013-12-05 18:15:26 +08:00
Cheng Zhao a7db8229d5 Also change the version field of package.json in set-development-version task. 2013-12-05 18:13:42 +08:00
Cheng Zhao b7848d760f Update to atom-shell v0.7.5. 2013-12-05 17:48:55 +08:00
Ben Ogle e6d8f3b9bf Merge pull request #1218 from shama/doc-typos
A couple typo fixes in the docs.
2013-12-04 21:12:09 -08:00
Kyle Robinson Young 0e270f85ba A couple typo fixes in the docs. 2013-12-04 20:40:27 -08:00
Kevin Sawicki 9e3f4dc033 Prepare 0.42.0 release 2013-12-04 19:04:36 -08:00
Kevin Sawicki c1a744b29c Make ATOM_ACCESS_TOKEN available in all grunt commands 2013-12-04 19:02:39 -08:00
Kevin Sawicki a283161c1e Upgrade to tree-view@0.43.0 refs #1213 2013-12-04 18:24:28 -08:00
Ben Ogle 9ede9571bc Upgrade to release-notes@0.14.0 2013-12-04 16:32:52 -08:00
Ben Ogle dbc21befec Upgrade to welcome@0.3.0 2013-12-04 16:28:31 -08:00
Ben Ogle ca0f0357d7 Upgrade to feedback@0.12.0 2013-12-04 16:25:15 -08:00
probablycorey be1c1f8719 Use permanent image link for atom logo 2013-12-04 16:19:33 -08:00
Cheng Zhao e95c60b4ec 💄 Fix typo in dialog. 2013-12-05 08:17:33 +08:00
probablycorey 847dd6d93b Update welcome package 2013-12-04 16:03:29 -08:00
Kevin Sawicki 7f62720350 Merge pull request #1208 from atom/ks-erb-infinite-parse-loop
Prevent infinite loop in erb grammar
2013-12-04 15:34:10 -08:00
Kevin Sawicki 8af0a59c52 Pop stack when rule is pushed without position advancement
Previously only the scope name was checked which allowed cases
were rules without scope names to grow the stack infinitely without
advancing the position.

Closes atom/language-ruby-on-rails#1
2013-12-04 15:18:33 -08:00
Kevin Sawicki 31a909828d Don't override ATOM_ACCESS_TOKEN if already set 2013-12-04 14:40:37 -08:00
Ben Ogle 78562dcf15 Upgrade to github-sign-in@0.14.0 2013-12-04 14:31:23 -08:00
Ben Ogle 4869fad7f6 Add styling for headings in overlays. 2013-12-04 14:29:32 -08:00
probablycorey 77da136d17 Update cmd-shift-P references and getting started doc 2013-12-04 14:07:43 -08:00
probablycorey 67b1d0d22a Update atom shell to 0.7.4 2013-12-04 14:03:58 -08:00
Kevin Sawicki 23fcb59c5d Upgrade to language-ruby@0.5.0 2013-12-04 14:00:50 -08:00
probablycorey 16ef30dc82 Update feedback package 2013-12-04 12:09:11 -08:00
Ben Ogle e3a4f450ad Update themes to have better tree-view focusing 2013-12-04 12:06:04 -08:00
Kevin Sawicki 847578398d Prepare 0.41.0 release 2013-12-04 12:02:08 -08:00
Kevin Sawicki 63dc8863e3 Use atom-bot's token as ATOM_ACCESS_TOKEN 2013-12-04 11:38:25 -08:00
Kevin Sawicki 58d09ec5a0 Update to fs-plus@0.10.0 2013-12-04 11:36:38 -08:00
Ben Ogle bb5d70fa2e Merge pull request #1182 from atom/removing-core-treeview-settings
Removing core treeview settings
2013-12-04 11:26:06 -08:00
Kevin Sawicki 4a904673e5 Upgrade apm for keychain token name fix 2013-12-04 11:22:50 -08:00
Kevin Sawicki 4c1d47779b 💄 Sort themes better 2013-12-04 09:36:14 -08:00
Kevin Sawicki a0adc32e04 💄 Sort themes 2013-12-04 09:35:50 -08:00
Kevin Sawicki 2434db4dc2 Merge pull request #1174 from atom/cj-update-docs
Update docs
2013-12-04 09:17:16 -08:00
Kevin Sawicki e2ee99556d Merge branch 'master' into cj-update-docs 2013-12-04 09:01:27 -08:00
Kevin Sawicki cececc2297 Update to new logo url 2013-12-04 08:58:04 -08:00
Kevin Sawicki f0825ca526 Add simple explanation 2013-12-04 08:55:19 -08:00
Kevin Sawicki 57c0261f96 Add Git commit messages section 2013-12-04 08:53:24 -08:00
Kevin Sawicki 6891922e07 Use friendlier emoji 2013-12-04 08:50:43 -08:00
Kevin Sawicki e03a7c336d Add example to require ordering section 2013-12-04 08:50:07 -08:00
Kevin Sawicki 49a32dd2dc Remove cmake dependency 2013-12-04 08:48:45 -08:00
Kevin Sawicki 94d4ad618c Add require(atom) for home directory example 2013-12-04 08:48:22 -08:00
Cheng Zhao 9b0f8ccee0 Merge pull request #1192 from atom/grunt-download-atom-shell
Use grunt-download-atom-shell to download and update atom-shell.
2013-12-03 22:07:34 -08:00
Nathan Sobo fa963f0583 Upgrade telepath to 0.45.1 in hopes of addressing #1153
Basically, it just hacks ArrayMarker::getRawStart/EndIndex in
non-replicated mode to check that the index isn't out of range. I'd
rather get to the root cause but I'm hoping this can save us some pain
in the short term while a lot of balls are in the air.
2013-12-03 20:17:01 -06:00
Ben Ogle d36c4f0ec9 getUserAgent() 2013-12-03 17:45:40 -08:00
probablycorey e6e72d99f3 Add welcome package 2013-12-03 15:37:48 -08:00
Kevin Sawicki 9ce22fd6d3 Add back internally used isPathModified 2013-12-03 13:37:21 -08:00
Garen Torikian 5166ca274c 📝 Typo fix 2013-12-03 13:02:35 -08:00
Kevin Sawicki 6f1dd702b0 Add back internally used Project::findBufferForPath 2013-12-03 12:12:28 -08:00
Kevin Sawicki 1d4f447975 📝 Fill in SelectList docs 2013-12-03 12:02:41 -08:00
Kevin Sawicki 4998fdda85 Remove unused methods in Project 2013-12-03 11:40:28 -08:00
Ben Ogle aa52428c26 Merge pull request #1193 from atom/dev-icon
Adjusting padding for new tabs
2013-12-03 11:30:43 -08:00
Matt Graham 9c1127dd1b adjusting padding for new tabs 2013-12-03 11:30:19 -08:00
Kevin Sawicki 91d4ef2653 📝 Mark more EditorView methods private 2013-12-03 11:25:17 -08:00
Kevin Sawicki 80cc881912 📝 Remove FIXME in Editor::transpose 2013-12-03 11:21:12 -08:00
Kevin Sawicki 867aaa8f95 📝 Move transact to public section with delegates tag 2013-12-03 11:21:12 -08:00
Kevin Sawicki 28a1dc58e7 Merge pull request #1190 from atom/ks-soft-wrap-cache
Use buffer positions for char width cache
2013-12-03 11:06:31 -08:00
Kevin Sawicki ee7ef0f893 Add spec that previously failed 2013-12-03 10:54:27 -08:00
Kevin Sawicki eaf60a00b3 Use TokenizedLine::tokenAtBufferColumn to obtain scopes 2013-12-03 10:54:27 -08:00
Kevin Sawicki e01c19e6b7 Use buffer positions when calculating char widths
Previously the editor width cache was being accessed using
screen columns which could cause incorrect position left values
for wrapped lines.

Closes #1096
2013-12-03 10:54:27 -08:00
Kevin Sawicki 930e479cdb Upgrade apm for template updates 2013-12-03 10:50:47 -08:00
Matt Graham 46c6d63dcd removing focus from core 2013-12-03 10:37:31 -08:00
Kevin Sawicki 1b502c6349 Prepare 0.40.0 release 2013-12-03 10:04:54 -08:00
Kevin Sawicki 07eb01016d Upgrade to tree-view@0.42.0 for spec cleanup 2013-12-03 09:28:32 -08:00
Cheng Zhao 99d6955644 Ignore grunt-download-atom-shell when loading packages. 2013-12-03 22:04:21 +08:00
Cheng Zhao 3f05ff9b14 Download grunt-download-atom-shell from apm registry.
I published grunt-download-atom-shell to apm registry so we do not need
to specify a git URL here, and as I tested the CI cannot fetch private
node module repositories due to lack of credient.

When it could be public we should publish it to npm registry instead.
2013-12-03 21:10:16 +08:00
Cheng Zhao 9caf3ca349 💄 Fix atom-shell's download dir. 2013-12-03 20:13:17 +08:00
Cheng Zhao 25a1b77048 Use grunt-download-atom-shell to download and update atom-shell. 2013-12-03 19:54:42 +08:00
Cheng Zhao 866c0c0668 Merge pull request #1191 from atom/atom-shell-v0.7.3
Update atom-shell to v0.7.3.
2013-12-02 20:55:09 -08:00
Cheng Zhao 6094efde76 Update atom-shell to v0.7.3. 2013-12-03 12:45:55 +08:00
Cheng Zhao b4099ba66f Use the new breakpad crash reporter in both browser and renderer. 2013-12-03 12:45:44 +08:00
probablycorey 10b560b5a7 Update feedback package 2013-12-02 16:21:38 -08:00
probablycorey 305c331777 Update feedback package 2013-12-02 16:10:27 -08:00
probablycorey 0b5cad27d2 Add ' body' to make .native-binding selector more specific 2013-12-02 16:09:43 -08:00
Kevin Sawicki 7d967e71f4 Upgrade apm for new templates 2013-12-02 15:02:14 -08:00
Kevin Sawicki d36a0aa437 Update file.icns to match atom.icns 2013-12-02 11:52:05 -08:00
Kevin Sawicki 8316da3338 Use long opts strings for clarity 2013-12-02 11:26:51 -08:00
Kevin Sawicki a0b200565c Specify callback to dialog.showOpenDialog 2013-12-02 11:21:29 -08:00
Kevin Sawicki 8f4de0b568 Merge pull request #1184 from atom/ks-no-more-ids
Use classes instead of ids
2013-12-02 09:49:40 -08:00
Kevin Sawicki 45cd3e9335 Upgrade themes for id to class renames 2013-12-02 09:35:51 -08:00
Kevin Sawicki c58b30bba9 Use class instead of id for pane container 2013-12-02 08:41:34 -08:00
Kevin Sawicki 0093f39102 Add classes to workspace view elements 2013-12-02 08:32:23 -08:00
Kevin Sawicki b1f041fa6e Use a class instead of id for panes element 2013-12-02 08:27:32 -08:00
Kevin Sawicki ca11661f6d Use a class instead of id for vertical element 2013-12-02 08:26:07 -08:00
Kevin Sawicki bc4ceb189c Use a class instead of id for horizontal element 2013-12-02 08:25:48 -08:00
Kevin Sawicki 98694e5407 Use a class instead of id for workspace view 2013-12-02 08:23:29 -08:00
Kevin Sawicki 86ae743e9d Use correct workspace view id 2013-12-02 08:17:31 -08:00
Kevin Sawicki dddd515c35 Upgrade packages for EditSession/Editor renames 2013-11-28 09:27:01 -08:00
Kevin Sawicki 85d46004fd Merge pull request #1155 from atom/ks-license
Add license
2013-11-28 09:26:23 -08:00
Kevin Sawicki 5cb6aa0538 Add initial LICENSE.md 2013-11-28 09:20:05 -08:00
Ben Ogle d228cfe1ee Upgrade to find-and-replace@0.55.0 2013-11-27 16:13:19 -08:00
probablycorey a8f7c5201b Add more keystrokes to .native-key-bindings 2013-11-27 14:20:45 -08:00
probablycorey e15b96691e Sort node modules to the top of require list 2013-11-27 13:29:49 -08:00
Corey Johnson 3053c4a585 Merge pull request #1168 from atom/cj-feedback-package
Add feedback package
2013-11-27 11:32:59 -08:00
probablycorey 776d58bf21 Merge remote-tracking branch 'origin/master' into cj-feedback-package
Conflicts:
	package.json
	src/editor-view.coffee
2013-11-27 11:26:34 -08:00
probablycorey 1b5762274c Update contribution guidelines 2013-11-27 11:20:22 -08:00
probablycorey 1f20dbf16d Remove philosophy portion from contributions.
I feel like these suggestions are too subjective. I think we could
expand upon these ideas in a separate document, but they are a bit 
overwhelming for new contributors.
2013-11-27 11:19:37 -08:00
probablycorey 9fe507d675 Update readme and build instructions 2013-11-27 10:59:11 -08:00
Cheng Zhao a190a069c1 Ship the "resources" dir in Atom.app, and do not copy icon separately, fixes #1165. 2013-11-27 14:58:25 +08:00
Kevin Sawicki c697e58a71 Upgrade to styleguide@0.17.0 for EditorView rename fixes 2013-11-26 19:53:24 -08:00
Kevin Sawicki 1f36d0ca02 Upgrade to space-pen@2.0.1
Closes #1164
2013-11-26 19:44:27 -08:00
Kevin Sawicki 235a1e46ab Merge pull request #1169 from atom/ks-remove-editor-shims
Rename EditSession/Editor to Editor/EditorView
2013-11-26 19:43:53 -08:00
Kevin Sawicki 1197dc1979 Upgrade to find-and-replace@0.54.0 2013-11-26 19:36:01 -08:00
Kevin Sawicki 94e94506b5 Upgrade to tree-view@0.41.0 2013-11-26 19:36:01 -08:00
Kevin Sawicki 163c800d55 Upgrade to bracket-matcher@0.14.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki 3f5a6184b6 Upgrade to bookmarks@0.15.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki 77819616a8 Upgrade to autoflow@0.11.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki 3749726742 Upgrade to autocomplete@0.18.0 2013-11-26 19:35:44 -08:00
Ben Ogle d22d6e9af2 Upgrade to git-diff@0.19.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki 7ad6f0b18b Upgrade to fuzzy-finder@0.27.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki cdfd27be3e Delegate EditorView::save to Editor::save 2013-11-26 19:35:44 -08:00
Kevin Sawicki 4e554a4941 Upgrade to markdown-preview@0.21.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki 3db5cad927 Upgrade to github-sign-in@0.13.0 2013-11-26 19:35:44 -08:00
Kevin Sawicki 1a21600bde Upgrade to symbols-view@0.26.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki 3c3811c527 Upgrade to spell-check@0.17.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki 16c0ef935f Upgrade to snippets@0.17.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki 6cc897ac67 Upgrade to settings-view@0.49.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki 80782feb24 Upgrade to package-generator@0.23.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki 3cfe50585a Move eachBuffer spec to project-spec 2013-11-26 19:35:43 -08:00
Kevin Sawicki 4c336ed0ee Upgrade to grammar-selector@0.13.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki c1cf8936eb Don't through exception from setGrammar delegate 2013-11-26 19:35:43 -08:00
Kevin Sawicki d131b3e39c Upgrade to go-to-line@0.12.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki 043ce8f972 Upgrade to git-diff@0.18.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki e4cac4de70 Upgrade to wrap-guid@0.8.0 2013-11-26 19:35:43 -08:00
Kevin Sawicki c5cc0706e0 Upgrade to to-the-hubs@0.15.0 2013-11-26 19:35:42 -08:00
Kevin Sawicki 45ddece673 Update getEditors references to getEditorViews 2013-11-26 19:35:42 -08:00
Kevin Sawicki 2901a04843 Rename WorkspaceView::getEditors to getEditorViews 2013-11-26 19:35:42 -08:00
Kevin Sawicki 0259536c5d Rename WorkspaceView::eachEditor to eachEditorView 2013-11-26 19:35:42 -08:00
Kevin Sawicki 48692e5127 Update EditSession to Editor in method references 2013-11-26 19:35:16 -08:00
Kevin Sawicki 19dc6b3523 Remove each helpers that delegate to Project 2013-11-26 19:35:16 -08:00
Kevin Sawicki d1496a0634 Rename EditSession to Editor 2013-11-26 19:35:16 -08:00
Kevin Sawicki d8c4fa902d Remove editSession options support 2013-11-26 19:35:16 -08:00
Kevin Sawicki f1e768767e Rename EditorView::activeEditSession to editor 2013-11-26 19:35:16 -08:00
Kevin Sawicki c03e9ad815 Rename Editor export to EditorView 2013-11-26 19:35:16 -08:00
Ben Ogle ebe3d0d885 Upgrade visual-bell@0.6.0 2013-11-26 18:06:45 -08:00
Ben Ogle 46f73d037f Fix replace on open buffers. only replace paths specified.
Closes find-and-replace#85
2013-11-26 17:08:21 -08:00
probablycorey e7e0f081f4 Update feedback package 2013-11-26 17:00:45 -08:00
probablycorey dde46ca931 Merge remote-tracking branch 'origin/master' into cj-feedback-package
Conflicts:
	package.json
2013-11-26 16:59:57 -08:00
Ben Ogle 65746521a6 Increase timeout to show default tips 2013-11-26 15:53:54 -08:00
Ben Ogle 5352f7322c upgrade to tabs@0.14.1 2013-11-26 15:52:37 -08:00
Ben Ogle f395905d4e Add destroyTooltip() 2013-11-26 15:46:01 -08:00
Ben Ogle f84635766c Upgrade to fnr@0.53.0 2013-11-26 15:36:05 -08:00
Ben Ogle 413078a493 Add hideTooltip function to hide the tip right now. 2013-11-26 15:35:47 -08:00
Kevin Sawicki d3c9b6e547 Rename root-view-spec.coffee to workspace-view-spec.coffee 2013-11-26 13:26:38 -08:00
Kevin Sawicki 078fffa7c1 Merge pull request #1166 from atom/ks-rename-root-view
Rename RootView to WorkspaceView
2013-11-26 12:28:10 -08:00
probablycorey 8472ac4fc8 Bump feedback version 2013-11-26 11:29:36 -08:00
probablycorey 1bdfb004ef Add feedback package 2013-11-26 11:23:36 -08:00
probablycorey e42079c762 Update Atom Shell 2013-11-26 11:15:55 -08:00
probablycorey a0ceb78627 Move snapshot code to package 2013-11-26 11:15:55 -08:00
probablycorey eb985a9880 Remove report issue menu 2013-11-26 11:15:55 -08:00
Kevin Sawicki d0eb26c35f 📝 RootView -> WorkspaceView 2013-11-26 11:07:46 -08:00
Kevin Sawicki 1489488159 Update rootView references in benchmarks 2013-11-26 11:02:54 -08:00
Kevin Sawicki a0a90ca26a Upgrade themes for root-view id rename 2013-11-26 11:02:53 -08:00
Kevin Sawicki 21f6676094 📝 activate() is only passed state 2013-11-26 11:02:53 -08:00
Kevin Sawicki ad9721a893 Rename workspace-view element to workspace 2013-11-26 11:02:53 -08:00
Kevin Sawicki 12ae7abc38 📝 Rename rootView to workspaceView 2013-11-26 11:02:53 -08:00
Kevin Sawicki ee0814313f Rename root-view.less to workspace-view.less 2013-11-26 11:02:53 -08:00
Kevin Sawicki a3c9e01595 Rename root-view element id to workspace-view 2013-11-26 11:02:53 -08:00
Kevin Sawicki 2e801fbf87 Rename root-view to workspace-view 2013-11-26 11:02:53 -08:00
Kevin Sawicki 40d7fb3c45 Upgrade to find-and-replace@0.52.0 2013-11-26 11:02:53 -08:00
Kevin Sawicki 14ad277012 Remove atom.workspaceView shim 2013-11-26 11:02:53 -08:00
Kevin Sawicki 6a9f29024a Remove RootView export 2013-11-26 11:02:53 -08:00
Kevin Sawicki 3ce6176313 Rename rootView to workspaceView 2013-11-26 11:02:53 -08:00
Kevin Sawicki 7d7ed79fde Upgrade packages for rootView rename 2013-11-26 11:02:52 -08:00
Ben Ogle 8aa32fc8d1 Merge pull request #1161 from atom/bo-editor-placeholder-text
Add ability for placeholder text in mini editor
2013-11-26 11:01:42 -08:00
Kevin Sawicki f8ed6eadc8 Add WorkspaceView and atom.workspaceView shims 2013-11-26 09:13:06 -08:00
Ben Ogle 0c2c739741 Add ability for placeholder text in mini editor 2013-11-25 14:46:54 -08:00
Kevin Sawicki 79c6badce8 Upgrade to gists@0.11.0 for spec fixes 2013-11-25 11:40:05 -08:00
Kevin Sawicki a48ef934eb Upgrade to gists@0.10.0 2013-11-25 11:31:53 -08:00
Kevin Sawicki 85d5968318 Remove consecutive comment blocks 2013-11-22 15:45:01 -08:00
Kevin Sawicki 9b4dd602be 📝 Tweak markdown in Atom comments 2013-11-22 15:40:50 -08:00
Kevin Sawicki 62d84e5d4b 📝 Doc Project::registerOpener 2013-11-22 15:40:50 -08:00
Ben Ogle 61ed5da1dc Upgrade themes for tooltips 2013-11-22 15:40:12 -08:00
Ben Ogle 32e25d4bb2 Don't override the default options! 2013-11-22 15:39:47 -08:00
Ben Ogle aae9614839 Upgrade to tabs@0.12.0 2013-11-22 15:33:03 -08:00
Kevin Sawicki 7fa4121227 📝 Mark PackageManager constructor as private 2013-11-22 15:19:23 -08:00
Kevin Sawicki 1d783826a2 📝 Doc Selection::compare 2013-11-22 15:19:23 -08:00
Ben Ogle bdb6e193de Upgrade find-and-replace@0.49.0 2013-11-22 15:18:43 -08:00
Ben Ogle 3f75512de2 Tooltips can now override the default options 2013-11-22 15:15:05 -08:00
Ben Ogle 5910b05344 Use my fork of bootstrap for now
I added some things to tooltips that we need. Namely, fitting them within the viewport.
2013-11-22 15:15:05 -08:00
Kevin Sawicki 7f039b3383 Update confirmSync references in specs 2013-11-22 15:09:47 -08:00
Kevin Sawicki ca35ced587 📝 Use markdown for example 2013-11-22 15:08:18 -08:00
Kevin Sawicki 734ef19f48 Upgrade to tree-view@0.39.0 2013-11-22 15:02:08 -08:00
Kevin Sawicki ef9ce1bf70 Consolidate Atom::confirm/confirmSync
Support both an array and hash of buttons to allow callbacks
optionally.
2013-11-22 15:00:32 -08:00
Kevin Sawicki c754b73b71 📝 Doc what paths are returned 2013-11-22 14:39:27 -08:00
Kevin Sawicki 21565332a4 Use fs-plus to get home directory path 2013-11-22 14:39:27 -08:00
Kevin Sawicki 8871d9cd2d Remove unused Atom::getTempDirPath 2013-11-22 14:39:26 -08:00
Kevin Sawicki 64f0fcc839 📝 Add docs to Atom class 2013-11-22 14:39:26 -08:00
Nathan Sobo 581d12b04f Upgrade to Telepath 0.45.0 for references and to debug #1153
I downgraded back to 0.38.0 after a brief period on 0.44.0 in which I
saw issues. 0.44.0 is a pretty big jump that introduces reference
semantics. I've since only seen issue #1153, which @mcolyer saw at
version 0.38.0 as well. 0.45.0 throws an exception at the moment I think
markers are getting into a bad state, so hopefully it should help us
debug the problem.
2013-11-22 16:52:10 -05:00
Kevin Sawicki 05a9ace3e6 📝 Add period to comment 2013-11-22 13:43:43 -08:00
Kevin Sawicki 03eac362f6 📝 Add missing colon to Private 2013-11-22 13:39:24 -08:00
Kevin Sawicki 8a05b0f51d 📝 Mark setDigest as private 2013-11-22 13:31:27 -08:00
Matt Colyer 4069d23d86 📝 Indicate how to access DeserializerManager 2013-11-22 14:53:08 -05:00
Kevin Sawicki 78b48345ac Update reference to renamed param 2013-11-22 11:52:21 -08:00
Matt Colyer 139e2f6de0 :note: Mark ContextMenu as private 2013-11-22 14:49:10 -05:00
Kevin Sawicki ed86b4a478 📝 Mark EditorView public 2013-11-22 11:48:00 -08:00
Kevin Sawicki f2352131cc 📝 Mark SiteShim private 2013-11-22 11:45:36 -08:00
Kevin Sawicki 56df435fb8 📝 Mark ::get as private and tweak comments 2013-11-22 11:43:52 -08:00
Kevin Sawicki 595ff19b5b 📝 Mark LessCompileCache class private 2013-11-22 11:40:52 -08:00
Kevin Sawicki 33eb0bae8f 📝 Add docs to all public methods 2013-11-22 11:37:29 -08:00
Kevin Sawicki fde1560377 📝 doc PackageManager as public 2013-11-22 10:59:43 -08:00
Kevin Sawicki a640d07599 Merge pull request #1151 from atom/ks-remove-global-functions
Remove global functions
2013-11-22 10:26:35 -08:00
Kevin Sawicki 45b65cd3aa Organize imports 2013-11-22 10:13:59 -08:00
Kevin Sawicki f217278001 Move editor window helpers to Atom class 2013-11-22 10:13:59 -08:00
Kevin Sawicki 3320176a0a Move atom/apm install helpers to CommandInstaller 2013-11-22 10:13:59 -08:00
Kevin Sawicki 754b5a6004 Remove unused requires 2013-11-22 10:13:59 -08:00
Kevin Sawicki 79b84b2433 Move window.deserializeEditorWindow to Atom class 2013-11-22 10:13:59 -08:00
Kevin Sawicki 17be036ff8 Move window.setUpEnvironment to Atom class 2013-11-22 10:13:59 -08:00
Ben Ogle 23deec833f Upgrade to bootstrap 3.0.2 2013-11-22 10:11:24 -08:00
Ben Ogle 6a8d0bef4a Merge branch 'master' of github.com:atom/atom 2013-11-22 10:03:06 -08:00
Ben Ogle d5ce1a0312 Add more chars to the shortcut parser 2013-11-22 10:02:52 -08:00
Kevin Sawicki 74decbd18a Upgrade to terminal@0.22.0 refs #1150 2013-11-22 09:33:17 -08:00
Matt Colyer 085806f97f Upgrade terminal@0.21.0 2013-11-22 10:12:19 -05:00
Matt Colyer ca8be83903 Upgrade terminal@0.20.0 2013-11-22 09:46:59 -05:00
Matt Colyer da713da311 Merge pull request #1147 from atom/pass-original-event
Pass originalEvent property on command events
2013-11-22 06:19:36 -08:00
Kevin Sawicki 7a6c75a83e Refresh cache when core.themes changes
Previously this wasn't needed because a new cache was created for each
stylesheet loaded.
2013-11-21 17:46:29 -08:00
Kevin Sawicki 3e7a517c25 Add missing @ before lessCache lazy initialization 2013-11-21 17:03:10 -08:00
Kevin Sawicki e623ef4232 Upgrade to exception-reporting@0.8.0 2013-11-21 16:56:24 -08:00
Ben Ogle 18399aa264 Replace keystrokes in tooltips 2013-11-21 16:53:38 -08:00
Kevin Sawicki 2a5f393712 Use resource path from atom.getLoadSettings() 2013-11-21 16:32:12 -08:00
Kevin Sawicki 27f779ec03 Merge pull request #1149 from atom/ks-user-dot-js
~/.atom/user.js
2013-11-21 16:26:18 -08:00
Kevin Sawicki 5d717eb7bd Load ~/.atom/user.js when available 2013-11-21 16:21:37 -08:00
Kevin Sawicki 0b457fd80a Merge pull request #1148 from atom/ks-remove-resource-path
🔥 window.resourcePath
2013-11-21 16:19:42 -08:00
Kevin Sawicki dd9aa2d02f 💄 Remove extra space 2013-11-21 16:08:27 -08:00
Kevin Sawicki 87b530140b Remove window.resourcePath 2013-11-21 16:08:27 -08:00
Kevin Sawicki 2f46fee1ca Use resource path from load settings 2013-11-21 16:08:27 -08:00
Kevin Sawicki fbb48e7807 Merge pull request #1146 from atom/ks-menu-selectors
Check selectors using webkitMatchesSelector
2013-11-21 16:07:04 -08:00
Ben Ogle 01c141eec6 Upgrade styleguide 2013-11-21 16:05:07 -08:00
Kevin Sawicki 7d9d0c715c 📝 Mention what testEditor simulates 2013-11-21 16:01:55 -08:00
Kevin Sawicki a9887b5007 Remove logging 2013-11-21 16:01:55 -08:00
Kevin Sawicki c4dec72dcd Return early when document.body matches selector 2013-11-21 16:01:55 -08:00
Kevin Sawicki d093d5cc06 Check selectors using webkitMatchesSelector 2013-11-21 16:01:55 -08:00
Ben Ogle 27c9e54538 Upgrade styleguide 2013-11-21 15:44:40 -08:00
Ben Ogle 3bbe6ee98c Merge branch 'master' of github.com:atom/atom 2013-11-21 15:30:13 -08:00
Matt Colyer 524d8e8e21 Merge remote-tracking branch 'origin/master' into pass-original-event 2013-11-21 17:54:54 -05:00
Kevin Sawicki c31211dc21 Full screen window after it is shown and focused
This prevents a blank menu bar from appearing when opening a window
that was previously closed when in full screen mode.

Closes #1144
2013-11-21 14:51:49 -08:00
Matt Colyer 6c1b63d352 Pass originalEvent property on command events
vim-mode needs access to the original keystroke that triggered the
event.
2013-11-21 17:49:07 -05:00
Ben Ogle 6fa7da79eb Provide a defualt 2013-11-21 14:34:49 -08:00
Ben Ogle c2371f3054 Allow passing an htmlElement into requireStylesheet 2013-11-21 14:32:48 -08:00
Kevin Sawicki 2349627e3c Tweak modifier order in spec 2013-11-21 13:56:12 -08:00
Kevin Sawicki 90d92a4c92 Upgrade to go-to-line@0.10.0 for atom prefix fixes 2013-11-21 13:46:54 -08:00
Matt Colyer 66171e0301 Modifiers need to be added in alphabetical order 2013-11-21 16:17:37 -05:00
Kevin Sawicki cdc7f70b22 Pass buffer from event to TextBuffer::removeBuffer
Previously only the last buffer would be destroyed since the buffer
from the loop variable was being used.
2013-11-21 13:04:47 -08:00
Matt Colyer e225dbe93d Merge pull request #1130 from atom/meta-to-command
Use `cmd` instead of `meta`
2013-11-21 12:41:31 -08:00
Kevin Sawicki 7dc18765ad Call serializeForPersistence instead of serialize 2013-11-21 11:29:05 -08:00
Matt Colyer c1d379fd6c Update packages for updated keymaps 2013-11-21 14:07:38 -05:00
Matt Colyer a754ac4da0 Revert "Alias meta to cmd in keymaps"
This reverts commit f0aa408b70.
2013-11-21 13:08:12 -05:00
Kevin Sawicki 21560df2f0 Add platform class to selectors array 2013-11-21 09:19:33 -08:00
Matt Colyer f0aa408b70 Alias meta to cmd in keymaps 2013-11-21 10:38:13 -05:00
Matt Colyer 161c9a62b5 Merge branch 'master' into meta-to-command
Conflicts:
	spec/keymap-spec.coffee
2013-11-21 09:59:49 -05:00
Nathan Sobo 2c5bbcbc22 Merge branch 'ns-fix-telepath' 2013-11-20 22:08:00 -07:00
Nathan Sobo eee72f7664 Drop back to telepath 0.38.0 until I figure out what's going on 2013-11-20 21:59:52 -07:00
Nathan Sobo 073d398e6f Upgrade telepath to 0.43.0 so we don't serialize orphans 2013-11-20 21:18:08 -07:00
Kevin Sawicki 2310e263a7 Upgrade to tabs@0.11.0 refs #1143 2013-11-20 19:30:50 -08:00
Kevin Sawicki de7b212d99 Change cancel to off for consistency with emissary 2013-11-20 19:07:56 -08:00
Kevin Sawicki 75873ef6b3 Upgrade apm for develop command running install 2013-11-20 18:58:44 -08:00
Kevin Sawicki 73855a49fc Merge pull request #1142 from atom/ks-remove-fs-shims
Remove fs-plus shims
2013-11-20 18:26:09 -08:00
Kevin Sawicki cae055fd3f Upgrade to tree-view@0.37.0 2013-11-20 18:21:09 -08:00
Kevin Sawicki 2aad31c4dc Upgrade to find-and-replace@0.47.0 2013-11-20 18:08:46 -08:00
Kevin Sawicki 93052ad611 Upgrade to fuzzy-finder@0.24.0 2013-11-20 18:06:31 -08:00
Kevin Sawicki 67733b8b05 Upgrade to git-diff@0.16.0 2013-11-20 18:04:07 -08:00
Kevin Sawicki 21543569ef Upgrade to package-generator@0.21.0 2013-11-20 18:01:42 -08:00
Kevin Sawicki 7371ebbf20 Upgrade to status-bar@0.22.0 2013-11-20 18:00:05 -08:00
Kevin Sawicki 73470cc294 Upgrade to symbols-view@0.23.0 2013-11-20 17:58:00 -08:00
Kevin Sawicki 1e60b5fa3b Upgrade to archive-view@0.14.0 2013-11-20 17:56:45 -08:00
Kevin Sawicki 172ecbd897 Upgrade to tree-view@0.36.0 2013-11-20 17:54:35 -08:00
Kevin Sawicki 289cc24b56 Remove fs shims 2013-11-20 17:48:10 -08:00
Kevin Sawicki a20483ccdb Merge pull request #1140 from atom/ks-remove-project-root-view-globals
Remove project/rootView globals
2013-11-20 17:34:44 -08:00
Kevin Sawicki b2ceaf3b8b Upgrade packages for missing atom prefix fixes 2013-11-20 17:29:01 -08:00
Kevin Sawicki 1c3c508985 Upgrade apm for new package templates 2013-11-20 17:23:48 -08:00
Kevin Sawicki 645f4ad907 📝 Add atom prefix package example 2013-11-20 17:23:48 -08:00
Kevin Sawicki 05dd6f8f17 Upgrade to fuzzy-finder@0.23.0 2013-11-20 17:23:48 -08:00
Kevin Sawicki b19390b519 Add missing atom prefix to rootView and project 2013-11-20 17:23:48 -08:00
Kevin Sawicki a3f339e0c3 Correct order of refresh steps 2013-11-20 17:23:48 -08:00
Kevin Sawicki 42040e14b3 Add atom prefix to rootView and project 2013-11-20 17:23:48 -08:00
Kevin Sawicki 91640f0886 Add atom prefix to project references 2013-11-20 17:23:47 -08:00
Kevin Sawicki 0377d64788 Assign to atom.project instead of window.project 2013-11-20 17:23:47 -08:00
Kevin Sawicki cd37caae96 Add atom prefix to rootView 2013-11-20 17:23:47 -08:00
Kevin Sawicki aab63c26e7 Add atom prefix to project 2013-11-20 17:23:47 -08:00
Kevin Sawicki 6da6101a52 Upgrade packages for project/rootView global fixes 2013-11-20 17:23:47 -08:00
Kevin Sawicki 87b33648dc Use project passed in via options hash 2013-11-20 17:23:47 -08:00
Kevin Sawicki d0b380e535 Add atom prefix to rootView and project references 2013-11-20 17:23:47 -08:00
Kevin Sawicki 99480901e2 Add missing atom prefix 2013-11-20 17:23:47 -08:00
Kevin Sawicki 6852720408 Add atom prefix to project references 2013-11-20 17:23:47 -08:00
Kevin Sawicki f9498732a5 Add atom prefix to rootView 2013-11-20 17:23:47 -08:00
Kevin Sawicki e4aa82fda1 Remove window.rootView shims 2013-11-20 17:23:47 -08:00
Kevin Sawicki bc1a743b2f Remove project and rootView from window 2013-11-20 17:23:47 -08:00
Ben Ogle 3fe22aa5c8 Set font sizes 2013-11-20 17:11:50 -08:00
Ben Ogle fe035d4d7c Merge pull request #1141 from atom/bo-jquery-extensions
Add setTooltip jquery function
2013-11-20 17:11:21 -08:00
Ben Ogle e8bfb7ca09 Fix up things for kevin 2013-11-20 17:10:57 -08:00
Ben Ogle 4bfd48b983 Add setTooltip jquery function 2013-11-20 16:55:50 -08:00
Nathan Sobo 5a1fadf7ce Merge branch 'ns-telepath-references' 2013-11-20 17:12:06 -07:00
Ben Ogle 819ac9ea68 Add keyBindingsForCommandMatchingElement to keymap 2013-11-20 15:43:02 -08:00
Nathan Sobo 6384841134 Upgrade to telepath 0.42.0 for references 2013-11-20 16:23:04 -07:00
Paul Betts a0fbec29c3 Merge pull request #1137 from atom/windows-fonts
Set up Windows font fallbacks
2013-11-20 15:14:21 -08:00
Ben Ogle 238fca2004 upgrade status-bar and grammar-selector
Use the status bar api in grammar-selector
2013-11-20 14:52:19 -08:00
Kevin Sawicki 014beda455 Merge pull request #1138 from atom/ks-remove-deserializer-shims
Remove deserializer shims
2013-11-20 14:51:03 -08:00
Kevin Sawicki 777df644ce Upgrade to markdown-preview@0.18.0 2013-11-20 14:40:04 -08:00
Kevin Sawicki f3ea3a3395 Add missing atom.deserializers prefix 2013-11-20 14:33:55 -08:00
Kevin Sawicki b82fdace61 Add missing atom.deserializers prefix 2013-11-20 14:26:56 -08:00
Kevin Sawicki 7195102a04 Upgrade to find-and-replace@0.45.0 2013-11-20 14:19:47 -08:00
Kevin Sawicki 5ec6a4a189 Use atom.deserializers directly 2013-11-20 14:18:38 -08:00
Kevin Sawicki e330b1a2e8 Use atom.deserializers directly 2013-11-20 14:16:38 -08:00
Kevin Sawicki 5334433bc2 Upgrade to tabs@0.10.0 2013-11-20 14:13:54 -08:00
Kevin Sawicki 366a12903a Deserialize using atom.deserializers 2013-11-20 14:13:13 -08:00
Kevin Sawicki 063cb04fb5 Upgrade to styleguide@0.11.0 2013-11-20 14:10:00 -08:00
Kevin Sawicki d9c2f07fbe Use atom.deserializers directly 2013-11-20 14:09:44 -08:00
Kevin Sawicki 5c1fa8e53d Upgrade to terminal@0.18.0 2013-11-20 14:07:08 -08:00
Kevin Sawicki a1f3540cb4 Call deserialize on deserializers ivar 2013-11-20 14:00:51 -08:00
Kevin Sawicki 2eeb399cf1 Remove deserializer shims on window 2013-11-20 13:51:12 -08:00
Kevin Sawicki 71e8e865f2 Merge pull request #1131 from atom/ks-remove-shims
Remove shims
2013-11-20 13:42:11 -08:00
Paul Betts 9f080be6e1 Add Courier New as a last-chance fallback 2013-11-20 13:21:30 -08:00
Kevin Sawicki 56f66f8578 Upgrade to release-notes@0.12.0 2013-11-20 12:49:16 -08:00
Kevin Sawicki 0b1dc704ea Upgrade to tabs@0.9.0 2013-11-20 12:49:16 -08:00
Kevin Sawicki 578d823118 Upgrade to find-and-replace@0.44.0 2013-11-20 12:49:16 -08:00
Kevin Sawicki 0196f2a2eb Upgrade to dev-live-reload@0.16.0 2013-11-20 12:49:16 -08:00
Kevin Sawicki 1e68a7266f Add atom prefix to keymap global 2013-11-20 12:49:16 -08:00
Kevin Sawicki 093143f7a9 Upgrade to symbols-view@0.21.0 2013-11-20 12:49:16 -08:00
Kevin Sawicki 4eeef9cfbd Upgrade packages for shim removal fixes 2013-11-20 12:49:15 -08:00
Kevin Sawicki ce3ec75c55 Remove remaining package manager shims 2013-11-20 12:49:15 -08:00
Kevin Sawicki bb09de9703 Upgrade to wrap-guide@0.6.0 for spec fixes 2013-11-20 12:48:50 -08:00
Kevin Sawicki e64ba18fe3 Upgrade to visual-bell@0.4.0 for atom global fixes 2013-11-20 12:48:50 -08:00
Kevin Sawicki 3908f81fc6 Upgrade to spell-check@0.14.0 for spec fixes 2013-11-20 12:48:06 -08:00
Kevin Sawicki fac46a295c Add shim for rootView on either atom or window 2013-11-20 12:48:06 -08:00
Kevin Sawicki b01470a738 Upgrade to settings-view@0.44.0 for config fixes 2013-11-20 12:48:06 -08:00
Kevin Sawicki f3be613662 Add atom prefix to config global 2013-11-20 12:48:06 -08:00
Kevin Sawicki ede29d99c1 Access package manager via atom.packages 2013-11-20 12:48:05 -08:00
Kevin Sawicki d2369e94c8 Add atom prefix to config reference 2013-11-20 12:48:05 -08:00
Kevin Sawicki dbe3399016 Upgrade to autoflow@0.6.0 for global fixes 2013-11-20 12:48:05 -08:00
Kevin Sawicki 3952423d99 Access package manager methods on atom.packages 2013-11-20 12:48:05 -08:00
Kevin Sawicki ffdcecc0f2 Remove unused package manager shims on atom 2013-11-20 12:48:05 -08:00
Kevin Sawicki 0069eb4d0d Remove atom.isPackageActive shim 2013-11-20 12:48:05 -08:00
Kevin Sawicki 5fa55026d5 Call loadPackage on atom.packages 2013-11-20 12:48:05 -08:00
Kevin Sawicki 6d04d57e74 Remove atom.loadPackage shim 2013-11-20 12:48:05 -08:00
Kevin Sawicki 3f0dca5a40 Remove unused package managers shims 2013-11-20 12:48:05 -08:00
Kevin Sawicki 8b14a66e2c Upgrade to settings-view@0.43.0 2013-11-20 12:48:05 -08:00
Kevin Sawicki 1607411df1 Upgrade to timecop@0.10.0 2013-11-20 12:48:05 -08:00
Kevin Sawicki dade9f6309 Upgrade to metrics@0.12.0 2013-11-20 12:48:05 -08:00
Kevin Sawicki 568aa1d396 Remove some package manager shims on atom global 2013-11-20 12:48:05 -08:00
Kevin Sawicki 9febe179fa Remove unused deserializer shims 2013-11-20 12:48:04 -08:00
Kevin Sawicki c9e68ab044 Remove window.config shim from spec helper 2013-11-20 12:48:04 -08:00
Kevin Sawicki 285186567a Upgrade to status-bar@0.18.0 for syntax global fixes 2013-11-20 12:48:04 -08:00
Kevin Sawicki 1c136f16e3 Upgrade to keybind-resolve@0.4.0 for rootView fix 2013-11-20 12:48:04 -08:00
Kevin Sawicki 534a2d4565 Upgrade to markdown-preview@0.17.0 for atom prefix on globals 2013-11-20 12:48:04 -08:00
Kevin Sawicki 9e814de969 Remove window.config shim 2013-11-20 12:48:04 -08:00
Kevin Sawicki 7202ba274a Upgrade to status-bar@0.17.0 for atom.syntax usage 2013-11-20 12:48:04 -08:00
Kevin Sawicki 46e85fac87 Remove window.syntax shim 2013-11-20 12:48:04 -08:00
Kevin Sawicki d1f1b494cf Remove window.keymap shim 2013-11-20 12:48:04 -08:00
Kevin Sawicki f11803df60 Remove window.site shim 2013-11-20 12:48:04 -08:00
Paul Betts f094a86ae7 Initial hack of proper Windows fonts 2013-11-20 12:47:32 -08:00
Ben Ogle a6c791ce39 Upgrade to tree-view@0.34.0 2013-11-20 11:40:08 -08:00
Matt Colyer dfa870f514 Merge branch 'master' into meta-to-command
Conflicts:
	keymaps/win32.cson
2013-11-20 10:19:12 -08:00
Corey Johnson a98377b899 Merge pull request #1132 from atom/cj-editor-rename
Editor & EditSession rename
2013-11-20 10:11:09 -08:00
probablycorey c3de3d8eea Update documentation 2013-11-20 10:04:28 -08:00
probablycorey 2d15f5e49a Remove pathForRepositoryUrl from atom exports 2013-11-20 10:03:06 -08:00
Matt Colyer 56386cb06a Upgrade atom-shell@0.6.11 2013-11-20 08:48:03 -08:00
Ben Ogle 986a7ad5c3 Merge pull request #1135 from atom/workspace-class
Use `.workspace` rather than `body` for keybindings
2013-11-19 18:50:43 -08:00
Kevin Sawicki 9a01b5a6bf Use Date.now() 2013-11-19 17:15:25 -08:00
Matt Colyer ccafda6f7f Keep .platform-<platform> rather than .workspace-<platform> 2013-11-19 17:03:16 -08:00
Matt Colyer 33538a5ed7 Use .workspace rather than body for keybindings 2013-11-19 16:57:10 -08:00
Ben Ogle aae85cd7c1 Upgrade to find-and-replace@0.43.0 2013-11-19 16:56:32 -08:00
Matt Colyer ce098e587f Reduce specificity of platform keybindings 2013-11-19 16:46:46 -08:00
Kevin Sawicki 233d819e04 Add atom prefix to syntax global 2013-11-19 16:37:50 -08:00
Kevin Sawicki fbbf3d177a Upgrade to whitespace@0.9.0 2013-11-19 16:33:46 -08:00
probablycorey c33bd34996 Add reverse compatability for Editor creation 2013-11-19 16:22:29 -08:00
probablycorey 34cdb23d71 Remove file
I didn't mean to check this file in.
2013-11-19 15:57:41 -08:00
probablycorey fcedcd117d Merge remote-tracking branch 'origin/master' into cj-editor-rename 2013-11-19 15:55:20 -08:00
Matt Colyer 3d7de21d6c Replicate command keybindings on windows 2013-11-19 15:53:43 -08:00
Matt Colyer 2278ee742a Merge remote-tracking branch 'origin/master' into meta-to-command 2013-11-19 15:35:31 -08:00
Matt Colyer 55e90f8ae1 Use cmd instead of command 2013-11-19 15:29:37 -08:00
probablycorey 2ca738453b Update benchmarks 2013-11-19 15:24:50 -08:00
probablycorey 31a9bb83cf Replace editSession variables with editor 2013-11-19 15:22:47 -08:00
Matt Colyer 1e4504e7f3 Use command instead of meta 2013-11-19 15:16:55 -08:00
probablycorey bf05ddb958 🔫
I screwed up a rebase, this nasty commit is the result.
2013-11-19 15:15:12 -08:00
probablycorey 756c2be64a Replace editor instance variables with editorView 2013-11-19 14:57:35 -08:00
probablycorey 6fdd4f775b Rename TextEditor and TextEditorView to Editor and EditorView 2013-11-19 14:57:35 -08:00
probablycorey 625fcaffc8 Update TextEditor specs 2013-11-19 14:57:31 -08:00
probablycorey 955d379e0e Rename EditSession to TextEditor 2013-11-19 14:56:09 -08:00
Kevin Sawicki 0d71f20073 Upgrade to gists@0.8.0 for pasteboard fix 2013-11-19 14:43:28 -08:00
Kevin Sawicki 42c40e8c7a Upgrade to to-the-hubs@0.11.0 for pasteboard fix 2013-11-19 14:39:44 -08:00
probablycorey 89212e599f Update requires 2013-11-19 14:34:26 -08:00
probablycorey 95e4ac903c Use Range literals 2013-11-19 14:34:26 -08:00
probablycorey 311155ac0d Rename editor-spec to text-editor-view-spec 2013-11-19 14:34:26 -08:00
probablycorey aaa82e23da Rename Editor to TextEditorView 2013-11-19 14:34:20 -08:00
Kevin Sawicki 8e46bc5241 Add shim for atom.rootView vs. window.rootView 2013-11-19 14:15:47 -08:00
Matt Colyer 37a5a6f501 Merge pull request #1117 from atom/platform-keybindings
Platform keybindings
2013-11-19 14:10:53 -08:00
Kevin Sawicki 83f14c137c Remove window.pasteboard shim 2013-11-19 14:03:44 -08:00
Matt Colyer b0b458b1f6 Review remaining global bindings 2013-11-19 13:53:10 -08:00
Kevin Sawicki f4de124aa6 Add atom prefix to rootView reference 2013-11-19 13:34:01 -08:00
Kevin Sawicki 4b0eaf05a5 Remove Emitter::trigger shim 2013-11-19 13:24:29 -08:00
Kevin Sawicki 03e8bc6f19 Remove Emitter::one shim 2013-11-19 12:58:56 -08:00
Kevin Sawicki 13186fcf7a Remove Emitter::subscriptionCount shim 2013-11-19 12:55:18 -08:00
Kevin Sawicki fea0f1f90a 📝 atom.project instead of global.project 2013-11-19 12:30:05 -08:00
Matt Colyer b449bb4444 Fix update-atom-shell task when using the keychain 2013-11-19 12:21:12 -08:00
Matt Colyer fe6b40fc5d Merge branch 'master' into platform-keybindings 2013-11-19 11:58:48 -08:00
Matt Colyer 82e3935ae3 Guard against undefined labels 2013-11-19 11:57:59 -08:00
Matt Colyer 32a3b6302c Use document.body to be concise 2013-11-19 11:21:50 -08:00
Matt Colyer 6157fcaf73 Merge branch 'master' into platform-keybindings 2013-11-19 11:11:32 -08:00
Matt Colyer ab74d8be38 Merge pull request #1115 from atom/refine-paste-normalization
Don't normalize indents on paste if there are preceding characters, fixes #1112
2013-11-19 10:54:44 -08:00
Kevin Sawicki 886a2aa867 Remove pathForRepositoryUrl from exports 2013-11-19 10:26:33 -08:00
Kevin Sawicki aeaa76a9e1 Remove Site from exports 2013-11-19 10:25:42 -08:00
Kevin Sawicki 6a7bcb6f52 Prepare next release 2013-11-19 09:31:13 -08:00
Kevin Sawicki ee1ec4670d Listen for destroyed events on deserialized buffers 2013-11-19 09:08:24 -08:00
Kevin Sawicki 7e0af4c575 Prepare next release 2013-11-18 18:49:23 -08:00
Kevin Sawicki f55a200591 Return emissary subscription directly 2013-11-18 18:41:43 -08:00
Kevin Sawicki 89d8eac091 Remove console.log statement 2013-11-18 16:09:25 -08:00
probablycorey 5011b6e78f Remove atom argument from activate 2013-11-18 15:50:36 -08:00
probablycorey d6e67c5b32 Update find-and-replace 2013-11-18 15:10:13 -08:00
Ben Ogle de547e20c2 Oops 2013-11-18 15:07:49 -08:00
Ben Ogle 2b79b19330 Upgrade ui themes and style guide to style progress bars 2013-11-18 15:05:52 -08:00
Matt Colyer 2b234545b5 Merge pull request #1116 from atom/windows-menus
Make Windows menus more Native(tm), fixes #1085
2013-11-18 11:08:04 -08:00
Kevin Sawicki a66543048b Include buffer in emitted events 2013-11-18 10:06:14 -08:00
Kevin Sawicki ca96aa2804 📝 doc what DisplayBuffer::getGrammar returns 2013-11-18 09:30:56 -08:00
Kevin Sawicki 316571308a Remove unused ws dependency 2013-11-15 15:34:52 -08:00
Matt Colyer b323d9ce18 Rename hasNoPrecedingCharacters => hasPrecedingCharactersOnLine 2013-11-15 15:32:24 -08:00
Corey Johnson 0e1c757cd0 Merge pull request #1119 from atom/cj-keymap-cleanup
Keymap cleanup
2013-11-15 14:42:20 -08:00
probablycorey 084bbb1578 Use skinny arrow 2013-11-15 14:35:02 -08:00
probablycorey 7c348ee478 Update packages 2013-11-15 14:25:48 -08:00
probablycorey a0c6a94409 Added documentation for Keymap's public classes 2013-11-15 14:23:52 -08:00
probablycorey 80cdf61fa4 Update remove spec 2013-11-15 14:09:24 -08:00
probablycorey 29c3fadb6f Move public methods to top of file 2013-11-15 14:07:01 -08:00
probablycorey 1ae3806c69 Use source instead of name 2013-11-15 14:06:03 -08:00
probablycorey 98b509441c Move methods into KeyBinding class 2013-11-15 14:05:35 -08:00
probablycorey 02f40688e2 Merge remote-tracking branch 'origin/master' into cj-keymap-cleanup 2013-11-15 13:53:42 -08:00
probablycorey cb8e378af6 Use keyBinding in place of binding in method names 2013-11-15 13:49:17 -08:00
Kevin Sawicki babc4732b8 Merge pull request #1111 from atom/ks-extend-model
Extend telepath.Model
2013-11-15 13:43:23 -08:00
probablycorey dcccde8f3f Clone default keybindings in specs 2013-11-15 13:32:31 -08:00
probablycorey 8ed4923e58 Replace binding-set with key-binding 2013-11-15 13:32:09 -08:00
probablycorey 529c829438 💄 2013-11-15 11:54:18 -08:00
probablycorey 809a02ca10 Clone keyBindings by default 2013-11-15 11:54:09 -08:00
probablycorey b9902cb6f2 Add specs 2013-11-15 11:50:55 -08:00
Kevin Sawicki de4d3dbbe9 Create new project when state doesn't return a Project 2013-11-15 11:37:25 -08:00
Kevin Sawicki 3fe88c4df1 💄 Add period to comment 2013-11-15 11:17:35 -08:00
Kevin Sawicki 20811a9f52 📝 Mention which methods are telepath hooks 2013-11-15 11:17:35 -08:00
Kevin Sawicki b137f1a3e3 Upgrade to emissary@0.17.0 2013-11-15 11:17:35 -08:00
Kevin Sawicki 0b12f01206 Use Project::bufferForPathSync instead of buildBufferSync 2013-11-15 11:17:35 -08:00
Kevin Sawicki 1d7b4c5f9a Updating places still using Buffer instead of TextBuffer 2013-11-15 11:17:35 -08:00
Kevin Sawicki e2d4b58d5f Remove unused Range 2013-11-15 11:17:35 -08:00
Kevin Sawicki 1c8df2c0b5 💄 Organize imports in TextBuffer 2013-11-15 11:17:35 -08:00
Kevin Sawicki 9067c65a41 Use Atom::replicate to test serialization 2013-11-15 11:17:35 -08:00
Kevin Sawicki 1d4f2fba8b Use id provide by telepath.Model 2013-11-15 11:17:34 -08:00
Kevin Sawicki 12dd412439 Restore relative path as uri of TextBuffer 2013-11-15 11:17:34 -08:00
Kevin Sawicki 19d680544b Use Atom::replicate to obtain second project 2013-11-15 11:17:34 -08:00
Kevin Sawicki a45dd3fe37 Register deepest model classes first 2013-11-15 11:17:34 -08:00
Kevin Sawicki f6c8a435ae Upgrade to telepath@0.37.0 2013-11-15 11:17:34 -08:00
Kevin Sawicki 93bfe0edf6 Store path when set in project 2013-11-15 11:17:34 -08:00
Kevin Sawicki d3fed57cb3 Only serialize project state for persistence 2013-11-15 11:17:34 -08:00
Kevin Sawicki 8372adb38a Remove spec for removed TextBuffer::getRelativePath 2013-11-15 11:17:34 -08:00
Kevin Sawicki e4b3d3a83c Call getValues() when iterating over buffers 2013-11-15 11:17:34 -08:00
Kevin Sawicki 11f1ef9d8b Destroy unretained buffers in beforePersistence 2013-11-15 11:17:34 -08:00
Kevin Sawicki 7d87ae00ff Use Atom::replicate for second project 2013-11-15 11:17:34 -08:00
Kevin Sawicki 3ec2378242 Access project from atom global 2013-11-15 11:17:34 -08:00
Kevin Sawicki 28943a35da Use getWindowState instead of referencing window state directly 2013-11-15 11:17:34 -08:00
Kevin Sawicki 7b43c8a860 Use Atom::replicate in git spec to simulate project serialization 2013-11-15 11:17:33 -08:00
Kevin Sawicki 8b17b7eca9 Remove unused repoUrl property 2013-11-15 11:17:33 -08:00
Kevin Sawicki 6432cda691 Upgrade to telepath@0.35.0 2013-11-15 11:17:33 -08:00
Kevin Sawicki cf0bdb9c94 Remove unused property 2013-11-15 11:17:33 -08:00
Kevin Sawicki 34f1472653 Use getValues() when iterating over buffers 2013-11-15 11:17:33 -08:00
Kevin Sawicki a475e27cd4 Call createAsRoot for mini editor's buffer 2013-11-15 11:17:33 -08:00
Kevin Sawicki abc1f23516 Remove unused relative path from Editor/EditSession/TextBuffer 2013-11-15 11:17:33 -08:00
Kevin Sawicki dc7e7f9ed0 Listen for buffer destroyed in Project 2013-11-15 11:17:33 -08:00
Kevin Sawicki 5fdec4dc7b Move checkoutHead implementation to Editor 2013-11-15 11:17:33 -08:00
Kevin Sawicki 618d281d6c Restore buffer.release() call to previously location 2013-11-15 11:17:33 -08:00
Kevin Sawicki 055ec8cb9c Implement beforePersistence in TextBuffer 2013-11-15 11:17:33 -08:00
Kevin Sawicki df3fe90c89 Upgrade to telepath@0.33.0 2013-11-15 11:17:33 -08:00
Kevin Sawicki 21e0e95a7a Add model property for disk contents digest 2013-11-15 11:17:33 -08:00
Kevin Sawicki 6caed6e918 Add model property for relative path 2013-11-15 11:17:32 -08:00
Kevin Sawicki 7dd84636ba Use Project::addBuffer instead of window.deserialize 2013-11-15 11:17:32 -08:00
Kevin Sawicki b12954760d Use Project::addBuffer instead of ::openSync 2013-11-15 11:17:32 -08:00
Kevin Sawicki 4bb21fd9ec Use project.addBuffer instead of window.deserialize 2013-11-15 11:17:32 -08:00
Kevin Sawicki 11787e5a5d Return added buffer from Project::addBufferAtIndex 2013-11-15 11:17:32 -08:00
Kevin Sawicki 276e63611a Register buffer with project 2013-11-15 11:17:32 -08:00
Kevin Sawicki 957374eb40 Call telepath.Array::getValues() during clone 2013-11-15 11:17:32 -08:00
Kevin Sawicki fe9f1373c1 Cancel stopped changing timeout when destroyed 2013-11-15 11:17:32 -08:00
Kevin Sawicki 6290c19264 Set up spec Project as telepath model 2013-11-15 11:17:32 -08:00
Kevin Sawicki 913bb82d6e Remove debug logging 2013-11-15 11:17:32 -08:00
Kevin Sawicki ffc936ca4d Use telepath.Document::registerModelClasses 2013-11-15 11:17:32 -08:00
Kevin Sawicki 1808e5f991 Initial 🔪 at extending telepath.Model in Project/TextBuffer 2013-11-15 11:17:32 -08:00
Kevin Sawicki 62feefd28d Upgrade to emissary@0.15.0 2013-11-15 11:17:31 -08:00
Kevin Sawicki ada992be4d Upgrade to telepath@0.29.0 2013-11-15 11:17:31 -08:00
Kevin Sawicki f8933cfeab Upgrade to pathwatcher@0.10.0, refs atom/tree-view#17 2013-11-15 11:14:52 -08:00
probablycorey 0878d7ab6a Update specs 2013-11-15 10:45:21 -08:00
probablycorey bd8e19bce7 Update keymap in spec-helper 2013-11-15 10:43:20 -08:00
probablycorey 4852ba6d95 Don't store binding sets, instead store a keyBinding array 2013-11-15 10:21:38 -08:00
Kevin Sawicki caffcafe2e 🙉 Ignore stdout from installation of apm 2013-11-15 09:54:36 -08:00
probablycorey c7a1205ca6 Remove Editor:bindToKeyedEvent 2013-11-15 09:39:26 -08:00
probablycorey 2c4f94c319 Merge remote-tracking branch 'origin/master' into cj-keymap-cleanup 2013-11-15 09:24:45 -08:00
Corey Johnson 941fc97e79 Merge pull request #1118 from atom/cj-less-verbose-grunt
Less verbose grunt
2013-11-15 09:05:11 -08:00
probablycorey 8788b2a51c Add keybinding-resolver to default package list 2013-11-14 16:49:09 -08:00
probablycorey ca8ae9ad61 Remove bindingsForElement 2013-11-14 16:45:09 -08:00
probablycorey 2fb00af255 Rename keyMapping to keyBinding 2013-11-14 16:20:35 -08:00
Kevin Sawicki f6ce0f038f Prepare 36.0.0 release 2013-11-14 16:06:45 -08:00
probablycorey 94a8d16664 Update specs 2013-11-14 16:05:17 -08:00
probablycorey fc0a46d6b2 Add mappingsForKeystrokeMatchingElement 2013-11-14 16:05:10 -08:00
probablycorey fd443a8b68 Reorder args 2013-11-14 16:05:01 -08:00
probablycorey c43f277c5b Remove getAllKeyMappings 2013-11-14 14:46:21 -08:00
probablycorey dd0938dca6 Merge remote-tracking branch 'origin/master' into cj-keymap-cleanup 2013-11-14 14:43:37 -08:00
probablycorey e90f19da97 Rename keystrokeByCommmand to keystrokesByCommmand 2013-11-14 14:26:25 -08:00
probablycorey c3aea1d149 Remove keymap.keystrokeByCommmandForSelector 2013-11-14 14:18:54 -08:00
Paul Betts 569c3116a8 Add keyboard accelerators 2013-11-14 13:25:58 -08:00
probablycorey 8bdc1d2418 Better error messages 2013-11-14 13:10:31 -08:00
Kevin Sawicki fa1600c53d Use Atom::getConfigDirPath instead of accessing through config 2013-11-14 12:39:16 -08:00
Matt Colyer 6a1e83205f Merge branch 'master' into refine-paste-normalization 2013-11-14 11:23:45 -08:00
Matt Colyer 33891b51f2 Split keybindings by platform 2013-11-14 11:20:40 -08:00
Matt Colyer 1ef821f4e7 Add CSS class indicating platform on body 2013-11-14 11:20:34 -08:00
probablycorey ed030a54c3 Output which package failed 2013-11-14 10:54:49 -08:00
probablycorey 6bb3a69410 Only show stderr if the process fails 2013-11-14 10:54:25 -08:00
probablycorey 53f5e9fbc6 Quite some grunt.log.write 2013-11-14 10:53:19 -08:00
Matt Colyer 1dac1f375c Provide keyboard navigation for base windows menus 2013-11-14 10:39:31 -08:00
Matt Colyer cfab5c619d Use fat arrow when necessary 2013-11-14 10:39:09 -08:00
Matt Colyer b6afc415f8 Merge menu items without regard to platform decorations 2013-11-14 10:31:20 -08:00
Matt Colyer 5454e93168 Make base menus platform dependent
This fixes the most egrerious errors on Windows but there's still room
for improvement.

Refs #1085
2013-11-14 10:15:23 -08:00
probablycorey 389b2bd8d6 Remove spec suite measuring.
This may be a bit aggressive, so we can add it back if people think it
has benifits.
2013-11-14 09:03:58 -08:00
probablycorey 8ea011597c Don't log start time when running specs 2013-11-14 09:01:54 -08:00
probablycorey 21060ae85a Update public keymap interface 2013-11-14 08:33:23 -08:00
Cheng Zhao fe0cc7d273 Upgrade to node-rcedit@0.1.2 2013-11-14 10:37:29 +08:00
probablycorey f67e9b6e03 Treat all calls to grunt.log.writeln as grunt.verbose.writeln 2013-11-13 17:52:22 -08:00
Matt Colyer 64f2cdb795 💄 2013-11-13 17:35:21 -08:00
probablycorey a996597d49 Call grunt.verbose.writeln instead of grunt.log.writeln 2013-11-13 17:24:49 -08:00
Matt Colyer 52680bd63f Don't normalize indents on paste if there are preceding characters 2013-11-13 17:18:43 -08:00
Kevin Sawicki b8f0f1c683 Upgrade to symbols-view@0.19.0 2013-11-13 16:55:21 -08:00
probablycorey 0840de95dc Update settings-view 2013-11-13 16:51:13 -08:00
Kevin Sawicki fe1b2c6d9d Add rimraf used by script/cibuild as dev dependency 2013-11-13 16:25:17 -08:00
Kevin Sawicki 7b307a17ea Upgrade to metrics@0.11.0 for spec fixes 2013-11-13 16:22:45 -08:00
Kevin Sawicki 097571a83d Upgrade to bracket-matcher@0.11.0 for bug fixes 2013-11-13 16:15:20 -08:00
probablycorey 0673ce8e71 Update metrics and exception-reporting packages 2013-11-13 15:48:08 -08:00
probablycorey 967b022fa6 Add atom.getVersion 2013-11-13 15:48:08 -08:00
Matt Colyer e330b8940a Upgrade terminal@0.16.0 2013-11-13 14:44:55 -08:00
probablycorey 526e5311b9 Update exception-reporting package
Uses actor_login as an key (which octolytics requires)
2013-11-13 11:07:02 -08:00
Matt Colyer 3720f0fb8f Merge pull request #1099 from atom/win-package-specs
Get bundled package specs passing on windows, fixes #1097
2013-11-12 16:07:34 -08:00
Matt Colyer 46b108f1cc Upgrade find-and-replace@0.40.0 2013-11-12 16:01:47 -08:00
Matt Colyer aa59002922 Upgrade scandal@0.8.0 2013-11-12 15:42:31 -08:00
Matt Colyer 6af125bd33 Upgrade underscore-plus@0.3.0 2013-11-12 09:37:23 -08:00
Kevin Sawicki d5d2ae63fe Upgrade to bracket-matcher@0.10.0, refs #1110 2013-11-11 22:24:36 -08:00
Cheng Zhao 08f774e57a Merge pull request #1106 from atom/atom-shell-v0.6.10
Update to atom-shell v0.6.10
2013-11-11 19:43:40 -08:00
Matt Colyer 513a964732 Upgrade tree-view@0.30.0 2013-11-11 16:13:18 -08:00
probablycorey 8f9f5ed0ed Update specs 2013-11-11 15:46:17 -08:00
Matt Colyer 001fe5931e Merge branch 'master' into win-package-specs
Conflicts:
	package.json
2013-11-11 14:22:31 -08:00
Matt Colyer c7541f89da Upgrade tree-view@0.29.0 2013-11-11 14:20:41 -08:00
Matt Colyer cb0f3ce2ec Fix path affixing in git.coffee 2013-11-11 14:13:35 -08:00
probablycorey d71e58ec33 Use keystroke even when referring to multiKeystrokes
The use of keystroke and keystrokes was becoming confusing. When I 
started thinking of a keystroke as a set of keys that trigger a
command it became easier to think about.
2013-11-11 14:05:48 -08:00
Kevin Sawicki 5aacccb03b Uppercase that h 2013-11-11 13:18:53 -08:00
Kevin Sawicki 8f63e40ba0 Default packageDependencies outside of try block 2013-11-11 13:05:45 -08:00
Kevin Sawicki 6c09a42545 Call getPackageDependencies from getAvailablePackagePaths 2013-11-11 13:04:04 -08:00
Kevin Sawicki 1cb1387abd Merge pull request #1107 from atom/ks-editor-scroll
Fix editor occasionally going blank
2013-11-11 12:48:08 -08:00
Kevin Sawicki fe426000d0 Bring hidden input into view on focus
Closes #1104
2013-11-11 12:20:30 -08:00
Kevin Sawicki 3617a61ea2 Merge pull request #970 from atom/ks-extract-config
Remove paths from config
2013-11-11 12:18:28 -08:00
Kevin Sawicki c7b5753814 Upgrade to package-generator@0.19.0 2013-11-11 12:09:47 -08:00
Kevin Sawicki 4ce23e4b51 Upgrade to settings-view@0.38.0 2013-11-11 12:08:52 -08:00
Kevin Sawicki c8aeb8ec2d Add PackageManager::isBundledPackage 2013-11-11 12:01:44 -08:00
Kevin Sawicki 0d75bcae48 Add PackageManager::getPackageDirPaths 2013-11-11 11:53:25 -08:00
Kevin Sawicki 81c56ca4f1 Set configDirPath on ThemeManager in specs 2013-11-11 11:47:24 -08:00
Kevin Sawicki fb02917adf Set defaults after spying on save 2013-11-11 11:43:42 -08:00
probablycorey 8c8f1bc048 Make keymap changes backwards compatible 2013-11-11 11:42:11 -08:00
probablycorey 94bc4ce737 Update clear-cut 2013-11-11 11:42:10 -08:00
probablycorey 9914085ead Simplify keymap selector matching 2013-11-11 11:42:10 -08:00
Kevin Sawicki b801c3ce56 Set core/editor config defaults in spec helper 2013-11-11 11:04:24 -08:00
Kevin Sawicki e31dbfd7d6 Store resourcePath as ivar 2013-11-11 10:40:50 -08:00
Kevin Sawicki d4b5303983 Remove remaining package paths from Config class 2013-11-11 10:33:09 -08:00
Kevin Sawicki ad0d0473b3 Add missing paren 2013-11-11 10:33:09 -08:00
Kevin Sawicki 0db23c3e96 🔥 config.bundledMenusDirPath 2013-11-11 10:33:09 -08:00
Kevin Sawicki 0b78450917 🔥 config.bundledKeymapsDirPath 2013-11-11 10:33:09 -08:00
Kevin Sawicki 4b15b98bdd Set RootView/Editor config defaults from startEditorWindow 2013-11-11 10:32:52 -08:00
Kevin Sawicki 572157124e Move storage dir path to Atom 2013-11-11 10:32:17 -08:00
Kevin Sawicki d0e1d32ae9 Use resource path from load settings 2013-11-11 10:32:01 -08:00
Kevin Sawicki 33cb42a3f7 Merge pull request #997 from atom/ks-remove-some-shims
Don't use shims in core
2013-11-11 10:19:19 -08:00
Kevin Sawicki 055109a708 Remove incorrect atom. prefix from filename 2013-11-11 09:57:10 -08:00
Kevin Sawicki 3539288a1e Remove incorrect atom. prefix 2013-11-11 09:29:29 -08:00
Kevin Sawicki 88d80918a7 Use local resource path variable 2013-11-11 09:26:50 -08:00
Kevin Sawicki 0897007662 Remove unneeded @ 2013-11-11 09:26:43 -08:00
Kevin Sawicki 1c4e38c867 Set paths before creating cache 2013-11-11 09:24:14 -08:00
Kevin Sawicki 78617e31bc 💉 resource path into LessCompileCache 2013-11-11 09:20:48 -08:00
Kevin Sawicki a377a49004 Use atom.config instead of window.config 2013-11-11 09:16:44 -08:00
Kevin Sawicki 5756ec45ba Add Config::toggle 2013-11-11 09:06:33 -08:00
Kevin Sawicki 23c8db09b7 💉 paths into Keymap constructor 2013-11-11 09:05:39 -08:00
Kevin Sawicki 9f8a8139e0 Use atom.syntax instead of window.syntax 2013-11-11 08:53:52 -08:00
Kevin Sawicki d793d114d4 Use atom.site instead of window.site 2013-11-11 08:44:26 -08:00
Kevin Sawicki 9b3edc89a6 Use atom.keymap in specs 2013-11-11 08:43:14 -08:00
Kevin Sawicki 58b2a4f98e Use atom.keymap in Editor 2013-11-11 08:43:14 -08:00
Kevin Sawicki f356190b42 Use atom.pasteboard instead of window.pasteboard 2013-11-11 08:43:14 -08:00
Kevin Sawicki 08a81b61a3 Remove atom.packageStates shims 2013-11-11 08:43:14 -08:00
Kevin Sawicki bff47e10f4 Remove dimension shims on window 2013-11-11 08:43:14 -08:00
Cheng Zhao 6dbe86b063 💄 Use @constructor to refer to class name. 2013-11-12 00:42:23 +08:00
Cheng Zhao 21edc61384 Ship PNG format of icon for all platforms. 2013-11-11 21:29:47 +08:00
Cheng Zhao ef0022f4da Set window icon. 2013-11-11 21:27:31 +08:00
Cheng Zhao cbee5efee6 Ship PNG format of icon under windows. 2013-11-11 21:11:32 +08:00
Cheng Zhao 55da08c69e Update to atom-shell v0.6.10. 2013-11-11 20:58:56 +08:00
Kevin Sawicki df7c3d066a Remove unneeded node prefix 2013-11-09 17:48:45 -08:00
Ben Ogle ba627c005e Upgrade to base16-tomorrow-dark-theme@0.6.0 2013-11-08 19:10:31 -08:00
Ben Ogle b3efe00757 Upgrade to find-and-replace@0.39.0 2013-11-08 16:59:45 -08:00
Ben Ogle 5f8e757f57 Merge pull request #1102 from atom/bo-add-replace
Add replace() to project and buffer
2013-11-08 16:57:38 -08:00
Matt Colyer 5f6f09fc45 Upgrade to-the-hubs@0.9.0 2013-11-08 15:43:52 -08:00
Matt Colyer f9e7d64131 Upgrade fs-plus@0.9.0 2013-11-08 14:09:01 -08:00
Matt Colyer eefeb2ab2a Upgrade fs-plus@0.8.0 2013-11-08 13:49:50 -08:00
Ben Ogle ee896846bb Comments. Change up the api a tiny bit. 2013-11-08 12:25:59 -08:00
Ben Ogle ddd560b785 Add replace to project and buffer 2013-11-08 12:20:43 -08:00
Matt Colyer 59d8beb935 Upgrade spell-check@0.13.0 2013-11-08 11:52:09 -08:00
Matt Colyer c4de03d5c4 Upgrade status-bar@0.16.0 2013-11-08 11:46:56 -08:00
Matt Colyer 53f7592815 Merge branch 'win-package-specs' of github.com:github/atom into win-package-specs 2013-11-08 11:46:11 -08:00
Kevin Sawicki 86a1f43196 Upgrade to less-cache@0.10.0 for Windows fixes 2013-11-08 11:34:58 -08:00
Matt Colyer 177f3b9d53 Upgrade spell-check@0.12.0 2013-11-08 11:26:05 -08:00
Ben Ogle affcb5ff4a Use scandal 0.7.0 2013-11-08 11:08:55 -08:00
Matt Colyer a168692eea Don't relativize uris 2013-11-08 09:39:51 -08:00
Kevin Sawicki 80db09f47b Upgrade to oniguruma@0.24.0 for cross-platform consistency 2013-11-08 08:46:21 -08:00
Kevin Sawicki 1ef1f60556 Prepare 35.0.0 release 2013-11-08 08:39:35 -08:00
Kevin Sawicki 7934043646 Upgrade to autocomplete@0.12.0 for leak fix 2013-11-07 19:17:21 -08:00
Kevin Sawicki ae6b4547e1 Put building URL at bottom 2013-11-07 18:41:52 -08:00
Kevin Sawicki aaa654de39 Upgrade apm for removal of unused dependencies 2013-11-07 18:35:36 -08:00
Kevin Sawicki 1d3f33e740 Add missing vs2010 link 2013-11-07 18:23:11 -08:00
Matt Colyer 19e6c632ea Merge branch 'win-package-specs' of github.com:github/atom into win-package-specs 2013-11-07 17:07:20 -08:00
Matt Colyer 0d014c6257 Upgrade fuzzy-finder@0.20.0 2013-11-07 17:06:27 -08:00
Kevin Sawicki 445421f961 Add Windows link to building doc 2013-11-07 15:08:39 -08:00
Kevin Sawicki 778ed06272 📝 Add missing e 2013-11-07 15:04:48 -08:00
Kevin Sawicki e16481d6e0 Remove Objective-C styleguide 2013-11-07 15:00:46 -08:00
Kevin Sawicki f34af85ad3 💄 Beware 2013-11-07 14:58:30 -08:00
Matt Colyer 9118a70592 Merge pull request #1074 from atom/win-specs
Get Windows Specs running
2013-11-07 14:48:39 -08:00
Matt Colyer 43419fdef2 Normalize dom ids rather than remove 2013-11-07 14:41:58 -08:00
Matt Colyer 11f3686832 Upgrade dev-live-reload@0.15.0 2013-11-07 14:33:23 -08:00
Matt Colyer 455321c4a8 Merge branch 'win-specs' of github.com:github/atom into win-specs 2013-11-07 14:00:14 -08:00
Matt Colyer dfa5ac11a2 Merge branch 'origin/master' into win-specs 2013-11-07 13:59:43 -08:00
Kevin Sawicki 8754a0cbaf Upgrade to oniguruma@0.23.0 2013-11-07 13:42:12 -08:00
Daniel Hengeveld 6485e4f540 Merge pull request #1077 from atom/copy-docs-into-atom-io
Copy docs into atom io
2013-11-07 11:16:46 -08:00
Kevin Sawicki 4ca66a535c Merge pull request #1095 from atom/ks-solo
Use non-replicated telepath strings
2013-11-07 10:13:50 -08:00
Nathan Sobo 56c88820d6 Upgrade to telepath 0.23.0 to deal gracefully w/ outdated window state 2013-11-07 10:02:44 -08:00
Kevin Sawicki & Nathan Sobo 5d56365c26 Upgrade to telepath@0.22.0 2013-11-07 10:02:43 -08:00
Kevin Sawicki & Nathan Sobo 55c5ae926c Create telepath string with replicate: false option 2013-11-07 10:02:43 -08:00
Kevin Sawicki & Nathan Sobo ef68fd24d5 Log open exception stack to console 2013-11-07 10:02:43 -08:00
Kevin Sawicki 4497ec9733 Upgrade to language-coffee-script@0.3.0 for switch/when indent fix 2013-11-07 09:48:10 -08:00
Matt Colyer 38a3c0dbd3 Simplify regexp escaping in text-mate-grammar.coffee 2013-11-07 09:26:56 -08:00
Matt Colyer b69bc8ce71 Add a newline to the end of .gitattributes 2013-11-07 09:22:41 -08:00
Kevin Sawicki fe6cf8ec01 Merge pull request #1091 from atom/ks-autoscroll
Autoscroll on undo/redo
2013-11-07 09:17:10 -08:00
Kevin Sawicki b4f8387053 Remove unneded clearAutoscroll call 2013-11-07 09:04:41 -08:00
Kevin Sawicki 6b63f5db9e Always mark cursor needing autoscroll 2013-11-07 09:04:41 -08:00
Kevin Sawicki 291f4fbb90 Mark last cursor for autoscroll on undo/redo 2013-11-07 09:04:41 -08:00
Kevin Sawicki dba7687470 Autoscroll even when text does not change 2013-11-07 09:04:41 -08:00
Cheng Zhao e6a7678fd6 Update to atom-shell v0.6.9. 2013-11-07 18:52:12 +08:00
Ben Ogle 4b6867831a Upgrade to scandal@0.6.4 2013-11-06 17:34:42 -08:00
Matt Colyer 28d7160c3b Update specs concerning stylesheet ids 2013-11-06 17:12:47 -08:00
Cheng Zhao c4ab4364ba Merge pull request #1089 from atom/cz-win32-icon
Set version strings and icon for the exe on Windows
2013-11-06 17:07:46 -08:00
Matt Colyer 98db48eae6 Fix syntax path matching 2013-11-06 17:04:50 -08:00
Matt Colyer d6cb848503 Upgrade language-mode@0.3.0 2013-11-06 16:52:58 -08:00
Matt Colyer 3119ed9dfe Update project-spec.coffee for windows 2013-11-06 16:45:10 -08:00
Matt Colyer 3f0f3267c1 Upgrade scandal@0.6.3 2013-11-06 16:40:14 -08:00
Ben Ogle 2cc32e1faf Upgrade to atom-dark-ui@0.5.0
New tabs!!
2013-11-06 14:55:36 -08:00
Matt Colyer a8fe8ab982 Update keymap-spec.coffee paths for windows 2013-11-06 14:52:28 -08:00
Ben Ogle 4bee197e01 Upgrade to base16-tomorrow-dark-theme@0.5.0 2013-11-06 14:42:24 -08:00
Matt Colyer 01f41207d4 Update font specs for windows 2013-11-06 14:39:47 -08:00
Ben Ogle ce2e123cc8 Merge pull request #1088 from atom/bo-changes-for-themes-with-padding
Handle themes with padding on the scroll view
2013-11-06 14:38:34 -08:00
Ben Ogle 16b64b03f7 Nof 2013-11-06 14:38:01 -08:00
Ben Ogle 2adcc9709c 10 -> back to 2 2013-11-06 14:37:36 -08:00
Ben Ogle 0f1d701646 Upgrade to wrap-guide@0.5.0 2013-11-06 14:21:54 -08:00
Ben Ogle 6e049dd173 Fix tests in editor 2013-11-06 14:13:09 -08:00
Matt Colyer face4a3f76 Force Unix line endings in spec/fixtures 2013-11-06 14:11:36 -08:00
Matt Colyer 015f4f7542 Merge remote-tracking branch 'origin/master' into win-specs 2013-11-06 12:12:41 -08:00
Kevin Sawicki 9f5e913804 Update remaining selected class names to fold-selected 2013-11-06 09:55:53 -08:00
Kevin Sawicki 383a724144 Update class name to new fold-selected 2013-11-06 09:50:06 -08:00
Kevin Sawicki 90c21906a4 Add fold- prefix to selected class name
This prevents interference with the base selected class
which adds a noticeable blur to folded lines that are selected
when using dark syntax and light ui.
2013-11-06 09:49:18 -08:00
Cheng Zhao 0686efc429 Revert "Only run set-development-version on mac"
This reverts commit 9a4db9d95d.

It's supported on Windows now.
2013-11-06 22:48:50 +08:00
Cheng Zhao 2058d5a431 Add task to set exe icon. 2013-11-06 22:41:53 +08:00
Cheng Zhao 6c9f037cd9 Use node-rcedit to set development version. 2013-11-06 22:27:27 +08:00
Cheng Zhao 5033fac8eb Update to atom-shell v0.6.8. 2013-11-06 12:32:19 +08:00
Ben Ogle 0aa0dc01d5 Properly reset the size of layers on resize
Otherwise, when a theme has padding in the scroll-view, it will be 
scrollable all the time (width:100%).
2013-11-05 18:40:05 -08:00
Ben Ogle 994756f8c1 Use padding in the pixel left calculation
Now themes can specify padding in the scroll-view so the text isn't 
jammed up against the
2013-11-05 18:40:04 -08:00
Kevin Sawicki 47bab20363 Merge pull request #1087 from atom/ks-reenable-specs
Reenable edit session specs
2013-11-05 18:30:36 -08:00
Kevin Sawicki efb87237e2 Reenable undo, redo, and transaction specs 2013-11-05 18:25:37 -08:00
Kevin Sawicki 2be5790311 Set auto indent config setting in spec 2013-11-05 18:25:36 -08:00
Kevin Sawicki 60fa937ed7 Add asserts for undoing an insertNewlineAbove 2013-11-05 18:25:36 -08:00
Kevin Sawicki 867a6ecd95 Reenable insertNewlineBelow() specs 2013-11-05 18:25:36 -08:00
Kevin Sawicki 36c9d68009 Update to telepath@0.21.0 2013-11-05 18:25:36 -08:00
Ben Ogle 4dda2f93ae Upgrade to base16-tomorrow-dark-theme@0.4.0 2013-11-05 17:48:22 -08:00
Matt Colyer fcdc341981 Merge branch 'win-specs' of https://github.com/atom/atom into win-specs 2013-11-05 17:36:24 -08:00
Matt Colyer 5b187e7a8c Upgrade jasmine-tagged@0.2.0 2013-11-05 17:35:44 -08:00
Ben Ogle 740085e561 Upgrade base16-tomorrow-dark-theme@0.3.0 2013-11-05 17:34:00 -08:00
Ben Ogle 5a2730c8c0 Upgrade to solarized-dark-syntax@0.4.0 2013-11-05 17:23:45 -08:00
Ben Ogle 08ee9c08b7 Upgrade to atom-light-syntax@0.6.0 2013-11-05 17:08:17 -08:00
Ben Ogle 103f602c9c Upgrade dev-live-reload@0.14.0 2013-11-05 17:02:35 -08:00
Matt Colyer fb6b8029be Run bundled and user specs 2013-11-05 16:58:42 -08:00
Matt Colyer edc789173b Don't install commands on windows 2013-11-05 16:44:03 -08:00
Matt Colyer 7ba4782ceb Don't focus atom-spec.coffee 2013-11-05 16:37:54 -08:00
Matt Colyer 9863386644 Update Directory specs for platform specific issues 2013-11-05 16:36:51 -08:00
Matt Colyer 1fe6a2974d Merge branch 'win-specs' of https://github.com/atom/atom into win-specs 2013-11-05 15:46:34 -08:00
Matt Colyer 6bd7dd8841 Add jasmine-tagged, for filtering platform specs 2013-11-05 15:44:38 -08:00
Ben Ogle 3db786953c Upgrade to atom-dark-syntax@0.6.0 2013-11-05 15:17:45 -08:00
Ben Ogle b9b9b7df91 Upgradt to find-and-replace@0.38.0 2013-11-05 15:16:00 -08:00
Ben Ogle da2d37408f Upgrade to tree-view@0.28.0 2013-11-05 12:37:03 -08:00
Ben Ogle 8739dfe739 Update to find-and-replace@0.37.0 2013-11-05 12:01:02 -08:00
Matt Colyer cd2e78f04f Fix indentation of comments
Ref #1081
2013-11-05 11:46:44 -08:00
Ben Ogle 8851120db2 Add split: left handling to openSingletonSync() 2013-11-05 11:25:45 -08:00
Ben Ogle c59404b2b0 Upgrade to tree-view@0.27.0 2013-11-05 10:43:41 -08:00
Matt Colyer 151a4290d4 Update biscotto arguments to latest telepath 2013-11-05 09:39:10 -08:00
Kevin Sawicki 1ef5809b24 Merge pull request #1078 from atom/ks-soft-wrap-resize
Update soft wrap column on editor resize
2013-11-05 09:06:21 -08:00
Matt Colyer 8cca42a6b8 Remove references to atom-docs 2013-11-05 09:04:26 -08:00
Kevin Sawicki aad23d4760 💄 Remove extra empty line 2013-11-04 18:39:59 -08:00
Kevin Sawicki d20bff473b Increase overflowchanged timeout to 100ms 2013-11-04 18:38:08 -08:00
Kevin Sawicki 287f1984db Update width in chars when editor's size changes
Register an overflowchanged event listener on the editor's scroll view
and update the width in chars when this event fires.

Closes #928
Closes #961
Closes #993
2013-11-04 18:12:17 -08:00
Ben Ogle 1cb5d16a60 Style messages 2013-11-04 17:19:09 -08:00
Daniel Hengeveld 105f8d0baf check if atom.io directory exists in copy-docs 2013-11-04 17:03:29 -08:00
Daniel Hengeveld 7e9a1d8ffe copy docs into atom.io project, don't build guides as they are in the DB 2013-11-04 16:47:12 -08:00
Matt Colyer ee280d87f9 Ensure we're using proper dom ids in specs 2013-11-04 16:33:11 -08:00
Matt Colyer e312050163 Create valid DOM ids for stylesheets 2013-11-04 16:21:50 -08:00
Matt Colyer 717626fbaf Merge branch 'master' into win-specs 2013-11-04 14:53:49 -08:00
Matt Colyer ec761d00ef Remove modified check on fixture file 2013-11-04 14:53:43 -08:00
Ben Ogle 3d99e580b9 Upgrade to tabs@0.6.0 and atom-light-ui@0.6.0 2013-11-04 14:30:38 -08:00
Kevin Sawicki b0da17701b Run apm clean during bootstrap
Closes #905
2013-11-02 19:29:52 -07:00
Kevin Sawicki 8443db6630 Upgrade to language-coffee-script@0.2.0 2013-11-02 19:00:34 -07:00
Cheng Zhao 2333b53d05 Update to atom-shell v0.6.7. 2013-11-02 17:27:00 +08:00
Kevin Sawicki f05eb67125 Upgrade to package-generator@0.17.0 2013-11-01 17:34:52 -07:00
Kevin Sawicki 4c5fdbce93 Upgrade to package-generator@0.16.0 2013-11-01 17:29:36 -07:00
Kevin Sawicki 9482e9b397 Upgrade to package-generator@0.15.0 2013-11-01 17:22:47 -07:00
Kevin Sawicki 0eb4704f5e Remove empty CHANGELOG 2013-11-01 17:15:32 -07:00
Kevin Sawicki 13c374845f Upgrade to bracket-matcher@0.9.0 2013-11-01 16:54:15 -07:00
Nathan Sobo 0c87f0edf8 Make ctrl-Z/ctrl-y invoke 'core:redo' instead of 'corey:redo' 2013-11-01 17:49:29 -06:00
Kevin Sawicki c9db0f14ed Disable colored output in script/cibuild 2013-11-01 16:42:50 -07:00
Kevin Sawicki 875e9c886c Increase max buffer to 1MB 2013-11-01 16:34:20 -07:00
Kevin Sawicki 05867bc889 Default error code to 1
Apparently not all errors passed to the callback have a code so default
it to zero when missing. The 'stdout maxBuffer exceeded.' is once such
error that has no code.
2013-11-01 16:27:46 -07:00
Kevin Sawicki 621058aa9e Register copied edit sessions on the project
Without this any split edit sessions won't be passed to package
listeners that register using project.eachEditSession()

Closes #1065
2013-11-01 15:51:27 -07:00
Kevin Sawicki 3b52a6a040 Use underscore-plus 2013-11-01 15:50:38 -07:00
Nathan Sobo e70f87dfc7 Upgrade to telepath 0.20.0 so simple selection changes aren't undone
This version of telepath adds an `undo: 'combine'` option which becomes
the default for marker changes. With an undo strategy of 'combine', the
operation is only undone when combined in a transaction with other
operations that are undone. This prevents simple marker updates from
getting pushed to the undo stack.
2013-11-01 16:39:32 -06:00
Matt Colyer 0695aafe80 Devmode hard-codes the location of the atom repo 2013-11-01 15:33:11 -07:00
Matt Colyer c9eebcf00a Fixture hashes depend on line returns 2013-11-01 15:15:17 -07:00
Matt Colyer f26110a81b Remove empty collaboration menu 2013-11-01 15:02:59 -07:00
Kevin Sawicki 651b40f360 Upgrade to symbols-view@0.18.0 2013-11-01 14:28:27 -07:00
Kevin Sawicki 456c27475b Merge pull request #1069 from atom/ks-git-on-windows
Get git working on windows
2013-11-01 14:01:55 -07:00
Kevin Sawicki bc0a268841 Upgrade to find-and-replace@0.36.0 2013-11-01 13:56:48 -07:00
Kevin Sawicki 9d9ff97995 Upgrade to tree-view@0.26.0 2013-11-01 13:56:48 -07:00
Kevin Sawicki a03a89d359 Ignore debug.log 2013-11-01 13:56:47 -07:00
Kevin Sawicki 7e043f5bc6 Change platform check from windows to win32 2013-11-01 13:56:47 -07:00
Kevin Sawicki e8f8cd2dcd Normalize forward slashes on windows 2013-11-01 13:56:47 -07:00
Kevin Sawicki 132c6f7414 Enable ignoreEolWhitespace in getLineDiffs on windows 2013-11-01 13:56:47 -07:00
Kevin Sawicki a458f7581d Upgrade to git-utils@0.29.0 2013-11-01 13:56:47 -07:00
probablycorey 64565cc510 Update command palette package
I forgot to include this one in the sublime parity branch.
2013-11-01 13:51:47 -07:00
Corey Johnson 7de8b4c2f4 Merge pull request #1066 from atom/cj-sublime-bindings
Sublime key binding pairity
2013-11-01 13:45:44 -07:00
probablycorey 01e40bd866 Update fuzzy finder package 2013-11-01 13:39:49 -07:00
probablycorey 6e47135ba7 Update package versions 2013-11-01 11:49:59 -07:00
probablycorey b041c0176c Merge remote-tracking branch 'origin/master' into cj-sublime-bindings 2013-11-01 11:33:13 -07:00
probablycorey b22d64745f Handle multi-keystroke keybinding
Previously for a binding like `meta-x meta-y` you had to hold down the 
meta key. This makes it possible to release the meta key between
key presses.
2013-11-01 11:15:01 -07:00
Kevin Sawicki cbf55f38f9 Use fs-plus in covert-theme task 2013-11-01 11:11:07 -07:00
probablycorey 9e8b1fb661 Handle modifier keydown events
When only a modifier is pressed it still triggers a keydown event. This
normalizes the keystroke name for those events.
2013-11-01 11:02:46 -07:00
Kevin Sawicki 6d4285f180 Add script/build.cmd 2013-11-01 10:58:25 -07:00
Kevin Sawicki 7d3c272909 Merge pull request #1062 from atom/ks-extract-fs-utils
Extract fs-utils into a module
2013-11-01 09:14:58 -07:00
Kevin Sawicki 6677b2ccdf Upgrade to fs-plus@0.6.0 2013-11-01 09:08:49 -07:00
Kevin Sawicki bf48195752 Upgrade to fs-plus@0.5.0 2013-11-01 08:46:03 -07:00
Kevin Sawicki b8680be6c6 Update writeSync spies 2013-11-01 08:46:03 -07:00
Kevin Sawicki 0264fd6be5 Rename writeSync to writeFileSync 2013-11-01 08:46:03 -07:00
Kevin Sawicki 9c79e39401 Upgrade to fs-plus@0.4.0 2013-11-01 08:46:03 -07:00
Kevin Sawicki e06100fe25 Shim fs.exists 2013-11-01 08:46:03 -07:00
Kevin Sawicki f7686a5485 Fail if error isn't falsey 2013-11-01 08:46:03 -07:00
Kevin Sawicki 01610a3fb8 Add shims for previous fs methods 2013-11-01 08:46:03 -07:00
Kevin Sawicki d8766b9aba Use makeTreeSync 2013-11-01 08:46:03 -07:00
Kevin Sawicki ebb7a2637a Upgrade to fs-plus@0.3.0 2013-11-01 08:46:03 -07:00
Kevin Sawicki a143ca551b Remove unused rimraf dependency 2013-11-01 08:46:03 -07:00
Kevin Sawicki 3cfefc03ff Upgrade to fs-plus@0.2.0 2013-11-01 08:46:03 -07:00
Kevin Sawicki 1646cdc349 Remove plist dependency 2013-11-01 08:46:03 -07:00
Kevin Sawicki bc289cc0cb Remove unused dependency 2013-11-01 08:46:02 -07:00
Kevin Sawicki ef97dadea1 Update fs-utils references to fs-plus 2013-11-01 08:46:02 -07:00
Kevin Sawicki 83dcf79bcf Use fs-plus 2013-11-01 08:46:02 -07:00
Kevin Sawicki 60563f46c9 Upgrade to fs-plus@0.1.0 2013-11-01 08:46:02 -07:00
Ben Ogle 70925263f7 Add ability to specify rowCount to selectUp and selectDown() 2013-10-31 17:47:13 -07:00
Nathan Sobo 166faf1af2 Merge branch 'telepath-next' 2013-10-31 18:39:44 -06:00
Nathan Sobo aab2937a48 Upgrade to telepath 0.19.0 for persist: false marker option 2013-10-31 17:56:00 -06:00
Nathan Sobo 1b9f86d13a Upgrade to telepath 0.18.0
This fixes an issue where markers would no longer be updatable after
reloading an open editor. This was caused by cloned arrays not updating
the array id of their markers.
2013-10-31 17:08:41 -06:00
Nathan Sobo 88802ef4c5 Upgrade telepath to 0.17.0 2013-10-31 17:08:41 -06:00
Nathan Sobo e8e3e3224f Switch to new API for Document.deserialize and ::saveSync 2013-10-31 17:08:41 -06:00
Nathan Sobo 1b6c34673e Upgrade autosave to 0.6.0 2013-10-31 17:08:41 -06:00
Nathan Sobo aa6f2187d8 Upgrade telepath to 0.16.0 2013-10-31 17:08:40 -06:00
Nathan Sobo 7d64cd179e Always mock atom.packages.resolvePackagePath
…instead of only in package specs. This allows specs that assume it is
mocked to work correctly when we run the full spec suite. Namely, the
settings-view specs had an issue with this.
2013-10-31 17:08:40 -06:00
Nathan Sobo 56ff3b79e4 Upgrade to Telepath v0.15.0 2013-10-31 17:08:40 -06:00
Nathan Sobo ba654f15cb Drop collaboration from default packages
We'll revisit it when the codebase has a better relationship with
telepath.
2013-10-31 17:08:40 -06:00
Nathan Sobo 62ccf92a5d Get core specs passing w/ Telepath v0.14.0. Delete replication specs.
Telepath v0.14.0 is a ground-up rewrite of the replication library,
which is principally designed to support moving document fragments
within the overall document. But it's also a lot better in a number of
ways. This commit does the minimal to get things working on the new
telepath. Standard package specs don't pass yet. Also, I deleted the
replication specs since they are extremely convoluted and will be able
to be replaced with much better versions once I complete the changes
enabled by the new Telepath.
2013-10-31 17:08:40 -06:00
Nathan Sobo ca073fb7c2 Upgrade to fuzzy-finder 0.16.0 to avoid null active pane item errors
Fixes #1064
2013-10-31 17:07:52 -06:00
probablycorey 94b5d08b63 Remove unused keybinding comment 2013-10-31 15:41:26 -07:00
probablycorey 678dc82d50 Remove keybindings that are being used 2013-10-31 15:40:59 -07:00
probablycorey 5b5f0af6b5 Add native-key-bindings class 2013-10-31 15:40:44 -07:00
Ben Ogle 695c8d97f2 Remove all the complexity from the gutter check
Give up and serenader all whenever there is a change: newlines included.
2013-10-31 13:06:32 -07:00
Ben Ogle 5ac3a74bf0 Return column = 0 when mouse to the left of editor
Fixes #966
2013-10-31 12:54:21 -07:00
Ben Ogle d150170e5b Fix gutter rendering when there are folds
Fixes #1059
2013-10-31 12:54:21 -07:00
Matt Colyer d14e5a6992 Merge pull request #1061 from atom/win-close-master-process
Don't leak browser processes on windows, fixes #1060
2013-10-31 12:00:33 -07:00
Matt Colyer b419cdf193 Close browser after last window exits on windows 2013-10-31 11:47:52 -07:00
Matt Colyer a57f1e4727 First cut at build documentation 2013-10-31 11:29:43 -07:00
Matt Colyer 34499d87ab Upgrade pathwatcher@0.9.0 2013-10-31 10:57:03 -07:00
Ben Ogle 4e18e7a67c Lists are nested via padding the list items 2013-10-31 10:50:48 -07:00
probablycorey aef9a12910 Left and right tool-panels don't close when escape is pressed. 2013-10-31 10:00:38 -07:00
probablycorey b501758bf7 💄 2013-10-31 10:00:17 -07:00
Cheng Zhao 993cc75c15 Merge pull request #1054 from atom/cz-fix-win32-scripts
Fix scripts on Windows
2013-10-30 17:28:57 -07:00
Ben Ogle 64e02d007c Upgrade to find-and-replace@0.35.0 2013-10-30 17:17:24 -07:00
Kevin Sawicki a39255fa77 Upgrade to settings-view@0.37.0 2013-10-30 16:47:40 -07:00
Kevin Sawicki ddfd1842d1 Upgrade apm for --no-color option 2013-10-30 16:47:40 -07:00
probablycorey 3e71dcfcd0 Comment out unimplementd keybindings 2013-10-30 16:39:46 -07:00
probablycorey 2629345df2 Add OS X "emacs style" bindings 2013-10-30 16:31:47 -07:00
probablycorey 8c3fbc3437 Better sublime text keybinding parity. 2013-10-30 16:28:16 -07:00
Garen Torikian c30f63fa0c Merge pull request #1052 from atom/doc-updates
Doc updates
2013-10-30 15:59:29 -07:00
Ben Ogle 5685eb9263 Upgrade to 2013-10-30 15:53:34 -07:00
Garen Torikian e3fd999964 Address a few more typos 2013-10-30 15:21:51 -07:00
Matt Colyer e8109adeee Retrieve docs/template.jst from the history 2013-10-30 15:14:02 -07:00
Kevin Sawicki b150191263 Upgrade to snippets@0.13.0 2013-10-30 15:11:59 -07:00
Matt Colyer 4dc909de03 Use a fork of grunt-coffeelint
Upgrades version of coffelint to support windows. Related to #1043.
2013-10-30 15:06:07 -07:00
Garen Torikian c029f8eb95 Remove images directory
Depend on the GitHub cloud instead
2013-10-30 15:02:23 -07:00
Garen Torikian 31e75884be Spruce up documentation around themes 2013-10-30 15:01:37 -07:00
Kevin Sawicki 82e5545f6e Stub refresh methods in replication spec 2013-10-30 14:54:48 -07:00
Matt Colyer febd845876 Escape backslashes in task bootstrap on all platforms 2013-10-30 14:48:22 -07:00
Ben Ogle 61021b6a13 Add docs about the keybindings tab 2013-10-30 14:42:53 -07:00
Kevin Sawicki b9274412c5 Refresh index and status after opening repo
Previously this relied on an initial window focus event firing
to kick off the initial load.  This focus event no longer fires
in jquery 2.0 so just explicitly refresh the index and status when
setting the project path.
2013-10-30 14:42:24 -07:00
Ben Ogle d6457152f0 typos 2013-10-30 14:37:08 -07:00
Matt Colyer 49e48a0895 Merge brantch 'win-tasks' 2013-10-30 14:35:48 -07:00
Ben Ogle eae7a7065e Link the package docs together 2013-10-30 14:34:50 -07:00
Kevin Sawicki 696355f6dd Upgrade to tree-view@0.23.0 2013-10-30 14:32:51 -07:00
Matt Colyer ab0c60bd45 Update paths in task bootstrap for windows
Fixes #1049
2013-10-30 14:30:01 -07:00
Ben Ogle 83005deae6 Small changes 2013-10-30 14:28:20 -07:00
Ben Ogle d486a55b4c Fix the panel code to use the tool-panel component 2013-10-30 14:22:12 -07:00
Kevin Sawicki e6b3f400c0 Update git status on buffer path-changed events 2013-10-30 14:15:52 -07:00
Ben Ogle 86cba12457 Remove images from repo
They are hosted on github right now
2013-10-30 14:14:35 -07:00
Ben Ogle 1d6e3c73cf Update image references 2013-10-30 14:14:16 -07:00
Garen Torikian 8fb06a5b11 Add images of sample package 2013-10-30 13:21:02 -07:00
Garen Torikian 8afb3fb6b9 Talk about using Theme Variables 2013-10-30 13:21:02 -07:00
Garen Torikian ff9356bc2c Begin talking about Theme Variables 2013-10-30 13:21:02 -07:00
Garen Torikian b523decc7e Indicating the color in the stylesheet is important 2013-10-30 13:21:02 -07:00
Garen Torikian e7a14bf17f Provide initial edits to "Your First Package" docs 2013-10-30 13:21:02 -07:00
Garen Torikian a593d3b152 Split basic package information from the tutorial 2013-10-30 13:21:02 -07:00
Ben Ogle 9781565df8 Link to the theme docs 2013-10-30 13:21:02 -07:00
Ben Ogle a595378850 Add a theme-variables.md doc 2013-10-30 13:21:01 -07:00
Ben Ogle b2e2a2cdda Upgrade scandal@0.6.1 2013-10-30 12:34:57 -07:00
Ben Ogle eb8d9214b7 Upgrade to find-and-replace@0.34.0
Project search in a tab
2013-10-30 12:23:47 -07:00
Ben Ogle 8ac8b3748f Merge pull request #1053 from atom/bo-singleton-open
openSingletonSync()
2013-10-30 12:21:19 -07:00
Ben Ogle b4a28d7418 Fix test 2013-10-30 12:13:38 -07:00
Ben Ogle c6ee5699e7 Upgrade to status-bar@0.15.1 2013-10-30 11:49:43 -07:00
Ben Ogle 19220aa9f3 Upgrade to tabs@0.7.2 2013-10-30 11:49:10 -07:00
Ben Ogle 0a10603eb3 Pass all options through 2013-10-30 11:38:32 -07:00
Ben Ogle 0700732495 Upgrade to find-and-replace@0.33.1 2013-10-30 11:36:50 -07:00
Ben Ogle c3b270dc80 Upgrade to tabs@0.7.1 2013-10-30 11:26:18 -07:00
Ben Ogle 2baa5ba678 Upgrade to fuzzy-finder@0.15.1 2013-10-30 11:26:04 -07:00
Ben Ogle 0bd701b4a6 Fix tests 2013-10-30 11:25:30 -07:00
Ben Ogle 1be8d5e618 Add openSingletonSync() to rootView 2013-10-30 11:25:30 -07:00
Ben Ogle a212a7c259 pane.split() doesn't implicitly copy the active item. 2013-10-30 11:25:30 -07:00
probablycorey 76a041cfe1 Update autosave package 2013-10-30 11:08:13 -07:00
Kevin Sawicki 46eb6df61e Prepare 34.0.0 release 2013-10-30 10:51:31 -07:00
probablycorey 93c7531cf9 Don't destroy pane items in confirmClose 2013-10-30 10:47:01 -07:00
Kevin Sawicki 8bf726d3e1 Merge pull request #1055 from atom/ks-rename-toml-gfm
Add language- prefix to gfm and toml
2013-10-30 10:43:00 -07:00
Kevin Sawicki 412cb602a4 Upgrade to whitespace@0.8.0 2013-10-30 10:35:50 -07:00
Kevin Sawicki f10abfe630 Upgrade to markdown-preview@0.13.0 2013-10-30 10:34:40 -07:00
Kevin Sawicki 14664625d5 Upgrade to language-toml@0.6.0 2013-10-30 10:29:24 -07:00
Kevin Sawicki 9e12c4610d Upgrade to language-gfm@0.8.0 2013-10-30 10:29:10 -07:00
Kevin Sawicki c1d09f5229 Add cson to valid grammar extensions 2013-10-30 10:23:25 -07:00
Kevin Sawicki d486522cde Upgrade to language-toml@0.4.0 2013-10-30 10:15:41 -07:00
Kevin Sawicki e3ff39bf4f Upgrade to language-gfm@0.6.0 2013-10-30 10:15:18 -07:00
Kevin Sawicki 74a48e58dc Upgrade to settings-view@0.36.0 2013-10-30 09:29:33 -07:00
Kevin Sawicki e63bf75f96 Update apm for native module fix 2013-10-30 09:20:21 -07:00
Kevin Sawicki 8b9595f1bd Use getter when toggling soft tabs 2013-10-30 09:06:12 -07:00
Cheng Zhao 53954c236c Use the apm in node_modules/atom-package-manager instead of vendor/apm. 2013-10-30 23:44:05 +08:00
Cheng Zhao 3de18ae9f6 Fix calling of apm and grunt in script/cibuild and script/test. 2013-10-30 18:10:03 +08:00
Cheng Zhao 9c7ce22abe Unzipping atom-shell.zip on Windows with node-unzip. 2013-10-30 18:02:43 +08:00
Cheng Zhao bfab56247f node_modules/.bin/grunt is a bash script not a js script. 2013-10-30 17:05:08 +08:00
Cheng Zhao e4400c648d Revert "Run apm from node_modules"
This reverts commit 8742f6c06c.

The `node_modules/.bin/apm` is a bash script not a js script, so on
Windows `node node_modules/.bin/apm` would fail with:

```
C:\cygwin\home\zcbenz\codes\atom\node_modules\.bin\apm:2
basedir=`dirname "$0"`
        ^
SyntaxError: Unexpected token ILLEGAL
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:901:3
```
2013-10-30 10:51:06 +08:00
Kevin Sawicki 271f23083e Bump packages for emissary@0.9.0 upgrade 2013-10-29 18:48:20 -07:00
Kevin Sawicki e3f4a72ab3 Add empty changelog to get this deploy out 2013-10-29 18:28:49 -07:00
Kevin Sawicki ee3b7cee76 Upgrade to emissary@0.9.0 2013-10-29 17:57:36 -07:00
Kevin Sawicki 5a357a54dc Prepare 33.0.0 release 2013-10-29 16:20:05 -07:00
probablycorey d07bf338c8 Consolidate pane item destruction 2013-10-29 15:55:07 -07:00
Kevin Sawicki 516ddec854 Upgrade to dev-live-reload@0.12.0 2013-10-29 15:45:05 -07:00
Kevin Sawicki 0ab2b89c1a Upgrade to collaboration@0.34.0 2013-10-29 15:24:16 -07:00
Kevin Sawicki 2c2c7e67d7 Upgrade to release-notes@0.11.0 2013-10-29 15:20:06 -07:00
probablycorey e1f8b042ed Update autosave 2013-10-29 15:18:07 -07:00
Kevin Sawicki f7ce6a015d Upgrade to release-notes@0.10.0 2013-10-29 15:12:58 -07:00
Kevin Sawicki 4775783ba3 Add missing path require 2013-10-29 15:02:05 -07:00
Kevin Sawicki d0bf4c1d2e Upgrade to emissary@0.8.0 2013-10-29 14:54:54 -07:00
Kevin Sawicki 4f1d862bc0 Merge pull request #1040 from atom/ks-speed-up-load
Speed up start time
2013-10-29 13:47:11 -07:00
Kevin Sawicki 059671c454 🐎 Load packages by path
Previously the package paths were converted to names and then
re-resolved to paths.

Now we just load the paths directly reducing the number of stat calls
and saving ~50ms in PackageManager::loadPackages

Also now internal packages are loaded by parsing the package.json
file for packageDependencies instead of loading the metadata for all
packages in node_modules and checking the engines field.
2013-10-29 13:31:42 -07:00
Kevin Sawicki 1f16cd3912 Upgrade to season@0.14.0 2013-10-29 13:31:42 -07:00
Kevin Sawicki 2d16fc33a3 Use Date.now() 2013-10-29 13:31:42 -07:00
Kevin Sawicki 6ad8062d45 Upgrade to timecop@0.9.0 2013-10-29 13:31:42 -07:00
Kevin Sawicki 8f0c0362e8 Upgrade to timecop@0.8.0 2013-10-29 13:31:42 -07:00
Kevin Sawicki 91436bec25 Add config.unshiftAtKeyPath helper 2013-10-29 13:31:42 -07:00
Kevin Sawicki e93d83dcdf Guard against null core.themes 2013-10-29 13:31:41 -07:00
Kevin Sawicki 62f44e64f4 Unshift into array instead of creating new one 2013-10-29 13:31:41 -07:00
Kevin Sawicki c571d6a9d4 Only reload non-theme packages on reload of themes 2013-10-29 13:31:41 -07:00
Kevin Sawicki bdd4ac63f4 Watch themes after activation instead of loading 2013-10-29 13:31:41 -07:00
Corey Johnson 0c77712a77 Merge pull request #1041 from atom/cj-move-autosave-to-package
Move autosave to package
2013-10-29 13:27:50 -07:00
Ben Ogle a00db81765 Only call itemAdded when there is a container
Sometimes in the tests, rootView.open is called. Sometimes by the time 
the promise is fired and callback to add the pane is called, the 
rootView and container no longer exists. See the find-and-replace tests 
that create a ResultsPaneView.
2013-10-29 12:44:11 -07:00
probablycorey c91bca44cb Update settings view
Fixes #1022
2013-10-29 11:50:01 -07:00
probablycorey dbf4ba099b Merge remote-tracking branch 'origin/master' into cj-move-autosave-to-package 2013-10-29 11:05:26 -07:00
probablycorey e67324dcc9 Upgrade autosave 2013-10-29 09:57:49 -07:00
Kevin Sawicki 1528d6ea49 Upgrade to tree-view@0.22.0 2013-10-29 09:23:53 -07:00
Matt Colyer a49fd569e3 Merge pull request #1035 from atom/win-bootstrap-native-modules
Windows Support
2013-10-29 09:15:59 -07:00
Kevin Sawicki 44213aff96 Upgrade apm for windows fixes 2013-10-29 08:38:42 -07:00
Kevin Sawicki 22589bf2dd Require nslog on non-windows machines 2013-10-29 08:27:37 -07:00
Kevin Sawicki 28a2b48688 Bootstrap is no longer vendored 2013-10-28 18:23:40 -07:00
Kevin Sawicki 668ef0b3a1 Don't copy resources/mac on windows 2013-10-28 17:49:24 -07:00
Kevin Sawicki 9a4db9d95d Only run set-development-version on mac 2013-10-28 17:46:42 -07:00
probablycorey e457600f38 Add autosave package 2013-10-28 17:34:21 -07:00
Kevin Sawicki 2f62123a75 Merge branch 'master' into win-bootstrap-native-modules 2013-10-28 17:33:39 -07:00
probablycorey e7e28b568b Purge autosave from Atom source 2013-10-28 17:27:44 -07:00
Kevin Sawicki b70df78041 Remove duplicate extend call 2013-10-28 16:46:59 -07:00
Kevin Sawicki c4b24fe738 Use Date.now() 2013-10-28 15:47:23 -07:00
probablycorey b1f5d1e276 Emit pane:before-item-destroyed event 2013-10-28 15:40:28 -07:00
Kevin Sawicki cd9d6ca6ee Update variable name 2013-10-28 15:25:18 -07:00
Kevin Sawicki d6159a38d4 Make project.resolve work on Windows 2013-10-28 15:21:08 -07:00
Corey Johnson a828f389f4 Merge pull request #1038 from atom/cj-add-user-keymap-file
Use `~/.atom/keymap.cson` file instead of `~/atom/keymaps` directory
2013-10-28 15:13:45 -07:00
probablycorey 91c8371752 Update collaboration from 0.30.0 to 0.33.0 2013-10-28 15:09:31 -07:00
probablycorey 05c70aceec Revert "Update changelog"
This reverts commit d5b960f32b.
2013-10-28 15:01:43 -07:00
Kevin Sawicki 002fc570e7 Detect resolving absolute paths on windows 2013-10-28 14:37:57 -07:00
Kevin Sawicki f81c64f068 Don't use Contents directory on windows 2013-10-28 14:27:01 -07:00
Kevin Sawicki e9bcb4637e Only run copy-info-plist on darwin 2013-10-28 14:27:01 -07:00
Matt Colyer e21f1c1394 Comment out nslog for now 2013-10-28 14:18:41 -07:00
Kevin Sawicki eae5a25872 Upgrade to first-mate@0.5.0 2013-10-28 14:11:44 -07:00
Kevin Sawicki 6364589630 Check for existence before copying 2013-10-28 13:53:51 -07:00
Kevin Sawicki 41f6d6b0dd Remove trailing slash 2013-10-28 13:50:56 -07:00
probablycorey c581135029 Remove changelog file
Changelog entries are not entered via https://github.com/atom/atom/releases/
2013-10-28 13:49:13 -07:00
Kevin Sawicki af92c96a73 Wrap walkdir in try/catch 2013-10-28 13:47:37 -07:00
Kevin Sawicki cdd4c9669a Handle walkdir error events 2013-10-28 13:45:32 -07:00
Matt Colyer 1368b60f16 Merge branch 'win-bootstrap-native-modules' of https://github.com/atom/atom into win-bootstrap-native-modules 2013-10-28 13:42:29 -07:00
Matt Colyer cc42db3bff Log to a file on windows, for now 2013-10-28 13:42:18 -07:00
Kevin Sawicki cc3a2ab2d5 Remove duplicate shell app dir cp 2013-10-28 13:41:17 -07:00
Kevin Sawicki f9837aadaa Split out win32 variable values 2013-10-28 13:38:33 -07:00
Kevin Sawicki 20c7f298a9 Install to program files on windows 2013-10-28 12:12:46 -07:00
Matt Colyer 86506752a7 Atom.app doesn't exist in windows releases 2013-10-28 12:10:42 -07:00
Kevin Sawicki 83206ac3a7 Upgrade to bootstrap@3.0.0 2013-10-28 11:39:48 -07:00
probablycorey dc54ebf416 Merge remote-tracking branch 'origin/master' into cj-add-user-keymap-file 2013-10-28 10:04:48 -07:00
probablycorey d5b960f32b Update changelog 2013-10-28 10:04:29 -07:00
Kevin Sawicki ffaaa21b37 Upgrade to collaboration@0.33.0 2013-10-28 10:03:03 -07:00
Corey Johnson ef2a322229 Merge pull request #1037 from atom/cj-buffer-serialization
When opening a window, only use serialized buffer text if the contents on disk have not changed.
2013-10-28 09:48:43 -07:00
Kevin Sawicki 1931cb6dff Upgrade to release-notes@0.9.0 2013-10-28 09:36:12 -07:00
Kevin Sawicki 6040221d26 Upgrade to scandal@0.6.0 2013-10-28 09:27:43 -07:00
probablycorey 7c70c43c1c Update keymap documentation 2013-10-28 09:23:18 -07:00
probablycorey cde0fae1f3 Rename Keymap::loadUserKeymaps to Keymap::loadUserKeymap 2013-10-28 09:19:23 -07:00
probablycorey 95107052d0 User keymap can be cson or json 2013-10-28 09:18:29 -07:00
Kevin Sawicki 650915724b Upgrade to pathwatcher@0.8.0 2013-10-28 09:16:24 -07:00
Kevin Sawicki ad67abc2a2 Upgrade to atom-shell@0.6.6 2013-10-28 09:12:57 -07:00
Kevin Sawicki 50d2d5b1cd Upgrade to git-utils@0.28.0 2013-10-28 09:12:36 -07:00
Cheng Zhao 010905db0b Fix the "'true' is not found" error. 2013-10-28 09:23:57 +08:00
Kevin Sawicki 232bc8be8e Merge pull request #1032 from atom/ks-comment-corruption
Fix commenting on hard tab lines
2013-10-26 15:26:31 -07:00
Kevin Sawicki 57577966e7 Add assert for .5 indent level 2013-10-26 15:21:02 -07:00
Kevin Sawicki 08d5231d28 Add assert for unindented line 2013-10-26 15:21:02 -07:00
Kevin Sawicki 05c3d89381 Measure indent prefix on each line being commented
Previously a single indent string was used to replace all lines
which could corrupt lines using hard tabs since the indent string
used for replacement was two spaces causing the first character
of the line to be deleted.

Closes atom/language-c#1
2013-10-26 15:21:02 -07:00
Kevin Sawicki 7a3dc2c3b8 Merge pull request #1039 from atom/ks-dont-async-before-bootstrapping
Bootstrap before requiring async
2013-10-26 15:20:25 -07:00
Kevin Sawicki 8eecc56d08 💄 Fix typo in variable name 2013-10-26 15:12:13 -07:00
Kevin Sawicki e009ff6c59 Add missing parens 2013-10-26 15:07:20 -07:00
Kevin Sawicki f500e2e9fc Add semicolon 2013-10-26 15:03:21 -07:00
Kevin Sawicki 2a98ccec8d Don't require async before bootstrapping
async won't be available on the very first run of script/build
until it runs script/bootstrap for the first time so defer requiring
it until script/bootstrap completes.
2013-10-26 15:01:19 -07:00
Kevin Sawicki 8742f6c06c Run apm from node_modules 2013-10-26 14:54:23 -07:00
Cheng Zhao 9605da9d56 Update apm for the check of vs express. 2013-10-26 20:40:52 +08:00
Cheng Zhao 1cdb87fdce Update to atom-shell v0.6.5. 2013-10-26 20:40:34 +08:00
probablycorey 330bb1df4b Add keymap.cson file to dot-atom 2013-10-25 16:39:06 -07:00
Kevin Sawicki 45ceb3f9f9 Merge pull request #1028 from atom/ks-less-one-point-five
Upgrade to less 1.5.0
2013-10-25 16:21:36 -07:00
Matt Colyer 3fa7c8fb48 Handle the difference between atom-shell binaries 2013-10-25 16:20:30 -07:00
probablycorey 97c183d6df Update docs 2013-10-25 16:19:55 -07:00
probablycorey 42362e6ce9 Load user-keymap.cson instead of keymaps dir 2013-10-25 16:19:38 -07:00
Kevin Sawicki 2266ea25e8 Upgrade to less-cache@0.9.0 2013-10-25 16:05:01 -07:00
Kevin Sawicki 970d7654cb Upgrade to grunt-contrib-less@0.8.0 2013-10-25 16:05:01 -07:00
Kevin Sawicki 82cbfb3829 Upgrade to less@1.5.0 2013-10-25 16:05:00 -07:00
probablycorey c2c6b5f868 Update coffee-script to 1.6.3 2013-10-25 16:02:23 -07:00
probablycorey 0dd0c39918 Update comment 2013-10-25 15:29:52 -07:00
probablycorey 7002b4e5f6 Factor out common buffer loading code 2013-10-25 15:26:56 -07:00
Corey Johnson 78f1865bcf Merge pull request #1033 from atom/cj-search-modified-buffers
Search modified buffers
2013-10-25 15:19:53 -07:00
probablycorey bb281ce5af 💄 2013-10-25 15:19:20 -07:00
Matt Colyer b02d906cfb Rebuild modules on Windows in grunt update-atom-shell 2013-10-25 15:06:42 -07:00
probablycorey b5b07c1052 Emit modified-status-changed event when using serialized text 2013-10-25 14:40:53 -07:00
probablycorey c77b44d5ef Move variable assignment 2013-10-25 14:29:59 -07:00
Kevin Sawicki eba1e474f8 Upgrade to spell-check@0.9.0 2013-10-25 14:27:51 -07:00
Kevin Sawicki 6fa580f543 Upgrade to symbols-view@0.15.0 2013-10-25 14:24:07 -07:00
probablycorey feed72b68e Change @loadFromDisk to @useSerializedText 2013-10-25 14:21:39 -07:00
probablycorey 5cee47c207 Fix replication spec
Don't rely on serialization to handle modifications after documents are
connected.
2013-10-25 14:21:23 -07:00
Kevin Sawicki 1d1a14b8e9 Upgrade to gists@0.6.0 2013-10-25 14:16:23 -07:00
Kevin Sawicki 18421465c0 Upgrade to github-sign-in@0.9.0 2013-10-25 14:15:20 -07:00
Matt Colyer ea9930db70 Disable broken packages, for now 2013-10-25 14:06:05 -07:00
probablycorey 2d40cb09d1 Remove focused spec 2013-10-25 14:03:27 -07:00
probablycorey 8956881192 Only load serialized content if the disk content's have not changed. 2013-10-25 13:50:16 -07:00
probablycorey 32bc8a6258 Remove initialText option from TextBuffer constructor 2013-10-25 13:50:06 -07:00
Matt Colyer 30c1124e5e Bump apm for visual studio fixes 2013-10-25 12:15:20 -07:00
Kevin Sawicki 63cb53b169 Upgrade to language-xml@0.2.0 2013-10-25 12:09:27 -07:00
Kevin Sawicki 17ebb079eb Upgrade to language-text@0.2.0 2013-10-25 12:08:34 -07:00
Kevin Sawicki 9f4f3d26e5 Upgrade to language-sql@0.2.0 2013-10-25 12:07:52 -07:00
Kevin Sawicki 8bc9c9aba3 Upgrade to language-source@0.2.0 2013-10-25 12:07:14 -07:00
Kevin Sawicki 2e20c7696e Upgrade to language-shellscript@0.2.0 2013-10-25 11:53:51 -07:00
Kevin Sawicki 78bb8b473b Upgrade to language-sass@0.3.0 2013-10-25 11:53:11 -07:00
Kevin Sawicki a0fb4333d5 Upgrade to language-ruby@0.4.0 2013-10-25 11:52:10 -07:00
Kevin Sawicki 197291e453 Upgrade to language-ruby-on-rails@0.3.0 2013-10-25 11:52:03 -07:00
Kevin Sawicki bafea9b95b 💄 Sort language packages 2013-10-25 11:49:37 -07:00
Kevin Sawicki 23b635db1e Upgrade to language-python@0.2.0 2013-10-25 11:48:35 -07:00
Kevin Sawicki 7aa57c44f8 Upgrade to language-puppet@0.2.0 2013-10-25 11:45:20 -07:00
Kevin Sawicki ece0ea2a54 Upgrade to language-php@0.2.0 2013-10-25 11:44:24 -07:00
Kevin Sawicki f22732b109 Upgrade to language-perl@0.2.0 2013-10-25 11:43:32 -07:00
Kevin Sawicki 71b9188ece Upgrade to language-object-c@0.2.0 2013-10-25 11:42:38 -07:00
Kevin Sawicki a2017628bc Upgrade to language-json@0.2.0 2013-10-25 11:39:33 -07:00
Kevin Sawicki cf025639bd Upgrade to language-javascript@0.3.0 2013-10-25 11:39:02 -07:00
Kevin Sawicki df6ebddc69 Upgrade to language-java@0.2.0 2013-10-25 11:38:14 -07:00
Kevin Sawicki aa2734f3bf Upgrade to language-hyperlink@0.3.0 2013-10-25 11:37:37 -07:00
Kevin Sawicki b9e3a8bd40 Upgrade to language-html@0.2.0 2013-10-25 11:36:28 -07:00
Kevin Sawicki 2a3a38a5f8 Upgrade to language-git@0.2.0 2013-10-25 11:35:35 -07:00
Kevin Sawicki 0254812446 Upgrade to language-css@0.2.0 2013-10-25 11:29:13 -07:00
Kevin Sawicki 11186f627e Upgrade to language-c@0.2.0 2013-10-25 11:23:21 -07:00
Kevin Sawicki db44df040e Upgrade apm for windows fix 2013-10-25 10:14:59 -07:00
Kevin Sawicki cdf439b556 Upgrade apm for windows fix 2013-10-25 10:14:04 -07:00
Kevin Sawicki e4fc15deec Remove cmake check since it is no longer required 2013-10-25 10:01:43 -07:00
Kevin Sawicki 53547b5a8d Trigger commands on rootView when body is active element 2013-10-25 09:20:47 -07:00
Kevin Sawicki 6460cbe288 Upgrade to command-palette@0.6.0 2013-10-25 08:36:32 -07:00
Kevin Sawicki 29646cdff8 💄 Use Date.now 2013-10-24 18:58:43 -07:00
Kevin Sawicki feff67457d 🚱 Include namespace when canceling subscription
Emissary does not clear our namespace listeners when calling off
with only the event name and the handler.
2013-10-24 18:45:00 -07:00
probablycorey 1f30231d5c Project.scan scans buffer if the file is modified
Closes #487
2013-10-24 15:32:32 -07:00
Ben Ogle 3e584f29b1 Upgrade to find-and-replace@0.32.0 2013-10-24 15:17:29 -07:00
probablycorey c424f7bafa Remove console.log 2013-10-24 15:04:38 -07:00
probablycorey 48fbdc69fb Update collaboration version 2013-10-24 14:43:05 -07:00
probablycorey c1b0ba2773 Check for cmake dependency before building Atom 2013-10-24 14:40:03 -07:00
Matt Colyer d4949c872b Merge pull request #1019 from atom/api-docs
More detailed pass at API documentation
2013-10-24 13:54:03 -07:00
Matt Colyer a8a28c8635 Merge remote-tracking branch 'origin/master' into win-bootstrap-native-modules 2013-10-24 13:47:09 -07:00
Kevin Sawicki 6f47010a72 Upgrade to language-javascript@0.2.0 2013-10-24 09:52:51 -07:00
Adam Roben 0a3f64a3df Merge pull request #1029 from atom/aroben-patch-1
Get rid of ANSI escape sequences in Constructicon output
2013-10-24 09:21:57 -07:00
Adam Roben f21e8e3aa4 Get rid of ANSI escape sequences in Constructicon output
Passing --no-color to grunt should get rid of these.
2013-10-24 08:48:05 -04:00
Paul Betts 39fb929af6 Bump pathwatcher and git-utils to Windows friendly ones 2013-10-23 16:47:11 -07:00
Kevin Sawicki ca26d53db1 Upgrade to collaboration@0.29.0 2013-10-23 16:31:24 -07:00
Matt Colyer 1b8f8cd914 📝 Clarify git-utils.coffee 2013-10-23 16:16:30 -07:00
Kevin Sawicki 2d30ec84bb Upgrade to tree-view@0.21.0 2013-10-23 16:12:25 -07:00
Kevin Sawicki 378a7135b7 Add missing at sign before getFocusedWindowSize
Closes atom/collaboration#22
2013-10-23 15:53:52 -07:00
Matt Colyer b288a5c68f 📝 Provide detailed docs on fsUtils 2013-10-23 14:52:27 -07:00
Corey Johnson 265e4ff43c Merge pull request #1020 from atom/cj-add-flash-error
Add visual cues for errors and beeps
2013-10-23 14:30:41 -07:00
probablycorey 4ad38eed87 Use @config instead of config 2013-10-23 14:26:48 -07:00
Kevin Sawicki 427a26c99b Upgrade apm for a couple tweaks 2013-10-23 14:25:13 -07:00
probablycorey 069e0bed9a Merge remote-tracking branch 'origin/master' into cj-add-flash-error 2013-10-23 14:21:37 -07:00
probablycorey f7dfd60014 Remove unused $$ 2013-10-23 14:14:47 -07:00
probablycorey d5f92ef59d Move all beep code into Atom class 2013-10-23 14:09:00 -07:00
Kevin Sawicki 76b68ae1f8 Upgrade to settings-view@0.33.0 2013-10-23 12:41:55 -07:00
Matt Colyer b79068ea65 Merge branch 'master' into api-docs 2013-10-23 12:29:43 -07:00
Matt Colyer 9ae078f405 Prepare for v32.0.0 release 2013-10-23 12:19:28 -07:00
Kevin Sawicki 2dd1b161cf Upgrade apm for available fix 2013-10-23 12:14:15 -07:00
Matt Colyer e6e7d389cd Upgrade symbols-view@0.14.0 2013-10-23 12:09:37 -07:00
Matt Colyer 6aa6706d86 Move window:reload from cmd-r => ctrl-alt-cmd-r 2013-10-23 12:05:48 -07:00
Matt Colyer 2b2677ae18 Upgrade apm to work with latest atom.io API 2013-10-23 12:01:19 -07:00
probablycorey 42e269a7ce Update visual bell to v0.3.0 2013-10-23 11:57:21 -07:00
Ben Ogle 0c6c2e2d84 Upgrade to find-and-replace#0.31.0 2013-10-23 11:48:26 -07:00
probablycorey c513c55f7a Update visual-beep package name to visual-bell 2013-10-23 11:38:19 -07:00
Kevin Sawicki e873a0977c Revert "Set path to node directly"
This reverts commit 8bcf40111d.
2013-10-23 11:29:14 -07:00
Kevin Sawicki 8bcf40111d Set path to node directly 2013-10-23 11:18:49 -07:00
probablycorey 224bc56d4e Require $$ via space-pen-extensions 2013-10-23 11:16:12 -07:00
probablycorey 5d35f52174 Add Visual Beep to default packages 2013-10-23 11:12:27 -07:00
Matt Colyer afb2ec86b7 Merge branch 'master' into api-docs 2013-10-23 11:02:38 -07:00
Ben Ogle 8f870544b9 Upgrade to find-and-replace@0.30.0 2013-10-23 10:58:33 -07:00
Ben Ogle 29f6833807 upgrade to settings-view@0.32.0 2013-10-23 10:53:37 -07:00
probablycorey ffcd948362 Move beep method to rootView 2013-10-23 10:42:13 -07:00
probablycorey 3b525302b0 Merge remote-tracking branch 'origin/master' into cj-add-flash-error 2013-10-23 10:27:49 -07:00
Ben Ogle 3ae5213ebf Update theme docs 2013-10-22 18:26:21 -07:00
Ben Ogle d2f33dcf39 Upgrade to settings-view@0.31.1 2013-10-22 18:09:38 -07:00
Ben Ogle 80f4e7eb7f Add ThemeManager.setEnabledThemes 2013-10-22 18:09:21 -07:00
Kevin Sawicki cbb82b1dcc Use background-color-selected for active pill
This prevents the bright blue pill color in dark-ui and instead
mirrors the active tab color.
2013-10-22 17:07:44 -07:00
probablycorey 7a81a84393 Update markdown preview package to 0.12.0 2013-10-22 16:29:33 -07:00
Matt Colyer f2f915c0d0 Merge branch 'master' into api-docs 2013-10-22 16:19:18 -07:00
Matt Colyer 72bd408722 Merge pull request #1000 from atom/sublime-keybindings
Sublime keybindings
2013-10-22 16:14:07 -07:00
Matt Colyer e38f7259e5 Upgrade symbols-view@0.13.0 2013-10-22 16:12:15 -07:00
Matt Colyer 48335bd4ac Upgrade exception-report@0.5.0 2013-10-22 16:08:05 -07:00
Kevin Sawicki cdebc2306c Upgrade apm for install version fix 2013-10-22 16:06:28 -07:00
Ben Ogle a37b029ad9 Prepend newly enabled themes, not append 2013-10-22 16:04:55 -07:00
Matt Colyer ba9be0c07a Add Movements menu 2013-10-22 16:00:32 -07:00
Ben Ogle 4a48e1a228 Upgrade to package-generator@0.14.0 2013-10-22 15:59:49 -07:00
Kevin Sawicki 43dae4e9eb Add helper to get apm path 2013-10-22 15:52:04 -07:00
Matt Colyer 8503a53fec 📝 Update documentation for file.coffee 2013-10-22 15:46:21 -07:00
Matt Colyer d0ed2a87cd 📝 Remove curly braces for core objects 2013-10-22 15:46:04 -07:00
Kevin Sawicki fa36ab1a5c Add apm to public API 2013-10-22 15:45:22 -07:00
Ben Ogle 141da61301 Commands for moving in buffer more consistent with sublime 2013-10-22 15:27:27 -07:00
Kevin Sawicki 59ef210624 Stub out Find, Collaboration, and Packages in base menu 2013-10-22 15:26:57 -07:00
Matt Colyer 2ddcfb60cf Allow f2 and tab keybindings
This is possible now that we're on atom-shell@0.6.4
2013-10-22 15:17:12 -07:00
Matt Colyer e003b478f3 Sublime accepts both meta-Z and meta-y 2013-10-22 15:17:11 -07:00
Matt Colyer de69446e1e Remap join lines to meta-j 2013-10-22 15:17:11 -07:00
Matt Colyer 5e253378e2 Update restricted key bindings for atom-shell@0.6.3 2013-10-22 15:17:11 -07:00
Matt Colyer 9da395c0aa Add a Selection menu 2013-10-22 15:17:11 -07:00
Matt Colyer fd0bed4248 Fill out the rest of the Edit menu 2013-10-22 15:17:11 -07:00
Matt Colyer 1f86c62dc9 Remove accidental logging 2013-10-22 15:17:11 -07:00
Matt Colyer 161a87b8e1 Change delete-line accelerator to ctrl-K 2013-10-22 15:17:11 -07:00
Matt Colyer 74cb91a6a1 Add Edit > Lines submenu 2013-10-22 15:17:11 -07:00
Matt Colyer 3eab78bc23 Set undo keybinding to meta-y 2013-10-22 15:17:11 -07:00
Ben Ogle 2574e4b6ee Merge pull request #994 from atom/bo-improve-theme-load-api
Add an API for activating themes without having to touch config.themes
2013-10-22 15:14:50 -07:00
Kevin Sawicki fd177d7171 Look for token in keychain 2013-10-22 15:13:35 -07:00
Matt Colyer eeb24e1d5c Mt erge branch 'master' into api-docs 2013-10-22 15:12:43 -07:00
Ben Ogle b13c633775 Upgrade to dev-live-reload@0.11.0 2013-10-22 15:09:58 -07:00
Matt Colyer b14ca90362 Upgrade tree-view@0.20.0 2013-10-22 15:08:09 -07:00
Ben Ogle 997891f298 Fixup specs 2013-10-22 15:07:09 -07:00
Ben Ogle 967c04fb19 Clean up theme check in PackageManager with PackageActivators
You can now call `PackageManager.registerPackageActivator` for specific
package types. On `PackageManager.activate` it will call your
`PackageActivator.activatePackages(packages)` with the proper packages.
2013-10-22 15:07:09 -07:00
Ben Ogle 2a7908a196 Upgrade to settings-view@0.31.0 2013-10-22 15:07:08 -07:00
Ben Ogle ecbb7cad23 fix test from config 2013-10-22 15:06:54 -07:00
Ben Ogle 8ac84359b1 Fix docs 2013-10-22 15:06:54 -07:00
Ben Ogle 71a24ec49b Fix config tests 2013-10-22 15:06:54 -07:00
Ben Ogle c614519529 Clean up the tests; add tests for disablePackage() 2013-10-22 15:06:54 -07:00
Ben Ogle 2624cf6e75 oops, don't deactivate all the packages! 2013-10-22 15:06:54 -07:00
Ben Ogle f2c1ea9b5a Remove log lines 2013-10-22 15:06:54 -07:00
Ben Ogle 7b1b73e8eb Watch the core.disabledPackages config option 2013-10-22 15:06:54 -07:00
Ben Ogle e8b50755cb Add config.unobserve() 2013-10-22 15:06:54 -07:00
Ben Ogle dd3b20f7de Pass previous value to the callback in config.observe() 2013-10-22 15:06:54 -07:00
Ben Ogle 73c1fb23da Use more concise method for @metadata settings 2013-10-22 15:06:54 -07:00
Ben Ogle d5b07088cd Remove loadStylesheets from non-theme pckage activate() 2013-10-22 15:06:53 -07:00
Ben Ogle d2864f1d0c Upgrade to dev-live-reload@0.10.0 2013-10-22 15:06:53 -07:00
Ben Ogle b330ce6722 Add atom.inSpecMode() 2013-10-22 15:06:53 -07:00
Ben Ogle 81e6150fde Return package if its already loaded 2013-10-22 15:06:53 -07:00
Ben Ogle 16128b0d90 upgrade to settings-view@0.30.0 2013-10-22 15:06:53 -07:00
Ben Ogle 0788905eb5 Upgrade to dev-live-reload@0.9.0 2013-10-22 15:06:26 -07:00
Ben Ogle abe36765b5 Fix test for both local and janky 2013-10-22 15:06:25 -07:00
Ben Ogle eaea8753f5 nof 2013-10-22 15:06:25 -07:00
Ben Ogle 0b74dfc67a Remove unnecessary lines 2013-10-22 15:06:25 -07:00
Ben Ogle 9f753cd3b9 💄 2013-10-22 15:06:25 -07:00
Ben Ogle 4440210d9a Fix tests 2013-10-22 15:06:25 -07:00
Ben Ogle 56832b11fc Refactor pkg and themeManager -- all themes stored in the pkg manager 2013-10-22 15:06:25 -07:00
Kevin Sawicki 23cc82e0ef Upgrade apm for install fixes 2013-10-22 15:05:17 -07:00
Ben Ogle 077cb9ddb7 Add an enableTheme() function to ThemeManager
And use it in the activatePackage() function in PackageManager
2013-10-22 15:04:55 -07:00
Matt Colyer b416116e0c Merge pull request #1023 from atom/remove-next-tick
Remove `_.nextTick` from atom exports
2013-10-22 14:54:10 -07:00
Matt Colyer 9cc52e7882 Remove _.nextTick from exports 2013-10-22 13:53:56 -07:00
Kevin Sawicki 79e90b313f Merge pull request #1021 from atom/ks-remove-bundle-shim
Update packages to use new language-* package naming scheme
2013-10-22 13:52:41 -07:00
Matt Colyer 9093690511 Upgrade timecop@0.7.0 2013-10-22 13:51:39 -07:00
Matt Colyer c8a45b7b74 Upgrade terminal@0.14.0 2013-10-22 13:49:16 -07:00
Matt Colyer f1e862252b Update git-diff@0.12.0 2013-10-22 13:47:09 -07:00
Kevin Sawicki c3b79778ba Upgrade to autocomplete@0.11.0 2013-10-22 13:44:54 -07:00
Kevin Sawicki 37fec2e2bf Upgrade to grammar-selector@0.8.0 2013-10-22 13:39:49 -07:00
Matt Colyer d805b6f6ac tMerge branch 'master' into api-docs 2013-10-22 13:35:56 -07:00
Kevin Sawicki f88e7e99ee Upgrade to markdown-preview@0.11.0 2013-10-22 13:34:04 -07:00
Kevin Sawicki 3c1734c8f3 Upgrade to link@0.7.0 2013-10-22 13:23:36 -07:00
Kevin Sawicki efdcf5a40f Upgrade to snippets@0.11.0 2013-10-22 13:20:29 -07:00
Kevin Sawicki 06960f5c10 Upgrade to spell-check@0.8.0 2013-10-22 13:19:20 -07:00
Kevin Sawicki 047b875ce9 Upgrade to status-bar@0.15.0 2013-10-22 13:16:58 -07:00
Kevin Sawicki 2b266da3e3 Upgrade to markdown-preview@0.10.0 2013-10-22 13:10:32 -07:00
Kevin Sawicki d430aafb7c Remove bundle rename shim 2013-10-22 13:03:27 -07:00
Kevin Sawicki 4132cddb8a Merge pull request #1012 from atom/ks-atom-dot-io
Install packages from atom.io
2013-10-22 13:02:07 -07:00
probablycorey d38067ec1a Fix lint errors 2013-10-22 13:00:14 -07:00
Kevin Sawicki beda703001 Upgrade to latest apm master 2013-10-22 12:56:30 -07:00
probablycorey 71ede6b97f Add core.audioBeep and core.visualBeep to core settings
Closes #996
2013-10-22 12:43:41 -07:00
Kevin Sawicki fa5f88cf05 Upgrade apm for atom.io integration 2013-10-22 12:40:46 -07:00
probablycorey 069ae17f9d Atom::beep triggers visual and audio beep 2013-10-22 12:32:06 -07:00
Kevin Sawicki 1e4041d7cf Upgrade apm for create fixes 2013-10-22 12:31:44 -07:00
Kevin Sawicki a7d2c14364 Expect 201 when creating package/version 2013-10-22 12:31:12 -07:00
Kevin Sawicki abf570ebf5 Upgrade to collaboration@0.28.0 2013-10-22 12:27:33 -07:00
probablycorey 3c08ae2de6 Add Atom::visualBeep method 2013-10-22 12:18:22 -07:00
Kevin Sawicki c1fae082b4 Add shim for hyperlink bundle rename 2013-10-22 12:04:39 -07:00
Kevin Sawicki 40ab5938f2 Convert old bundle names until specs are updated 2013-10-22 11:54:19 -07:00
Kevin Sawicki b2dae8be6c Update package for new name 2013-10-22 11:38:10 -07:00
probablycorey c71e9cf618 Add flashError css 2013-10-22 11:36:37 -07:00
Kevin Sawicki 931ac5d029 Upgrade apm to error passthrough fix 2013-10-22 11:35:42 -07:00
Kevin Sawicki 620b939a46 Upgrade apm for install check 2013-10-22 11:31:12 -07:00
Kevin Sawicki 73f0f2930f Ensure package basename is used 2013-10-22 11:19:47 -07:00
Kevin Sawicki c66b478c63 Upgrade apm for progress tweak 2013-10-22 11:19:41 -07:00
Kevin Sawicki 2254a6e33b Set environment variables before bootstrapping
The environment variables are required by bootstrap now for
installing packages via atom.io
2013-10-22 10:34:34 -07:00
Kevin Sawicki bb19821c5c Upgrade apm 2013-10-22 10:15:54 -07:00
Kevin Sawicki 0aae15e4c1 Upgrade apm for class renames 2013-10-22 09:01:31 -07:00
Kevin Sawicki 4d035b148d 💄 2013-10-22 09:01:31 -07:00
Kevin Sawicki 7bee816c19 Upgrade apm for install fix 2013-10-22 09:01:31 -07:00
Kevin Sawicki 927279cd9d Require language suffix to be non-empty 2013-10-22 09:01:31 -07:00
Kevin Sawicki 91f33de04e Upgrade apm for another clean fix 2013-10-22 09:01:31 -07:00
Kevin Sawicki 351035e540 Upgrade apm for clean command fix 2013-10-22 09:01:31 -07:00
Kevin Sawicki 656bee7f56 Upgrade apm for ATOM_ACCESS_TOKEN fix 2013-10-22 09:01:31 -07:00
Kevin Sawicki e7fc879a57 Upgrade apm for new atom.io installation 2013-10-22 09:01:31 -07:00
Kevin Sawicki 575a13957b Upgrade to language-todo@0.2.0 2013-10-22 09:01:31 -07:00
Kevin Sawicki ee2e5bb2b0 Upgrade to language-sass@0.2.0 2013-10-22 09:01:31 -07:00
Kevin Sawicki efbddc7339 Upgrade to language-ruby@0.2.0 2013-10-22 09:01:31 -07:00
Kevin Sawicki 1c16f4fb73 Upgrade to language-ruby-on-rails@0.2.0 2013-10-22 09:01:30 -07:00
Kevin Sawicki 23158261b2 Upgrade to language-property-list@0.2.0 2013-10-22 09:01:30 -07:00
Kevin Sawicki dd51a08d54 Upgrade to language-hyperlink@0.2.0 2013-10-22 09:01:30 -07:00
Kevin Sawicki 03f6461dec Reset language packages versions 2013-10-22 09:01:30 -07:00
Kevin Sawicki 4fae98d049 Use atom.io URL 2013-10-22 09:01:30 -07:00
Kevin Sawicki eeebaba350 Add language- prefix to package name regex 2013-10-22 09:01:30 -07:00
Kevin Sawicki 3b05b40d66 Update package names for new language- prefix 2013-10-22 09:01:30 -07:00
Kevin Sawicki f01d006e25 Add task to publish packages 2013-10-22 09:01:30 -07:00
Kevin Sawicki d765880f74 Upgrade core themes for versions with a README 2013-10-22 09:01:30 -07:00
Kevin Sawicki ceffb23431 Put clojure with the other c packages 2013-10-22 09:01:30 -07:00
Kevin Sawicki 755abaf2b7 Break out package dependencies into separate section 2013-10-22 09:01:30 -07:00
probablycorey 35ff4b8677 Remove unnecessary "if" condition
Hat tip briandoll
2013-10-21 20:14:25 -07:00
Cheng Zhao d16fb6fc8f Update to atom-shell v0.6.4. 2013-10-22 10:39:00 +08:00
Cheng Zhao 5d701d899e Merge pull request #1011 from atom/no-root-tmp
Do not always use "/tmp" to represent system temporary directory
2013-10-21 17:37:04 -07:00
Cheng Zhao 12ca6f86ef Merge pull request #1003 from atom/bash-scripts-to-js
Convert bash scripts to node.js
2013-10-21 17:36:32 -07:00
Matt Colyer 58ef0f4176 📝 Refine Directory's documentation 2013-10-21 16:54:52 -07:00
probablycorey 4dada919ba Revert "Remove window.measure and window.profile"
This reverts commit 9b318c1317.
2013-10-21 16:49:00 -07:00
probablycorey 9b318c1317 Remove window.measure and window.profile 2013-10-21 16:46:19 -07:00
Matt Colyer 6ed3bb48f2 Remove 'fs' require and use 'fsUtils' instead 2013-10-21 16:35:59 -07:00
Matt Colyer 814ab4e980 📝 Throughly document BufferedProcess. 2013-10-21 16:32:10 -07:00
Matt Colyer ffbce2020e Note that stderr is optional 2013-10-21 16:31:15 -07:00
Matt Colyer 0fc2f70dc5 📝 Throughly document BufferedNodeProcess 2013-10-21 16:26:18 -07:00
probablycorey 5277277683 Only modify pathToOpen if initialLine option is present.
Closes #1007
2013-10-21 16:05:45 -07:00
Matt Colyer 3ec33de3b7 Upgrade release-notes@0.8.0 2013-10-21 15:57:47 -07:00
Corey Johnson 0d49f2a3d0 Merge pull request #1001 from atom/cj-render-long-lines
Render long lines (without crashing or long pauses)
2013-10-21 15:38:13 -07:00
probablycorey d21a5a6836 Use string concatenation instead of array concatenation 2013-10-21 15:17:41 -07:00
probablycorey 5e3d52927a Use cachedCharWidth instead of cachedVal 2013-10-21 11:10:44 -07:00
probablycorey 0bc470c6d9 💄 2013-10-21 11:10:17 -07:00
Kevin Sawicki 2aa3a7c332 Merge pull request #1004 from atom/ks-multi-byte-onig-fix
Upgrade oniguruma for multi-byte scanning fix
2013-10-21 08:29:51 -07:00
Kevin Sawicki 948a2a47a3 Add spec for JSON tokenizing with Unicode characters 2013-10-21 08:25:15 -07:00
Kevin Sawicki df2727d926 Upgrade to oniguruma@0.21.0
Closes #980
2013-10-21 08:25:15 -07:00
Cheng Zhao 1129ff7436 doc: Mention we should be ware of platform differences. 2013-10-21 22:41:41 +08:00
Cheng Zhao 89f72c36f8 💄 Do not use "path" as file path's variabla name. 2013-10-21 22:36:40 +08:00
Cheng Zhao 017c3315d2 💄 Fix typos in specs. 2013-10-21 22:23:22 +08:00
Cheng Zhao 0a561643a9 Home directory is process.env.USERPROFILE on Windows. 2013-10-21 22:04:51 +08:00
Cheng Zhao 640b6feb49 💄 The atom object is no accessable in browser process. 2013-10-21 21:59:03 +08:00
Cheng Zhao 94f441e123 💄 Add missing ")". 2013-10-21 21:49:55 +08:00
Cheng Zhao 459309aa78 Do not use "/tmp" in scripts. 2013-10-21 21:42:55 +08:00
Cheng Zhao 558778b4d4 Add atom.getTempDirPath to return the path of "system temporary directory". 2013-10-21 21:39:52 +08:00
Cheng Zhao 05550717e2 Use temp.dir to replace '/tmp' in specs. 2013-10-21 21:36:08 +08:00
Cheng Zhao a92e5c00ea Update atom-shell to v0.6.3. 2013-10-21 16:59:49 +08:00
Cheng Zhao dbd1438cf7 Add script/bootstrap.cmd. 2013-10-19 22:32:26 +08:00
Cheng Zhao 082686bba8 Fix bootstrap script on Windows. 2013-10-19 22:11:03 +08:00
probablycorey f6fee9d04f Optimize measuring long lines 2013-10-18 15:36:39 -07:00
probablycorey 02dd79feeb Use module variable naming conventions 2013-10-18 15:36:25 -07:00
probablycorey ff5ee45dc7 Fix return value for getValueAsHTML 2013-10-18 13:53:11 -07:00
Matt Colyer 702eaea483 Merge pull request #991 from atom/menu-improvements
Improve menus for discoverablity
2013-10-18 13:04:37 -07:00
Matt Colyer fc6b6d9760 Upgrade release-notes@0.6.0 2013-10-18 12:05:32 -07:00
Matt Colyer 3e5f204f08 Add a Help menu 2013-10-18 12:02:03 -07:00
probablycorey eced0a3208 Don't cache entire line length on lines > 160 chars 2013-10-18 11:58:36 -07:00
Matt Colyer f3aec0dfee Add copy path menu item 2013-10-18 11:51:56 -07:00
probablycorey fd062a7c4f Split long spans into multiple spans
If a span has more than 2^16 chars and has the style `white-space: pre` Chrome
won't render it.
2013-10-18 11:44:56 -07:00
Matt Colyer d9c946cafa Upgrade tree-view@0.19.0 2013-10-18 11:44:18 -07:00
Matt Colyer 2502d48544 Upgrade to-the-hubs@0.8.0 2013-10-18 11:38:58 -07:00
Matt Colyer 9ea2bfa920 Clear menu template to avoid separator duplication 2013-10-18 11:34:19 -07:00
Matt Colyer 2ec6d578f6 Add menu item for soft-wrap 2013-10-18 11:33:22 -07:00
Matt Colyer ff22046f54 Upgrade timecop@0.6.0 2013-10-18 11:33:07 -07:00
Matt Colyer 5541875965 Don't append duplicate menu items
Fixes #995
2013-10-18 10:20:03 -07:00
Matt Colyer 9c877c7f0b Correct and add File menu items 2013-10-18 10:09:47 -07:00
Matt Colyer 4061011609 Upgrade terminal@0.13.0 2013-10-18 09:57:40 -07:00
Kevin Sawicki e8b5bf5402 Use clear-cut library for specificity 2013-10-18 09:33:57 -07:00
Kevin Sawicki 069208975c Add proper invisibles in empty lines with indent guide
This fixes a regression where multiple end of line invisibles were
displayed on empty lines when the indent guide was also enabled.

The invisibles array used to be shifted and not it isn't but the
entire array was still being iterated over causing extra invisibles
to be added to the line.
2013-10-17 18:31:59 -07:00
Kevin Sawicki 60dcef26b0 Join with empty string instead of comma 2013-10-17 17:25:28 -07:00
Matt Colyer 217f182579 Upgrade symbols-view@0.12.0 2013-10-17 17:12:50 -07:00
Kevin Sawicki ccdd17c0d8 Don't modify passed in item
Perform a deep clone before iterating over to add items and submenus.
2013-10-17 16:57:49 -07:00
Kevin Sawicki d6452c37d8 Clear menu template after each spec run
This is needed since packages don't destroy menus when deactivated
so the template currently grows larger each time a package is activated.
2013-10-17 16:31:15 -07:00
Matt Colyer c9ab78ee53 Upgrade styleguide@0.9.0 2013-10-17 16:29:55 -07:00
Matt Colyer 5a1e72cd81 Upgrade snippets@0.10.0 2013-10-17 16:29:34 -07:00
Matt Colyer bd674764e8 Upgrade release-notes@0.5.0 2013-10-17 16:19:53 -07:00
Matt Colyer 3cce3c5202 Upgrade package-generator@0.13.0 2013-10-17 16:12:57 -07:00
Matt Colyer c809df6762 Upgrade markdown-preview@0.9.0 2013-10-17 16:12:24 -07:00
Matt Colyer 9c3a8e5c7a Upgrade grammar-selector@0.7.0 2013-10-17 16:01:35 -07:00
Matt Colyer 9f0064f903 Upgrade to go-to-line@0.8.0 2013-10-17 15:57:06 -07:00
Matt Colyer 35399d93a9 Upgrade github-sign-in@0.8.0 2013-10-17 15:46:32 -07:00
Kevin Sawicki 5619f81c89 Log error before exiting 2013-10-17 15:38:47 -07:00
Matt Colyer 26d9d7a8fd Merge branch 'master' into menu-improvements
Conflicts:
	package.json
2013-10-17 15:28:22 -07:00
Matt Colyer 590a03b8e3 Upgrade gists@0.5.0 2013-10-17 15:09:22 -07:00
Matt Colyer 9c9e1164b1 Upgrade to fuzzy-finder@0.15.0 2013-10-17 14:59:44 -07:00
probablycorey 708d3fb08f Show Preference opens a new window (when none are already open)
Closed #990
2013-10-17 14:45:01 -07:00
probablycorey e07fb89ec7 💄 2013-10-17 14:45:01 -07:00
Matt Colyer 3c13f41b7c Upgrade find-and-replace@0.29.0 2013-10-17 14:44:03 -07:00
Matt Colyer 49756e6846 Upgrade editor-stats@0.5.0 2013-10-17 14:33:00 -07:00
Matt Colyer 142f5cf754 Add "Run Package Specs" menu item 2013-10-17 14:30:35 -07:00
Matt Colyer acbb521532 Upgrade dev-live-reload@0.8.0 2013-10-17 14:25:25 -07:00
Matt Colyer 1e6302b060 Upgrade command-logger@0.6.0 2013-10-17 14:17:30 -07:00
Kevin Sawicki c7afa8d682 Upgrade to go-to-line@0.7.0 2013-10-17 14:17:18 -07:00
Kevin Sawicki 30e20884d9 Upgrade to collaboration@0.26.0 2013-10-17 14:13:37 -07:00
Matt Colyer 3e71e8a2be Upgrade to collaboration@0.25.0 2013-10-17 14:11:13 -07:00
probablycorey 0e601737e7 Update find and replace 2013-10-17 13:58:29 -07:00
Matt Colyer 0653eed275 Upgrade to bookmarks@0.8.0 2013-10-17 13:56:27 -07:00
Matt Colyer 0d131e7253 Upgrade to autoflow@0.5.0 2013-10-17 13:49:45 -07:00
Ben Ogle a0c5e38cdd Merge pull request #988 from atom/bo-package-doc-update
Doc update for themes
2013-10-17 13:43:56 -07:00
Ben Ogle b1d474fd5c Remove slow 2013-10-17 13:42:25 -07:00
Matt Colyer 0dc6302c38 Update base menus to match proposal 2013-10-17 13:42:14 -07:00
Ben Ogle 89ea353d99 Fix based on matts suggestions 2013-10-17 13:41:40 -07:00
Corey Johnson 766634c428 Merge pull request #989 from atom/cj-text-buffer-cleanup
Text Buffer cleanup
2013-10-17 11:52:25 -07:00
probablycorey 1262073853 Wait for buffer to load in git spec 2013-10-17 11:48:22 -07:00
probablycorey 686b88fe60 Use fsUtils.statSyncNoException 2013-10-17 11:35:20 -07:00
probablycorey 875dfa61cb Merge remote-tracking branch 'origin/master' into cj-text-buffer-cleanup 2013-10-17 10:48:11 -07:00
probablycorey 2000e43053 Don't allow Atom to open files larger than 1MB
Temporary measure until we can get this working with telepath.
2013-10-17 10:41:17 -07:00
probablycorey 450eba0d54 Make content change events use async reads 2013-10-17 10:40:41 -07:00
probablycorey 5be444c4ed Rearrange require order 2013-10-17 10:40:14 -07:00
probablycorey 238399adb6 spec 💄 2013-10-17 10:39:42 -07:00
probablycorey 747b79cced Actually store the cached contents of a file.
Big Beautiful Arrows
2013-10-17 10:39:23 -07:00
probablycorey 6e93c37ce1 Rename File::read to File::readSync 2013-10-17 10:38:45 -07:00
Matt Colyer b3b3e5fa3c Upgrade autocomplete to 0.10.0 2013-10-17 10:24:41 -07:00
Kevin Sawicki 3251362400 Merge pull request #987 from atom/ks-fuzzaldrin
Extract string score and fuzzy filter
2013-10-17 09:55:28 -07:00
Kevin Sawicki 9b84271fee Upgrade to settings-view@0.29.0 2013-10-17 09:46:10 -07:00
Kevin Sawicki 5e5375528b Replace stringscore/fuzzy-filter with fuzzaldrin 2013-10-17 09:46:10 -07:00
Cheng Zhao 514ca3a9c2 Update to atom-shell v0.6.2. 2013-10-17 10:32:50 +08:00
Ben Ogle 436ffd90d4 Small changes to the pkg docs 2013-10-16 17:34:05 -07:00
Ben Ogle 201677eb1d Add notes about creating a UI theme 2013-10-16 17:18:32 -07:00
Ben Ogle 887dadd589 fix theme docs 2013-10-16 17:05:26 -07:00
Kevin Sawicki 538f66d9cf Merge pull request #977 from atom/ks-space-pen-from-jquery
Use jquery through space-pen
2013-10-16 15:27:33 -07:00
Ben Ogle 53b0ac22cc Update theme docs 2013-10-16 15:11:20 -07:00
Kevin Sawicki 84dc0df925 Update lastPixelPosition when changing
Also remove unused changedPosition variable
2013-10-16 15:02:48 -07:00
probablycorey d49e419191 Rename updateCachedDiskContents and updateCachedDiskContentsAsync 2013-10-16 14:47:08 -07:00
probablycorey d33e3e4071 TextBuffers::isModified returns false until it is fully loaded 2013-10-16 14:46:30 -07:00
Kevin Sawicki 02b9e79888 Upgrade to fuzzy-finder@0.14.0 2013-10-16 14:44:43 -07:00
Kevin Sawicki 820b870f82 Use triggerHandler for window focus/blur in specs 2013-10-16 14:41:38 -07:00
Kevin Sawicki 6171e357c1 Upgrade to autocomplete@0.9.0 2013-10-16 14:22:52 -07:00
Kevin Sawicki b07b024602 Upgrade to package-generator@0.12.0 2013-10-16 14:15:25 -07:00
Kevin Sawicki c37d5124d9 Upgrade to tree-view@0.18.0 2013-10-16 14:08:57 -07:00
Kevin Sawicki caadec6e62 jquery 2.0 can't be required in tasks 2013-10-16 13:35:12 -07:00
Kevin Sawicki 7b9ff7d0f7 Trigger focusout event on hidden input 2013-10-16 13:35:12 -07:00
Kevin Sawicki 08e5c42f0c Explicitly make pane active
Previously it relied on focus firing an event which will not occur
when not on the DOM.
2013-10-16 13:35:12 -07:00
Kevin Sawicki 2d9c2ec939 Make pane active in a beforeEach 2013-10-16 13:35:12 -07:00
Kevin Sawicki ee6b2b0776 Trigger complete beforeunload event
jquery 2.0 fails to trigger this event using just
$(window).trigger('beforeunload')
2013-10-16 13:35:12 -07:00
Kevin Sawicki 607ed972c1 Listen to window focusin/focusout instead of focus/blur
This appears to be needed by jquery 2.0+ so the specs
can correctly simulate these events using trigger.
2013-10-16 13:35:11 -07:00
Kevin Sawicki 7149ade43c Attach to DOM for focus specs 2013-10-16 13:35:11 -07:00
Kevin Sawicki d989aeb592 Focus body when root view has no focusable children
This is required now that root view has a tab index
2013-10-16 13:35:11 -07:00
Kevin Sawicki cded70c48a Set tabindex on RootView so it can be focused directly 2013-10-16 13:35:11 -07:00
Kevin Sawicki ede64f65c8 Attach to DOM for focus specs 2013-10-16 13:35:11 -07:00
Kevin Sawicki 80a3e0c9c9 Check that display isn't none for visibility 2013-10-16 13:35:11 -07:00
Kevin Sawicki 5883dd4f16 Add tab index to pane
This is required in jquery 2.0 in order for the
focus event to be received.
2013-10-16 13:35:11 -07:00
Kevin Sawicki 0254e64762 Remove window handling in catch block
The catch block in index.html takes care of this
2013-10-16 13:35:11 -07:00
Kevin Sawicki d0f6e83726 Reference correct attached variable 2013-10-16 13:34:41 -07:00
Kevin Sawicki 9d51d1a143 Use jquery provided by space-pen 2013-10-16 13:34:41 -07:00
probablycorey 565f5fb304 Sort package.json dependencies 2013-10-16 12:39:44 -07:00
Corey Johnson 835088676d Merge pull request #974 from atom/cj-make-packages-async
Add 'sync' to the end of synchronous open methods
2013-10-16 12:32:58 -07:00
probablycorey 43c54a93e5 Merge remote-tracking branch 'origin/master' into cj-make-packages-async
Conflicts:
	package.json
2013-10-16 12:28:36 -07:00
probablycorey 8bd87ac4f2 Update status bar version 2013-10-16 12:20:16 -07:00
Ben Ogle 76c152b97d Add dev-live-reload to the default install 2013-10-16 12:17:37 -07:00
Ben Ogle aa57414547 Add inDevMode() function 2013-10-16 12:17:37 -07:00
probablycorey 0ee4956109 Merge remote-tracking branch 'origin/master' into cj-make-packages-async
Conflicts:
	package.json
2013-10-16 12:11:35 -07:00
Matt Colyer 28a45c0fcd Merge pull request #965 from atom/document-themes
Theme Documentation
2013-10-16 12:10:34 -07:00
probablycorey 719616aa3a Update package versions 2013-10-16 12:10:17 -07:00
Matt Colyer dbef7a26ce 📝 Describe apm linking when creating a theme 2013-10-16 12:09:27 -07:00
Matt Colyer f7a30845f8 Update keybinding 2013-10-16 12:08:53 -07:00
Matt Colyer 492d7bc69a 📝 Give package styling recommendations 2013-10-16 11:52:00 -07:00
Ben Ogle 60aca173ce Upgrade to styleguide@0.8.0 2013-10-16 11:33:09 -07:00
probablycorey 9a839045e5 Merge remote-tracking branch 'origin/master' into cj-make-packages-async 2013-10-16 10:51:34 -07:00
Kevin Sawicki ee495575a2 Use underscore-plus from browser process classes 2013-10-15 18:47:50 -07:00
Kevin Sawicki 8ce72bedea Swap activation order for new _.max behavior 2013-10-15 18:09:14 -07:00
Kevin Sawicki 5c36a98bb0 Unfocus TextMateGrammar specs 2013-10-15 17:56:14 -07:00
Matt Colyer 3f8eb361c0 📝 Cleanup/Correct Creating a package guide 2013-10-15 17:34:19 -07:00
Matt Colyer 26039653b2 Mark core.ignoredNames as complete 2013-10-15 16:50:15 -07:00
Matt Colyer fc4750bcd5 📝 Clarify a few points about themes 2013-10-15 15:20:33 -07:00
Matt Colyer 541d25787b 📝 Clean up the getting started guide 2013-10-15 15:13:38 -07:00
Kevin Sawicki 697c96921f Merge pull request #973 from atom/ks-underscore-plus
Extract underscore extensions
2013-10-15 14:48:18 -07:00
Kevin Sawicki 913f20333d Update grammar selection for _.max change
Somewhere between underscore 1.4.4 and 1.5.2 max() was changed to return
the first element with the maximum value instead of the last.

The specs were relying on that ordering when selecting a specific grammar
by path.
2013-10-15 14:26:19 -07:00
Kevin Sawicki e2ecff22c2 Use underscore-plus instead of underscore 2013-10-15 13:57:34 -07:00
Kevin Sawicki 71f7e20eeb 💄 2013-10-15 13:50:16 -07:00
Kevin Sawicki 6a3638c7d3 Use setImmediate instead of process.nextTick 2013-10-15 13:50:16 -07:00
Kevin Sawicki 5b6e8a1b20 Use process.nextTick instead of MessageChannel 2013-10-15 13:50:16 -07:00
Kevin Sawicki 216a5e61fd Update underscore-extensions requires 2013-10-15 13:50:16 -07:00
Kevin Sawicki 8dbc0259c1 Upgrade to underscore-plus@0.2.0 2013-10-15 13:50:16 -07:00
Kevin Sawicki 4d4551987f Use underscore-plus in Grunt tasks 2013-10-15 13:50:16 -07:00
Kevin Sawicki 4fa15d3fce Replace underscore-extensions with underscore-plus 2013-10-15 13:50:16 -07:00
Kevin Sawicki f066887fd8 Upgrade apm for clean fix 2013-10-15 13:42:59 -07:00
probablycorey e3250d73a8 Fix Text Buffer spec 2013-10-15 10:58:42 -07:00
probablycorey 72a89231f8 Fix Project spec 2013-10-15 10:58:33 -07:00
probablycorey 57d9aa6019 Rename TextBuffer::load to TextBuffer::loadSync 2013-10-15 10:39:50 -07:00
probablycorey af8ecef30d Add 'Sync' to end of Project's synchronous open methods
Remove 'Async' from Project's asynchronous open methods
2013-10-15 09:45:43 -07:00
Kevin Sawicki 7b3101778b Use path.join for benchmark fixtures path 2013-10-14 21:44:57 -07:00
Kevin Sawicki d292579376 Merge pull request #968 from atom/ks-emissary
Use emissary
2013-10-14 17:51:51 -07:00
Kevin Sawicki 2c8854ce8b Stop exporting Emitter and Subscriber 2013-10-14 17:45:01 -07:00
Kevin Sawicki 03964ff568 Unsubscribe from buffer when destroyed 2013-10-14 17:28:28 -07:00
Kevin Sawicki 1c357f9b65 Use TODO instead of FIXME for consistency 2013-10-14 17:28:28 -07:00
Kevin Sawicki 6e313dc0e4 Use unless instead of if for subscription check 2013-10-14 17:28:28 -07:00
Kevin Sawicki bf1457e557 Upgrade to git-diff@0.10.0 2013-10-14 17:28:28 -07:00
Kevin Sawicki 3d9bb68007 Upgrade to find-and-replace@0.26.0 2013-10-14 17:28:28 -07:00
Kevin Sawicki eaed08a5cc Use skinny arrows in Emitter shims 2013-10-14 17:28:27 -07:00
Kevin Sawicki f05bba6a6f Upgrade to emissary@0.24.0 2013-10-14 17:28:27 -07:00
Kevin Sawicki 07f370df2a Shim one to once 2013-10-14 17:28:27 -07:00
Kevin Sawicki 672fb8ecaf Shim Emitter at top of Atom class 2013-10-14 17:28:27 -07:00
Kevin Sawicki f47ad4f16b Upgrade to settings-view@0.28.0 2013-10-14 17:28:27 -07:00
Kevin Sawicki b8597ab384 Upgrade to snippets@0.8.0 2013-10-14 17:28:27 -07:00
Kevin Sawicki d10bc2c06c Upgrade to terminal@0.11.0 2013-10-14 17:28:27 -07:00
Kevin Sawicki 0db962b94f Add shims in bootstrap script 2013-10-14 17:28:27 -07:00
Kevin Sawicki 667e0929b6 Shim subscriptionCount to getSubscriptionCount 2013-10-14 17:28:27 -07:00
Kevin Sawicki ff30a8e14b Shim trigger to emit 2013-10-14 17:28:27 -07:00
Kevin Sawicki 11dbcfecaf Only watch path once 2013-10-14 17:28:27 -07:00
Kevin Sawicki 6318571fed Export Emitter instead of EventEmitter 2013-10-14 17:28:27 -07:00
Kevin Sawicki 7f1f2bccd5 Only subscribe when file exists 2013-10-14 17:28:27 -07:00
Kevin Sawicki c797995597 Migrate path watching to new subscription added/removed events 2013-10-14 17:28:26 -07:00
Kevin Sawicki 6030edcf0a Upgrade to emissary@0.6.0 2013-10-14 17:28:26 -07:00
Kevin Sawicki 9fe32954dc Update classes for emissary API 2013-10-14 17:28:26 -07:00
Kevin Sawicki 320b4a49b4 Use Subscriber.includeInto 2013-10-14 17:28:26 -07:00
Kevin Sawicki e5ac73e0db Use includeInto instead of _.extend 2013-10-14 17:28:26 -07:00
Kevin Sawicki 0b0c3229d3 EventEmitter is exported as Emitter 2013-10-14 17:28:26 -07:00
Kevin Sawicki a0486bc9b0 Use emit instead of trigger 2013-10-14 17:28:26 -07:00
Kevin Sawicki f9a0e038a5 Use emissary for EventEmitter and Subscriber 2013-10-14 17:28:26 -07:00
Kevin Sawicki ffa83e6356 Upgrade to tree-view@0.16.0 2013-10-14 17:18:42 -07:00
Matt Colyer 4b566d1ce3 📝 Cleanup markdown 2013-10-14 17:00:16 -07:00
probablycorey 09e7a5af6b Trigger uri-opened from RootView 2013-10-14 16:41:45 -07:00
probablycorey a31862a32d Allow RootView::open to not change focus 2013-10-14 16:41:33 -07:00
probablycorey c44b04e47a Merge remote-tracking branch 'origin/master' into cj-make-packages-async 2013-10-14 15:54:22 -07:00
Matt Colyer 3589fcc107 📝 Update customizing atom guide 2013-10-14 14:40:18 -07:00
Matt Colyer 30ea10cfb8 📝 Elaborate on how to create a theme 2013-10-14 12:30:08 -07:00
Kevin Sawicki d062cdda84 Merge pull request #953 from atom/ks-apm-test
Use APM test to run package specs
2013-10-14 11:49:39 -07:00
Kevin Sawicki ea93c21a92 Lint after compiling
The compile error output is better than the lint compile error output.
2013-10-14 11:43:37 -07:00
Kevin Sawicki c0cc002134 Log empty line after specs complete 2013-10-14 11:39:29 -07:00
Kevin Sawicki 417ea030ef Upgrade to archive-view@0.10.0 2013-10-14 11:34:54 -07:00
Kevin Sawicki 3145e9b53b Upgrade to tree-view@0.15.0 2013-10-14 11:34:34 -07:00
Kevin Sawicki a7bd04de36 Remove package fixtures from core fixtures dir 2013-10-14 11:25:35 -07:00
Kevin Sawicki ec37b8abd9 💄 Add helper to set spec field on all specs 2013-10-14 11:22:34 -07:00
Kevin Sawicki 0b22d99fad Store spec directory on required specs
This allows the project to be configured based on the spec being
run.
2013-10-14 11:15:40 -07:00
Kevin Sawicki f60ead03d2 Upgrade to git-diff@0.9.0 2013-10-14 11:09:46 -07:00
Kevin Sawicki cd3ec7d156 Upgrade to fuzzy-finder@0.12.0 2013-10-14 10:35:10 -07:00
Kevin Sawicki eadee9f15c Upgrade to fuzzy-finder@0.11.0 2013-10-14 10:34:55 -07:00
Kevin Sawicki 8001942283 Upgrade to status-bar@0.12.0 2013-10-14 10:34:39 -07:00
Kevin Sawicki f506130d3b Round the logged spec time 2013-10-14 10:34:20 -07:00
Kevin Sawicki 4549ea2058 Log total spec time when done 2013-10-14 10:34:20 -07:00
Kevin Sawicki 01380c307e Upgrade to git-diff@0.8.0 2013-10-14 10:34:20 -07:00
Kevin Sawicki 024785fa4f Upgrade to git-diff@0.7.0 2013-10-14 10:34:19 -07:00
Kevin Sawicki afa03b6379 Bump queue concurrency when core specs finish 2013-10-14 10:34:08 -07:00
Kevin Sawicki a55847b03b Add dir/b.txt to working-dir fixture repo 2013-10-14 10:34:08 -07:00
Kevin Sawicki 57769f4328 Upgrade to tree-view@0.14.0 2013-10-14 10:34:08 -07:00
Kevin Sawicki 538b938a71 Upgrade to status-bar@0.11.0 2013-10-14 10:34:08 -07:00
Kevin Sawicki 714a1327ce Add a.txt to working-dir fixtures 2013-10-14 10:33:38 -07:00
Kevin Sawicki 3ff0b3cfe2 Fail build when either set of specs fail 2013-10-14 10:33:38 -07:00
Kevin Sawicki 69a247294c Remove reference to non-existent run-core-specs task 2013-10-14 10:33:38 -07:00
Kevin Sawicki b73798bd03 Rename test-task to spec-task 2013-10-14 10:33:37 -07:00
Kevin Sawicki 8ecc353999 Run core and package specs in parallel 2013-10-14 10:33:37 -07:00
Kevin Sawicki 118625f002 Increase concurrency to 2 2013-10-14 10:33:37 -07:00
Kevin Sawicki c50632bd82 Upgrade apm for test path fix 2013-10-14 10:33:37 -07:00
Kevin Sawicki 1e6cca0969 Extract isAtomPackage task helper 2013-10-14 10:33:37 -07:00
Kevin Sawicki 64c5732e51 Add missing underscore require 2013-10-14 10:33:37 -07:00
Kevin Sawicki e8c399428c Set ATOM_PATH env var when launching specs 2013-10-14 10:33:37 -07:00
Kevin Sawicki 5b239938a9 Resolve atom.sh and apm relative to app dir 2013-10-14 10:33:37 -07:00
Kevin Sawicki c1f8b1e941 💄 Use long opts for clarity 2013-10-14 10:33:37 -07:00
Kevin Sawicki aed15766fb 💄 Resolve apm path once 2013-10-14 10:33:37 -07:00
Kevin Sawicki 0f1c1715dd Add all specs to queue 2013-10-14 10:33:37 -07:00
Kevin Sawicki 091189ee79 Log what specs are running 2013-10-14 10:33:37 -07:00
Kevin Sawicki a79f36cbf2 💄 Resolve atom.sh once 2013-10-14 10:33:36 -07:00
Kevin Sawicki 483f63ab05 Add test task that runs packages specs from queue 2013-10-14 10:33:36 -07:00
Kevin Sawicki 1ed01c5155 Upgrade to archive-view@0.9.0 2013-10-14 10:33:36 -07:00
Kevin Sawicki 87408f689f Upgrade apm for path flag to test command 2013-10-14 10:33:36 -07:00
Kevin Sawicki 5d1b88493e Upgrade to jasmine-focused@0.15.0 2013-10-14 10:33:36 -07:00
Matt Colyer 551bb72756 Update bookmarks@0.6.0 2013-10-14 10:33:36 -07:00
Kevin Sawicki a0fd9098ad Upgrade to go-to-line@0.5.0 2013-10-14 10:33:36 -07:00
Matt Colyer b6a0763419 Upgrade to autocomplete@0.7.0 2013-10-14 10:33:36 -07:00
Kevin Sawicki 9994cbbd6e Upgrade to image-view@0.7.0 2013-10-14 10:33:36 -07:00
Kevin Sawicki b05a3fa4b6 Upgrade to link@0.5.0 2013-10-14 10:33:36 -07:00
Kevin Sawicki fd51392a2d Upgrade to first-mate@0.4.0 2013-10-14 10:33:35 -07:00
Kevin Sawicki 83e7c59aba Upgrade to first-mate@0.3.0 2013-10-14 10:33:35 -07:00
Kevin Sawicki 8d6ffe9daa Upgrade to markdown-preview@0.7.0 2013-10-14 10:33:35 -07:00
Kevin Sawicki bb99a8e586 Upgrade to snippets@0.7.0 2013-10-14 10:33:35 -07:00
Kevin Sawicki 63f39d84a3 Load package relative to the package's spec directory 2013-10-14 10:33:21 -07:00
Kevin Sawicki d31fe2ee91 Upgrade to tabs@0.6.0 2013-10-14 10:33:21 -07:00
Kevin Sawicki 83581bc6d2 Ignore specs that take less than 1ms 2013-10-14 10:32:26 -07:00
Kevin Sawicki 47cf00751f Upgrade to whitespace@0.6.0 2013-10-14 10:32:26 -07:00
Kevin Sawicki 002e3898fa Merge pull request #959 from atom/ks-q-continuum
Switch to q from $.Deferred
2013-10-14 10:00:38 -07:00
Kevin Sawicki 38f50d60f5 Upgrade to find-and-replace@0.25.0 2013-10-14 09:53:26 -07:00
Kevin Sawicki 7be57deef6 Upgrade to collaboration@0.23.0 2013-10-14 09:53:26 -07:00
Kevin Sawicki d0decbb7e5 Upgrade to symbols-view@0.10.0 2013-10-14 09:53:26 -07:00
Kevin Sawicki 68c7b2dab0 Use Q for promise in Project::scan 2013-10-14 09:53:26 -07:00
Kevin Sawicki 8e73258168 Remove unused Project::getFilePaths 2013-10-14 09:53:26 -07:00
Cheng Zhao 53b4b1c349 💄 Remove unsed variable. 2013-10-14 16:59:31 +08:00
Cheng Zhao fae1f500eb Rewrite script/test in js. 2013-10-14 16:52:52 +08:00
Cheng Zhao 4308e428d3 Rewrite script/cibuild in js. 2013-10-14 16:47:29 +08:00
Cheng Zhao 1d343dd483 Make the safeSpawn function a util module. 2013-10-14 15:14:03 +08:00
Cheng Zhao e17c9ced57 Rewrite script/build in js. 2013-10-14 14:37:16 +08:00
Cheng Zhao 8edd6ad5d5 Rewrite bootstrap script in js. 2013-10-14 14:18:04 +08:00
Cheng Zhao fba1d486e3 Update to atom-shell v0.6.1. 2013-10-14 12:10:11 +08:00
Paul Betts cdfad1218b Merge pull request #870 from atom/some-files-are-just-too-evil
Some files are just too evil
2013-10-11 15:34:54 -07:00
Matt Colyer 4d415d3ca9 Generate evil file fixtures depending on platform 2013-10-11 14:09:17 -07:00
Matt Colyer 6a37f9dad4 Merge branch 'master' into some-files-are-just-too-evil 2013-10-11 13:43:12 -07:00
Matt Colyer 0255faded1 Merge pull request #956 from atom/mc-bad-package
Make package loading more robust
2013-10-11 12:55:53 -07:00
Matt Colyer 12b42bf459 Initialize AtomPackage attributes earlier
This should make our package loading process a bit more robust.
2013-10-11 12:49:31 -07:00
Matt Colyer abd8bd1253 Handle errors in package.json gracefully 2013-10-11 12:49:31 -07:00
Kevin Sawicki cd633ede92 Remove logging from spec 2013-10-11 11:37:13 -07:00
Matt Colyer e4c87b2d0b Merge pull request #954 from atom/docs-about-docs
Docs about Docs
2013-10-11 11:20:52 -07:00
Matt Colyer c1c46cfb94 Merge pull request #955 from atom/mc-fix-952
Dynamically replace Atom version in application menu
2013-10-11 11:20:38 -07:00
Matt Colyer 942695d582 Dynamically replace Atom version in application menu 2013-10-11 11:11:10 -07:00
Matt Colyer 8682bad958 Revert "Dynamically replace Atom version in application menu"
This reverts commit 9b7bc34d44.
2013-10-11 11:10:04 -07:00
Matt Colyer 3d9598a99a Fix spelling 2013-10-11 11:06:04 -07:00
Matt Colyer 0221f7d263 Merge branch 'master' into docs-about-docs 2013-10-11 11:05:47 -07:00
probablycorey 92c6ad66eb Rename Project::open to Project::openSync
…and Project::openAsync to Project::open
2013-10-11 10:57:09 -07:00
probablycorey 894cae7c9c Rename rootView.openAsync to rootView.open 2013-10-11 10:56:58 -07:00
probablycorey b0e9b4b81f Rename RootView.open to RootView.openSync 2013-10-11 10:55:10 -07:00
Matt Colyer 9b7bc34d44 Dynamically replace Atom version in application menu
Fixes #952
2013-10-11 10:46:26 -07:00
Kevin Sawicki ff8577b7d6 Merge pull request #945 from atom/browser-folder
Separate classes that run in the browser process
2013-10-11 08:56:19 -07:00
Kevin Sawicki 317365e41f 💉 BrowserWindow instance into ContextMenu 2013-10-11 08:50:09 -07:00
Kevin Sawicki e4219cae45 Remove unused require 2013-10-11 08:50:09 -07:00
Kevin Sawicki ed3bb509fa Remove outdated comment about NODE_PATH tweaking 2013-10-11 08:50:09 -07:00
Kevin Sawicki 8d27369afc Add extra .. for benchmark/spec bootstrap paths 2013-10-11 08:50:09 -07:00
Matt Colyer 63fb5b1fe5 Move ContextMenu into the browser folder 2013-10-11 08:50:09 -07:00
Kevin Sawicki 891200d658 Remove src/ from global paths in browser process 2013-10-11 08:50:09 -07:00
Kevin Sawicki d815147df6 Log uncaught exceptions in browser process 2013-10-11 08:50:09 -07:00
Matt Colyer d7836f6082 Fix resourcePath in main.coffee 2013-10-11 08:50:09 -07:00
Matt Colyer 1538afee05 Relative openUrl requires in AtomApplication 2013-10-11 08:50:09 -07:00
Matt Colyer db64e8c0b3 Correct resolve to window-bootstrap 2013-10-11 08:50:09 -07:00
Matt Colyer 31c1241ce8 Use relative paths for browser files 2013-10-11 08:50:09 -07:00
Matt Colyer 7875386498 Separate classes that run in the browser process 2013-10-11 08:50:08 -07:00
Kevin Sawicki c766ddf5e6 Upgrade to fuzzy-finder@0.10.0 2013-10-10 17:59:21 -07:00
Kevin Sawicki 940df94081 Load core menu items after bundled keymaps load
Closes #948
2013-10-10 17:50:39 -07:00
Ben Ogle 018ee0deb0 Merge pull request #947 from atom/bo-multiple-editors
Use multiple editors rather than one per pane
2013-10-10 17:12:17 -07:00
Ben Ogle dafa1ab0a8 UPgrade status bar 2013-10-10 17:03:30 -07:00
Ben Ogle 730cd8680e Upgrade git-diff for fixing 2013-10-10 17:03:30 -07:00
Ben Ogle 338eb5a871 Upgrade fnr 2013-10-10 17:03:30 -07:00
Ben Ogle 142654b77c Upgrade to fnr@0.24.1 2013-10-10 17:03:30 -07:00
Ben Ogle 7db7234fb1 fix rootView spec 2013-10-10 17:03:29 -07:00
Ben Ogle 78f600a7f6 Upgrade to fuzzy-finder@0.9.0 2013-10-10 17:03:29 -07:00
Ben Ogle 187895a893 I'm not entirely sure why I need this now.
It seems there is no editor unless I show the first editSession
2013-10-10 17:03:29 -07:00
Ben Ogle 1120a14351 Fix removal of editors 2013-10-10 17:03:29 -07:00
Ben Ogle 192df9c496 Make each tab have its own editor.
Remove the viewsByClassName from the pane. Pane specs are broken.
2013-10-10 17:03:29 -07:00
Matt Colyer 45ae59b1fb Merge branch 'master' into docs-about-docs 2013-10-10 16:21:44 -07:00
Kevin Sawicki 0ac683284d Revert "Remove fixture file"
This reverts commit 818fc10ba5.

Bring back this file until archive-view is published with
fixtures included locally.
2013-10-10 15:48:24 -07:00
Kevin Sawicki 23af63b76c Ignore indentation lint
The new promises chaining causes lint errors that are false positives.
2013-10-10 15:05:58 -07:00
Matt Colyer 080b52de8d 📝 the atom documentation format 2013-10-10 14:33:49 -07:00
probablycorey 53773274df Add newline between themes and packages 2013-10-10 13:03:52 -07:00
probablycorey 3ed0f7bde4 Project::openAsync always resolves the filePath 2013-10-10 12:01:49 -07:00
probablycorey 5b214bdfd7 💄 2013-10-10 12:01:01 -07:00
probablycorey d883834626 Comment 💄 2013-10-10 11:57:32 -07:00
probablycorey 818fc10ba5 Remove fixture file
The Archive View apm maintains nested.tar in its fixtures directory
2013-10-10 11:57:13 -07:00
probablycorey b95b3148c9 Note the synchronous loading of Tokenized Buffer 2013-10-10 11:26:05 -07:00
probablycorey 29a9a9d2ed Merge remote-tracking branch 'origin/master' into cj-async-file-open
Conflicts:
	package.json
2013-10-10 11:15:20 -07:00
probablycorey 22411b3c87 Remove deprecation log message 2013-10-10 10:34:17 -07:00
probablycorey 7c6f9b1a81 Make test more consistent 2013-10-10 10:34:02 -07:00
Ben Ogle 4f8bb00af2 Merge pull request #946 from atom/bo-fix-hidden-input
Fix hidden input placement
2013-10-10 10:33:26 -07:00
probablycorey 6abb5a2390 Files in src should not use the atom export 2013-10-10 10:15:54 -07:00
probablycorey 6d29d8de48 Remove progress log 2013-10-10 10:15:08 -07:00
probablycorey 23620e158b The initialLine parameter is sent as an option 2013-10-10 09:49:06 -07:00
probablycorey 0c811ec703 Reword specs
Items are shown 'in' a pane instead of 'on' the pane
2013-10-10 09:45:18 -07:00
probablycorey b114545dd2 💄
4 kev ❤️
2013-10-10 09:45:10 -07:00
Cheng Zhao 2e71043657 Merge pull request #949 from atom/atom-shell-v0.6.0
Update to atom-shell v0.6.0
2013-10-10 08:52:25 -07:00
Cheng Zhao c614ec6beb Fix "Missing or invalid User Agent string." error. 2013-10-10 15:18:52 +08:00
Cheng Zhao 7a1874d1b9 Update atom-shell to v0.6.0. 2013-10-10 15:09:26 +08:00
Cheng Zhao 14a7202df2 "MacCtrl" is discarded in latest atom-shell. 2013-10-10 15:08:00 +08:00
Ben Ogle b7e7b83bdf Remove bringHiddenInputIntoView call from editor focus() 2013-10-09 17:48:22 -07:00
Ben Ogle 5fc14e0c37 Turns out neither of them need the 'px' 2013-10-09 17:46:06 -07:00
Kevin Sawicki d004d94f3f Upgrade to status-bar@0.9.0 2013-10-09 16:56:52 -07:00
Ben Ogle 6faef08592 Use scrollLeft so the editor is not scrolled to the left on focus in/out 2013-10-09 16:44:05 -07:00
Ben Ogle 017030fd60 Fix the tests
The test calls hiddenInput.focus(), but in reality, nothing external to
the editor can trigger this. I'd rather just have 
bringHiddenInputIntoView() called in one place, but this is insurance.
2013-10-09 16:43:26 -07:00
Ben Ogle 1b38118cc3 Place hidden input on the underlayer.
Also brings the input into view when the input is focused so we
dont scroll the scrollView and blank the editor
2013-10-09 16:18:34 -07:00
Ben Ogle 2c2661da11 Fix hiddenInput offset calculation
Regression from the speedup stuff
2013-10-09 16:18:34 -07:00
Ben Ogle b17c8ced84 Fix selectAll on buffers longer than the rendered lines 2013-10-09 16:16:19 -07:00
Kevin Sawicki 02f13d6a06 Merge pull request #941 from atom/ks-maximazing
Use current window size for new window size
2013-10-09 09:33:18 -07:00
Kevin Sawicki 8061101bbd Add initial size to window options when opening urls 2013-10-09 09:25:54 -07:00
Kevin Sawicki 662262ab82 Use deep clone for load settings
The new initialSize load setting has a nested object which should be
cloned as well.
2013-10-09 09:25:53 -07:00
Kevin Sawicki 349ba86b92 Create new windows with same size as focused window 2013-10-09 09:25:53 -07:00
Kevin Sawicki d93633a837 Maximize window by default
Use the available height and width as the default window size
when no window state exists for the dimensions.
2013-10-09 09:25:53 -07:00
Matt Colyer 93742f933b Revert "Bump tree-view to include a menu"
This reverts commit 4b70147b3b.
2013-10-08 17:39:59 -07:00
Matt Colyer 4b70147b3b Bump tree-view to include a menu 2013-10-08 16:32:57 -07:00
Matt Colyer 0be5d1f3fd Merge pull request #927 from atom/menu-api
Allow packages to append to the application menus
2013-10-08 16:30:15 -07:00
Matt Colyer ffdfe63a4e Add specs 2013-10-08 16:23:34 -07:00
Kevin Sawicki adc8618823 Upgrade to fuzzy-finder@0.8.0 2013-10-08 16:15:18 -07:00
Ben Ogle 2f2a634c2a Merge pull request #940 from atom/bo-gutter-render-perf
Partially render the gutter when possible
2013-10-08 16:10:27 -07:00
Ben Ogle 36c58e9132 💄 2013-10-08 16:03:25 -07:00
Matt Colyer 33cf5dda15 Merge branch 'master' into menu-api
Conflicts:
	src/atom.coffee
	src/config.coffee
2013-10-08 15:49:55 -07:00
Kevin Sawicki 5acf1150a4 Merge pull request #931 from atom/add-branch-selector
Add new helper functions from git-utils@0.26.0
2013-10-08 09:39:22 -07:00
Kevin Sawicki 4c9059d445 Default branch to null instead of empty object 2013-10-08 09:31:02 -07:00
Kevin Sawicki ff1ab93652 💄 Add space before and 2013-10-08 09:30:05 -07:00
Kevin Sawicki 43d5c3f66d 📝 Remove extra newline 2013-10-08 09:27:23 -07:00
Garen Torikian 250af9191a Trigger statuses-changed for branches, too
There don't seem to be any tests for this
2013-10-08 09:26:23 -07:00
Garen Torikian 7365be7d88 Add new helper functions from git-utils@0.26.0 2013-10-08 09:25:55 -07:00
Kevin Sawicki 6d15fbb114 Upgrade to tree-view@0.10.0 2013-10-08 09:00:05 -07:00
Kevin Sawicki 37ec1abc25 Add Git::isProjectAtRoot helper 2013-10-07 19:43:12 -07:00
Kevin Sawicki 41cfa2892b Guard against false result 2013-10-07 18:22:24 -07:00
Ben Ogle caae18c552 Partially render the gutter when possible. 2013-10-07 18:14:27 -07:00
Kevin Sawicki 380bad2129 Upgrade to tree-view@0.9.0 2013-10-07 18:09:51 -07:00
Kevin Sawicki 8e60db65a3 🐎 Use fs.statSyncNoException() in AtomWindow 2013-10-07 17:55:41 -07:00
Kevin Sawicki 8caed2081b Don't reuse window when opening a subfolder
Windows will only be reused when they match the initial path or
are paths to a new or existing file.

Closes #934
2013-10-07 17:23:56 -07:00
Kevin Sawicki 1ed6733ab5 Only parse line number when path to open is set
Previously if atom was launched with no path to open then '/'
was being opened as the project and a file named 'undefined' was
initially open.  This was because path.basename() returns the string
'undefined' when called with an undefined path.

This restores the previous behavior of launching a new untitled editor
with no project.

Closes #936
2013-10-07 17:09:52 -07:00
Kevin Sawicki d2d77012c5 Upgrade to collaboration@0.21.0 2013-10-07 16:21:21 -07:00
Kevin Sawicki 6c55fc102d Merge pull request #938 from atom/ks-url-api
Add API to open urls
2013-10-07 16:19:21 -07:00
probablycorey 9a61c545f4 Update comments in project 2013-10-07 16:12:44 -07:00
Kevin Sawicki 2029895f0b Pass urlToOpen to AtomWindow constructor 2013-10-07 16:12:00 -07:00
Kevin Sawicki 7f0150c6b8 💄 Inline parsed url 2013-10-07 16:12:00 -07:00
Kevin Sawicki 124b1ebd33 💄 Reorganize option param 2013-10-07 16:12:00 -07:00
Kevin Sawicki d3e2d9b5f9 📝 Update AtomApplication.openUrl() comment 2013-10-07 16:12:00 -07:00
Kevin Sawicki f8e61f5c48 Add missing @ before configDirPath 2013-10-07 16:12:00 -07:00
Kevin Sawicki e95e8a22c3 💄 Remove extra newline 2013-10-07 16:12:00 -07:00
Kevin Sawicki 0033c9659f 💉 directory dependencies into Config 2013-10-07 16:12:00 -07:00
Kevin Sawicki 9db3f9b5d9 Remove logging of found package 2013-10-07 16:12:00 -07:00
Kevin Sawicki 55b71405c9 Remove uneeded curlies and parens 2013-10-07 16:11:59 -07:00
Kevin Sawicki db47d02c3c Add fixture packages to atom.packages.packageDirPaths 2013-10-07 16:11:59 -07:00
Kevin Sawicki ad577d6315 Add url to open to load settings 2013-10-07 16:11:59 -07:00
Kevin Sawicki 19a8626c21 Add extension point for opening urls
If packages specify a urlMain in their package.json then that file
will be used as the bootstrap script new windows when a URL is opened
to that package.
2013-10-07 16:11:59 -07:00
Kevin Sawicki 87bfcf5683 💉 dependencies into AtomPackage
Removes use of resourcePath and config globals
2013-10-07 16:11:59 -07:00
Kevin Sawicki 722be2267d Add getter for config directory path 2013-10-07 16:11:59 -07:00
Kevin Sawicki a3559d1289 Call methods through this instead of atom global 2013-10-07 16:11:59 -07:00
probablycorey b4fb526d75 Simplify early return statement 2013-10-07 16:10:38 -07:00
probablycorey 122b209ad7 💄 2013-10-07 16:07:13 -07:00
Ben Ogle 53da1db3d8 Merge pull request #935 from atom/bo-improve-gutter-api
Add a simple gutter api for adding/removing classes
2013-10-07 15:35:18 -07:00
probablycorey 34d7913505 Log RootView::openAsync read progress 2013-10-07 15:22:16 -07:00
Ben Ogle 0c54f6254d Upgrade to new versions of git-diff and bookmarks 2013-10-07 15:15:30 -07:00
Ben Ogle 9c6353977f Rework the api using native methods. This is 🐎
editor.300-line-file.gutter-api.getLineNumberElementsForClass.DOM: 3 / 20000 = 0.00015ms
editor.300-line-file.gutter-api.getLineNumberElement.DOM: 8 / 20000 = 0.0004ms
editor.300-line-file.gutter-api.toggle-class: 17 / 2000 = 0.0085ms
editor.300-line-file.gutter-api.find-then-unset.single-class: 3 / 200 = 0.015ms
editor.300-line-file.gutter-api.find-then-unset.multiple-class: 9 / 200 = 0.045ms
2013-10-07 14:57:45 -07:00
Ben Ogle 2cee400547 More benchmarks 2013-10-07 14:56:29 -07:00
Matt Colyer ba8707dfd9 Bump exception-reporting to include the user agent 2013-10-07 14:35:15 -07:00
Matt Colyer 64e8c978e4 Return proper return code from atom.sh
Also improve the test failure message returned by apm.
2013-10-07 14:28:13 -07:00
Ben Ogle 1ff97fc21a Add getLineNumbersForClass()
Also clean up and use klass
2013-10-07 13:57:00 -07:00
Ben Ogle 964e88f131 Add benchmark for the gutter api fns 2013-10-07 13:55:04 -07:00
probablycorey f5c9dc7362 Added progress stats to reading files 2013-10-07 13:47:20 -07:00
Ben Ogle 32329070c2 Add a simple gutter api for adding/removing classes 2013-10-07 13:31:31 -07:00
Kevin Sawicki 9f7b430c02 Show window in benchmark bootstrap 2013-10-07 13:30:07 -07:00
Matt Colyer 26ab49306e Bump release notes version 2013-10-07 11:48:20 -07:00
probablycorey 13232de4b9 Chain promises better 2013-10-07 11:46:03 -07:00
probablycorey f9250e3dd1 Add File::readAsync 2013-10-07 11:39:41 -07:00
Ben Ogle a878d9e3da Merge pull request #901 from atom/bo-scroll-perf
Improve scrolling performance.
2013-10-07 10:36:38 -07:00
Ben Ogle 3aae7bb77e 💄 2013-10-07 10:29:02 -07:00
Ben Ogle 8825be937e TextNodeFielter -> TextNodeFilter 2013-10-07 10:29:02 -07:00
Ben Ogle b3324b49b0 Skinny arrows 💄 2013-10-07 10:29:02 -07:00
Ben Ogle 785c71daf8 💄 2013-10-07 10:29:02 -07:00
Ben Ogle 7f9ce094c7 Add only window import so the benchmarks run 2013-10-07 10:29:01 -07:00
Ben Ogle 89b0e4d159 Fix issue when there are no client rects 2013-10-07 10:29:01 -07:00
Ben Ogle 98928dd99f Upgrade to bracket-matcher@0.6.0 2013-10-07 10:29:01 -07:00
Ben Ogle 4df546a19e Remove shoulds 2013-10-07 10:28:13 -07:00
Ben Ogle 04cdad680b Remove ability to pass clearDirtyRanges and fillDirtyRanges extra vars
We don't need them anymore in the gutter.
2013-10-07 10:28:12 -07:00
Ben Ogle 87687036cb Add benchmark for empty() vs innerHTML = '' 2013-10-07 10:28:12 -07:00
Ben Ogle 4f1bdee2d7 shift() multiple little arrays. Avoid. 2013-10-07 10:28:12 -07:00
Ben Ogle 5942f2997f Remove array joins in buildEmptyLineHtml 2013-10-07 10:28:12 -07:00
Ben Ogle 26a3a77fed Rename ALL_CAPS vars to CapCamelCase 2013-10-07 10:28:12 -07:00
Ben Ogle a50e948a90 Remove log lines 2013-10-07 10:28:12 -07:00
Ben Ogle bd8c14355c Move regexes out into variables 2013-10-07 10:28:12 -07:00
Ben Ogle 1a6884ff71 Remove the ALL_CAPS vars replace with CapCamelCase 2013-10-07 10:28:11 -07:00
Ben Ogle 156b6a9490 Make wrapCharacters -> escapeString. Use a regex.
The `htmlForScreenRows` benchmark went from ~3.5 ms to ~2.9ms for a 
call to htmlForScreenRows over the entire screen range.

🐎
2013-10-07 10:28:11 -07:00
Ben Ogle 407ccc4819 Get a few benchmarks in there 2013-10-07 10:28:11 -07:00
Ben Ogle 5516dadffe Remove selective gutter rendering.
It is faster but incorrect in the case of newlines. It will have to be 
rethought. It can be a different unit of work
2013-10-07 10:28:11 -07:00
Ben Ogle f1cf8496f8 Fix test, use bufferRowsFOrScreenRowsProperly 2013-10-07 10:28:11 -07:00
Ben Ogle b4afc24ee8 Most of the tests work 2013-10-07 10:28:11 -07:00
Ben Ogle d0be7fbf8e Add a character width cache based on scopes.
This is slower than the position cache in the best case, but faster
in the worst and average case. With this, you can search for a space
in find and replace, and still scroll the buffer.

In editor.coffee, there are 10,500 spaces. To highlight all of them, 
the previous cache method took 7 seconds, this takes 2 when the cache 
is empty, and about 10ms when the entire file is cached.
2013-10-07 10:28:11 -07:00
Ben Ogle 8463c759b5 Use global range. Faster! Less garbage! 2013-10-07 10:28:11 -07:00
Ben Ogle 5a772d7078 Move back to the node walker and Range()
This is slower than the span compute, but rendering lines without 
tons of spans is much faster than with
2013-10-07 10:28:11 -07:00
Ben Ogle 8ab8201020 More benchmarks for text rendering 2013-10-07 10:28:10 -07:00
Ben Ogle 6eb72ac2a1 Use getElementsByClassName rather than jQuery 2013-10-07 10:28:10 -07:00
Ben Ogle 8a3f137519 Speed up token html generation. 20ms -> 6ms
Character replace was most of it. Removing regex creation, array 
creation and joins seems to reduce the GC pressure. Calling 500 times, 
GC spent 100ms less time.
2013-10-07 10:28:10 -07:00
Ben Ogle a57c86f4ea Shortcut out of isHidden when we can.
Checking computed style is an order of magnitude more expensive than 
checking the style property.
2013-10-07 10:28:10 -07:00
Ben Ogle 8cd04b5178 Override isHidden for the Editor
We know it's visible if it is on the dom and doesn't have
display == none set. This is an order of magnitude faster than the
default implementation which calls getComputedStyle()
2013-10-07 10:28:10 -07:00
Ben Ogle d351938702 Speed up setting the hidden input at the same place as the cursor.
Order of magnitude speedup
2013-10-07 10:28:10 -07:00
Ben Ogle c2bb5a998b Override isHidden for the CursorView
We know it's visible if it is on the dom and doesn't have 
display == none set. This is an order of magnitude faster than the 
default implementation which calls getComputedStyle()
2013-10-07 10:28:10 -07:00
Ben Ogle 303124f1dd Add benchmarks for text rendering 2013-10-07 10:28:10 -07:00
Ben Ogle 875f0ca1e5 Get benchmarks running again: Fix imports. 2013-10-07 10:28:09 -07:00
Ben Ogle 6a494f65a5 💄 2013-10-07 10:28:09 -07:00
Ben Ogle aa404a316d Don't allow NaNs 2013-10-07 10:28:09 -07:00
Ben Ogle 45d3fea3d0 Update only the changed line numbers 2013-10-07 10:28:09 -07:00
Ben Ogle 0ab382133b Back to display == none for $.fn.isHidden() 2013-10-07 10:28:09 -07:00
Ben Ogle 98a3bb475b Fix for non-extant lines 2013-10-07 10:28:09 -07:00
Ben Ogle 2394f25b92 Add the leftPixel cache back in 2013-10-07 10:28:09 -07:00
Ben Ogle 914288ab86 Wrap each char in a span; compute left position by measuring each span.
This is is faster and simpler than the old method. Running each function
20,000 times yielded these results:

Old: 3750ms
This method: 1523ms
By looking up each char's width in a dict: 29ms
2013-10-07 10:28:08 -07:00
Ben Ogle aba5eb5b41 Add a cache to positionLeftForLineAndColumn()
This is the slowest function of all.
2013-10-07 10:28:08 -07:00
Ben Ogle 5c46bff4c1 Use isVisible() 2013-10-07 10:28:08 -07:00
Ben Ogle 8f68d62420 Only re render the cursors/selections when in rendered range 2013-10-07 10:28:08 -07:00
probablycorey a8c008767f Add TextBuffer::updateCachedDiskContentsAsync 2013-10-07 09:53:53 -07:00
probablycorey 64e4cd3db1 💄 2013-10-07 09:53:13 -07:00
Matt Colyer bde0a3dff0 Use atom rather than global 2013-10-04 14:39:11 -07:00
Matt Colyer 66635a19d1 Allow updates to the application menu 2013-10-04 14:38:50 -07:00
Matt Colyer 1deba49722 Move Keymap init above MenuManager init 2013-10-04 14:38:43 -07:00
Matt Colyer 0b3a00056f Handles nested submenus 2013-10-04 14:26:09 -07:00
Kevin Sawicki 2f46db29b5 Prepare 31.0.0 release 2013-10-04 14:10:47 -07:00
Kevin Sawicki 501b6e0890 Upgrade to to-the-hubs@0.6.0 2013-10-04 14:08:37 -07:00
Matt Colyer 7b7c9abdeb Load menus from packages 2013-10-04 13:39:35 -07:00
Matt Colyer 141c4f48bf Move menu building to the proper place 2013-10-04 13:15:09 -07:00
Matt Colyer 73796a27e5 📝 Access config via atom.config not global.config 2013-10-04 12:28:42 -07:00
Matt Colyer 32101c57bf Load core menus from a file 2013-10-04 12:28:19 -07:00
Matt Colyer b63a33c7bb Fix lint errors in MenuManager 2013-10-04 11:40:59 -07:00
Matt Colyer d8e857efc9 Create MenuManager class
A minimal implementation that takes over the responsiblities of managing
the application menu within the render process.
2013-10-04 11:33:28 -07:00
Matt Colyer c0b8b0a443 Remove unused devMenu 2013-10-04 10:51:08 -07:00
probablycorey 6cf41eea0a Add TextBuffer::updateCachedDiskContentsAsync 2013-10-03 17:12:00 -07:00
probablycorey b468a6f375 Get text buffer loading to work with multi-stage load 2013-10-03 16:58:11 -07:00
probablycorey 6e17755c1a Remove unused method 2013-10-03 13:38:24 -07:00
probablycorey b921dc3a1d Remove console.logs 2013-10-03 13:27:54 -07:00
probablycorey cc68925ab7 Make Project::resolve handle null file names 2013-10-03 13:23:27 -07:00
probablycorey 9147419ed3 Use temp module when creating temp files 2013-10-03 13:22:05 -07:00
probablycorey ed09e4e33f Remove unused method 2013-10-03 10:28:12 -07:00
probablycorey e9fd6f0c32 Reorder text buffer's requires 2013-10-03 10:28:12 -07:00
probablycorey b315e62a43 Add Project::openAsync and Project::bufferForPathAsync 2013-10-03 10:28:12 -07:00
probablycorey 716fe8cfe7 Add more specs for RootView::openAsync 2013-10-03 10:28:12 -07:00
probablycorey c825b1d9bb Simplify RootView::openAsync 2013-10-03 10:28:12 -07:00
probablycorey a1c39c9f38 Add RootView::openAsync 2013-10-03 10:28:11 -07:00
probablycorey dc245184c1 Add q npm 2013-10-03 10:28:11 -07:00
Paul Betts 8b73224fe3 Rewrite underscore code 2013-09-25 18:03:00 -07:00
Paul Betts 903a1b9bf0 Use tmp.mkdir 2013-09-25 17:50:40 -07:00
Paul Betts 459e4d5523 Rewrite evil files test to generate files on the fly 2013-09-25 17:50:40 -07:00
Paul Betts 3e933ee81b Nuke these from the repo, they break cloning on Win32 2013-09-25 17:50:40 -07:00
312 arquivos alterados com 22047 adições e 33410 exclusões
+8
Ver Arquivo
@@ -0,0 +1,8 @@
# Specs depend on character counts, if we don't specify the line endings the
# fixtures will vary depending on platform
spec/fixtures/**/*.js text eol=lf
spec/fixtures/**/*.coffee text eol=lf
spec/fixtures/**/*.less text eol=lf
spec/fixtures/**/*.css text eol=lf
spec/fixtures/**/*.txt text eol=lf
spec/fixtures/dir/**/* text eol=lf
+4
Ver Arquivo
@@ -5,6 +5,10 @@
.nvm-version
node_modules
npm-debug.log
debug.log
/tags
/atom-shell/
docs/output
docs/includes
spec/fixtures/evil-files/
/apm
-101
Ver Arquivo
@@ -1,101 +0,0 @@
* Improved: Faster and better looking find and replace
* Improved: Double-click selection behavior between word/non-word
* Added: Solarized theme now bundled by default
* Added: Base16 Tomorrow Dark theme now bundled by default
* Fixed: Make Atom's version the same as Speakeasy's version
* Fixed: Package generator package not opening window to generated package
* Fixed: Precompile bootstrap.less for faster startup
* Fixed: Save sometimes failing from an editor that was split
* Fixed: Search results not appearing when set to exclude ignores
* Fixed: Status bar and gutter displaying incorrect Git status information
* Fixed: Packages not installing from the Settings view
* Fixed: Spec runner now works from a released build
* Fixed: Literate CoffeeScript not syntax highlighting correctly
* Added: Soft wrap and tab length can now be set in the settings view
* Fixed: Python import statements not syntax highlighting correctly
* Added: Terminal package now bundled by default, open with ctrl-`
* Fixed: Fuzzy finder not showing results for files at a certain depth
* Fixed: Atom > Preferences... menu not opening settings in focused window
* Fixed: Atom failing to launch if the theme being used was not found
* Improved: Theme changes now immediately take effect
* Fixed: Wrap in quotes/parens now works in split panes
* Improved: Autocomplete now includes CSS property names and values
* Improved: Settings GUI is now a pane item
* Added: Support package filtering in Settings GUI
* Added: Dynamically load all config options in the Settings GUI
* Added: Ability to bookmark lines and navigate bookmarks
* Fixed: Error when inserting newlines in CSS
* Fixed: Folding all will fold comments as well
* Added: Ability to fold all code at a given indentation level
* Improved: cmd-n now opens a new tab and cmd-shift-n now opens a new window.
* Added: Inspect Element context menu
* Fixed: Save As dialog now defaults to directory path of current editor
* Fixed: Using toggle comment shortcut respects indentation level
* Fixed: Search never completing in the command panel
* Fixed: cmd-n now works when no windows are open
* Fixed: Error selecting a grammar for an untitled editor
* Added: j/k now can be used to navigate the tree view and archive editor
* Fixed: Atom can now be launched when ~/.atom/config.cson doesn't exist
* Added: Initial collaboration sessions
* Fixed: Empty lines being deleted via uppercase/downcase command
* Fixed: Keybindings not working when using non-English keyboard language
* Fixed: cmd-shift-p and cmd-alt-w not doing anything when pressed
* Improved: Use grunt (instead of rake) for build system
* Fixed: Java files not syntax highlighting correctly.
* Fixed: LESS/CSS now indents properly after hitting enter.
* Added: Support for browsing .tar.gz and .zip files in the editor
* Added: TODO/FIXME/CHANGED are now highlighted in comments.
* Fixed: Full screen state of windows is now persisted across restarts.
* Added: Makefile syntax highlighting now included.
* Added: Open fuzzy finder to specific line using colon suffix (i.e ':25')
* Fixed: Issues deleting and moving over certain UTF-8 characters
* Fixed: Tree view not properly highlighting or revealing for open images.
* Added: Packages can now be installed from the configuration UI.
* Fixed: .git folder now ignored by default when searching
* Fixed: Not being able to disable packages from configuration UI.
* Fixed: Fuzzy finder showing poor results for entered text
* Improved: App icon
* Fixed: Fuzzy finder being empty sometimes
* Improved: App icon
* Fixed: End of line invisibles rendering incorrectly with the indent guide
* Fixed: Updates not installing automatically on restart
* Fixed: Wrap guide not displaying
* Fixed: Error when saving with the markdown preview focused
* Fixed: Atom always running in dev mode
* Fixed: Crash when running in dev mode without a path to the Atom source
* Fixed: Freeze when editing a RoR class
* Added: meta-N to open a new untitled editor in the current window
* Fixed: Styling in command logger
* Added: XML and Ruby syntax highlighting in Markdown files
* Fixed: Error when editing files in a HEAD-less Git repository
* Fixed: Invisible characters not being visible when enabled
* Added: Editor gutter now displays Git status for lines
* Improved: Startup time
* Added: SQL bundle now included
* Added: PEG.js bundle now included
* Added: Hyperlinks can now be opened with ctrl-O
* Fixed: PHP syntax highlighting
+75 -44
Ver Arquivo
@@ -1,62 +1,93 @@
# :rotating_light: Contributing to Atom :rotating_light:
# :tada: Contributing to Atom :tada:
These are just guidelines, not rules, use your best judgement and feel free
to propose changes to this document in a pull request.
## Issues
* Include screenshots and animated GIFs whenever possible, they are immensely
helpful
helpful.
* Include the behavior you expected to happen and other places you've seen
that behavior such as Emacs, vi, Xcode, etc.
* Check the Console app for stack traces to include if reporting a crash
* Check the Dev tools (`alt-cmd-i`) for errors and stack traces to include
* Check the Console app for stack traces to include if reporting a crash.
* Check the Dev tools (`alt-cmd-i`) for errors and stack traces to include.
### Package Repositories
## Code
* Follow the [JavaScript](https://github.com/styleguide/javascript),
[CSS](https://github.com/styleguide/css),
and [Objective-C](https://github.com/github/objective-c-conventions)
styleguides
* Include thoughtfully worded [Jasmine](http://pivotal.github.com/jasmine/)
This is the repository for the core Atom editor only. Atom comes bundled with
many packages and themes that are stored in other repos under the
[atom organization](https://github.com/atom) such as [tabs](https://github.com/atom/tabs),
[find-and-replace](https://github.com/atom/find-and-replace),
[language-javascript](https://github.com/atom/language-javascript),
and [atom-light-ui](http://github.com/atom/atom-light-ui).
If you think you know which package is causing the issue you are reporting, feel
free to open up the issue in that specific repository instead. When in doubt
just open the issue here but be aware that it may get closed here and reopened
in the proper package's repository.
## Pull Requests
* Include screenshots and animated GIFs whenever possible.
* Follow the [CoffeeScript](#coffeescript-styleguide),
[JavaScript](https://github.com/styleguide/javascript),
and [CSS](https://github.com/styleguide/css) styleguides
* Include thoughtfully worded [Jasmine](http://pivotal.github.com/jasmine)
specs
* Add 3rd-party packages as a `package.json` dependency
* Commit messages are in the present tense
* Commit messages that improve the format of the code start with :lipstick:
* Commit messages that improve the performance start with :racehorse:
* Commit messages that remove memory leaks start with :non-potable_water:
* Commit messages that improve documentation start with :memo:
* Files end with a newline
* Avoid placing files in `vendor`. 3rd-party packages should be added as a
`package.json` dependency.
* Files end with a newline.
* Requires should be in the following order:
* Built in Node Modules (such as `path`)
* Built in Atom and Atom Shell Modules (such as `atom`, `shell`)
* Local Modules (using relative paths)
* Class variables and methods should be in the following order:
* Class variables (variables starting with a `@`)
* Class methods (methods starting with a `@`)
* Instance variables
* Instance methods
* Beware of platform differences
* Use `require('atom').fs.getHomeDirectory()` to get the home directory.
* Use `path.join()` to concatenate filenames.
* Temporary directory is not `/tmp` on Windows, use `os.tmpdir()` when
possible
## Philosophy
## Git Commit Messages
* Use the present tense
* Reference issues and pull requests liberally
* Consider starting the commit message with an applicable emoji:
* :lipstick: when improving the format/structure of the code
* :racehorse: when improving performance
* :non-potable_water: when plugging memory leaks
* :memo: when writing docs
### Write Beautiful Code
Once you get something working, take the time to consider whether you can achieve it in a more elegant way. We're planning on open-sourcing Atom, so let's put our best foot forward.
## CoffeeScript Styleguide
### When in doubt, pair-up
Pairing can be an effective and fun way to pass on culture, knowledge, and taste. If you can find the time, we encourage you to work synchronously with other community members of all experience levels to help the knowledge-mulching process. It doesn't have to be all the time; a little pairing goes a long way.
* Set parameter defaults without spaces around the equal sign
* `clear = (count=1) ->` instead of `clear = (count = 1) ->`
### Write tests, and write them first
The test suite keeps protects our codebase from the ravages of entropy, but it only works when we have thorough coverage. Before you write implementation code, write a failing test proving that it's needed.
## Documentation Styleguide
### Leave the test suite better than you found it
Consider how the specs you are adding fit into the spec-file as a whole. Is this the right place for your spec? Does the spec need to be reorganized now that you're adding this extra dimension? Specs are only as useful as the next person's ability to understand them.
* Use [TomDoc](http://tomdoc.org).
* Use [Markdown](https://daringfireball.net/projects/markdown).
* Reference classes with `{ClassName}`.
* Reference instance methods with `{ClassName::methodName}`.
* Reference class methods with `{ClassName.methodName}`.
* Delegate to comments elsewhere with `{Delegates to: ClassName.methodName}`
style notation.
### Solve today's problem
Avoid adding flexibility that isn't needed *today*. Nothing is ever set in stone, and we can always go back and add flexibility later. Adding it early just means we have to pay for complexity that we might not end up using.
### Example
### Favor clarity over brevity or cleverness.
Three lines that someone else can read are better than one line that's tricky.
### Don't be defensive
Only catch exceptions that are truly exceptional. Assume that components we control will honor their contracts. If they don't, the solution is to find and fix the problem in code rather than cluttering the code with attempts to foresee all potential issues at runtime.
### Don't be afraid to add classes and methods
Code rarely suffers from too many methods and classes, and often suffers from too few. Err on the side of numerous short, well-named methods. Pull out classes with well-defined roles.
### Rip shit out
Don't be afraid to delete code. Don't be afraid to rewrite something that needs to be refreshed. If it's in version control, we can always resurrect it.
### Maintain a consistent level of abstraction
Every line in a method should read at the same basic level of abstraction. If there's a section of a method that goes into a lot more detail than the rest of the method, consider extracting a new method and giving it a clear name.
```coffee
# Public: Disable the package with the given name.
#
# This method emits multiple events:
#
# * `package-will-be-disabled` - before the package is disabled.
# * `package-disabled` - after the package is disabled.
#
# name - The {String} name of the package to disable.
# options - The {Object} with disable options (default: {}):
# :trackTime - `true` to track the amount of time disabling took.
# :ignoreErrors - `true` to catch and ignore errors thrown.
# callback - The {Function} to call after the package has been disabled.
#
# Returns `undefined`.
disablePackage: (name, options, callback) ->
```
+1
Ver Arquivo
@@ -0,0 +1 @@
Copyright 2014 GitHub, Inc.
+7 -16
Ver Arquivo
@@ -1,26 +1,17 @@
# Atom — Futuristic Text Editing
# Atom — The hackable editor
![atom](https://s3.amazonaws.com/speakeasy/apps/icons/27/medium/7db16e44-ba57-11e2-8c6f-981faf658e00.png)
![Atom](http://i.imgur.com/OrTvUAD.png)
Check out our [guides](https://atom-docs.githubapp.com/v26.0/index.html) and [API documentation](https://atom-docs.githubapp.com/v26.0/api/index.html).
Check out our [guides and API documentation](https://atom.io/docs/latest).
## Installing
Download the latest Atom release from [speakeasy](https://speakeasy.githubapp.com/apps/27).
Download the latest [Atom release](https://github.com/atom/atom/releases/latest).
It will automatically update when a new release is available.
Atom will automatically update when a new release is available.
## Building
### Requirements
Follow the instructions in the [build docs][building].
* Mountain Lion
* Boxen (Obviously Atom won't release with this requirement)
### Installation
1. `gh-setup atom`
2. `cd ~/github/atom`
3. `script/build`
[building]: https://github.com/atom/atom/blob/master/docs/building-atom.md
-14
Ver Arquivo
@@ -1,14 +0,0 @@
{
'targets': [
{
'target_name': 'Atom',
'type': 'none',
'postbuilds': [
{
'postbuild_name': 'Create Atom, basically do everything',
'action': ['script/constructicon/build'],
},
],
},
],
}
+2 -1
Ver Arquivo
@@ -1,5 +1,5 @@
#!/bin/sh
ATOM_PATH=/Applications/Atom.app
ATOM_PATH=${ATOM_PATH-/Applications/Atom.app}
ATOM_BINARY=$ATOM_PATH/Contents/MacOS/Atom
if [ ! -d $ATOM_PATH ]; then sleep 5; fi # Wait for Atom to reappear, Sparkle may be replacing it.
@@ -32,6 +32,7 @@ done
if [ $EXPECT_OUTPUT ]; then
$ATOM_BINARY --executed-from="$(pwd)" --pid=$$ $@
exit $?
else
open -a $ATOM_PATH -n --args --executed-from="$(pwd)" --pid=$$ $@
fi
+5 -1
Ver Arquivo
@@ -1,5 +1,9 @@
require '../src/window'
Atom = require '../src/atom'
window.atom = new Atom()
atom = new Atom()
atom.show() unless atom.getLoadSettings().exitWhenDone
window.atom = atom
{runSpecSuite} = require '../spec/jasmine-helper'
atom.openDevTools()
+12 -14
Ver Arquivo
@@ -1,11 +1,9 @@
require '../spec/spec-helper'
$ = require 'jquery'
_ = require 'underscore'
{Point} = require 'telepath'
Project = require 'project'
fsUtils = require 'fs-utils'
TokenizedBuffer = require 'tokenized-buffer'
path = require 'path'
{$, _, Point, fs} = require 'atom'
Project = require '../src/project'
TokenizedBuffer = require '../src/tokenized-buffer'
defaultCount = 100
window.pbenchmark = (args...) -> window.benchmark(args..., profile: true)
@@ -13,7 +11,7 @@ window.fbenchmark = (args...) -> window.benchmark(args..., focused: true)
window.fpbenchmark = (args...) -> window.benchmark(args..., profile: true, focused: true)
window.pfbenchmark = window.fpbenchmark
window.benchmarkFixturesProject = new Project(fsUtils.resolveOnLoadPath('benchmark/fixtures'))
window.benchmarkFixturesProject = new Project(path.join(__dirname, 'fixtures'))
beforeEach ->
window.project = window.benchmarkFixturesProject
@@ -75,8 +73,8 @@ window.clickEvent = (properties={}) ->
window.mouseEvent = (type, properties) ->
if properties.point
{point, editor} = properties
{top, left} = @pagePixelPositionForPoint(editor, point)
{point, editorView} = properties
{top, left} = @pagePixelPositionForPoint(editorView, point)
properties.pageX = left + 1
properties.pageY = top + 1
properties.originalEvent ?= {detail: 1}
@@ -88,14 +86,14 @@ window.mousedownEvent = (properties={}) ->
window.mousemoveEvent = (properties={}) ->
window.mouseEvent('mousemove', properties)
window.pagePixelPositionForPoint = (editor, point) ->
window.pagePixelPositionForPoint = (editorView, point) ->
point = Point.fromObject point
top = editor.lines.offset().top + point.row * editor.lineHeight
left = editor.lines.offset().left + point.column * editor.charWidth - editor.lines.scrollLeft()
top = editorView.lines.offset().top + point.row * editorView.lineHeight
left = editorView.lines.offset().left + point.column * editorView.charWidth - editorView.lines.scrollLeft()
{ top, left }
window.setEditorWidthInChars = (editor, widthInChars, charWidth=editor.charWidth) ->
editor.width(charWidth * widthInChars + editor.lines.position().left)
window.seteditorViewWidthInChars = (editorView, widthInChars, charWidth=editorView.charWidth) ->
editorView.width(charWidth * widthInChars + editorView.lines.position().left)
$.fn.resultOfTrigger = (type) ->
event = $.Event(type)
+148 -41
Ver Arquivo
@@ -1,110 +1,217 @@
require './benchmark-helper'
$ = require 'jquery'
_ = require 'underscore'
TokenizedBuffer = require 'tokenized-buffer'
RootView = require 'root-view'
{$, _, WorkspaceView} = require 'atom'
TokenizedBuffer = require '../src/tokenized-buffer'
describe "editor.", ->
editor = null
describe "editorView.", ->
editorView = null
beforeEach ->
window.rootViewParentSelector = '#jasmine-content'
window.rootView = new RootView
window.rootView.attachToDom()
atom.workspaceViewParentSelector = '#jasmine-content'
atom.workspaceView = new WorkspaceView
atom.workspaceView.attachToDom()
rootView.width(1024)
rootView.height(768)
rootView.open() # open blank editor
editor = rootView.getActiveView()
atom.workspaceView.width(1024)
atom.workspaceView.height(768)
atom.workspaceView.openSync()
editorView = atom.workspaceView.getActiveView()
afterEach ->
if editor.pendingDisplayUpdate
if editorView.pendingDisplayUpdate
waitsFor "editor to finish rendering", (done) ->
editor.on 'editor:display-updated', done
editorView.on 'editor:display-updated', done
describe "keymap.", ->
event = null
beforeEach ->
event = keydownEvent('x', target: editor.hiddenInput[0])
event = keydownEvent('x', target: editorView.hiddenInput[0])
benchmark "keydown-event-with-no-binding", 10, ->
keymap.handleKeyEvent(event)
describe "opening-buffers.", ->
benchmark "300-line-file.", ->
buffer = project.bufferForPath('medium.coffee')
buffer = project.bufferForPathSync('medium.coffee')
describe "empty-file.", ->
benchmark "insert-delete", ->
editor.insertText('x')
editor.backspace()
editorView.insertText('x')
editorView.backspace()
describe "300-line-file.", ->
beforeEach ->
rootView.open('medium.coffee')
atom.workspaceView.openSync('medium.coffee')
describe "at-begining.", ->
benchmark "insert-delete", ->
editor.insertText('x')
editor.backspace()
editorView.insertText('x')
editorView.backspace()
benchmark "insert-delete-rehighlight", ->
editor.insertText('"')
editor.backspace()
editorView.insertText('"')
editorView.backspace()
describe "at-end.", ->
beforeEach ->
editor.moveCursorToBottom()
editorView.moveCursorToBottom()
benchmark "insert-delete", ->
editor.insertText('"')
editor.backspace()
editorView.insertText('"')
editorView.backspace()
describe "empty-vs-set-innerHTML.", ->
[firstRow, lastRow] = []
beforeEach ->
firstRow = editorView.getFirstVisibleScreenRow()
lastRow = editorView.getLastVisibleScreenRow()
benchmark "build-gutter-html.", 1000, ->
editorView.gutter.renderLineNumbers(null, firstRow, lastRow)
benchmark "set-innerHTML.", 1000, ->
editorView.gutter.renderLineNumbers(null, firstRow, lastRow)
editorView.gutter.lineNumbers[0].innerHtml = ''
benchmark "empty.", 1000, ->
editorView.gutter.renderLineNumbers(null, firstRow, lastRow)
editorView.gutter.lineNumbers.empty()
describe "positionLeftForLineAndColumn.", ->
line = null
beforeEach ->
editorView.scrollTop(2000)
editorView.resetDisplay()
line = editorView.lineElementForScreenRow(106)[0]
describe "one-line.", ->
beforeEach ->
editorView.clearCharacterWidthCache()
benchmark "uncached", 5000, ->
editorView.positionLeftForLineAndColumn(line, 106, 82)
editorView.clearCharacterWidthCache()
benchmark "cached", 5000, ->
editorView.positionLeftForLineAndColumn(line, 106, 82)
describe "multiple-lines.", ->
[firstRow, lastRow] = []
beforeEach ->
firstRow = editorView.getFirstVisibleScreenRow()
lastRow = editorView.getLastVisibleScreenRow()
benchmark "cache-entire-visible-area", 100, ->
for i in [firstRow..lastRow]
line = editorView.lineElementForScreenRow(i)[0]
editorView.positionLeftForLineAndColumn(line, i, Math.max(0, editorView.lineLengthForBufferRow(i)))
describe "text-rendering.", ->
beforeEach ->
editorView.scrollTop(2000)
benchmark "resetDisplay", 50, ->
editorView.resetDisplay()
benchmark "htmlForScreenRows", 1000, ->
lastRow = editorView.getLastScreenRow()
editorView.htmlForScreenRows(0, lastRow)
benchmark "htmlForScreenRows.htmlParsing", 50, ->
lastRow = editorView.getLastScreenRow()
html = editorView.htmlForScreenRows(0, lastRow)
div = document.createElement('div')
div.innerHTML = html
describe "gutter-api.", ->
describe "getLineNumberElementsForClass.", ->
beforeEach ->
editorView.gutter.addClassToLine(20, 'omgwow')
editorView.gutter.addClassToLine(40, 'omgwow')
benchmark "DOM", 20000, ->
editorView.gutter.getLineNumberElementsForClass('omgwow')
benchmark "getLineNumberElement.DOM", 20000, ->
editorView.gutter.getLineNumberElement(12)
benchmark "toggle-class", 2000, ->
editorView.gutter.addClassToLine(40, 'omgwow')
editorView.gutter.removeClassFromLine(40, 'omgwow')
describe "find-then-unset.", ->
classes = ['one', 'two', 'three', 'four']
benchmark "single-class", 200, ->
editorView.gutter.addClassToLine(30, 'omgwow')
editorView.gutter.addClassToLine(40, 'omgwow')
editorView.gutter.removeClassFromAllLines('omgwow')
benchmark "multiple-class", 200, ->
editorView.gutter.addClassToLine(30, 'one')
editorView.gutter.addClassToLine(30, 'two')
editorView.gutter.addClassToLine(40, 'two')
editorView.gutter.addClassToLine(40, 'three')
editorView.gutter.addClassToLine(40, 'four')
for klass in classes
editorView.gutter.removeClassFromAllLines(klass)
describe "line-htmlification.", ->
div = null
html = null
beforeEach ->
lastRow = editorView.getLastScreenRow()
html = editorView.htmlForScreenRows(0, lastRow)
div = document.createElement('div')
benchmark "setInnerHTML", 1, ->
div.innerHTML = html
describe "9000-line-file.", ->
benchmark "opening.", 5, ->
rootView.open('huge.js')
atom.workspaceView.openSync('huge.js')
describe "after-opening.", ->
beforeEach ->
rootView.open('huge.js')
atom.workspaceView.openSync('huge.js')
benchmark "moving-to-eof.", 1, ->
editor.moveCursorToBottom()
editorView.moveCursorToBottom()
describe "on-first-line.", ->
benchmark "inserting-newline", 5, ->
editor.insertNewline()
editorView.insertNewline()
describe "on-last-visible-line.", ->
beforeEach ->
editor.setCursorScreenPosition([editor.getLastVisibleScreenRow(), 0])
editorView.setCursorScreenPosition([editorView.getLastVisibleScreenRow(), 0])
benchmark "move-down-and-scroll", 300, ->
editor.trigger 'move-down'
editorView.trigger 'move-down'
describe "at-eof.", ->
endPosition = null
beforeEach ->
editor.moveCursorToBottom()
endPosition = editor.getCursorScreenPosition()
editorView.moveCursorToBottom()
endPosition = editorView.getCursorScreenPosition()
benchmark "move-to-beginning-of-word", ->
editor.moveCursorToBeginningOfWord()
editor.setCursorScreenPosition(endPosition)
editorView.moveCursorToBeginningOfWord()
editorView.setCursorScreenPosition(endPosition)
benchmark "insert", ->
editor.insertText('x')
editorView.insertText('x')
describe "TokenizedBuffer.", ->
describe "coffee-script-grammar.", ->
[languageMode, buffer] = []
beforeEach ->
editSession = benchmarkFixturesProject.open('medium.coffee')
{ languageMode, buffer } = editSession
editor = benchmarkFixturesProject.openSync('medium.coffee')
{ languageMode, buffer } = editor
benchmark "construction", 20, ->
new TokenizedBuffer(buffer, { languageMode, tabLength: 2})
+77 -34
Ver Arquivo
@@ -1,19 +1,61 @@
fs = require 'fs'
path = require 'path'
os = require 'os'
# Add support for obselete APIs of vm module so we can make some third-party
# modules work under node v0.11.x.
require 'vm-compatibility-layer'
fm = require 'json-front-matter'
_ = require 'underscore'
_ = require 'underscore-plus'
packageJson = require './package.json'
packageJson = require '../package.json'
# Shim harmony collections in case grunt was invoked without harmony
# collections enabled
_.extend(global, require('harmony-collections')) unless global.WeakMap?
module.exports = (grunt) ->
appName = 'Atom.app'
grunt.loadNpmTasks('grunt-coffeelint')
grunt.loadNpmTasks('grunt-lesslint')
grunt.loadNpmTasks('grunt-cson')
grunt.loadNpmTasks('grunt-contrib-csslint')
grunt.loadNpmTasks('grunt-contrib-coffee')
grunt.loadNpmTasks('grunt-contrib-less')
grunt.loadNpmTasks('grunt-markdown')
grunt.loadNpmTasks('grunt-shell')
grunt.loadNpmTasks('grunt-download-atom-shell')
grunt.loadNpmTasks('grunt-peg')
grunt.loadTasks('tasks')
# This allows all subsequent paths to the relative to the root of the repo
grunt.file.setBase(path.resolve('..'))
if not grunt.option('verbose')
grunt.log.writeln = (args...) -> grunt.log
grunt.log.write = (args...) -> grunt.log
[major, minor, patch] = packageJson.version.split('.')
buildDir = grunt.option('build-dir') ? '/tmp/atom-build'
shellAppDir = path.join(buildDir, appName)
contentsDir = path.join(shellAppDir, 'Contents')
appDir = path.join(contentsDir, 'Resources', 'app')
installDir = path.join('/Applications', appName)
if process.platform is 'win32'
appName = 'Atom'
tmpDir = os.tmpdir()
installRoot = process.env.ProgramFiles
buildDir = grunt.option('build-dir') ? path.join(tmpDir, 'atom-build')
shellAppDir = path.join(buildDir, appName)
contentsDir = shellAppDir
appDir = path.join(shellAppDir, 'resources', 'app')
atomShellDownloadDir = path.join(os.tmpdir(), 'atom-cached-atom-shells')
else
appName = 'Atom.app'
tmpDir = '/tmp'
installRoot = '/Applications'
buildDir = grunt.option('build-dir') ? path.join(tmpDir, 'atom-build')
shellAppDir = path.join(buildDir, appName)
contentsDir = path.join(shellAppDir, 'Contents')
appDir = path.join(contentsDir, 'Resources', 'app')
atomShellDownloadDir = '/tmp/atom-cached-atom-shells'
installDir = path.join(installRoot, appName)
coffeeConfig =
options:
@@ -54,12 +96,20 @@ module.exports = (grunt) ->
glob_to_multiple:
expand: true
src: [
'menus/*.cson'
'keymaps/*.cson'
'static/**/*.cson'
]
dest: appDir
ext: '.json'
pegConfig =
glob_to_multiple:
expand: true
src: ['src/**/*.pegjs']
dest: appDir
ext: '.js'
for child in fs.readdirSync('node_modules') when child isnt '.bin'
directory = path.join('node_modules', child)
{engines, theme} = grunt.file.readJSON(path.join(directory, 'package.json'))
@@ -68,6 +118,7 @@ module.exports = (grunt) ->
lessConfig.glob_to_multiple.src.push("#{directory}/**/*.less")
prebuildLessConfig.src.push("#{directory}/**/*.less") unless theme
csonConfig.glob_to_multiple.src.push("#{directory}/**/*.cson")
pegConfig.glob_to_multiple.src.push("#{directory}/**/*.pegjs")
grunt.initConfig
pkg: grunt.file.readJSON('package.json')
@@ -82,18 +133,24 @@ module.exports = (grunt) ->
cson: csonConfig
peg: pegConfig
coffeelint:
options:
no_empty_param_list:
level: 'error'
max_line_length:
level: 'ignore'
indentation:
level: 'ignore'
src: [
'dot-atom/**/*.coffee'
'exports/**/*.coffee'
'src/**/*.coffee'
'tasks/**/*.coffee'
'Gruntfile.coffee'
]
build: [
'build/tasks/**/*.coffee'
'build/Gruntfile.coffee'
]
test: [
'spec/*.coffee'
@@ -149,6 +206,12 @@ module.exports = (grunt) ->
_.extend(context, parsed.attributes)
parsed.body
'download-atom-shell':
version: packageJson.atomShellVersion
outputDir: 'atom-shell'
downloadDir: atomShellDownloadDir
rebuild: true # rebuild native modules after atom-shell is updated
shell:
'kill-atom':
command: 'pkill -9 Atom'
@@ -157,29 +220,9 @@ module.exports = (grunt) ->
stderr: false
failOnError: false
test:
command: "#{path.join(contentsDir, 'MacOS', 'Atom')} --test --resource-path=#{__dirname}"
options:
stdout: true
stderr: true
callback: (error, stdout, stderr, callback) ->
grunt.warn('Specs failed') if error?
callback()
grunt.loadNpmTasks('grunt-coffeelint')
grunt.loadNpmTasks('grunt-lesslint')
grunt.loadNpmTasks('grunt-cson')
grunt.loadNpmTasks('grunt-contrib-csslint')
grunt.loadNpmTasks('grunt-contrib-coffee')
grunt.loadNpmTasks('grunt-contrib-less')
grunt.loadNpmTasks('grunt-markdown')
grunt.loadNpmTasks('grunt-shell')
grunt.loadTasks('tasks')
grunt.registerTask('compile', ['coffee', 'prebuild-less', 'cson'])
grunt.registerTask('compile', ['coffee', 'prebuild-less', 'cson', 'peg'])
grunt.registerTask('lint', ['coffeelint', 'csslint', 'lesslint'])
grunt.registerTask('test', ['shell:kill-atom', 'shell:test'])
grunt.registerTask('ci', ['lint', 'update-atom-shell', 'build', 'set-development-version', 'test'])
grunt.registerTask('deploy', ['partial-clean', 'update-atom-shell', 'build', 'codesign'])
grunt.registerTask('test', ['shell:kill-atom', 'run-specs'])
grunt.registerTask('ci', ['output-disk-space', 'download-atom-shell', 'build', 'set-version', 'check-licenses', 'lint', 'test', 'codesign', 'publish-build'])
grunt.registerTask('docs', ['markdown:guides', 'build-docs'])
grunt.registerTask('default', ['update-atom-shell', 'build', 'set-development-version', 'install'])
grunt.registerTask('default', ['download-atom-shell', 'build', 'set-version', 'install'])
+10
Ver Arquivo
@@ -0,0 +1,10 @@
# Atom Build
This folder contains the grunt configuration and tasks to build Atom.
It was moved from the root of the repository so that any native modules used
would be compiled against node's v8 headers since anything stored in
`node_modules` at the root of the repo is compiled against atom's v8 headers.
New build dependencies should be added to the `package.json` file located in
this folder.
+37
Ver Arquivo
@@ -0,0 +1,37 @@
{
"name": "atom-build",
"description": "Atom build",
"repository": {
"type": "git",
"url": "https://github.com/atom/atom.git"
},
"dependencies": {
"async": "~0.2.9",
"biscotto": ">=2.1.1 <3.0",
"formidable": "~1.0.14",
"fs-plus": "2.x",
"github-releases": "~0.2.0",
"grunt": "~0.4.1",
"grunt-cli": "~0.1.9",
"grunt-coffeelint": "git://github.com/atom/grunt-coffeelint.git",
"grunt-contrib-csslint": "~0.1.2",
"grunt-contrib-coffee": "~0.9.0",
"grunt-contrib-less": "~0.8.0",
"grunt-cson": "0.6.0",
"grunt-download-atom-shell": "git+https://atom-bot:467bac80a0017b96fb5be5cfc686f5e0cc607b10@github.com/atom/grunt-download-atom-shell#v0.6.0",
"grunt-lesslint": "0.13.0",
"grunt-markdown": "~0.4.0",
"grunt-peg": "~1.1.0",
"grunt-shell": "~0.3.1",
"harmony-collections": "~0.3.8",
"json-front-matter": "~0.1.3",
"legal-eagle": "~0.3.0",
"rcedit": "~0.1.2",
"request": "~2.27.0",
"rimraf": "~2.2.2",
"runas": "0.5.x",
"underscore-plus": "1.x",
"unzip": "~0.1.9",
"vm-compatibility-layer": "~0.1.0"
}
}
+80
Ver Arquivo
@@ -0,0 +1,80 @@
fs = require 'fs'
path = require 'path'
module.exports = (grunt) ->
{cp, isAtomPackage, mkdir, rm} = require('./task-helpers')(grunt)
grunt.registerTask 'build', 'Build the application', ->
shellAppDir = grunt.config.get('atom.shellAppDir')
buildDir = grunt.config.get('atom.buildDir')
appDir = grunt.config.get('atom.appDir')
rm shellAppDir
mkdir path.dirname(buildDir)
if process.platform is 'darwin'
cp 'atom-shell/Atom.app', shellAppDir
else if process.platform is 'win32'
cp 'atom-shell', shellAppDir
mkdir appDir
cp 'atom.sh', path.join(appDir, 'atom.sh')
cp 'package.json', path.join(appDir, 'package.json')
packageDirectories = []
nonPackageDirectories = [
'benchmark'
'dot-atom'
'vendor'
'resources'
]
{devDependencies} = grunt.file.readJSON('package.json')
for child in fs.readdirSync('node_modules')
directory = path.join('node_modules', child)
if isAtomPackage(directory)
packageDirectories.push(directory)
else
nonPackageDirectories.push(directory)
# Put any paths here that shouldn't end up in the built Atom.app
# so that it doesn't becomes larger than it needs to be.
ignoredPaths = [
path.join('git-utils', 'deps')
path.join('oniguruma', 'deps')
path.join('less', 'dist')
path.join('less', 'test')
path.join('bootstrap', 'docs')
path.join('bootstrap', 'examples')
path.join('spellchecker', 'vendor')
path.join('xmldom', 'test')
path.join('jasmine-reporters', 'ext')
path.join('build', 'Release', 'obj.target')
path.join('build', 'Release', '.deps')
path.join('vendor', 'apm')
path.join('resources', 'mac')
path.join('resources', 'win')
]
ignoredPaths = ignoredPaths.map (ignoredPath) -> "(#{ignoredPath})"
nodeModulesFilter = new RegExp(ignoredPaths.join('|'))
packageFilter = new RegExp("(#{ignoredPaths.join('|')})|(.+\\.(cson|coffee)$)")
for directory in nonPackageDirectories
cp directory, path.join(appDir, directory), filter: nodeModulesFilter
for directory in packageDirectories
cp directory, path.join(appDir, directory), filter: packageFilter
cp 'spec', path.join(appDir, 'spec')
cp 'src', path.join(appDir, 'src'), filter: /.+\.(cson|coffee)$/
cp 'static', path.join(appDir, 'static')
cp 'apm', path.join(appDir, 'apm'), filter: nodeModulesFilter
if process.platform is 'darwin'
grunt.file.recurse path.join('resources', 'mac'), (sourcePath, rootDirectory, subDirectory='', filename) ->
unless /.+\.plist/.test(sourcePath)
grunt.file.copy(sourcePath, path.resolve(appDir, '..', subDirectory, filename))
dependencies = ['compile', "generate-license:save"]
dependencies.push('copy-info-plist') if process.platform is 'darwin'
dependencies.push('set-exe-icon') if process.platform is 'win32'
grunt.task.run(dependencies...)
+25
Ver Arquivo
@@ -0,0 +1,25 @@
module.exports = (grunt) ->
grunt.registerTask 'check-licenses', 'Report the licenses of all dependencies', ->
legalEagle = require 'legal-eagle'
{size, keys} = require 'underscore-plus'
done = @async()
options =
path: process.cwd()
omitPermissive: true
overrides: require './license-overrides'
legalEagle options, (err, summary) ->
if err?
console.error(err)
exit 1
if size(summary)
console.error "Found dependencies without permissive licenses:"
for name in keys(summary).sort()
console.error "#{name}"
console.error " License: #{summary[name].license}"
console.error " Repository: #{summary[name].repository}"
process.exit 1
done()
@@ -1,16 +1,21 @@
path = require 'path'
os = require 'os'
module.exports = (grunt) ->
{rm} = require('./task-helpers')(grunt)
grunt.registerTask 'partial-clean', 'Delete some of the build files', ->
tmpdir = if process.platform is 'win32' then os.tmpdir() else '/tmp'
rm grunt.config.get('atom.buildDir')
rm require('../src/coffee-cache').cacheDir
rm require('../src/less-compile-cache').cacheDir
rm '/tmp/atom-cached-atom-shells'
rm path.join(tmpdir, 'atom-cached-atom-shells')
rm 'atom-shell'
grunt.registerTask 'clean', 'Delete all the build files', ->
homeDir = process.env[if process.platform is 'win32' then 'USERPROFILE' else 'HOME']
rm 'node_modules'
rm path.join(process.env.HOME, '.atom', '.node-gyp')
rm path.join(homeDir, '.atom', '.node-gyp')
grunt.task.run('partial-clean')
+25
Ver Arquivo
@@ -0,0 +1,25 @@
module.exports = (grunt) ->
{spawn} = require('./task-helpers')(grunt)
grunt.registerTask 'codesign', 'Codesign the app', ->
done = @async()
if process.env.XCODE_KEYCHAIN
unlockKeychain (error) ->
if error?
done(error)
else
signApp(done)
else
signApp(done)
unlockKeychain = (callback) ->
cmd = 'security'
{XCODE_KEYCHAIN_PASSWORD, XCODE_KEYCHAIN} = process.env
args = ['unlock-keychain', '-p', XCODE_KEYCHAIN_PASSWORD, XCODE_KEYCHAIN]
spawn {cmd, args}, (error) -> callback(error)
signApp = (callback) ->
cmd = 'codesign'
args = ['-f', '-v', '-s', 'Developer ID Application: GitHub', grunt.config.get('atom.shellAppDir')]
spawn {cmd, args}, (error) -> callback(error)
+158
Ver Arquivo
@@ -0,0 +1,158 @@
path = require 'path'
async = require 'async'
fs = require 'fs-plus'
request = require 'request'
module.exports = (grunt) ->
{rm} = require('./task-helpers')(grunt)
cmd = path.join('node_modules', '.bin', 'coffee')
commonArgs = [path.join('build', 'node_modules', '.bin', 'biscotto'), '--']
opts =
stdio: 'inherit'
grunt.registerTask 'build-docs', 'Builds the API docs in src', ->
done = @async()
downloadIncludes (error, includePaths) ->
if error?
done(error)
else
rm('docs/output/api')
args = [
commonArgs...
'--title', 'Atom API Documentation'
'-o', 'docs/output/api'
'-r', 'docs/README.md'
'--stability', '1'
'src/'
includePaths...
]
grunt.util.spawn({cmd, args, opts}, done)
grunt.registerTask 'lint-docs', 'Generate stats about the doc coverage', ->
done = @async()
downloadIncludes (error, includePaths) ->
if error?
done(error)
else
args = [
commonArgs...
'--noOutput'
'src/'
includePaths...
]
grunt.util.spawn({cmd, args, opts}, done)
grunt.registerTask 'missing-docs', 'Generate stats about the doc coverage', ->
done = @async()
downloadIncludes (error, includePaths) ->
if error?
done(error)
else
args = [
commonArgs...
'--noOutput'
'--missing'
'src/'
includePaths...
]
grunt.util.spawn({cmd, args, opts}, done)
grunt.registerTask 'copy-docs', 'Copies over latest API docs to atom-docs', ->
done = @async()
fetchTag = (args..., callback) ->
cmd = 'git'
args = ['describe', '--abbrev=0', '--tags']
grunt.util.spawn {cmd, args}, (error, result) ->
if error?
callback(error)
else
callback(null, String(result).trim())
copyDocs = (tag, callback) ->
cmd = 'cp'
args = ['-r', 'docs/output/', "../atom.io/public/docs/api/#{tag}/"]
fs.exists "../atom.io/public/docs/api/", (exists) ->
if exists
grunt.util.spawn {cmd, args}, (error, result) ->
if error?
callback(error)
else
callback(null, tag)
else
grunt.log.error "../atom.io/public/docs/api/ doesn't exist"
return false
grunt.util.async.waterfall [fetchTag, copyDocs], done
grunt.registerTask 'deploy-docs', 'Publishes latest API docs to atom-docs.githubapp.com', ->
done = @async()
docsRepoArgs = ['--work-tree=../atom-docs/', '--git-dir=../atom-docs/.git/']
fetchTag = (args..., callback) ->
cmd = 'git'
args = ['describe', '--abbrev=0', '--tags']
grunt.util.spawn {cmd, args}, (error, result) ->
if error?
callback(error)
else
callback(null, String(result).trim().split('.')[0..1].join('.'))
stageDocs = (tag, callback) ->
cmd = 'git'
args = [docsRepoArgs..., 'add', "public/#{tag}"]
grunt.util.spawn({cmd, args, opts}, callback)
fetchSha = (args..., callback) ->
cmd = 'git'
args = ['rev-parse', 'HEAD']
grunt.util.spawn {cmd, args}, (error, result) ->
if error?
callback(error)
else
callback(null, String(result).trim())
commitChanges = (sha, callback) ->
cmd = 'git'
args = [docsRepoArgs..., 'commit', "-m Update API docs to #{sha}"]
grunt.util.spawn({cmd, args, opts}, callback)
pushOrigin = (args..., callback) ->
cmd = 'git'
args = [docsRepoArgs..., 'push', 'origin', 'master']
grunt.util.spawn({cmd, args, opts}, callback)
pushHeroku = (args..., callback) ->
cmd = 'git'
args = [docsRepoArgs..., 'push', 'heroku', 'master']
grunt.util.spawn({cmd, args, opts}, callback)
grunt.util.async.waterfall [fetchTag, stageDocs, fetchSha, commitChanges, pushOrigin, pushHeroku], done
downloadFileFromRepo = ({repo, file}, callback) ->
uri = "https://raw.github.com/atom/#{repo}/master/#{file}"
request uri, (error, response, contents) ->
return callback(error) if error?
downloadPath = path.join('docs', 'includes', repo, file)
fs.writeFile downloadPath, contents, (error) ->
callback(error, downloadPath)
downloadIncludes = (callback) ->
includes = [
{repo: 'first-mate', file: 'src/grammar.coffee'}
{repo: 'first-mate', file: 'src/grammar-registry.coffee'}
{repo: 'node-pathwatcher', file: 'src/directory.coffee'}
{repo: 'node-pathwatcher', file: 'src/file.coffee'}
{repo: 'space-pen', file: 'src/space-pen.coffee'}
{repo: 'text-buffer', file: 'src/marker.coffee'}
{repo: 'text-buffer', file: 'src/point.coffee'}
{repo: 'text-buffer', file: 'src/range.coffee'}
{repo: 'text-buffer', file: 'src/text-buffer.coffee'}
{repo: 'theorist', file: 'src/model.coffee'}
]
async.map(includes, downloadFileFromRepo, callback)
+46
Ver Arquivo
@@ -0,0 +1,46 @@
fs = require 'fs'
path = require 'path'
module.exports = (grunt) ->
grunt.registerTask 'generate-license', 'Generate the license, including the licenses of all dependencies', (mode) ->
legalEagle = require 'legal-eagle'
done = @async()
options =
path: process.cwd()
overrides: require './license-overrides'
legalEagle options, (err, dependencyLicenses) ->
if err?
console.error(err)
exit 1
licenseText = getLicenseText(dependencyLicenses)
if mode is 'save'
targetPath = path.join(grunt.config.get('atom.appDir'), 'LICENSE')
fs.writeFileSync(targetPath, licenseText)
else
console.log licenseText
done()
getLicenseText = (dependencyLicenses) ->
{keys} = require 'underscore-plus'
text = """
Copyright 2014 GitHub, Inc.
This application bundles the following third-party packages in accordance
with the following licenses:\n\n
"""
names = keys(dependencyLicenses).sort()
for name in names
{license, source, sourceText} = dependencyLicenses[name]
text += "-------------------------------------------------------------------------\n\n"
text += "Package: #{name}\n"
text += "License: #{license}\n"
text += "License Source: #{source}\n" if source?
if sourceText?
text += "Source Text:\n\n"
text += sourceText
text += '\n'
text
+21
Ver Arquivo
@@ -0,0 +1,21 @@
path = require 'path'
runas = null
module.exports = (grunt) ->
{cp, mkdir, rm} = require('./task-helpers')(grunt)
grunt.registerTask 'install', 'Install the built application', ->
installDir = grunt.config.get('atom.installDir')
shellAppDir = grunt.config.get('atom.shellAppDir')
if process.platform is 'win32'
runas ?= require 'runas'
copyFolder = path.resolve 'script', 'copy-folder.cmd'
if runas('cmd', ['/c', copyFolder, shellAppDir, installDir], admin: true) isnt 0
grunt.log.error("Failed to copy #{shellAppDir} to #{installDir}")
createShortcut = path.resolve 'script', 'create-shortcut.cmd'
runas('cmd', ['/c', createShortcut, path.join(installDir, 'atom.exe'), 'Atom'])
else
rm installDir
mkdir path.dirname(installDir)
cp shellAppDir, installDir
+62
Ver Arquivo
@@ -0,0 +1,62 @@
module.exports =
'aws-sign@0.3.0':
repository: 'https://github.com/mikeal/aws-sign'
license: 'MIT'
source: 'index.js'
sourceText: """
/*!
* knox - auth
* Copyright(c) 2010 LearnBoost <dev@learnboost.com>
* MIT Licensed
*/
<content omitted>
"""
'bufferjs@2.0.0':
repository: 'https://github.com/coolaj86/node-bufferjs'
license: 'MIT'
source: 'LICENSE.MIT'
sourceText: """
Copyright (c) 2010 AJ ONeal (and Contributors)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
"""
'buffers@0.1.1':
repository: "http://github.com/substack/node-buffers"
license: 'MIT'
source: 'README.markdown'
sourceText: """
<content omitted>
license
=======
MIT/X11
"""
'specificity@0.1.3':
repository: 'https://github.com/keeganstreet/specificity'
license: 'MIT'
source: 'package.json in repository'
'promzard@0.2.0':
license: 'ISC'
source: 'LICENSE in the repository'
sourceText: """
The ISC License
Copyright (c) Isaac Z. Schlueter
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
"""
+25
Ver Arquivo
@@ -0,0 +1,25 @@
module.exports = (grunt) ->
{spawn} = require('./task-helpers')(grunt)
grunt.registerTask 'output-disk-space', 'Print diskspace available', ->
return unless process.platform is 'darwin'
done = @async()
cmd = 'df'
args = ['-Hl']
spawn {cmd, args}, (error, result, code) ->
return done(error) if error?
lines = result.stdout.split("\n")
for line in lines[1..]
[filesystem, size, used, avail, capacity, extra] = line.split(/\s+/)
capacity = parseInt(capacity)
if capacity > 90
grunt.log.error("#{filesystem} is at #{capacity}% capacity!")
else if capacity > 80
grunt.log.ok("#{filesystem} is at #{capacity}% capacity.")
done()
@@ -30,16 +30,16 @@ module.exports = (grunt) ->
themeMains.push(mainPath) if grunt.file.isFile(mainPath)
importPaths.unshift(stylesheetsDir) if grunt.file.isDir(stylesheetsDir)
grunt.log.writeln("Building LESS cache for #{configuration.join(', ').yellow}")
grunt.verbose.writeln("Building LESS cache for #{configuration.join(', ').yellow}")
lessCache = new LessCache
cacheDir: directory
resourcePath: path.resolve('.')
importPaths: importPaths
for file in @filesSrc
grunt.log.writeln("File #{file.cyan} created in cache.")
grunt.verbose.writeln("File #{file.cyan} created in cache.")
lessCache.readFileSync(file)
for file in themeMains
grunt.log.writeln("File #{file.cyan} created in cache.")
grunt.verbose.writeln("File #{file.cyan} created in cache.")
lessCache.readFileSync(file)
+172
Ver Arquivo
@@ -0,0 +1,172 @@
child_process = require 'child_process'
path = require 'path'
_ = require 'underscore-plus'
fs = require 'fs-plus'
GitHub = require 'github-releases'
request = require 'request'
grunt = null
maxReleases = 10
assetName = 'atom-mac.zip'
assetPath = "/tmp/atom-build/#{assetName}"
commitSha = process.env.JANKY_SHA1
token = process.env.ATOM_ACCESS_TOKEN
defaultHeaders =
Authorization: "token #{token}"
'User-Agent': 'Atom'
module.exports = (gruntObject) ->
grunt = gruntObject
grunt.registerTask 'publish-build', 'Publish the built app', ->
return unless process.platform is 'darwin'
return if process.env.JANKY_SHA1 and process.env.JANKY_BRANCH isnt 'master'
done = @async()
createBuildRelease (error, release) ->
return done(error) if error?
zipApp (error) ->
return done(error) if error?
uploadAsset release, (error) ->
return done(error) if error?
publishRelease release, (error) ->
return done(error) if error?
getAtomDraftRelease (error, release) ->
return done(error) if error?
deleteExistingAsset release, (error) ->
return done(error) if error?
uploadAsset(release, done)
logError = (message, error, details) ->
grunt.log.error(message)
grunt.log.error(error.message ? error) if error?
grunt.log.error(details) if details
zipApp = (callback) ->
fs.removeSync(assetPath)
options = {cwd: path.dirname(assetPath), maxBuffer: Infinity}
child_process.exec "zip -r --symlinks #{assetName} Atom.app", options, (error, stdout, stderr) ->
if error?
logError('Zipping Atom.app failed', error, stderr)
callback(error)
getRelease = (callback) ->
options =
uri: 'https://api.github.com/repos/atom/atom-master-builds/releases'
method: 'GET'
headers: defaultHeaders
json: true
request options, (error, response, releases=[]) ->
if error? or response.statusCode isnt 200
logError('Fetching releases failed', error, releases)
callback(error ? new Error(response.statusCode))
else
if releases.length > maxReleases
deleteRelease(release) for release in releases[maxReleases..]
for release in releases when release.name is commitSha
callback(null, release)
return
callback()
getAtomDraftRelease = (callback) ->
atomRepo = new GitHub({repo: 'atom/atom', token})
atomRepo.getReleases (error, releases=[]) ->
if error?
logError('Fetching atom/atom releases failed', error, releases)
callback(error)
else
for release in releases when release.draft
callback(null, release)
return
callback(new Error('No draft release in atom/atom repo'))
deleteRelease = (release) ->
options =
uri: release.url
method: 'DELETE'
headers: defaultHeaders
json: true
request options, (error, response, body='') ->
if error? or response.statusCode isnt 204
logError('Deleting release failed', error, body)
deleteExistingAsset = (release, callback) ->
for asset in release.assets when asset.name is assetName
options =
uri: asset.url
method: 'DELETE'
headers: defaultHeaders
request options, (error, response, body='') ->
if error? or response.statusCode isnt 204
logError('Deleting existing release asset failed', error, body)
callback(error ? new Error(response.statusCode))
else
callback()
return
callback()
createBuildRelease = (callback) ->
getRelease (error, release) ->
if error?
callback(error)
return
if release?
deleteExistingAsset release, (error) ->
callback(error, release)
return
options =
uri: 'https://api.github.com/repos/atom/atom-master-builds/releases'
method: 'POST'
headers: defaultHeaders
json:
tag_name: "v#{commitSha}"
target_commitish: 'master'
name: commitSha
body: "Build of [atom@#{commitSha.substring(0, 7)}](https://github.com/atom/atom/commits/#{commitSha})"
draft: true
prerelease: true
request options, (error, response, release={}) ->
if error? or response.statusCode isnt 201
logError('Creating release failed', error, release)
callback(error ? new Error(response.statusCode))
else
callback(null, release)
uploadAsset = (release, callback) ->
options =
uri: release.upload_url.replace(/\{.*$/, "?name=#{assetName}")
method: 'POST'
headers: _.extend({
'Content-Type': 'application/zip'
'Content-Length': fs.getSizeSync(assetPath)
}, defaultHeaders)
assetRequest = request options, (error, response, body='') ->
if error? or response.statusCode >= 400
logError('Upload release asset failed', error, body)
callback(error ? new Error(response.statusCode))
else
callback(null, release)
fs.createReadStream(assetPath).pipe(assetRequest)
publishRelease = (release, callback) ->
options =
uri: release.url
method: 'POST'
headers: defaultHeaders
json:
draft: false
request options, (error, response, body={}) ->
if error? or response.statusCode isnt 200
logError('Creating release failed', error, body)
callback(error ? new Error(response.statusCode))
else
callback()
+108
Ver Arquivo
@@ -0,0 +1,108 @@
async = require 'async'
request = require 'request'
# Configure and publish all packages in package.json to atom.io
#
# This task should be run whenever you want to be sure that atom.io contains
# all the packages and versions referenced in Atom's package.json file.
module.exports = (grunt) ->
{spawn} = require('./task-helpers')(grunt)
baseUrl = "https://atom.io/api/packages"
packageExists = (packageName, token, callback) ->
requestSettings =
url: "#{baseUrl}/#{packageName}"
json: true
headers:
authorization: token
request.get requestSettings, (error, response, body={}) ->
if error?
callback(error)
else
callback(null, response.statusCode is 404)
createPackage = (packageName, token, callback) ->
requestSettings =
url: baseUrl
json: true
headers:
authorization: token
method: 'POST'
body:
repository: "atom/#{packageName}"
request.get requestSettings, (error, response, body={}) ->
if error?
callback(error)
else if response.statusCode isnt 201
message = body.message ? body.error ? body
callback(new Error("Creating package failed: #{message}"))
else
callback()
createPackageVersion = (packageName, tag, token, callback) ->
requestSettings =
url: "#{baseUrl}/#{packageName}/versions"
json: true
method: 'POST'
headers:
authorization: token
body:
tag: tag
request.get requestSettings, (error, response, body={}) ->
if error?
callback(error)
else if response.statusCode isnt 201
message = body.message ? body.error ? body
if message is 'Version exists'
callback()
else
callback(new Error("Creating new version failed: #{message}"))
else
callback()
getToken = (callback) ->
if token = process.env.ATOM_ACCESS_TOKEN
callback(null, token)
else
spawn {cmd: 'security', args: ['-q', 'find-generic-password', '-ws', 'GitHub API Token']}, (error, result, code) ->
token = result.toString() unless error?
callback(error, token)
grunt.registerTask 'publish-packages', 'Publish all bundled packages', ->
done = @async()
getToken (error, token) ->
unless token
grunt.log.error('Token not found in keychain or ATOM_ACCESS_TOKEN environment variable')
done(false)
{packageDependencies} = grunt.file.readJSON('package.json') ? {}
tasks = []
for name, version of packageDependencies
do (name, version) ->
tasks.push (callback) ->
grunt.verbose.writeln("Publishing #{name}@#{version}")
tag = "v#{version}"
packageExists name, token, (error, exists) ->
if error?
callback(error)
return
if exists
createPackage name, token, (error) ->
if error?
callback(error)
else
createPackageVersion(name, tag, token, callback)
else
createPackageVersion(name, tag, token, callback)
async.waterfall tasks, (error) ->
if error?
grunt.log.error(error.message)
done(false)
else
done()
+12
Ver Arquivo
@@ -0,0 +1,12 @@
path = require 'path'
module.exports = (grunt) ->
grunt.registerTask 'set-exe-icon', 'Set icon of the exe', ->
done = @async()
shellAppDir = grunt.config.get('atom.shellAppDir')
shellExePath = path.join(shellAppDir, 'atom.exe')
iconPath = path.resolve('resources', 'win', 'atom.ico')
rcedit = require('rcedit')
rcedit(shellExePath, {'icon': iconPath}, done)
+50
Ver Arquivo
@@ -0,0 +1,50 @@
fs = require 'fs'
path = require 'path'
module.exports = (grunt) ->
{spawn} = require('./task-helpers')(grunt)
getVersion = (callback) ->
if process.env.JANKY_SHA1 and process.env.JANKY_BRANCH is 'master'
{version} = require(path.join(grunt.config.get('atom.appDir'), 'package.json'))
callback(null, version)
else
cmd = 'git'
args = ['rev-parse', '--short', 'HEAD']
spawn {cmd, args}, (error, {stdout}={}, code) ->
callback(error, stdout?.trim?())
grunt.registerTask 'set-version', 'Set the version in the plist and package.json', ->
done = @async()
getVersion (error, version) ->
if error?
done(error)
return
appDir = grunt.config.get('atom.appDir')
# Replace version field of package.json.
packageJsonPath = path.join(appDir, 'package.json')
packageJson = require(packageJsonPath)
packageJson.version = version
packageJsonString = JSON.stringify(packageJson, null, 2)
fs.writeFileSync(packageJsonPath, packageJsonString)
if process.platform is 'darwin'
cmd = 'script/set-version'
args = [grunt.config.get('atom.buildDir'), version]
spawn {cmd, args}, (error, result, code) -> done(error)
else if process.platform is 'win32'
shellAppDir = grunt.config.get('atom.shellAppDir')
shellExePath = path.join(shellAppDir, 'atom.exe')
strings =
CompanyName: 'GitHub, Inc.'
FileDescription: 'The hackable editor'
LegalCopyright: 'Copyright (C) 2013 GitHub, Inc. All rights reserved'
ProductName: 'Atom'
ProductVersion: version
rcedit = require('rcedit')
rcedit(shellExePath, {'version-string': strings}, done)
+112
Ver Arquivo
@@ -0,0 +1,112 @@
fs = require 'fs'
path = require 'path'
_ = require 'underscore-plus'
async = require 'async'
module.exports = (grunt) ->
{isAtomPackage, spawn} = require('./task-helpers')(grunt)
packageSpecQueue = null
runPackageSpecs = (callback) ->
failedPackages = []
rootDir = grunt.config.get('atom.shellAppDir')
contentsDir = grunt.config.get('atom.contentsDir')
resourcePath = process.cwd()
if process.platform is 'darwin'
appPath = path.join(contentsDir, 'MacOS', 'Atom')
else if process.platform is 'win32'
appPath = path.join(contentsDir, 'atom.exe')
packageSpecQueue = async.queue (packagePath, callback) ->
if process.platform is 'darwin'
options =
cmd: appPath
args: ['--test', "--resource-path=#{resourcePath}", "--spec-directory=#{path.join(packagePath, 'spec')}"]
opts:
cwd: packagePath
env: _.extend({}, process.env, ATOM_PATH: rootDir)
else if process.platform is 'win32'
options =
cmd: process.env.comspec
args: ['/c', appPath, '--test', "--resource-path=#{resourcePath}", "--spec-directory=#{path.join(packagePath, 'spec')}", "--log-file=ci.log"]
opts:
cwd: packagePath
env: _.extend({}, process.env, ATOM_PATH: rootDir)
grunt.verbose.writeln "Launching #{path.basename(packagePath)} specs."
spawn options, (error, results, code) ->
if process.platform is 'win32'
process.stderr.write(fs.readFileSync(path.join(packagePath, 'ci.log')))
fs.unlinkSync(path.join(packagePath, 'ci.log'))
failedPackages.push path.basename(packagePath) if error
callback()
modulesDirectory = path.resolve('node_modules')
for packageDirectory in fs.readdirSync(modulesDirectory)
packagePath = path.join(modulesDirectory, packageDirectory)
continue unless grunt.file.isDir(path.join(packagePath, 'spec'))
continue unless isAtomPackage(packagePath)
packageSpecQueue.push(packagePath)
# TODO: Restore concurrency on Windows
packageSpecQueue.concurrency = 1 unless process.platform is 'win32'
packageSpecQueue.drain = -> callback(null, failedPackages)
runCoreSpecs = (callback) ->
contentsDir = grunt.config.get('atom.contentsDir')
if process.platform is 'darwin'
appPath = path.join(contentsDir, 'MacOS', 'Atom')
else if process.platform is 'win32'
appPath = path.join(contentsDir, 'atom.exe')
resourcePath = process.cwd()
coreSpecsPath = path.resolve('spec')
if process.platform is 'darwin'
options =
cmd: appPath
args: ['--test', "--resource-path=#{resourcePath}", "--spec-directory=#{coreSpecsPath}"]
else if process.platform is 'win32'
options =
cmd: process.env.comspec
args: ['/c', appPath, '--test', "--resource-path=#{resourcePath}", "--spec-directory=#{coreSpecsPath}", "--log-file=ci.log"]
spawn options, (error, results, code) ->
if process.platform is 'win32'
process.stderr.write(fs.readFileSync('ci.log'))
fs.unlinkSync('ci.log')
else
# TODO: Restore concurrency on Windows
packageSpecQueue.concurrency = 2
callback(null, error)
grunt.registerTask 'run-specs', 'Run the specs', ->
done = @async()
startTime = Date.now()
# TODO: This should really be parallel on both platforms, however our
# fixtures step on each others toes currently.
if process.platform is 'darwin'
method = async.parallel
else if process.platform is 'win32'
method = async.series
method [runCoreSpecs, runPackageSpecs], (error, results) ->
[coreSpecFailed, failedPackages] = results
elapsedTime = Math.round((Date.now() - startTime) / 100) / 10
grunt.verbose.writeln("Total spec time: #{elapsedTime}s")
failures = failedPackages
failures.push "atom core" if coreSpecFailed
grunt.log.error("[Error]".red + " #{failures.join(', ')} spec(s) failed") if failures.length > 0
# TODO: Mark the build as green on Windows until specs pass.
if process.platform is 'darwin'
done(!coreSpecFailed and failedPackages.length == 0)
else if process.platform is 'win32'
done(true)
+67
Ver Arquivo
@@ -0,0 +1,67 @@
fs = require 'fs-plus'
path = require 'path'
module.exports = (grunt) ->
cp: (source, destination, {filter}={}) ->
unless grunt.file.exists(source)
grunt.fatal("Cannot copy non-existent #{source.cyan} to #{destination.cyan}")
copyFile = (sourcePath, destinationPath) ->
return if filter?.test(sourcePath)
stats = fs.lstatSync(sourcePath)
if stats.isSymbolicLink()
grunt.file.mkdir(path.dirname(destinationPath))
fs.symlinkSync(fs.readlinkSync(sourcePath), destinationPath)
else if stats.isFile()
grunt.file.copy(sourcePath, destinationPath)
if grunt.file.exists(destinationPath)
fs.chmodSync(destinationPath, fs.statSync(sourcePath).mode)
if grunt.file.isFile(source)
copyFile(source, destination)
else
try
onFile = (sourcePath) ->
destinationPath = path.join(destination, path.relative(source, sourcePath))
copyFile(sourcePath, destinationPath)
onDirectory = (sourcePath) ->
if fs.isSymbolicLinkSync(sourcePath)
destinationPath = path.join(destination, path.relative(source, sourcePath))
copyFile(sourcePath, destinationPath)
false
else
true
fs.traverseTreeSync source, onFile, onDirectory
catch error
grunt.fatal(error)
grunt.verbose.writeln("Copied #{source.cyan} to #{destination.cyan}.")
mkdir: (args...) ->
grunt.file.mkdir(args...)
rm: (args...) ->
grunt.file.delete(args..., force: true) if grunt.file.exists(args...)
spawn: (options, callback) ->
childProcess = require 'child_process'
stdout = []
stderr = []
error = null
proc = childProcess.spawn(options.cmd, options.args, options.opts)
proc.stdout.on 'data', (data) -> stdout.push(data.toString())
proc.stderr.on 'data', (data) -> stderr.push(data.toString())
proc.on 'close', (exitCode, signal) ->
error = new Error(signal) if exitCode != 0
results = {stderr: stderr.join(''), stdout: stdout.join(''), code: exitCode}
grunt.log.error results.stderr if exitCode != 0
callback(error, results, exitCode)
isAtomPackage: (packagePath) ->
try
{engines} = grunt.file.readJSON(path.join(packagePath, 'package.json'))
engines?.atom?
catch error
false
+22
Ver Arquivo
@@ -0,0 +1,22 @@
path = require 'path'
module.exports = (grunt) ->
grunt.registerTask 'update-octicons', 'Update octicon font and LESS variables', ->
pathToOcticons = path.resolve('..', 'octicons')
if grunt.file.isDir(pathToOcticons)
# Copy font-file
fontSrc = path.join(pathToOcticons, 'octicons', 'octicons.woff')
fontDest = path.resolve('static', 'octicons.woff')
grunt.file.copy(fontSrc, fontDest)
# Update Octicon UTF codes
glyphsSrc = path.join(pathToOcticons, 'data', 'glyphs.yml')
output = []
for {css, code} in grunt.file.readYAML(glyphsSrc)
output.push "@#{css}: \"\\#{code}\";"
octiconUtfDest = path.resolve('static', 'variables', 'octicon-utf-codes.less')
grunt.file.write(octiconUtfDest, "#{output.join('\n')}\n")
else
grunt.log.error("octicons repo must be cloned to #{pathToOcticons}")
false
+58
Ver Arquivo
@@ -0,0 +1,58 @@
# Welcome to the Atom API Documentation
![Atom](http://i.imgur.com/OrTvUAD.png)
## FAQ
### Where do I start?
Check out [EditorView][EditorView] and [Editor][Editor] classes for a good
overview of the main editor API.
### How do I access these classes?
Check out the [Atom][Atom] class docs to see what globals are available and
what they provide.
You can also require many of these classes in your package via:
```coffee
{EditorView} = require 'atom'
```
The classes available from `require 'atom'` are:
* [BufferedProcess][BufferedProcess]
* [BufferedNodeProcess][BufferedNodeProcess]
* [EditorView][EditorView]
* [Git][Git]
* [Point][Point]
* [Range][Range]
* [ScrollView][ScrollView]
* [SelectListView][SelectListView]
* [View][View]
* [WorkspaceView][WorkspaceView]
### How do I create a package?
You probably want to read the [creating a package][creating-a-package]
doc first and come back here when you are done.
### Where are the node docs?
Atom ships with node 0.11.10 and the comprehensive node API docs are available
[here][node-docs].
[Atom]: ../classes/Atom.html
[BufferedProcess]: ../classes/BufferedProcess.html
[BufferedNodeProcess]: ../classes/BufferedNodeProcess.html
[Editor]: ../classes/Editor.html
[EditorView]: ../classes/EditorView.html
[Git]: ../classes/Git.html
[Point]: ../classes/Point.html
[Range]: ../classes/Range.html
[ScrollView]: ../classes/ScrollView.html
[SelectListView]: ../classes/SelectListView.html
[View]: ../classes/View.html
[WorkspaceView]: ../classes/WorkspaceView.html
[creating-a-package]: https://atom.io/docs/latest/creating-a-package
[node-docs]: http://nodejs.org/docs/v0.11.10/api
+76
Ver Arquivo
@@ -0,0 +1,76 @@
## Configuration API
### Reading Config Settings
If you are writing a package that you want to make configurable, you'll need to
read config settings via the `atom.config` global. You can read the current
value of a namespaced config key with `atom.config.get`:
```coffeescript
# read a value with `config.get`
@showInvisibles() if atom.config.get "editor.showInvisibles"
```
Or you can use the `::observeConfig` to track changes from any view object.
```coffeescript
class MyView extends View
initialize: ->
@observeConfig 'editor.fontSize', () =>
@adjustFontSize()
```
The `::observeConfig` method will call the given callback immediately with the
current value for the specified key path, and it will also call it in the future
whenever the value of that key path changes.
Subscriptions made with `observeConfig` are automatically canceled when the
view is removed. You can cancel config subscriptions manually via the
`unobserveConfig` method.
```coffeescript
view1.unobserveConfig() # unobserve all properties
```
You can add the ability to observe config values to non-view classes by
extending their prototype with the `ConfigObserver` mixin:
```coffeescript
{ConfigObserver} = require 'atom'
class MyClass
ConfigObserver.includeInto(this)
constructor: ->
@observeConfig 'editor.showInvisibles', -> # ...
destroy: ->
@unobserveConfig()
```
### Writing Config Settings
The `atom.config` database is populated on startup from `~/.atom/config.cson`,
but you can programmatically write to it with `atom.config.set`:
```coffeescript
# basic key update
atom.config.set("core.showInvisibles", true)
```
You should never mutate the value of a config key, because that would circumvent
the notification of observers. You can however use methods like `pushAtKeyPath`,
`unshiftAtKeyPath`, and `removeAtKeyPath` to manipulate mutable config values.
```coffeescript
atom.config.pushAtKeyPath("core.disabledPackages", "wrap-guide")
atom.config.removeAtKeyPath("core.disabledPackages", "terminal")
```
You can also use `setDefaults`, which will assign default values for keys that
are always overridden by values assigned with `set`. Defaults are not written
out to the the `config.json` file to prevent it from becoming cluttered.
```coffeescript
atom.config.setDefaults("editor", fontSize: 18, showInvisibles: true)
```
+34
Ver Arquivo
@@ -0,0 +1,34 @@
# Globals
Atom exposes several services through singleton objects accessible via the
`atom` global:
* atom
* workspace:
Manipulate and query the state of the user interface for the current
window. Open editors, manipulate panes.
* workspaceView:
Similar to workspace, but provides access to the root of all views in the
current window.
* project:
Access the directory associated with the current window. Load editors,
perform project-wide searches, register custom openers for special file
types.
* config:
Read, write, and observe user configuration settings.
* keymap:
Add and query the currently active keybindings.
* deserializers:
Deserialize instances from their state objects and register deserializers.
* packages:
Activate, deactivate, and query user packages.
* themes:
Activate, deactivate, and query user themes.
* contextMenu:
Register context menus.
* menu:
Register application menus.
* pasteboard:
Read from and write to the system pasteboard.
* syntax:
Assign and query syntactically-scoped properties.
+123
Ver Arquivo
@@ -0,0 +1,123 @@
# Keymaps In-Depth
## Structure of a Keymap File
Keymap files are encoded as JSON or CSON files containing nested hashes. They
work much like stylesheets, but instead of applying style properties to elements
matching the selector, they specify the meaning of keystrokes on elements
matching the selector. Here is an example of some bindings that apply when
keystrokes pass through elements with the class `.editor`:
```coffee
'.editor':
'cmd-delete': 'editor:backspace-to-beginning-of-line'
'alt-backspace': 'editor:backspace-to-beginning-of-word'
'ctrl-A': 'editor:select-to-first-character-of-line'
'ctrl-shift-e': 'editor:select-to-end-of-line'
'cmd-left': 'editor:move-to-first-character-of-line'
'.editor:not(.mini)'
'cmd-alt-[': 'editor:fold-current-row'
'cmd-alt-]': 'editor:unfold-current-row'
```
Beneath the first selector are several bindings, mapping specific *keystroke
patterns* to *commands*. When an element with the `.editor` class is focused and
`cmd-delete` is pressed, an custom DOM event called
`editor:backspace-to-beginning-of-line` is emitted on the `.editor` element.
The second selector group also targets editors, but only if they don't have the
`.mini` class. In this example, the commands for code folding don't really make
sense on mini-editors, so the selector restricts them to regular editors.
### Keystroke Patterns
Keystroke patterns express one or more keystrokes combined with optional
modifier keys. For example: `ctrl-w v`, or `cmd-shift-up`. A keystroke is
composed of the following symbols, separated by a `-`. A multi-keystroke pattern
can be expressed as keystroke patterns separated by spaces.
| Type | Examples
| --------------------|----------------------------
| Character literals | `a` `4` `$`
| Modifier keys | `cmd` `ctrl` `alt` `shift`
| Special keys | `enter` `escape` `backspace` `delete` `tab` `home` `end` `pageup` `pagedown` `left` `right` `up` `down`
### Commands
Commands are custom DOM events that are triggered when a keystroke matches a
binding. This allows user interface code to listen for named commands without
specifying the specific keybinding that triggers it. For example, the following
code sets up {EditorView} to listen for commands to move the cursor to the first
character of the current line:
```coffee
class EditorView
listenForEvents: ->
@command 'editor:move-to-first-character-of-line', =>
@editor.moveCursorToFirstCharacterOfLine()
```
The `::command` method is basically an enhanced version of jQuery's `::on`
method that listens for a custom DOM event and adds some metadata to the DOM,
which is read by the command palette.
When you are looking to bind new keys, it is often useful to use the command
palette (`ctrl-shift-p`) to discover what commands are being listened for in a
given focus context. Commands are "humanized" following a simple algorithm, so a
command like `editor:fold-current-row` would appear as "Editor: Fold Current
Row".
### Specificity and Cascade Order
As is the case with CSS applying styles, when multiple bindings match for a
single element, the conflict is resolved by choosing the most *specific*
selector. If two matching selectors have the same specificity, the binding
for the selector appearing later in the cascade takes precedence.
Currently, there's no way to specify selector ordering within a single keymap,
because JSON objects do not preserve order. We eventually plan to introduce a
custom CSS-like file format for keymaps that allows for ordering within a single
file. For now, we've opted to handle cases where selector ordering is critical
by breaking the keymap into two separate files, such as `snippets-1.cson` and
`snippets-2.cson`.
## Overloading Key Bindings
Occasionally, it makes sense to layer multiple actions on top of the same key
binding. An example of this is the snippets package. Snippets are inserted by
typing a snippet prefix such as `for` and then pressing `tab`. Every time `tab`
is pressed, we want to execute code attempting to expand a snippet if one exists
for the text preceding the cursor. If a snippet *doesn't* exist, we want `tab`
to actually insert whitespace.
To achieve this, the snippets package makes use of the `.abortKeyBinding()`
method on the event object representing the `snippets:expand` command.
```coffee-script
# pseudo-code
editor.command 'snippets:expand', (e) =>
if @cursorFollowsValidPrefix()
@expandSnippet()
else
e.abortKeyBinding()
```
When the event handler observes that the cursor does not follow a valid prefix,
it calls `e.abortKeyBinding()`, telling the keymap system to continue searching
for another matching binding.
## Step-by-Step: How Keydown Events are Mapped to Commands
* A keydown event occurs on a *focused* element.
* Starting at the focused element, the keymap walks upward towards the root of
the document, searching for the most specific CSS selector that matches the
current DOM element and also contains a keystroke pattern matching the keydown
event.
* When a matching keystroke pattern is found, the search is terminated and the
pattern's corresponding command is triggered on the current element.
* If `.abortKeyBinding()` is called on the triggered event object, the search
is resumed, triggering a binding on the next-most-specific CSS selector for
the same element or continuing upward to parent elements.
* If no bindings are found, the event is handled by Chromium normally.
@@ -71,27 +71,3 @@ will only attempt to call deserialize if the two versions match, and otherwise
return undefined. We plan on implementing a migration system in the future, but
this at least protects you from improperly deserializing old state. If you find
yourself in dire need of the migration system, let us know.
### Deferred Package Deserializers
If your package defers loading on startup with an `activationEvents` property in
its `package.cson`, your deserializers won't be loaded until your package is
activated. If you want to deserialize an object from your package on startup,
this could be a problem.
The solution is to also supply a `deferredDeserializers` array in your
`package.cson` with the names of all your deserializers. When Atom attempts to
deserialize some state whose `deserializer` matches one of these names, it will
load your package first so it can register any necessary deserializers before
proceeding.
For example, the markdown preview package doesn't fully load until a preview is
triggered. But if you refresh a window with a preview pane, it loads the
markdown package early so Atom can deserialize the view correctly.
```coffee-script
# markdown-preview/package.cson
'activationEvents': 'markdown-preview:toggle': '.editor'
'deferredDeserializers': ['MarkdownPreviewView']
...
```
+58
Ver Arquivo
@@ -0,0 +1,58 @@
## Atom's View System
### SpacePen Basics
Atom's view system is built around the [SpacePen] view framework. SpacePen
view objects inherit from the jQuery prototype, and wrap DOM nodes
View objects are actually jQuery wrappers around DOM fragments, supporting all
the typical jQuery traversal and manipulation methods. In addition, view objects
have methods that are view-specific. For example, you could call both general
and view-specific on the global `atom.workspaceView` instance:
```coffeescript
atom.workspaceView.find('.editor.active') # standard jQuery method
atom.workspaceView.getActiveEditor() # view-specific method
```
If you retrieve a jQuery wrapper for an element associated with a view, use the
`.view()` method to retrieve the element's view object:
```coffeescript
# this is a plain jQuery object; you can't call view-specific methods
editorElement = atom.workspaceView.find('.editor.active')
# get the view object by calling `.view()` to call view-specific methods
editorView = editorElement.view()
editorView.setCursorBufferPosition([1, 2])
```
Refer to the [SpacePen] documentation for more details.
### WorkspaceView
The root of Atom's view hierarchy is a global called `atom.workspaceView`, which is a
singleton instance of the `WorkspaceView` view class. The root view fills the entire
window, and contains every other view. If you open Atom's inspector with
`alt-cmd-i`, you can see the internal structure of `WorkspaceView`:
![WorkspaceView in the inspector][workspaceview-inspector]
#### Panes
The `WorkspaceView` contains `prependToBottom/Top/Left/Right` and
`appendToBottom/Top/Left/Right` methods, which are used to add Tool Panels. Tool
panels are elements that take up screen real estate not devoted to text editing.
In the example above, the `TreeView` is appended to the left, and the
`CommandPanel` is appended to the top.
```coffeescript
# place a view to the left of the panes
atom.workspaceView.appendToLeft(new MyView)
# place a view below the panes
atom.workspaceView.appendToBottom(new MyOtherView)
```
[spacepen]: http://github.com/nathansobo/space-pen
[workspaceView-inspector]: https://f.cloud.github.com/assets/1424/1091631/1932c2d6-166b-11e3-8adf-9690fe82d3b8.png
+142
Ver Arquivo
@@ -0,0 +1,142 @@
# Contributing to Atom Packages
The following is a set of guidelines for contributing to Atom packages, which
are hosted in the [Atom Organization](https://github.com/atom) on GitHub. If
you're unsure which package is causing your problem or if you're having an issue
with Atom core, please use the feedback form in the application or email
[atom@github.com](mailto:atom@github.com).
## Submitting Issues
* Include screenshots and animated GIFs whenever possible; they are immensely
helpful.
* Include the behavior you expected and other places you've seen that behavior
such as Emacs, vi, Xcode, etc.
* Check the dev tools (`alt-cmd-i`) for errors and stack traces to include.
* Check Console.app for stack traces to include if reporting a crash.
* Perform a cursory search to see if a similar issue has already been submitted.
## Hacking on Packages
### Cloning
The first step is creating your own clone. You can of course do this manually
with git, or you can use the `apm develop` command to create a clone based on
the package's `repository` field in the `package.json`.
For example, if you want to make changes to the `tree-view` package, run the
following command:
```
> apm develop tree-view
Cloning https://github.com/atom/tree-view ✓
Installing modules ✓
~/.atom/dev/packages/tree-view -> ~/github/tree-view
```
This clones the `tree-view` repository to `~/github`. If you prefer a different
path, specify it via the `ATOM_REPOS_HOME` environment variable.
### Running in Development Mode
Editing a package in Atom is a bit of a circular experience: you're using Atom
to modify itself. What happens if you temporarily break something? You don't
want the version of Atom you're using to edit to become useless in the process.
For this reason, you'll only want to load packages in **development mode** while
you are working on them. You'll perform your editing in **stable mode**, only
switching to development mode to test your changes.
To open a development mode window, use the "Application: Open Dev" command,
which is normally bound to `cmd-shift-o`. You can also run dev mode from the
command line with `atom --dev`.
To load your package in development mode, create a symlink to it in
`~/.atom/dev/packages`. This occurs automatically when you clone the package
with `apm develop`. You can also run `apm link --dev` and `apm unlink --dev`
from the package directory to create and remove dev-mode symlinks.
### Installing Dependencies
Finally, you need to install the cloned package's dependencies by running
`apm install` within the package directory. This step is also performed
automatically the first time you run `apm develop`, but you'll want to keep
dependencies up to date by running `apm update` after pulling upstream changes.
## Submitting Pull Requests
### Code Guidelines
* Include screenshots and animated GIFs in your pull request whenever possible.
* Follow the [CoffeeScript](#coffeescript-styleguide),
[JavaScript](https://github.com/styleguide/javascript),
and [CSS](https://github.com/styleguide/css) styleguides.
* Include thoughtfully-worded, well-structured
[Jasmine](http://pivotal.github.com/jasmine) specs.
* Document new code based on the
[Documentation Styleguide](#documentation-styleguide)
* End files with a newline.
* Place requires in the following order:
* Built in Node Modules (such as `path`)
* Built in Atom and Atom Shell Modules (such as `atom`, `shell`)
* Local Modules (using relative paths)
* Place class properties in the following order:
* Class methods and properties (methods starting with a `@`)
* Instance methods and properties
* Avoid platform-dependent code:
* Use `require('atom').fs.getHomeDirectory()` to get the home directory.
* Use `path.join()` to concatenate filenames.
* Use `os.tmpdir()` rather than `/tmp` when you need to reference the
temporary directory.
### Commit Message Guidelines
* Use the present tense ("Add feature" not "Added feature")
* Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
* Limit the first line to 72 characters or less
* Reference issues and pull requests liberally
* Consider starting the commit message with an applicable emoji:
* :lipstick: when improving the format/structure of the code
* :racehorse: when improving performance
* :non-potable_water: when plugging memory leaks
* :memo: when writing docs
* :bulb: Check out the [Emoji Cheat Sheet](http://www.emoji-cheat-sheet.com)
for more ideas.
## CoffeeScript Styleguide
* Use parentheses if it improves code clarity.
* Prefer alphabetic keywords to symbolic keywords:
* `a is b` instead of `a == b`
* Avoid spaces inside the curly-braces of hash literals:
* `{a: 1, b: 2}` instead of `{ a: 1, b: 2 }`
* Set parameter defaults without spaces around the equal sign:
* `clear = (count=1) ->` instead of `clear = (count = 1) ->`
* Include a single line of whitespace between methods.
## Documentation Styleguide
* Use [TomDoc](http://tomdoc.org).
* Use [Markdown](https://daringfireball.net/projects/markdown).
* Reference methods and classes in markdown with the custom `{}` notation:
* Reference classes with `{ClassName}`
* Reference instance methods with `{ClassName::methodName}`
* Reference class methods with `{ClassName.methodName}`
### Example
```coffee
# Public: Disable the package with the given name.
#
# This method emits multiple events:
#
# * `package-will-be-disabled` - before the package is disabled.
# * `package-disabled` - after the package is disabled.
#
# name - The {String} name of the package to disable.
# options - The {Object} with disable options (default: {}):
# :trackTime - `true` to track the amount of time disabling took.
# :ignoreErrors - `true` to catch and ignore errors thrown.
# callback - The {Function} to call after the package has been disabled.
#
# Returns `undefined`.
disablePackage: (name, options, callback) ->
```
+52
Ver Arquivo
@@ -0,0 +1,52 @@
## Converting a TextMate Bundle
This guide will show you how to convert a [TextMate][TextMate] bundle to an
Atom package.
Converting a TextMate bundle will allow you to use its editor preferences,
snippets, and colorization inside Atom.
### Install apm
The `apm` command line utility that ships with Atom supports converting
a TextMate bundle to an Atom package.
Check that you have `apm` installed by running the following command in your
terminal:
```sh
apm help init
```
You should see a message print out with details about the `apm init` command.
If you do not, launch Atom and run the _Atom > Install Shell Commmands_ menu
to install the `apm` and `atom` commands.
### Convert the Package
Let's convert the TextMate bundle for the [R][R] programming language. You can find other existing TextMate bundles [here][TextMateOrg].
You can convert the R bundle with the following command:
```sh
apm init --package ~/.atom/packages/language-r --convert https://github.com/textmate/r.tmbundle
```
You can now browse to `~/.atom/packages/language-r` to see the converted bundle.
:tada: Your new package is now ready to use, launch Atom and open a `.r` file in
the editor to see it in action!
### Further Reading
* Check out [Publishing a Package](publish-a-package.html) for more information
on publishing the package you just created to [atom.io][atomio].
[atomio]: https://atom.io
[CSS]: http://en.wikipedia.org/wiki/Cascading_Style_Sheets
[LESS]: http://lesscss.org
[plist]: http://en.wikipedia.org/wiki/Property_list
[R]: http://en.wikipedia.org/wiki/R_(programming_language)
[TextMate]: http://macromates.com
[TextMateOrg]: https://github.com/textmate/r.tmbundle
+68
Ver Arquivo
@@ -0,0 +1,68 @@
## Converting a TextMate Theme
This guide will show you how to convert a [TextMate][TextMate] theme to an Atom
theme.
### Differences
TextMate themes use [plist][plist] files while Atom themes use [CSS][CSS] or
[LESS][LESS] to style the UI and syntax in the editor.
The utility that converts the theme first parses the theme's plist file and
then creates comparable CSS rules and properties that will style Atom similarly.
### Install apm
The `apm` command line utility that ships with Atom supports converting
a TextMate theme to an Atom theme.
Check that you have `apm` installed by running the following command in your
terminal:
```sh
apm help init
```
You should see a message print out with details about the `apm init` command.
If you do not, launch Atom and run the _Atom > Install Shell Commmands_ menu
to install the `apm` and `atom` commands.
You can now run `apm help init` to see all the options for initializing new
packages and themes.
### Convert the Theme
Download the theme you wish to convert, you can browse existing TextMate themes
[here][TextMateThemes].
Now, let's say you've downloaded the theme to `~/Downloads/MyTheme.tmTheme`,
you can convert the theme with the following command:
```sh
apm init --theme ~/.atom/packages/my-theme --convert ~/Downloads/MyTheme.tmTheme
```
You can browse to `~/.atom/packages/my-theme` to see the converted theme.
### Activate the Theme
Now that your theme is installed to `~/.atom/packages` you can enable it
by launching Atom and selecting the _Atom > Preferences..._ menu.
Select the _Themes_ link on the left side and choose _My Theme_ from the
__Syntax Theme__ dropdown menu to enable your new theme.
:tada: Your theme is now enabled, open an editor to see it in action!
### Further Reading
* Check out [Publishing a Package](publish-a-package.html) for more information
on publishing the theme you just created to [atom.io][atomio].
[atomio]: https://atom.io
[CSS]: http://en.wikipedia.org/wiki/Cascading_Style_Sheets
[LESS]: http://lesscss.org
[plist]: http://en.wikipedia.org/wiki/Property_list
[TextMate]: http://macromates.com
[TextMateThemes]: http://wiki.macromates.com/Themes/UserSubmittedThemes
+207 -368
Ver Arquivo
@@ -1,76 +1,56 @@
{{{
"title": "Creating a Package"
}}}
# Creating Packages
# Authoring Packages
Packages are at the core of Atom. Nearly everything outside of the main editor manipulation
is handled by a package. That includes "core" pieces like the command panel, status bar,
file tree, and more.
Packages are at the core of Atom. Nearly everything outside of the main editor
is handled by a package. That includes "core" pieces like the [file tree][file-tree],
[status bar][status-bar], [syntax highlighting][cs-syntax], and more.
A package can contain a variety of different resource types to change Atom's
behavior. The basic package layout is as follows (though not every package will
have all of these directories):
behavior. The basic package layout is as follows:
```text
my-package/
lib/
stylesheets/
keymaps/
snippets/
grammars/
keymaps/
lib/
menus/
spec/
package.json
snippets/
stylesheets/
index.coffee
package.json
```
## Publishing
Not every package will have (or need) all of these directories.
Atom bundles a command line utility called [apm](http://github.com/atom/apm)
which can be used to publish Atom packages to the public registry.
Once your package is written and ready for distribution you can run the
following to publish your package:
```sh
cd my-package
apm publish minor
```
This will update your `package.json` to have a new minor `version`, commit
the change, create a new [Git tag](http://git-scm.com/book/en/Git-Basics-Tagging),
and then upload the package to the registry.
Run `apm help publish` to see all the available options and `apm help` to see
all the other available commands.
We have [a tutorial on creating your first package][first-package].
## package.json
Similar to [npm packages][npm], Atom packages
can contain a _package.json_ file in their top-level directory. This file contains metadata
about the package, such as the path to its "main" module, library dependencies,
and manifests specifying the order in which its resources should be loaded.
Similar to [npm packages][npm], Atom packages contain a _package.json_ file
in their top-level directory. This file contains metadata about the package,
such as the path to its "main" module, library dependencies, and manifests
specifying the order in which its resources should be loaded.
In addition to the regular [npm package.json keys](https://npmjs.org/doc/json.html)
available, Atom package.json files have their own additions.
In addition to the regular [npm package.json keys][npm-keys] available, Atom
package.json files have their own additions.
- `main` (**Required**): the path to the CoffeeScript file that's the entry point
to your package
- `stylesheets` (**Optional**): an Array of Strings identifying the order of the
stylesheets your package needs to load. If not specified, stylesheets in the _stylesheets_
directory are added alphabetically.
stylesheets your package needs to load. If not specified, stylesheets in the
_stylesheets_ directory are added alphabetically.
- `keymaps`(**Optional**): an Array of Strings identifying the order of the
key mappings your package needs to load. If not specified, mappings in the _keymaps_
directory are added alphabetically.
key mappings your package needs to load. If not specified, mappings in the
_keymaps_ directory are added alphabetically.
- `menus`(**Optional**): an Array of Strings identifying the order of
the menu mappings your package needs to load. If not specified, mappings
in the _keymap_ directory are added alphabetically.
in the _menus_ directory are added alphabetically.
- `snippets` (**Optional**): an Array of Strings identifying the order of the
snippets your package needs to load. If not specified, snippets in the _snippets_
directory are added alphabetically.
snippets your package needs to load. If not specified, snippets in the
_snippets_ directory are added alphabetically.
- `activationEvents` (**Optional**): an Array of Strings identifying events that
trigger your package's activation. You can delay the loading of your package until
one of these events is trigged.
trigger your package's activation. You can delay the loading of your package
until one of these events is triggered.
## Source Code
@@ -87,11 +67,11 @@ object.
Your package's top-level module should implement the following methods:
- `activate(rootView, state)`: This **required** method is called when your
package is loaded. It is always passed the window's global `rootView`, and is
sometimes passed state data if the window has been reloaded and your module
implements the `serialize` method. Use this to do initialization work when your
package is started (like setting up DOM elements or binding events).
- `activate(state)`: This **required** method is called when your
package is activated. It is passed the state data from the last time the window
was serialized if your module implements the `serialize()` method. Use this to
do initialization work when your package is started (like setting up DOM
elements or binding events).
- `serialize()`: This **optional** method is called when the window is shutting
down, allowing you to return JSON to represent the state of your component. When
@@ -106,89 +86,146 @@ you don't need to worry because that's getting torn down anyway.
### Simple Package Code
Your directory would look like this:
```text
my-package/
package.json # optional
package.json
index.coffee
lib/
my-package.coffee
```
`index.coffee`:
`index.coffee` might be:
```coffeescript
module.exports = require "./lib/my-package"
```
`my-package/my-package.coffee`:
`my-package/my-package.coffee` might start:
```coffeescript
module.exports =
activate: (rootView, state) -> # ...
activate: (state) -> # ...
deactivate: -> # ...
serialize: -> # ...
```
Beyond this simple contract, your package has full access to Atom's internal
API. Anything we call internally, you can call as well. Be aware that since we
are early in development, APIs are subject to change and we have not yet
established clear boundaries between what is public and what is private. Also,
please collaborate with us if you need an API that doesn't exist. Our goal is
to build out Atom's API organically based on the needs of package authors like
you.
See [Atom's built-in packages](https://github.com/atom/atom/)
for examples of Atom's API in action.
Beyond this simple contract, your package has access to Atom's API. Be aware
that since we are early in development, APIs are subject to change and we have
not yet established clear boundaries between what is public and what is private.
Also, please collaborate with us if you need an API that doesn't exist. Our goal
is to build out Atom's API organically based on the needs of package authors
like you.
## Stylesheets
Stylesheets for your package should be placed in the _stylesheets_ directory.
Any stylesheets in this directory will be loaded and attached to the DOM when
your package is activated. Stylesheets can be written as CSS or LESS.
your package is activated. Stylesheets can be written as CSS or [LESS] (but LESS
is recommended).
An optional `stylesheets` array in your _package.json_ can list the stylesheets by
name to specify a loading order; otherwise, stylesheets are loaded alphabetically.
Ideally, you won't need much in the way of styling. We've provided a standard
set of components which define both the colors and UI elements for any package
that fits into Atom seamlessly. You can view all of Atom's UI components by opening
the styleguide: open the command palette (`cmd-shift-P`) and search for _styleguide_,
or just type `cmd-ctrl-G`.
If you _do_ need special styling, try to keep only structural styles in the package
stylesheets. If you _must_ specify colors and sizing, these should be taken from
the active theme's [ui-variables.less][ui-variables]. For more information, see the
[theme variables docs][theme-variables]. If you follow this guideline, your package
will look good out of the box with any theme!
An optional `stylesheets` array in your _package.json_ can list the stylesheets
by name to specify a loading order; otherwise, stylesheets are loaded
alphabetically.
## Keymaps
Keymaps are placed in the _keymaps_ subdirectory. It's a good idea to provide
default keymaps for your extension, especially if you're also adding a new command.
It's recommended that you provide key bindings for commonly used actions for
your extension, especially if you're also adding a new command:
By default, all keymaps are loaded in alphabetical order. An optional `keymaps`
array in your _package.json_ can specify which keymaps to load and in what order.
```coffeescript
'.tree-view-scroller':
'ctrl-V': 'changer:magic'
```
See the [main keymaps documentation](../internals/keymaps.md) for more information on
Keymaps are placed in the _keymaps_ subdirectory. By default, all keymaps are
loaded in alphabetical order. An optional `keymaps` array in your _package.json_
can specify which keymaps to load and in what order.
Keybindings are executed by determining which element the keypress occurred on. In
the example above, `changer:magic` command is executed when pressing `ctrl-V` on
the `.tree-view-scroller` element.
See the [main keymaps documentation][keymaps] for more detailed information on
how keymaps work.
## Menus
Menus are placed in the _menus_ subdirectory. It's useful to specify a
context menu items if if commands are linked to a specific part of the
interface, say for example adding a file in the tree-view.
Menus are placed in the _menus_ subdirectory. By default, all menus are loaded
in alphabetical order. An optional `menus` array in your _package.json_ can
specify which menus to load and in what order.
By default, all menus are loaded in alphabetical order. An optional
`menus` array in your _package.json_ can specify which menus to load
and in what order.
### Application Menu
It's recommended that you create an application menu item for common actions
with your package that aren't tied to a specific element:
```coffeescript
'menu': [
{
'label': 'Packages'
'submenu': [
{
'label': 'My Package'
'submenu': [
{
'label': 'Toggle'
'command': 'my-package:toggle'
}
]
}
]
}
]
```
To add your own item to the application menu, simply create a top level `menu`
key in any menu configuration file in _menus_. This can be a JSON or [CSON] file.
The menu templates you specify are merged with all other templates provided
by other packages in the order which they were loaded.
### Context Menu
It's recommended to specify a context menu item for commands that are linked to
specific parts of the interface, like adding a file in the tree-view:
```coffeescript
'context-menu':
'.tree-view':
'Add file': 'tree-view:add-file'
'.workspace':
'Inspect Element': 'core:inspect'
```
To add your own item to the application menu simply create a top level
`context-menu` key in any menu configuration file in _menus_. This can be a
JSON or [CSON] file.
Context menus are created by determining which element was selected and
then adding all of the menu items whose selectors match that element (in
the order which they were loaded). The process is then repeated for the
elements until reaching the top of the dom tree.
elements until reaching the top of the DOM tree.
NOTE: Currently you can only specify items to be added to the context
menu, the menu which appears when you right click. There are plans to
add support for adding to global menu.
```
'context-menu':
'.tree-view':
'Add file': 'tree-view:add-file'
'#root-view':
'Inspect Element': 'core:inspect'
```
In the example above, the `Add file` item will only appear when the focused item
or one of its parents has the `tree-view` class applied to it.
## Snippets
An extension can supply language snippets in the _snippets_ directory. These can
be `.cson` or `.json` files. Here's an example:
An extension can supply language snippets in the _snippets_ directory which
allows the user to enter repetitive text quickly:
```coffeescript
".source.coffee .specs":
@@ -203,24 +240,26 @@ be `.cson` or `.json` files. Here's an example:
"""
```
A snippets file contains scope selectors at its top level (`.source.coffee .spec`).
Each scope selector contains a hash of snippets keyed by their name (`Expect`, `Describe`).
Each snippet also specifies a `prefix` and a `body` key. The `prefix` represents
the first few letters to type before hitting the `tab` key to autocomplete. The
`body` defines the autofilled text. You can use placeholders like `$1`, `$2`, to indicate
regions in the body the user can navigate to every time they hit `tab`.
A snippets file contains scope selectors at its top level (`.source.coffee
.spec`). Each scope selector contains a hash of snippets keyed by their name
(`Expect`, `Describe`). Each snippet also specifies a `prefix` and a `body` key.
The `prefix` represents the first few letters to type before hitting the `tab`
key to autocomplete. The `body` defines the autofilled text. You can use
placeholders like `$1`, `$2`, to indicate regions in the body the user can
navigate to every time they hit `tab`.
All files in the directory are automatically loaded, unless the
_package.json_ supplies a `snippets` key. As with all scoped
items, snippets loaded later take precedence over earlier snippets when two
snippets match a scope with the same specificity.
All files in the directory are automatically loaded, unless the _package.json_
supplies a `snippets` key. As with all scoped items, snippets loaded later take
precedence over earlier snippets when two snippets match a scope with the same
specificity.
## Language Grammars
If you're developing a new language grammar, you'll want to place your file in
the _grammars_ directory. Each grammar is a pairing of two keys, `match` and
`captures`. `match` is a regular expression identifying the pattern to highlight,
while `captures` is an object representing what to do with each matching group.
`captures`. `match` is a regular expression identifying the pattern to
highlight, while `captures` is an object representing what to do with each
matching group.
For example:
@@ -245,14 +284,14 @@ To capture a single group, simply use the `name` key instead:
}
```
This indicates that Markdown header lines (`#`, `##`, `###`) should be applied with
the `markup.heading.gfm` token.
This indicates that Markdown header lines (`#`, `##`, `###`) should be applied
with the `markup.heading.gfm` token.
More information about the significance of these tokens can be found in
[section 12.4 of the TextMate Manual](http://manual.macromates.com/en/language_grammars.html).
[section 12.4 of the TextMate Manual][tm-tokens].
Your grammar should also include a `filetypes` array, which is a list of file extensions
your grammar supports:
Your grammar should also include a `filetypes` array, which is a list of file
extensions your grammar supports:
```coffeescript
'fileTypes': [
@@ -272,285 +311,85 @@ protocol URLs to load resources in the package.
The URLs should be in the format of
`atom://package-name/relative-path-to-package-of-resource`, for example, the
`atom://image-view/images/transparent-background.gif` would be equivablent to
`atom://image-view/images/transparent-background.gif` would be equivalent to
`~/.atom/packages/image-view/images/transparent-background.gif`.
You can also use the `atom` protocol URLs in themes.
## Writing Tests
Your package **should** have tests, and if they're placed in the _spec_ directory,
they can be run by Atom.
Your package **should** have tests, and if they're placed in the _spec_
directory, they can be run by Atom.
Under the hood, [Jasmine](https://github.com/pivotal/jasmine) is being used to
execute the tests, so you can assume that any DSL available there is available
to your package as well.
Under the hood, [Jasmine] executes your tests, so you can assume that any DSL
available there is available to your package as well.
# Full Example
**FIXME: Explain the following**
Let's take a look at creating our first package.
* jasmine
* jasmine-focused
* `spec/fixtures` and global.project
* setTimeout
* whatever else is different in spec-helper
Atom has a command you can enter that'll create a package for you:
`package-generator:generate`. Otherwise, you can hit `cmd-p`, and start typing
"Package Generator." Once you activate this package, it'll ask you for a name for
your new package. Let's call ours _changer_.
## Running Tests
Now, _changer_ is going to have a default set of folders and files created for us.
Hit `cmd-r` to reload Atom, then hit `cmd-p` and start typing "Changer." You'll
see a new `Changer:Toggle` command which, if selected, pops up a new message. So
far, so good!
TODO: Probably use the menu option now.
In order to demonstrate the capabilities of Atom and its API, our Changer plugin
is going to do two things:
Once you've got your test suite written, the recommended way to run it is `apm
test`. `apm test` prints its output to the console and returns the proper status
code depending on whether tests passed or failed.
1. It'll show only modified files in the file tree
2. It'll append a new pane to the editor with some information about the modified
files
## Publishing
Let's get started!
Atom bundles a command line utility called [apm] which can be used to publish
Atom packages to the public registry.
## Changing Keybindings and Commands
Once your package is written and ready for distribution you can run the
following to publish your package:
Since Changer is primarily concerned with the file tree, let's write a keybinding
that works only when the tree is focused. Instead of using the default `toggle`,
our keybinding executes a new command called `magic`.
_keymaps/changer.cson_ can easily become this:
```coffeescript
'.tree-view-scroller':
'ctrl-V': 'changer:magic'
```sh
cd my-package
apm publish minor
```
Notice that the keybinding is called `ctrl-V`--that's actually `ctrl-shift-v`.
You can use capital letters to denote using `shift` for your binding.
This will update your `package.json` to have a new minor `version`, commit the
change, create a new [Git tag][git-tag], and then upload the package to the
registry.
`.tree-view-scroller` represents the parent container for the tree view. Keybindings
only work within the context of where they're entered. For example, hitting `ctrl-V`
anywhere other than tree won't do anything. You can map to `body` if you want
to scope to anywhere in Atom, or just `.editor` for the editor portion.
Run `apm help publish` to see all the available options and `apm help` to see
all the other available commands.
To bind keybindings to a command, we'll use the `rootView.command` method. This
takes a command name and executes a function in the code. For example:
## Included Libraries
```coffeescript
rootView.command "changer:magic", => @magic()
```
FIXME: Describe `require 'atom'
It's common practice to namespace your commands with your package name, and separate
it with a colon (`:`). Rename the existing `toggle` method to `magic` to get the
binding to work.
In addition to core node.js modules, all packages can `require` the following
popular libraries into their packages:
Reload the editor, click on the tree, hit your keybinding, and...nothing happens! What the heck?!
Open up the _package.json_ file, and notice the key that says `activationEvents`.
Basically, this tells Atom to not load a package until it hears a certain event.
Let's change the event to `changer:magic` and reload the editor.
Hitting the key binding on the tree now works!
## Working with styles
The next step is to hide elements in the tree that aren't modified. To do that,
we'll first try and get a list of files that have not changed.
All packages are able to use jQuery in their code. In fact, we have [a list of
some of the bundled libraries Atom provides by default](#included-libraries).
Let's bring in jQuery:
```coffeescript
$ = require 'jquery'
```
Now, we can query the tree to get us a list of every file that _wasn't_ modified:
```coffeescript
magic: ->
$('ol.entries li').each (i, el) ->
if !$(el).hasClass("modified")
console.log el
```
You can access the dev console by hitting `alt-cmd-i`. When we execute the
`changer:magic` command, the browser console lists the items that are not being
modified. Let's add a class to each of these elements called `hide-me`:
```coffeescript
magic: ->
$('ol.entries li').each (i, el) ->
if !$(el).hasClass("modified")
$(el).addClass("hide-me")
```
With our newly added class, we can manipulate the visibility of the elements
with a simple stylesheet. Open up _changer.css_ in the _stylesheets_ directory,
and add a single entry:
```css
ol.entries .hide-me {
display: none;
}
```
Refresh atom, and run the `changer` command. You'll see all the non-changed files
disappear from the tree. There are a number of ways you can get the list back;
let's just naively iterate over the same elements and remove the class:
```coffeescript
magic: ->
$('ol.entries li').each (i, el) ->
if !$(el).hasClass("modified")
if !$(el).hasClass("hide-me")
$(el).addClass("hide-me")
else
$(el).removeClass("hide-me")
```
## Creating a New Pane
The next goal of this package is to append a pane to the Atom editor that lists
some information about the modified files.
To do that, we're going to first create a new class method called `content`. Every
package that extends from the `View` class can provide an optional class method
called `content`. The `content` method constructs the DOM that your package uses
as its UI. The principals of `content` are built entirely on [SpacePen](https://github.com/nathansobo/space-pen),
which we'll touch upon only briefly here.
Our display will simply be an unordered list of the file names, and their
modified times. Let's start by carving out a `div` to hold the filenames:
```coffeescript
@content: ->
@div class: 'modified-files-container', =>
@ul class: 'modified-files-list', outlet: 'modifiedFilesList', =>
@li 'Test'
@li 'Test2'
```
You can add any HTML5 attribute you like. `outlet` names the variable
your package can uses to manipulate the element directly. The fat pipe (`=>`) indicates
that the next set are nested children.
We'll add one more line to `magic` to make this pane appear:
```coffeescript
rootView.vertical.append(this)
```
If you hit the key command, you'll see a box appear right underneath the editor.
Success!
Before we populate this, let's apply some logic to toggle the pane off and on, just
like we did with the tree view:
```coffeescript
# toggles the pane
if @hasParent()
rootView.vertical.children().last().remove()
else
rootView.vertical.append(this)
```
There are about a hundred different ways to toggle a pane on and off, and this
might not be the most efficient one. If you know your package needs to be toggled
on and off more freely, it might be better to draw the UI during the initialization,
then immediately call `hide()` on the element to remove it from the view. You can
then swap between `show()` and `hide()`, and instead of forcing Atom to add and remove
the element as we're doing here, it'll just set a CSS property to control your package's
visibility.
You might have noticed that our two `li` elements aren't showing up. Let's set
a color on them so that they pop. Open up `changer.css` and add this CSS:
```css
ul.modified-files-list {
color: white;
}
```
Refresh Atom, hit the key combo, and see your brilliantly white test list.
## Calling Node.js Code
Since Atom is built on top of Node.js, you can call any of its libraries, including
other modules that your package requires.
We'll iterate through our resulting tree, and construct the path to our modified
file based on its depth in the tree:
```coffeescript
path = require 'path'
# ...
modifiedFiles = []
# for each single entry...
$('ol.entries li.file.modified span.name').each (i, el) ->
filePath = []
# ...grab its name...
filePath.unshift($(el).text())
# ... then find its parent directories, and grab their names
parents = $(el).parents('.directory.modified')
parents.each (i, el) ->
filePath.unshift($(el).find('div.header span.name').eq(0).text())
modifiedFilePath = path.join(project.rootDirectory.path, filePath.join(path.sep))
modifiedFiles.push modifiedFilePath
```
`modifiedFiles` is an array containing a list of our modified files. We're also using
the node.js [`path` library](http://nodejs.org/docs/latest/api/path.html) to get
the proper directory separator for our system.
Let's remove the two `@li` elements we added in `@content`, so that we can populate
our `modifiedFilesList` with real information. We'll do that by iterating over
`modifiedFiles`, accessing a file's last modified time, and appending it to
`modifiedFilesList`:
```coffeescript
# toggles the pane
if @hasParent()
rootView.vertical.children().last().remove()
else
for file in modifiedFiles
stat = fs.lstatSync(file)
mtime = stat.mtime
@modifiedFilesList.append("<li>#{file} - Modified at #{mtime}")
rootView.vertical.append(this)
```
When you toggle the modified files list, your pane is now populated with the filenames
and modified times of files in your project. You might notice that subsequent calls
to this command reduplicate information. We could provide an elegant way of rechecking
files already in the list, but for this demonstration, we'll just clear the `modifiedFilesList`
each time it's closed:
```coffeescript
# toggles the pane
if @hasParent()
@modifiedFilesList.empty()
rootView.vertical.children().last().remove()
else
for file in modifiedFiles
stat = fs.lstatSync(file)
mtime = stat.mtime
@modifiedFilesList.append("<li>#{file} - Modified at #{mtime}")
rootView.vertical.append(this)
```
# Included Libraries
In addition to core node.js modules, all packages can `require` the following popular
libraries into their packages:
* [SpacePen](https://github.com/nathansobo/space-pen) (as `require 'space-pen'`)
* [jQuery](http://jquery.com/) (as `require 'jquery'`)
* [Underscore](http://underscorejs.org/) (as `require 'underscore'`)
Additional libraries can be found by browsing Atom's _node_modules_ folder.
* [SpacePen] (as `require 'space-pen'`)
* [jQuery] (as `require 'jquery'`)
* [Underscore] (as `require 'underscore'`)
Additional libraries can be found by browsing Atom's *node_modules* folder.
[file-tree]: https://github.com/atom/tree-view
[status-bar]: https://github.com/atom/status-bar
[cs-syntax]: https://github.com/atom/language-coffee-script
[npm]: http://en.wikipedia.org/wiki/Npm_(software)
[npm-keys]: https://npmjs.org/doc/json.html
[apm]: https://github.com/atom/apm
[git-tag]: http://git-scm.com/book/en/Git-Basics-Tagging
[wrap-guide]: https://github.com/atom/wrap-guide/
[keymaps]: advanced/keymaps.md
[theme-variables]: theme-variables.md
[tm-tokens]: http://manual.macromates.com/en/language_grammars.html
[spacepen]: https://github.com/nathansobo/space-pen
[path]: http://nodejs.org/docs/latest/api/path.html
[jquery]: http://jquery.com/
[underscore]: http://underscorejs.org/
[jasmine]: https://github.com/pivotal/jasmine
[cson]: https://github.com/atom/season
[less]: http://lesscss.org
[ui-variables]: https://github.com/atom/atom-dark-ui/blob/master/stylesheets/ui-variables.less
[first-package]: your-first-package.html
+120 -58
Ver Arquivo
@@ -1,76 +1,138 @@
{{{
"title": "Creating a Theme"
}}}
# Creating a Theme
## Overview
Atom's interface is rendered using HTML, and it's styled via [LESS] (a superset
of CSS). Don't worry if you haven't heard of LESS before; it's just like CSS,
but with a few handy extensions.
* Explain the difference between ui themes and syntax themes
Atom supports two types of themes: _UI_ and _syntax_. UI themes style
elements such as the tree view, the tabs, drop-down lists, and the status bar.
Syntax themes style the code inside the editor.
Themes can be installed and changed from the settings view which you can open
by selecting the _Atom > Preferences..._ menu and navigating to the _Themes_
section on the left hand side.
## Getting Started
* What do I need to install?
* Atom - to edit text
* Git - to track and distribute your themes
* What do I need to know?
* CSS/LESS - as that's what themes are written in
* Devtools - so you can find the selector you're looking for.
* Is there an example I can start from?
* Yes, you can clone https://github.com/atom/solarized-dark-syntax
Themes are pretty straightforward but it's still helpful to be familiar with
a few things before starting:
# Create a minimal syntax theme
* LESS is a superset of CSS, but it has some really handy features like
variables. If you aren't familiar with its syntax, take a few minutes
to [familiarize yourself][less-tutorial].
* You may also want to review the concept of a _[package.json]_, too. This file
is used to help distribute your theme to Atom users.
* Your theme's _package.json_ must contain a `"theme"` key with a value
of `"ui"` or `"syntax"` for Atom to recognize and load it as a theme.
* You can find existing themes to install or fork on [atom.io](atomio).
```bash
cd ~/.atom/packages
mkdir my-theme
cd my-theme
git init
mkdir stylesheets
apm init --theme
cat > index.less <<END
@import "./stylesheets/base.less";
@import "./stylesheets/overrides.less";
END
cat > stylesheets/base.less <<END
@import "ui-variables";
## Creating a Syntax Theme
.editor {
color: fade(@text-color, 20%);
}
END
cat > stylesheets/overrides.less <<END
@import "ui-variables";
Let's create your first theme.
.editor {
color: fade(@text-color, 80%);
}
END
```
To get started, hit `cmd-shift-P`, and start typing "Generate Syntax Theme" to
generate a new theme package. Select "Generate Syntax Theme," and you'll be
asked for the path where your theme will be created. Let's call ours _motif_.
### Important points
Atom will pop open a new window, showing the _motif_ theme, with a default set
of folders and files created for us. If you open the settings view (`cmd-,`)
and navigate to the _Themes_ section on the left, you'll see the _Motif_ theme
listed in the _Syntax Theme_ drop-down. Select it from the menu to activate it,
now when you open an editor you should see that your new _motif_ theme in
action.
* Notice the theme attribute in the package.json file (generated by apm). This
is specific to Atom and required for all theme packages. Otherwise they won't
be displayed in the theme chooser.
* Notice the ui-variables require. If you'd like to make your theme adapt to the
users choosen ui theme, these variables allow you to create your own colors
based on them.
Open up _stylesheets/colors.less_ to change the various colors variables which
have been already been defined. For example, turn `@red` into `#f4c2c1`.
## How to create a UI theme
Then open _stylesheets/base.less_ and modify the various selectors that have
been already been defined. These selectors style different parts of code in the
editor such as comments, strings and the line numbers in the gutter.
* Needs to have a file called ui-variables and it must contain the following
variables:
* A list of variables from @benogle's theme refactor.
As an example, let's make the `.gutter` `background-color` into `@red`.
## How to just override UI colors
Reload Atom by pressing `cmd-alt-option-L` to see the changes you made reflected
in your Atom window. Pretty neat!
* Not interested in making an entire theme? Not to worry, you can override just
the colors.
* Create a theme as above but just include a single file in your `stylesheets`
directory called `ui-variables.less`
* IMPORTANT: This theme must come before
## Creating an Interface Theme
## How to create a syntax theme
Interface themes **must** provide a `ui-variables.less` file which contains all
of the variables provided by the [core themes][ui-variables].
* Explain the idea behind grammars/tokens and classes you'd want to override.
To create an interface UI theme, do the following:
1. Fork one of the following repositories:
* [atom-dark-ui]
* [atom-light-ui]
2. Clone the forked repository to the local filesystem
3. Open a terminal in the forked theme's directory
4. Open your new theme in a Dev Mode Atom window run `atom --dev .` in the
terminal or use the _View > Developer > Open in Dev Mode_ menu)
5. Change the name of the theme in the theme's `package.json` file
6. Run `apm link` to symlink your repository to `~/.atom/packages`
7. Reload Atom using `cmd-alt-ctrl-L`
8. Enable the theme via _UI Theme_ drop-down in the _Themes_ section of the
settings view
9. Make changes! Since you opened the theme in a Dev Mode window, changes will
be instantly reflected in the editor without having to reload.
## Development workflow
There are a few of tools to help make theme development faster and easier.
### Live Reload
Reloading by hitting `cmd-alt-ctrl-L` after you make changes to your theme is
less than ideal. Atom supports [live updating][livereload] of styles on Dev Mode
Atom windows.
To enable a Dev Mode window:
1. Open your theme directory in a dev window by either going to the
__View > Developer > Open in Dev Mode__ menu or by hitting the `cmd-shift-o`
shortcut
2. Make a change to your theme file and save it. Your change should be
immediately applied!
If you'd like to reload all the styles at any time, you can use the shortcut
`cmd-ctrl-shift-r`.
### Developer Tools
Atom is based on the Chrome browser, and supports Chrome's Developer Tools. You
can open them by selecting the _View > Toggle Developer Tools_ menu, or by
using the `cmd-alt-i` shortcut.
The dev tools allow you to inspect elements and take a look at their CSS
properties.
![devtools-img]
Check out Google's [extensive tutorial][devtools-tutorial] for a short
introduction.
### Atom Styleguide
If you are creating an interface theme, you'll want a way to see how your theme
changes affect all the components in the system. The [styleguide] is a page that
renders every component Atom supports.
To open the styleguide, open the command palette (`cmd-shift-P`) and search for
_styleguide_, or use the shortcut `cmd-ctrl-shift-g`.
![styleguide-img]
[atomio]: http://atom.io/packages
[less]: http://lesscss.org/
[git]: http://git-scm.com/
[atom]: https://atom.io/
[package.json]: ./creating-a-package.html#package-json
[less-tutorial]: https://speakerdeck.com/danmatthews/less-css
[devtools-tutorial]: https://developers.google.com/chrome-developer-tools/docs/elements
[ui-variables]: ./theme-variables.html
[livereload]: https://github.com/atom/dev-live-reload
[styleguide]: https://github.com/atom/styleguide
[atom-dark-ui]: https://github.com/atom/atom-dark-ui
[atom-light-ui]: https://github.com/atom/atom-light-ui
[styleguide-img]: https://f.cloud.github.com/assets/69169/1347390/2d431d98-36af-11e3-8f8e-3f4ce1e67adb.png
[devtools-img]: https://f.cloud.github.com/assets/69169/1347391/2d51f91c-36af-11e3-806f-f7b334af43e9.png
[themesettings-img]: https://f.cloud.github.com/assets/69169/1347569/3150bd0c-36b2-11e3-9d69-423503acfe3f.png
+133 -81
Ver Arquivo
@@ -1,38 +1,114 @@
{{{
"title": "Customizing Atom"
}}}
# Customizing Atom
# Configuration Settings
To change a setting, configure a theme, or install a package just open the
Settings view in the current window by pressing `cmd+,`.
## Your .atom Directory
## Changing The Theme
When you install Atom, an _.atom_ directory is created in your home directory.
If you press `cmd-,`, that directory is opened in a new window. For the
time being, this serves as the primary interface for adjusting configuration
settings, adding and changing key bindings, tweaking styles, etc.
Atom comes with both light and dark UI themes as well as several syntax themes.
You are also encouraged to [create or fork][create-theme] your own theme.
To change the active theme just open the Settings view (`cmd-,`) and select the
`Themes` section from the left hand side. You will see a drop-down menu to
change the active _Syntax_ and _UI_ themes.
You can also install more themes from here by browsing the featured themes or
searching for a specific theme.
## Installing Packages
You can install non-bundled packages by going to the `Packages` section on left
hand side of the Settings view (`cmd-,`). You will see several featured packages
and you can also search for packages from here. The packages listed here have
been published to [atom.io](http://atom.io/packages) which is the official
registry for Atom packages.
You can also install packages from the command line using `apm`.
Check that you have `apm` installed by running the following command in your
terminal:
```sh
apm help install
```
You should see a message print out with details about the `apm install` command.
If you do not, launch Atom and run the _Atom > Install Shell Commmands_ menu
to install the `apm` and `atom` commands.
You can also install packages by using the `apm install` command:
* `apm install <package_name>` to install the latest version.
* `apm install <package_name>@<package_version>` to install a specific version.
For example `apm install emmet@0.1.5` installs the `0.1.5` release of the
[Emmet](https://github.com/atom/emmet) package into `~/.atom/packages`.
You can also use `apm` to find new packages to install:
* `apm search coffee` to search for CoffeeScript packages.
* `apm view emmet` to see more information about a specific package.
## Customizing Key Bindings
Atom keymaps work similarly to stylesheets. Just as stylesheets use selectors
to apply styles to elements, Atom keymaps use selectors to associate keystrokes
with events in specific contexts. Here's a small example, excerpted from Atom's
built-in keymaps:
```coffee
'.editor':
'enter': 'editor:newline'
'body':
'ctrl-b': 'core:move-left'
'ctrl-f': 'core:move-right'
```
This keymap defines the meaning of `enter` in two different contexts. In a
normal editor, pressing `enter` emits the `editor:newline` event, which causes
the editor to insert a newline. But if the same keystroke occurs inside of a
select list's mini-editor, it instead emits the `core:confirm` event based on
the binding in the more-specific selector.
By default, `~/.atom/keymap.cson` is loaded when Atom is started. It will always
be loaded last, giving you the chance to override bindings that are defined by
Atom's core keymaps or third-party packages.
You can open this file in an editor from the _Atom > Open Your Keymap_ menu.
You'll want to know all the commands available to you. Open the Settings panel
(`cmd-,`) and select the _Keybindings_ tab. It will show you all the keybindings
currently in use.
## Advanced Configuration
Atom loads configuration settings from the `config.cson` file in your _~/.atom_
directory, which contains CoffeeScript-style JSON:
```coffeescript
core:
hideGitIgnoredFiles: true
editor:
fontSize: 18
```coffee
'core':
'excludeVcsIgnoredPaths': true
'editor':
'fontSize': 18
```
Configuration is broken into namespaces, which are defined by the config hash's
top-level keys. In addition to Atom's core components, each package may define
its own namespace.
The configuration itself is grouped by the package name or one of the two core
namespaces: `core` and `editor`.
## Glossary of Config Keys
You can open this file in an editor from the _Atom > Open Your Config_ menu.
### Configuration Key Reference
- `core`
- `disablePackages`: An array of package names to disable
- `hideGitIgnoredFiles`: Whether files in the _.gitignore_ should be hidden
- `ignoredNames`: File names to ignore across all of Atom (not fully implemented)
- `disabledPackages`: An array of package names to disable
- `excludeVcsIgnoredPaths`: Don't search within files specified by _.gitignore_
- `ignoredNames`: File names to ignore across all of Atom
- `projectHome`: The directory where projects are assumed to be located
- `themes`: An array of theme names to load, in cascading order
- `autosave`: Save a buffer when its view loses focus
- `editor`
- `autoIndent`: Enable/disable basic auto-indent (defaults to `true`)
- `autoIndentOnPaste`: Enable/disable auto-indented pasted text (defaults to `false`)
@@ -44,82 +120,58 @@ its own namespace.
- `cr`: Carriage return (for Microsoft-style line endings)
- `eol`: `\n` characters
- `space`: Leading and trailing space characters
- `normalizeIndentOnPaste`: Enable/disable conversion of pasted tabs to spaces
- `preferredLineLength`: Identifies the length of a line (defaults to `80`)
- `showInvisibles`: Whether to render placeholders for invisible characters (defaults to `false`)
- `showIndentGuide`: Show/hide indent indicators within the editor
- `showLineNumbers`: Show/hide line numbers within the gutter
- `softWrap`: Enable/disable soft wrapping of text within the editor
- `softWrapAtPreferredLineLength`: Enable/disable soft line wrapping at `preferredLineLength`
- `tabLength`: Number of spaces within a tab (defaults to `2`)
- `fuzzyFinder`
- `ignoredNames`: Files to ignore *only* in the fuzzy-finder
- `whitespace`
- `ensureSingleTrailingNewline`: Whether to reduce multiple newlines to one at the end of files
- `wrapGuide`
- `removeTrailingWhitespace`: Enable/disable striping of whitespace at the end of lines (defaults to `true`)
- `wrap-guide`
- `columns`: Array of hashes with a `pattern` and `column` key to match the
the path of the current editor to a column position.
the path of the current editor to a column position.
## Customizing Key Bindings
### Quick Personal Hacks
Atom keymaps work similarly to stylesheets. Just as stylesheets use selectors
to apply styles to elements, Atom keymaps use selectors to associate keystrokes
with events in specific contexts. Here's a small example, excerpted from Atom's
built-in keymaps:
### init.coffee
```coffee-script
'.editor':
'enter': 'editor:newline'
".select-list .editor.mini":
'enter': 'core:confirm',
```
This keymap defines the meaning of `enter` in two different contexts. In a
normal editor, pressing `enter` emits the `editor:newline` event, which causes
the editor to insert a newline. But if the same keystroke occurs inside of a
select list's mini-editor, it instead emits the `core:confirm` event based on
the binding in the more-specific selector.
By default, any keymap files in your `~/.atom/keymaps` directory are loaded
in alphabetical order when Atom is started. They will always be loaded last,
giving you the chance to override bindings that are defined by Atom's core
keymaps or third-party packages.
## Changing The Theme
Atom comes bundled with two themes `atom-dark-*` and `atom-light-*`.
Because Atom themes are based on CSS, it's possible to have multiple themes
active at the same time.
For example, you'll usually select a theme for the UI and another theme for
syntax highlighting. You can change themes from the preferences pane.
You install new themes by placing them in the _~/.atom/themes_ directory. A
theme can be a single LESS file or a directory containing multiple LESS files.
## Installing Packages
FIXME: Rewrite for the new dialog.
## Quick Personal Hacks
### user.coffee
When Atom finishes loading, it will evaluate _user.coffee_ in your _~/.atom_
When Atom finishes loading, it will evaluate _init.coffee_ in your _~/.atom_
directory, giving you a chance to run arbitrary personal CoffeeScript code to
make customizations. You have full access to Atom's API from code in this file.
Please refer to the [Atom Internals Guide](./internals/intro,md) for more information. If your
customizations become extensive, consider [creating a package](./packages/creating_packages.md).
If customizations become extensive, consider [creating a package][create-a-package].
### user.less
You can open this file in an editor from the _Atom > Open Your Init Script_
menu.
This file can also be named _init.js_ and contain JavaScript code.
### styles.less
If you want to apply quick-and-dirty personal styling changes without creating
an entire theme that you intend to distribute, you can add styles to
_user.less_ in your _~/.atom_ directory.
an entire theme that you intend to publish, you can add styles to the
_styles.less_ file in your _~/.atom_ directory.
For example, to change the color of the highlighted line number for the line that
contains the cursor, you could add the following style to _user.less_:
You can open this file in an editor from the _Atom > Open Your Stylesheet_ menu.
For example, to change the color of the cursor, you could add the following
rule to your _~/.atom/styles.less_ file:
```less
@highlight-color: pink;
.editor .line-number.cursor-line {
color: @highlight-color;
.editor .cursor {
border-color: pink;
}
```
Unfamiliar with LESS? Read more about it [here][LESS].
This file can also be named _styles.css_ and contain CSS.
[create-a-package]: creating-packages.md
[create-theme]: creating-a-theme.md
[LESS]: http://www.lesscss.org
+64 -63
Ver Arquivo
@@ -1,108 +1,109 @@
{{{
"title": "Getting Started"
}}}
# Getting Started
Welcome to Atom! This guide provides a quick introduction so you can be
productive as quickly as possible. There are also guides which cover
[configuring][configuring], [theming][theming], and [extending][extending] Atom.
[configuring], [theming], and [extending] Atom.
## The Command Palette
If there's one key-command you must remember in Atom, it should be `cmd-p`. You
can always hit `cmd-p` to bring up a list of commands that are relevant to the
currently focused UI element. If there is a key binding for a given command, it
is also displayed. This is a great way to explore the system and get to know the
key commands interactively. If you'd like to learn about adding or changing a
binding for a command, refer to the [key bindings](#customizing-key-bindings)
section below.
If there's one key-command you remember in Atom, it should be `cmd-shift-P`. You
can always press `cmd-shift-P` to bring up a list of commands (and key bindings)
that are relevant to the currently focused interface element. This is a great
way to explore the system and learn key bindings interactively. For information
about adding or changing a key binding refer to the [customizing key
bindings][key-bindings] section.
![Command Palette](https://f.cloud.github.com/assets/1424/1091618/ee7c3554-166a-11e3-9955-aaa61bb5509c.png)
![Command Palette]
## The Basics
### Working With Files
Atom windows are scoped to the directory in which they're opened from. So if
you launch Atom from the command line, everything will be relative to the
current directory. This means that the tree view on the left will only show files
contained within that directory.
This can be a useful way to organize multiple projects, as each project will be
contained within it's own window and it's state will be unique to that window.
Atom windows are scoped to a single directory on disk. If you launch Atom from
the command line via the `atom` command and don't specify a path, Atom opens a
window for the current working directory. The current window's directory will be
visible as the root of the tree view on the left, and also serve as the context
for all file-related operations.
#### Finding Files
The fastest way to find a file in your project is to use the fuzzy finder. Just
hit `cmd-t` and start typing the name of the file you're looking for. If you
already have the file open as a tab and want to jump to it, hit `cmd-b` to bring
up a searchable list of open buffers.
The fastest way to find a file is to use the fuzzy finder. Press `cmd-t` and
begin typing the name of the file you're looking for. If you are looking for a
file that is already open press `cmd-b` to bring up a searchable list of open
files. If you are using Git you can use `cmd-shift-b` to search the list of
files modified and untracked in your project's repository.
You can also use the tree view to navigate to a file. To open or move focus to
the tree view, hit `cmd-\`. You can then navigate to a file and select it with
`return`.
You can also use the tree view to navigate to a file. To open and focus the
the tree view, press `ctrl-0`. The tree view can be toggled open and closed with
`cmd-\`.
#### Adding, Moving, Deleting Files
Currently, all file modification is performed via the tree view. To add a file,
select a directory in the tree view and press `a`. Then type the name of the
file. Any intermediate directories you type will be created automatically if
needed.
To move or rename a file or directory, select it in the tree view and hit `m`.
To delete a file, select it in the tree view and hit `delete`.
You can add, move, and delete files and folders by right-clicking them in the
tree view and selecting the desired operation from the context menu. You can
also perform these operations from the keyboard by selecting a file or folder
and using `a` to add, `m` to move, and `delete` to delete.
### Searching
#### Find and Replace
FIXME: Describe https://github.com/atom/find-and-replace
To search within a buffer use `cmd-f`. To search the entire project use
`cmd-shift-f`.
#### Navigating By Symbols
If you want to jump to a method, the `cmd-j` binding opens a list of all symbols
in the current file. `cmd-.` jumps to the tag for the word currently under the cursor.
To jump to a symbol such as a method definition, press `cmd-r`. This opens a
list of all symbols in the current file, which you can fuzzy filter similarly to
`cmd-t`.
To search for symbols across your project use `cmd-shift-j`, but you'll need to
make sure you have a tags file generated for the project Also, if you're editing
CoffeeScript, it's a good idea to update your `~/.ctags` file to understand the
language. Here is [a good example](https://github.com/kevinsawicki/dotfiles/blob/master/.ctags).
To search for symbols across your project, use `cmd-shift-r`. First you'll need
to make sure you have `tags` (or `TAGS`) file generated for your project.
This can be done by installing [ctags](http://ctags.sourceforge.net/) and
running a command such as `ctags -R src/` from the command line in your
project's root directory. Using [Homebrew](http://brew.sh/)? Just run
`brew install ctags`.
You can customize how tags are generated by creating your own `.ctags` file
in your home directory (`~/.ctags`). Here is [a good example][ctags] to start
from.
### Split Panes
You can split any editor pane horizontally or vertically by using `ctrl-\` or
`ctrl-w v`. Once you have a split pane, you can move focus between them with
`ctrl-tab` or `ctrl-w w`. To close a pane, close all tabs inside it.
You can split any editor pane horizontally or vertically by using `cmd-k right`
or `cmd-k down`. Once you have a split pane, you can move focus between them
with `cmd-k cmd-right` or `cmd-k cmd-down`. To close a pane, close all its
editors with `meta-w`, then press `meta-w` one more time to close the pane. You
can configure panes to auto-close when empty in the Settings view.
### Folding
You can fold everything with `ctrl-{` and unfold everything with
`ctrl-}`. Or, you can fold / unfold by a single level with `ctrl-[` and
`ctrl-]`. The user interaction around folds is still a bit rough, but we're
planning to improve it soon.
You can fold blocks of code by clicking the arrows that appear when you hover
your mouse cursor over the gutter. You can also fold and unfold from the
keyboard with `alt-cmd-[` and `alt-cmd-]`. To fold everything, use
`alt-cmd-shift-{` and to unfold everything use `alt-cmd-shift-}`. You can also
fold at a specific indentation level with `cmd-k cmd-N` where N is the
indentation depth.
### Soft-Wrap
If you want to toggle soft wrap, trigger the command from the command palette.
Hit `cmd-p` to open the palette, then type "wrap" to find the correct
command.
Press `cmd-shift-P` to open the palette, then type "wrap" to find the correct
command. By default, lines will wrap based on the size of the editor. If you
prefer to wrap at a specific line length, toggle "Wrap at preferred line length"
in preferences.
## Configuration
If you press `cmd-,`, a configuration panel will appear in the currently focused
pane. This will serve as the primary interface for adjusting configuration
settings, adding and changing key bindings, tweaking styles, etc.
Press `cmd-,` to open the Settings view. This is the place to change settings,
install packages, and change the theme.
For more advanced configuration see the [customization guide][customization].
## Installing Packages
To install a package, open the configuration panel and select the packages tab.
FIXME: Needs more details.
[configuring]: customizing-atom.html
[theming]: creating-a-theme.html
[extending]: creating-a-package.html
[customization]: customizing-atom.html
[configuring]: customizing-atom.md
[theming]: creating-a-theme.md
[extending]: creating-a-package.md
[customization]: customizing-atom.md
[key-bindings]: customizing-atom.md#customizing-key-bindings
[command palette]: https://f.cloud.github.com/assets/1424/1091618/ee7c3554-166a-11e3-9955-aaa61bb5509c.png
[ctags]: https://github.com/atom/symbols-view/blob/master/lib/.ctags
+11 -12
Ver Arquivo
@@ -1,16 +1,15 @@
{{{
"title": "Guides"
}}}
## Guides
* [Getting Started](getting-started.html)
* [Customizing Atom](customizing-atom.html)
* [Creating a Package](creating-a-package.html)
* [Creating a Theme](creating-a-theme.html)
* [Getting Started](getting-started.md)
* [Customizing Atom](customizing-atom.md)
* [Creating a Package](creating-a-package.md)
* [Creating a Theme](creating-a-theme.md)
* [Publishing a Package](publishing-a-package.md)
* [Contributing](contributing.md)
### Advanced Topics
* [Configuration](internals/configuration.html)
* [Keymaps](internals/keymaps.html)
* [Serialization](internals/serialization.html)
* [View System](internals/view-system.html)
* [Configuration](advanced/configuration.md)
* [Keymaps](advanced/keymaps.md)
* [Serialization](advanced/serialization.md)
* [View System](advanced/view-system.md)
-61
Ver Arquivo
@@ -1,61 +0,0 @@
## Configuration API
### Reading Config Settings
If you are writing a package that you want to make configurable, you'll need to
read config settings. You can read a value from `config` with `config.get`:
```coffeescript
# read a value with `config.get`
@autosave() if config.get "core.autosave"
```
Or you can use `observeConfig` to track changes from a view object.
```coffeescript
class MyView extends View
initialize: ->
@observeConfig 'editor.fontSize', () =>
@adjustFontSize()
```
The `observeConfig` method will call the given callback immediately with the
current value for the specified key path, and it will also call it in the future
whenever the value of that key path changes.
Subscriptions made with `observeConfig` are automatically cancelled when the
view is removed. You can cancel config subscriptions manually via the
`unobserveConfig` method.
```coffeescript
view1.unobserveConfig() # unobserve all properties
```
You can add the ability to observe config values to non-view classes by
extending their prototype with the `ConfigObserver` mixin:
```coffeescript
ConfigObserver = require 'config-observer'
_.extend MyClass.prototype, ConfigObserver
```
### Writing Config Settings
As discussed above, the config database is automatically populated from
`config.cson` when Atom is started, but you can programmatically write to it in
the following way:
```coffeescript
# basic key update
config.set("core.autosave", true)
config.pushAtKeyPath("core.disabledPackages", "wrap-guide")
```
You can also use `setDefaults`, which will assign default values for keys that
are always overridden by values assigned with `set`. Defaults are not written out
to the the `config.json` file to prevent it from becoming cluttered.
```coffeescript
config.setDefaults("editor", fontSize: 18, showInvisibles: true)
```
-69
Ver Arquivo
@@ -1,69 +0,0 @@
## Keymaps In-Depth
### Structure of a Keymap File
Keymap files are encoded as JSON or CSON files containing nested hashes. The
top-level keys of a keymap are **CSS 3 selectors**, which specify a particular
context in Atom's interface. Common selectors are `.editor`, which scopes
bindings to just work when an editor is focused, and `body`, which scopes
bindings globally.
Beneath the selectors are hashes mapping **keystroke patterns** to
**semantic events**. A keystroke pattern looks like the following examples.
Note that the last example describes multiple keystrokes in succession:
- `p`
- `2`
- `ctrl-p`
- `ctrl-alt-cmd-p`
- `tab`
- `escape`
- `enter`
- `ctrl-w w`
A semantic event is the name of the custom event that will be triggered on the
target of the keydown event when a key binding matches. You can use the command
palette (bound to `cmd-p`), to get a list of relevant events and their bindings
in any focused context in Atom.
### Rules for Mapping A Keydown Event to A Semantic Event
A keymap's job is to translate a physical keystroke event (like `cmd-D`) into a
semantic event (like `editor:duplicate-line`). Whenever a keydown event occurs
on a focused element, it bubbles up the DOM as usual. As soon as an element on
the bubble path matches a key binding for the keystroke, the binding's semantic
event is triggered on the original target of the keydown event. Just as with
CSS, if multiple selectors match an element, the most specific selector is
favored. If two selectors have the same specificity, the selector that occurs
latest in the cascade is favored.
Currently, there's no way to specify selector ordering within a single keymap,
because JSON hashes do not preserve order. Rather than making the format more
awkward in order to preserve order, we've opted to handle cases where order is
critical by breaking the keymap into two separate files, such as
`snippets-1.cson` and `snippets-2.cson`.
### Overloading Key Bindings
Occasionally, it makes sense to layer multiple actions on top of the same key
binding. An example of this is the snippets package. You expand a snippet by
pressing `tab` immediately following a snippet's prefix. But if the cursor is
not following a valid snippet prefix, then we want tab to perform its normal
action (probably inserting a tab character or the appropriate number of spaces).
To achieve this, the snippets package makes use of the `abortKeyBinding` method
on the event object that's triggered by the binding for `tab`.
```coffee-script
# pseudo-code
editor.command 'snippets:expand', (e) =>
if @cursorFollowsValidPrefix()
@expandSnippet()
else
e.abortKeyBinding()
```
When the event handler observes that the cursor does not follow a valid prefix,
it calls `e.abortKeyBinding()`, which tells the keymap system to continue
searching up the cascade for another matching binding. In this case, the default
implementation of `tab` ends up getting triggered.
-64
Ver Arquivo
@@ -1,64 +0,0 @@
## Atom's View System
### SpacePen Basics
Atom's view system is built around the [SpacePen](http://github.com/nathansobo/space-pen)
view framework. SpacePen view objects inherit from the jQuery prototype, and
wrap DOM nodes
View objects are actually jQuery wrappers around DOM fragments, supporting all
the typical jQuery traversal and manipulation methods. In addition, view objects
have methods that are view-specific. For example, you could call both general
and view-specific on the global `rootView` instance:
```coffeescript
rootView.find('.editor.active') # standard jQuery method
rootView.getActiveEditor() # view-specific method
```
If you retrieve a jQuery wrapper for an element associated with a view, use the
`.view()` method to retrieve the element's view object:
```coffeescript
# this is a plain jQuery object; you can't call view-specific methods
editorElement = rootView.find('.editor.active')
# get the view object by calling `.view()` to call view-specific methods
editorView = editorElement.view()
editorView.setCursorBufferPosition([1, 2])
```
Refer to the [SpacePen](http://github.com/nathansobo/space-pen) documentation
for more details.
### RootView
The root of Atom's view hierarchy is a global called `rootView`, which is a
singleton instance of the `RootView` view class. The root view fills the entire
window, and contains every other view. If you open Atom's inspector with
`alt-cmd-i`, you can see the internal structure of `RootView`:
![RootView in the inspector](https://f.cloud.github.com/assets/1424/1091631/1932c2d6-166b-11e3-8adf-9690fe82d3b8.png)
#### Panes
The `RootView` contains a `#horizontal` and a `#vertical` axis surrounding
`#panes`. Elements in the horizontal axis will tile across the window
horizontally, appearing to have a vertical orientation. Items in the vertical
axis will tile across the window vertically, appearing to have a horizontal
orientation. You would typically attach tool panels to the root view's primary
axes. Tool panels are elements which take up some screen real estate that isn't
devoted to direct editing. In the example above, the `TreeView` is present in
the `#horizontal` axis to the left of the `#panes`, and the `CommandPanel` is
present in the `#vertical` axis below the `#panes`.
You can attach a tool panel to an axis using the `horizontal` or `vertical`
outlets as follows:
```coffeescript
# place a view to the left of the panes (or use .append() to place it to the right)
rootView.horizontal.prepend(new MyView)
# place a view below the panes (or use .prepend() to place it above)
rootView.vertical.append(new MyOtherView)
```
-70
Ver Arquivo
@@ -1,70 +0,0 @@
**Polish the user experience**
First and foremost, Atom is a **product**. Atom needs to feel familiar and
inviting. This includes a solid introductory experience and parity with the most
important features of Sublime Text.
* First launch UI and flow (actions below should be easily discoverable)
* Create a new file
* Open a project and edit an existing file
* Install a package
* Change settings (adjust theme, change key bindings, set config options)
* How to use command P
* Use collaboration internally
* How and where to edit keyBinding should be obvious to new users
* Finish find and replace in buffer/project
* Atom should start < 300ms
* Match Sublime's multiple selection functionality (#523)
* Fix softwrap bugs
* Menus & Context menus
* Track usage/engagement of our users (make this opted in?)
* Windows support
* Reliably and securely auto-update and list what's new
* Secure access to the keychain (don't give every package access to the keychain)
* Secure access to GitHub (each package can ask to have it's own oauth token)
* Don't crash when opening/editing large (> 10Mb) files
* Send js and native crash reports to a remote server
**Lay solid groundwork for a package and theme ecosystem**
Extensibility is one of Atom's key value propositions, so a smooth experience
for creating and maintaining packages is just as important as the user
experience. The package development, dependency and publishing workflow needs to
be solid. We also want to have a mechanism for clearly communicating with
package authors about breaking API changes.
* Finish APM backend (integrate with GitHub Releases)
* Streamline Dev workflow
* `apm create` - create package scaffolding
* `apm test` - so users can run focused package tests
* `apm publish` - should integrate release best practices (ie npm version)
* Determine which classes and methods should be included in the public API
* Users can find/install/update/fork existing packages and themes
**Tighten up the view layer**
Our current approach to the view layer need some improvement. We want to
actively promote the use of the M-V-VM design pattern, provide some declarative
event binding mechanisms in the view layer, and improve the performance of the
typical package specs. We don't want the current approach to be used as an
example in a bunch of new packages, so it's important to improve it now.
* Add marker view API
**Get atom.io online with some exciting articles and documentation**
We'd love to send our private alpha candidates to a nice site with information
about what Atom is, the philosophies and technologies behind it, and guidance
for how to get started.
* Design and create www.atom.io
* Guides
* Theme & Package creation guide
* Full API per release tag
* Changelog per release
* Explanation of features
* Explain Semver and general plans for the future (reassure developers we care about them)
* General Values/Goals
* Make docs accessible from Atom
* Community/contribution guidelines
* Is all communication to be done through issues?
* When should you publish a plugin?
* Do we need to vet plugins from a security perspective?
-16
Ver Arquivo
@@ -1,16 +0,0 @@
## Proposed Timeline
1. **October 30st** - Internal launch - persuade as many githubbers to switch as
possible.
1. Triage bugs and identify what needs to be fixed before private alpha. Maybe
talk to @chrissiebrodigan about doing a UX study.
1. **November 22st** - Private alpha launch
1. Trickle out invites as people ask/we need more testers.
1. If our usage metrics/engagement metrics decrease, stop, identify the issue
and fix it before continuing.
1. Launch
+97
Ver Arquivo
@@ -0,0 +1,97 @@
## Publishing a Package
This guide will show you how to publish a package or theme to the
[atom.io][atomio] package registry.
Publishing a package allows other people to install it and use it in Atom. It
is a great way to share what you've made and get feedback and contributions from
others.
This guide assumes your package's name is `my-package` and but you should pick a
better name.
### Install apm
The `apm` command line utility that ships with Atom supports publishing packages
to the atom.io registry.
Check that you have `apm` installed by running the following command in your
terminal:
```sh
apm help publish
```
You should see a message print out with details about the `apm publish` command.
If you do not, launch Atom and run the _Atom > Install Shell Commmands_ menu
to install the `apm` and `atom` commands.
### Prepare Your Package
If you've followed the steps in the [your first package][your-first-package]
doc then you should be ready to publish and you can skip to the next step.
If not, there are a few things you should check before publishing:
* Your *package.json* file has `name`, `description`, and `repository` fields.
* Your *package.json* file has a `version` field with a value of `"0.0.0"`.
* Your *package.json* file has an `engines` field that contains an entry
for Atom such as: `"engines": {"atom": ">=0.50.0"}`.
* Your package has a `README.md` file at the root.
* Your package is in a Git repository that has been pushed to
[GitHub][github]. Follow [this guide][repo-guide] if your package isn't
already on GitHub.
### Publish Your Package
Before you publish a package it is a good idea to check ahead of time if
a package with the same name has already been published to atom.io. You can do
that by visiting `http://atom.io/packages/my-package` to see if the package
already exists. If it does, update your package's name to something that is
available before proceeding.
Now let's review what the `apm publish` command does:
1. Registers the package name on atom.io if it is being published for the
first time.
2. Updates the `version` field in the *package.json* file and commits it.
3. Creates a new [Git tag][git-tag] for the version being published.
4. Pushes the tag and current branch up to GitHub.
5. Updates atom.io with the new version being published.
Now run the following commands to publish your package:
```sh
cd ~/github/my-package
apm publish minor
```
If this is the first package you are publishing, the `apm publish` command may
prompt you for your GitHub username and password. This is required to publish
and you only need to enter this information the first time you publish. The
credentials are stored securely in your [keychain][keychain] once you login.
:tada: Your package is now published and available on atom.io. Head on over to
`http://atom.io/packages/my-package` to see your package's page.
The `minor` option to the publish command tells apm to increment the second
digit of the version before publishing so the published version will be `0.1.0`
and the Git tag created will be `v0.1.0`.
In the future you can run `apm publish major` to publish the `1.0.0` version but
since this was the first version being published it is a good idead to start
with a minor release.
### Further Reading
* Check out [semantic versioning][semver] to learn more about versioning your
package releases.
[atomio]: https://atom.io
[github]: https://github.com
[git-tag]: http://git-scm.com/book/en/Git-Basics-Tagging
[keychain]: http://en.wikipedia.org/wiki/Keychain_(Apple)
[repo-guide]: http://guides.github.com/overviews/desktop
[semver]: http://semver.org
[your-first-package]: your-first-package.html
+1 -2
Ver Arquivo
@@ -137,8 +137,7 @@
</div>
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="/<%= tag %>/index.html">Guides</a></li>
<li><a href="/<%= tag %>/api/index.html">API</a></li>
<li><a href="/docs/api/<%= tag %>/api/index.html">API</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
+116
Ver Arquivo
@@ -0,0 +1,116 @@
# Style variables
Atom's UI provides a set of variables you can use in your own themes and packages.
## Use in Themes
Each custom theme must specify a `ui-variables.less` file with all of the
following variables defined. The top-most theme specified in the theme settings
will be loaded and available for import.
## Use in Packages
In any of your package's `.less` files, you can access the theme variables
by importing the `ui-variables` file from Atom.
Your package should generally only specify structural styling, and these should
come from [the style guide][styleguide]. Your package shouldn't specify colors,
padding sizes, or anything in absolute pixels. You should instead use the theme
variables. If you follow this guideline, your package will look good out of the
box with any theme!
Here's an example `.less` file that a package can define using theme variables:
```css
@import "ui-variables";
.my-selector{
background-color: @base-background-color;
padding: @component-padding;
}
```
## Variables
### Text colors
* `@text-color`
* `@text-color-subtle`
* `@text-color-highlight`
* `@text-color-selected`
* `@text-color-info` - A blue
* `@text-color-success`- A green
* `@text-color-warning`- An orange or yellow
* `@text-color-error` - A red
### Background colors
* `@background-color-info` - A blue
* `@background-color-success` - A green
* `@background-color-warning` - An orange or yellow
* `@background-color-error` - A red
* `@background-color-highlight`
* `@background-color-selected`
* `@app-background-color` - The app's background under all the editor components
### Component colors
* `@base-background-color` -
* `@base-border-color` -
* `@pane-item-background-color` -
* `@pane-item-border-color` -
* `@input-background-color` -
* `@input-border-color` -
* `@tool-panel-background-color` -
* `@tool-panel-border-color` -
* `@inset-panel-background-color` -
* `@inset-panel-border-color` -
* `@panel-heading-background-color` -
* `@panel-heading-border-color` -
* `@overlay-background-color` -
* `@overlay-border-color` -
* `@button-background-color` -
* `@button-background-color-hover` -
* `@button-background-color-selected` -
* `@button-border-color` -
* `@tab-bar-background-color` -
* `@tab-bar-border-color` -
* `@tab-background-color` -
* `@tab-background-color-active` -
* `@tab-border-color` -
* `@tree-view-background-color` -
* `@tree-view-border-color` -
* `@ui-site-color-1` -
* `@ui-site-color-2` -
* `@ui-site-color-3` -
* `@ui-site-color-4` -
* `@ui-site-color-5` -
### Component sizes
* `@disclosure-arrow-size` -
* `@component-padding` -
* `@component-icon-padding` -
* `@component-icon-size` -
* `@component-line-height` -
* `@component-border-radius` -
* `@tab-height` -
### Fonts
* `@font-size` -
* `@font-family` -
[styleguide]: https://github.com/atom/styleguide
+155
Ver Arquivo
@@ -0,0 +1,155 @@
# Create Your First Package
This tutorial will guide you though creating a simple command that replaces the
selected text with [ascii art](http://en.wikipedia.org/wiki/ASCII_art). When you
run our new command with the word "cool" selected, it will be replaced with:
```
___
/\_ \
___ ___ ___\//\ \
/'___\ / __`\ / __`\\ \ \
/\ \__//\ \L\ \/\ \L\ \\_\ \_
\ \____\ \____/\ \____//\____\
\/____/\/___/ \/___/ \/____/
```
The final package can be viewed at
[https://github.com/atom/ascii-art](https://github.com/atom/ascii-art).
To begin, press `cmd-shift-P` to bring up the [Command
Palette](https://github.com/atom/command-palette). Type "generate package" and
select the "Package Generator: Generate Package" command. Now we need to name
the package. Let's call it _ascii-art_.
Atom will open a new window with the contents of our new _ascii-art_ package
displayed in the Tree View. Because this window is opened **after** the package
is created, the ASCII Art package will be loaded and available in our new
window. To verify this, toggle the Command Palette (`cmd-shift-P`) and type
"ASCII Art". You'll see a new `ASCII Art: Toggle` command. When triggered, this
command displays a default message.
Now let's edit the package files to make our ASCII Art package do something
interesting. Since this package doesn't need any UI, we can remove all
view-related code. Start by opening up _lib/ascii-art.coffee_. Remove all view
code, so the `module.exports` section looks like this:
```coffeescript
module.exports =
activate: ->
```
## Create a Command
Now let's add a command. We recommend that you namespace your commands with the
package name followed by a `:`, so we'll call our command `ascii-art:convert`.
Register the command in _lib/ascii-art.coffee_:
```coffeescript
module.exports =
activate: ->
atom.workspaceView.command "ascii-art:convert", => @convert()
convert: ->
# This assumes the active pane item is an editor
editor = atom.workspace.activePaneItem
editor.insertText('Hello, World!')
```
The `atom.workspaceView.command` method takes a command name and a callback. The
callback executes when the command is triggered. In this case, when the command
is triggered the callback will call the `convert` method and insert 'Hello,
World!'.
## Reload the Package
Before we can trigger `ascii-art:convert`, we need to load the latest code for
our package by reloading the window. Run the command `window:reload` from the
command palette or by pressing `ctrl-alt-cmd-l`.
## Trigger the Command
Now open the command panel and search for the `ascii-art:convert` command. But
it's not there! To fix this, open _package.json_ and find the property called
`activationEvents`. Activation Events speed up load time by allowing Atom to
delay a package's activation until it's needed. So remove the existing command
and add `ascii-art:convert` to the `activationEvents` array:
```json
"activationEvents": ["ascii-art:convert"],
```
First, reload the window by running the command `window:reload`. Now when you
run the `ascii-art:convert` command it will output 'Hello, World!'
## Add a Key Binding
Now let's add a key binding to trigger the `ascii-art:convert` command. Open
_keymaps/ascii-art.cson_ and add a key binding linking `ctrl-alt-a` to the
`ascii-art:convert` command. You can delete the pre-existing key binding since
you don't need it anymore. When finished, the file will look like this:
```coffeescript
'.editor':
'cmd-alt-a': 'ascii-art:convert'
```
Notice `.editor` on the first line. Just like CSS, keymap selectors *scope* key
bindings so they only apply to specific elements. In this case, our binding is
only active for elements matching the `.editor` selector. If the Tree View has
focus, pressing `cmd-alt-a` won't trigger the `ascii-art:convert` command. But
if the editor has focus, the `ascii-art:convert` method *will* be triggered.
More information on key bindings can be found in the
[keymaps](advanced/keymaps.html) documentation.
Now reload the window and verify that the key binding works! You can also verify
that it **doesn't** work when the Tree View is focused.
## Add the ASCII Art
Now we need to convert the selected text to ASCII art. To do this we will use
the [figlet](https://npmjs.org/package/figlet) [node](http://nodejs.org/) module
from [npm](https://npmjs.org/). Open _package.json_ and add the latest version of
figlet to the dependencies:
```json
"dependencies": {
"figlet": "1.0.8"
}
```
After saving the file, run the command 'update-package-dependencies:update' from
the Command Palette. This will install the package's node module dependencies,
only figlet in this case. You will need to run
'update-package-dependencies:update' whenever you update the dependencies field
in your _package.json_ file.
Now require the figlet node module in _lib/ascii-art.coffee_ and instead of
inserting 'Hello, World!' convert the selected text to ASCII art.
```coffeescript
convert: ->
# This assumes the active pane item is an editor
editor = atom.workspace.activePaneItem
selection = editor.getSelection()
figlet = require 'figlet'
figlet selection.getText(), {font: "Larry 3D 2"}, (error, asciiArt) ->
if error
console.error(error)
else
selection.insertText("\n#{asciiArt}\n")
```
Select some text in an editor window and hit `cmd-alt-a`. :tada: You're now an
ASCII art professional!
## Further reading
* [Getting your project on GitHub guide](http://guides.github.com/overviews/desktop)
* [Creating a package guide](creating-a-package.html) for more information
on the mechanics of packages
* [Publishing a package guide](publish-a-package.html) for more information
on publishing your package to [atom.io](https://atom.io)
+14
Ver Arquivo
@@ -0,0 +1,14 @@
# Your init script
#
# Atom 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.
#
# An example hack to make opened Markdown files always be soft wrapped:
#
# path = require 'path'
#
# atom.workspaceView.eachEditorView (editorView) ->
# editor = editorView.getEditor()
# if path.extname(editor.getPath()) is '.md'
# editor.setSoftWrap(true)
+18
Ver Arquivo
@@ -0,0 +1,18 @@
# Your keymap
#
# Atom keymaps work similarly to stylesheets. Just as stylesheets use selectors
# to apply styles to elements, Atom keymaps use selectors to associate
# keystrokes with events in specific contexts.
#
# 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:
#
# '.editor':
# 'enter': 'editor:newline'
#
# 'body':
# 'ctrl-P': 'core:move-up'
# 'ctrl-p': 'core:move-down'
#
+15
Ver Arquivo
@@ -0,0 +1,15 @@
# Your snippets
#
# Atom 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
# tab.
#
# An example CoffeeScript snippet to expand log to console.log:
#
# '.source.coffee':
# 'Console log':
# 'prefix': 'log'
# 'body': 'console.log $1'
#
-44
Ver Arquivo
@@ -1,44 +0,0 @@
".source.coffee":
"Describe block":
prefix: "de"
body: """
describe "${1:description}", ->
${2:body}
"""
"It block":
prefix: "i"
body: """
it "$1", ->
$2
"""
"Before each":
prefix: "be"
body: """
beforeEach ->
$1
"""
"After each":
prefix: "af"
body: """
afterEach ->
$1
"""
"Expectation":
prefix: "ex"
body: "expect($1).to$2"
"Console log":
prefix: "log"
body: "console.log $1"
"Range array":
prefix: "ra"
body: "[[$1, $2], [$3, $4]]"
"Point array":
prefix: "pt"
body: "[$1, $2]"
"Key-value pair":
prefix: ":"
body: '${1:"${2:key}"}: ${3:value}'
"Create Jasmine spy":
prefix: "spy"
body: 'jasmine.createSpy("${1:description}")$2'
+21
Ver Arquivo
@@ -0,0 +1,21 @@
/*
* Your Stylesheet
*
* This stylesheet is loaded when Atom starts up and is reloaded automatically
* when it is changed.
*
* If you are unfamiliar with LESS, you can read more about it here:
* http://www.lesscss.org
*/
.tree-view {
}
.editor {
}
.editor .cursor {
}
-1
Ver Arquivo
@@ -1 +0,0 @@
# For more on how to configure atom open `~/github/atom/docs/configuring-and-extending.md`
-8
Ver Arquivo
@@ -1,8 +0,0 @@
/* User styles */
.tree-view {
}
.editor {
}
+11 -20
Ver Arquivo
@@ -1,32 +1,23 @@
{View, $$, $$$} = require '../src/space-pen-extensions'
{Document, Point, Range, Site} = require 'telepath'
{Point, Range} = require 'text-buffer'
module.exports =
_: require '../src/underscore-extensions'
$: require '../src/jquery-extensions'
$$: $$
$$$: $$$
BufferedNodeProcess: require '../src/buffered-node-process'
BufferedProcess: require '../src/buffered-process'
Directory: require '../src/directory'
Document: Document
EventEmitter: require '../src/event-emitter'
File: require '../src/file'
fs: require '../src/fs-utils'
Git: require '../src/git'
Point: Point
Range: Range
ScrollView: require '../src/scroll-view'
Site: Site
stringscore: require '../vendor/stringscore'
Subscriber: require '../src/subscriber'
View: View
# The following classes can't be used from a Task handler and should therefore
# only be exported when not running as a child node process
unless process.env.ATOM_SHELL_INTERNAL_RUN_AS_NODE
module.exports.Editor = require '../src/editor'
module.exports.pathForRepositoryUrl = require('../src/project').pathForRepositoryUrl
module.exports.RootView = require '../src/root-view'
module.exports.SelectList = require '../src/select-list'
{$, $$, $$$, View} = require '../src/space-pen-extensions'
module.exports.$ = $
module.exports.$$ = $$
module.exports.$$$ = $$$
module.exports.EditorView = require '../src/editor-view'
module.exports.ScrollView = require '../src/scroll-view'
module.exports.SelectListView = require '../src/select-list-view'
module.exports.Task = require '../src/task'
module.exports.View = View
module.exports.WorkspaceView = require '../src/workspace-view'
-3
Ver Arquivo
@@ -1,3 +0,0 @@
# FIXME Make jquery a package.json dependency
# This is needed so that space-pen can be require it as 'jquery'
module.exports = require '../vendor/jquery'
-21
Ver Arquivo
@@ -1,21 +0,0 @@
'body':
'meta-up': 'core:move-to-top'
'meta-down': 'core:move-to-bottom'
'meta-shift-up': 'core:select-to-top'
'meta-shift-down': 'core:select-to-bottom'
'.editor':
'meta-right': 'editor:move-to-end-of-line'
'meta-left': 'editor:move-to-beginning-of-line'
'alt-left': 'editor:move-to-beginning-of-word'
'alt-right': 'editor:move-to-end-of-word'
'meta-shift-left': 'editor:select-to-beginning-of-line'
'meta-shift-right': 'editor:select-to-end-of-line'
'alt-shift-left': 'editor:select-to-beginning-of-word'
'alt-shift-right': 'editor:select-to-end-of-word'
'alt-backspace': 'editor:backspace-to-beginning-of-word'
'meta-backspace': 'editor:backspace-to-beginning-of-line'
'alt-delete': 'editor:delete-to-end-of-word'
'ctrl-t': 'editor:transpose'
'ctrl-A': 'editor:select-to-first-character-of-line'
'ctrl-E': 'editor:select-to-end-of-line'
-96
Ver Arquivo
@@ -1,96 +0,0 @@
'body':
'meta-q': 'application:quit'
'meta-h': 'application:hide'
'meta-H': 'application:hide-other-applications'
'meta-n': 'application:new-file'
'meta-N': 'application:new-window'
'meta-o': 'application:open'
'meta-O': 'application:open-dev'
'meta-m': 'application:minimize'
'meta-,': 'application:show-settings'
'alt-meta-ctrl-m': 'application:zoom'
'meta-alt-ctrl-s': 'application:run-all-specs'
'meta-s': 'core:save'
'meta-S': 'core:save-as'
'enter': 'core:confirm'
'escape': 'core:cancel'
'meta-w': 'core:close'
'up': 'core:move-up'
'down': 'core:move-down'
'left': 'core:move-left'
'right': 'core:move-right'
'shift-up': 'core:select-up'
'shift-down': 'core:select-down'
'shift-left': 'core:select-left'
'shift-right': 'core:select-right'
'meta-a': 'core:select-all'
'backspace': 'core:backspace'
'shift-backspace': 'core:backspace'
'delete': 'core:delete'
'meta-z': 'core:undo'
'meta-Z': 'core:redo'
'meta-x': 'core:cut'
'meta-c': 'core:copy'
'meta-v': 'core:paste'
'pageup': 'core:page-up'
'pagedown': 'core:page-down'
'meta-alt-s': 'window:save-all'
'meta-W': 'window:close'
'meta-+': 'window:increase-font-size'
'meta--': 'window:decrease-font-size'
'ctrl-w w': 'window:focus-next-pane'
'ctrl-tab': 'window:focus-next-pane'
'ctrl-meta-f': 'window:toggle-full-screen'
'meta-r': 'window:reload'
'alt-meta-i': 'window:toggle-dev-tools'
'meta-alt-ctrl-p': 'window:run-package-specs'
'ctrl-|': 'pane:split-right'
'ctrl-w v': 'pane:split-right'
'ctrl--': 'pane:split-down'
'ctrl-w s': 'pane:split-down'
'meta-{': 'pane:show-previous-item'
'meta-}': 'pane:show-next-item'
'alt-meta-left': 'pane:show-previous-item'
'alt-meta-right': 'pane:show-next-item'
'meta-1': 'pane:show-item-1'
'meta-2': 'pane:show-item-2'
'meta-3': 'pane:show-item-3'
'meta-4': 'pane:show-item-4'
'meta-5': 'pane:show-item-5'
'meta-6': 'pane:show-item-6'
'meta-7': 'pane:show-item-7'
'meta-8': 'pane:show-item-8'
'meta-9': 'pane:show-item-9'
'meta-T': 'pane:reopen-closed-item'
'alt-meta-w': 'pane:close-other-items'
'meta-P': 'pane:close'
'.tool-panel':
'meta-escape': 'tool-panel:unfocus'
'escape': 'core:close'
'meta-w': 'noop'
# allow standard input fields to work correctly
'input:not(.hidden-input)':
'tab': 'core:focus-next'
'shift-tab': 'core:focus-previous'
'left': 'native!'
'right': 'native!'
'shift-left': 'native!'
'shift-right': 'native!'
'backspace': 'native!'
'shift-backspace': 'native!'
'delete': 'native!'
'meta-z': 'native!'
'meta-Z': 'native!'
'meta-x': 'native!'
'meta-c': 'native!'
'meta-v': 'native!'
'button':
'tab': 'core:focus-next'
'shift-tab': 'core:focus-previous'
+78
Ver Arquivo
@@ -0,0 +1,78 @@
'.editor':
# Platform Bindings
'alt-left': 'editor:move-to-beginning-of-word'
'alt-right': 'editor:move-to-end-of-word'
'alt-shift-left': 'editor:select-to-beginning-of-word'
'alt-shift-right': 'editor:select-to-end-of-word'
'home': 'editor:move-to-first-character-of-line'
'end': 'editor:move-to-end-of-screen-line'
'shift-home': 'editor:select-to-first-character-of-line'
'shift-end': 'editor:select-to-end-of-line'
# Sublime Parity
'ctrl-t': 'editor:transpose'
'.editor:not(.mini)':
# Atom Specific
'ctrl-C': 'editor:copy-path'
# Sublime Parity
'tab': 'editor:indent'
'enter': 'editor:newline'
'shift-tab': 'editor:outdent-selected-rows'
'ctrl-K': 'editor:delete-line'
'ctrl-shift-up': 'editor:add-selection-above'
'ctrl-shift-down': 'editor:add-selection-below'
'.tool-panel.panel-left, .tool-panel.panel-right':
'escape': 'tool-panel:unfocus'
'.editor !important, .editor.mini !important':
'escape': 'editor:consolidate-selections'
# allow standard input fields to work correctly
'body .native-key-bindings':
'tab': 'core:focus-next'
'shift-tab': 'core:focus-previous'
'enter': 'native!'
'backspace': 'native!'
'shift-backspace': 'native!'
'delete': 'native!'
'up': 'native!'
'down': 'native!'
'shift-up': 'native!'
'shift-down': 'native!'
'alt-up': 'native!'
'alt-down': 'native!'
'alt-shift-up': 'native!'
'alt-shift-down': 'native!'
'cmd-up': 'native!'
'cmd-down': 'native!'
'cmd-shift-up': 'native!'
'cmd-shift-down': 'native!'
'ctrl-up': 'native!'
'ctrl-down': 'native!'
'ctrl-shift-up': 'native!'
'ctrl-shift-down': 'native!'
'left': 'native!'
'right': 'native!'
'shift-left': 'native!'
'shift-right': 'native!'
'alt-left': 'native!'
'alt-right': 'native!'
'alt-shift-left': 'native!'
'alt-shift-right': 'native!'
'cmd-left': 'native!'
'cmd-right': 'native!'
'cmd-shift-left': 'native!'
'cmd-shift-right': 'native!'
'ctrl-left': 'native!'
'ctrl-right': 'native!'
'ctrl-shift-left': 'native!'
'ctrl-shift-right': 'native!'
'ctrl-b': 'native!'
'ctrl-f': 'native!'
'ctrl-F': 'native!'
'ctrl-B': 'native!'
'ctrl-h': 'native!'
'ctrl-d': 'native!'
+161
Ver Arquivo
@@ -0,0 +1,161 @@
'body':
# Apple specific
'cmd-q': 'application:quit'
'cmd-h': 'application:hide'
'cmd-alt-h': 'application:hide-other-applications'
'cmd-m': 'application:minimize'
'alt-cmd-ctrl-m': 'application:zoom'
'ctrl-p': 'core:move-up'
'ctrl-n': 'core:move-down'
'ctrl-b': 'core:move-left'
'ctrl-f': 'core:move-right'
'ctrl-P': 'core:select-up'
'ctrl-N': 'core:select-down'
'ctrl-F': 'core:select-right'
'ctrl-B': 'core:select-left'
'ctrl-h': 'core:backspace'
'ctrl-d': 'core:delete'
# Atom Specific
'cmd-O': 'application:open-dev'
'cmd-alt-ctrl-s': 'application:run-all-specs'
'enter': 'core:confirm'
'escape': 'core:cancel'
'up': 'core:move-up'
'down': 'core:move-down'
'left': 'core:move-left'
'right': 'core:move-right'
'ctrl-alt-cmd-l': 'window:reload'
'alt-cmd-i': 'window:toggle-dev-tools'
'cmd-alt-ctrl-p': 'window:run-package-specs'
# Sublime Parity
'cmd-,': 'application:show-settings'
'cmd-N': 'application:new-window'
'cmd-W': 'window:close'
'cmd-o': 'application:open'
'cmd-T': 'pane:reopen-closed-item'
'cmd-n': 'application:new-file'
'cmd-s': 'core:save'
'cmd-S': 'core:save-as'
'cmd-alt-s': 'window:save-all'
'cmd-w': 'core:close'
'cmd-ctrl-f': 'window:toggle-full-screen'
'cmd-z': 'core:undo'
'cmd-Z': 'core:redo'
'cmd-y': 'core:redo'
'cmd-x': 'core:cut'
'cmd-c': 'core:copy'
'cmd-v': 'core:paste'
'shift-up': 'core:select-up'
'shift-down': 'core:select-down'
'shift-left': 'core:select-left'
'shift-right': 'core:select-right'
'delete': 'core:delete'
'pageup': 'core:page-up'
'pagedown': 'core:page-down'
'backspace': 'core:backspace'
'shift-backspace': 'core:backspace'
'cmd-up': 'core:move-to-top'
'cmd-down': 'core:move-to-bottom'
'cmd-shift-up': 'core:select-to-top'
'cmd-shift-down': 'core:select-to-bottom'
'cmd-{': 'pane:show-previous-item'
'cmd-}': 'pane:show-next-item'
'cmd-alt-left': 'pane:show-previous-item'
'cmd-alt-right': 'pane:show-next-item'
'cmd-=': 'window:increase-font-size'
'cmd-+': 'window:increase-font-size'
'cmd--': 'window:decrease-font-size'
'cmd-_': 'window:decrease-font-size'
'cmd-0': 'window:reset-font-size'
'cmd-k up': 'pane:split-up' # Atom Specific
'cmd-k down': 'pane:split-down' # Atom Specific
'cmd-k left': 'pane:split-left' # Atom Specific
'cmd-k right': 'pane:split-right' # Atom Specific
'cmd-k cmd-w': 'pane:close' # Atom Specific
'cmd-k alt-cmd-w': 'pane:close-other-items' # Atom 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'
'cmd-k cmd-down': 'window:focus-pane-below'
'cmd-k cmd-left': 'window:focus-pane-on-left'
'cmd-k cmd-right': 'window:focus-pane-on-right'
'cmd-1': 'pane:show-item-1'
'cmd-2': 'pane:show-item-2'
'cmd-3': 'pane:show-item-3'
'cmd-4': 'pane:show-item-4'
'cmd-5': 'pane:show-item-5'
'cmd-6': 'pane:show-item-6'
'cmd-7': 'pane:show-item-7'
'cmd-8': 'pane:show-item-8'
'cmd-9': 'pane:show-item-9'
'.editor':
# Apple Specific
'cmd-backspace': 'editor:backspace-to-beginning-of-line'
'cmd-delete': 'editor:backspace-to-beginning-of-line'
'ctrl-A': 'editor:select-to-first-character-of-line'
'ctrl-E': 'editor:select-to-end-of-line'
'cmd-left': 'editor:move-to-first-character-of-line'
'cmd-right': 'editor:move-to-end-of-screen-line'
'cmd-shift-left': 'editor:select-to-first-character-of-line'
'cmd-shift-right': 'editor:select-to-end-of-line'
'alt-backspace': 'editor:backspace-to-beginning-of-word'
'alt-delete': 'editor:delete-to-end-of-word'
'ctrl-a': 'editor:move-to-beginning-of-line'
'ctrl-e': 'editor:move-to-end-of-line'
'ctrl-k': 'editor:cut-to-end-of-line'
# Atom Specific
'ctrl-W': 'editor:select-word'
# Sublime Parity
'cmd-a': 'core:select-all'
'cmd-alt-p': 'editor:log-cursor-scope'
'cmd-k cmd-u': 'editor:upper-case'
'cmd-k cmd-l': 'editor:lower-case'
'cmd-l': 'editor:select-line'
'.workspace .editor:not(.mini)':
# Atom specific
'alt-cmd-z': 'editor:checkout-head-revision'
'cmd-<': 'editor:scroll-to-cursor'
'alt-cmd-ctrl-f': 'editor:fold-selection'
# Sublime Parity
'cmd-enter': 'editor:newline-below'
'cmd-shift-enter': 'editor:newline-above'
'cmd-]': 'editor:indent-selected-rows'
'cmd-[': 'editor:outdent-selected-rows'
'ctrl-cmd-up': 'editor:move-line-up'
'ctrl-cmd-down': 'editor:move-line-down'
'cmd-/': 'editor:toggle-line-comments'
'cmd-j': 'editor:join-line'
'cmd-D': 'editor:duplicate-line'
'cmd-L': 'editor:split-selections-into-lines'
'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-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'
'cmd-k cmd-3': 'editor:fold-at-indent-level-3'
'cmd-k cmd-4': 'editor:fold-at-indent-level-4'
'cmd-k cmd-5': 'editor:fold-at-indent-level-5'
'cmd-k cmd-6': 'editor:fold-at-indent-level-6'
'cmd-k cmd-7': 'editor:fold-at-indent-level-7'
'cmd-k cmd-8': 'editor:fold-at-indent-level-8'
'cmd-k cmd-9': 'editor:fold-at-indent-level-9'
# allow standard input fields to work correctly
'body .native-key-bindings':
'cmd-z': 'native!'
'cmd-Z': 'native!'
'cmd-x': 'native!'
'cmd-c': 'native!'
'cmd-v': 'native!'
-50
Ver Arquivo
@@ -1,50 +0,0 @@
'.editor':
'meta-d': 'editor:delete-line'
'ctrl-W': 'editor:select-word'
'meta-alt-p': 'editor:log-cursor-scope'
'meta-u': 'editor:upper-case'
'meta-U': 'editor:lower-case'
'.editor:not(.mini)':
'enter': 'editor:newline'
'meta-enter': 'editor:newline-below'
'meta-shift-enter': 'editor:newline-above'
'tab': 'editor:indent'
'meta-=': 'editor:auto-indent'
'ctrl-[': 'editor:fold-current-row'
'ctrl-]': 'editor:unfold-current-row'
'ctrl-{': 'editor:fold-all'
'ctrl-}': 'editor:unfold-all'
'ctrl-meta-1': 'editor:fold-at-indent-level-1'
'ctrl-meta-2': 'editor:fold-at-indent-level-2'
'ctrl-meta-3': 'editor:fold-at-indent-level-3'
'ctrl-meta-4': 'editor:fold-at-indent-level-4'
'ctrl-meta-5': 'editor:fold-at-indent-level-5'
'ctrl-meta-6': 'editor:fold-at-indent-level-6'
'ctrl-meta-7': 'editor:fold-at-indent-level-7'
'ctrl-meta-8': 'editor:fold-at-indent-level-8'
'ctrl-meta-9': 'editor:fold-at-indent-level-9'
'alt-shift-down': 'editor:add-selection-below'
'alt-shift-up': 'editor:add-selection-above'
'alt-meta-ctrl-f': 'editor:fold-selection'
'shift-tab': 'editor:outdent-selected-rows'
'meta-[': 'editor:outdent-selected-rows'
'meta-]': 'editor:indent-selected-rows'
'meta-/': 'editor:toggle-line-comments'
'ctrl-C': 'editor:copy-path'
'ctrl-meta-up': 'editor:move-line-up'
'ctrl-meta-down': 'editor:move-line-down'
'meta-D': 'editor:duplicate-line'
'ctrl-J': 'editor:join-line'
'meta-<': 'editor:scroll-to-cursor'
'.editor.mini':
'enter': 'core:confirm',
'escape': 'core:cancel'
'meta-w': 'core:cancel'
'.editor !important, .editor.mini !important':
'escape': 'editor:consolidate-selections'
-26
Ver Arquivo
@@ -1,33 +1,7 @@
'body':
'ctrl-p': 'core:move-up'
'ctrl-n': 'core:move-down'
'ctrl-b': 'core:move-left'
'ctrl-f': 'core:move-right'
'ctrl-P': 'core:select-up'
'ctrl-N': 'core:select-down'
'ctrl-F': 'core:select-right'
'ctrl-B': 'core:select-left'
'alt-ctrl-n': 'editor:add-selection-below'
'alt-ctrl-p': 'editor:add-selection-above'
'ctrl-h': 'core:backspace'
'ctrl-d': 'core:delete'
'.editor':
'alt-f': 'editor:move-to-end-of-word'
'alt-F': 'editor:select-to-end-of-word'
'alt-b': 'editor:move-to-beginning-of-word'
'alt-B': 'editor:select-to-beginning-of-word'
'ctrl-a': 'editor:move-to-first-character-of-line'
'ctrl-e': 'editor:move-to-end-of-line'
'alt-h': 'editor:backspace-to-beginning-of-word'
'alt-d': 'editor:delete-to-end-of-word'
'ctrl-k': 'editor:cut-to-end-of-line'
# allow standard input fields to work correctly
'input:not(.hidden-input)':
'ctrl-b': 'native!'
'ctrl-f': 'native!'
'ctrl-F': 'native!'
'ctrl-B': 'native!'
'ctrl-h': 'native!'
'ctrl-d': 'native!'
-2
Ver Arquivo
@@ -1,2 +0,0 @@
'.editor':
'alt-meta-z': 'editor:checkout-head-revision'
-4
Ver Arquivo
@@ -1,4 +0,0 @@
'.select-list .mini.editor':
'enter': 'core:confirm'
'escape': 'core:cancel'
'meta-w': 'core:cancel'
+107
Ver Arquivo
@@ -0,0 +1,107 @@
'body':
# Atom Specific
'enter': 'core:confirm'
'escape': 'core:cancel'
'up': 'core:move-up'
'down': 'core:move-down'
'left': 'core:move-left'
'right': 'core:move-right'
'ctrl-alt-r': 'window:reload'
'ctrl-alt-i': 'window:toggle-dev-tools'
'ctrl-alt-p': 'window:run-package-specs'
'ctrl-alt-s': 'application:run-all-specs'
# Sublime Parity
'ctrl-N': 'application:new-window'
'ctrl-W': 'window:close'
'ctrl-o': 'application:open'
'ctrl-T': 'pane:reopen-closed-item'
'ctrl-n': 'application:new-file'
'ctrl-s': 'core:save'
'ctrl-S': 'core:save-as'
'ctrl-w': 'core:close'
'ctrl-z': 'core:undo'
'ctrl-y': 'core:redo'
'ctrl-x': 'core:cut'
'ctrl-c': 'core:copy'
'ctrl-v': 'core:paste'
'shift-up': 'core:select-up'
'shift-down': 'core:select-down'
'shift-left': 'core:select-left'
'shift-right': 'core:select-right'
'delete': 'core:delete'
'pageup': 'core:page-up'
'pagedown': 'core:page-down'
'backspace': 'core:backspace'
'ctrl-tab': 'pane:show-next-item'
'ctrl-shift-tab': 'pane:show-previous-item'
'ctrl-shift-up': 'core:move-up'
'ctrl-shift-down': 'core:move-down'
'ctrl-=': 'window:increase-font-size'
'ctrl-+': 'window:increase-font-size'
'ctrl--': 'window:decrease-font-size'
'ctrl-_': 'window:decrease-font-size'
'ctrl-0': 'window:reset-font-size'
'ctrl-k up': 'pane:split-up' # Atom Specific
'ctrl-k down': 'pane:split-down' # Atom Specific
'ctrl-k left': 'pane:split-left' # Atom Specific
'ctrl-k right': 'pane:split-right' # Atom Specific
'ctrl-k ctrl-w': 'pane:close' # Atom Specific
'ctrl-k alt-ctrl-w': 'pane:close-other-items' # Atom 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'
'ctrl-k ctrl-down': 'window:focus-pane-below'
'ctrl-k ctrl-left': 'window:focus-pane-on-left'
'ctrl-k ctrl-right': 'window:focus-pane-on-right'
'.workspace .editor':
# Windows specific
'ctrl-delete': 'editor:backspace-to-beginning-of-word'
# Sublime Parity
'ctrl-a': 'core:select-all'
'ctrl-alt-p': 'editor:log-cursor-scope'
'ctrl-k ctrl-u': 'editor:upper-case'
'ctrl-k ctrl-l': 'editor:lower-case'
'.workspace .editor:not(.mini)':
# Atom specific
'alt-ctrl-z': 'editor:checkout-head-revision'
'ctrl-<': 'editor:scroll-to-cursor'
'alt-ctrl-f': 'editor:fold-selection'
# Sublime Parity
'ctrl-enter': 'editor:newline-below'
'ctrl-shift-enter': 'editor:newline-above'
'ctrl-]': 'editor:indent-selected-rows'
'ctrl-[': 'editor:outdent-selected-rows'
'ctrl-up': 'editor:move-line-up'
'ctrl-down': 'editor:move-line-down'
'ctrl-/': 'editor:toggle-line-comments'
'ctrl-j': 'editor:join-line'
'ctrl-D': 'editor:duplicate-line'
'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-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'
'ctrl-k ctrl-3': 'editor:fold-at-indent-level-3'
'ctrl-k ctrl-4': 'editor:fold-at-indent-level-4'
'ctrl-k ctrl-5': 'editor:fold-at-indent-level-5'
'ctrl-k ctrl-6': 'editor:fold-at-indent-level-6'
'ctrl-k ctrl-7': 'editor:fold-at-indent-level-7'
'ctrl-k ctrl-8': 'editor:fold-at-indent-level-8'
'ctrl-k ctrl-9': 'editor:fold-at-indent-level-9'
# allow standard input fields to work correctly
'body .native-key-bindings':
'ctrl-z': 'native!'
'ctrl-Z': 'native!'
'ctrl-x': 'native!'
'ctrl-c': 'native!'
'ctrl-v': 'native!'
+172
Ver Arquivo
@@ -0,0 +1,172 @@
'menu': [
{
label: 'Atom'
submenu: [
{ label: 'About Atom', 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}
{ label: "Check for Update", command: 'application:check-for-update', visible: false}
{ type: 'separator' }
{ label: 'Preferences...', command: 'application:show-settings' }
{ label: 'Open Your Config', command: 'application:open-your-config' }
{ label: 'Open Your Init Script', command: 'application:open-your-init-script' }
{ label: 'Open Your Keymap', command: 'application:open-your-keymap' }
{ label: 'Open Your Snippets', command: 'application:open-your-snippets' }
{ label: 'Open Your Stylesheet', command: 'application:open-your-stylesheet' }
{ type: 'separator' }
{ label: 'Install Shell Commands', command: 'window:install-shell-commands' }
{ type: 'separator' }
{ label: 'Hide Atom', command: 'application:hide' }
{ label: 'Hide Others', command: 'application:hide-other-applications' }
{ label: 'Show All', command: 'application:unhide-all-applications' }
{ type: 'separator' }
{ label: 'Quit', command: 'application:quit' }
]
}
{
label: 'File'
submenu: [
{ label: 'New Window', command: 'application:new-window' }
{ label: 'New File', command: 'application:new-file' }
{ label: 'Open...', command: 'application:open' }
{ label: 'Reopen Last Item', command: 'pane:reopen-closed-item' }
{ type: 'separator' }
{ label: 'Save', command: 'core:save' }
{ label: 'Save As...', command: 'core:save-as' }
{ label: 'Save All', command: 'window:save-all' }
{ type: 'separator' }
{ label: 'Close Buffer', command: 'core:close' }
{ label: 'Close All Buffers', command: 'pane:close' }
{ label: 'Close Window', command: 'window:close' }
]
}
{
label: 'Edit'
submenu: [
{ label: 'Undo', command: 'core:undo' }
{ label: 'Redo', command: 'core:redo' }
{ type: 'separator' }
{ label: 'Cut', command: 'core:cut' }
{ label: 'Copy', command: 'core:copy' }
{ label: 'Copy Path', command: 'editor:copy-path' }
{ label: 'Paste', command: 'core:paste' }
{ label: 'Select All', command: 'core:select-all' }
{ type: 'separator' }
{ label: 'Toggle Comments', command: 'editor:toggle-line-comments' }
{
label: 'Lines',
submenu: [
{ label: 'Indent', command: 'editor:indent-selected-rows' }
{ label: 'Outdent', command: 'editor:outdent-selected-rows' }
{ label: 'Auto Indent', command: 'editor:auto-indent' }
{ type: 'separator' }
{ label: 'Move Line Up', command: 'editor:move-line-up' }
{ label: 'Move Line Down', command: 'editor:move-line-down' }
{ label: 'Duplicate Line', command: 'editor:duplicate-line' }
{ label: 'Delete Line', command: 'editor:delete-line' }
{ label: 'Join Lines', command: 'editor:join-line' }
]
}
{
label: 'Text',
submenu: [
{ label: 'Upper Case', command: 'editor:upper-case' }
{ label: 'Lower Case', command: 'editor:lower-case' }
{ type: 'separator' }
{ label: 'Delete to End of Word', command: 'editor:delete-to-end-of-word' }
{ label: 'Delete Line', command: 'editor:delete-line' }
{ type: 'separator' }
{ label: 'Transpose', command: 'editor:transpose' }
]
}
{
label: 'Folding',
submenu: [
{ label: 'Fold', command: 'editor:fold-current-row' }
{ label: 'Unfold', command: 'editor:unfold-current-row' }
{ label: 'Unfold All', command: 'editor:unfold-all' }
{ type: 'separator' }
{ label: 'Fold All', command: 'editor:fold-all' }
{ label: 'Fold Level 1', command: 'editor:fold-at-indent-level-1' }
{ label: 'Fold Level 2', command: 'editor:fold-at-indent-level-2' }
{ label: 'Fold Level 3', command: 'editor:fold-at-indent-level-3' }
{ label: 'Fold Level 4', command: 'editor:fold-at-indent-level-4' }
{ label: 'Fold Level 5', command: 'editor:fold-at-indent-level-5' }
{ label: 'Fold Level 6', command: 'editor:fold-at-indent-level-6' }
{ label: 'Fold Level 7', command: 'editor:fold-at-indent-level-7' }
{ label: 'Fold Level 8', command: 'editor:fold-at-indent-level-8' }
{ label: 'Fold Level 9', command: 'editor:fold-at-indent-level-9' }
]
}
]
}
{
label: 'Selection'
submenu: [
{ label: 'Add Selection Above', command: 'editor:add-selection-above' }
{ label: 'Add Selection Below', command: 'editor:add-selection-below' }
{ label: 'Split into Lines', command: 'editor:split-selections-into-lines'}
{ type: 'separator' }
{ label: 'Select to Top', command: 'core:select-to-top' }
{ label: 'Select to Bottom', command: 'core:select-to-bottom' }
{ type: 'separator' }
{ label: 'Select Line', command: 'editor:select-line' }
{ label: 'Select Word', command: 'editor:select-word' }
{ label: 'Select to Beginning of Word', command: 'editor:select-to-beginning-of-word' }
{ label: 'Select to Beginning of Line', command: 'editor:select-to-beginning-of-line' }
{ label: 'Select to First Character of Line', command: 'editor:select-to-first-character-of-line' }
{ label: 'Select to End of Word', command: 'editor:select-to-end-of-word' }
{ label: 'Select to End of Line', command: 'editor:select-to-end-of-line' }
]
}
{
label: 'Find'
submenu: []
}
{
label: 'View'
submenu: [
{ label: 'Reload', command: 'window:reload' }
{ label: 'Toggle Full Screen', command: 'window:toggle-full-screen' }
{
label: 'Developer'
submenu: [
{ label: 'Open In Dev Mode...', command: 'application:open-dev' }
{ label: 'Run Atom Specs', command: 'application:run-all-specs' }
{ label: 'Run Package Specs', command: 'window:run-package-specs' }
{ label: 'Toggle Developer Tools', command: 'window:toggle-dev-tools' }
]
}
{ type: 'separator' }
{ label: 'Toggle Soft Wrap', command: 'editor:toggle-soft-wrap' }
]
}
{
label: 'Packages'
submenu: []
}
{
label: 'Window'
submenu: [
{ label: 'Minimize', command: 'application:minimize' }
{ label: 'Zoom', command: 'application:zoom' }
{ type: 'separator' }
{ label: 'Bring All to Front', command: 'application:bring-all-windows-to-front' }
]
}
{
label: 'Help'
submenu: [
{ label: 'Documentation', command: 'application:open-documentation' }
{ type: 'separator' }
]
}
]
+156
Ver Arquivo
@@ -0,0 +1,156 @@
'menu': [
{
label: '&File'
submenu: [
{ label: 'New &Window', command: 'application:new-window' }
{ label: '&New File', command: 'application:new-file' }
{ label: '&Open...', command: 'application:open' }
{ label: 'Reopen Last &Item', command: 'pane:reopen-closed-item' }
{ type: 'separator' }
{ label: '&Preferences...', command: 'application:show-settings' }
{ type: 'separator' }
{ label: '&Save', command: 'core:save' }
{ label: 'Save &As...', command: 'core:save-as' }
{ label: 'Save A&ll', command: 'window:save-all' }
{ type: 'separator' }
{ label: '&Close Buffer', command: 'core:close' }
{ label: 'Close All &Buffers', command: 'pane:close' }
{ label: 'Clos&e Window', command: 'window:close' }
{ type: 'separator' }
{ label: 'E&xit', command: 'application:quit' }
]
}
{
label: '&Edit'
submenu: [
{ label: '&Undo', command: 'core:undo' }
{ label: '&Redo', command: 'core:redo' }
{ type: 'separator' }
{ label: '&Cut', command: 'core:cut' }
{ label: 'C&opy', command: 'core:copy' }
{ label: 'Copy Pat&h', command: 'editor:copy-path' }
{ label: '&Paste', command: 'core:paste' }
{ label: 'Select &All', command: 'core:select-all' }
{ type: 'separator' }
{ label: '&Toggle Comments', command: 'editor:toggle-line-comments' }
{
label: 'Lines',
submenu: [
{ label: '&Indent', command: 'editor:indent-selected-rows' }
{ label: '&Outdent', command: 'editor:outdent-selected-rows' }
{ label: '&Auto Indent', command: 'editor:auto-indent' }
{ type: 'separator' }
{ label: 'Move Line &Up', command: 'editor:move-line-up' }
{ label: 'Move Line &Down', command: 'editor:move-line-down' }
{ label: 'Du&plicate Line', command: 'editor:duplicate-line' }
{ label: 'D&elete Line', command: 'editor:delete-line' }
{ label: '&Join Lines', command: 'editor:join-line' }
]
}
{
label: 'Text',
submenu: [
{ label: '&Upper Case', command: 'editor:upper-case' }
{ label: '&Lower Case', command: 'editor:lower-case' }
{ type: 'separator' }
{ label: 'Delete to End of &Word', command: 'editor:delete-to-end-of-word' }
{ label: '&Delete Line', command: 'editor:delete-line' }
{ type: 'separator' }
{ label: '&Transpose', command: 'editor:transpose' }
]
}
{
label: 'Folding',
submenu: [
{ label: '&Fold', command: 'editor:fold-current-row' }
{ label: '&Unfold', command: 'editor:unfold-current-row' }
{ label: 'Unfold &All', command: 'editor:unfold-all' }
{ type: 'separator' }
{ label: 'Fol&d All', command: 'editor:fold-all' }
{ label: 'Fold Level 1', command: 'editor:fold-at-indent-level-1' }
{ label: 'Fold Level 2', command: 'editor:fold-at-indent-level-2' }
{ label: 'Fold Level 3', command: 'editor:fold-at-indent-level-3' }
{ label: 'Fold Level 4', command: 'editor:fold-at-indent-level-4' }
{ label: 'Fold Level 5', command: 'editor:fold-at-indent-level-5' }
{ label: 'Fold Level 6', command: 'editor:fold-at-indent-level-6' }
{ label: 'Fold Level 7', command: 'editor:fold-at-indent-level-7' }
{ label: 'Fold Level 8', command: 'editor:fold-at-indent-level-8' }
{ label: 'Fold Level 9', command: 'editor:fold-at-indent-level-9' }
]
}
]
}
{
label: '&View'
submenu: [
{ label: '&Reload', command: 'window:reload' }
{ label: 'Toggle &Full Screen', command: 'window:toggle-full-screen' }
{
label: 'Developer'
submenu: [
{ label: 'Open In &Dev Mode...', command: 'application:open-dev' }
{ label: 'Run &Atom Specs', command: 'application:run-all-specs' }
{ label: 'Run Package &Specs', command: 'window:run-package-specs' }
{ label: 'Toggle Developer &Tools', command: 'window:toggle-dev-tools' }
]
}
{ type: 'separator' }
{ label: 'Toggle Soft &Wrap', command: 'editor:toggle-soft-wrap' }
]
}
{
label: '&Selection'
submenu: [
{ label: 'Add Selection &Above', command: 'editor:add-selection-above' }
{ label: 'Add Selection &Below', command: 'editor:add-selection-below' }
{ label: 'S&plit into Lines', command: 'editor:split-selections-into-lines'}
{ type: 'separator' }
{ label: 'Select to &Top', command: 'core:select-to-top' }
{ label: 'Select to Botto&m', command: 'core:select-to-bottom' }
{ type: 'separator' }
{ label: 'Select &Line', command: 'editor:select-line' }
{ label: 'Select &Word', command: 'editor:select-word' }
{ label: 'Select to Beginning of W&ord', command: 'editor:select-to-beginning-of-word' }
{ label: 'Select to Beginning of L&ine', command: 'editor:select-to-beginning-of-line' }
{ label: 'Select to First &Character of Line', command: 'editor:select-to-first-character-of-line' }
{ label: 'Select to End of Wor&d', command: 'editor:select-to-end-of-word' }
{ label: 'Select to End of Lin&e', command: 'editor:select-to-end-of-line' }
]
}
{
label: 'F&ind'
submenu: []
}
{
label: '&Packages'
submenu: []
}
{
label: '&Window'
submenu: [
{ label: 'Mi&nimize', command: 'application:minimize' }
{ label: 'Ma&ximize', command: 'application:zoom' }
{ type: 'separator' }
{ label: 'Bring &All to Front', command: 'application:bring-all-windows-to-front' }
]
}
{
label: '&Help'
submenu: [
{ label: '&About Atom...', command: 'application:about' }
{ label: 'View &License', command: 'application:open-license' }
{ label: "VERSION", enabled: false }
{ label: "Install &update", command: 'application:install-update', visible: false }
{ type: 'separator' }
{ label: '&Documentation', command: 'application:open-documentation' }
{ type: 'separator' }
]
}
]
+122 -125
Ver Arquivo
@@ -1,7 +1,8 @@
{
"name": "atom",
"version": "30.0.0",
"main": "./src/main.js",
"productName": "Atom",
"version": "0.58.0",
"main": "./src/browser/main.js",
"repository": {
"type": "git",
"url": "https://github.com/atom/atom.git"
@@ -9,134 +10,130 @@
"bugs": {
"url": "https://github.com/atom/atom/issues"
},
"atomShellVersion": "0.5.4",
"licenses": [
{
"type": "Apache",
"url": "http://github.com/atom/atom/raw/master/LICENSE.md"
}
],
"atomShellVersion": "0.10.1",
"dependencies": {
"async": "0.2.6",
"bootstrap": "git://github.com/twbs/bootstrap.git#v3.0.0",
"coffee-script": "1.6.2",
"coffeestack": "0.6.0",
"first-mate": "0.2.0",
"git-utils": "0.25.0",
"guid": "0.0.10",
"jasmine-focused": "~0.14.0",
"mkdirp": "0.3.5",
"less": "git://github.com/nathansobo/less.js.git",
"less-cache": "0.8.0",
"nslog": "0.1.0",
"oniguruma": "0.20.0",
"optimist": "0.4.0",
"pathwatcher": "0.5.0",
"pegjs": "0.7.0",
"plist": "git://github.com/nathansobo/node-plist.git",
"rimraf": "2.1.4",
"scandal": "0.5.0",
"season": "0.13.0",
"semver": "1.1.4",
"space-pen": "1.3.0",
"tantamount": "0.5.0",
"telepath": "0.8.1",
"temp": "0.5.0",
"underscore": "1.4.4",
"atom-light-ui": "0.4.0",
"atom-light-syntax": "0.4.0",
"atom-dark-ui": "0.4.0",
"atom-dark-syntax": "0.4.0",
"base16-tomorrow-dark-theme": "0.2.0",
"solarized-dark-syntax": "0.3.0",
"archive-view": "0.8.0",
"autocomplete": "0.6.0",
"autoflow": "0.3.0",
"bookmarks": "0.4.0",
"bracket-matcher": "0.5.0",
"collaboration": "0.20.0",
"command-logger": "0.4.0",
"command-palette": "0.4.0",
"editor-stats": "0.3.0",
"exception-reporting": "0.3.0",
"find-and-replace": "0.24.0",
"fuzzy-finder": "0.7.0",
"gfm": "0.5.0",
"git-diff": "0.4.0",
"gists": "0.3.0",
"github-sign-in": "0.7.0",
"go-to-line": "0.4.0",
"grammar-selector": "0.5.0",
"image-view": "0.6.0",
"link": "0.4.0",
"markdown-preview": "0.6.0",
"metrics": "0.8.0",
"package-generator": "0.10.0",
"release-notes": "0.2.0",
"settings-view": "0.27.0",
"snippets": "0.6.0",
"spell-check": "0.6.0",
"status-bar": "0.8.0",
"symbols-view": "0.8.0",
"tabs": "0.5.0",
"terminal": "0.10.0",
"timecop": "0.5.0",
"to-the-hubs": "0.5.0",
"toml": "0.3.0",
"tree-view": "0.8.0",
"ui-demo": "0.8.0",
"whitespace": "0.5.0",
"wrap-guide": "0.3.0",
"c-tmbundle": "1.0.0",
"coffee-script-tmbundle": "1.0.0",
"css-tmbundle": "1.0.0",
"git-tmbundle": "1.0.0",
"go-tmbundle": "1.0.0",
"html-tmbundle": "1.0.0",
"hyperlink-helper-tmbundle": "1.0.0",
"java-tmbundle": "1.0.0",
"javascript-tmbundle": "2.0.0",
"json-tmbundle": "1.0.0",
"less-tmbundle": "1.0.0",
"make-tmbundle": "1.0.0",
"mustache-tmbundle": "1.0.0",
"objective-c-tmbundle": "1.0.0",
"pegjs-tmbundle": "1.0.0",
"perl-tmbundle": "1.0.0",
"php-tmbundle": "1.0.0",
"property-list-tmbundle": "1.0.0",
"puppet-textmate-tmbundle": "1.0.0",
"python-tmbundle": "1.0.0",
"ruby-on-rails-tmbundle": "1.0.0",
"ruby-tmbundle": "1.0.0",
"sass-tmbundle": "1.0.0",
"shellscript-tmbundle": "1.0.0",
"source-tmbundle": "1.0.0",
"sql-tmbundle": "1.0.0",
"text-tmbundle": "1.0.0",
"textmate-clojure": "1.0.0",
"todo-tmbundle": "1.0.0",
"xml-tmbundle": "1.0.0",
"yaml-tmbundle": "1.0.0"
},
"devDependencies": {
"biscotto": "0.0.17",
"formidable": "~1.0.14",
"bootstrap": "git://github.com/atom/bootstrap.git#6af81906189f1747fd6c93479e3d998ebe041372",
"clear-cut": "0.4.0",
"coffee-script": "1.7.0",
"coffeestack": "0.7.0",
"delegato": "1.x",
"emissary": "1.x",
"first-mate": ">=1.1.5 <2.0",
"fs-plus": "2.x",
"fstream": "0.1.24",
"grunt": "~0.4.1",
"grunt-cli": "~0.1.9",
"grunt-coffeelint": "0.0.6",
"grunt-lesslint": "0.13.0",
"grunt-cson": "0.5.0",
"grunt-contrib-csslint": "~0.1.2",
"grunt-contrib-coffee": "~0.7.0",
"grunt-contrib-less": "~0.6.4",
"walkdir": "0.0.7",
"ws": "0.4.27",
"js-yaml": "~2.1.0",
"grunt-markdown": "~0.4.0",
"json-front-matter": "~0.1.3",
"grunt-shell": "~0.3.1",
"jasmine-node": "git://github.com/kevinsawicki/jasmine-node.git#short-stacks",
"request": "~2.27.0"
"fuzzaldrin": "1.x",
"git-utils": "1.x",
"guid": "0.0.10",
"jasmine-tagged": ">=1.1.1 <2.0",
"mkdirp": "0.3.5",
"keytar": "0.15.1",
"less-cache": "0.12.0",
"mixto": "1.x",
"nslog": "0.5.0",
"oniguruma": "1.x",
"optimist": "0.4.0",
"pathwatcher": "0.16.0",
"pegjs": "0.8.0",
"property-accessors": "1.x",
"q": "1.0.x",
"random-words": "0.0.1",
"runas": "0.5.x",
"scandal": "0.15.0",
"season": ">=1.0.2 <2.0",
"semver": "1.1.4",
"serializable": "1.x",
"space-pen": "3.1.1",
"temp": "0.5.0",
"text-buffer": ">=1.1.2 <2.0",
"theorist": "1.x",
"underscore-plus": "1.x",
"vm-compatibility-layer": "0.1.0"
},
"packageDependencies": {
"atom-dark-syntax": "0.14.0",
"atom-dark-ui": "0.23.0",
"atom-light-syntax": "0.14.0",
"atom-light-ui": "0.22.0",
"base16-tomorrow-dark-theme": "0.12.0",
"solarized-dark-syntax": "0.10.0",
"solarized-light-syntax": "0.6.0",
"archive-view": "0.24.0",
"autocomplete": "0.24.0",
"autoflow": "0.15.0",
"autosave": "0.12.0",
"background-tips": "0.8.0",
"bookmarks": "0.21.0",
"bracket-matcher": "0.22.0",
"command-palette": "0.18.0",
"dev-live-reload": "0.28.0",
"exception-reporting": "0.15.0",
"feedback": "0.27.0",
"find-and-replace": "0.85.0",
"fuzzy-finder": "0.37.0",
"git-diff": "0.25.0",
"go-to-line": "0.17.0",
"grammar-selector": "0.21.0",
"image-view": "0.25.0",
"keybinding-resolver": "0.11.0",
"link": "0.18.0",
"markdown-preview": "0.37.0",
"metrics": "0.30.0",
"open-on-github": "0.21.0",
"package-generator": "0.28.0",
"release-notes": "0.24.0",
"settings-view": "0.82.0",
"snippets": "0.32.0",
"spell-check": "0.26.0",
"status-bar": "0.33.0",
"styleguide": "0.25.0",
"symbols-view": "0.38.0",
"tabs": "0.24.0",
"timecop": "0.15.0",
"tree-view": "0.71.0",
"update-package-dependencies": "0.4.0",
"welcome": "0.9.0",
"whitespace": "0.15.0",
"wrap-guide": "0.15.0",
"language-c": "0.12.0",
"language-coffee-script": "0.13.0",
"language-css": "0.10.0",
"language-gfm": "0.18.0",
"language-git": "0.9.0",
"language-go": "0.6.0",
"language-html": "0.8.0",
"language-hyperlink": "0.8.0",
"language-java": "0.8.0",
"language-javascript": "0.11.0",
"language-json": "0.8.0",
"language-less": "0.5.0",
"language-make": "0.8.0",
"language-objective-c": "0.9.0",
"language-perl": "0.8.0",
"language-php": "0.8.0",
"language-property-list": "0.7.0",
"language-python": "0.8.0",
"language-ruby": "0.13.0",
"language-ruby-on-rails": "0.7.0",
"language-sass": "0.8.0",
"language-shellscript": "0.7.0",
"language-source": "0.7.0",
"language-sql": "0.7.0",
"language-text": "0.6.0",
"language-todo": "0.6.0",
"language-toml": "0.11.0",
"language-xml": "0.7.0",
"language-yaml": "0.6.0"
},
"private": true,
"scripts": {
"preinstall": "true",
"test": "script/test"
"preinstall": "node -e 'process.exit(0)'",
"test": "node script/test"
}
}
Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 48 KiB

Arquivo binário não exibido.
Arquivo binário não exibido.
Arquivo binário não exibido.

Depois

Largura:  |  Altura:  |  Tamanho: 361 KiB

+41 -17
Ver Arquivo
@@ -1,22 +1,46 @@
#!/bin/sh
#!/usr/bin/env node --harmony_collections
var safeExec = require('./utils/child-process-wrapper.js').safeExec;
var fs = require('fs');
var path = require('path');
# exit on subprocess errors
set -o errexit
exit_unless_npm_exists() {
if ! hash npm 2> /dev/null; then
echo "ERROR: Atom requires npm"
exit 1
fi
// Executes an array of commands one by one.
function executeCommands(commands, done, index) {
index = (index == undefined ? 0 : index);
if (index < commands.length) {
var command = commands[index];
var options = null;
if (typeof command !== 'string') {
options = command.options;
command = command.command;
}
safeExec(command, options, executeCommands.bind(this, commands, done, index + 1));
} else
done(null);
}
exit_unless_npm_exists
var apmVendorPath = path.resolve(__dirname, '..', 'vendor', 'apm');
var apmInstallPath = path.resolve(__dirname, '..', 'apm');
if (!fs.existsSync(apmInstallPath))
fs.mkdirSync(apmInstallPath);
if (!fs.existsSync(path.join(apmInstallPath, 'node_modules')))
fs.mkdirSync(path.join(apmInstallPath, 'node_modules'));
git submodule --quiet sync
git submodule --quiet update --recursive --init
var apmFlags = process.env.JANKY_SHA1 || process.argv.indexOf('--no-color') !== -1 ? '--no-color' : '';
var packagesToDedupe = ['fs-plus', 'humanize-plus', 'oniguruma', 'roaster', 'season'];
var echoNewLine = process.platform == 'win32' ? 'echo.' : 'echo';
var commands = [
'git submodule --quiet sync',
'git submodule --quiet update --recursive --init',
{command: 'npm install --quiet', options: {cwd: path.resolve(__dirname, '..', 'build'), ignoreStdout: true}},
{command: 'npm install --quiet', options: {cwd: apmVendorPath, ignoreStdout: true}},
{command: 'npm install --quiet ' + apmVendorPath, options: {cwd: apmInstallPath, ignoreStdout: true}},
{command: 'npm install --quiet ' + apmVendorPath, options: {ignoreStdout: true}},
{command: 'node ../../apm/node_modules/atom-package-manager/bin/apm rebuild', options: {cwd: path.resolve('node_modules', 'atom-package-manager'), ignoreStdout: true}},
echoNewLine,
'node apm/node_modules/atom-package-manager/bin/apm clean ' + apmFlags,
'node apm/node_modules/atom-package-manager/bin/apm install --quiet ' + apmFlags,
'node apm/node_modules/atom-package-manager/bin/apm dedupe --quiet ' + apmFlags + ' ' + packagesToDedupe.join(' '),
];
(cd vendor/apm && npm install --silent .)
npm install --silent vendor/apm
echo ""
./node_modules/.bin/apm install --silent
process.chdir(path.dirname(__dirname));
executeCommands(commands, process.exit);
+6
Ver Arquivo
@@ -0,0 +1,6 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\bootstrap" %*
) ELSE (
node "%~dp0\bootstrap" %*
)
+11 -6
Ver Arquivo
@@ -1,8 +1,13 @@
#!/bin/sh
#!/usr/bin/env node --harmony_collections
var cp = require('./utils/child-process-wrapper.js');
var path = require('path');
set -e
process.chdir(path.dirname(__dirname));
cd "$(dirname "$0")/.."
./script/bootstrap
./node_modules/.bin/grunt "$@"
cp.safeExec('node script/bootstrap', function() {
// build/node_modules/.bin/grunt "$@"
var gruntPath = path.join('build', 'node_modules', '.bin', 'grunt') + (process.platform === 'win32' ? '.cmd' : '');
var args = ['--gruntfile', path.resolve('build', 'Gruntfile.coffee')];
args = args.concat(process.argv.slice(2));
cp.safeSpawn(gruntPath, args, process.exit);
});
+5
Ver Arquivo
@@ -0,0 +1,5 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\build" %*
) ELSE (
node "%~dp0\build" %*
)
+39 -13
Ver Arquivo
@@ -1,18 +1,44 @@
#!/bin/sh
#!/usr/bin/env node --harmony_collections
var cp = require('./utils/child-process-wrapper.js');
var fs = require('fs');
var path = require('path');
set -e
process.chdir(path.dirname(__dirname));
cd "$(dirname "$0")/.."
if (process.platform == 'linux')
throw new Error('cibuild can not run on linux yet!');
rm -rf ~/.atom
git clean -dff
var homeDir = process.platform == 'win32' ? process.env.USERPROFILE : process.env.HOME;
ATOM_CREDENTIALS_FILE=/var/lib/jenkins/config/atomcredentials
if [ -f $ATOM_CREDENTIALS_FILE ]; then
. $ATOM_CREDENTIALS_FILE
export ATOM_ACCESS_TOKEN=$ATOM_ACCESS_TOKEN # make it visibile to grunt.
fi
function loadEnvironmentVariables(filePath) {
try {
var lines = fs.readFileSync(filePath, 'utf8').trim().split('\n');
for (i in lines) {
var parts = lines[i].split('=');
var key = parts[0].trim();
var value = parts[1].trim().substr(1, parts[1].length - 2);
process.env[key] = value;
}
} catch(error) { }
}
./script/bootstrap
./node_modules/.bin/apm clean
./node_modules/.bin/grunt ci --stack --no-color
function readEnvironmentVariables() {
loadEnvironmentVariables('/var/lib/jenkins/config/atomcredentials')
loadEnvironmentVariables('/var/lib/jenkins/config/xcodekeychain')
}
readEnvironmentVariables();
cp.safeExec.bind(global, 'node script/bootstrap', function(error) {
if (error)
process.exit(1);
require('fs-plus').removeSync.bind(global, path.join(homeDir, '.atom'))
var async = require('async');
var gruntPath = path.join('build', 'node_modules', '.bin', 'grunt') + (process.platform === 'win32' ? '.cmd' : '');
var tasks = [
cp.safeExec.bind(global, 'git clean -dff'),
cp.safeExec.bind(global, gruntPath + ' ci --gruntfile build/Gruntfile.coffee --stack --no-color'),
]
async.series(tasks, function(error) {
process.exit(error ? 1 : 0);
});
})();
Arquivo executável
+37
Ver Arquivo
@@ -0,0 +1,37 @@
#!/usr/bin/env node --harmony_collections
var cp = require('./utils/child-process-wrapper.js');
var path = require('path');
var os = require('os');
var removeCommand = process.platform === 'win32' ? 'del /F /Q /S ' : 'rm -rf ';
var productName = require('../package.json').productName;
process.chdir(path.dirname(__dirname));
var home = process.env[(process.platform === 'win32') ? 'USERPROFILE' : 'HOME'];
var tmpdir = process.platform === 'win32' ? os.tmpdir() : '/tmp';
// Windows: Use START as a way to ignore error if Atom.exe isnt running
var killatom = process.platform === 'win32' ? 'START taskkill /F /IM ' + productName + '.exe' : 'pkill -9 ' + productName + ' || true';
var commands = [
killatom,
[__dirname, '..', 'node_modules'],
[__dirname, '..', 'build', 'node_modules'],
[__dirname, '..', 'apm', 'node_modules'],
[__dirname, '..', 'vendor', 'apm', 'node_modules'],
[__dirname, '..', 'atom-shell'],
[home, '.atom', '.node-gyp'],
[home, '.atom', 'storage'],
[tmpdir, 'atom-build'],
[tmpdir, 'atom-cached-atom-shells'],
[tmpdir, 'atom-compile-cache'],
];
var run = function() {
var next = commands.shift();
if (!next)
process.exit(0);
if (Array.isArray(next))
next = removeCommand + path.resolve.apply(path.resolve, next);
cp.safeExec(next, run);
};
run();
+5
Ver Arquivo
@@ -0,0 +1,5 @@
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\clean" %*
) ELSE (
node "%~dp0\clean" %*
)
-15
Ver Arquivo
@@ -1,15 +0,0 @@
#!/bin/sh
set -ex
# This entire file is a hack so that constructicon can build Atom via
# xcode
cd "$(dirname "$0")/../.."
rm -fr node_modules
./script/bootstrap
./node_modules/.bin/grunt --build-dir="$BUILT_PRODUCTS_DIR" deploy
echo "TARGET_BUILD_DIR=$BUILT_PRODUCTS_DIR"
echo "FULL_PRODUCT_NAME=Atom.app"
echo "PRODUCT_NAME=Atom"
-8
Ver Arquivo
@@ -1,8 +0,0 @@
#!/bin/sh
set -ex
cd "$(dirname "$0")/../.."
export PATH="atom-shell/Atom.app/Contents/Resources/:${PATH}"
rm -rf atom.xcodeproj
gyp --depth=. atom.gyp
+18
Ver Arquivo
@@ -0,0 +1,18 @@
@echo off
set USAGE=Usage: %0 source destination
if [%1] == [] (
echo %USAGE%
exit 1
)
if [%2] == [] (
echo %USAGE%
exit 2
)
:: rm -rf %2
if exist %2 rmdir %2 /s /q
:: cp -rf %1 %2
xcopy %1 %2 /e /h /c /i /y /r
+23
Ver Arquivo
@@ -0,0 +1,23 @@
@echo off
set USAGE=Usage: %0 source name-on-desktop
if [%1] == [] (
echo %USAGE%
exit 1
)
if [%2] == [] (
echo %USAGE%
exit 2
)
set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs"
echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT%
echo sLinkFile = "%USERPROFILE%\Desktop\%2.lnk" >> %SCRIPT%
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT%
echo oLink.TargetPath = %1 >> %SCRIPT%
echo oLink.Save >> %SCRIPT%
cscript /nologo %SCRIPT%
del %SCRIPT%
Arquivo executável
+9
Ver Arquivo
@@ -0,0 +1,9 @@
#!/usr/bin/env node --harmony_collections
var cp = require('./utils/child-process-wrapper.js');
var path = require('path');
// node build/node_modules/.bin/grunt "$@"
var gruntPath = path.resolve(__dirname, '..', 'build', 'node_modules', '.bin', 'grunt') + (process.platform === 'win32' ? '.cmd' : '');
var args = ['--gruntfile', path.resolve('build', 'Gruntfile.coffee')];
args = args.concat(process.argv.slice(2));
cp.safeSpawn(gruntPath, args, process.exit);
Arquivo executável
+10
Ver Arquivo
@@ -0,0 +1,10 @@
#!/usr/bin/env coffee
path = require 'path'
CommandInstaller = require '../src/command-installer'
callback = (error) ->
console.warn error.message if error?
CommandInstaller.installAtomCommand(path.resolve(__dirname, '..'), callback)
CommandInstaller.installApmCommand(path.resolve(__dirname, '..'), callback)
+1 -1
Ver Arquivo
@@ -3,11 +3,11 @@
set -e
BUILT_PRODUCTS_DIR=$1
VERSION=$2
PLIST_PATH="$BUILT_PRODUCTS_DIR/Atom.app/Contents/Info.plist"
HELPER_PLIST_PATH="$BUILT_PRODUCTS_DIR/Atom.app/Contents/Frameworks/Atom Helper.app/Contents/Info.plist"
# Update version
VERSION=$(git rev-parse --short HEAD | tr -d "\n")
/usr/libexec/PlistBuddy -c "Set CFBundleShortVersionString $VERSION" "$PLIST_PATH"
/usr/libexec/PlistBuddy -c "Set CFBundleVersion $VERSION" "$PLIST_PATH"
/usr/libexec/PlistBuddy -c "Set CFBundleShortVersionString $VERSION" "$HELPER_PLIST_PATH"
+8 -6
Ver Arquivo
@@ -1,8 +1,10 @@
#!/bin/sh
#!/usr/bin/env node --harmony_collections
var safeExec = require('./utils/child-process-wrapper.js').safeExec;
var path = require('path');
set -e
process.chdir(path.dirname(__dirname));
cd "$(dirname "$0")/.."
./script/bootstrap
./node_modules/.bin/grunt ci --stack --no-color
safeExec('node script/bootstrap', function() {
var gruntPath = path.join('node_modules', '.bin', 'grunt') + (process.platform === 'win32' ? '.cmd' : '');
safeExec(gruntPath + ' ci --stack --no-color', process.exit);
});
+43
Ver Arquivo
@@ -0,0 +1,43 @@
var childProcess = require('child_process');
// Exit the process if the command failed and only call the callback if the
// command succeed, output of the command would also be piped.
exports.safeExec = function(command, options, callback) {
if (!callback) {
callback = options;
options = {};
}
if (!options)
options = {};
// This needed to be increased for `apm test` runs that generate many failures
// The default is 200KB.
options.maxBuffer = 1024 * 1024;
var child = childProcess.exec(command, options, function(error, stdout, stderr) {
if (error)
process.exit(error.code || 1);
else
callback(null);
});
child.stderr.pipe(process.stderr);
if (!options.ignoreStdout)
child.stdout.pipe(process.stdout);
}
// Same with safeExec but call child_process.spawn instead.
exports.safeSpawn = function(command, args, options, callback) {
if (!callback) {
callback = options;
options = {};
}
var child = childProcess.spawn(command, args, options);
child.stderr.pipe(process.stderr);
child.stdout.pipe(process.stdout);
child.on('exit', function(code) {
if (code != 0)
process.exit(code);
else
callback(null);
});
}
-32
Ver Arquivo
@@ -1,32 +0,0 @@
#!/usr/bin/env coffee
usage = """
Usage:
update-octicons PATH-TO-OCTICONS
"""
path = require 'path'
fs = require 'fs'
YAML = require 'js-yaml'
scriptPath = process.argv[1]
pathToOcticons = process.argv[2] ? path.join(process.env.HOME, 'github', 'octicons')
atomDir = path.resolve(scriptPath, "../../..")
unless fs.existsSync(pathToOcticons)
console.error(usage)
process.exit(1)
# Copy font-file
fontSrc = path.join(pathToOcticons, 'octicons', 'octicons.woff')
fontDest = path.join(atomDir, 'static', 'octicons.woff')
fs.createReadStream(fontSrc).pipe(fs.createWriteStream(fontDest))
# Update Octicon UTF codes
glyphsSrc = path.join(pathToOcticons, 'data', 'glyphs.yml')
octiconUtfDest = path.join atomDir, 'static', 'octicon-utf-codes.less'
output = []
for {css, code} in YAML.load(fs.readFileSync(glyphsSrc).toString())
output.push "@#{css}: \"\\#{code}\";"
fs.writeFileSync octiconUtfDest, "#{output.join('\n')}\n"
+64 -69
Ver Arquivo
@@ -1,36 +1,52 @@
$ = require 'jquery'
{View, $$} = require 'space-pen'
_ = require 'underscore'
path = require 'path'
_ = require 'underscore-plus'
{convertStackTrace} = require 'coffeestack'
{View, $, $$} = require '../src/space-pen-extensions'
sourceMaps = {}
formatStackTrace = (stackTrace) ->
formatStackTrace = (spec, message='', stackTrace) ->
return stackTrace unless stackTrace
jasminePath = require.resolve('../vendor/jasmine')
jasminePattern = new RegExp("\\(#{_.escapeRegExp(jasminePath)}:\\d+:\\d+\\)\\s*$")
jasminePattern = /^\s*at\s+.*\(?.*\/jasmine(-[^\/]*)?\.js:\d+:\d+\)?\s*$/
firstJasmineLinePattern = /^\s*at \/.*\/jasmine(-[^\/]*)?\.js:\d+:\d+\)?\s*$/
convertedLines = []
for line in stackTrace.split('\n')
convertedLines.push(line) unless jasminePattern.test(line)
break if firstJasmineLinePattern.test(line)
convertStackTrace(convertedLines.join('\n'), sourceMaps)
stackTrace = convertStackTrace(convertedLines.join('\n'), sourceMaps)
lines = stackTrace.split('\n')
# Remove first line of stack when it is the same as the error message
errorMatch = lines[0]?.match(/^Error: (.*)/)
lines.shift() if message.trim() is errorMatch?[1]?.trim()
for line, index in lines
# Remove prefix of lines matching: at [object Object].<anonymous> (path:1:2)
prefixMatch = line.match(/at \[object Object\]\.<anonymous> \(([^\)]+)\)/)
line = "at #{prefixMatch[1]}" if prefixMatch
# Relativize locations to spec directory
lines[index] = line.replace("at #{spec.specDirectory}#{path.sep}", 'at ')
lines = lines.map (line) -> line.trim()
lines.join('\n').trim()
module.exports =
class AtomReporter extends View
@content: ->
@div id: 'HTMLReporter', class: 'jasmine_reporter', =>
@div outlet: 'specPopup', class: "spec-popup"
@div class: 'spec-reporter', =>
@div outlet: "suites"
@div outlet: 'coreArea', =>
@div outlet: 'coreHeader', class: 'symbolHeader'
@ul outlet: 'coreSummary', class: 'symbolSummary list-unstyled'
@div outlet: 'bundledArea', =>
@div outlet: 'bundledHeader', class: 'symbolHeader'
@ul outlet: 'bundledSummary', class: 'symbolSummary list-unstyled'
@div outlet: 'userArea', =>
@div outlet: 'userHeader', class: 'symbolHeader'
@ul outlet: 'userSummary', class: 'symbolSummary list-unstyled'
@div outlet: "status", class: 'status', =>
@div outlet: 'coreArea', class: 'symbol-area', =>
@div outlet: 'coreHeader', class: 'symbol-header'
@ul outlet: 'coreSummary', class: 'symbol-summary list-unstyled'
@div outlet: 'bundledArea', class: 'symbol-area', =>
@div outlet: 'bundledHeader', class: 'symbol-header'
@ul outlet: 'bundledSummary', class: 'symbol-summary list-unstyled'
@div outlet: 'userArea', class: 'symbol-area', =>
@div outlet: 'userHeader', class: 'symbol-header'
@ul outlet: 'userSummary', class: 'symbol-summary list-unstyled'
@div outlet: "status", class: 'status alert alert-info', =>
@div outlet: "time", class: 'time'
@div outlet: "specCount", class: 'spec-count'
@div outlet: "message", class: 'message'
@@ -47,7 +63,7 @@ class AtomReporter extends View
reportRunnerStarting: (runner) ->
@handleEvents()
@startedAt = new Date()
@startedAt = Date.now()
specs = runner.specs()
@totalSpecCount = specs.length
@addSpecs(specs)
@@ -55,57 +71,29 @@ class AtomReporter extends View
reportRunnerResults: (runner) ->
@updateSpecCounts()
if @failedCount == 0
@message.text "Success!"
@status.addClass('alert-success').removeClass('alert-info') if @failedCount is 0
if @failedCount is 1
@message.text "#{@failedCount} failure"
else
@message.text "Game Over"
@message.text "#{@failedCount} failures"
reportSuiteResults: (suite) ->
reportSpecResults: (spec) ->
@completeSpecCount++
spec.endedAt = new Date().getTime()
spec.endedAt = Date.now()
@specComplete(spec)
@updateStatusView(spec)
reportSpecStarting: (spec) ->
@specStarted(spec)
specFilter: (spec) ->
globalFocusPriority = jasmine.getEnv().focusPriority
parent = spec.parentSuite ? spec.suite
if !globalFocusPriority
true
else if spec.focusPriority >= globalFocusPriority
true
else if not parent
false
else
@specFilter(parent)
handleEvents: ->
$(document).on "mouseover", ".spec-summary", ({currentTarget}) =>
element = $(currentTarget)
description = element.data("description")
return unless description
clearTimeout @timeoutId if @timeoutId?
@specPopup.show()
spec = _.find(window.timedSpecs, ({fullName}) -> description is fullName)
description = "#{description} #{spec.time}ms" if spec
@specPopup.text description
{left, top} = element.offset()
left += 20
top += 20
@specPopup.offset({left, top})
@timeoutId = setTimeout((=> @specPopup.hide()), 3000)
$(document).on "click", ".spec-toggle", ({currentTarget}) =>
element = $(currentTarget)
specFailures = element.parent().find('.spec-failures')
specFailures.toggle()
if specFailures.is(":visible") then element.text "\uf03d" else element.html "\uf03f"
element.toggleClass('folded')
false
updateSpecCounts: ->
@@ -117,7 +105,7 @@ class AtomReporter extends View
updateStatusView: (spec) ->
if @failedCount > 0
@status.addClass('failed') unless @status.hasClass('failed')
@status.addClass('alert-danger').removeClass('alert-info')
@updateSpecCounts()
@@ -125,7 +113,7 @@ class AtomReporter extends View
rootSuite = rootSuite.parentSuite while rootSuite.parentSuite
@message.text rootSuite.description
time = "#{Math.round((spec.endedAt - @startedAt.getTime()) / 10)}"
time = "#{Math.round((spec.endedAt - @startedAt) / 10)}"
time = "0#{time}" if time.length < 3
@time[0].textContent = "#{time[0...-2]}.#{time[-2..]}s"
@@ -147,15 +135,22 @@ class AtomReporter extends View
@userSummary.append symbol
if coreSpecs > 0
@coreHeader.text("Core Specs (#{coreSpecs}):")
@coreHeader.text("Core Specs (#{coreSpecs})")
else
@coreArea.hide()
if bundledPackageSpecs > 0
@bundledHeader.text("Bundled Package Specs (#{bundledPackageSpecs}):")
@bundledHeader.text("Bundled Package Specs (#{bundledPackageSpecs})")
else
@bundledArea.hide()
if userPackageSpecs > 0
@userHeader.text("User Package Specs (#{userPackageSpecs}):")
if coreSpecs is 0 and bundledPackageSpecs is 0
# Package specs being run, show a more descriptive label
{specDirectory} = specs[0]
packageFolderName = path.basename(path.dirname(specDirectory))
packageName = _.undasherize(_.uncamelcase(packageFolderName))
@userHeader.text("#{packageName} Specs")
else
@userHeader.text("User Package Specs (#{userPackageSpecs})")
else
@userArea.hide()
@@ -165,7 +160,7 @@ class AtomReporter extends View
specComplete: (spec) ->
specSummaryElement = $("#spec-summary-#{spec.id}")
specSummaryElement.removeClass('pending')
specSummaryElement.data("description", spec.getFullName())
specSummaryElement.setTooltip(title: spec.getFullName(), container: '.spec-reporter')
results = spec.results()
if results.skipped
@@ -186,11 +181,9 @@ class SuiteResultView extends View
@div class: 'suite', =>
@div outlet: 'description', class: 'description'
suite: null
initialize: (@suite) ->
@attr('id', "suite-view-#{@suite.id}")
@description.html @suite.description
@description.text(@suite.description)
attach: ->
(@parentSuiteView() or $('.results')).append this
@@ -207,20 +200,22 @@ class SuiteResultView extends View
class SpecResultView extends View
@content: ->
@div class: 'spec', =>
@div "\uf03d", class: 'spec-toggle'
@div class: 'spec-toggle'
@div outlet: 'description', class: 'description'
@div outlet: 'specFailures', class: 'spec-failures'
spec: null
initialize: (@spec) ->
@addClass("spec-view-#{@spec.id}")
@description.html @spec.description
description = @spec.description
description = "it #{description}" if description.indexOf('it ') isnt 0
@description.text(description)
for result in @spec.results().getItems() when not result.passed()
stackTrace = formatStackTrace(result.trace.stack)
stackTrace = formatStackTrace(@spec, result.message, result.trace.stack)
@specFailures.append $$ ->
@div result.message, class: 'resultMessage fail'
@div stackTrace, class: 'stackTrace' if stackTrace
@div result.message, class: 'result-message fail'
@pre stackTrace, class: 'stack-trace padded' if stackTrace
attach: ->
@parentSuiteView().append this
+354 -153
Ver Arquivo
@@ -1,98 +1,127 @@
{$, $$, fs, RootView} = require 'atom'
{$, $$, WorkspaceView} = require 'atom'
Exec = require('child_process').exec
path = require 'path'
Package = require '../src/package'
ThemeManager = require '../src/theme-manager'
describe "the `atom` global", ->
beforeEach ->
window.rootView = new RootView
atom.workspaceView = new WorkspaceView
describe "package lifecycle methods", ->
describe ".loadPackage(name)", ->
describe "when the package has deferred deserializers", ->
it "requires the package's main module if one of its deferred deserializers is referenced", ->
pack = atom.loadPackage('package-with-activation-events')
spyOn(pack, 'activateStylesheets').andCallThrough()
expect(pack.mainModule).toBeNull()
object = deserialize({deserializer: 'Foo', data: 5})
expect(pack.mainModule).toBeDefined()
expect(object.constructor.name).toBe 'Foo'
expect(object.data).toBe 5
expect(pack.activateStylesheets).toHaveBeenCalled()
it "continues if the package has an invalid package.json", ->
spyOn(console, 'warn')
atom.config.set("core.disabledPackages", [])
expect(-> atom.packages.loadPackage("package-with-broken-package-json")).not.toThrow()
it "continues if the package has an invalid keymap", ->
atom.config.set("core.disabledPackages", [])
expect(-> atom.packages.loadPackage("package-with-broken-keymap")).not.toThrow()
describe ".unloadPackage(name)", ->
describe "when the package is active", ->
it "throws an error", ->
pack = atom.activatePackage('package-with-main')
expect(atom.isPackageLoaded(pack.name)).toBeTruthy()
expect(atom.isPackageActive(pack.name)).toBeTruthy()
expect( -> atom.unloadPackage(pack.name)).toThrow()
expect(atom.isPackageLoaded(pack.name)).toBeTruthy()
expect(atom.isPackageActive(pack.name)).toBeTruthy()
pack = null
waitsForPromise ->
atom.packages.activatePackage('package-with-main').then (p) -> pack = p
runs ->
expect(atom.packages.isPackageLoaded(pack.name)).toBeTruthy()
expect(atom.packages.isPackageActive(pack.name)).toBeTruthy()
expect( -> atom.packages.unloadPackage(pack.name)).toThrow()
expect(atom.packages.isPackageLoaded(pack.name)).toBeTruthy()
expect(atom.packages.isPackageActive(pack.name)).toBeTruthy()
describe "when the package is not loaded", ->
it "throws an error", ->
expect(atom.isPackageLoaded('unloaded')).toBeFalsy()
expect( -> atom.unloadPackage('unloaded')).toThrow()
expect(atom.isPackageLoaded('unloaded')).toBeFalsy()
expect(atom.packages.isPackageLoaded('unloaded')).toBeFalsy()
expect( -> atom.packages.unloadPackage('unloaded')).toThrow()
expect(atom.packages.isPackageLoaded('unloaded')).toBeFalsy()
describe "when the package is loaded", ->
it "no longers reports it as being loaded", ->
pack = atom.loadPackage('package-with-main')
expect(atom.isPackageLoaded(pack.name)).toBeTruthy()
atom.unloadPackage(pack.name)
expect(atom.isPackageLoaded(pack.name)).toBeFalsy()
pack = atom.packages.loadPackage('package-with-main')
expect(atom.packages.isPackageLoaded(pack.name)).toBeTruthy()
atom.packages.unloadPackage(pack.name)
expect(atom.packages.isPackageLoaded(pack.name)).toBeFalsy()
describe ".activatePackage(id)", ->
describe "atom packages", ->
describe "when called multiple times", ->
it "it only calls activate on the package once", ->
spyOn(Package.prototype, 'activateNow').andCallThrough()
atom.packages.activatePackage('package-with-index')
atom.packages.activatePackage('package-with-index')
waitsForPromise ->
atom.packages.activatePackage('package-with-index')
runs ->
expect(Package.prototype.activateNow.callCount).toBe 1
describe "when the package has a main module", ->
describe "when the metadata specifies a main module path˜", ->
it "requires the module at the specified path", ->
mainModule = require('./fixtures/packages/package-with-main/main-module')
spyOn(mainModule, 'activate')
pack = atom.activatePackage('package-with-main')
expect(mainModule.activate).toHaveBeenCalled()
expect(pack.mainModule).toBe mainModule
pack = null
waitsForPromise ->
atom.packages.activatePackage('package-with-main').then (p) -> pack = p
runs ->
expect(mainModule.activate).toHaveBeenCalled()
expect(pack.mainModule).toBe mainModule
describe "when the metadata does not specify a main module", ->
it "requires index.coffee", ->
indexModule = require('./fixtures/packages/package-with-index/index')
spyOn(indexModule, 'activate')
pack = atom.activatePackage('package-with-index')
expect(indexModule.activate).toHaveBeenCalled()
expect(pack.mainModule).toBe indexModule
pack = null
waitsForPromise ->
atom.packages.activatePackage('package-with-index').then (p) -> pack = p
runs ->
expect(indexModule.activate).toHaveBeenCalled()
expect(pack.mainModule).toBe indexModule
it "assigns config defaults from the module", ->
expect(config.get('package-with-config-defaults.numbers.one')).toBeUndefined()
atom.activatePackage('package-with-config-defaults')
expect(config.get('package-with-config-defaults.numbers.one')).toBe 1
expect(config.get('package-with-config-defaults.numbers.two')).toBe 2
expect(atom.config.get('package-with-config-defaults.numbers.one')).toBeUndefined()
waitsForPromise ->
atom.packages.activatePackage('package-with-config-defaults')
runs ->
expect(atom.config.get('package-with-config-defaults.numbers.one')).toBe 1
expect(atom.config.get('package-with-config-defaults.numbers.two')).toBe 2
describe "when the package metadata includes activation events", ->
[mainModule, pack] = []
[mainModule, promise] = []
beforeEach ->
mainModule = require './fixtures/packages/package-with-activation-events/index'
spyOn(mainModule, 'activate').andCallThrough()
AtomPackage = require '../src/atom-package'
spyOn(AtomPackage.prototype, 'requireMainModule').andCallThrough()
pack = atom.activatePackage('package-with-activation-events')
spyOn(Package.prototype, 'requireMainModule').andCallThrough()
promise = atom.packages.activatePackage('package-with-activation-events')
it "defers requiring/activating the main module until an activation event bubbles to the root view", ->
expect(pack.requireMainModule).not.toHaveBeenCalled()
expect(mainModule.activate).not.toHaveBeenCalled()
rootView.trigger 'activation-event'
expect(mainModule.activate).toHaveBeenCalled()
expect(promise.isFulfilled()).not.toBeTruthy()
atom.workspaceView.trigger 'activation-event'
waitsForPromise ->
promise
it "triggers the activation event on all handlers registered during activation", ->
rootView.open()
editor = rootView.getActiveView()
atom.workspaceView.openSync()
editorView = atom.workspaceView.getActiveView()
eventHandler = jasmine.createSpy("activation-event")
editor.command 'activation-event', eventHandler
editor.trigger 'activation-event'
editorView.command 'activation-event', eventHandler
editorView.trigger 'activation-event'
expect(mainModule.activate.callCount).toBe 1
expect(mainModule.activationEventCallCount).toBe 1
expect(eventHandler.callCount).toBe 1
editor.trigger 'activation-event'
editorView.trigger 'activation-event'
expect(mainModule.activationEventCallCount).toBe 2
expect(eventHandler.callCount).toBe 2
expect(mainModule.activate.callCount).toBe 1
@@ -101,23 +130,27 @@ describe "the `atom` global", ->
it "does not throw an exception", ->
spyOn(console, "error")
spyOn(console, "warn").andCallThrough()
expect(-> atom.activatePackage('package-without-module')).not.toThrow()
expect(-> atom.packages.activatePackage('package-without-module')).not.toThrow()
expect(console.error).not.toHaveBeenCalled()
expect(console.warn).not.toHaveBeenCalled()
it "passes the activate method the package's previously serialized state if it exists", ->
pack = atom.activatePackage("package-with-serialization")
expect(pack.mainModule.someNumber).not.toBe 77
pack.mainModule.someNumber = 77
atom.deactivatePackage("package-with-serialization")
spyOn(pack.mainModule, 'activate').andCallThrough()
atom.activatePackage("package-with-serialization")
expect(pack.mainModule.activate).toHaveBeenCalledWith({someNumber: 77})
pack = null
waitsForPromise ->
atom.packages.activatePackage("package-with-serialization").then (p) -> pack = p
runs ->
expect(pack.mainModule.someNumber).not.toBe 77
pack.mainModule.someNumber = 77
atom.packages.deactivatePackage("package-with-serialization")
spyOn(pack.mainModule, 'activate').andCallThrough()
atom.packages.activatePackage("package-with-serialization")
expect(pack.mainModule.activate).toHaveBeenCalledWith({someNumber: 77})
it "logs warning instead of throwing an exception if the package fails to load", ->
config.set("core.disabledPackages", [])
atom.config.set("core.disabledPackages", [])
spyOn(console, "warn")
expect(-> atom.activatePackage("package-that-throws-an-exception")).not.toThrow()
expect(-> atom.packages.activatePackage("package-that-throws-an-exception")).not.toThrow()
expect(console.warn).toHaveBeenCalled()
describe "keymap loading", ->
@@ -127,31 +160,33 @@ describe "the `atom` global", ->
element2 = $$ -> @div class: 'test-2'
element3 = $$ -> @div class: 'test-3'
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBeUndefined()
expect(keymap.bindingsForElement(element2)['ctrl-z']).toBeUndefined()
expect(keymap.bindingsForElement(element3)['ctrl-z']).toBeUndefined()
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element1)).toHaveLength 0
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element2)).toHaveLength 0
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element3)).toHaveLength 0
atom.activatePackage("package-with-keymaps")
atom.packages.activatePackage("package-with-keymaps")
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBe "test-1"
expect(keymap.bindingsForElement(element2)['ctrl-z']).toBe "test-2"
expect(keymap.bindingsForElement(element3)['ctrl-z']).toBeUndefined()
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element1)[0].command).toBe "test-1"
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element2)[0].command).toBe "test-2"
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element3)).toHaveLength 0
describe "when the metadata contains a 'keymaps' manifest", ->
it "loads only the keymaps specified by the manifest, in the specified order", ->
element1 = $$ -> @div class: 'test-1'
element3 = $$ -> @div class: 'test-3'
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBeUndefined()
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element1)).toHaveLength 0
atom.activatePackage("package-with-keymaps-manifest")
atom.packages.activatePackage("package-with-keymaps-manifest")
expect(keymap.bindingsForElement(element1)['ctrl-z']).toBe 'keymap-1'
expect(keymap.bindingsForElement(element1)['ctrl-n']).toBe 'keymap-2'
expect(keymap.bindingsForElement(element3)['ctrl-y']).toBeUndefined()
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', element1)[0].command).toBe 'keymap-1'
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-n', element1)[0].command).toBe 'keymap-2'
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-y', element3)).toHaveLength 0
describe "menu loading", ->
beforeEach -> atom.contextMenu.definitions = []
beforeEach ->
atom.contextMenu.definitions = []
atom.menu.template = []
describe "when the metadata does not contain a 'menus' manifest", ->
it "loads all the .cson/.json files in the menus directory", ->
@@ -159,8 +194,11 @@ describe "the `atom` global", ->
expect(atom.contextMenu.definitionsForElement(element)).toEqual []
atom.activatePackage("package-with-menus")
atom.packages.activatePackage("package-with-menus")
expect(atom.menu.template.length).toBe 2
expect(atom.menu.template[0].label).toBe "Second to Last"
expect(atom.menu.template[1].label).toBe "Last"
expect(atom.contextMenu.definitionsForElement(element)[0].label).toBe "Menu item 1"
expect(atom.contextMenu.definitionsForElement(element)[1].label).toBe "Menu item 2"
expect(atom.contextMenu.definitionsForElement(element)[2].label).toBe "Menu item 3"
@@ -171,24 +209,30 @@ describe "the `atom` global", ->
expect(atom.contextMenu.definitionsForElement(element)).toEqual []
atom.activatePackage("package-with-menus-manifest")
atom.packages.activatePackage("package-with-menus-manifest")
expect(atom.menu.template[0].label).toBe "Second to Last"
expect(atom.menu.template[1].label).toBe "Last"
expect(atom.contextMenu.definitionsForElement(element)[0].label).toBe "Menu item 2"
expect(atom.contextMenu.definitionsForElement(element)[1].label).toBe "Menu item 1"
expect(atom.contextMenu.definitionsForElement(element)[2]).toBeUndefined()
describe "stylesheet loading", ->
describe "when the metadata contains a 'stylesheets' manifest", ->
it "loads stylesheets from the stylesheets directory as specified by the manifest", ->
one = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/1.css")
two = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/2.less")
three = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/3.css")
one = atom.themes.stringToId(one)
two = atom.themes.stringToId(two)
three = atom.themes.stringToId(three)
expect(atom.themes.stylesheetElementForId(one)).not.toExist()
expect(atom.themes.stylesheetElementForId(two)).not.toExist()
expect(atom.themes.stylesheetElementForId(three)).not.toExist()
atom.activatePackage("package-with-stylesheets-manifest")
atom.packages.activatePackage("package-with-stylesheets-manifest")
expect(atom.themes.stylesheetElementForId(one)).toExist()
expect(atom.themes.stylesheetElementForId(two)).toExist()
@@ -200,11 +244,17 @@ describe "the `atom` global", ->
one = require.resolve("./fixtures/packages/package-with-stylesheets/stylesheets/1.css")
two = require.resolve("./fixtures/packages/package-with-stylesheets/stylesheets/2.less")
three = require.resolve("./fixtures/packages/package-with-stylesheets/stylesheets/3.css")
one = atom.themes.stringToId(one)
two = atom.themes.stringToId(two)
three = atom.themes.stringToId(three)
expect(atom.themes.stylesheetElementForId(one)).not.toExist()
expect(atom.themes.stylesheetElementForId(two)).not.toExist()
expect(atom.themes.stylesheetElementForId(three)).not.toExist()
atom.activatePackage("package-with-stylesheets")
atom.packages.activatePackage("package-with-stylesheets")
expect(atom.themes.stylesheetElementForId(one)).toExist()
expect(atom.themes.stylesheetElementForId(two)).toExist()
expect(atom.themes.stylesheetElementForId(three)).toExist()
@@ -212,112 +262,263 @@ describe "the `atom` global", ->
describe "grammar loading", ->
it "loads the package's grammars", ->
atom.activatePackage('package-with-grammars')
expect(syntax.selectGrammar('a.alot').name).toBe 'Alot'
expect(syntax.selectGrammar('a.alittle').name).toBe 'Alittle'
waitsForPromise ->
atom.packages.activatePackage('package-with-grammars')
runs ->
expect(atom.syntax.selectGrammar('a.alot').name).toBe 'Alot'
expect(atom.syntax.selectGrammar('a.alittle').name).toBe 'Alittle'
describe "scoped-property loading", ->
it "loads the scoped properties", ->
atom.activatePackage("package-with-scoped-properties")
expect(syntax.getProperty ['.source.omg'], 'editor.increaseIndentPattern').toBe '^a'
waitsForPromise ->
atom.packages.activatePackage("package-with-scoped-properties")
describe "textmate packages", ->
it "loads the package's grammars", ->
expect(syntax.selectGrammar("file.rb").name).toBe "Null Grammar"
atom.activatePackage('ruby-tmbundle', sync: true)
expect(syntax.selectGrammar("file.rb").name).toBe "Ruby"
it "translates the package's scoped properties to Atom terms", ->
expect(syntax.getProperty(['.source.ruby'], 'editor.commentStart')).toBeUndefined()
atom.activatePackage('ruby-tmbundle', sync: true)
expect(syntax.getProperty(['.source.ruby'], 'editor.commentStart')).toBe '# '
describe "when the package has no grammars but does have preferences", ->
it "loads the package's preferences as scoped properties", ->
jasmine.unspy(window, 'setTimeout')
spyOn(syntax, 'addProperties').andCallThrough()
atom.activatePackage('package-with-preferences-tmbundle')
waitsFor ->
syntax.addProperties.callCount > 0
runs ->
expect(syntax.getProperty(['.source.pref'], 'editor.increaseIndentPattern')).toBe '^abc$'
expect(atom.syntax.getProperty ['.source.omg'], 'editor.increaseIndentPattern').toBe '^a'
describe "converted textmate packages", ->
it "loads the package's grammars", ->
expect(atom.syntax.selectGrammar("file.rb").name).toBe "Null Grammar"
waitsForPromise ->
atom.packages.activatePackage('language-ruby')
runs ->
expect(atom.syntax.selectGrammar("file.rb").name).toBe "Ruby"
it "loads the translated scoped properties", ->
expect(atom.syntax.getProperty(['.source.ruby'], 'editor.commentStart')).toBeUndefined()
waitsForPromise ->
atom.packages.activatePackage('language-ruby')
runs ->
expect(atom.syntax.getProperty(['.source.ruby'], 'editor.commentStart')).toBe '# '
describe ".deactivatePackage(id)", ->
describe "atom packages", ->
it "calls `deactivate` on the package's main module if activate was successful", ->
pack = atom.activatePackage("package-with-deactivate")
expect(atom.isPackageActive("package-with-deactivate")).toBeTruthy()
spyOn(pack.mainModule, 'deactivate').andCallThrough()
pack = null
waitsForPromise ->
atom.packages.activatePackage("package-with-deactivate").then (p) -> pack = p
atom.deactivatePackage("package-with-deactivate")
expect(pack.mainModule.deactivate).toHaveBeenCalled()
expect(atom.isPackageActive("package-with-module")).toBeFalsy()
runs ->
expect(atom.packages.isPackageActive("package-with-deactivate")).toBeTruthy()
spyOn(pack.mainModule, 'deactivate').andCallThrough()
spyOn(console, 'warn')
badPack = atom.activatePackage("package-that-throws-on-activate")
expect(atom.isPackageActive("package-that-throws-on-activate")).toBeTruthy()
spyOn(badPack.mainModule, 'deactivate').andCallThrough()
atom.packages.deactivatePackage("package-with-deactivate")
expect(pack.mainModule.deactivate).toHaveBeenCalled()
expect(atom.packages.isPackageActive("package-with-module")).toBeFalsy()
atom.deactivatePackage("package-that-throws-on-activate")
expect(badPack.mainModule.deactivate).not.toHaveBeenCalled()
expect(atom.isPackageActive("package-that-throws-on-activate")).toBeFalsy()
spyOn(console, 'warn')
badPack = null
waitsForPromise ->
atom.packages.activatePackage("package-that-throws-on-activate").then (p) -> badPack = p
runs ->
expect(atom.packages.isPackageActive("package-that-throws-on-activate")).toBeTruthy()
spyOn(badPack.mainModule, 'deactivate').andCallThrough()
atom.packages.deactivatePackage("package-that-throws-on-activate")
expect(badPack.mainModule.deactivate).not.toHaveBeenCalled()
expect(atom.packages.isPackageActive("package-that-throws-on-activate")).toBeFalsy()
it "does not serialize packages that have not been activated called on their main module", ->
spyOn(console, 'warn')
badPack = atom.activatePackage("package-that-throws-on-activate")
spyOn(badPack.mainModule, 'serialize').andCallThrough()
badPack = null
waitsForPromise ->
atom.packages.activatePackage("package-that-throws-on-activate").then (p) -> badPack = p
atom.deactivatePackage("package-that-throws-on-activate")
expect(badPack.mainModule.serialize).not.toHaveBeenCalled()
runs ->
spyOn(badPack.mainModule, 'serialize').andCallThrough()
atom.packages.deactivatePackage("package-that-throws-on-activate")
expect(badPack.mainModule.serialize).not.toHaveBeenCalled()
it "absorbs exceptions that are thrown by the package module's serialize methods", ->
spyOn(console, 'error')
atom.activatePackage('package-with-serialize-error', immediate: true)
atom.activatePackage('package-with-serialization', immediate: true)
atom.deactivatePackages()
expect(atom.packages.packageStates['package-with-serialize-error']).toBeUndefined()
expect(atom.packages.packageStates['package-with-serialization']).toEqual someNumber: 1
expect(console.error).toHaveBeenCalled()
waitsForPromise ->
atom.packages.activatePackage('package-with-serialize-error')
waitsForPromise ->
atom.packages.activatePackage('package-with-serialization')
runs ->
atom.packages.deactivatePackages()
expect(atom.packages.packageStates['package-with-serialize-error']).toBeUndefined()
expect(atom.packages.packageStates['package-with-serialization']).toEqual someNumber: 1
expect(console.error).toHaveBeenCalled()
it "removes the package's grammars", ->
atom.activatePackage('package-with-grammars')
atom.deactivatePackage('package-with-grammars')
expect(syntax.selectGrammar('a.alot').name).toBe 'Null Grammar'
expect(syntax.selectGrammar('a.alittle').name).toBe 'Null Grammar'
waitsForPromise ->
atom.packages.activatePackage('package-with-grammars')
runs ->
atom.packages.deactivatePackage('package-with-grammars')
expect(atom.syntax.selectGrammar('a.alot').name).toBe 'Null Grammar'
expect(atom.syntax.selectGrammar('a.alittle').name).toBe 'Null Grammar'
it "removes the package's keymaps", ->
atom.activatePackage('package-with-keymaps')
atom.deactivatePackage('package-with-keymaps')
expect(keymap.bindingsForElement($$ -> @div class: 'test-1')['ctrl-z']).toBeUndefined()
expect(keymap.bindingsForElement($$ -> @div class: 'test-2')['ctrl-z']).toBeUndefined()
waitsForPromise ->
atom.packages.activatePackage('package-with-keymaps')
runs ->
atom.packages.deactivatePackage('package-with-keymaps')
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', $$ -> @div class: 'test-1')).toHaveLength 0
expect(atom.keymap.keyBindingsForKeystrokeMatchingElement('ctrl-z', $$ -> @div class: 'test-2')).toHaveLength 0
it "removes the package's stylesheets", ->
atom.activatePackage('package-with-stylesheets')
atom.deactivatePackage('package-with-stylesheets')
one = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/1.css")
two = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/2.less")
three = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/3.css")
expect(atom.themes.stylesheetElementForId(one)).not.toExist()
expect(atom.themes.stylesheetElementForId(two)).not.toExist()
expect(atom.themes.stylesheetElementForId(three)).not.toExist()
waitsForPromise ->
atom.packages.activatePackage('package-with-stylesheets')
runs ->
atom.packages.deactivatePackage('package-with-stylesheets')
one = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/1.css")
two = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/2.less")
three = require.resolve("./fixtures/packages/package-with-stylesheets-manifest/stylesheets/3.css")
expect(atom.themes.stylesheetElementForId(one)).not.toExist()
expect(atom.themes.stylesheetElementForId(two)).not.toExist()
expect(atom.themes.stylesheetElementForId(three)).not.toExist()
it "removes the package's scoped-properties", ->
atom.activatePackage("package-with-scoped-properties")
expect(syntax.getProperty ['.source.omg'], 'editor.increaseIndentPattern').toBe '^a'
atom.deactivatePackage("package-with-scoped-properties")
expect(syntax.getProperty ['.source.omg'], 'editor.increaseIndentPattern').toBeUndefined()
waitsForPromise ->
atom.packages.activatePackage("package-with-scoped-properties")
runs ->
expect(atom.syntax.getProperty ['.source.omg'], 'editor.increaseIndentPattern').toBe '^a'
atom.packages.deactivatePackage("package-with-scoped-properties")
expect(atom.syntax.getProperty ['.source.omg'], 'editor.increaseIndentPattern').toBeUndefined()
describe "textmate packages", ->
it "removes the package's grammars", ->
expect(syntax.selectGrammar("file.rb").name).toBe "Null Grammar"
atom.activatePackage('ruby-tmbundle', sync: true)
expect(syntax.selectGrammar("file.rb").name).toBe "Ruby"
atom.deactivatePackage('ruby-tmbundle')
expect(syntax.selectGrammar("file.rb").name).toBe "Null Grammar"
expect(atom.syntax.selectGrammar("file.rb").name).toBe "Null Grammar"
waitsForPromise ->
atom.packages.activatePackage('language-ruby')
runs ->
expect(atom.syntax.selectGrammar("file.rb").name).toBe "Ruby"
atom.packages.deactivatePackage('language-ruby')
expect(atom.syntax.selectGrammar("file.rb").name).toBe "Null Grammar"
it "removes the package's scoped properties", ->
atom.activatePackage('ruby-tmbundle', sync: true)
atom.deactivatePackage('ruby-tmbundle')
expect(syntax.getProperty(['.source.ruby'], 'editor.commentStart')).toBeUndefined()
waitsForPromise ->
atom.packages.activatePackage('language-ruby')
runs ->
atom.packages.deactivatePackage('language-ruby')
expect(atom.syntax.getProperty(['.source.ruby'], 'editor.commentStart')).toBeUndefined()
describe ".activate()", ->
packageActivator = null
themeActivator = null
beforeEach ->
spyOn(console, 'warn')
atom.packages.loadPackages()
loadedPackages = atom.packages.getLoadedPackages()
expect(loadedPackages.length).toBeGreaterThan 0
packageActivator = spyOn(atom.packages, 'activatePackages')
themeActivator = spyOn(atom.themes, 'activatePackages')
afterEach ->
atom.packages.unloadPackages()
Syntax = require '../src/syntax'
atom.syntax = window.syntax = new Syntax()
it "activates all the packages, and none of the themes", ->
atom.packages.activate()
expect(packageActivator).toHaveBeenCalled()
expect(themeActivator).toHaveBeenCalled()
packages = packageActivator.mostRecentCall.args[0]
expect(['atom', 'textmate']).toContain(pack.getType()) for pack in packages
themes = themeActivator.mostRecentCall.args[0]
expect(['theme']).toContain(theme.getType()) for theme in themes
describe ".enablePackage() and disablePackage()", ->
describe "with packages", ->
it ".enablePackage() enables a disabled package", ->
packageName = 'package-with-main'
atom.config.pushAtKeyPath('core.disabledPackages', packageName)
atom.packages.observeDisabledPackages()
expect(atom.config.get('core.disabledPackages')).toContain packageName
pack = atom.packages.enablePackage(packageName)
loadedPackages = atom.packages.getLoadedPackages()
activatedPackages = null
waitsFor ->
activatedPackages = atom.packages.getActivePackages()
activatedPackages.length > 0
runs ->
expect(loadedPackages).toContain(pack)
expect(activatedPackages).toContain(pack)
expect(atom.config.get('core.disabledPackages')).not.toContain packageName
it ".disablePackage() disables an enabled package", ->
packageName = 'package-with-main'
waitsForPromise ->
atom.packages.activatePackage(packageName)
runs ->
atom.packages.observeDisabledPackages()
expect(atom.config.get('core.disabledPackages')).not.toContain packageName
pack = atom.packages.disablePackage(packageName)
activatedPackages = atom.packages.getActivePackages()
expect(activatedPackages).not.toContain(pack)
expect(atom.config.get('core.disabledPackages')).toContain packageName
describe "with themes", ->
beforeEach ->
waitsForPromise ->
atom.themes.activateThemes()
afterEach ->
atom.themes.deactivateThemes()
atom.config.unobserve('core.themes')
it ".enablePackage() and .disablePackage() enables and disables a theme", ->
packageName = 'theme-with-package-file'
expect(atom.config.get('core.themes')).not.toContain packageName
expect(atom.config.get('core.disabledPackages')).not.toContain packageName
# enabling of theme
pack = atom.packages.enablePackage(packageName)
activatedPackages = null
waitsFor ->
activatedPackages = atom.packages.getActivePackages()
activatedPackages.length > 0
runs ->
expect(activatedPackages).toContain(pack)
expect(atom.config.get('core.themes')).toContain packageName
expect(atom.config.get('core.disabledPackages')).not.toContain packageName
# disabling of theme
pack = atom.packages.disablePackage(packageName)
activatedPackages = atom.packages.getActivePackages()
expect(activatedPackages).not.toContain(pack)
expect(atom.config.get('core.themes')).not.toContain packageName
expect(atom.config.get('core.themes')).not.toContain packageName
expect(atom.config.get('core.disabledPackages')).not.toContain packageName
describe ".isReleasedVersion()", ->
it "returns false if the version is a SHA and true otherwise", ->
version = '0.1.0'
spyOn(atom.constructor, 'getVersion').andCallFake -> version
expect(atom.isReleasedVersion()).toBe true
version = '36b5518'
expect(atom.isReleasedVersion()).toBe false

Alguns arquivos não foram exibidos porque demasiados arquivos foram alterados neste diff Mostrar Mais