;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING. If not, write to the
+;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
;;; Commentary:
-;;
+
;; This module provides multi-click mouse support for GNU Emacs versions
;; 19.18 and later. I've tried to make it behave more like standard X
;; clients (eg. xterm) than the default Emacs 19 mouse selection handlers.
;;
;; (overlay-put mouse-drag-overlay 'face 'bold)
-;;; Code: =================================================================
+;;; Code:
(provide 'mouse-sel)
type for this selection should be stored.")
(defvar mouse-sel-set-selection-function
- (if (fboundp 'x-set-selection)
- 'x-set-selection)
+ (function (lambda (selection value)
+ (if (eq selection 'PRIMARY)
+ (x-select-text value)
+ (x-set-selection selection value))))
"Function to call to set selection.
Called with two arguments:
SELECTION, the name of the selection concerned, and
- VALUE, the text to store.")
+ VALUE, the text to store.
+This sets the selection as well as the cut buffer for the older applications.
+Use (setq mouse-sel-set-selection-function 'x-set-selection) if you don't care
+for them.")
(defvar mouse-sel-get-selection-function
- (if (fboundp 'x-get-selection)
- 'x-get-selection)
+ (function (lambda (selection)
+ (if (eq selection 'PRIMARY)
+ (x-cut-buffer-or-selection-value)
+ (x-get-selection selection))))
"Function to call to get the selection.
Called with one argument: