* 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>
190 lines
5.9 KiB
Plaintext
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/
|