Giter Club home page Giter Club logo

atom-terminal-tab's People

Contributors

austincondiff avatar daviwil avatar edjubuh avatar fradelg avatar hebarusan avatar jsmecham avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

atom-terminal-tab's Issues

Provide pre-built packages for binary components of node-pty

The node-pty module depends on some native code that gets compiled on the user's system when it gets installed. Since many users won't have these build dependencies (Python, C++ compiler, etc), we should find a way to provide pre-built binaries that work against the more recent versions of Electron that Atom depends on.

We'll need packages for Windows, macOS, and Linux so it's likely we'll need to use multiple CI providers (CircleCI, Travis CI and AppVeyor perhaps) to build artifacts on those platforms. Once built we could upload these dependencies to the GitHub release entry for the version number so that they can be pulled down by the package either at install time or on first load.

Won't install

MacOS Sierra 10.12.5
Atom 1.18.0-beta0
apm 1.18.1

apm i atom-terminal-tab
Installing atom-terminal-tab to /Users/Dan/Library/Application Support/Atom/packages ✗

> [email protected] install /private/var/folders/rg/4lc94q1x1_xd89qsnjdkgsjw0000gn/T/apm-install-dir-117418-46194-1269cvw.7bdpshsemi/node_modules/atom-terminal-tab/node_modules/node-pty
> node scripts/install.js

CXX(target) Release/obj.target/pty/src/unix/pty.o
/private/var/folders/rg/4lc94q1x1_xd89qsnjdkgsjw0000gn/T/apm-install-dir-117418-46194-1269cvw.7bdpshsemi
└── (empty)

2017-05-18 23:50:23.348 xcodebuild[46216:7399968] [MT] PluginLoading: Required plug-in compatibility UUID DFFB3951-EB0A-4C09-9DAC-5F2D28CC839C for plug-in at path '/Library/Application Support/Developer/Shared/Xcode/Plug-ins/WakaTime.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2017-05-18 23:50:23.350 xcodebuild[46216:7399968] [MT] PluginLoading: Required plug-in compatibility UUID DFFB3951-EB0A-4C09-9DAC-5F2D28CC839C for plug-in at path '
/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin' not present in DVTPlugInCompatibilityUUIDs
clang: error: no such file or directory: 'Support/Atom/.node-gyp/.node-gyp/iojs-1.3.15/include/node'
clang: error: no such file or directory: 'Support/Atom/.node-gyp/.node-gyp/iojs-1.3.15/src'
clang: error: no such file or directory: 'Support/Atom/.node-gyp/.node-gyp/iojs-1.3.15/deps/uv/include'
clang: error: no such file or directory: 'Support/Atom/.node-gyp/.node-gyp/iojs-1.3.15/deps/v8/include'
make: *** [Release/obj.target/pty/src/unix/pty.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/Applications/Atom Beta.app/Contents/Resources/app/apm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Darwin 16.6.0
gyp ERR! command "/Applications/Atom Beta.app/Contents/Resources/app/apm/bin/node" "/Applications/Atom Beta.app/Contents/Resources/app/apm/node_modules/.bin/node-gyp" "rebuild"
gyp ERR! cwd /private/var/folders/rg/4lc94q1x1_xd89qsnjdkgsjw0000gn/T/apm-install-dir-117418-46194-1269cvw.7bdpshsemi/node_modules/atom-terminal-tab/node_modules/node-pty
gyp ERR! node -v v6.9.5
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm WARN enoent ENOENT: no such file or directory, open '/private/var/folders/rg/4lc94q1x1_xd89qsnjdkgsjw0000gn/T/apm-install-dir-117418-46194-1269cvw.7bdpshsemi/package.json'
npm WARN apm-install-dir-117418-46194-1269cvw.7bdpshsemi No description
npm WARN apm-install-dir-117418-46194-1269cvw.7bdpshsemi No repository field.
npm WARN apm-install-dir-117418-46194-1269cvw.7bdpshsemi No README data
npm WARN apm-install-dir-117418-46194-1269cvw.7bdpshsemi No license field.
npm ERR! Darwin 16.6.0
npm ERR! argv "/Applications/Atom Beta.app/Contents/Resources/app/apm/bin/node" "/Applications/Atom Beta.app/Contents/Resources/app/apm/node_modules/npm/bin/npm-cli.js" "--globalconfig" "/Users/Dan/Library/Application Support/Atom/.apm/.apmrc" "--userconfig" "/Users/Dan/Library/Application Support/Atom/.apmrc" "install" "/private/var/folders/rg/4lc94q1x1_xd89qsnjdkgsjw0000gn/T/d-117418-46194-ngg2st.ed0246ajor/package.tgz" "--runtime=electron" "--target=1.3.15" "--arch=x64" "--global-style"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node scripts/install.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node scripts/install.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the node-pty package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node scripts/install.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs node-pty
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls node-pty
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! /private/var/folders/rg/4lc94q1x1_xd89qsnjdkgsjw0000gn/T/apm-install-dir-117418-46194-1269cvw.7bdpshsemi/npm-debug.log
npm ERR! code 1

Enhancement: Redirect opening a file to a different pane.

It is extremely unlikely that a user wants a terminal and a document to share a pane. If terminal is focused, it would be ideal if in any attempts to open a file caused that file to open in a pane that already contains documents, or an empty pane if there are no panes containing documents, or a new pane if there are also no empty panes.

Copy/paste

It's not possible to copy or paste from/to the terminal.

It would be useful (1) to have at least an item to do so in the right-click menu, and (2) to bind a keyboard shortcut (something like Ctrl + Shift + C/V).

Uncaught TypeError: activeTerminalView.clear is not a function

To reproduce:

  1. Press cmd-k to clear terminal when terminal is in focus

Atom: 1.18.0 x64
Electron: 1.3.15
OS: Mac OS X 10.12.5
Thrown From: atom-terminal-tab package 0.2.2

Stack Trace

Uncaught TypeError: activeTerminalView.clear is not a function

At /Users/griley/.atom/packages/atom-terminal-tab/lib/terminal.js:58

TypeError: activeTerminalView.clear is not a function
    at Object.handleClear (/packages/atom-terminal-tab/lib/terminal.js:58:24)
    at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:265:35)
    at /Applications/Atom.app/Contents/Resources/app/src/command-registry.js:3:65
    at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:610:22)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:401:28)
    at KeymapManager.module.exports.KeymapManager.terminatePendingState (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:591:20)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:449:27)
    at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:100:42)
    at HTMLDocument.<anonymous> (/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:3:65)

