Files
w3m/doc/README.img
Fumitoshi UKAI 9efbc08856 w3m-img merge (w3m-0.2.4+cvs-1.278-img-2.2.patch.gz)
* NEWS: w3m-img merge
* .cvsignore: add w3mimgdisplay, w3mimgsize
* XMakefile: add image.c to SRCS
	     add image.o to OBJS
             add IMGDISPLAY, IMGSIZE
* config.h.dist: USE_IMAGE, IMGSIZE, IMGDISPLAY
* configure: add find_imlib
		ask use_image
	(config.h) add $imgtarget to EXT_TARGETS
		   $def_use_image
		   IMGSIZE, IMGDISPLAY
* fm.h (MAX_IMAGE): added
* fm.h (DEFAULT_PIXEL_PER_CHAR): fix for USE_IMAGE
* fm.h (DEFAULT_PIXEL_PER_LINE): added
* fm.h (B_REDRAW_IMAGE): added
* fm.h (IMG_FLAG_SKIP): added
* fm.h (IMG_FLAG_AUTO): added
* fm.h (IMG_FLAG_START): added
* fm.h (IMG_FLAG_STOP): added
* fm.h (IMG_FLAG_NEXT): added
* fm.h (IMG_FLAG_UNLOADED): added
* fm.h (IMG_FLAG_LOADED): added
* fm.h (IMG_FLAG_ERROR): added
* fm.h (MapArea): added
* fm.h (MapList): s/urls/alts/, add area
* fm.h (ImageCache): added
* fm.h (Image): added
* fm.h (Anchor): add image
* fm.h (Buffer): add imarklist, image_flag, need_reshape
* fm.h (RG_FRAME_SRC): added
* fm.h (ALIGN_MIDDLE): added
* fm.h (ALIGN_TOP): added
* fm.h (ALIGN_BOTTOM): added
* fm.h (QuietMessage): added
* fm.h (Imgdisplay): added
* fm.h (Imgsize): added
* fm.h (activeImage): added
* fm.h (displayImage): added
* fm.h (autoImage): added
* fm.h (useExtImageViewer): added
* fm.h (image_source): added
* fm.h (view_unseenobject): change default if USE_IMAGE
* fm.h (set_pixel_per_char): added
* fm.h (pixel_per_line): added
* fm.h (set_pixel_per_line): added
* fm.h (image_scale): added
* proto.h (dispI): added
* proto.h (stopI): added
* proto.h (deleteImage): added
* proto.h (getAllImage): added
* proto.h (loadImage): added
* proto.h (getImage): added
* proto.h (getImageSize): added
* proto.h (process_img): add width arg
* proto.h (loadImageBuffer): added
* proto.h (follow_map_menu): add a_img arg
* proto.h (getMapXY): added
* proto.h (newMapArea): added
* proto.h (touch_cursor): added
* proto.h (cURLcode): added
* proto.h (initImage): added
* proto.h (termImage): added
* proto.h (addImage): added
* proto.h (drawImage): added
* proto.h (clearImage): added
* anchor.c (addMultirowsImg): added
* buffer.c (discardBuffer): deleteImage if USE_IMAGE
* buffer.c (reshapeBuffer): buf->need_reshape check
* display.c (fmTerm): if activeImage, stop load image
* display.c (fmInit): if displayImage, initImage
* display.c (image_touch): added
* display.c (draw_image_flag): added
* display.c (redrawLineImage): added
* display.c (displayBuffer): buf->need_reshape = TRUE
			mode == B_REDRAW_IMAGE
			image flag checks
			force redraw image in mode == B_REDRAW_IMAGE
			displayBuffer if need reshape
			drawImage
* display.c (redrawNLine): redrawLineImage
* display.c (redrawLineImage): added
* display.c (disp_message_nsec): return immediately if QuietMessage
* etc.c (reset_signals): ignore SIGUSR1
* file.c (frame_source): added
* file.c (_MoveFile): added
* file.c (cur_baseURL): added
* file.c (cur_document_code): added
* file.c (cur_iseq): added
* file.c (loadGeneralFile): fix fmInitialized and prevtrap checks
			save cur_baseURL
			image_source load
			loadImageBuffer for "image/*"
			frame_source flag
			fix b->type when proc is loadImageBuffer
* file.c (process_img): add width arg
		parse height and width attr, align
		fix for inline-image
* file.c (process_input): fix for form <input type="image">
* file.c (HTMLtagproc1): pass h_env->limit to process_img()
		fix <img_alt> for inline-image
		save cur_baseURL
* file.c (HTMLlineproc2body): fix <img_alt> for inline-image
* file.c (loadHTMLstream): fix for inline-image
		fix fmInitialized and prevtrap checks
		save cur_document_code
		save image_flag
* file.c (loadGopherDir): save cur_document_code
		fix fmInitialized and prevtrap checks
* file.c (loadImageBuffer): added for inline-image
* file.c (save2tmp): fix fmInitialized and prevtrap checks
* frame.c (frame_download_source): set RG_FRAME_SRC flag
		image check
