Commit graph

852 commits

Author SHA1 Message Date
Fabrício Matté
b2b523e264 Add decorateBrowserOptions to plugin extensions list (#2378) 2017-10-20 09:16:11 +02:00
Oswaldo Acauan
a53875f208 Add trailingComma rule for config-default.js (#2372) 2017-10-18 20:17:55 +02:00
CHaBou
9c9a307958
Merge branch 'master' into canary 2017-10-05 20:49:20 +02:00
CHaBou
bcf1157b37 Add new keymaps to jump between tabs (#2330) 2017-10-05 20:39:39 +02:00
Matt bc
2b61d4c081 Add config to issue report template (#2293)
* fixes #1789
2017-10-03 23:56:07 +02:00
Luiz Fernando Rodrigues
9e7bd76ef9 Improve documentation of showHamburguerMenu option (#2315) 2017-10-01 16:15:35 +01:00
CHaBou
e2d73702cd Fix plugin requiring to authorize @ in config (#2312)
Fix #2311
2017-10-01 06:08:42 +02:00
Leo Lamprecht
4ea9865ba5 1.4.8 2017-09-26 11:40:51 +02:00
Leo Lamprecht
1f2419fe52 2.0.4 2017-09-26 11:26:30 +02:00
Benjamin Staneck
fa3c63957a Update Electron to 1.7.8 (#2277)
* Update Electron to 1.7.8

[SECURITY] Fixed Chromium RCE vulnerability

* https://github.com/electron/electron/releases/tag/v1.7.8
* https://github.com/electron/electron/releases/tag/v1.7.7

* remove remnant xo feature string to retrigger build
2017-09-26 08:10:47 +02:00
Guillermo Rauch
3293c3b50a Merge branch 'master' into canary 2017-09-25 15:23:14 +02:00
Alexandre Santos
acc2230b0e Fix typo in utils customKeys (#2283) 2017-09-25 15:21:59 +02:00
Leo Lamprecht
2412d3422a 2.0.3 2017-09-24 12:08:29 +02:00
Mina
a31e94eb5a Fixed icon proportions in About window (#2265) 2017-09-22 23:53:49 +02:00
CHaBou
0502bbfc79
2.0.2 2017-09-21 00:15:00 +02:00
CHaBou
e8a9741194
Merge branch 'master' into canary 2017-09-21 00:09:04 +02:00
CHaBou
c73186c7ee
2.0.1 2017-09-20 23:36:27 +02:00
CHaBou
c02c2526ac Fix decorated config with default colors (#2242)
Fix decorated config with default colors
2017-09-20 23:32:32 +02:00
Leo Lamprecht
38649d7d56 1.4.7 2017-09-20 19:42:38 +02:00
Leo Lamprecht
4f9bcf77bc Made canary auto updates work (#2235) 2017-09-20 19:35:50 +02:00
CHaBou
cc2ff06318
2.0.0 2017-09-20 01:40:59 +02:00
CHaBou
d3cd9aee00
Merge branch 'master' into canary 2017-09-20 01:39:55 +02:00
Wilson Tayar
4c71c99325 Normalize keymap internals (#2227)
Fix #2195: normalizing keybindings using localeCompare to include non english keyboards as well
2017-09-20 01:36:06 +02:00
CHaBou
f8c19b0ef2
Merge branch 'master' into v2 2017-09-17 23:08:33 +02:00
CHaBou
e0d793eeeb Revert "Normalize keymap internals" (#2225)
This reverts commit 751c06e437.
2017-09-17 21:53:37 +01:00
CHaBou
7733067deb
Merge branch 'master' into v2 2017-09-17 10:48:16 +02:00
Wilson Tayar
751c06e437 Normalize keymap internals (#2210)
Fix #2195
2017-09-17 10:43:58 +02:00
CHaBou
d6fc99e1d6
Merge branch 'master' into v2 2017-09-16 21:31:01 +02:00
Leo Lamprecht
9f4bff7f52 1.4.6 2017-09-16 15:55:47 +02:00
CHaBou
51b08930ee Made file watching work on Windows (#2220) 2017-09-16 15:49:43 +02:00
Leo Lamprecht
966aad150d 1.4.5 2017-09-16 13:58:01 +02:00
CHaBou
bd5b16c7da Replace chokidar by fs.watch (#2217) 2017-09-16 13:49:10 +02:00
CHaBou
507fc28200
Merge branch 'master' into v2
* master:
  Revert #2126 (#2202)
  Use child_process.execFile to prevent unescaped stuff (#2206)
  1.4.4
2017-09-16 13:23:24 +02:00
CHaBou
97d1ae33d3 Revert #2126 (#2202) 2017-09-15 19:23:03 +01:00
Donghao Ren
53a5a425f7 Use child_process.execFile to prevent unescaped stuff (#2206)
Fix #2173
2017-09-15 16:44:28 +02:00
CHaBou
4888a9b394
Handle xterm url opening 2017-09-13 23:12:30 +02:00
CHaBou
9bd410f1e4
Make Hyper more robust against plugins
* Add some try/catch
* Support React@16 error boundaries for render decorated components
2017-09-13 22:55:54 +02:00
Leo Lamprecht
79472c537a 1.4.4 2017-09-13 20:55:47 +02:00
CHaBou
3e632577e5
Merge branch 'master' into xterm-linted
* master:
  Fix yarn.lock (#2194)
  Fix for keymapping bug on Linux and Windows (#2189)
  Set session CWD only if there is an active session (#2191)
  Upgrade Electron to v1.7.6 (#2193)
  Fix plugin path in dev mode (#2192)
2017-09-11 23:14:13 +02:00
Albin Ekblom
48f5b6e08f Fix yarn.lock (#2194) 2017-09-11 16:06:24 +02:00
Lucas
3bca7c2891 Fix for keymapping bug on Linux and Windows (#2189)
* Fix for keymapping bug on Linux and Windows

In response to issue #2156, the keymapping conflict has been removed from linux.json and win32.json in the app/keymaps/ directory. Now the keymap for window close is ctrl+shift+q and the keymap for pane close is ctrl+shift+w.

* Fix for failed test on initial commit.
2017-09-11 15:09:17 +02:00
CHaBou
01f7779646 Upgrade Electron to v1.7.6 (#2193) 2017-09-11 10:08:32 +02:00
CHaBou
3b1ec4e435 Fix plugin path in dev mode (#2192)
When a dev config (<project_dir>/.hyper.js) is used, plugins should be searched/installed in <project_dir>/.hyper_plugins directory
2017-09-10 19:20:52 -04:00
CHaBou
1155bb54b1
Add prettier and resolve all lint errors 2017-09-10 16:04:13 +02:00
CHaBou
0fbf7cfc97
Merge branch 'master' into xterm
* master:
  Add default keymaps reference to documentation (#2185)
  Add category option under linux key in root package.json (#2184)
  Add vscode debug config, update readme (#2181)
  Get default config options when not specified in user config (#2126)
  Fix session cleaning (#2176)
  Delete .DS_Store file (#2171)
2017-09-10 13:53:33 +02:00
CHaBou
df68daaaba
Translate automatically hterm css class in config
Change css class name in config after plugin decoration for partial backward compatibility
2017-09-10 13:46:59 +02:00
CHaBou
a9bb9b697b
Add depreaction warning for hterm css
* Notify user when its config conatins deprecated CSS classes
* Add warning in devtools console about plugins using deprecated classes
2017-09-10 11:35:39 +02:00
Jan Okoński
be5786ef12 Get default config options when not specified in user config (#2126) 2017-09-06 22:58:09 +02:00
CHaBou
f6bfbdf170 Fix session cleaning (#2176)
Regression introduced by #2028
2017-09-06 01:19:37 +02:00
Leo Lamprecht
af7dc1b9c4 1.4.3 2017-09-03 18:28:39 +02:00
Louis Arge
843ebd2fe0 Change "Close Session" shortcut on Linux/Windows (#2160)
Fix #2156
2017-09-03 17:47:09 +02:00
Leo Lamprecht
0ee4fb6104 Updated dependencies to the latest version (#2146)
* Bumped dependencies to the latest version

* Bumped root lockfile

* Bumped app dependencies

* Fixed linting

* No command line switch needed anymore for native async/await

* Fixed color error

* Bumped Node.js versions for CI

* Downgraded hterm-umdjs

* Try to fix the AppVeyor build

* Made colors work again
2017-08-31 15:20:39 +02:00
Leo Lamprecht
cfbae08e4f 1.4.2 2017-08-30 22:59:43 +02:00
Leo Lamprecht
4351d86144 1.4.1 2017-08-30 21:59:43 +02:00
Leo Lamprecht
e90ad48a05 1.4.0 2017-08-30 19:51:25 +02:00
Leo Lamprecht
affa50343e Ensured that async-retry is added to the bundle (#2131) 2017-08-30 19:26:28 +02:00
Leo Lamprecht
356f93ff04 Ensure correct update channel is displayed in About window (#2130) 2017-08-30 19:14:28 +02:00
Leo Lamprecht
a2d4936e50 Retry loading it if config doesn't exist in auto updater (#2129)
* Made it easier

* Return the config

* Missing semicolon added

* Fixed the linting
2017-08-30 18:54:45 +02:00
Albin Ekblom
26abc6bd15 Write contents of default config to hyper.js (#2128) 2017-08-30 14:33:31 +02:00
Leo Lamprecht
6b886afc36 Use a string for setting the update channel (#2127)
* Adjusted config option

* Accept new config value
2017-08-30 14:12:59 +02:00
Philippe Potvin
300f7cbde4 Plugins revamp (#2108)
* extentions file

* plugs folder creation
2017-08-21 20:07:50 -04:00
Benjamin Staneck
0df4ae07cb Update node-pty to 0.7.0 (#2109)
Changelog: https://github.com/Tyriar/node-pty/releases/tag/0.7.0
2017-08-21 15:35:10 -04:00
Leo Lamprecht
fa1b607026 Show update channel in About window (#2102)
* Show update channel in About window

* Improved syntax
2017-08-20 13:03:13 +02:00
Leo Lamprecht
a0713f86e8 Added config switch for update channel (#2101) 2017-08-20 12:18:42 +02:00
CHaBou
5d171aa33e Return created window (#2081) 2017-08-14 21:29:50 -04:00
Adam Stankiewicz
cd1b8cd064 Ship yarn with hyper (#381) 2017-08-14 09:42:28 +02:00
Andy
de8e70f935 Make builds work again and catch squirrel errors on windows (#2078)
* Catch errors for electron-squirrel-startup

* Made builds work again

* linting

* linting
2017-08-13 07:03:35 +02:00
Albin Ekblom
be8e0cce29 Replace gaze with chokidar for config watcher (#1946)
* Replace gaze with chokidar for config watcher

* Pin deps
2017-08-13 00:23:48 +02:00
Benjamin Staneck
4e9bd4d953 and another one (#2063) 2017-08-09 02:23:45 -04:00
Benjamin Staneck
e175df780a fix missed this => window (#2058) 2017-08-08 22:37:05 -04:00
Benjamin Staneck
263caa0659 Dependency updates (#1958)
* Dependency updates

* update babel-loader, electron-builder, electron-builder-squirrel-windows

* update node-pty to 0.6.9

release notes: https://github.com/Tyriar/node-pty/releases

* update node-pty to 0.6.10

release notes: https://github.com/Tyriar/node-pty/releases/tag/0.6.10

* update electron-builder

* more dependency updates

* Update Electron and family

Electron release notes: https://github.com/electron/electron/releases/tag/v1.6.12

* Update redux to 3.7.2

* Update webpack to 3.x and enable ModuleConcatenation

Basically absorb PR #1967

* Update react and react-dom

* also absorb the changes of PR https://github.com/zeit/hyper/pull/2056
2017-08-08 16:29:54 -04:00
Philippe Potvin
eb85e14cbc fix (#2057) 2017-08-08 15:51:26 -04:00
Philippe Potvin
c01b4112ea fix devtools (#2048)
* fix devtools

* simp
2017-08-07 21:17:09 -04:00
Leo Lamprecht
866b5b82ce New URL for update server (#2047) 2017-08-04 23:52:38 +02:00
Philippe Potvin
4fd115bf27 Update window creation (#2028)
* add ui/window

* move window and optimize code

* cleanup
2017-08-02 15:20:03 -04:00
CHaBou
db35faa431 Show plugin (name and version) loaded (#1826)
* Print plugin name and version in devtools
* Add plugins informations in About dialog
2017-06-19 23:02:53 +02:00
Philippe Potvin
ab703b5bf2 Add docs for keys modification (#1937)
* Add keymaps docs to website

* de-beautify
2017-06-14 21:03:41 -04:00
Albin Ekblom
0bf10f3768 Escape parentheses for dropped files/folders (#1935)
* Escape parentheses for dropped files/folders

Fixes #1933

* Cleanup regex

* Wrap dropped path in single-quote

* Escape single quote inside single quote

* Handle escaping with current shell

* Cleanup escape
2017-06-14 09:12:03 -07:00
nitsakh
7b403380b0 Addressing issue #1862 by filtering out Boolean values from the plugins list (#1927)
* Addressing issue #1862 by filtering out Boolean values from the plugins list in the config.

* Updating the PR based on review comments.
2017-06-13 03:48:56 +02:00
Albin Ekblom
056c88f741 Check default app (#1918)
* Check .js default app

* Cleanup fallback check

* Check all keys

* Check for empty strings
2017-06-09 20:29:15 +02:00
Philippe Potvin
ca849425ac Conditional menu build fix for window (#1903)
* use speard for menu building
2017-06-03 22:12:14 +02:00
Philippe Potvin
93b2229ff5 Implements Commands Key mapping (#1876)
Keymaps part 2
2017-06-02 20:03:47 -04:00
Thomas Schoffelen
709fc03933 Fixed a bug with installing plugins (#1896)
Where NPM@5 whould rely on package-lock.json and not actually install new entries in package.json.
2017-06-02 15:52:38 +02:00
Albin Ekblom
07ef0079fa 🎉 Check for WScript.exe (#1872)
* 🎉 Check for WScript.exe

* 🔥 Move openConfig

* 🔥 Make openNotepad mimic openItem

* 🌹 Add comments

* 🔥 Cleanup windows workaround

* 🔥 Cleanup

* 🎉 Use openConfig on darwin too
2017-05-26 12:23:25 -04:00
Benjamin Staneck
8f02bc7014 Fix icon path in about window (#1874) 2017-05-26 10:09:39 -04:00
Philippe Potvin
3c1f359198 Refactor menu internals (#1867)
* Keymaps part@1 move menus
* Gather all paths in a module
2017-05-26 08:59:02 +02:00
Benjamin Staneck
871fca5988 Update node-pty to 0.6.6 (#1856)
Comes with winpty 0.4.3 (https://github.com/rprichard/winpty/releases/tag/0.4.3)
2017-05-21 21:43:09 -07:00
Albin Ekblom
e09a7f717d Upgrade electron to 1.6.8 (#1848)
* Upgrade deps

* Remove --harmony flag

* Add --harmony-async-await flag

* Pin deps

* Use cheap-module-source-map for dev

See https://github.com/webpack/webpack/issues/2145#issuecomment-294361203

* Update yarn.lock
2017-05-20 14:35:11 -07:00
Liudas Dzisevicius
55345ebe25 Fix Windows context menu (#1831)
System context menu refactoring.
Fix problems when update/uninstall Hyper.
2017-05-20 19:46:33 +02:00
Benjamin Staneck
a2fb0eed34 Update node-pty to 0.6.4 (#1832)
Fixes https://github.com/Tyriar/node-pty/issues/67 and enables https://github.com/henrikdahl/hyper-statusline/issues/38
2017-05-16 12:20:50 -07:00
Jing Dong
8ef134d8d5 Add documentation for Windows shells in config file (#1605)
* Add documentation for Windows in config file
Give real example for bash and PowerShell setup
2017-05-14 12:33:21 +02:00
Guillermo Rauch
0080f1da81 bump version 2017-05-12 14:50:04 -07:00
Guillermo Rauch
79e12de2ff only use a 2000 interval for non-push watch file approaches (e.g.: windows)
LGTY @paulbouwer @shama??
2017-05-09 14:12:41 -07:00
Guillermo Rauch
0bf5fade30 Release 1.3.2 2017-05-09 12:20:23 -07:00
CHaBou
00693de12e Open Hyper config in the native desktop's default manner (#1784) 2017-05-08 20:00:58 -07:00
Max Shepard
fc51f97283 Round up float values for hamburger menu positioning. Fixes #1462 (#1753) 2017-05-04 00:30:00 +02:00
Paul Bouwer
ae70eb1e17 Modify config watch interval to 2s (#1699) (#1772) 2017-04-30 15:50:46 -04:00
Albin Ekblom
aa7e79a039 🐛 Handle electron default env (#1764) 2017-04-28 13:57:17 -07:00
Regin Larsen
ec18537d96 Simplify and correct newlines replacement logic on Windows (#1713) 2017-04-05 14:37:04 +02:00
Matheus Fernandes
a4618a55af
1.3.1 2017-03-10 14:31:53 -03:00
CHaBou
3fb2e04eae Fix decorators check and documentation (#1601) 2017-03-05 18:19:28 -05:00
CHaBou
1f3ea081e8 Fix flicks after a full reload or when close tab button (dis)appear. (Fix #1490, #1575, #1579) (#1602)
* Fix term text flick when mouse is hovering tab

* Fix flick issue after a full reload
2017-03-05 13:34:03 -03:00
OJ Kwon
3df8274bf0 Falls back to default shell to install plugin on win32 (#1565)
- related to #1480
2017-02-27 15:09:22 -08:00
Matheus Fernandes
7aa8188ddd
1.3.0 2017-02-23 08:10:59 -03:00
Henrik
1cd2620da0 lowercase readme.md (#1577)
Lowercasing `README.md` to match commit changing the readme and license files to lowercase 3fbf1b0dca
2017-02-23 11:02:36 +01:00
Matthias Winkelmann
fc829d23e8 Add note about future config options to default configuration (#1562)
* add note about future config options to default configuration (fixes #1531)

* Remove unnecessary slash
2017-02-20 15:53:45 -03:00
Guillermo Rauch
9f9da68408 use string based RPC for data events for better perf 2017-02-18 00:55:48 -03:00
Henrik
0ee48c9841 add hterm cursor blink support (#1547)
* add hterm cursor blink support

* update website with cursorblink doc
2017-02-17 21:11:23 -03:00
Martin van Driel
7ae7a523d1 Fix typo in default config (#1530) 2017-02-16 16:56:33 -03:00
Henrik
63ab33daa9 fix undefined fish shell match (#1516)
* fix undefined fish shell match

* check for string
2017-02-16 14:23:57 -03:00
Guillermo Rauch
bdafe49c9f Release 1.2.1 2017-02-15 23:09:55 -03:00
Matheus Fernandes
6842e8500a
Make quickEdit true by default on Windows 2017-02-15 18:51:13 -03:00
Matheus Fernandes
d44deb32c8
Fix wrong comparison 2017-02-15 18:03:39 -03:00
Liudas Dzisevicius
270fe5bef9 [Windows] Add right click copy/paste (#1247)
* Add right click copy/paste

* Add quick edit config option
2017-02-15 17:22:09 -03:00
Matheus Fernandes
ef984a488d
Remove node-pty from the development package.json
Thanks @Tyriar – closes #1468
2017-01-31 18:01:42 -02:00
Matheus Fernandes
28e7e8e75c
Add info about the rebuild-node-pty script 2017-01-31 10:37:39 -02:00
Graham Kennery
df0a3c60ed Added http and https handler for will-navigate event (#1451)
Prevented navigation when a user drops content from a browser into a terminal. Instead, enter in the URL of the content the user dropped.
2017-01-25 23:24:01 -02:00
Matheus Fernandes
e34dab54a8
1.2.0 2017-01-21 21:52:14 -02:00
Josh Adams
993b8f6833 Add support for the fish shell (#1181)
* Add support for the fish shell

Fixes #1142

The fish shell is not POSIX-compliant.  As a result, the installation
command's use of `&&` caused `updatePlugins` to fail, erroneously
claiming there would be details in `~/.hyper_plugins/npm-debug.log`.

They of course weren't there because the command it tried to run was an
invalid command.  I've added an object to choose the install command to
run based on the shell you're in, and a very basic test to determine if
we're in fish.  Most shells should be able to be handled by the
'default' key, so for now it just checks to see if it's fish by doing a
regex on the configured `shell` option.

* Rename default -> posix
2017-01-21 17:03:58 -02:00
Sam Marder
edff890f5f Add --help and --version command line arguments (#1278)
* Added --help command line argument.

Also looks for -v and --version.

* Fixing linting issues.

* Deleted incorrect comment that used to make sense.

* Cleaner arguments checking.

* Used newer JS syntax.
2017-01-21 16:54:32 -02:00
Matheus Fernandes
a0a8484158
Always open the DevTools in the detached mode – closes 1173 2017-01-21 16:42:33 -02:00
Matheus Fernandes
bbd14bca09
Bump node-pty to 0.6.0 – Closes #1186 #1127 2017-01-21 16:07:08 -02:00
Paul Betts
2670b17872 On Win32, write out default .hyper.js as CRLF so Notepad doesn't have a fit (#1383)
* On Win32, write out default .hyper.js as CRLF so Notepad doesn't have a fit

* Fix hwhoops

* Add explanatory comment
2017-01-19 12:11:35 -02:00
Matheus Fernandes
d54fa3889b
Add notes about full paths for the shell config and about PowerShell
Closes #1020
2017-01-15 21:06:22 -02:00
Matheus Fernandes
3cb09e0480
pty.js => node-pty 2017-01-15 13:22:39 -02:00
Guillermo Rauch
fcd56b596a let's try again 2017-01-12 12:47:04 -08:00
Paul Betts
0ff1cb9584 Windows titlebar improvements (#1307)
* Make double-clicking on the titlebar work

* We don't actually need this

* Draw a Restore icon when the window is Maximized

* Update React State when BrowserWindow changes behind our back

* Cleanup

* Don't show the border if the window is maximized

* Fight with the linter
2017-01-10 21:45:49 -08:00
Albin Ekblom
fc685c7d02 Make default config clearer (#1379) 2017-01-10 12:53:32 -08:00
Nathan White
470d02dbfd Nw/pty fixes (#1353)
* changed pty package and update references

* fixed linting issues

* added npm clean script
2017-01-09 18:37:46 -08:00
Guillermo Rauch
bcd5b75795 Release 1.1.0 2017-01-09 14:35:54 -08:00
Guillermo Rauch
12ae25a60b 20% faster bootup time (#1350)
* bump webpack, babel and include babili

* fix for babili

* add heuristics for faster v8 parsing

* lint fixes

* fix windows build. infinitely grateful to @stefanivic for helping us test windows
2017-01-09 13:32:15 -08:00
chabou
0c71863560 Use local config file in dev. Fix #903 (#904)
* Use local config file in dev

* Fix typo

* Reuse path variable to compose localPath

* Fix lint errors
2017-01-04 20:05:19 -05:00
aoki
5773a83dc3 Bump win.show() back (#1316)
Bump `win.show()` back
2016-12-29 15:52:37 -05:00
Derek Kniffin
f2ffafbd10 Fix a bug related to the alpha hex calculation (#1048) 2016-12-21 21:31:30 -05:00
Philippe Potvin
ef5caeeb09 Reset bgColor (#1262)
* Reset bgColor

* remove unused

* add precisions comments
2016-12-19 08:17:26 -08:00
Mahmoud Al-Qudsi
5d1533c31d Using Consolas as the default font on Windows (#1196)
Consolas is the default fixed-width font on Windows Vista+ for
the Windows platform.
2016-12-17 14:34:07 -08:00
Guillermo Rauch
17df56d397 bump version + trigger build 2016-12-15 12:40:30 -08:00
Leo Lamprecht
23bff8b4b9
Hyper isn't just on macOS 2016-12-13 08:06:56 +01:00
Matheus Fernandes
2b3c49b1ec
Update hyper-news notification fetching 2016-12-12 13:04:32 -02:00
Brian Reber
7df5cbac08 Specify cols key when spawning pty shell (#1075)
The column size param in pty.js is named ‘cols’, but the shorthand
notation treats it as ‘columns’, causing the column count to not be
correct.
2016-12-07 12:28:41 -02:00
Brian Reber
e345ba4f60 Use homedir() from os package instead of env vars 2016-12-03 22:03:10 +01:00
Matheus Fernandes
6508d05e5f
Fix a regression introduced by #1058
Such regression broke the character composition/paste on macOS
2016-12-02 11:22:25 -02:00
Matheus Fernandes
be286c0d5a Fix keyboard shortcuts on Linux and Windows (#1058)
* `command` => `mod`

* `Option` => `Alt`

* Allow hterm to consume a keyboard event only if it's not a Hyper accelerator

* Remove `console.log`s

* Say no to bikeshedding

* We already clear the selection on `onKeyDown`

* Add comments

* Remove meaningless comment

* Add fullscreen shortcut for Windows and Linux

* Use the accelerators defined in `accelerators.js` for the app menu
2016-11-30 15:19:45 -05:00
Matheus Fernandes
833383a1cc
v1.0.0 2016-11-22 12:23:17 -02:00
Liudas Dzisevicius
0c30fc0bcf Add shell menu feature (#1017)
* Add shell menu feature

* Rename and remove cofig option
2016-11-22 10:06:03 -02:00
Dylan Frankland
a5b457ed13 Update old electron target engine for dependencies (#970)
This fixes dependencies of Hyper that build based on the engine being
used (`nodegit` for example).
2016-11-19 14:38:27 -02:00
Matheus Fernandes
b97b2dde7c
Bummp uuid to match the root package.json 2016-11-19 10:56:10 -02:00
Zach Buttram
fb2f1d8e1e Start the shell with the correct cwd on Windows (#1016)
* fixes zeit/hyper#1011

* more succinct fix for zeit/hyper#1011
2016-11-18 18:27:38 -02:00
Matheus Fernandes
27a20e0cfc Add support for composed chars and fix issues with "foreign" keyboard layouts (#1006)
* ime

* Fix code style

* Add visual feedback for composition events

* Temporarily disable `hterm`'s `onKeyDown` hacks

* Replicate the focus/blur state of our caret on the `hterm` caret

* Fix: focus our caret when there's a tab change

* `caret_` => `hyperCaret`

* Reorg: move the caret hacks to the `hterm.js` extensions

* Remove `console.log`

* Remove the `Dead key` hack and reenable keyboard commands

* Add a (temporary?) fix to re-enable text selection

* Check for a selection `onMouseUp` instead `onFocus`

* Fix wrong buggy hterm's cursor styling on term focus/blur

* Fix the cursor style after the bell rings – closes #674

* Enable `acceptFirstMouse` to focus the correct term – closes #861

* Fix code style

* Fix: clear the `hyper-caret` when a char is inserted via the IME dialog

* Remove useless function

* Add coments regarding text selection

* Fix code style
2016-11-16 10:44:04 -08:00
Matheus Fernandes
9c90e19760 Add Windows support and first-class Linux support (#946)
* `child_pty` => `pty.js`

* Create a frameless window on Windows and Linux

* Add a brand new UI for Linux and Windows 💅

* [Windows] Fix plugin installation

* [Windows] Fix the `build` script

* [Windows] Add a bigger `icon.ico`

* [Mac] Add `WebKitAppRegion: drag` when running on macOS

* Fix code style 🤔

* Add `appveyor.yml`

* Fix code style (again)

* [Windows] Fix AppVeyor's `install` script

* [Windows] Try a new AppVeyor config

* [Windows] Set the binary path so Spectron can run the tests

* [Windows] Try to build on x64

* Try again to build on x64

* Try one more time 😩

* Throw an error to indicate that `pty.js` was built incorrectly

* [Win/Linux] Add `display: hidden` to <Tabs /> if tabs.length === 1

* [Win/Linux] Reorganize SVGs – via @CodeTheory

* [Win/Linux] Fix the hamburger menu height

* Make the SVGs look better with `shape-rendering: crispEdges;`

* [Win/Linux] Add config options for the window controls and the 🍔 menu

* Add `electron-squirrel-startup` dependency

* [Win] Handle Squirrel commands

* [Win/Linux] Fix default color for the 🍔 and window controls – via @CodeTheory

* [Win/Linux] Add some padding - via @CodeTheory

* [Win/Linux] Add hover states – via @CodeTheory

* [Win] Fix empty window/tab titles

* [Win] Fix opening Preferences (#978)

* [Win] Fix opening Preferences

* Update ui.js

* Update ui.js

* Enhance messages and default editor

* [Win] Add dependency instructions to the README.md [skip ci]

* Fix code style

* [Win/Linux] Check the number of open windows before quitting the app
2016-11-11 15:18:04 -02:00
Vladimir Starkov
41d54d58de add onRendererWindow, because it actually available. check ./lib/utils/plugins.js:193 (#924) 2016-10-29 13:15:46 +02:00
Vladimir Starkov
7d05d0f148 increase timeout for update checks (#928)
* increase timeout for update checks

It seems like, there are lots of them and GitHub is not happy.
So increasing timeout 6x should fix that. In the end there is no need
to check updates every 5 minutes.

Fix #880

* restore check updates on start
2016-10-29 13:14:39 +02:00
Mike Engel
8cc47a498c Make the close menu items less ambiguous
@Tyriar brought up a good point in #123 that the close menu items can be
ambiguous and misleading. This clarifies them so you know exactly what
you're closing.

Fixes #123.
2016-10-25 22:34:28 -04:00
Vladimir Starkov
698cdb0e31 log plugins' errors in Electron console (#923)
Default `err.message` notification is not helpful,
because it lacks stack and context.

it doesnt hurt for end users to add `console.error(err)`,
because they arent gonna see it. Though, as far as `console.error`
is being logged in Electron console, developers will get
enough information to identify problems with plugin they are developing.
2016-10-23 09:42:58 -02:00
Andrea Parodi
97432df7a4 Improve tabs title (#892)
* Set tab title when asked by the contained shell process via ANSI code

* Commented out process polling code

* Removed unused module and constant

* Remove getTitle method

* Removed props binding

* Removed polling clearTimeout

* Removed session focus & blur

* Remove listening for session `title` event

* Removed SESSION_SET_PROCESS_TITLE action

* Removed remainig blur
2016-10-22 13:05:32 -07:00
Vladimir Starkov
3f772311db increase notification timeout up to 30m (#913)
fetchNotifications error can happen in two cases:
* https://hyper-news.now.sh is down
* you are offline

In both cases it doesn't hurt to wait half an hour.

PS. right now it hurts, when you are offline and developing
anything for Hyper, `console.error` logs the same error
every 10s and ruins your investigation.
2016-10-22 12:16:05 -07:00
Guillermo Rauch
a8b17e6322 0.8.3 2016-10-17 17:37:13 -07:00
Guillermo Rauch
91d3b9afbf 0.9.0 2016-10-17 17:23:20 -07:00
Guillermo Rauch
2ebb2369d1 Revert "Quick full screen (#803)"
This reverts commit 64e87d0d27.
2016-10-17 17:16:39 -07:00
Kyle Robinson Young
235b289bee Ignore file watch errors. Fixes GH-225 (#893) 2016-10-17 16:58:43 -07:00
Leo Lamprecht
83b47a553d
Make description match the repo's 2016-10-17 10:29:49 +02:00
Leo Lamprecht
a639965669
Remove duplicates from package files 2016-10-17 10:29:12 +02:00
Marshall Bowers
64e87d0d27 Quick full screen (#803)
* Add pseudo quick full screen

* Record window size before entering full screen

* Restore window size when leaving full screen

* Toggle menu items for quick full screen

* Remove redundant filters

* Add accelerators for Linux

* Only save window state when not full screen
2016-10-16 00:20:10 -05:00
Guillermo Rauch
d6009888a3 0.8.2 2016-10-15 17:47:28 -05:00
Guillermo Rauch
396a938ffc package: bump gaze to hopefully resolve uncaughts 2016-10-15 16:46:43 -05:00
Martin Ek
7a08b1dc3e Fix xo 0.17 errors and use root xo config for app (#859)
* Use parent xo config in app/

* lint: Fix xo 0.17 errors

* app: add missing semver dependency
2016-10-12 20:35:44 -05:00
chabou
ec9787fda4 Change default cursor opacity. Fix #869 (#870) 2016-10-12 19:42:28 -05:00
Hrvoje Šimić
7e71bf356b fix various typos and grammar errors in comments (#834) 2016-10-10 12:26:47 +02:00
Martin Ek
fe91b4c76e Refactor plugin retrieval (#695)
* plugins: refactor props decorators

* plugins: add missing plugin functions to notifier

* plugins: refactor reducer decorators

* bug: make sure reduceTermGroups are added from plugins
2016-10-08 14:38:47 -07:00
Daniel Bayerlein
aa285a8bc6 Cleanup (rename HyperTerm to Hyper) (#812)
* Rename container

* Rename hyper container itself

* Add HYPER_DEBUG for debug

* Rename HyperTerm to Hyper

* Rename HyperTerm connector and extension

* Add HyperTerm state and dispatch for backwards compatibility
2016-10-08 09:26:07 -07:00
Martin Ek
2ffc1aee3d Move notification fetching to the main process (#804)
* Move notification fetching to the main process

* Add npm run app
2016-10-07 20:28:40 -07:00
Daniel Bayerlein
6a5ddc0c70 HyperTerm 👉 Hyper.app 2016-10-06 19:33:08 +02:00
Guillermo Rauch
787fb0f604 lint 2016-10-06 08:31:31 -07:00
Guillermo Rauch
9f771e839f api updates 2016-10-06 08:28:43 -07:00
Guillermo Rauch
fd29fab068 Revert "package: update"
This reverts commit f3688c1fd6.
2016-10-05 09:21:27 -07:00
Guillermo Rauch
f3688c1fd6 package: update 2016-10-05 09:21:17 -07:00
Guillermo Rauch
689e73d3d8 change version 2016-10-04 20:02:26 -07:00
Martin Ek
540414f59d split panes: set hotkeys based on OS (#771) 2016-10-04 08:33:21 -07:00
Martin Ek
a7595c1a45 Split Panes (#693)
* npm: add .npmrc with save-exact=true

* split panes: create initial implementation

This allows users to split their Hyperterm terms into
multiple nested splits, both vertical and horizontal.

Fixes #56

* split panes: suport closing tabs and individual panes

* split panes: ensure new splits are placed at the correct index

New split panes should be placed after the currently active
pane, not at the end like they were previously.

* split panes: add explicit dependency to uuid

* split panes: implement split pane cycling

This adds menu buttons for moving back and forward between
open split panes in the currect terminal tab.
Doesn't add a hotkey yet, needs some bikeshedding.

* split panes: move activeSessionUid to its own object

It made little sense to have so many objects with `activeSessionUid`
set to `null` when it only mattered on the top level.
Now it's an object mapping term-group `uid` to `sessionUid` instead.

* split panes: make sure closing the last split pane exits the app

* split panes: fix a crash after closing specific panes

Sometimes the terminal would crash when a specific
split pane was closed, because the `activeSessions`
mapping wasn't updated correctly.

* split panes: fix a bug that caused initial session sizing to be wrong

* fix all our focus / blur issues in one fell swoop :O (famous last words)

* get rid of react warning

* hterm: make sure not to lose focus when VT listens on clicks

* term: restore onactive callback

* add missing `return` to override (just in case)

* split pane: new split pane implementation

* goodbye react-split-pane

* added term group resizing action and reducer

* terms: supply border color so that we can use it for splits

* term-group: add resizing hook

* term-groups: add resizing constant

* remove split pane css side-effect

* split panes: pass existing hterm instances to Term

* split panes: add keybindings for split pane cycling

* split panes: remove unused action

* split panes: remove unused styling

* split-pane: remove `console.log`

* split-pane: remove `console.log`

* split panes: rebalance sizes on insert/removal

* split panes: pass existing hterm instances to Term

* split panes: add keybindings for split pane cycling

* split panes: remove unused action

* split panes: remove unused styling

* split panes: rebalance sizes on insert/removal

* split panes: set a minimum size for resizing

* split-pane: fix vertical splits

* css :|

* package: bump electron

* split panes: attach onFocus listener to webviews

* 1.4.1 and 1.4.2 are broken. they have the following regression:
- open google.com on the main window
- open a new tab
- come back to previous tab. webview is gone :|

* split panes: handle PTY exits

* split panes: add linux friendly keybindings
2016-10-03 19:00:50 -07:00
Marshall Bowers
de1a01ff57 Preserve multi-byte encoded utf-8 characters (#769) 2016-10-02 09:54:27 -07:00
Philippe Potvin
7aa20a8d45 Memorize window position and size (#617)
* Memorize window position

* Memorize window size

* Add forced settings and window config

* use destructuring and shorthand method

* Set default config

* Use options defaults in createWindow

* Use options object only

* Update return function

* xo comply
2016-10-01 18:44:34 -07:00
Brandon Bayer
6959667589 fix: on Linux/Win, hide OSX specific menu items and change 'Shell' to 'File' (#736)
Based on this document:
https://github.com/electron/electron/blob/master/docs/api/menu.md#user-content-notes-on-os-x-application-menu
2016-10-01 18:07:23 -07:00
Leo Lamprecht
ee1405997d
Let xo handle all directories 2016-09-22 07:41:07 +02:00
Krzysztof Kaczor
bbf0af66b2 Improve developer pleasure (#556)
* single command to run webpack and app

* added dev tools and custom store for development mode only

* fix linter issues
2016-09-21 15:11:42 -07:00
Matheus Fernandes
1866104d03 [WIP] Use XO instead of Standard (#723)
* Bump `eslint-plugin-react`

* Add `eslint-config-xo-react`

* Add XO

* Remove eslint-related dependencies, add XO config and use XO as the linter

* Code style: Standard => XO 

* Use xo property to ignore files

* Fix remaining errors
2016-09-21 16:27:11 +02:00
Brandon Bayer
32a665d7c0 feat: in development, use git-describe for appVersion (#729)
Normally appVersion is set from package.json
closes #718
2016-09-20 19:51:15 -03:00
Daniel Bayerlein
d610104a7a Add missing color dependency (#725) 2016-09-20 13:49:30 -03:00
Guillermo Rauch
8a01f8a48b Add window bgcolor updates (#524)
* transparent + reactive background colors

* refactor header to not set its own background color

* make terms not set background color

* dramatically improve tab borders

* remove background color from electron windows

* Revert "remove background color from electron windows"

This reverts commit ca4de3c5dc28095f1a598f7ac79d4dff4b66ccd5.

* put alpha first for electron

* remove initial bg color setting, but maintain reactive one

* fix
2016-09-19 08:47:33 +02:00
Leo Lamprecht
fbe0c9c556
Increment version tag 2016-09-15 09:23:57 +02:00
Leo Lamprecht
ae9a583b9f
These can be self-closing 2016-09-11 01:34:20 +02:00
Matheus Fernandes
3be8ffd486 Fix: do not throw when shellArgs is not present in .hyperterm.js (#678)
See dfcb0a9629 (commitcomment-18834267)
2016-08-31 23:33:01 -03:00
Brandon Bayer
dfcb0a9629 fix: errors and crashes on Linux because shellArgs being mutated (#662)
Fixes #661
2016-08-29 19:05:00 -03:00
Brian Douglas
9a0316dd59 issue-656/config-values-arent-scoped (#669)
* issue-656/scoped plugins to hyperterm.plugins

* Scoping plugin versions to hyperterm
2016-08-29 16:38:05 +02:00
Leo Lamprecht
56f718a0f4 Adjusted author 2016-08-20 09:47:30 +02:00
tim neutkens
c8784c2d08 Rename Actual Size to Reset Zoom Level #124 2016-08-20 00:44:04 +02:00
chabou
f0b049b2e3 Fix session exiting (#560)
* Fix session exiting

* Restore original flow and just remove listeners on session when exiting

* Prevent sending data from pty after session exited
2016-08-19 22:19:04 +02:00
Philippe Potvin
fd351a5b93 Provide clear selection of text in terminal view (#608)
* Permit clearSelection on text enter and mouse selection. Fix #591

* Add config for copyOnSelect

* Update with descriptive comment
2016-08-13 23:03:44 +02:00
Efe Gürkan YALAMAN
77597da1d3 Added shellArgs to the config. (#572)
In case someone wants to use non-login shells there is a field added to
the configuration file.
If shellArgs not set default shell will be used as before.

i.e. for using interactive shell (and use .bashrc instead of
.bash_profile on linux) use shellArgs: ['-i'] and shell: '/bin/bash'
this is useful especially if you are on Linux.
2016-08-13 21:30:17 +02:00
James Hall
518b0cd9a5 Open new window offset from last focused window (Credit: albinekb) (#581)
* Open new window offset from last focused window

* Make sure a newly opened window is seen to now have focus

* Instead of setting focus time, simply emit the event first

* Add comment explaining why we emit the focus event

* Don't fire the event, as that can make it fire twice
2016-08-06 11:58:57 +01:00
Albin Ekblom
f954a1e7bc Add config for bell (#468)
* Add config for bell

* Use Set instead
2016-08-05 23:30:40 +01:00
Lorenzo Zottar
3dd8eadc90 Moved "file-uri-to-path" dep to app package.json (#569) 2016-08-05 10:03:49 +01:00
Lorenzo Zottar
9d65cb74c0 File dropped into terminal window adds path to command line (#559)
* Added file-uri-to-path dependency

* Added new rpc event to send data to session

* Modified sendSessionData to use activeUid if no uid is passed to function

* "will-navigate" prevented on file drop, path added to session
2016-08-04 14:43:57 +01:00
James Hall
77a103fbf1 [WIP] Add proper window support (#547)
* Add proper window support to both the top menu, and the dock

* Sort out linting

* Only create dockMenu on Mac

* Remove label from menu as it is not needed when using role

* Fix spacing
2016-08-04 01:52:31 +01:00
Matheus Fernandes
f175268912 Add the very first test 🎉 (#549)
* Add syntactic support for tags - #412
* Add the very first test 🎉
* Simplify multiple assertions into one
2016-08-03 16:39:58 -03:00
Mike
2d4b518519 Prevent hovering on tabs from causing text flicker (#492)
* Prevent hovering on tabs from causing text flicker

For some reason, geometricPrecision was causing text to flicker on
non-retina screens when hovering over the tabs

* Use a pixel ratio media query for text-rendering on retina displays
2016-08-02 12:09:54 -07:00
Richard Zhao
011ae3fd52 Add support for environment variables in config (#534)
* Allow env to be specified in config (#424)

This is referencing #424. User specified environment variables
in the `.hyperterm.js` file are expected under a field named `env`.

An example config:

```
module.exports = {
  config: {

    ...

    // Environment variables
    env: {
      WHAT_UP: 'heyo',
    }

    ...

  },

  plugins: [],

  localPlugins: []
};
```

* Add env field to default config
2016-08-02 08:49:25 +01:00
James Hall
c9fe3d82db Add support for opening the terminal on the correct display (#519)
* Add support for opening the terminal on the correct display

* Fix whitespace issue

* Start from the top left again when we run out of space

* Add semicolon
2016-08-02 01:00:49 +01:00
Lorenzo Zottar
7e941b0451 Handling file opening (#329)
* Add function to escape a shell argument.

* Keep track of the last used window.

* Implement support for the open-file event.

* The shell escape regex needs parentheses to be captured.

* Removed lastWindow and added getLastFocusedWindow method to app

* Create window create new session only if no callback passed

* Added app.windowCallback to handle open-file before "ready"

* Small lint fixes

* Differeent open file handling: check if it is directory, and if the file is executale or not

* Small fixed and added some comments

* Added php-escape-shell module in place of custom escapeShellArgument()

* Fixed wrong code and added detailed comment

* Aliased php_escapeshellcmd import

* Rebased; added error handling in OpenFile

* changed string contatenation with template literal

* Pinned php-escape-shell dependency

* Typo fix

* getLastdFocusedWindow now uses Array.prototype.reduce()

* Notify users of unexisting path while open file
2016-08-01 23:52:21 +01:00
Albin Ekblom
3198a90823 Use configured shell to update plugins (#447)
* Use configured shell to update plugins

* Make it more compatible

* Use shell-env@0.2.0
2016-07-30 20:51:09 +02:00
Guillermo Rauch
988f32e373 make the auto updater work on windows (#514) 2016-07-29 21:12:53 -07:00
Darin Morrison
60fbc122a8 Fix #467 and #206; quit app on window close (#489) 2016-07-29 21:12:21 -07:00
Darin Morrison
d05d82cb32 Use babel for minification (#471) 2016-07-27 19:02:19 -07:00
Ayhan
72059a7d93 Fix Close process (#450)
* fix close process

* fix control

* fix lint
2016-07-26 20:11:54 -07:00
Ayhan
ce357c72be Revert "Fix close process" (#451) 2016-07-26 20:11:38 -07:00
Ayhan
ed2c810c9f fix close process (#448) 2016-07-26 20:06:43 -07:00
Darin Morrison
4e04d1c4b1 Adjust eslint configuration (#389) 2016-07-26 16:39:47 -07:00
Darin Morrison
86416cebdf Update dependencies (#390)
⬆️ electron-builder@5.16.0
⬆️ electron-prebuilt@1.3.0
⬆️ husky@0.11.6
2016-07-26 16:39:11 -07:00
Mike
05eba4b521 Update shell after config change and notify the user (#405) 2016-07-26 16:37:42 -07:00
Guillermo Rauch
9c50fd5148 really fix utf-8 now 2016-07-26 12:16:57 -07:00
Guillermo Rauch
60ad05f374 app: bump package.json version 2016-07-26 11:40:36 -07:00
Guillermo Rauch
27b2cd718e session: suffix UTF-8 to locale
cc @ekmartin @heathervv
2016-07-26 11:26:06 -07:00
Guillermo Rauch
05b491f62c revert --ignore-scripts 2016-07-26 11:01:09 -07:00
Jacob Wunder
5764b31e26 Server now extends EventEmitter instead of creating and EventEmitter instance (#406) 2016-07-26 10:47:18 -07:00
Guillermo Rauch
0699d266cd fix app/package.json for debian build 2016-07-25 15:52:39 -07:00
Guillermo Rauch
0e84fd1965 pin uuid 2016-07-25 11:33:16 -07:00
Albin Ekblom
c88c93a622 🔥 Use uuid (#393) 2016-07-25 11:01:01 -07:00
Guillermo Rauch
cb84548623 for now, pin npm_config_target version as it falls outside of the distribution package 2016-07-25 10:30:20 -07:00
Guillermo Rauch
6267899a27 Release 0.7.0 2016-07-25 10:22:41 -07:00
Guillermo Rauch
91991a2e38 update .eslintignore 2016-07-24 13:35:05 -07:00
Guillermo Rauch
9a28ff302f index: prevent double sesson exit (#380) [@timneutkens] 2016-07-24 11:13:17 -07:00
Martin Ek
8c53d25b71 Add decorateEnv to the extensions API (#370)
* plugins: add decorateEnv to the extensions API

* session: replace - with _ in LANG

* plugins: refactor the at-least-one extension check
2016-07-24 11:03:24 -07:00
Guillermo Rauch
aaed99abac Reorg (#386)
* Step 1: move electorn into `app/`.

This is to comply with the suggested directory format of
`electron-builder`: https://github.com/electron-userland/electron-builder#two-packagejson-structure

* Step 2: add build directory with icon files for mac / windows

* Step 3: move all development (web) assets into main directory

* Step 4: add `build` namespace to dev `package.json`

* Step 5: move all dev dependencies into dev file and get rid of
old electron packagers in favor of `eletorn-builder`

* Step 6: target build inside `app/` as everything else is excluded at build time

* Step 7: remove old stuff!

* Step 8: update README

* turn off asar for `child_pty`
2016-07-24 10:59:21 -07:00
Guillermo Rauch
c4a1423818 Revert "Use node6 es2015 features; remove extra transforms (#327)"
This reverts commit 9e3fe9228d.

@freebroccolo while great in theory, this breaks uglifyjs.
minification provides an important advantage in interpretation
time (and therefore reduced bootup time)
2016-07-23 13:26:30 -07:00
Martin Ek
6e79beafd4 app: correctly dispatch ui actions (#369) 2016-07-22 17:26:05 -07:00
Martin Ek
4849dfe96b app: move to the last term with cmd+9 (#261)
This mimics the behavior of Chrome, Firefox, iTerm 2 and similar,
by moving to the last possible tab when Command + 9 is pressed.

Fixes #255.
2016-07-22 12:38:15 -07:00
Guillermo Rauch
f989224a20 term: make sure shim doesn't capture clicks 2016-07-22 11:49:25 -07:00
Nick Christensen
1af99f1338 Add ctrl+tab/ctrl+shift+tab for tab switching (#367) 2016-07-22 10:34:37 -07:00
Nathan Rajlich
8e86883989 fix lint (#351)
* fix lint

* restore `notify` require, add eslint disable comment
2016-07-21 20:26:10 -07:00
William
2e9ac60b2b Add middle click to close tab functionality (#286) 2016-07-21 17:33:10 -07:00
Oskar Cieslik
e66d6c90f0 Add support for multiple cursor shapes (#352)
* Add config support for cursor shapes

* Add cursorShape to default config
2016-07-21 16:15:23 -07:00
Rafael Specht da Silva
0c3d25dd19 fixing syntax error 'missing parenthesis' on ui.js when running 'npm run dev' (#353) 2016-07-21 15:57:52 -07:00
Mike
400d70e9df Allow the color config to be an object (#193)
* Allow the `color` config to be an object

It only covers the ANSI 16 as named colors, but allows for an array to
be used if the full color palette wants to be overridden.

* Better handling for array color configs vs. object configs
2016-07-21 12:24:00 -07:00
Darin Morrison
9e3fe9228d Use node6 es2015 features; remove extra transforms (#327) 2016-07-21 12:18:07 -07:00
Harrison Harnisch
51b72325f2 configurable cursor opacity (#76) 2016-07-21 12:07:19 -07:00
Darin Morrison
c83f1563b4 Hook scripts (#328)
* Add commit hooks

* Fix linter issue
2016-07-21 11:57:45 -07:00
Blake Embrey
ab058e6e8b Update rounded header radius (#333)
Closes #332
2016-07-21 11:54:53 -07:00
Kyle Holzinger
392ce6b127 specify bash to run command in (#314) 2016-07-20 15:22:36 -07:00
Darin Morrison
513bdb3941 Update dependencies (#319) 2016-07-20 15:22:09 -07:00
Darin Morrison
6072b4ca90 Fix linter issues (#321) 2016-07-20 15:21:29 -07:00
Marc Bachmann
3b08c68d97 Disable pinch zoom functionality (#326) 2016-07-20 15:20:40 -07:00
Mike
a81771b27d Fix prop update logic for fontSmoothing (#302) 2016-07-20 10:08:54 -07:00
Jonathan Cuthbert
a2363c52bd allow opening of files in webview (#305) 2016-07-20 10:08:12 -07:00
Mike
b76e004309 Dynamically change the font-smoothing pref (#205)
* Dynamically change the `font-smoothing` pref

By default, hterm defaults to `font-smoothing: 'antialiased'`, which
works really well on retina displays. On non-retina displays, however,
the type looks very thin and is hard to read.

This will look at the devicePixelRatio of the device anytime the term
prefs are set, and change between `antialiased` and
`subpixel-antialiased` dynamically.

* Refactor to add the font smoothing override into state

This also subscribes to the electron `move` event to control when this
piece of state gets updated.

* Add UI_WINDOW_MOVE action with a side effect for font smoothing
2016-07-19 11:30:57 -07:00
Marc Bachmann
961a39e8f3 Add cursor actions (#217)
* Add cursor actions

* Use Command+Option+Left shortcuts to change tabs

This changes the behavior the ones of sublime & chrome
2016-07-19 10:48:11 -07:00
Mauro Otonelli
a8de019665 Override the buggy hexToRGB implementation in hterm. (#272) 2016-07-19 10:46:26 -07:00
Harrison Harnisch
7a3d661afd add reducer to set cwd (#271) 2016-07-19 10:45:28 -07:00
Pierre Margueritte
fee4acbf5a Fix #88 (#279) 2016-07-19 10:43:52 -07:00
Sean Zhu
610d6c6d3e Make preference-opening command universal (#267)
The `$EDITOR ~/.hyperterm.js && exit` requires that the default shell recognize variables as commands and to recognize the `&&` syntax, so it does not work with fish shell. The new command works with all common shells, including fish.
2016-07-18 16:59:16 -07:00
Marc Bachmann
b6e5bf63c7 Remove unused state variable (#268) 2016-07-18 16:58:50 -07:00
Conor Hastings
e073de9aea remove unnecessary comment referencing use of !important due to aphrodite" (#223) 2016-07-18 15:16:02 -07:00
Martin Ek
1214d26323 app: close window when last tab is exited (#263) 2016-07-18 15:12:14 -07:00
Jason Miller
08fc3311f9 Remove unnecessary/odd addEventListener in Term component unmount hook (#242) 2016-07-18 09:44:01 -07:00
Marc Bachmann
112baec8d0 Make CMD + K work for all commands, even tail (#215) 2016-07-17 19:52:29 -07:00
Mauro Otonelli
af945e064c Fixed some documentation typos. (#212) 2016-07-17 14:05:37 -07:00
Marc Bachmann
2ecc23fe1f Hide scrollbar when webview is active (#209) 2016-07-17 13:38:02 -07:00
Guillermo Rauch
a5cfe76c61 notification style improvements and link to release notes upon updates 2016-07-17 13:02:34 -07:00
Teemu Kallio
3d7f6fa060 Fixing problems with alt key and special characters like å, ö and ä. (#201) 2016-07-17 10:18:01 -07:00
Hoony
e85f1658ef change the version of eslint-config-standard from 5.3.1 to 5.3.5 (#166)
the previous dependencies between eslint and eslint-config-standard
return the following warn and error.

```
npm WARN peerDependencies The peer dependency eslint@^2.0.0-rc.0
included from eslint-config-standard will no
npm WARN peerDependencies longer be automatically installed to fulfill
the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to
depend on it explicitly.
```
```
npm ERR! peerinvalid The package eslint@3.0.1 does not satisfy its
siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer eslint-config-standard@5.3.1 wants
eslint@^2.0.0-rc.0
```
so updated the version of eslint-config-standard from 5.3.1 to 5.3.5
which is the newest now.
2016-07-16 18:30:26 -07:00
Harrison Harnisch
04c0b1acff Provide hooks to open a new tab to the same directory (#174)
* provide a cwd for #4

* expose a pid for #4
2016-07-16 15:41:13 -07:00
Guillermo Rauch
4863fe581b app: preserve class names with uglification 2016-07-16 11:58:08 -07:00
Guillermo Rauch
e2ebbf4e5e config: reload config upon plugins change due to decoration 2016-07-16 11:57:42 -07:00
Guillermo Rauch
25027c12a3 config: actually use decorateConfig hook 2016-07-16 11:54:48 -07:00
Guillermo Rauch
87bac682a7 app: expose plugins and config to window which plugin authors might want 2016-07-16 11:54:21 -07:00
Guillermo Rauch
450e337e11 use inline styles overrides :)
cc @jedwatson
2016-07-16 11:54:03 -07:00
Guillermo Rauch
bee6ba0072 component: switch to our fork of aphrodite that prevents !important 2016-07-16 11:53:40 -07:00
Guillermo Rauch
470b7477e8 remove override style utility 2016-07-16 11:53:04 -07:00
Guillermo Rauch
5ba9f27c5d performance improvements 2016-07-14 16:40:15 -07:00
Guillermo Rauch
81bfbd6006 term: fix resize events 2016-07-14 15:02:13 -07:00
Guillermo Rauch
ac689c8b8b terms: improve write performance 2016-07-14 09:26:23 -07:00
Guillermo Rauch
8caadca66c remove unused import 2016-07-14 09:26:23 -07:00
Guillermo Rauch
06be0e2fb1 fix font size keyboard shortcuts 2016-07-13 22:37:46 -07:00
Guillermo Rauch
4a37d3b3d3 index: expose store in window, use store_ internally 2016-07-13 22:19:32 -07:00
Guillermo Rauch
f4474e747d add unload hooks 2016-07-13 22:18:06 -07:00
Guillermo Rauch
343f3396e0 plugins: remove renderer code for notifications 2016-07-13 19:07:38 -07:00
Guillermo Rauch
4a59c13c77 performance improvement 2016-07-13 17:21:23 -07:00
Guillermo Rauch
5e3e2c6a7d sessions: dispatch init to rpc as a side effect of first session add 2016-07-13 16:32:52 -07:00
Guillermo Rauch
05bac56e35 remove logger 2016-07-13 15:13:28 -07:00
Guillermo Rauch
477e40e433 refactor 2016-07-13 13:45:14 -07:00
Guillermo Rauch
d6a2ea0019 cleanup 2016-07-09 10:09:32 -07:00
Guillermo Rauch
412717ce0e tabs: transform to Component for consistency 2016-07-08 17:33:39 -07:00
Guillermo Rauch
64a94788ef package: restore the babel classes transform as native es6 classes weren't
playing well with react-proxy O.o
2016-07-08 17:33:07 -07:00
Guillermo Rauch
55dea3037b hyperterm: cleanup 2016-07-08 17:32:56 -07:00
Guillermo Rauch
5d4d76a2fe hyperterm: fix race condition 2016-07-08 16:01:07 -07:00
Guillermo Rauch
4fdeb59d7e stop minifying as it doesn't improve performance significantly 2016-07-08 16:00:51 -07:00
Guillermo Rauch
25624494ad react prod build 2016-07-08 14:51:48 -07:00
Guillermo Rauch
2d8c6c3d89 hyperterm: remove active marker correctly when closing a tab and marking a new one as active 2016-07-08 14:28:29 -07:00
Guillermo Rauch
1e5e3576cd implement custom CSS from config 2016-07-08 14:27:41 -07:00
Guillermo Rauch
4d99089afb improve decoration with persistent state with react-proxy 2016-07-08 14:26:38 -07:00
Guillermo Rauch
1265528b13 clean up and refactor 2016-07-08 11:48:24 -07:00
Guillermo Rauch
9960c239cd tabs: fix close mark position 2016-07-08 07:57:03 -07:00
Guillermo Rauch
8c0d94aa1d improve config notifications 2016-07-08 07:40:27 -07:00
Guillermo Rauch
7ab272a9fe fix padding 2016-07-08 07:39:51 -07:00
Leo Lamprecht
647d024a39 Centered traffic lights & disabled text selection for indicator (#36)
* Disallow text selection within indicator

* Fix size of menu

* More spacing within text element

* Make traffic lights inset
2016-07-08 06:03:40 -07:00
Guillermo Rauch
aa5441bea4 app: add es2015 babel preset so that we can uglify :\ 2016-07-07 22:24:51 -07:00
Guillermo Rauch
ff2419c54b border color configuration support 2016-07-07 20:37:58 -07:00
Guillermo Rauch
1582b7204c whitelist Notification global 2016-07-07 20:10:43 -07:00
Guillermo Rauch
ffe419f26f fix lint 2016-07-07 20:03:38 -07:00
Guillermo Rauch
9aff04acf3 hyperterm: set global background color 2016-07-07 17:25:56 -07:00
Guillermo Rauch
9f635021c9 first pass at plugins system 2016-07-07 17:16:44 -07:00
Guillermo Rauch
eb147d9b9a config: add plugins hook and decoration 2016-07-07 17:15:42 -07:00
Guillermo Rauch
c693a46896 hyperterm: normalize our events :D 2016-07-07 16:23:01 -07:00
Guillermo Rauch
e39143e4cd hyperterm: exit after editing 2016-07-07 14:37:28 -07:00
Guillermo Rauch
1993ca576f app: get config preferences and not plugins 2016-07-07 13:48:55 -07:00
Guillermo Rauch
80fc25c6a4 make term configurable 2016-07-07 08:53:23 -07:00
Guillermo Rauch
043c9c86da hyperterm: implement font size config 2016-07-07 08:28:46 -07:00
Guillermo Rauch
318f684da4 add <Config> higher order component heavily inspired by @nfcampos (#59) 2016-07-07 08:15:03 -07:00
Guillermo Rauch
98e45a500f webpack: ignore electron, fix optimization 2016-07-07 07:47:10 -07:00
Guillermo Rauch
d3322090a1 add support for editing preferences with cmd+, (#52) 2016-07-07 06:31:03 -07:00
Guillermo Rauch
952c328e01 lint 2016-07-07 06:30:51 -07:00
Guillermo Rauch
f6b0277438 display first line of release notes as update note 2016-07-07 00:19:54 -07:00
Guillermo Rauch
08a106312d remove old updater and add update dismissing 2016-07-07 00:13:53 -07:00
Matias Tucci
461f7d9430 electron auotupdater 2016-07-06 21:42:41 -07:00
Matias Tucci
20aa12d526 uodate indicator styles 2016-07-06 21:42:41 -07:00
Johan Brook
bfefc2d74e Add close cross for tabs (#58)
* Add .DS_Store to gitignore

* Add SVG icon component

* Add button for closing a tab (re: #40)

* Use external icon sheet for icons
2016-07-06 16:39:26 -07:00
Harrison Harnisch
88501ecef9 improved default color palette (#61) 2016-07-05 20:33:39 -07:00
Nuno Campos
ea8ca82186 font size improvements (#57)
* font size improvements
- fixed keyboard shortcut registering (listeners were being called twice)
- now saving fontSize in the state of Hyperterm
- Term now accepts fontSize as a prop and internally sets it
- added font size indicator on change (next to rows x cols)

* linting

* removed font size shortcuts from Hyperterm component, still in electron

* only show font size indicator when it has changed

* clean up fontSizeIndicatorTimeout on unmount, changeFontSize 2nd arg is now an options object
2016-07-05 17:08:45 -07:00
Guillermo Rauch
222064fd03 term: support for urls in fish
cc @paulirish
2016-07-05 13:33:27 -07:00
Guillermo Rauch
01689af952 term: handle legacy sh shell 2016-07-05 13:22:57 -07:00
Guillermo Rauch
951044c17e fix url handling in zsh (#50) 2016-07-05 13:14:30 -07:00
Guillermo Rauch
ed30007ec4 implement most recent hterm with lots of bugfixes 2016-07-04 20:59:40 -07:00
Guillermo Rauch
814677f3b0 lint 2016-07-04 20:09:43 -07:00
Guillermo Rauch
b79b34094f term: cross-platform font family settings (#26) 2016-07-04 19:08:45 -07:00
Guillermo Rauch
a10af11591 remove xterm.css (no longer used) 2016-07-04 19:07:26 -07:00
Guillermo Rauch
a57aedc1db Revert "term: hide them scrolbars (#42)"
This reverts commit fd0c330d98.
2016-07-04 19:05:16 -07:00
Guillermo Rauch
fd0c330d98 term: hide them scrolbars (#42) 2016-07-04 19:02:21 -07:00
Jeff Haynie
55ac59c897 change font size with command shortcuts (#34)
* add standard behavior when you double click window title to maximize/unmaximize the window

* increase/decrease font sizes with command + / -

* DRY up code. added reset to reset font to original size. added window accelerators
2016-07-04 18:39:14 -07:00
Guillermo Rauch
cf0a5783c5 implement a more reasonable update interval check frequency (#33) 2016-07-04 18:13:44 -07:00
Guillermo Rauch
33e3d487a1 minor syntax cleanup (2 vs 4 spaces) and clear clickTimer timeout 2016-07-04 18:01:32 -07:00
Jeff Haynie
50fdbf2ef7 add standard behavior when you double click window (#32)
* add standard behavior when you double click window title to maximize/unmaximize the window

* reset on unmount and added comments about click vs. double click
2016-07-04 17:48:38 -07:00
Guillermo Rauch
45292f33d5 improvements to update checker 2016-07-03 15:12:35 -07:00
Guillermo Rauch
e2215a3413 term: fix edge case when clearing after a screen clear 2016-07-03 14:11:45 -07:00
Guillermo Rauch
d8e841a3d8 Implement hterm (#28)
* remove legacy css

* hyperterm: delegate rows / cols calculation to hterm

* session: handle pty kill problems

* index: fix memory leak by removing sessions from the map upon exit

* app: remove local copy of `xterm.js`

* term: implement the `hterm` API and some needed overrides

* package: add `hterm-umd`

* hyperterm: add optimistic tab exit

* hyperterm: delegate key combination detection to the hterm <iframe> document

* term: register keyboard

* session: fix incorrect width after resizing and creating a new tab (#13)

* tabs: fix `user-select` css property

* term: fix focus issue when exiting a url

Instead of uninstalling the keyboard, we keep the
focus on the underlying terminal.

We register a new IO handler so that we intercept
all data events.

The reason we need to do this is that we can't
programmatically restore focus on the underlying
terminal unless it's in the same tick as a user
event (ie: click).

Since we were uninstalling the keyboard and
subsequently attempting to reinstall it without
such an event, pressing Ctrl+C after a url was
effectively resulting in a loss of focus and a
horrible horrible experience.

Now it's fixed :)

* text-metrics: remove module no longer used

hterm has a much better calculation technique anyways

* term: fix default bg

* term: fix nasty hterm bug that triggered an infinite copy loop

* index: add separator in `View` menu for full screen item

* term: implement cmd+K clearing and improve hterm's `wipeContents`
2016-07-03 13:35:45 -07:00
Guillermo Rauch
c0394e7764 css: fix "Download" link being clickable when hidden (#7) 2016-07-02 15:43:08 -07:00
Guillermo Rauch
b22d310c99 hyperterm: jump to begining of end at edges of tabs when moving sideways (#22) 2016-07-02 15:32:00 -07:00
Guillermo Rauch
0892122d6d hyperterm: add support for cmd+shift+[|] (#11) 2016-07-02 11:05:50 -07:00
Guillermo Rauch
09c85e8069 hyperterm: add ctrl+c for closing <webview> instead of cmd+w (#2) 2016-07-02 10:53:39 -07:00
Guillermo Rauch
bb8a93d5c8 add some missing deps 2016-07-01 14:31:23 -07:00
Guillermo Rauch
db21e8e87d add auto update checking 2016-07-01 13:01:33 -07:00
Guillermo Rauch
e34554398f clarify first metric 2016-06-30 23:08:12 -07:00
Guillermo Rauch
f3f15f79fb ignore dist dir 2016-06-30 23:04:47 -07:00
Guillermo Rauch
b8e39e0e23 ignore npm-debug.log 2016-06-30 23:04:24 -07:00
Guillermo Rauch
1a1178bd38 initial commit 2016-06-30 23:01:04 -07:00