Commands

     -7:20.6.0 core:backspace (input.hidden-input)
  2x -7:19.2.0 core:save (input.hidden-input)
     -3:36.4.0 pane:split-up-and-copy-active-item (input.hidden-input)
  2x -3:28.5.0 core:move-up (input.hidden-input)
     -3:26.2.0 core:move-down (input.hidden-input)
  2x -3:25.7.0 editor:move-to-first-character-of-line (input.hidden-input)
  7x -3:24.4.0 core:select-down (input.hidden-input)
     -3:20 snippets:next-tab-stop (input.hidden-input)
     -3:20 snippets:expand (input.hidden-input)
     -3:20 editor:indent (input.hidden-input)
     -3:18.9.0 core:move-up (input.hidden-input)
  7x -3:18.4.0 core:move-down (input.hidden-input)
     -3:16.8.0 editor:move-to-end-of-screen-line (input.hidden-input)
     -3:16.4.0 editor:newline (input.hidden-input)
     -3:14.1.0 core:save (input.hidden-input)
  2x -2:59.2.0 terminal:clear (textarea.xterm-helper-textarea)

Non-Core Packages

atom-beautify 0.30.3 
atom-terminal-tab 0.2.2 
build 0.68.0 
busy 0.7.0 
busy-signal 1.4.3 
dash 1.7.1 
flex-tool-bar 0.12.0 
intentions 1.1.2 
language-actionscript3 0.3.0 
language-flex 0.3.0 
language-haml 0.24.5 
language-markdown 0.23.0 
linter 2.2.0 
linter-haml 2.0.1 
linter-rubocop 2.1.1 
linter-ui-default 1.6.2 
minimap 4.28.2 
rspec 0.3.2 
ruby-test 1.0.2 
run-command2 1.12.2 
Sublime-Style-Column-Selection 1.7.4 
tool-bar 1.1.0 

Give Contributors Credit

Need to add a CONTRIBUTORS file and/or mention contributors in the README, CHANGELOG and releases. Thanks for all your hard work, everyone! Tracking this and will implement in an upcoming release.

Uncaught Error: This socket is closed

Steps to Reproduce

  1. Launch Atom
  2. Toggle Terminal Tab open
  3. Wait for ready cursor
  4. Type exit

Actual: 💥
Expected: No 💥 and tab to close

Atom: 1.25.0-dev-aea7041c4 x64
Electron: 1.7.10
OS: Mac OS X 10.13.2
Thrown From: terminal-tab package 0.3.4

Stack Trace

Uncaught Error: This socket is closed

At /Users/Lee/.atom/packages/terminal-tab/node_modules/node-pty/lib/unixTerminal.js:108

Error: This socket is closed
    at PipeSocket.Socket._writeGeneric (net.js:692:19)
    at PipeSocket.Socket._write (net.js:743:8)
    at doWrite (_stream_writable.js:329:12)
    at writeOrBuffer (_stream_writable.js:315:5)
    at PipeSocket.Writable.write (_stream_writable.js:241:11)
    at PipeSocket.Socket.write (net.js:670:40)
    at UnixTerminal.write (/packages/terminal-tab/node_modules/node-pty/lib/unixTerminal.js:181:22)
    at /packages/terminal-tab/lib/terminal-view.js:56:23)
    at Terminal.EventEmitter.emit (/packages/terminal-tab/node_modules/xterm/lib/EventEmitter.js:49:20)
    at Terminal.handler (/packages/terminal-tab/node_modules/xterm/lib/xterm.js:1432:10)
    at Terminal.keyDown (/packages/terminal-tab/node_modules/xterm/lib/xterm.js:930:10)
    at /packages/terminal-tab/node_modules/xterm/lib/xterm.js:365:14)

Commands

     -4:42.4.0 core:save (input.hidden-input)
     -4:39.2.0 core:backspace (input.hidden-input)
     -4:37.1.0 core:save (input.hidden-input)
     -4:12 window:toggle-dev-tools (textarea.xterm-helper-textarea)
     -3:54.4.0 settings-view:open (textarea.xterm-helper-textarea)
     -3:07.1.0 window:toggle-dev-tools (textarea.xterm-helper-textarea)
     -1:51.9.0 docblockr:parse-enter (input.hidden-input)
     -1:51.9.0 editor:newline (input.hidden-input)
     -1:51.4.0 docblockr:parse-enter (input.hidden-input)
     -1:51.4.0 editor:newline (input.hidden-input)
     -1:47.4.0 docblockr:parse-enter (input.hidden-input)
     -1:47.4.0 editor:newline (input.hidden-input)
     -1:43.1.0 core:save (input.hidden-input)
  4x -1:05.4.0 core:select-down (input.hidden-input)
     -1:04.5.0 core:backspace (input.hidden-input)
     -1:03.7.0 core:save (input.hidden-input)

Non-Core Packages

