something similar to Emacs shell? - shell

I'm looking for something similar to Emacs shell.
I want to be able to select text easily in my terminal, be able to manipulate the output.
Unfortunately, emacs is not always an option. I can't figure out how to make a few things (e.g autocompletion) work the way it does in gnome-terminal and it is a bit of a pain on remote system.
I would rather not spend the time fixing/configuring Emacs unless there is a cool piece of software out there doing something similar to gnome-terminal + let's me manipulate the output without touching the bloody mouse.
Thanks for your help,
-hbt

I'm not sure I completely understand the question, but if you're looking for terminal emulation inside of Emacs, there are at least four options bundled with Emacs 22+ that offer varying levels of xterm-like capability:
term
ansi-term
shell
eshell
eshell, IMO, is the most departed from the tradtional "xterm" experience, but also offers the most buffer-like experience, and it is cross-platform, which is a huge win.
I think shell might be the sweet spot for you if you're looking for term-like behavior, while retaining the editing capabilities.
Finally, term and ansi-term are very term-like, and will behave almost exactly like a xterm/konsole/gnome-shell session.
One other note: if you want scrollback access, copying, pasting, etc. and you don't have Emacs available, I highly recommend learning and using GNU Screen.

You should try the Emacs terminal emulator term(or its colored version ansi-term). There are other terminal emulators for Emacs around, but this is the most popular(and the only one bundled with the default installation).

Looks like you want to look into readline on bash (or if available on your favourite shell). A quick google gives a few links here (including a cheatsheet).

I was also looking for some kind of shell like emacs, with support to some feature like emacs buffers for example. That would be great.
I just found this one: Terminator
Have a look:
http://www.makeuseof.com/tag/5-applications-to-change-the-way-you-work-with-linux-terminal/

Related

Editing old wish commands in the shell