* funcname.tab (DISPLAY_IMAGE): added
* funcname.tab (STOP_IMAGE): added
* html.c (ALST_IMG): add align, ismap
* html.c (ALST_AREA): add shape, coords
* html.c (ALST_IMG_ALT): add width, height, usemap, ismap, hseq,
			xoffset, yoffset, top_margin, bottom_margin
* html.c (AttrMap): add shape, coords, ismap, xoffset, yoffset
* html.h (ATTR_SHAPE): added
* html.h (ATTR_COORDS): added
* html.h (ATTR_ISMAP): added
* html.h (ATTR_XOFFSET): added
* html.h (ATTR_YOFFSET): added
* html.h (ATTR_TOP_MARGIN): added
* html.h (ATTR_BOTTOM_MARGIN): added
* html.h (SHAPE_UNKNOWN): added
* html.h (SHAPE_DEFAULT): added
* html.h (SHAPE_RECT): added
* html.h (SHAPE_CIRCLE): added
* html.h (SHAPE_POLY): added
* image.c: added
* main.c (fversion): add USE_IMAGE
* main.c (fusage): -ppl option
* main.c (MAIN): set_pixel_per_char if ppc specified
		-ppl option
		loadImage
* main.c (pushBuffer): deleteImage
* main.c (quitfm): termImage
* main.c (selBuf): deleteImage
* main.c (followA): fix for inline-image and map area
* main.c (query_from_followform): getMapXY()
* main.c (setOpt): displayBuffer B_REDRAW_IMAGE
* main.c (follow_map): fix calculate x, y
* main.c (dispI): added
* main.c (stopI): added
* map.c: include <math.h>
* map.c (inMapArea): added
* map.c (follow_map_menu): add a_img arg to handle inline-image
* map.c (follow_map_panel): use MapArea
* map.c (getMapXY): added
* map.c (newMapArea): added
* menu.c (smChBuf): deleteImage
* parsetagx.c (toAlign): align top, bottom, middle
* rc.c (P_SCALE): added
* rc.c (CMT_PIXEL_PER_LINE): added
* rc.c (CMT_DISP_IMAGE): added
* rc.c (CMT_AUTO_IMAGE): added
* rc.c (CMT_EXT_IMAGE_VIEWER): added
* rc.c (CMT_IMAGE_SCALE): added
* rc.c (CMT_IMGDISPLAY): added
* rc.c (CMT_IMGSIZE): added
* rc.c (show_param): P_PIXELS
* rc.c (set_param): P_PIXELS
* rc.c (sync_with_option): initImage
* rc.c (to_str): P_PIXELS
* table.c (feed_table_tag): fix <img> for inline-image
* tagtable.tab (image): added
* terms.c (wgetch): retry read when EINTR or EAGAIN
* terms.c (touch_cursor): added
* w3mimgdisplay.c: added
* w3mimgsize.c: added
* doc/README.func (DISPLAY_IMAGE): added
* doc/README.func (STOP_IMAGE): added
* doc/README.img: added
* doc-jp/README.func (DISPLAY_IMAGE): added
* doc-jp/README.func (STOP_IMAGE): added
* doc-jp/README.img: added
* scripts/w3mhelp.cgi.in: show dispI, stopI
* scripts/multipart/multipart.cgi.in: inline image support
From: Fumitoshi UKAI  <ukai@debian.or.jp>
2002-01-31 17:54:47 +00:00

190 lines
5.9 KiB
Plaintext