advanced-open-file 0.16.7 
atom-2048 3.1.0 
atom-ide-ui 0.7.1 
autocomplete-emojis 2.5.0 
autocomplete-html-entities 0.2.0 
badges 2.2.5 
block-travel 1.0.5 
bug-report 0.7.1 
convert-date 0.1.1 
docblockr 0.13.5 
double-tag 1.1.0 
duotone-dark-syntax 2.1.0 
duotone-light-syntax 2.1.0 
file-icons 2.1.15 
file-type-icons 1.3.4 
fortune-background-tips 1.0.2 
github-atom-light-syntax 0.5.0 
highlight-selected 0.13.1 
ide-css 0.2.0 
ide-rust 0.8.0 
ide-typescript 0.7.2 
indentation-indicator 1.1.0 
language-diff 0.7.0 
language-elixir 0.20.3 
language-generic-config 1.4.0 
language-pegjs 0.5.0 
language-rust 0.4.12 
language-slime 0.0.0 
less-than-slash 0.17.0 
markdown-helper 0.3.0 
minimap 4.29.7 
npm-library-description 1.0.1 
package-sync 1.1.0 
pretty-json 1.6.4 
red-wavy-underline 0.3.3 
right-case 0.2.0 
set-syntax 0.4.0 
significant-other 0.4.0 
soft-wrap-indicator 1.1.0 
sort-lines 0.18.0 
tabs-to-spaces 1.0.3 
teletype 0.5.0 
terminal-tab 0.3.4 
toggle-quotes 1.1.0 
town-crier 0.2.1 
tree-view-git-status 1.4.0 

Failed to load the atom-terminal-tab package

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.23.1 x64
Electron: 1.6.15
OS: Mac OS X 10.12.6
Thrown From: atom-terminal-tab package 0.2.2

Stack Trace

Failed to load the atom-terminal-tab package

At ENOENT: no such file or directory, open '/Users/muhmmed-abd-alkhalik/.atom/packages/atom-terminal-tab/styles/xterm.less'

Error: ENOENT: no such file or directory, open '/Users/muhmmed-abd-alkhalik/.atom/packages/atom-terminal-tab/styles/xterm.less'
    at Object.fs.openSync (fs.js:558:18)
    at Object.module.(anonymous function) [as openSync] (ELECTRON_ASAR.js:173:20)
    at Proxy.fs.readFileSync (fs.js:468:33)
    at Proxy.fs.readFileSync (ELECTRON_ASAR.js:506:29)
    at ThemeManager.loadLessStylesheet (/Applications/Atom.app/Contents/Resources/app/src/theme-manager.js:276:54)
    at ThemeManager.loadStylesheet (/Applications/Atom.app/Contents/Resources/app/src/theme-manager.js:246:25)
    at /Applications/Atom.app/Contents/Resources/app/src/package.js:578:60
    at Array.map (native)
    at Package.module.exports.Package.loadStylesheets (/Applications/Atom.app/Contents/Resources/app/src/package.js:576:65)
    at /Applications/Atom.app/Contents/Resources/app/src/package.js:152:25
    at Package.module.exports.Package.measure (/Applications/Atom.app/Contents/Resources/app/src/package.js:99:21)
    at Package.module.exports.Package.load (/Applications/Atom.app/Contents/Resources/app/src/package.js:145:18)
    at PackageManager.loadAvailablePackage (/Applications/Atom.app/Contents/Resources/app/src/package-manager.js:618:16)
    at PackageManager.loadPackage (/Applications/Atom.app/Contents/Resources/app/src/package-manager.js:551:25)
    at PackageManager.activatePackage (/Applications/Atom.app/Contents/Resources/app/src/package-manager.js:689:23)
    at /Applications/Atom.app/Contents/Resources/app/node_modules/settings-view/lib/package-manager.js:535:35
    at exit (/Applications/Atom.app/Contents/Resources/app/node_modules/settings-view/lib/package-manager.js:128:22)
    at triggerExitCallback (/Applications/Atom.app/Contents/Resources/app/src/buffered-process.js:338:17)
    at /Applications/Atom.app/Contents/Resources/app/src/buffered-process.js:351:17
    at Socket.<anonymous> (/Applications/Atom.app/Contents/Resources/app/src/buffered-process.js:220:15)
    at emitOne (events.js:101:20)
    at Socket.emit (events.js:188:7)
    at Pipe._handle.close [as _onclose] (net.js:501:12)

Commands

  2x -8:47.2.0 core:select-all (input.hidden-input)
     -8:41.4.0 core:paste (input.hidden-input)
     -8:40.7.0 core:backspace (input.hidden-input)
     -8:40.4.0 core:confirm (input.hidden-input)
     -8:31.9.0 application:new-file (input.hidden-input)
     -8:30.8.0 core:close (input.hidden-input)
     -8:29 application:new-window (div.panels-item)
     -8:25.2.0 core:close (input.hidden-input)
     -8:01.2.0 core:select-all (input.hidden-input)
     -8:00.9.0 core:paste (input.hidden-input)
 12x -8:00.7.0 core:confirm (input.hidden-input)

Non-Core Packages

atom-beautify 0.30.9 
atom-terminal-tab 0.2.2 
emmet 2.4.3 

Show existing terminal if not active

At the moment the open terminal command opens a new pane every time it is triggered.
It would be very useful to have the default open command:

  1. Open a new terminal if it doesn't exist
  2. If a terminal exists but it's not focused just show it (if hidden) or focus it (I have noticed that most of the times you don't want to create a new terminal, just open the only one you actually use)
  3. If a terminal exists and it's focused open a new one next to it

one command to rule them all :)

Copy/paste

(I couldn't re-open #9 for some reason)

Currently it's possible to select text, but not to copy it on Linux/Windows. The Ctrl C keyboard shortcut doesn't work since it's captured by the terminal to stop the current job. The right-click menu doesn't offer a "Copy" item.

What needs to be done:

  • Add a keyboard shortcut to copy the currently selected text and paste (Ctrl Shift C/V is a popular default)
  • Add a menu item in the right-click menu to copy and paste

Cannot copy or paste into terminal

  1. Select something in the terminal
  2. cmd+c

Atom: 1.18.0 x64
Electron: 1.3.15
OS: Mac OS X 10.12.5
Thrown From: atom-terminal-tab package 0.2.2

Stack Trace

Uncaught TypeError: activeTerminalView.copySelection is not a function

At /Users/alex/.atom/packages/atom-terminal-tab/lib/terminal.js:48

TypeError: activeTerminalView.copySelection is not a function
    at Object.handleCopy (/packages/atom-terminal-tab/lib/terminal.js:48:24)
    at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/src/command-registry.js:265:35)
    at /Users/alex/Desktop/Atom.app/Contents/Resources/app/src/command-registry.js:3:65
    at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:610:22)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:401:28)
    at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/src/window-event-handler.js:100:42)
    at HTMLDocument.<anonymous> (/Users/alex/Desktop/Atom.app/Contents/Resources/app/src/window-event-handler.js:3:65)

