1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-07 15:21:46 +00:00
Commit Graph

94311 Commits

Author SHA1 Message Date
Kenichi Handa
c0be27fda0 charset.c (char_charset): Consider Vcharset_non_preferred_head only when the arg CHARSET_LIST is nil. 2010-04-20 15:30:26 +09:00
Stefan Monnier
ce5b453a44 Make variable forwarding explicit rather the using special values.
Basically, this makes the structure of buffer-local values and object
forwarding explicit in the type of Lisp_Symbols rather than use
special Lisp_Objects for that.  This tends to lead to slightly more
verbose code, but is more C-like, simpler, and makes it easier to make
sure we handled all cases, among other things by letting the compiler
help us check it.
* lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
Removing forwarding objects.
(enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
(struct Lisp_Symbol): Make the various forms of variable-forwarding
explicit rather than hiding them inside Lisp_Object "values".
(XFWDTYPE): New macro.
(XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
(XBUFFER_LOCAL_VALUE): Remove.
(SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
(SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
(SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
(struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
(struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
Remove the Lisp_Misc_* header.
(struct Lisp_Buffer_Local_Value): Redefine.
(BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
(struct Lisp_Misc_Any): Add filler to get the right size.
(struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
Lisp_Intfwd.
(DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
(DEFVAR_KBOARD): Allocate a forwarding object.
* data.c (do_blv_forwarding, store_blv_forwarding): New macros.
(let_shadows_global_binding_p): New function.
(union Lisp_Val_Fwd): New type.
(make_blv): New function.
(swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
(store_symval_forwarding, swap_in_global_binding, Fboundp)
(swap_in_symval_forwarding, find_symbol_value, Fset)
(let_shadows_buffer_binding_p, set_internal, default_value)
(Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
(Fkill_local_variable, Fmake_variable_frame_local)
(Flocal_variable_p, Flocal_variable_if_set_p)
(Fvariable_binding_locus):
* xdisp.c (select_frame_for_redisplay):
* lread.c (Fintern, Funintern, init_obarray, defvar_int)
(defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
* frame.c (store_frame_param):
* eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
* bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
value structure.
* buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
(clone_per_buffer_values): Only adjust markers into the current buffer.
(reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
(Fbuffer_local_value, set_buffer_internal_1)
(swap_out_buffer_local_variables):
Adapt to the new symbol value structure.
(DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
(defvar_per_buffer): Take a new arg for the fwd object.
(buffer_lisp_local_variables): Return a proper alist (different fix
for bug#4138).
* alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
(Fgarbage_collect): Don't handle buffer_defaults specially.
(mark_object): Handle new symbol value structure rather than the old
special Lisp_Misc_* objects.
(gc_sweep) <symbols>: Free also the buffer-local-value objects.
* term.c (set_tty_color_mode):
* bidi.c (bidi_initialize): Don't access the ->value field directly.
* buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
a buffer_local_flags.
* print.c (print_object): Get rid of impossible forwarding objects.
2010-04-19 21:50:52 -04:00
Stefan Monnier
56d365a93d (completion-styles-alist): Fix up last merge and document `substring'. 2010-04-19 14:33:11 -04:00
Stefan Monnier
87926e02dc * international/mule.el: Help the user choose a valid coding-system.
(read-buffer-file-coding-system): New function.
(set-buffer-file-coding-system): Use it.  Prompt the user if the
coding-system cannot encode all the chars.
2010-04-19 13:05:12 -04:00
Eli Zaretskii
fd3998ffe2 Cosmetic changes in src/bidi.c.
bidi.c (bidi_get_type, bidi_get_category)
 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
 (bidi_type_of_next_char, bidi_level_of_next_char): Declare
 static.  Use `INLINE' rather than `inline'.
2010-04-19 19:22:55 +03:00
Eli Zaretskii
940afb597e Improve commentary regarding redisplay. 2010-04-19 18:35:15 +03:00
Stefan Monnier
c80fa13c0d * vc-bzr: Use standard *vc* and *vc-diff* buffers.
(vc-bzr-shelve-show, vc-bzr-shelve-apply)
(vc-bzr-shelve-apply-and-keep, vc-bzr-shelve-snapshot):
Don't use *vc-bzr-shelve*.
2010-04-19 11:26:06 -04:00
Stefan Monnier
6e104790e7 Merge from emacs-23 2010-04-19 11:07:52 -04:00
Stefan Monnier
b5feea0fea * tmm.el: Add missing key-binding shortcuts.
(tmm-prompt): Remove obsolete call to x-popup-menu.
(tmm-get-keymap): Add key-binding shortcuts now that they're not
available in the "keyseq cache" any more.
2010-04-19 10:34:01 -04:00
Eli Zaretskii
9166b0f33f Mention in src/ChangeLog the bug number solved by 2010-04-19T12:12:13Z!eliz@gnu.org. 2010-04-19 16:17:44 +03:00
Stefan Monnier
79d74ac527 (completion-styles): Improve docstrings. 2010-04-19 09:17:40 -04:00
Eli Zaretskii
d1da276f60 .gdbinit (xsubchartable): New command. 2010-04-19 16:05:35 +03:00
Eli Zaretskii
37dcfea079 Fix crashes in GC in "emacs -nw".
xdisp.c (display_line): Don't write beyond the last glyph row in
 the desired matrix.  Fixes crashes in "emacs -nw", see
 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
 and http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
2010-04-19 15:12:13 +03:00
Juanma Barranquero
e42cd1a757 * dired.c (Ffile_attributes): Fix typo in docstring. 2010-04-19 05:06:29 +02:00
Stefan Monnier
9892380099 * custom.el (defcustom): Add edebug spec. 2010-04-18 22:32:47 -04:00
Juri Linkov
fd5c9dfa9e Test for special mode-class in view-buffer instead of view-file (bug#5513).
* view.el (view-file, view-buffer): Move test for special mode-class
from view-file to view-buffer.

* tar-mode.el (tar-extract): Turn if's into one cond
like in arc-mode.el.
2010-04-19 02:49:58 +03:00
Katsumi Yamaoka
bff3818b73 Synch with Gnus trunk:
2010-04-17  Teodor Zlatanov  <tzz@lifelogs.com>
 * gnus.texi (Gnus Versions, Oort Gnus): Mention the Git repo instead of
 the CVS repo.  Put the Git repo in the news section.
 * gnus-coding.texi (Gnus Maintainance Guide): Fixed title typo.
 Removed some mentions of CVS.  Mention the new Git repo.

2010-04-17  Teodor Zlatanov  <tzz@lifelogs.com>
 * smime.el: Don't mention CVS.
 * nnrss.el (nnrss-fetch): Don't mention CVS.
 * nnir.el: Don't mention CVS.
2010-04-18 23:24:22 +00:00
Juri Linkov
b3671a51b9 Add 7z archive format support (bug#5475).
* arc-mode.el (archive-zip-extract): Try to find 7z executable.
(archive-7z-extract): New defcustom.
(archive-find-type): Add magic string for 7z.
(archive-extract-by-stdout): Add new optional arg `stderr-file'.
If `stderr-file' is non-nil, use `(t stderr-file)' for the
`buffer' arg of `call-process'.
(archive-zip-extract): Check `archive-zip-extract' for "7z" and
call the function `archive-7z-extract' with the variable
`archive-7z-extract' let-bound to `archive-zip-extract'.
(archive-7z-summarize, archive-7z-extract): New functions.

* international/mule.el (auto-coding-alist):
* files.el (auto-mode-alist): Add 7z file extension.
2010-04-19 02:08:52 +03:00
Chong Yidong
a42dbee160 * programs.texi (Semantic): New node.
* maintaining.texi (EDE): New node.

* emacs.texi: Update node listing.

* misc.texi (Gnus): Use the `C-h i' keybinding for info.
2010-04-18 19:02:16 -04:00
Stefan Monnier
e951580547 Hash-cons pure data.
* alloc.c (Fpurecopy): Hash-cons if requested.
(syms_of_alloc): Update purify-flag docstring.
* loadup.el: Setup hash-cons for pure data.
2010-04-18 17:49:33 -04:00
Stefan Monnier
f8ea0098d9 Fix duplicate entries in cedet's loaddefs.el files.
* emacs-lisp/autoload.el (autoload-file-load-name): Be more clever.
Should make most file-local generated-autoload-file unnecessary.
(print-readably): Silence warnings.
(autoload-find-destination): Take load-name as an arg to make sure
it's the same as the one that will be in the file.
(autoload-generate-file-autoloads): Adjust to above changes.
Try to make the dataflow a bit simpler.
2010-04-18 17:45:44 -04:00
Chong Yidong
137327efbd Bugfix for ede-proj-makefile-insert-variables.
* cedet/ede/pmake.el (ede-proj-makefile-insert-variables): Don't
destroy list before using it.
2010-04-18 17:40:10 -04:00
Stefan Monnier
8a37fb25cb * cvs-status.el (cvs-refontify): Remove unused. 2010-04-18 17:37:29 -04:00
Stefan Monnier
b9f2036404 (Mathematics): Prefer Unicode charset. 2010-04-18 17:35:20 -04:00
Jan Djärv
22aa44a857 Set USER_POS in hint_flags to work around Cygwin problem.
gtkutil.c (xg_set_geometry): Set size in geometry string also.
(x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
2010-04-18 13:24:59 +02:00
Jay Belanger
f8b91752dd calc-bin.el (calc-radix): Have the O option turn on twos-complement mode. 2010-04-17 23:13:09 -05:00
Jay Belanger
a0d3397536 calc.el (calc-mode-map): Bind O to 'calc-missing-key'. 2010-04-17 22:09:18 -05:00
Jan Djärv
7aad87e884 Set _NET_WM_WINDOW_TYPE in menus. Looks bad with compiz otherwise.
xlwmenu.c (set_window_type): New function.
(make_windows_if_needed, XlwMenuRealize): Call set_window_type.
2010-04-17 20:18:12 +02:00
Jan D
f0bd159891 Don't redraw lucid menus more than needed. Use double buffer to reduce flicker.
* xlwmenu.c: Include Shell.h, remove duplicate declaration of
XlwMenuRedisplay.
(display_menu_item): Replace ws->window with ws->pixmap, remove
call to XftDrawRect.
(display_menu): Remove this and that argument.  Remove
just_compute_this_one_p. Fill pixmap at start and copy it to window
at end.
(expose_cb): New function.
(make_windows_if_needed): Replace XCreateWindow with XtCreatePopup.
Add eventhandler for expose to expose_cb.  Remove creation of
xft_draw.
(create_pixmap_for_menu): New function.
(remap_menubar): Pop down menus that aren't the same as in old_stack.
Set width, heigh, x, y on widget with XtVaSetValues.  Call
create_pixmap_for_menu.
Replace XUnmapWindow with XtPopdown.
Remowe two last parameters to display_menu.
(map_event_to_widget_value, XlwMenuRedisplay, Key, Select)
(pop_up_menu): Remowe two last parameters to display_menu.
(XlwMenuRealize): Call create_pixmap_for_menu, set w and pixmap.
Remove call to XftDrawCreate.
(XlwMenuDestroy): Free pixmap.  Call XtDestroyWidget instead of
XDestroyWindow.
(handle_motion_event): Only call handle_single_motion_event once.

* xlwmenuP.h (window_state): Add pixmap and w.
2010-04-17 19:43:03 +02:00
Dan Nicolaescu
bce3183024 Fix the version number for added files.
* vc-hg.el (vc-hg-working-revision): Check if the file is
registered after hg parent fails (Bug#5961).
2010-04-17 09:10:19 -07:00
Eli Zaretskii
43a03da53d Fix cursor positioning at end of R2L line on TTY frames.
xdisp.c (extend_face_to_end_of_line): Fix off-by-one error on
 TTY frames in testing whether a line needs face extension.
2010-04-17 19:02:18 +03:00
Chong Yidong
b8a1d5a14b Fix crash on NextStep terminal (Bug#5837)
* xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
terminal frames (Bug#5837).
2010-04-17 11:53:55 -04:00
Eli Zaretskii
ebb5722ecf Fix a crash when an NSM character is inserted at BEGV.
bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
 NEUTRAL_B or UNKNOWN_BT.
2010-04-17 16:34:23 +03:00
Eli Zaretskii
26cdf52838 Mirror continuation indicators for R2L lines; fix face extension on TTY.
xdisp.c (extend_face_to_end_of_line): Fix face extension at ZV.
 term.c (produce_special_glyphs): Mirror the backslash
 continuation character in R2L lines.
 xdisp.c (set_cursor_from_row, display_line): Use
 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
 row->continuation_lines_width.
 fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
 of continuation indicators on the fringes.
2010-04-17 15:33:05 +03:00
Eli Zaretskii
459035295c Fix two crashes with display of R2L lines in GUI sessions.
xdisp.c (next_element_from_buffer): Don't call
 bidi_paragraph_init if we are at ZV.  Fixes a crash when reseated to
 ZV by try_window_reusing_current_matrix.
 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
 which happens with R2L glyph rows.  Fixes a crash when inserting a
 character at end of an R2L line.
2010-04-17 13:29:40 +03:00
Eli Zaretskii
8fccb1179b Continue work on R2L paragraphs in GUI sessions.
xdisp.c (set_cursor_from_row): Don't be fooled by truncated
 rows: don't treat them as having zero-width characters.  Improve
 comments.
 (extend_face_to_end_of_line): Use window_box_width to compute the
 width of the stretch glyph, to account for margins.  If this is
 the last glyph row, use DEFAULT_FACE_ID, to avoid painting the
 rest of the window with the region face.
2010-04-17 12:46:44 +03:00
Jay Belanger
d8b01fef63 * calc-ext.el (calc-init-extensions): Add keybinding for 'calc-option'.
Add `calc-option-prefix-help' to calc-help autoloads.
(calc-inverse): Add "Option" to message, as appropriate.
(calc-hyperbolic): Add "Option" to message, as appropriate.
(calc-option, calc-is-option): New functions.

* calc-help.el (calc-full-help):  Add `calc-option-help'.
(calc-option-prefix-help): New function.

* calc-misc.el (calc-help): Add "Option" entry.

* calc.el (calc-local-var-list): Add `calc-option-flag'.
(calc-option-flag): New variable.
(calc-do): Set `calc-option-flag to nil.
(calc-set-mode-line): Add "Opt " as appropriate.
2010-04-16 21:47:25 -05:00
Glenn Morris
0433ffa6c7 Add some autoloads.
* htmlfontify.el (htmlfontify-buffer)
(htmlfontify-copy-and-link-dir): Autoload entry points.
2010-04-16 19:07:48 -07:00
Glenn Morris
8ecd59ca5a * etc/NEWS: Minor edits. 2010-04-16 19:06:12 -07:00
Chong Yidong
8507c65c5f Fix to vc-hg-annotate-extract-revision-at-line (Bug#5960).
* vc-hg.el (vc-hg-annotate-extract-revision-at-line): Expand file
name relative to the project root (Bug#5960).
2010-04-16 20:28:19 -04:00
Eli Zaretskii
0f4442efb1 Fix bug #5943: C-e in a truncated line doesn't auto-hscroll.
xdisp.c (set_cursor_from_row): Don't consider possibility of
 other rows with cursor unless they are different from this row and
 this row is part of a continued line.
2010-04-16 23:37:59 +03:00
Dan Nicolaescu
7d4e45f81c * s/freebsd.h: Restore osreldate.h include.
Suggested by Naohiro Aota.
2010-04-16 10:22:12 -07:00
Jan D
5ba5ec85f6 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used. 2010-04-16 19:05:31 +02:00
Glenn Morris
d52dbd3d45 * emacs.texi (Acknowledgments): Remove duplicate. 2010-04-16 00:43:29 -07:00
Glenn Morris
a20a9df3c0 * ack.texi, emacs.texi (Acknowledgments): Update for Org changes. 2010-04-16 00:41:19 -07:00
Katsumi Yamaoka
b1519d8561 Synch with Gnus trunk:
(Score File Format): Fix typo.
(Mail Group Commands): Add index entry.
By Andreas Seltenreich <seltenreich@gmx.de>.
2010-04-16 03:26:07 +00:00
Glenn Morris
46a4f27f4a * etc/NEWS: git version number issues don't need manual changes. 2010-04-15 19:50:42 -07:00
Glenn Morris
10a311748b Improve previous change. 2010-04-15 19:45:26 -07:00
Glenn Morris
e9ef97770f * vc-git.el (vc-git-print-log): Doc fix. 2010-04-15 19:39:22 -07:00
Glenn Morris
a77fe20c70 * maintaining.texi (VC Directory Commands): Mention stashes and shelves. 2010-04-15 19:35:59 -07:00