An Emacs package to open an external terminal emulator in directories associated with the current buffer.
terminal-here-launch to start a terminal in the current directory.
If the default command doesn't launch your preferred terminal you can set
terminal-here-terminal-command to either a list containing the command and
(list "my-terminal" "--foo"))
or a function which takes a directory and returns such a list.
(require 'terminal-here) (global-set-key (kbd "C-<f5>") #'terminal-here-launch) (global-set-key (kbd "C-<f6>") #'terminal-here-project-launch)
Terminal-here has out-of-the-box support for some platforms, but will work anywhere with some customisation.
Out-of-the-box support tested on:
- Ubuntu 16.04 (but should work identically on any Debian-based system)
- Windows 10
Should be supported out-of-the-box, but currently untested:
- Older versions of Windows
terminal-here-terminal-command before use:
- Non-Debian-based UNIXes, because I haven't seen a standard way to open the user's preferred terminal
If you have problems just set
terminal-here-terminal-command as described above.
terminal-here can run ssh to open terminals in remote directories for files
opened with tramp. This may
require additional setup because of inconsistencies between different terminals.
If your terminal has a flag to treat the rest of the command line as the command
to run inside the terminal, you just need to set
this flag. If not it may be impossible to get ssh support. Some examples are:
-e(this is the default)
There are lots of built in ways to run terminals inside emacs (
ansi-term, ...) but these can have problems like slow output speed
or incompatibility with existing configs. I currently prefer to run external
terminal emulators, YMMV.