Inline image support of w3m
2002/01/31
H. Sakamoto
Introduction
This is the extension for w3m to support inline image.
The patch for w3m-0.2.4 is available on the following site.
http://www2u.biglobe.ne.jp/~hsaka/w3m/index.html#img
patch/w3m-0.2.4-2.2.patch.gz
patch/README.img
Support
* Display inline image (GIF,PNG,JPEG, etc.) on terminals
(xterm,rxvt, etc.) of X11.
* Support inline image of <img> tag.
Support of attributes "width", "height", and "align".
* Direct display of image file which header is "Content-type: image/*"
* Support of <map> tag.
Support of attributes "shape" and "coords" of <area> tag.
* Support of an attribute "ismap" of <img> tag.
"w3m" adds coordinate of the cursor as ?<x>,<y> to url, and sends url.
* Support of an attribute "type=image" of <input> tag.
"w3m" sends coordinate of the cursor as <name>.x=<x>&<name>.y=<y>.
* Asynchronous loading of image files.
* Using cache of image file as pixmap.
Key functions
DISPLAY_IMAGE
Restart loading and drawing of images.
STOP_IMAGE
Stop loading and drawing of images in the current buffer.
SET_OPTION display_image=toggle
Toggle loading and drawing of images.
These functions are not keybinded as default.
Specify the following keymaps in ~/.w3m/keymap.
keymap X DISPLAY_IMAGE
keymap C-c STOP_IMAGE
keyamp t SET_OPTION display_image=toggle
Comandline options
-ppc <pixel>
# of pixels per character. The default value is automatically
detected. Must fit the width of font of terminal.
-ppl <pixel>
# of pixels per character. The default value is automatically
detected. Must fit the height of font of terminal.
Option panel
pixel_per_char
# of pixels per character. The default value is automatically
detected. Must fit the width of font of terminal.
pixel_per_line
# of pixels per character. The default value is automatically
detected. Must fit the height of font of terminal.
display_image
Display of inline image. The default is ON.
auto_image
Automatic loading of inline image. The default is ON.
If it is OFF, loading starts with a command DISPLAY_IMAGE.
ext_image_viewer
Use external image viewer, when a command VIEW_IMAGE or
view of image file which header is "Content-type: image/*".
The default is ON. If it is OFF, the image is directly displaied.
image_scale
Scale of image (%). The default value is 100(%).
imgdisplay
External command to display image". The default value is "w3mimgdisplay".
See "Setting w3mimgdisplay".
imgsize
External command to get size of image. The default value is "w3mimgsize".
Required programs
* w3m-0.2.4
http://w3m.sourceforge.net/
http://sourceforge.net/projects/w3m/
http://prdownloads.sourceforge.net/w3m/
* Imlib-1.9.8 (1.9.10 is recommendable.)
libungif-4.1.0b1 is recommendable.
Install
gunzip -c DIST/w3m-0.2.4.tar.gz | tar -xvf -
cd w3m-0.2.4
gunzip -c DIST/w3m-0.2.4-img-2.2.patch.gz | patch -p1
configure
# When you are asked "Inline image support (you need Imlib library)",
# answer "y".
# Select menu.
make
# To make "w3mimgdisplay" and "w3mimgsize", Imlib is required.
make install
# Must install "w3mimgdisplay" and "w3mimgsize" to $LIB(PREFIX/lib/w3m).
Setting w3mimgdisplay
"w3mimgdisplay" has the following options. Set options to fit terminal.
-x <offset_x>
The X origin of display of image on terminal. The default value is 2.
If the terminal is "xterm", the width of scroll bar is added.
If the terminal is "Eterm", it may be better to specify 5.
-y <offset_y>
The Y origin of display of image on terminal. The default value is 2.
If the terminal is "Eterm", it may be better to specify 5.
-bg <background>
Background color of terminal. The default value is automatically
detected. When the color is specified as #RRGGBB, escape '#'.
ex.)
w3m -o 'imgdisplay=w3mimgdisplay -x 5 -bg "#cccccc"'
Change log
2002/01/31 w3m-0.2.4-img-2.2
* Based on w3m-0.2.4+cvs-1.278.
2002/01/29 w3m-0.2.4-img-2.1
* Based on w3m-0.2.4+cvs-1.268.
2002/01/28 w3m-0.2.4-img-2.0
* Based on w3m-0.2.4+cvs-1.265.
* pixel_per_char and pixel_per_line are automatically detected.
* The bckground color of terminal is automatically detected.
* The source code to display images is moved to image.c
2002/01/08 w3m-0.2.4-img-1.18
* Based on w3m-0.2.4
2001/12/29 w3m-0.2.3.2-img-1.17
* Based on w3m-0.2.3.2+cvs-1.196.
2001/12/25 w3m-0.2.3.2-img-1.16.1
* [w3m-dev 02698] Thanks > Kazuhiko-san
2001/12/22 w3m-0.2.3.2-img-1.16
* Based on w3m-0.2.3.2.
2001/12/20 w3m-0.2.3.1-img-1.15
* Based on w3m-0.2.3.1.
* Support display of image with Content-Transfer-Encoding.
2001/11/29
* Start merge against CVS source (ChangeLog 1.71)
2001/11/17 w3m-0.2.2-img-1.14
* Based on w3m-0.2.2.
2001/11/14 w3m-0.2.1-inu-1.6-img-1.13
* Based on w3m-0.2.1-inu-1.6.
2001/11/05 w3m-0.2.1-inu-1.5-img-1.12
* Based on w3m-0.2.1-inu-1.5.
* Fixed the bug for <area>, <map>.
* Fixed the problem with xwnmo on kterm.
2001/10/03 w3m-0.2.1-inu-1.4-img-1.11
* Based on w3m-0.2.1-inu-1.4.
* Fixed bug when reading from stdin.
* Fixed "configure". Thanks > Fukagawa-san.
2001/08/01 w3m-0.2.1-img-1.10
* Adjust image position.
* Fixed scaling image.
2001/07/31 w3m-0.2.1-img-1.9
* Fixed initImgdisplay(). Thanks > David.
2001/07/29 w3m-0.2.1-img-1.8
* Fixed "configure".
2001/07/28 w3m-0.2.1-img-1.7
* Sorry, w3m-0.2.1-img-1.6 is not complete.
* Added "configure" and "Makefile" to the patch.
2001/07/27 w3m-0.2.1-img-1.6
* Created doc/README.img.
-------------------------------------------
Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
http://www2u.biglobe.ne.jp/~hsaka/