how to browse data with many many columns

3 vues
Accéder directement au premier message non lu

patiobarbecue

non lue,
21 déc. 2008, 19:18:0121/12/2008
à Help-gn...@gnu.org

Dear there,

I have data file with many columns. The first line has field names as usual.
I am reading column 35 for example, CTRL+v will turn the page BUT focus on
column 1, and I have to locate column 35 again -:) Is there a convenient
way?
Also is it possible to keep the first line (table field names) visible while
browse line 200?

Thanks for your reply in advance.

Michael
--
View this message in context: http://www.nabble.com/how-to-browse--data-with-many-many-columns-tp21120962p21120962.html
Sent from the Emacs - Help mailing list archive at Nabble.com.

Bernardo Bacic

non lue,
22 déc. 2008, 04:10:3122/12/2008
à Help-gn...@gnu.org
it was a dark and stormy night when patiobarbecue said,

> Dear there,
>
> I have data file with many columns. The first line has field names as usual.
> I am reading column 35 for example, CTRL+v will turn the page BUT focus on
> column 1, and I have to locate column 35 again -:) Is there a convenient
> way?
> Also is it possible to keep the first line (table field names) visible while
> browse line 200?
>
> Thanks for your reply in advance.
>
> Michael


you may want to give a try to this http://user.it.uu.se/~mic/pager.el


Andreas Politz

non lue,
22 déc. 2008, 04:46:3322/12/2008
à
patiobarbecue wrote:
> Dear there,
>
> I have data file with many columns. The first line has field names as usual.
> I am reading column 35 for example, CTRL+v will turn the page BUT focus on
> column 1, and I have to locate column 35 again -:) Is there a convenient
> way?

Indeed.

,----[ C-h f set-goal-column RET ]
| set-goal-column is an interactive compiled Lisp function in `simple.el'.
| It is bound to C-x C-n.
| (set-goal-column ARG)
|
| Set the current horizontal position as a goal for C-n and C-p.
| Those commands will move to this position in the line moved to
| rather than trying to keep the same horizontal position.
| With a non-nil argument, clears out the goal column
| so that C-n and C-p resume vertical motion.
| The goal column is stored in the variable `goal-column'.
|
`----


> Also is it possible to keep the first line (table field names) visible while
> browse line 200?
>

(setq header-line-format
(buffer-substring 1 (line-end-position (goto-char 1))))


You need to eval this the buffers context (e.g. with M-:).


-ap

patiobarbecue

non lue,
22 déc. 2008, 09:50:2422/12/2008
à Help-gn...@gnu.org

thanks, Andreas, it works pretty well. is it possible to out the code in
.emacs, or even bind it to a key?

(setq header-line-format
(buffer-substring 1 (line-end-position (goto-char 1))))
so I don't need to type it in everytime. After all, it is a common task for
me to read tables.

Sincerely Yours,
Michael

--
View this message in context: http://www.nabble.com/how-to-browse--data-with-many-many-columns-tp21120962p21129072.html

Andreas Politz

non lue,
22 déc. 2008, 15:42:2522/12/2008
à
patiobarbecue wrote:
> thanks, Andreas, it works pretty well. is it possible to out the code in
> .emacs, or even bind it to a key?
> (setq header-line-format
> (buffer-substring 1 (line-end-position (goto-char 1))))
> so I don't need to type it in everytime. After all, it is a common task for
> me to read tables.
>
> Sincerely Yours,
> Michael
>
>

Try this function, you can bind it like any other command.

(defun buffer-line-as-header (&optional lnum)
"Use line at linenumber LNUM as headerline, defaulting to the current line.
With a non-numeric prefix arg (C-g), restore the default value of
`header-line-format'. Otherwise the prefix arg determines the linenumber to
use."
(interactive "P")
(let ((lnum (if (null lnum)
(line-number-at-pos)
(if (numberp lnum)
lnum
0))))
(cond
((or (< lnum 0)
(> lnum (line-number-at-pos (point-max))))
(error "No such linenumber : %d" lnum))
((= 0 lnum)
(setq header-line-format (default-value 'header-line-format)))
(t
(save-excursion
(goto-line lnum)
(setq header-line-format
`(:eval (let ((line ,(buffer-substring (line-beginning-position) (line-end-position))))
(concat ;;acount for fringes, scroll-bar and scrolling
(propertize " " 'display (list 'space :width
(+ (fringe-columns 'left t)
(scroll-bar-columns 'left))))
(substring line (min (1- (length line))
(window-hscroll))))))))))))

Répondre à tous
Répondre à l'auteur
Transférer
0 nouveau message