I'm running wish (as part of the TCL/TK 8.6 distribution) in a mac terminal window.
Unfortunately, I can't recall and edit previous commands.
A long time ago (think 15 years ago) there was some clever program that trapped all user commands so you could recall and edit old commands before sending them to a program that could not edit old commands.
I think it was called FOP (but I might be wrong here_ and it ran on Linux
So I'd say
> FOP wish
and then I'd be able to recall and edit previous commands.
Is there any such program that I can use that does this - so that I can edit old wish commands?
The usual package for this sort of thing is rlwrap, which lets you put a readline-based wrapper around programs such as tclsh. It's an optional package — called rlwrap, obviously — in the usual distribution sources for CentOS, Debian and Ubuntu (as well as both MacPorts and Homebrew, for people on macOS) so installation is pretty straight-forward.
Once you've installed it, you then do:
rlwrap wish
and enjoy your more sophisticated input capabilities.
There are probably other packages capable of doing this sort of thing, but rlwrap is very easy and pretty well recommended; I've not heard of anyone using anything else except for reasons of outright bloodymindedness.

How to get an overlay output for a command in terminal like less or man?

Some of the linux commands like less or man display their output in the current terminal occupying the whole screen. But the previous interactions reappear as is once the program quits.
How can we achieve the same behavior for our custom program?
Thank you.
Actually, less and comparable programs use a termcap interface which could be provided by various libraries. The point of the question asked how the "previous interactions" could be restored. That is a feature of xterm and other programs called the alternate screen, which conventionally is used via the terminal capabilities for starting and ending cursor-addressing mode. The feature is completely terminal-dependent (ncurses only provides the information).
Further reading:
Why doesn't the screen clear when running vi? (xterm FAQ)
Types of library users (ncurses FAQ)

Simple Ruby Editor?

This editor isn't intended for me. It's intended for teaching someone else Ruby. I largely use Emacs when writing Ruby. Does anyone know of an editor that
indents the current line correctly when you press tab,
can indent the whole file correctly (keyboard shortcut would be nice),
has syntax highlighting for Ruby,
other than that works kind of like Windows Notepad (maybe with a toolbar of icons),
has a built in terminal (not absolutely required),
has multiple editor tabs,
and works on Windows, Linux, or both?
Or anything somewhat close?
Edit:
I'm also going to add that I'd like to be available for free (legally for an indefinite period of time). Open source wouldn't hurt.
Check Notepad++
I don't think that jEdit has a built-in terminal, but I believe it does everything else you need. It's implemented in Java, so it should run on any platform for which a JVM exists, including Windows and Linux.
Since it's about teaching ruby RedCar and Diakonos are good choices. They have most of the features you mention and as a bonus both are written in Ruby.
If you are not a die hard fan of emacs, then there's always vim and its plugins for any programming language. Here's one for Ruby: rails.vim : Ruby on Rails: easy file navigation, enhanced syntax highlighting, and more
If you are new to vim, this cheat sheet should help you: vim graphical cheat sheet
I like gedit - it doesn't have a terminal, but should work fine for the other requirements. It can run on Windows with Cygwin.
For a full-blown IDE, Aptana Studio is great. It meets your requirements.
If your main goal is to teach then you could try using Hackety Hack. It is somewhat weak at times, but I found it fun and simple to use, but then again I already knew ruby pretty well.
For a beginner being able to run the programs easily is very important so you want something where irb and ruby can be run very simply. Aptana seems to be a pretty good IDE for this sort of thing, but I have never used it myself aside for web development.
Aside from those two I suggest Notepad++... Also the free KomodoEdit might be worth a look. Personally I say teach the other person emacs, but then again shrug

Coding a Mac OS X terminal emulator?

I'd like to create a terminal emulator for Mac OS X. The problem is: I have no idea where to start. Can I just use a whole bunch of NSTasks? Or do I have to read through tons of source code for programs like xterm, urxvt, etc?
I don't want a lot of customizability (= no config file parsing), nor complex features, and I'm only gonna use bash as the shell.
Thanks for answers!
-Mike
I'd check out Visor: http://code.google.com/p/blacktree-visor/ It's a Quake-style terminal that slides up and down from the edge of the screen.
iTerm (http://iterm.sourceforge.net/) would also be a good project to look at (perhaps even better than Visor).
As Dave said, iTerm is probably the best place to start.
As for others, xterm/urxvt might not be the easiest thing to read for this, since they'll be mapping between VT100 and Xlib, which is kind of low-level. An implementation that might be easier to read is VTE terminal, which GNOME uses, since it'll be mapping between VT100 and GLib/GTK+, which is probably a lot closer to what Mac OS X provides.
Good luck!

linux/bash tips for developers? [duplicate]

This question already has answers here:
Closed 13 years ago.
Possible Duplicates:
Favourite command line trick
useful linux commands for programmers?
What is your single most favorite command-line trick using Bash?
I have recently become accustomed to doing most of my development (in various languages) from the bash shell, using command-line tools and interfaces. I have discovered it is convenient to stay in the command line because you can do many things without leaving that interface, and it is fast.
What tools and tricks are you aware of that can make bash (perhaps in conjunction with an editor like vim or emacs) a more powerful development environment to work in?
Start with an X11 window manager that works well without needing a mouse.
Awesome
xmonad
After that:
screen
bash_completion
vim
cscope
ctags
remake
I rarely need to touch the mouse for anything.
You've probably done some or all of this, but for the record...
ctags/etags
plugins for vim and emacs
get to know the bash ! history substitution feature (but be careful! :-)
if using vi (over emacs) then get to know the :line mode
you might want to check out the id-utils package
if using bash on windows via cygwin, use rxvt instead of the default dos box
You also want to set up each tool in the programmer mode. Editors like vi and emacs can autoindent, show matching parens, etc. You need to read the help and turns these things on. Be sure that you run bash in the history mode that matches your editing reflexes. It defaults to emacs but for vi one does set -o vi.
First, I use intensively shortcuts. Then, I could obviously mention things like vim, grep, tail, head, find, sudo !!,... But one thing I really can't live without is Programmable Completion. Of course, this will depend on your habit, but here are some must have for me:
Ant Bash Completion
command line completion in GlassFish
Grails Bash Completion and/or Autocomplete Grails Script Names in bash/zsh
Maven Tab Auto Completion in Bash
Oh let's see... cut, sort, grep, find

Resources