1. 17 Nov, 2014 2 commits
    • Lars Magne Ingebrigtsen's avatar
    • Paul Eggert's avatar
      Improve time stamp handling, and be more consistent about it. · 0921dbc3
      Paul Eggert authored
      This implements a suggestion made in:
      http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00587.html
      Among other things, this means timer.el no longer needs to
      autoload the time-date module.
      * doc/lispref/os.texi (Time of Day, Time Conversion, Time Parsing)
      (Processor Run Time, Time Calculations):
      Document the new behavior, plus be clearer about the old behavior.
      (Idle Timers): Take advantage of new functionality.
      * etc/NEWS: Document the changes.
      * lisp/allout-widgets.el (allout-elapsed-time-seconds): Doc fix.
      * lisp/arc-mode.el (archive-ar-summarize):
      * lisp/calendar/time-date.el (seconds-to-time, days-to-time, time-since):
      * lisp/emacs-lisp/timer.el (timer-relative-time, timer-event-handler)
      (run-at-time, with-timeout-suspend, with-timeout-unsuspend):
      * lisp/net/tramp.el (tramp-time-less-p, tramp-time-subtract):
      * lisp/proced.el (proced-time-lessp):
      * lisp/timezone.el (timezone-time-from-absolute):
      * lisp/type-break.el (type-break-schedule, type-break-time-sum):
      Simplify by using new functionality.
      * lisp/calendar/cal-dst.el (calendar-next-time-zone-transition):
      Do not return time values in obsolete and undocumented (HI . LO)
      format; use (HI LO) instead.
      * lisp/calendar/time-date.el (with-decoded-time-value):
      Treat 'nil' as current time.  This is mostly for XEmacs.
      (encode-time-value, with-decoded-time-value): Obsolete.
      (time-add, time-subtract, time-less-p): Use no-op autoloads, for
      XEmacs.  Define only if XEmacs, as they're now C builtins in Emacs.
      * lisp/ldefs-boot.el: Update to match new time-date.el
      * lisp/proced.el: Do not require time-date.
      * src/editfns.c (invalid_time): New function.
      Use it instead of 'error ("Invalid time specification")'.
      (time_add, time_subtract, time_arith, Ftime_add, Ftime_less_p)
      (decode_float_time, lisp_to_timespec, lisp_time_struct):
      New functions.
      (make_time_tail, make_time): Remove.  All uses changed to use
      new functions or plain list4i.
      (disassemble_lisp_time): Return effective length if successful.
      Check that LOW is an integer, if it's combined with other components.
      (decode_time_components): Decode into struct lisp_time, not
      struct timespec, so that we can support a wide set of times
      regardless of whether time_t is signed.  Decode plain numbers
      as seconds since the Epoch, and nil as the current time.
      (lisp_time_argument, lisp_seconds_argument, Ffloat_time):
      Reimplement in terms of new functions.
      (Fencode_time): Just use list2i.
      (syms_of_editfns): Add time-add, time-subtract, time-less-p.
      * src/keyboard.c (decode_timer): Don't allow the new formats (floating
      point or nil) in timers.
      * src/systime.h (LO_TIME_BITS): New constant.  Use it everywhere in
      place of the magic number '16'.
      (struct lisp_time): New type.
      (decode_time_components): Use it.
      (lisp_to_timespec): New decl.
      0921dbc3
  2. 16 Nov, 2014 1 commit
    • Lars Magne Ingebrigtsen's avatar
      Implement an `inhibit-read-only' text property · d1b04a9e
      Lars Magne Ingebrigtsen authored
      * doc/lispref/text.texi (Special Properties): Mention `inhibit-read-only'.
      
      * src/buffer.c (Fbarf_if_buffer_read_only): Don't raise an error if
      the text at POSITION (new optional argument) has the
      `inhibit-read-only' text property set.
      
      * src/callint.c (Fcall_interactively): Pass in nil as argument to
      Fbarf_if_buffer_read_only.
      
      * src/fileio.c (Finsert_file_contents): Ditto.
      
      * src/insdel.c (prepare_to_modify_buffer_1): Pass start region in.
      
      * src/intervals.h (INTERVAL_WRITABLE_P): Check the `inhibit-read-only'
      text property.
      
      * src/textprop.c (verify_interval_modification): Check buffer
      readedness after the last interval.
      d1b04a9e
  3. 14 Nov, 2014 1 commit
  4. 13 Nov, 2014 1 commit
  5. 10 Nov, 2014 2 commits
  6. 09 Nov, 2014 1 commit
  7. 08 Nov, 2014 1 commit
  8. 05 Nov, 2014 2 commits
  9. 03 Nov, 2014 3 commits
  10. 31 Oct, 2014 1 commit
  11. 30 Oct, 2014 2 commits
  12. 29 Oct, 2014 1 commit
  13. 22 Oct, 2014 1 commit
  14. 21 Oct, 2014 1 commit
    • Stefan Monnier's avatar
      Get rid of backend-dependent selection-handling functions for kill/yank · a046b8dd
      Stefan Monnier authored
      and make it generic instead by relying on the lower-level selection
      management functions.
      
      * select.el (select-enable-clipboard): Rename from
      gui-select-enable-clipboard.
      (select-enable-primary): Move from x-win.el and rename from
      x-select-enable-primary.
      (gui-last-selected-text): Remove.
      (gui--last-selected-text-clipboard, gui--last-selected-text-primary):
      New vars.
      (gui-select-text): Rewrite, based on x-win.el's old x-select-text.
      (gui-select-text-alist, gui-selection-value-alist): Remove.
      (x-select-request-type): Move from x-win.el.
      (gui--selection-value-internal): New function, taken from x-win's
      x-selection-value-internal.
      (gui-selection-value): Rewrite, based on x-win.el's old x-selection-value.
      (gui-set-selection-alist): Rename from gui-own-selection-alist and
      extend it to handle a nil value as a "disown" request.
      (gui-disown-selection-alist): Remove.
      (xselect-convert-to-delete): Adjust accordingly.
      (gui-set-selection): Simplify accordingly as well.  Use dotimes.
      
      * lisp/frame.el (gui-method): Use window-system rather than framep.
      (gui-method-declare): The tty case is now nil rather than t.
      (make-frame): Adjust accordingly.
      
      * lisp/term/x-win.el (x-last-selected-text-primary)
      (x-select-enable-primary): Remove (moved to select.el).
      (x-select-request-type): Move to select.el.
      (x-selection-value-internal, x--selection-value): Remove functions.
      (gui-selection-value, gui-select-text): Remove moethods.
      (gui-set-selection): Merge own and disown methods.
      
      * lisp/startup.el (command-line): Adjust now that `gui-method' expects nil
      for ttys.
      
      * lisp/term/ns-win.el (ns-get-pasteboard, ns-set-pasteboard)
      (ns-selection-value): Remove functions.
      (gui-select-text, gui-selection-value): Don't define method any more.
      (gui-set-selection): Merge the old own and disown methods.
      (gui-selection-exists-p, gui-get-selection): Adjust to new name of
      underlying C primitive.
      
      * lisp/term/pc-win.el (w16-get-selection-value): Add dummy argument and drop
      test of gui-select-enable-clipboard, to make it usable as
      a gui-get-selection method.
      (gui-selection-exists-p): Adjust to new name of C primitive.
      (gui-set-selection): Merge own and disown methods.
      (gui-select-text, gui-selection-value): Delete methods.
      (w16--select-text): Delete function.
      
      * lisp/term/w32-win.el (w32--select-text, w32--get-selection-value):
      Delete function (move functionality into w32--set-selection and
      w32--get-selection).
      (gui-select-text, gui-selection-value): Don't define methods.
      (w32--set-selection, w32--get-selection, w32--selection-owner-p):
      New functions.
      (gui-get-selection, gui-selection-owner-p, gui-selection-exists-p):
      Use them.
      (gui-selection-exists-p): Adjust to new name of C primitive.
      
      * src/nsselect.m (ns_get_local_selection): Signal error rather than `quit'.
      (Fns_own_selection_internal): Tighten scoping.
      (Fns_selection_exists_p): Rename from Fx_selection_exists_p.
      (Fns_get_selection): Rename from Fx_get_selection_internal.
      (Fns_get_selection_internal, Fns_store_selection_internal):
      Remove functions.
      (syms_of_nsselect): Adjust accordingly.
      
      * src/w16select.c (Fw16_selection_exists_p): Rename from
      Fx_selection_exists_p.
      (syms_of_win16select): Adjust accordingly.
      
      * src/w32select.c (Fw32_selection_exists_p): Rename from
      Fx_selection_exists_p.
      (syms_of_w32select): Adjust accordingly.
      a046b8dd
  15. 20 Oct, 2014 4 commits
    • Stefan Monnier's avatar
      * lisp/subr.el (call-process-shell-command, process-file-shell-command): · 24421aa6
      Stefan Monnier authored
      Make the `args' obsolete.
      (start-process-shell-command, start-file-process-shell-command):
      Use `declare'.
      
      Fixes: debbugs:18409
      24421aa6
    • Glenn Morris's avatar
      Make most emulation packages obsolete. [Backport] · ef65424d
      Glenn Morris authored
      * emulation/crisp.el, emulation/tpu-edt.el, emulation/tpu-extras.el:
      * emulation/tpu-mapper.el, emulation/vi.el, emulation/vip.el:
      * emulation/ws-mode.el: Move to obsolete/.
      * doc/emacs/ack.texi (Acknowledgments): Remove some obsolete items.
      * doc/emacs/misc.texi (Emulation): Remove section.
      * doc/lispintro/emacs-lisp-intro.texi (Autoload): Update loaddefs.el details.
      * doc/misc/efaq.texi (Finding a package with particular functionality):
      Update example.
      * doc/misc/vip.texi: Mention this is obsolete.
      ef65424d
    • Glenn Morris's avatar
      * src/minibuf.c (history-length): Increase default from 30 to 100. · d9a72916
      Glenn Morris authored
      * lisp/cus-start.el (history-length): Bump :version.  [Backport]
      d9a72916
    • Stefan Monnier's avatar
      * lisp/textmodes/css-mode.el (scss-mode): New major-mode. · bc0e9e47
      Stefan Monnier authored
      (css-mode-syntax-table): Use d style comment, to ease the scss case.
      (css-ident-re): Allow things like @-moz-keyframes.
      (scss--hash-re): New const.
      (css--font-lock-keywords): New function, extracted from
      css-font-lock-keywords.
      (css-font-lock-keywords): Use it.
      (scss-mode-syntax-table, scss-font-lock-keywords): New vars.
      (scss-smie--not-interpolation-p): New function.
      (css-smie--forward-token, css-smie--backward-token): Use it.
      (css-mode): Remove left-over code.
      * test/indent/scss-mode.scss: New file.
      * test/indent/css-mode.css: Add a few uneventful examples.
      bc0e9e47
  16. 19 Oct, 2014 2 commits
  17. 18 Oct, 2014 1 commit
  18. 17 Oct, 2014 1 commit
  19. 15 Oct, 2014 2 commits
  20. 13 Oct, 2014 2 commits
  21. 12 Oct, 2014 1 commit
    • Jan Djärv's avatar
      Require OSX >= 10.6. Remove PowerPC unexec code. · 9a265587
      Jan Djärv authored
      * configure.ac: Require OSX 10.6.  Remove NSInteger test,
      use nsfont for Gnustep, macfont for OSX.
      
      * etc/NEWS: OSX required is 10.6 or newer.
      
      * src/Makefile.in: Replace nsfont.o macfont.o with ns_fontfile in
      comment.
      
      * src/macfont.h (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_FORMAT_BITMAP)
      (mac_font_copy_non_synthetic_table): Remove versions for OSX < 10.6
      
      * src/nsfns.m: Always include src/macfont.h on COCOA.
      (ns_filename_from_panel, ns_directory_from_panel)
      (Fx_create_frame, Fns_popup_font_panel, ns_run_file_dialog)
      (Fns_read_file_name, Fns_list_services): Remove code for OSX < 10.6
      
      * src/nsterm.m: Always include src/macfont.h on COCOA.
      (ns_update_auto_hide_menu_bar, ns_draw_fringe_bitmap)
      (ns_dumpglyphs_image, ns_check_menu_open)
      (applicationDidFinishLaunching)
      (antialiasThresholdDidChange:)
      (keyDown:, toggleFullScreen:, setPosition:portion:whole:): Remove
      checks for OSX <= 10.5/10.6.
      (changeFont:): Use macfont on COCOA, nsfont on GNUSTEP.
      (syms_of_nsterm): Call syms_of_macfont on COCOA, syms_of_nsfont on
      GNUSTEP.
      
      * src/macfont.m: Remove >= 1050 check.
      (macfont_create_family_with_symbol)
      (macfont_get_glyph_for_character)
      (mac_font_get_glyphs_for_variants)
      (mac_ctfont_create_available_families, syms_of_macfont): Remove
      code for OSX < 10.6.
      (mac_font_family_group, mac_font_family_compare): Remove, only used
      for OSX < 10.6.
      
      * src/nsimage.m (allocInitFromFile:): Remove code for OSX < 10.6.
      
      * src/nsmenu.m (NSMenuDidBeginTrackingNotification): Remove.
      (x_activate_menubar, trackingNotification:): Remove check for
      OSX >= 10.5.
      (menuNeedsUpdate:): Remove check for OSX < 10.5.
      
      * src/nsterm.h (MAC_OS_X_VERSION_10_4, MAC_OS_X_VERSION_10_5): Remove.
      (NS_HAVE_NSINTEGER): Remove block.
      Remove >= OSX 10.6 tests.
      
      * src/unexmacosx.c: Remove include ppc/reloc.h.
      (unrelocate, copy_dysymtab): Remove PPC code.
      (rebase_reloc_address): Remove, only used for PPC:
      9a265587
  22. 11 Oct, 2014 1 commit
  23. 10 Oct, 2014 1 commit
  24. 09 Oct, 2014 1 commit
  25. 06 Oct, 2014 1 commit
    • Glenn Morris's avatar
      Remove calendar code obsolete since at least version 23.1 · 3f659704
      Glenn Morris authored
      * lisp/calendar/cal-bahai.el (calendar-absolute-from-bahai)
      (calendar-print-bahai-date, calendar-bahai-prompt-for-date)
      (calendar-goto-bahai-date, list-bahai-diary-entries)
      (mark-bahai-calendar-date-pattern, mark-bahai-diary-entries)
      (insert-bahai-diary-entry, insert-monthly-bahai-diary-entry)
      (insert-yearly-bahai-diary-entry):
      * lisp/calendar/cal-china.el (chinese-calendar-time-zone)
      (chinese-calendar-location-name)
      (chinese-calendar-daylight-time-offset)
      (chinese-calendar-standard-time-zone-name)
      (chinese-calendar-daylight-time-zone-name)
      (chinese-calendar-daylight-savings-starts)
      (chinese-calendar-daylight-savings-ends)
      (chinese-calendar-daylight-savings-starts-time)
      (chinese-calendar-daylight-savings-ends-time)
      (chinese-calendar-celestial-stem)
      (chinese-calendar-terrestrial-branch)
      (calendar-absolute-from-chinese, calendar-print-chinese-date)
      (calendar-goto-chinese-date):
      * lisp/calendar/cal-coptic.el (calendar-absolute-from-coptic)
      (calendar-print-coptic-date, coptic-prompt-for-date)
      (calendar-goto-coptic-date, calendar-absolute-from-ethiopic)
      (calendar-print-ethiopic-date, calendar-goto-ethiopic-date):
      * lisp/calendar/cal-french.el (calendar-absolute-from-french)
      (calendar-print-french-date, calendar-goto-french-date):
      * lisp/calendar/cal-hebrew.el (diary-sabbath-candles-minutes)
      (calendar-absolute-from-hebrew, calendar-print-hebrew-date)
      (hebrew-calendar-yahrzeit, calendar-goto-hebrew-date)
      (holiday-rosh-hashanah-etc, holiday-hanukkah)
      (holiday-passover-etc, holiday-tisha-b-av-etc)
      (list-hebrew-diary-entries, mark-hebrew-calendar-date-pattern)
      (mark-hebrew-diary-entries, insert-hebrew-diary-entry)
      (insert-monthly-hebrew-diary-entry)
      (insert-yearly-hebrew-diary-entry, list-yahrzeit-dates)
      (diary-omer, diary-yahrzeit, diary-rosh-hodesh, diary-parasha)
      (diary-sabbath-candles):
      * lisp/calendar/cal-islam.el (calendar-absolute-from-islamic)
      (calendar-print-islamic-date, calendar-goto-islamic-date)
      (list-islamic-diary-entries, mark-islamic-calendar-date-pattern)
      (mark-islamic-diary-entries, insert-islamic-diary-entry)
      (insert-monthly-islamic-diary-entry)
      (insert-yearly-islamic-diary-entry):
      * lisp/calendar/cal-iso.el (calendar-absolute-from-iso)
      (calendar-print-iso-date, calendar-iso-read-args)
      (calendar-goto-iso-date, calendar-goto-iso-week):
      * lisp/calendar/cal-julian.el (calendar-absolute-from-julian)
      (calendar-print-julian-date, calendar-goto-julian-date)
      (calendar-absolute-from-astro, calendar-print-astro-day-number)
      (calendar-goto-astro-day-number):
      * lisp/calendar/cal-mayan.el (calendar-print-mayan-date)
      (calendar-next-haab-date, calendar-previous-haab-date)
      (calendar-next-tzolkin-date, calendar-previous-tzolkin-date)
      (calendar-next-calendar-round-date)
      (calendar-previous-calendar-round-date)
      (calendar-absolute-from-mayan-long-count)
      (calendar-goto-mayan-long-count-date):
      * lisp/calendar/cal-move.el (scroll-calendar-left)
      (scroll-calendar-right, scroll-calendar-left-three-months)
      (scroll-calendar-right-three-months):
      * lisp/calendar/cal-persia.el (calendar-absolute-from-persian)
      (calendar-print-persian-date, persian-prompt-for-date)
      (calendar-goto-persian-date):
      * lisp/calendar/cal-x.el (calendar-after-frame-setup-hooks):
      * lisp/calendar/calendar.el (view-diary-entries-initially)
      (mark-diary-entries-in-calendar, calendar-today-face)
      (diary-face, holiday-face, view-calendar-holidays-initially)
      (mark-holidays-in-calendar, initial-calendar-window-hook)
      (today-visible-calendar-hook, today-invisible-calendar-hook)
      (hebrew-diary-entry-symbol, islamic-diary-entry-symbol)
      (bahai-diary-entry-symbol, american-date-diary-pattern)
      (european-date-diary-pattern, european-calendar-display-form)
      (american-calendar-display-form, holidays-in-diary-buffer)
      (all-hebrew-calendar-holidays, all-christian-calendar-holidays)
      (all-islamic-calendar-holidays, all-bahai-calendar-holidays)
      (fancy-diary-buffer, increment-calendar-month)
      (extract-calendar-month, extract-calendar-day)
      (extract-calendar-year, exit-calendar, calendar-date-is-legal-p)
      (mark-visible-calendar-date, calendar-version):
      * lisp/calendar/diary-lib.el (diary-button-face, sexp-diary-entry-symbol)
      (diary-display-hook, list-diary-entries-hook)
      (mark-diary-entries-hook, nongregorian-diary-listing-hook)
      (nongregorian-diary-marking-hook, print-diary-entries-hook)
      (abbreviated-calendar-year, number-of-diary-entries)
      (view-other-diary-entries, add-to-diary-list)
      (include-other-diary-files, simple-diary-display)
      (fancy-diary-display, print-diary-entries, mark-diary-entries)
      (mark-sexp-diary-entries, mark-included-diary-files)
      (mark-calendar-days-named, mark-calendar-month)
      (mark-calendar-date-pattern, sort-diary-entries)
      (list-sexp-diary-entries, make-diary-entry, insert-diary-entry)
      (insert-weekly-diary-entry, insert-monthly-diary-entry)
      (insert-yearly-diary-entry, insert-anniversary-diary-entry)
      (insert-block-diary-entry, insert-cyclic-diary-entry)
      (fancy-diary-font-lock-keywords, fancy-diary-display-mode):
      * lisp/calendar/holidays.el (general-holidays, oriental-holidays)
      (local-holidays, other-holidays, hebrew-holidays)
      (christian-holidays, islamic-holidays, bahai-holidays)
      (solar-holidays, list-calendar-holidays)
      (check-calendar-holidays, mark-calendar-holidays)
      (filter-visible-calendar-holidays):
      * lisp/calendar/lunar.el (calendar-phases-of-moon, phases-of-moon)
      (diary-phases-of-moon): Remove obsolete aliases.
      
      * lisp/calendar/cal-menu.el (cal-menu-load-hook): Remove obsolete hook.
      * calendar/cal-x.el (calendar-one-frame-setup)
      (calendar-only-one-frame-setup, calendar-two-frame-setup):
      Remove obsolete functions.
      (cal-x-load-hook): Remove obsolete hook.
      
      * calendar/calendar.el (european-calendar-style): Remove obsolete variable.
      (calendar-date-style): No longer consult european-calendar-style.
      
      * calendar/calendar.el (european-calendar, american-calendar):
      Remove obsolete commands.
      
      * calendar/calendar.el (calendar-for-loop): Remove obsolete macro.
      
      * calendar/diary-lib.el (diary-face): Remove obsolete variable.
      (diary-font-lock-date-forms, diary-fancy-font-lock-keywords):
      Use the face `diary' instead of the variable `diary-face'.
      
      * calendar/holidays.el (hebrew-holidays-1, hebrew-holidays-2)
      (hebrew-holidays-3, hebrew-holidays-4): Remove obsolete variables.
      
      * lisp/calendar/icalendar.el (icalendar--date-style): Remove function.
      Replace all uses with calendar-date-style.
      
      * lisp/textmodes/remember.el (calendar-date-style): Declare.
      (remember-diary-convert-entry):
      No longer consult european-calendar-style.
      
      * test/automated/icalendar-tests.el (icalendar--calendar-style):
      Remove test, no longer relevant.
      3f659704
  26. 05 Oct, 2014 1 commit
  27. 04 Oct, 2014 2 commits
    • Glenn Morris's avatar
      Add NEWS entry form ntlm.el change · 27da1acc
      Glenn Morris authored
      27da1acc
    • Martin Rudalics's avatar
      Add documentation for horizontal scroll bars and fix some minor issues. · 3c6ba8b4
      Martin Rudalics authored
      * buffer.c (scroll_bar_width, scroll_bar_height): Fix
      doc-strings.
      * window.c (Fset_window_scroll_bars): Fix doc-string.
      (Fwindow_scroll_bars): Have it return what the doc-string says.
      
      * window.el (window-full-height-p): Make it behave correctly for
      minibuffer window.
      (window-current-scroll-bars): Fix code.
      (fit-frame-to-buffer): Use window-scroll-bar-height instead of
      window-scroll-bars.
      * frame.el (frame-current-scroll-bars): Fix doc-string.
      * scroll-bar.el (toggle-horizontal-scroll-bar): New command.
      
      * frames.texi (Scroll Bars): Describe use of horizontal scroll
      bars.
      
      * display.texi (Scroll Bars): Add description of horizontal scroll
      bars and associated functions.
      * frames.texi (Layout Parameters): Add horizontal scroll bar
      entries.  Remove paragraph on "combined fringe widths".
      * windows.texi (Window Sizes): Describe affects of horizontal
      scroll bars on window layout and sizes.  Fix description of
      window-full-height-p.
      (Resizing Windows): Mention horizontal scroll bar.
      3c6ba8b4