views:

31

answers:

3

Hi there.

I'm looking for some way to share code snippets taken directly from command prompt. For example:

plinjasa@pllzpc029 ~
$ ls

plinjasa@pllzpc029 ~
$ mkdir maindir

plinjasa@pllzpc029 ~
$ ls -l
total 0
drwxr-xr-x+ 1 plinjasa Domain Users 0 2010-08-26 15:22 maindir

plinjasa@pllzpc029 ~
$ cd maindir

plinjasa@pllzpc029 ~/maindir
$ touch somefile

plinjasa@pllzpc029 ~/maindir
$ ls -l
total 0
-rw-r--r-- 1 plinjasa Domain Users 0 2010-08-26 15:22 somefile

plinjasa@pllzpc029 ~/maindir
$ 

There are some solutions to show this with bash syntax highlighting (as you can see) but I don't see any way to preserve prompt coloring or anything which would help to read such snippet.

Any ideas?

[EDIT] Fixed example as it caused some confusion about having FTP coloring too. It's not important

A: 

Not easy at all, because of the different prompts, separators, etc. I would, for instance, separate logically the interactions with different programs (lftp and the shell itself), and reduce the prompt to the minimum expression. That is something like:

You open the lftp program and do whatever:

$ lftp
lftp> open -u ...
Password...
...
lftp> XXX
lftp> exit

then you can test into your shell prompt:

$ ls -l
total 0
drwx....

This way you separate different actuations to different programs, and reducing the prompt to a small word helps identifying the program being used.

Diego Sevilla
It's not what I really want. Leave FTP part. Having only bash prompt syntax-highlighting would be more than enough what I would like to have
yatsa
+3  A: 

You can capture console sessions using script. When you exit the session, there will be a file called typescript containing exactly what you've typed/seen on the console. You can then convert it (including console color codes) to HTML using ANSIFilter. Its output is not yet perfect, but might fit your needs.

If you don't need it to be portable or if the recipient is also using a UNIX/Linux terminal, you can also just send the typescript file, which can be viewn using cat or less -R in the terminal.

jkramer
A: 

You can use a utility to convert ansi colored terminal output to html. One of them is here: ansi2html.sh and I found it very useful. jkramer provided solution to obtain a text file with the full log from the terminal, which can be used with ansi2html.sh, so I won't repeat it here.

Michał Trybus