Commit graph

1346 commits

Author SHA1 Message Date
Eli Zaretskii
228482b229 Force left-to-right paragraph direction in echo area and prog-mode buffers.
src/xdisp.c (set_message_1): Force paragraph direction in echo area
 be left-to-right.
 lisp/simple.el (prog-mode): Set bidi-paragraph-direction to left-to-right.
2010-11-26 21:10:26 +02:00
Stefan Monnier
4a47c27573 Merge from emacs-23 2010-11-17 22:54:14 -05:00
Stefan Monnier
9fca7811a8 Make the yank-handler argument obsolete.
* simple.el (kill-new, kill-append, kill-region):
* comint.el (comint-kill-region): Make the yank-handler argument obsolete.
2010-11-17 21:09:41 -05:00
Hrvoje Niksic
8da5345fed * lisp/simple.el (count-words-region): New function.
From: http://lists.gnu.org/archive/html/emacs-devel/2006-09/msg01029.html
2010-11-12 19:46:00 -08:00
Stefan Monnier
c156a63bb3 * lisp/simple.el (open-line): `newline' may strip trailing space. 2010-11-12 08:32:02 -05:00
Glenn Morris
9b026d9f13 Replace still more end-of-line etc with line-end-position, etc.
* lisp/gnus/nnbabyl.el (nnbabyl-request-move-article, nnbabyl-delete-mail)
(nnbabyl-check-mbox): Use point-at-bol.

* lisp/cedet/semantic/lex.el (semantic-lex-ignore-comments, semantic-flex):
* lisp/cedet/semantic/grammar.el (semantic-grammar-epilogue):
* lisp/cedet/ede/speedbar.el (ede-find-nearest-file-line):
* lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
* lisp/cedet/ede/autoconf-edit.el (autoconf-delete-parameter):
Use point-at-bol and point-at-eol.

* lisp/vc/emerge.el (emerge-line-number-in-buf):
* lisp/textmodes/ispell.el (ispell-region):
* lisp/textmodes/fill.el (current-fill-column):
* lisp/progmodes/xscheme.el (xscheme-send-current-line):
* lisp/progmodes/vhdl-mode.el (vhdl-current-line, vhdl-line-copy):
* lisp/progmodes/tcl.el (tcl-hairy-scan-for-comment):
* lisp/progmodes/sh-script.el (sh-handle-prev-do):
* lisp/progmodes/meta-mode.el (meta-indent-line):
* lisp/progmodes/idlwave.el (idlwave-goto-comment, idlwave-fill-paragraph)
(idlwave-in-quote):
* lisp/progmodes/idlw-shell.el (idlwave-shell-current-frame)
(idlwave-shell-update-bp-overlays, idlwave-shell-sources-filter):
* lisp/progmodes/fortran.el (fortran-looking-at-if-then):
* lisp/progmodes/etags.el (find-tag-in-order, etags-snarf-tag):
* lisp/progmodes/cperl-mode.el (cperl-sniff-for-indent)
(cperl-find-pods-heres):
* lisp/progmodes/ada-mode.el (ada-get-current-indent, ada-narrow-to-defun):
* lisp/net/quickurl.el (quickurl-list-insert):
* lisp/net/ldap.el (ldap-search-internal):
* lisp/net/eudc.el (eudc-expand-inline):
* lisp/mail/sendmail.el (sendmail-send-it):
* lisp/mail/mspools.el (mspools-visit-spool, mspools-get-spool-name):
* lisp/emulation/viper-cmd.el (viper-paren-match, viper-backward-indent)
(viper-brac-function):
* lisp/calc/calc-yank.el (calc-do-grab-region):
* lisp/calc/calc-keypd.el (calc-keypad-press):
* lisp/term.el (term-move-columns, term-insert-spaces):
* lisp/speedbar.el (speedbar-highlight-one-tag-line):
* lisp/simple.el (current-word):
* lisp/mouse-drag.el (mouse-drag-should-do-col-scrolling):
* lisp/info.el (Info-find-node-in-buffer-1, Info-follow-reference)
(Info-scroll-down):
* lisp/hippie-exp.el (he-line-beg):
* lisp/epa.el (epa--marked-keys):
* lisp/dired-aux.el (dired-kill-line, dired-do-kill-lines)
(dired-update-file-line, dired-add-entry, dired-remove-entry)
(dired-relist-entry):
* lisp/buff-menu.el (Buffer-menu-buffer):
* lisp/array.el (current-line):
* lisp/allout.el (allout-resolve-xref)
(allout-latex-verbatim-quote-curr-line):
Replace yet more uses of end-of-line etc with line-end-position.
2010-11-08 21:33:07 -08:00
Glenn Morris
5ed619e0a3 Use line-end-position rather than end-of-line, etc.
* textmodes/texnfo-upd.el (texinfo-start-menu-description)
(texinfo-update-menu-region-beginning, texinfo-menu-first-node)
(texinfo-delete-existing-pointers, texinfo-find-pointer)
(texinfo-clean-up-node-line, texinfo-insert-node-lines)
(texinfo-multiple-files-update):
* textmodes/table.el (table--probe-cell-left-up)
(table--probe-cell-right-bottom):
* textmodes/picture.el (picture-tab-search):
* textmodes/page-ext.el (pages-copy-header-and-position)
(pages-directory-for-addresses):
* progmodes/vera-mode.el (vera-get-offset):
* progmodes/simula.el (simula-calculate-indent):
* progmodes/python.el (python-pdbtrack-overlay-arrow):
* progmodes/prolog.el (end-of-prolog-clause):
* progmodes/perl-mode.el (perl-calculate-indent, perl-indent-exp):
* progmodes/icon.el (indent-icon-exp):
* progmodes/etags.el (tag-re-match-p):
* progmodes/ebrowse.el (ebrowse-show-file-name-at-point):
* progmodes/ebnf2ps.el (ebnf-begin-file):
* progmodes/dcl-mode.el (dcl-back-to-indentation-1)
(dcl-save-local-variable):
* play/life.el (life-setup):
* play/gametree.el (gametree-looking-at-ply):
* nxml/nxml-maint.el (nxml-insert-target-repertoire-glyph-set):
* mail/sendmail.el (mail-mode-auto-fill):
* emacs-lisp/lisp-mode.el (calculate-lisp-indent):
* emacs-lisp/edebug.el (edebug-overlay-arrow):
* emacs-lisp/checkdoc.el (checkdoc-this-string-valid):
* woman.el (woman-parse-numeric-value, woman2-TH, woman2-SH)
(woman-tab-to-tab-stop, WoMan-warn-ignored):
* type-break.el (type-break-file-keystroke-count):
* term.el (term-replace-by-expanded-history-before-point)
(term-skip-prompt, term-extract-string):
* speedbar.el (speedbar-edit-line, speedbar-expand-line)
(speedbar-contract-line, speedbar-toggle-line-expansion)
(speedbar-parse-c-or-c++tag, speedbar-parse-tex-string)
(speedbar-buffer-revert-buffer, speedbar-highlight-one-tag-line):
* sort.el (sort-skip-fields):
* skeleton.el (skeleton-internal-list):
* simple.el (line-move-finish, line-move-to-column):
* shell.el (shell-forward-command):
* misc.el (copy-from-above-command):
* makesum.el (double-column):
* ebuff-menu.el (electric-buffer-update-highlight):
* dired.el (dired-move-to-end-of-filename):
* dframe.el (dframe-popup-kludge):
* bookmark.el (bookmark-kill-line, bookmark-bmenu-show-filenames):
* arc-mode.el (archive-get-lineno):
Use line-end-position and line-beginning-position.

* net/ange-ftp.el, progmodes/hideif.el, reposition.el:
Same, but only in comments.
2010-11-06 13:23:42 -07:00
Glenn Morris
9d79402605 Remove duplicate Lisp definitions of define-minor-mode variables defined in C.
* lisp/abbrev.el (abbrev-mode):
* lisp/composite.el (auto-composition-mode):
* lisp/menu-bar.el (menu-bar-mode):
* lisp/simple.el (transient-mark-mode):
* lisp/tool-bar.el (tool-bar-mode): Adjust the define-minor-mode calls so
that they do not define the associated variables twice.
* lisp/simple.el (transient-mark-mode): Remove defvar.
* lisp/composite.el (auto-composition-mode): Make variable auto-buffer-local.
* lisp/cus-start.el: Add transient-mark-mode, menu-bar-mode, tool-bar-mode.
Handle multiple groups, and also custom-delayed-init-variables.
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix.

* src/buffer.c (syms_of_buffer) <abbrev-mode, transient-mark-mode>:
* src/frame.c (syms_of_frame) <tool-bar-mode>: Move docs here from Lisp.
2010-10-28 20:29:29 -07:00
Glenn Morris
f41f19b0d2 * lisp/simple.el (x-selection-owner-p): Remove unused declaration. 2010-10-27 20:49:40 -07:00
Chong Yidong
b8a47412d3 Decouple C-d and delete, so that the former does not delete the region.
* lisp/bindings.el (global-map): Bind C-d to delete-char and deletechar
to delete-forward-char.

* lisp/simple.el (normal-erase-is-backspace-mode): Remap delete to
deletechar, and hence delete-forward-char.

* src/cmds.c (Fdelete_char): Doc fix.
2010-10-19 11:43:27 -04:00
Juanma Barranquero
c0943d3db2 Fix typos in docstrings, comments and ChangeLogs.
* etc/tutorials/TUTORIAL.es: Fix typos.

* lisp/cedet/semantic/symref/list.el (semantic-symref-list-rename-open-hits):
  Fix typo in message.
  (semantic-symref-list-map-open-hits): Fix typo in docstring.

* lisp/erc/erc-xdcc.el (erc-xdcc-help-text): Fix typo in docstring.

* lisp/gnus/nnmail.el (nnmail-fancy-expiry-targets): Fix typo in docstring.

* lisp/international/mule.el (define-coding-system):
* lisp/international/titdic-cnv.el (quail-cxterm-package-ext-info):
* composite.el (compose-region): Fix typo in docstring.

* lisp/org/org-agenda.el (org-prefix-category-length)
  (org-prefix-category-max-length): Fix typos in docstrings.

* src/font.c (Ffont_variation_glyphs):
* ccl.c (Fccl_execute_on_string): Fix typo in docstring.
2010-10-13 01:25:19 +02:00
Juanma Barranquero
40b1a3a937 Fix typos.
* lisp/finder.el (finder-unknown-keywords):
* lisp/progmodes/gdb-mi.el (gdb-jsonify-buffer, gdb-running-threads-count):
* lisp/progmodes/etags.el (tags-table-including): Fix typos in docstrings.

* lisp/cedet/semantic/lex.el (semantic-ignore-comments): Doc fix.

* lisp/cedet/semantic/symref/list.el (semantic-symref-list-rename-open-hits):
  Fix typo in error message.
  (semantic-symref-list-map-open-hits): Fix typo in docstring.

* lisp/org/org-agenda.el (org-agenda-hide-tags-regexp):
* lisp/org/org.el (org-refile-targets): Fix typos in docstrings.
2010-09-25 14:04:35 +02:00
Stefan Monnier
984edd2215 * lisp/simple.el (blink-matching-open): Use syntax-class.
* lisp/emacs-lisp/lisp.el (up-list): Don't do nothing silently.
2010-09-20 23:45:09 +02:00
Juanma Barranquero
6664fc59a8 Merge changes from emacs-23 branch. 2010-09-14 16:41:53 +02:00
David Reitter
5a66ed0f65 simple.el (line-move-visual): Do not truncate goal column to integer size.
(Bug#7020)
2010-09-12 13:46:57 -04:00
Stefan Monnier
c34a966941 * lisp/simple.el (blink-matching-open): Don't burp if we can't find a match. 2010-09-08 18:14:44 +02:00
Stefan Monnier
e5eddfd190 * lisp/simple.el (newline): Fix last change to properly remove itself from
the hook.
2010-09-03 13:12:46 +02:00
Stefan Monnier
b13ebb5ce9 Add blink-matching-check-function and misc cleanups.
* lisp/simple.el (newline): Eliminate optimization.
Use post-self-insert-hook to set hard-newline and things before
running post-self-insert-hook.
(blink-matching-check-mismatch): New function.
(blink-matching-check-function): New variable.
(blink-matching-open): Use them.
Skip back forward over prefix chars skipped by forward-sexp.
Don't check if the parens are backslash escaped.
(blink-paren-post-self-insert-function): Check backslash escaping here.
2010-09-02 23:57:08 +02:00
Jan D
08d4877ef2 * simple.el (kill-new): Call interprogram-cut-function with only one argument. 2010-09-02 12:54:43 +02:00
Jan Djärv
6d7cc56382 Removed cut-buffer code.
* lisp/mouse-sel.el (mouse-sel-get-selection-function):
x-cut-buffer-or-selection-value renamed to x-selection-value.
(x-select-text): Optional push removed.

* lisp/select.el (x-get-cut-buffer, x-set-cut-buffer): Remove.

* lisp/simple.el (interprogram-cut-function): Remove mention of PUSH.

* lisp/w32-fns.el (x-last-selected-text):
x-cut-buffer-or-selection-value renamed to x-selection-value.
(x-cut-buffer-max): Remove.
(x-select-text): Remove argument PUSH, update documentation.

* lisp/emacs-lisp/cl-macs.el (x-get-cutbuffer, x-get-cut-buffer): Remove.

* lisp/term/ns-win.el (x-setup-function-keys, ns-last-selected-text):
x-cut-buffer-or-selection-value renamed to x-selection-value
(x-selection-value): Renamed from x-cut-buffer-or-selection-value.
(x-select-text): Remove argument PUSH, update documentation.

* lisp/term/pc-win.el (x-last-selected-text):
x-cut-buffer-or-selection-value renamed to x-selection-value
(x-select-text): Remove argument PUSH, update documentation.

* lisp/term/x-win.el: Update documentation for x-last-selected-text-*.
(x-last-selected-text-cut, x-last-selected-text-cut-encoded)
(x-last-cut-buffer-coding, x-cut-buffer-max): Remove.
(x-select-text): Remove argument PUSH, update documentation.  Remove
cut-buffer code.
(x-selection-value-internal): Was previously x-selection-value.
(x-selection-value): Renamed from x-cut-buffer-or-selection-value.
Update documentation, remove cut-buffer code.  Call
x-selection-value-internal.
(x-clipboard-yank): Call x-selection-value-internal.
(x-initialize-window-system): Remove setting of x-cut-buffer-max.

* src/xselect.c: Remove declaration of cut-buffer objects and functions.
(symbol_to_x_atom): Remove mapping to XA_CUT_BUFFERn.
(x_atom_to_symbol): Remove mapping to QCUT_BUFFERn.
(Fx_get_cut_buffer_internal, Fx_store_cut_buffer_internal)
(Fx_rotate_cut_buffers_internal): Remove.
(syms_of_xselect): Remove defsubr of above.
Remove intern of QCUT_BUFFERn.

* src/xterm.c (x_term_init): Don't set dpyinfo->cut_buffers_initialized.

* src/xterm.h (struct dpyinfo): Remove cut_buffers_initialized.
2010-09-02 11:47:08 +02:00
Kenichi Handa
7e7e8cfe01 merge trunk 2010-09-02 09:58:05 +09:00
Stefan Monnier
8f4e9110ca * lisp/simple.el (blink-paren-function): Move from C to here.
(blink-paren-post-self-insert-function): New function.
(post-self-insert-hook): Use it.
* src/cmds.c (Vblink_paren_function): Remove.
(internal_self_insert): Make it insert N chars at a time.
Don't call blink-paren-function.
(Fself_insert_command): Adjust accordingly.
(syms_of_cmds): Don't declare blink-paren-function.
2010-09-01 16:41:17 +02:00
Kenichi Handa
9e69cb054d merge changes in emacs-23 branch 2010-09-01 16:13:21 +09:00
Chong Yidong
bd78fa1d54 Add "Package:" file headers to denote built-in packages. 2010-08-29 12:17:13 -04:00
Chong Yidong
8d9f429164 * simple.el (beginning-of-buffer, end-of-buffer): Doc fix (Bug#6907). 2010-08-26 11:09:45 -04:00
Juri Linkov
7133b7ee62 Move reading an extended command to Elisp (bug#5364, bug#5214).
* lisp/simple.el (read-extended-command): New function with the logic
for `completing-read' moved to Elisp from `execute-extended-command'.
Use `function-called-at-point' in `minibuffer-default-add-function'
to get a command name for M-n (bug#5364, bug#5214).

* src/keyboard.c (Fexecute_extended_command): Move reading a command name
with `completing-read' to a new Elisp function `read-extended-command'.
Call it to read a command to `function'  (bug#5364, bug#5214).
2010-08-23 00:27:59 +01:00
Chong Yidong
b0126eac41 Merge changes from emacs-23 branch. 2010-08-22 16:02:16 -04:00
Stefan Monnier
4b9c0a498d * lisp/simple.el (blink-matching-open): Obey forward-sexp-function. 2010-08-19 11:37:40 +02:00
Stefan Monnier
b2a15250f6 * lisp/simple.el (prog-mode-map): New var.
(prog-indent-sexp): New command.
2010-08-19 01:25:36 +02:00
Chong Yidong
7c23dd4468 Let all active regions set the primary selection.
This includes both temporarily active regions (mouse drag and
shift-select) and those made with C-SPC and cursor motion.

* lisp/cus-start.el: Change defcustom for select-active-regions.

* lisp/simple.el (deactivate-mark): If select-active-regions is `only',
only set selection for temporarily active regions.

* src/insdel.c (prepare_to_modify_buffer): Handle `only' value of
select-active-regions.

* src/keyboard.c (command_loop_1): Avoid setting selection twice,
since it's done in deactivate-mark as well.
(Vselect_active_regions): Replace `lazy' value with `only',
meaning to only set PRIMARY for temporarily active regions.
2010-08-15 22:33:17 -04:00
Chong Yidong
a4aae1a532 * simple.el (kill-region): Doc fix (Bug#6787). 2010-08-14 19:21:40 -04:00
Chong Yidong
7815fe1985 Merge changes from emacs-23 branch 2010-08-08 17:12:29 -04:00
Chong Yidong
1bcb9e6575 Fix last change. 2010-08-07 16:10:30 -04:00
Chong Yidong
9852377f78 Change `select-active-region' mechanics.
Save region text prior to buffer modification.
Set window selection lazily, during `deactivate-mark' or after each
command when the region is temporarily active.

* lisp/cus-start.el: Add custom declaration for select-active-regions.

* lisp/mouse.el (mouse-drag-track): Remove hacks to deal with old
select-active-regions implementation.
(mouse-yank-at-click): Doc fix.

* lisp/simple.el (select-active-regions): Move to keyboard.c.
(deactivate-mark): Used saved-region-selection.
(select-active-region): Function removed.
(activate-mark, set-mark, push-mark-command)
(handle-shift-selection): Don't call it.
(keyboard-quit): Avoid adding the region to the window selection.

* src/insdel.c (prepare_to_modify_buffer): Save active region text to
Vsaved_region_selection.

* src/keyboard.c (Vselect_active_regions): Move from simple.el.
(Vsaved_region_selection, Qx_set_selection, QPRIMARY, Qlazy): New
vars.
(command_loop_1): Set window selection prior to deactivating the
mark.

* src/xselect.c (QPRIMARY): Move to keyboard.c.
2010-08-07 15:39:04 -04:00
Eli Zaretskii
4c5130d6d1 simple.el (delete-forward-char): Doc fix. 2010-08-07 13:11:07 +03:00
Stefan Monnier
c613687be4 * lisp/simple.el (exchange-dot-and-mark): Mark obsolete, finally. 2010-08-04 20:04:29 +02:00
Chong Yidong
91023c68af Revert 2010-07-14 change to deactivate mark; minor cleanups.
* mouse.el (mouse-drag-track): Use select-active-region.

* simple.el (select-active-region): New function.
(push-mark-command, set-mark, activate-mark)
(handle-shift-selection): Use it.
(deactivate-mark): Don't check for size of region.
2010-07-17 16:21:51 -04:00
Chong Yidong
2490cbbcb7 Change x-select-enable-primary to nil.
* lisp/mouse.el (mouse-drag-copy-region):
* lisp/simple.el (select-active-regions): Likewise.

* lisp/term/x-win.el (x-select-enable-primary): Change default to nil.
(x-select-enable-clipboard): Add :version keyword.
2010-07-16 22:49:48 -04:00
Chong Yidong
fea9cabd27 Merge changes from emacs-23 branch. 2010-07-16 11:42:15 -04:00
Chong Yidong
f9d71b4284 Change clipboard/primary selection to X application standards.
* lisp/menu-bar.el (menu-bar-enable-clipboard): Don't overwrite
Cut/Copy/Paste menu bar items.

* lisp/mouse.el: Bind mouse-2 to mouse-yank-primary.
(mouse-drag-copy-region): Default to nil.

* lisp/simple.el (select-active-regions): Default to t.
(push-mark-command): Don't overwrite primary with empty string.

* lisp/term/x-win.el (x-select-enable-clipboard): Default to t.
(x-initialize-window-system): Don't overwrite Paste menu item.
2010-07-14 14:03:39 -04:00
Chong Yidong
5cbce271a6 * simple.el (push-mark-command): Set selection for select-active-regions. 2010-07-14 12:11:39 -04:00
Adrian Robert
79cb9c05a1 term/ns-win.el: Bind M-~ to 'ns-prev-frame (due to Matthew Dempsky; bug#5084). Remove incorrect binding for S-tab. (ns-alternatives-map): Change S-tab binding to backtab (bug#6616). * simple.el (normal-erase-is-backspace-setup-frame): Set mode on under ns. 2010-07-13 13:41:49 +03:00
Chong Yidong
e5b826aed0 Fix last fix. 2010-07-10 18:41:55 -04:00
Chong Yidong
c876b2638b * simple.el (use-region-p): Doc fix (Bug#6607). 2010-07-10 15:32:53 -04:00
Chong Yidong
b922967396 * bindings.el (global-map): Bind delete and DEL, the former to
delete-forward-char.

* mouse.el (mouse-region-delete-keys): Deleted.
(mouse-show-mark): Simplify.

* simple.el (delete-active-region): New option.
(delete-backward-char): Implement in Lisp.
(delete-forward-char): New command.

* src/cmds.c (Fdelete_backward_char): Move into Lisp.
2010-06-27 21:01:11 -04:00
Karl Fogel
2c79f05378 Backport from trunk: doc fix.
* lisp/simple.el (compose-mail): Fix doc string to refer to
`compose-mail-user-agent-warnings', instead of to the nonexistent
`compose-mail-check-user-agent'.
2010-06-22 20:07:20 -07:00
Karl Fogel
7f0b7b3e87 * lisp/simple.el (compose-mail): Fix doc string to refer to
`compose-mail-user-agent-warnings', instead of to the
  nonexistent `compose-mail-check-user-agent'.
2010-06-21 19:26:46 -04:00
Juri Linkov
0665f66133 * lisp/simple.el (kill-new): Fix logic of kill-do-not-save-duplicates.
Instead of setting `replace' to t and replacing the same string
with itself, don't do certain actions when
kill-do-not-save-duplicates is non-nil and string is equal to car
of kill-ring: don't call menu-bar-update-yank-menu, don't push
interprogram-paste strings to kill-ring, and don't push the input
argument `string' to kill-ring.
http://lists.gnu.org/archive/html/emacs-devel/2010-06/msg00072.html
2010-06-04 21:38:11 +03:00
Eli Zaretskii
3f2e77354e Fix C-e when bidi reordering is in effect.
simple.el (move-end-of-line): Make sure we are at line beginning
 before backing up to end of previous line.
2010-05-19 20:16:07 +03:00
Stefan Monnier
5ad4bef575 Provide a simple generic indentation engine and use it for Prolog.
* emacs-lisp/smie.el: New file.
* progmodes/prolog.el (prolog-smie-op-levels)
(prolog-smie-indent-rules): New var.
(prolog-mode-variables): Use them to configure SMIE.
(prolog-indent-line, prolog-indent-level): Remove.
2010-05-17 15:27:26 -04:00