João Távora
d3a832a61a
Simplify hack-read-symbol-shorthands again (bug#50946)
...
* lisp/loadup.el (load-source-file-function): Don't set twice.
* lisp/shorthands.el (hack-read-symbol-shorthands): Simplify.
(load-with-shorthands-and-code-conversion): Remove.
* lisp/international/mule.el (load-with-code-conversion): Call
hack-read-symbol-shorthands-function. Set up shorthands.
(hack-read-symbol-shorthands-function): New variable.
2021-10-04 00:17:12 +01:00
Eli Zaretskii
340e527bed
Preload paren.el
...
* lisp/Makefile.in (COMPILE_FIRST): Add the dependencies of
comp.el, so that they are natively-compiled in advance.
* lisp/loadup.el ("paren"): Preload paren.el. (Bug#50934)
2021-10-02 11:06:18 +03:00
João Távora
9307889d68
Simplify shorthand injection (bug#50946)
...
* lisp/loadup.el: Load "shorthands" relatively late. Set
load-source-file-function to load-with-shorthands-and-code-conversion
* lisp/international/mule.el (hack-elisp-shorthands)
(load-with-shorthands-and-code-conversion): Move to
lisp/shorthands.el
* lisp/shorthands.el: New file.
2021-10-02 01:43:16 +01:00
João Távora
71857d4106
Move most of the shorthand implementation to C code
...
It passes the tests designed for the previous Elisp implementation.
Likely, this isn't the final form of the implementation. For one, the
reader is much slower and allocates a Lisp string for every atom read,
regardless if its already interned or not. This has the potential to
be catastrophic in terms of GC.
Also rename the main variable to elisp-shorthands, from the
repetitive shorthand-shorthands.
For some reason, I had to put 'hack-elisp-shorthands' and
'load-with-shorthands-and-code-conversion', the new source-file
loading functions, in lisp/international/mule.el.
Otherwise, lisp/loadup.el wouldn't see them, for some reason that I
didn't investigate. This should probably be fixed.
* lisp/shorthand.el: Remove.
* test/lisp/shorthand-tests.el: Remove.
* src/lread.c:
(read1, Fintern, Fintern_soft, Funintern): Use
oblookup_considering_shorthand.
(oblookup_considering_shorthand): New helper.
(syms_of_lread): Declare elisp-shorthands.
* lisp/progmodes/elisp-mode.el (elisp-shorthands):
Put a safe-local-variable spec.
* test/lisp/progmodes/elisp-mode-tests.el (elisp-shorthand-read-buffer)
(elisp-shorthand-read-from-string)
(elisp-shorthand-byte-compile-a-file)
(elisp-shorthand-load-a-file): New tests.
* test/lisp/progmodes/elisp-resources/simple-shorthand-test.el: New file
* lisp/loadup.el (load-source-file-function): Set to
load-with-shorthands-and-code-conversion.
* lisp/international/mule.el (hack-elisp-shorthands): Move here.
(load-with-shorthands-and-code-conversion): And here.
2021-09-27 01:07:11 +01:00
Mattias Engdegård
fc268ed439
Dump with lexical-binding bound to nil
...
* lisp/loadup.el (dump-mode): Temporarily bind `lexical-binding` to
nil while dumping. Otherwise, it will be t in Emacs by default
and that is not our intention (yet).
2021-09-20 10:14:35 +02:00
Eli Zaretskii
0788ab9e5c
; * lisp/loadup.el: Fix "Eager macro-expansion error" on w32.
2021-09-18 10:56:05 +03:00
Stefan Kangas
63f419f133
; Minor stylistic fixes found by checkdoc
2021-09-16 19:37:07 +02:00
Andrea Corallo
40736357b8
Rename feature nativecomp' into native-compile'
...
* test/src/comp-tests.el : Rename feature `nativecomp' into
`native-compile'.
* test/lisp/help-fns-tests.el (help-fns-test-lisp-defun): Likewise.
* src/comp.c (syms_of_comp): Likewise.
* lisp/startup.el (normal-top-level): Likewise.
* lisp/loadup.el: Likewise.
* lisp/help.el (help-function-arglist): Likewise.
* lisp/emacs-lisp/package.el (package--native-compile-async)
(package--delete-directory): Likewise.
* lisp/emacs-lisp/nadvice.el (advice--add-function): Likewise.
* lisp/emacs-lisp/comp.el (comp-ensure-native-compiler): Likewise.
* lisp/emacs-lisp/advice.el (ad-add-advice): Likewise.
2021-05-05 22:27:29 +02:00
Andrea Corallo
b064ddd3f6
Merge remote-tracking branch 'savannah/master' into native-comp
2021-04-13 12:06:23 +02:00
Stefan Monnier
5ad3893eba
* lisp/loadup.el: Use lexical-binding
2021-04-10 16:58:11 -04:00
Andrea Corallo
b77575198c
; * lisp/loadup.el: Fix comment.
2021-04-06 21:03:42 +02:00
Andrea Corallo
6f8ec14491
Output native compiled preloaded files into the 'preloaded' subfolder
...
* src/comp.c (fixup_eln_load_path): Account the fact that the
file can be dumped in the 'preloaded' subfolder.
* lisp/loadup.el: Likewise.
* src/lread.c (maybe_swap_for_eln1): New function.
(maybe_swap_for_eln): Handle 'preloaded' subfolder.
* src/Makefile.in (LISP_PRELOADED): Export preloaded files.
2021-04-04 22:41:17 +02:00
Andrea Corallo
6ca6c71cd0
Merge remote-tracking branch 'savannah/master' into native-comp
2021-03-19 15:28:00 +01:00
Lars Ingebrigtsen
6a75b6fcb1
Don't pre-load facemenu
...
* lisp/facemenu.el (facemenu-add-face-function): Move to avoid a
compilation warning.
(facemenu-color-alist): Made obsolete.
* lisp/faces.el (read-color): Don't use it.
* lisp/loadup.el ("emacs-lisp/syntax"): Don't load facemenu.
* lisp/wid-edit.el (color): Don't use facemenu-color-alist.
(widget-color--choose-action): Require facemenu.
(widget-color-action): Ditto.
* lisp/progmodes/cperl-mode.el (facemenu): Require.
* lisp/textmodes/sgml-mode.el (facemenu): Require.
2021-03-18 05:55:16 +01:00
Lars Ingebrigtsen
1e9c9ebee3
Unbind M-o' and add new C-x x f' binding
...
* doc/lispref/modes.texi (Other Font Lock Variables):
`font-lock-fontify-block' is no longer bound.
* lisp/bindings.el (ctl-x-x-map): Bind `font-lock-update'.
* lisp/font-lock.el (font-lock-update): New command written by
Gregory Heytings <gregory@heytings.org>.
* lisp/loadup.el: Remove transitional experimental code.
2021-03-18 05:10:37 +01:00
Andrea Corallo
711b2c8349
* lisp/loadup.el: Don't load pcase on native builds (bug#47025).
2021-03-10 15:56:05 +01:00
Andrea Corallo
43b0df62cd
Merge commit ' 9cbdf20316' into native-comp
2021-03-09 10:03:47 +01:00
Eli Zaretskii
b456b19ec4
Fix typos and doc strings in native-compilation files
...
* lisp/emacs-lisp/comp.el (comp-speed, comp-debug, comp-verbose)
(comp-always-compile, comp-deferred-compilation-deny-list)
(comp-bootstrap-deny-list, comp-never-optimize-functions)
(comp-async-jobs-number, comp-async-cu-done-hook)
(comp-async-all-done-hook, comp-async-env-modifier-form)
(comp-pass, comp-native-compiling, comp-post-pass-hooks)
(comp-known-predicate-p, comp-pred-to-cstr)
(comp-symbol-values-optimizable, comp-limple-assignments)
(comp-limple-calls, comp-limple-branches, comp-block)
(comp-vec--verify-idx, comp-vec-aref, comp-vec-append)
(comp-vec-prepend, comp-block-preds)
(comp-ensure-native-compiler, comp-log, comp-log-func)
(comp-loop-insn-in-block, comp-byte-frame-size)
(comp-add-func-to-ctxt, comp-spill-lap-function, comp-spill-lap)
(comp-lap-fall-through-p, comp-new-frame, comp-emit-set-call)
(comp-copy-slot, comp-latch-make-fill, comp-emit-cond-jump)
(comp-body-eff, comp-op-case, comp-prepare-args-for-top-level)
(comp-limplify-top-level, comp-negate-arithm-cmp-fun)
(comp-emit-assume, comp-cond-cstrs-target-mvar)
(comp-function-foldable-p, comp-function-call-maybe-fold)
(comp-form-tco-call-seq, comp-clean-up-stale-eln)
(comp-delete-or-replace-file, comp--native-compile)
(native--compile-async, native-compile)
(batch-byte-native-compile-for-bootstrap): Fix typos, wording, and
punctuation in doc strings.
* lisp/loadup.el: Fix typos.
* src/lread.c (syms_of_lread): Doc fix.
2021-03-04 20:36:43 +02:00
Stefan Kangas
697aaafca3
Convert isearch menu to easymenu
...
* lisp/isearch.el (isearch-menu-bar-yank-map)
(isearch-menu-bar-map, isearch-mode-map): Move menu definition
from here...
(isearch-menu-bar-map): ...to here, and convert to easymenu.
* lisp/loadup.el ("emacs-lisp/easymenu"): Move before isearch.el.
2021-02-28 00:07:32 +01:00
Stefan Kangas
cd411ecb28
Convert emacs-lisp-mode menu to easy-menu-define
...
* lisp/loadup.el: Preload easymenu.
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode-map): Convert menu to
use easy-menu-define (bug#24774).
2021-02-27 15:24:35 +01:00
Andrea Corallo
f92bb788a0
Merge remote-tracking branch 'savannah/master' into native-comp
2021-02-17 22:26:28 +01:00
Lars Ingebrigtsen
0334ac671c
Also mention `M-o M-o' removal
...
* lisp/loadup.el (facemenu-keymap-restore): Also restore `M-o M-o'.
2021-02-14 16:55:37 +01:00
Andrea Corallo
2fcb85c3e7
Merge remote-tracking branch 'savannah/master' into HEAD
2021-02-10 21:56:55 +01:00
Lars Ingebrigtsen
81e55fa6c3
Fix build problem with previous facemenu change
...
* lisp/facemenu.el (facemenu-add-face-function): Move to avoid a
warning.
(list-colors-display): Autoload.
2021-02-10 20:37:14 +01:00
Lars Ingebrigtsen
21e475ea0c
Remove the 'M-o' ('facemap-keymap') binding experimentally
...
* doc/lispref/maps.texi (Standard Keymaps):
* doc/lispref/keymaps.texi (Prefix Keys): Remove mentions.
* etc/facemenu-removal.txt: New temporary file.
* lisp/loadup.el: Don't load facemenu.el.
(removed-facemenu-command): New command.
(facemenu-keymap-restore): New function.
* lisp/textmodes/text-mode.el (center-paragraph): Remove binding.
(center-line): Remove binding.
2021-02-10 19:38:18 +01:00
Andrea Corallo
5db5064395
Merge remote-tracking branch 'savannah/master' into HEAD
2021-01-02 10:11:15 +01:00
Paul Eggert
ba05d005e5
Update copyright year to 2021
...
Run "TZ=UTC0 admin/update-copyright".
2021-01-01 01:13:56 -08:00
Andrea Corallo
715a1ca174
Merge remote-tracking branch 'savannah/master' into HEAD
2020-12-06 18:07:27 +01:00
Lars Ingebrigtsen
f365eb2e05
Preload iso-trans.el
...
* lisp/loadup.el ("international/iso-transl"): Load by default so
that we get `Alt-' bindings (bug#21310).
* lisp/international/iso-transl.el: Remove autoloads and some
comments.
2020-12-04 10:46:34 +01:00
Andrea Corallo
2a8bf2222d
Merge remote-tracking branch 'savannah/master' into dev
2020-11-14 22:07:54 +01:00
Philipp Stephani
b13e87c35b
Capitalize portable dump messages.
...
We capitalize all other messages during the dump, so capitalize the
"dump mode" and "dumping fingerprint" ones as well for consistency.
* src/pdumper.c (Fdump_emacs_portable): Capitalize fingerprint message
prefix.
* lisp/loadup.el: Capitalize "dump mode" message.
2020-11-14 13:33:07 +01:00
Andrea Corallo
8b135af5bb
Provide feature nativecomp and make use of it
...
* lisp/emacs-lisp/comp.el (comp-ensure-native-compiler): Use
`featurep' to identify if the native compiler is available.
* lisp/emacs-lisp/nadvice.el (advice--add-function): Likewise.
* lisp/emacs-lisp/package.el (package--delete-directory): Likewise.
* lisp/loadup.el: Likewise.
* src/comp.c (syms_of_comp): Provide feature nativecomp.
2020-10-10 18:47:45 +02:00
Andrea Corallo
87c6aa13b3
Make primitive redefinition effective through trampoline synthesis
...
* lisp/loadup.el (dump-mode): Set `comp-enable-subr-trampolines'
when finished bootstrap.
* src/data.c (Ffset): Call `comp-enable-subr-trampolines' when
redefining a subr.
* src/comp.c (syms_of_comp): Define `comp-subr-trampoline-install'
symbol.
(syms_of_comp): Define `comp-enable-subr-trampolines' variable.
2020-10-05 21:32:38 +02:00
Andrea Corallo
6a726c5ad7
Merge remote-tracking branch 'savannah/master' into HEAD
2020-09-13 18:20:21 +02:00
Stefan Monnier
f7e35f8162
* lisp/loadup.el ("button"): Move to after loaddefs.el
2020-09-10 22:10:02 -04:00
Andrea Corallo
67c5369156
Rename and move eln system directory
...
Rename eln sys directory into 'native-lisp' and move it from
"$(DESTDIR)${libexecdir}/emacs/${version}/${configuration}/" to
"$(DESTDIR)${libdir}/emacs/".
Add to the directory name used to disambiguate the eln compatibility
the Emacs version to have it more user friendly.
* Makefile.in (clean, install-eln): Rename eln-cache into
native-lisp.
(ELN_DESTDIR): Move from
'$(DESTDIR)${libexecdir}/emacs/${version}/${configuration}/' to
'$(DESTDIR)${libdir}/emacs/'.
* lisp/loadup.el: Update for comp-native-path-postfix ->
comp-native-version-dir rename.
* src/comp.c (syms_of_comp): Rename eln-cache -> native-lisp.
(syms_of_comp, Fcomp_el_to_eln_filename): Rename
comp-native-path-postfix -> comp-native-version-dir.
(hash_native_abi): Rework and add emacs-version to
comp-native-version-dir.
2020-09-04 17:12:22 +02:00
Andrea Corallo
171db31101
Make install target functional for new eln-cache directory arrangement
...
* src/comp.h (fixup_eln_load_path): New extern.
* src/comp.c (fixup_eln_load_path): New function.
* src/pdumper.c (dump_do_dump_relocation): Update to make use of
'fixup_eln_load_path'.
* lisp/loadup.el: Update to store in the compilation unit the
correct eln-cache installed path. Rename --lisp-dest -> --eln-dest
and.
* Makefile.in: Pass the eln destination directory to
src/Makefile. Rename LISP_DESTDIR -> ELN_DESTDIR.
(ELN_DESTDIR): Define.
(install-eln): New target.
(install): Add install-eln as prerequisite.
* src/Makefile.in: Rename --lisp-dest -> --eln-dest and
LISP_DESTDIR -> ELN_DESTDIR.
2020-08-17 18:04:23 +02:00
Andrea Corallo
f5dceed09a
* lisp/loadup.el: Use new 'native-comp-available-p'.
2020-05-23 14:25:44 +01:00
Andrea Corallo
8db8c851ad
Always set load-true-file-name' where load-file-name' is set too.
...
Fix bug#40620.
* lisp/cus-dep.el (custom-make-dependencies): Set
load-true-file-name.
* lisp/emacs-lisp/package.el (package-quickstart-refresh):
Likewise.
* lisp/international/mule.el (load-with-code-conversion):
Likewise.
* lisp/loadup.el (load-true-file-name): Likewise.
2020-04-14 19:58:41 +01:00
Andrea Corallo
3dd6cf8139
Implement working make install for native build.
2020-04-12 16:52:05 +01:00
Andrea Corallo
f4156b452f
Implement position independent dump.
...
Set the filename for every compilation unit as realtive to obtain a
position independent dump.
* lisp/loadup.el: Modify filename for every compilation unit as
position independent.
* src/pdumper.c (dump_do_dump_relocation): Update to be invocation
directory relative.
2020-04-12 16:52:05 +01:00
Mattias Engdegård
43203d5068
* lisp/loadup.el: Set max-specpdl-size to 1800 when loading cl-generic.el.
2020-01-01 17:38:42 +01:00
Paul Eggert
365e01cc9f
Update copyright year to 2020
...
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Stefan Monnier
2aaced1686
* lisp/loadup.el: Load minibuffer after cl-generic
...
This is so minibuffer.el can make use of cl-generic
* lisp/minibuffer.el (minibuffer-local-completion-map):
Move switch-to-completions bindings here from...
* lisp/simple.el (minibuffer-local-completion-map): ... here.
2019-10-27 13:21:21 -04:00
Juri Linkov
7970c89c77
Text-based nox builds compiled without X window support
2019-09-04 22:05:05 +03:00
Juri Linkov
3e0ad29a60
Frame-local tab-bar and window-local tab-line.
...
* etc/NEWS: Add 'tab-bar-mode' and 'global-tab-line-mode'.
* etc/TODO: Remove tab-related items.
* lisp/cus-start.el: Add tab-bar-mode, tab-bar-max-label-size.
* lisp/frame.el (frame-notice-user-settings): handle tab-bar-lines.
* lisp/loadup.el: Load "tab-bar".
* lisp/menu-bar.el (menu-bar-options-save): Add tab-bar-mode.
(menu-bar-showhide-menu): Define showhide-tab-bar.
* lisp/startup.el (tab-bar-images-pixel-height): New defconst.
(command-line): Reset tab-bar-mode.
(x-apply-session-resources): Add "tabBar", "TabBar".
* lisp/subr.el (read-key): Add tab-bar.
* lisp/tab-bar.el: New file.
* lisp/tab-line.el: New file.
* lisp/window.el (window--dump-frame): Add tab-bar-height.
* src/dispextern.h (enum window_part): Add ON_TAB_LINE.
(struct glyph_matrix): Add tab_line_p.
(struct glyph_row): Add tab_line_p.
(MATRIX_TAB_LINE_ROW): New macro.
(MATRIX_FIRST_TEXT_ROW): Handle more mode lines.
(MR_PARTIALLY_VISIBLE_AT_TOP): Add WINDOW_TAB_LINE_HEIGHT.
(MATRIX_TAB_LINE_HEIGHT, CURRENT_TAB_LINE_HEIGHT)
(DESIRED_TAB_LINE_HEIGHT): New macros.
(enum face_id): Add TAB_BAR_FACE_ID and TAB_LINE_FACE_ID.
(struct it): Add tab_line_p.
(tab_bar_item_idx, tab_bar_item_image): New enums.
(DEFAULT_TAB_BAR_LABEL_SIZE, DEFAULT_TAB_BAR_BUTTON_MARGIN)
(DEFAULT_TAB_BAR_BUTTON_RELIEF, DEFAULT_TAB_BAR_IMAGE_HEIGHT):
New constants.
* src/dispnew.c (adjust_glyph_matrix): Use window_wants_tab_line.
(shift_glyph_matrix): Add WINDOW_TAB_LINE_HEIGHT.
(clear_current_matrices, clear_desired_matrices):
Call clear_glyph_matrix on tab_bar_window.
(blank_row): Add WINDOW_TAB_LINE_HEIGHT.
(required_matrix_height): Change 2 to 3.
(fake_current_matrices): Reset tab_line_p.
(adjust_frame_glyphs_for_window_redisplay): Handle tab_bar_window.
Add FRAME_TAB_BAR_HEIGHT and FRAME_TAB_BAR_LINES.
(free_glyphs): Handle tab_bar_window.
(update_frame): Handle tab_bar_window.
(update_window): Handle row->tab_line_p.
(scrolling_window): Change arg type from bool to int.
Change header_line_p to tab_line_p.
(buffer_posn_from_coords): Add window_wants_tab_line.
(mode_line_string): Use MATRIX_TAB_LINE_ROW for part ON_TAB_LINE.
* src/frame.c (frame_default_tab_bar_height): New internal variable.
(adjust_frame_size): Handle tab_bar_window.
(make_frame): Reset tab_bar_redisplayed, tab_bar_resized and
last_tab_bar_item.
(Ftab_bar_pixel_width): New function.
(frame_parms): Add tab-bar-lines.
(gui_figure_window_size): Add new arg tabbar_p.
(syms_of_frame): Add Qtab_bar_size, Qupdate_frame_tab_bar,
Qfree_frame_tab_bar, Qtab_bar_lines, Stab_bar_pixel_width.
Add Qtab_bar_lines to frame_inhibit_implied_resize.
(tab-bar-mode): New variable.
* src/frame.h (GCALIGNED_STRUCT): Add tab_bar_window,
desired_tab_bar_string, current_tab_bar_string.
(GCALIGNED_STRUCT): Add tab_bar_items, last_tab_bar_item,
minimize_tab_bar_window_p, tab_bar_redisplayed, tab_bar_resized,
tab_bar_lines, tab_bar_height, n_tab_bar_rows, n_tab_bar_items.
(fset_tab_bar_items, fset_tab_bar_window)
(fset_current_tab_bar_string, fset_desired_tab_bar_string):
New inlines.
(FRAME_TAB_BAR_LINES, FRAME_TAB_BAR_HEIGHT): New macros.
(FRAME_TOP_MARGIN, FRAME_TOP_MARGIN_HEIGHT):
Use FRAME_TAB_BAR_LINES.
* src/fringe.c (draw_fringe_bitmap_1, update_window_fringes):
Add WINDOW_TAB_LINE_HEIGHT.
* src/gtkutil.c (xg_frame_set_char_size): Add FRAME_TABBAR_WIDTH.
(x_wm_set_size_hint): Add FRAME_TABBAR_WIDTH.
* src/keyboard.c (read_char): Handle Qtab_bar.
(kbd_buffer_get_event): Handle TAB_BAR_EVENT.
(make_lispy_position): Add WINDOW_TAB_LINE_HEIGHT.
Handle TAB_BAR_EVENT.
(tab_bar_items_vector, tab_bar_item_properties, ntab_bar_items):
New internal variables.
(tab_bar_items, process_tab_bar_item, set_prop_tab_bar)
(parse_tab_bar_item, init_tab_bar_items, append_tab_bar_item):
New functions.
(read_char_x_menu_prompt, read_key_sequence): Handle Qtab_bar.
(tab-bar-separator-image-expression): New variable.
* src/keymap.c (syms_of_keymap): Add Qtab_bar and Qtab_line.
* src/menu.c (x_popup_menu_1, Fx_popup_dialog): Handle Qtab_bar.
* src/termhooks.h (enum event_kind): Add TAB_BAR_EVENT.
(GCALIGNED_STRUCT): Add change_tab_bar_height_hook.
* src/w32fns.c (w32_frame_parm_handlers): Add w32_set_tab_bar_lines.
* src/w32term.c (w32_draw_window_cursor): Add WINDOW_TAB_LINE_HEIGHT.
* src/window.c (window_body_height): Add WINDOW_TAB_LINE_HEIGHT.
(Fwindow_tab_line_height): New function.
(coordinates_in_window): Use window_wants_tab_line with
CURRENT_TAB_LINE_HEIGHT.
(window_relative_x_coord): Add ON_TAB_LINE.
(Fcoordinates_in_window_p): Add ON_TAB_LINE.
(window_from_coordinates): Add new arg tab_bar_p.
(Fwindow_line_height): Use window_wants_tab_line with
WINDOW_TAB_LINE_HEIGHT.
(Fwindow_lines_pixel_dimensions): Add WINDOW_TAB_LINE_HEIGHT.
(make_window): Set tab_line_height to -1.
(window_wants_tab_line): New function.
(window_internal_height): Use window_wants_tab_line.
(window_scroll_pixel_based): Add WINDOW_TAB_LINE_HEIGHT.
(Frecenter): Set minimize_tab_bar_window_p to 1.
(GCALIGNED_STRUCT): Add frame_tab_bar_lines and frame_tab_bar_height.
(Fcurrent_window_configuration): Set frame_tab_bar_lines and
frame_tab_bar_height.
(set_window_scroll_bars): Add WINDOW_TAB_LINE_HEIGHT.
(syms_of_window): Add Qtab_line_format and Swindow_tab_line_height.
* src/window.h (GCALIGNED_STRUCT): Add tab_line_height.
(WINDOW_TAB_BAR_P, WINDOW_TAB_LINE_HEIGHT, WINDOW_TAB_LINE_LINES):
New macros.
(WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y, WINDOW_TAB_LINE_HEIGHT):
Add WINDOW_TAB_BAR_P.
* src/xdisp.c (window_box_height): Add window_wants_tab_line with
MATRIX_TAB_LINE_ROW and CURRENT_TAB_LINE_HEIGHT.
(pos_visible_p): Use window_wants_tab_line.
Add WINDOW_TAB_LINE_HEIGHT.
(get_glyph_string_clip_rects): Add WINDOW_TAB_LINE_HEIGHT.
(get_phys_cursor_geometry): Add WINDOW_TAB_LINE_HEIGHT.
(remember_mouse_glyph): Use MATRIX_TAB_LINE_ROW for part
ON_TAB_LINE.
(init_iterator): Use MATRIX_TAB_LINE_ROW for TAB_LINE_FACE_ID.
Add WINDOW_TAB_LINE_HEIGHT. Add window_wants_tab_line.
(Fwindow_text_pixel_size): Add WINDOW_TAB_LINE_HEIGHT.
(prepare_menu_bars): Call update_tab_bar.
(update_tab_bar, build_desired_tab_bar_string)
(display_tab_bar_line, tab_bar_height, Ftab_bar_height)
(redisplay_tab_bar, tab_bar_item_info, get_tab_bar_item)
(handle_tab_bar_click, note_tab_bar_highlight): New functions.
(compute_window_start_on_continuation_line): Use window_wants_tab_line.
(try_cursor_movement): Use window_wants_tab_line with
CURRENT_TAB_LINE_HEIGHT.
(redisplay_window): Use window_wants_tab_line with
CURRENT_TAB_LINE_HEIGHT.
(try_window_reusing_current_matrix): Use window_wants_tab_line
with WINDOW_TAB_LINE_HEIGHT.
(Fdump_tab_bar_row): New function.
(compute_line_metrics): Add WINDOW_TAB_LINE_HEIGHT.
(display_line): Use window_wants_tab_line.
(display_mode_line): Set tab_line_p to true if face_id is
TAB_LINE_FACE_ID.
(Fformat_mode_line): Handle Qtab_line and Qtab_bar.
(gui_clear_end_of_line): Add WINDOW_TAB_LINE_HEIGHT.
(erase_phys_cursor): Use WINDOW_TAB_LINE_HEIGHT.
(show_mouse_face): Use tab_bar_window.
(note_mode_line_or_margin_highlight): Use MATRIX_TAB_LINE_ROW for
area ON_TAB_LINE.
(note_mouse_highlight): Call note_tab_bar_highlight,
(expose_frame): Handle tab_bar_window.
(syms_of_xdisp): Add Sdump_tab_bar_row and Stab_bar_height.
(auto-resize-tab-bars, auto-raise-tab-bar-buttons)
(tab-bar-border, tab-bar-button-margin, tab-bar-button-relief)
(tab-bar-max-label-size): New variables.
* src/xfaces.c (lookup_basic_face): Add TAB_LINE_FACE_ID and
TAB_BAR_FACE_ID.
(syms_of_xfaces): Define Qtab_bar and Qtab_line.
* src/xfns.c (x_set_tab_bar_lines, x_change_tab_bar_height):
New functions.
(xic_set_statusarea): Add FRAME_TABBAR_TOP_HEIGHT.
(frame_geometry): Add FRAME_TAB_BAR_HEIGHT and Qtab_bar_size.
* src/xterm.c (x_draw_image_relief): Use tab_bar_button_relief.
(x_draw_image_relief): Use TAB_BAR_FACE_ID.
(handle_one_xevent): Handle tab_bar_window.
(x_set_window_size_1): Add FRAME_TABBAR_WIDTH.
(x_create_terminal): Set change_tab_bar_height_hook.
* src/xterm.h (struct x_output): Add tabbar_top_height,
tabbar_bottom_height, tabbar_left_width, tabbar_right_width
tabbar_widget, tabbar_in_hbox, tabbar_is_packed.
(FRAME_TABBAR_TOP_HEIGHT): Add FRAME_TABBAR_TOP_HEIGHT,
FRAME_TABBAR_BOTTOM_HEIGHT, FRAME_TABBAR_HEIGHT,
FRAME_TABBAR_LEFT_WIDTH, FRAME_TABBAR_RIGHT_WIDTH,
FRAME_TABBAR_WIDTH.
2019-08-31 23:40:07 +03:00
Paul Eggert
f744797af1
Go back to "Maintainer: emacs-devel@gnu.org"
...
Restore lines saying "Maintainer: emacs-devel@gnu.org" when there is
no special maintainer for a file. Although this wasn't documented
it was common practice and removing the lines didn't have consensus.
2019-05-25 14:25:18 -07:00
Paul Eggert
bef1be8730
Fixes for "Maintainer:" and related lines
...
Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines,
which are not that useful. It also cleans up and regularizes a
few similar lines.
2019-05-19 21:34:27 -07:00
Paul Eggert
3b69e02a24
Rename CANNOT_DUMP to HAVE_UNEXEC
...
* configure.ac (CANNOT_DUMP): Remove. All uses removed,
or changed to the negative of with_unexec.
(HAVE_UNEXEC): New macro. All uses of CANNOT_DUMP changed
to the negative of this macro.
2019-02-01 13:05:39 -08:00
Stefan Monnier
ce085f1d61
* lisp/loadup.el (load-file-name): Set back to nil
2019-01-25 16:15:22 -05:00