Commands

     -7:18 core:undo (input.hidden-input)
     -7:16.3.0 core:redo (input.hidden-input)
  2x -7:14.1.0 core:save (input.hidden-input)
     -7:08.6.0 core:undo (input.hidden-input)
     -7:06.7.0 core:redo (input.hidden-input)
  6x -7:05.6.0 core:save (input.hidden-input)
     -3:54.2.0 core:undo (input.hidden-input)
     -3:52.5.0 core:redo (input.hidden-input)
     -3:49.6.0 core:cut (input.hidden-input)
  5x -3:48.6.0 core:backspace (input.hidden-input)
  2x -3:45.8.0 core:move-down (input.hidden-input)
     -3:43.9.0 emmet:insert-formatted-line-break-only (input.hidden-input)
     -3:43.9.0 editor:newline (input.hidden-input)
     -3:42.8.0 core:paste (input.hidden-input)
     -3:41.8.0 core:save (input.hidden-input)
     -0:02.5.0 terminal:copy (div.terminal.xterm.xterm-theme-default)

When attempting to paste...

  1. Have something in the clipboard
  2. cmd+v in the terminal

Stack Trace

Uncaught TypeError: activeTerminalView.pasteFromClipboard is not a function

At /Users/alex/.atom/packages/atom-terminal-tab/lib/terminal.js:53

TypeError: activeTerminalView.pasteFromClipboard is not a function
    at Object.handlePaste (/packages/atom-terminal-tab/lib/terminal.js:53:24)
    at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/src/command-registry.js:265:35)
    at /Users/alex/Desktop/Atom.app/Contents/Resources/app/src/command-registry.js:3:65
    at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:610:22)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:401:28)
    at WindowEventHandler.module.exports.WindowEventHandler.handleDocumentKeyEvent (/Users/alex/Desktop/Atom.app/Contents/Resources/app/src/window-event-handler.js:100:42)
    at HTMLDocument.<anonymous> (/Users/alex/Desktop/Atom.app/Contents/Resources/app/src/window-event-handler.js:3:65)

Commands

  2x -8:34.8.0 core:save (input.hidden-input)
     -8:29.3.0 core:undo (input.hidden-input)
     -8:27.4.0 core:redo (input.hidden-input)
  6x -8:26.2.0 core:save (input.hidden-input)
     -5:14.9.0 core:undo (input.hidden-input)
     -5:13.2.0 core:redo (input.hidden-input)
     -5:10.3.0 core:cut (input.hidden-input)
  5x -5:09.3.0 core:backspace (input.hidden-input)
  2x -5:06.5.0 core:move-down (input.hidden-input)
     -5:04.6.0 emmet:insert-formatted-line-break-only (input.hidden-input)
     -5:04.6.0 editor:newline (input.hidden-input)
     -5:03.5.0 core:paste (input.hidden-input)
     -5:02.5.0 core:save (input.hidden-input)
     -1:23.2.0 terminal:copy (div.terminal.xterm.xterm-theme-default)
     -0:05.9.0 core:copy (input.hidden-input)
     -0:04.0 terminal:paste (textarea.xterm-helper-textarea)

Enable basic keyboard navigation

Thanks for the package! This could be the start of something compelling.

Are the following possible with the keyboard?

  • Navigate to an existing terminal from the editor
  • Navigate back to the editor from a terminal
  • Toggle the terminal dock open & closed

At the moment, I've made some hacky changes to my keyboard mapping to get some of the way there, but it's not pretty

Additionally, cmd-shift-t is a already a heavily used keyboard shortcut - there are hundreds of other alternatives.

Tangentially related to: #18

Installing “[email protected]” failed in atom 1.19.0

I'm unable install it in my atom, every time I'm installing it it's giving the same error.

[email protected] install C:\Users\PRIYAR~1\AppData\Local\Temp\apm-install-dir-117726-16708-zbisyb.hgw5o5stt9\node_modules\atom-terminal-tab\node_modules\node-pty
node scripts/install.js

