Commit graph

147 commits

Author SHA1 Message Date
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