C:\Users\PRIYAR1\AppData\Local\Temp\apm-install-dir-117726-16708-zbisyb.hgw5o5stt9\node_modules\atom-terminal-tab\node_modules\node-pty>if not defined npm_config_node_gyp (node "C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\node_modules\npm\bin\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\bin\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )
C:\Users\PRIYAR
1\AppData\Local\Temp\apm-install-dir-117726-16708-zbisyb.hgw5o5stt9
`-- (empty)

gyp ERR! configure error
gyp ERR! stack Error: Python executable "C:\Users\Priya Ranjan Dubey\AppData\Local\Programs\Python\Python36-32\python.EXE" is v3.6.1, which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
gyp ERR! stack at failPythonVersion (C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\node_modules\node-gyp\lib\configure.js:454:14)
gyp ERR! stack at C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\node_modules\node-gyp\lib\configure.js:443:9
gyp ERR! stack at ChildProcess.exithandler (child_process.js:197:7)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at maybeClose (internal/child_process.js:877:16)
gyp ERR! stack at Socket. (internal/child_process.js:334:11)
gyp ERR! stack at emitOne (events.js:96:13)
gyp ERR! stack at Socket.emit (events.js:188:7)
gyp ERR! stack at Pipe._handle.close [as _onclose] (net.js:498:12)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\bin\node.exe" "C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\PRIYAR1\AppData\Local\Temp\apm-install-dir-117726-16708-zbisyb.hgw5o5stt9\node_modules\atom-terminal-tab\node_modules\node-pty
gyp ERR! node -v v6.9.5
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\PRIYAR
1\AppData\Local\Temp\apm-install-dir-117726-16708-zbisyb.hgw5o5stt9\package.json'
npm WARN apm-install-dir-117726-16708-zbisyb.hgw5o5stt9 No description
npm WARN apm-install-dir-117726-16708-zbisyb.hgw5o5stt9 No repository field.
npm WARN apm-install-dir-117726-16708-zbisyb.hgw5o5stt9 No README data
npm WARN apm-install-dir-117726-16708-zbisyb.hgw5o5stt9 No license field.
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\bin\node.exe" "C:\Users\Priya Ranjan Dubey\AppData\Local\atom\app-1.19.0\resources\app\apm\node_modules\npm\bin\npm-cli.js" "--globalconfig" "C:\Users\Priya Ranjan Dubey\.atom\.apm\.apmrc" "--userconfig" "C:\Users\Priya Ranjan Dubey\.atom\.apmrc" "install" "C:\Users\PRIYAR~1\AppData\Local\Temp\d-117726-16708-l98qv7.8ha1fnipb9\package.tgz" "--runtime=electron" "--target=1.6.9" "--arch=x64" "--global-style"
npm ERR! node v6.9.5
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node scripts/install.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node scripts/install.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the node-pty package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node scripts/install.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs node-pty
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls node-pty
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! C:\Users\PRIYAR~1\AppData\Local\Temp\apm-install-dir-117726-16708-zbisyb.hgw5o5stt9\npm-debug.log
npm ERR! code 1

Force Close all Terminal Tab on exit

Any chance you can make Terminal Tab close any open terminals on exit? As it works now, If you close Atom and reopen, Terminal Tab will be open and just a bash-3.2$ prompt instead of the normal prompt.

screen shot 2018-01-29 at 8 30 01 pm

If you close Terminal Tab before existing, them reopen with new Atom instance it works correctly.

screen shot 2018-01-29 at 8 32 41 pm

Can't bind keys

The default key bindings:

"terminal-view": {
"cmd-c": "terminal:copy",
"cmd-v": "terminal:paste",
"cmd-k": "terminal:clear"
}

do not work, and neither does this in the per-user keymap.cson:

'terminal-view':
	'ctrl-tab':       'pane:show-next-item'
	'ctrl-shift-tab': 'pane:show-previous-item'

In all cases, when the key is pressed, nothing happens and the Atom Key Binding Resolver does not even register it. I assume the terminal library is intercepting these, but I haven't been able to figure out how to override it.

Uncaught TypeError: Cannot set property '0' of undefined

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.17.0-beta3 x64
Electron: 1.3.14
OS: Mac OS X 10.12.4
Thrown From: atom-terminal-tab package 0.2.0

Stack Trace

Uncaught TypeError: Cannot set property '0' of undefined

At /Users/kdnk/.atom/packages/atom-terminal-tab/node_modules/xterm/lib/InputHandler.js:54

TypeError: Cannot set property '0' of undefined
    at InputHandler.addChar (/packages/atom-terminal-tab/node_modules/xterm/lib/InputHandler.js:54:61)
    at Parser.parse (/packages/atom-terminal-tab/node_modules/xterm/lib/Parser.js:177:44)
    at Terminal.innerWrite (/packages/atom-terminal-tab/node_modules/xterm/lib/xterm.js:809:21)
    at /packages/atom-terminal-tab/node_modules/xterm/lib/xterm.js:794:18

Commands

  6x -0:52.6.0 vim-mode-plus:move-up-screen (input.hidden-input)
     -0:50.5.0 settings-view:check-for-package-updates (atom-workspace.workspace.scrollbars-visible-when-scrolling.theme-atom-panda-syntax.theme-one-dark-ui)
  8x -0:46.9.0 vim-mode-plus:move-down-screen (input.hidden-input)
  5x -0:46.3.0 vim-mode-plus:move-up-screen (input.hidden-input)
 10x -0:45.9.0 vim-mode-plus:move-down-screen (input.hidden-input)
 10x -0:45.3.0 vim-mode-plus:move-up-screen (input.hidden-input)
     -0:43.8.0 vim-mode-plus:insert-below-with-newline (input.hidden-input)
     -0:43.6.0 editor:newline (input.hidden-input)
     -0:40.6.0 core:backspace (input.hidden-input)
     -0:39.4.0 vim-mode-plus:activate-normal-mode (input.hidden-input)
  4x -0:39.1.0 vim-mode-plus:delete (input.hidden-input)
     -0:38.4.0 core:save (input.hidden-input)
     -0:38.1.0 vim-mode-plus:move-up-screen (input.hidden-input)
     -0:37.6.0 command-palette:toggle (input.hidden-input)
     -0:35.1.0 core:confirm (input.hidden-input)
  3x -0:35.1.0 terminal:open (input.hidden-input)

Non-Core Packages

advanced-open-file 0.16.6 
atom-fuzzy-grep 0.16.0 
atom-material-ui 1.3.10 
atom-panda-syntax 0.18.0 
atom-terminal-tab 0.2.0 
autoclose-html 0.23.0 
autocomplete-modules 1.6.9 
base16-ocean-dark-spacegray 0.13.0 
busy-signal 1.4.1 
chester-atom-syntax 0.1.1 
climate-syntax 5.0.0 
climate-ui 4.5.1 
cobalt2-syntax 0.5.1 
css-snippets 1.1.0 
cursor-history 0.9.1 
double-tag 0.8.0 
emmet 2.4.3 
file-icons 2.1.4 
git-diff-details 1.4.0 
git-plus 7.7.0 
hey-pane 0.3.1 
highlight-column 0.5.2 
highlight-selected 0.13.1 
intentions 1.1.2 
language-babel 2.57.7 
language-haml 0.24.1 
linter 2.1.4 
linter-eslint 8.1.6 
linter-scss-lint 3.1.0 
linter-ui-default 1.2.3 
minimap 4.27.1 
minimap-cursorline 0.2.0 
minimap-find-and-replace 4.5.2 
minimap-git-diff 4.3.1 
minimap-highlight-selected 4.6.1 
minimap-selection 4.4.0 
open-this 0.4.0 
pigments 0.39.1 
project-manager 3.3.4 
regex-railroad-diagram 0.17.0 
seti-icons 1.4.3 
seti-syntax 1.1.3 
seti-ui 1.7.0 
slime 2.1.0 
solarized-dark-ui 0.3.2 
sync-settings 0.8.1 
tree-view-autoresize 1.6.0 
tree-view-git-status 1.3.1 
vim-mode-plus 0.91.0 
vim-mode-plus-ex-mode 0.9.0 
vim-mode-plus-keymaps-for-surround 0.2.1 
vim-mode-plus-move-selected-text 0.10.0 
zentabs 0.8.8 

Terminal displays "bash-3.2$"

Why does Terminal Tab in Atom display as bash-3.2$ on my new MBP? Everywhere else, including in Terminal I see Bryans-MacBook-Pro:~ username$ . Am I missing something? It seems to work OK but wondering why it says that.

Customize colors possible?

Is there any way to do a simple background color change? I am using One Dark and just wanted to match Terminal Tab to the theme if possible.

screen shot 2018-01-08 at 3 07 31 pm

Can't pass flag with shell args in Windows

When running tasks on Windows I use the node.js command prompt as it sets up a bunch of handy things and makes Windows CMD a little bit better when running commands.

I've inspected the launcher for it and it basically opens the default CMD prompt and chucks some custom stuff at it using a bat file. I can't get Terminal Tab to follow suit and it's probably due to the way I'm passing the args required.

I need to pass /k "C:\Program Files\nodejs\nodevars.bat" but every iteration of different quotes and slashes always fails. I've not had a problem running anything but I think it would be handy to be able to do this (if you can't already) or document it (if you can).

Running the above I get:

'\"C:\Program Files\nodejs\nodevars.bat\"' is not recognised as an internal or external command, operable program or batch file.

Using single quotes /k 'C:\Program Files\nodejs\nodevars.bat' I get:

The filename, directory, or volume label syntax is incorrect.

[Feature request] Chose pane

Current behaviour is using the bottom dock. I think many would not like it because of waste of horizontal space. It would be nice to have the ability to choose the splitting direction. Additionally, I notice built-in panes like project find result do remember their position so it'd be good to have that too.

Just checking if I should open a PR for this.

Stop running task when closing pane

I've found it annoying that, if I close the tab before exiting a task, it keeps running in the background and I have to dig through task manager to stop it!

I guess this is a feature request?

.bashrc is ignored

No functions, aliases and environmental variables that are present in my .bashrc are accessible from the terminal-tab terminal.

It is working again when I put a space into Shell Application Arguments in the preferences of the package, what probably removes --login parameter from the bash command.

I don't think it is intended behavior. People usually want their .bashrc and .bash_profile to be sourced in the same way across different terminals and by default.

As far as I know the --login parameter should result in sourcing them, right? For some reason it doesn't. At least not on my system.

It was working fine something like week ago, when the package was at version 0.2.2.

Package versions

  • terminal-tab 0.4.0
  • atom 1.23.3
  • electron 1.6.15
  • electron chrome 56.0.2924.87
  • electron node 7.4.0

(Arch Linux)

Uncaught TypeError: activeTerminalView.copySelection is not a function

Attempting to copy text from the terminal. ctrl+shfit+c did not work. I then used the command pallet ctrl-shift-p to access Terminal: Copy

image

  1. Select text in editor.
  2. Press ctrl-shift-p and type copy, select Terminal: Copy

Atom: 1.23.3 x64
Electron: 1.6.15
OS: Microsoft Windows 10 Enterprise
Thrown From: terminal-tab package 0.4.0

Stack Trace

Uncaught TypeError: activeTerminalView.copySelection is not a function

At D:\wtf8yn\.atom\packages\terminal-tab\lib\terminal.js:96

TypeError: activeTerminalView.copySelection is not a function
    at Object.handleCopy (/packages/terminal-tab/lib/terminal.js:96:24)
    at CommandRegistry.handleCommandEvent (~/AppData/Local/atom/app-1.23.3/resources/app/src/command-registry.js:388:36)
    at Object.didConfirmSelection (~/AppData/Local/atom/app-1.23.3/resources/app/node_modules/command-palette/lib/command-palette-view.js:143:35)
    at SelectListView.confirmSelection (~/AppData/Local/atom/app-1.23.3/resources/app/node_modules/command-palette/node_modules/atom-select-list/src/select-list-view.js:327:26)
    at HTMLDivElement.core:confirm (~/AppData/Local/atom/app-1.23.3/resources/app/node_modules/command-palette/node_modules/atom-select-list/src/select-list-view.js:84:20)
    at CommandRegistry.handleCommandEvent (~/AppData/Local/atom/app-1.23.3/resources/app/src/command-registry.js:388:36)
    at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (~/AppData/Local/atom/app-1.23.3/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:621:22)
    at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (~/AppData/Local/atom/app-1.23.3/resources/app/node_modules/atom-keymap/lib/keymap-manager.js:412:28)
    at WindowEventHandler.handleDocumentKeyEvent (~/AppData/Local/atom/app-1.23.3/resources/app/src/window-event-handler.js:108:40)

Commands

     -4:49.1.0 core:save (input.hidden-input)
     -4:25.2.0 intentions:highlight (input.hidden-input)
     -4:25 core:copy (input.hidden-input)
     -4:14.3.0 editor:select-to-end-of-line (input.hidden-input)
     -4:13.9.0 core:delete (input.hidden-input)
     -4:13.2.0 intentions:highlight (input.hidden-input)
     -4:13.1.0 core:save (input.hidden-input)
 37x -1:45.6.0 intentions:highlight (input.hidden-input)
     -1:43.9.0 core:copy (input.hidden-input)
     -0:58.3.0 intentions:highlight (input.hidden-input)
     -0:57.8.0 editor:toggle-line-comments (input.hidden-input)
     -0:57.6.0 core:save (input.hidden-input)
     -0:20.2.0 editor:copy-path (textarea.xterm-helper-textarea)
     -0:09.8.0 command-palette:toggle (textarea.xterm-helper-textarea)
     -0:08.5.0 core:confirm (input.hidden-input)
     -0:08.5.0 terminal:copy (textarea.xterm-helper-textarea)

Non-Core Packages

atom-beautify 0.30.9 
atom-clock 0.1.16 
atom-ternjs 0.18.3 
auto-update-plus 0.5.6 
autoclose-html 0.23.0 
autocomplete-modules 1.10.0 
autocomplete-paths 2.12.2 
browser-plus 0.0.98 
busy-signal 1.4.3 
copy-with-style 1.1.0 
copy-with-syntax 0.0.3 
docblockr 0.13.6 
editorconfig 2.2.2 
eslint-fixer 1.3.0 
file-icons 2.1.16 
git-control 0.9.0 
git-diff-details 1.4.0 
git-log 0.4.1 
git-time-machine 1.5.9 
highlight-selected 0.13.1 
hyperclick 0.1.5 
intentions 1.1.5 
isotope-ui 2.8.5 
js-hyperclick 1.12.2 
language-batch 0.4.0 
language-docker 1.1.8 
language-groovy 0.7.0 
language-vue 0.23.1 
language-yaml-cloudformation 0.3.1 
lint-sass-vue 1.0.5 
linter 2.2.0 
linter-csslint 2.0.0 
linter-docker 0.3.0 
linter-eslint 8.4.0 
linter-flow 5.6.1 
linter-htmlhint 1.4.0 
linter-js-cloudformation-yaml 2.2.1 
linter-js-yaml 1.2.8 
linter-just-say-no 0.7.3 
linter-proselint 3.3.0 
linter-sass-lint 1.8.3 
linter-tslint 1.9.0 
linter-ui-default 1.6.10 
linter-write-good 0.9.0 
minimap 4.29.7 
minimap-bookmarks 0.4.2 
minimap-cursorline 0.2.0 
minimap-git-diff 4.3.1 
minimap-highlight-selected 4.6.1 
minimap-linter 2.1.3 
minimap-pigments 0.2.2 
pigments 0.40.2 
platformio-ide-terminal 2.8.0 
prettier-atom 0.48.0 
pristine-ui 1.1.11 
regex-railroad-diagram 0.19.4 
seti-syntax 1.1.3 
seti-ui 1.9.0 
sort-lines 0.18.0 
teletype 0.6.0 
terminal-tab 0.4.0 
tester 1.4.0 
tester-jest 1.1.8 
theme-switcher 1.1.0 
toggle-quotes 1.1.0 
tree-view-git-status 1.4.0 
vuejs2-snippets 0.15.0 
wakatime 7.0.4 

General package settings and overrides for user customization

It would be helpful to create some configurable package options and overrides like so...

{
    // `BEAM` for |, `UNDERLINE` for _, `BLOCK` for █
    cursorShape: 'BEAM',
    blinkCursor: true||false,
    useAtomSettings: true||false,
    fontSize: 14,
    useSyntaxTheme: true|false,
    // IF useSyntaxTheme IS FALSE THEN USE BELOW OVERRIDE OPTIONS...
    // terminal cursor background color
    cursorColor: '#1BA3EA',
    // color of the text
    foregroundColor: '#ffffff',
    // terminal background color
    backgroundColor: '#171717',
    colors: {
      black:        '#000000',
      red:          '#e06c75',
      green:        '#A3F674',
      yellow:       '#FFC235',
      blue:         '#1EBBFF',
      magenta:      '#FF5BA9',
      cyan:         '#A78EFF',
      white:        '#d0d0d0',
      lightBlack:   '#808080',
      lightRed:     '#e06c75',
      lightGreen:   '#A3F674',
      lightYellow:  '#FFC235',
      lightBlue:    '#82DDFF',
      lightMagenta: '#FF5BA9',
      lightCyan:    '#A78EFF',
      lightWhite:   '#ffffff'
    }
}

ncurses applications have some extra spacing

screenshot_2017-12-17_05-58-55

The easiest way to reproduce this is to install midnight commander and try to run it inside Atom.

A quick fix for me was to add this to terminal.less:

terminal-view {

  .xterm {

    .xterm-rows > div {
      height: 17px;  /* needs to be font-size + 2px + padding-bottom of the span */
      font-size: 12px;
      
      & > span {
        padding-bottom: 3px;
      }
    }

  }

}

screenshot_2017-12-17_16-58-06

But it doesn't look like a proper fix.

Explore Moving to Custom Elements v1

It doesn't look like Atom's view registry works well with the v1 spec for custom elements. We're stuck using the deprecated v0 specification for now. I'd like to investigate this further to see if it's something we can do and/or add support for in Atom.

Selection barely visible with light theme

Theme: One Light / One Light

In order to reproduce just select something in the terminal. Selection doesn't look much different than normal text.

screenshot_2018-02-11_18-27-03

Package versions

  • terminal-tab 0.5.0
  • atom 1.23.3
  • electron 1.7.11
  • electron chrome 58.0.3029.110
  • electron node 7.9.0

(Arch Linux)

Clicking tabs in a pane does not focus the terminal

When you click on tab title of a terminal when that tab is already the active tab, the terminal (Xterm instance) is not focused automatically. It is, however, focused correctly when switching between terminal tabs.

themed terminal breaks stylesheets

Before themed terminals, this rule would style terminal as expected:

terminal-view {
  .terminal {
    font-family: "Hack", monospace;
    font-size: 12px;
  }
}

After themed terminal was released, One must add !important to the rule in order for it to override the theme styles added to element.style

Reuse pane

Would be great if there is an action for reusing opening terminal (think visor that works with atom in fullscreen in macOS). Just checking if I should open a pull request on it.

Smarter working directory

It seems that for now the working directory is set to the first project folder.

It would be smarter to use the currently selected project folder instead.

Uncaught TypeError: Cannot read property 'length' of undefined

[Enter steps to reproduce:]

  1. Not exactly sure how to reproduce, but it happens (sometimes) when clicking inside the terminal...

Atom: 1.23.3 x64
Electron: 1.6.15
OS: Linux Mint
Thrown From: terminal-tab package 0.4.0

Stack Trace

Uncaught TypeError: Cannot read property 'length' of undefined

At /[PRIVATE]/.atom/packages/terminal-tab/node_modules/xterm/lib/utils/BufferLine.js:11

TypeError: Cannot read property 'length' of undefined
    at Object.translateBufferLineToString (/packages/terminal-tab/node_modules/xterm/lib/utils/BufferLine.js:11:29)
    at /packages/terminal-tab/node_modules/xterm/lib/SelectionManager.js:96:38)
    at SelectionManager.refresh (/packages/terminal-tab/node_modules/xterm/lib/SelectionManager.js:136:37)
    at SelectionManager._onMouseDown (/packages/terminal-tab/node_modules/xterm/lib/SelectionManager.js:211:14)
    at /packages/terminal-tab/node_modules/xterm/lib/SelectionManager.js:51:90)

Commands

  2x -8:39 core:select-left (input.hidden-input)
     -8:38.4.0 core:backspace (input.hidden-input)
     -8:37.8.0 editor:move-to-end-of-screen-line (input.hidden-input)
     -8:36.2.0 core:save (input.hidden-input)
     -1:17.6.0 core:copy (input.hidden-input)
     -1:17.1.0 core:paste (input.hidden-input)
  4x -1:12.7.0 core:move-right (input.hidden-input)
  6x -1:11.8.0 core:delete (input.hidden-input)
     -0:48.1.0 core:move-up (input.hidden-input)
     -0:47.9.0 editor:move-to-end-of-screen-line (input.hidden-input)
  8x -0:47.6.0 core:move-left (input.hidden-input)
  3x -0:46.2.0 core:select-down (input.hidden-input)
     -0:45.5.0 core:select-up (input.hidden-input)
  2x -0:45.3.0 core:select-left (input.hidden-input)
     -0:44.7.0 core:backspace (input.hidden-input)
     -0:43.3.0 core:save (input.hidden-input)

Non-Core Packages

ftp-remote-edit 0.12.9 
terminal-tab 0.4.0 

Font size matches editor or not depending on how you open terminals

I am using non-standard font size, which you can reproduce by pressing Ctrl+0, then Ctrl+-.

If there is no terminals open, after opening the first terminal the font size doesn't match the font-size of the editor:

screenshot_2018-01-25_23-37-20

Just after restarting atom, the font size changes, now it matches the font size of the editor:

screenshot_2018-01-25_23-38-29

There is one more strange behavior related to this. After running without terminals, the first has big font, the second tab also, but when I switch back to the first one it 1) gets proper font size 2) doesn't cover full area:

screenshot_2018-01-25_23-46-35

Package versions

  • terminal-tab 0.4.0
  • atom 1.23.3
  • electron 1.6.15
  • electron chrome 56.0.2924.87
  • electron node 7.4.0

(Arch Linux)

Run .bash_profile?

Hi,
can you please build in a function to run some scripts on start of the terminal?
I have my own styles saved in .bash_profile.
Thanks.

Enhancement: Prevent swallowing selected Atom hotkeys

I've got alt-shift-arrow hotkeys set up on atom-workspace for moving between panes, but terminal-tab is swallowing the input when focused.

Would be great if it was possible for these hotkeys, along a few others, like Ctrl-\ for Tree View, to reach the Atom workspace.

Keybinding clashes with "reopen last item"

Atom has a keybinding already on cmd+shift+t for reopen last item, but this package overrides that as it is a more specific selector (well, loaded after, so more specific by default I presume) and the 'settings' doesn't have a way to turn off the keybindings like it does for other packages.

Any chance of changing the keybinding or allowing users to reassign/turn off?

Rename to Atom Terminal Pane?

I've never been a big fan of the name atom-terminal-tab. Just that all the good names seemed to have been taken. Considering this add-on is intended to be used as a pane, would it make sense to rename to atom-terminal-pane?

My only concern there (and also with tab) is that it wouldn't make sense to implement a panel mode with that name. However, I'm not sure I'd ever be interested in making it support panels anyways. The point is to keep this project as simple as possible with reasonable defaults.

Discuss.

NODE_ENV gets set to production automatically

I have found that in new terminal tabs, the NODE_ENV variable gets set to production, when it should not be set to anything. That messes things up when trying to run npm install, scripts, et cetera.

env

bash-3.2$ again

Now with 0.3.3 something broke again. Now getting bash-3.2$ on my MBP

Package fails in Atom 1.18

I get the following error when attempting to activate.

Failed to require the main module of 'atom-terminal-tab' because it requires one or more incompatible native modules (node-pty).
Run `apm rebuild` in the package directory and restart Atom to resolve.

Running apm rebuild and restarting Atom does not seem to do anything.

Scrollbar at the left side

This is most likely a styling issue, but it looks odd
captura de pantalla 2017-05-18 18 03 17

On a different topic, there is an error in the Developer Tools console saying:

You did not pass the `focus` argument in `Terminal.prototype.open()`.
The `focus` argument now defaults to `true` but starting with xterm.js 3.0 it will default to `false`.

And some other issue that has to do with docks losing focus when they are clicked (but that is Atom's fault I would guess)

System: Windows 10 64bits Atom 1.18 beta 0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.