From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jean Louis Newsgroups: gmane.emacs.help Subject: Re: Make new buffer from menu Date: Sun, 4 Dec 2022 15:03:05 +0300 Message-ID: References: <3BpVZiHtJ2qfvYFaoGSD6wsXiZ9I4gzw1gPBRi3VA8jvDWEJx119h77NiqZkLEqmAZmX1AyjWJN6zBgZwHwRU1wqpTqthx9-BO0Sx34z-80=@protonmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="29004"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/2.2.9+50 (c79959e) (2022-11-21) Cc: Heime via Users list for the GNU Emacs text editor To: Heime Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Sun Dec 04 13:07:30 2022 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p1nmM-0007LR-0E for geh-help-gnu-emacs@m.gmane-mx.org; Sun, 04 Dec 2022 13:07:30 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p1nlp-0008Bg-W1; Sun, 04 Dec 2022 07:06:58 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p1nlf-00082N-O3 for help-gnu-emacs@gnu.org; Sun, 04 Dec 2022 07:06:47 -0500 Original-Received: from stw1.rcdrun.com ([217.170.207.13]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p1nla-0002Ld-N1 for help-gnu-emacs@gnu.org; Sun, 04 Dec 2022 07:06:45 -0500 Original-Received: from localhost ([::ffff:102.83.127.103]) (AUTH: PLAIN admin, TLS: TLS1.3,256bits,ECDHE_RSA_AES_256_GCM_SHA384) by stw1.rcdrun.com with ESMTPSA id 0000000000055D83.00000000638C8D32.00005758; Sun, 04 Dec 2022 05:06:09 -0700 Mail-Followup-To: Heime , Heime via Users list for the GNU Emacs text editor Content-Disposition: inline In-Reply-To: <3BpVZiHtJ2qfvYFaoGSD6wsXiZ9I4gzw1gPBRi3VA8jvDWEJx119h77NiqZkLEqmAZmX1AyjWJN6zBgZwHwRU1wqpTqthx9-BO0Sx34z-80=@protonmail.com> Received-SPF: pass client-ip=217.170.207.13; envelope-from=bugs@gnu.support; helo=stw1.rcdrun.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:141345 Archived-At: * Heime [2022-12-03 06:59]: > > It would help me a lot if can can make a new buffer that I can set with > some major mode, from the menu. > > One cannot make a new buffer without saving it. I make new buffer with {C-x b name-of-my-new-buffer} and I use this below to create buffers by using {C-u F5}, I bind it to F5, so by using prefix, I choose the mode. For required functions see the package: GNU Emacs package: rcd-utilities.el : https://gnu.support/gnu-emacs/packages/rcd-utilities-el.html ;;; RCD TEMPORARY BUFFERS (defcustom rcd-temp-file-directory "~/tmp/" "Temporary directory for other temporary files." :group 'rcd :type 'string) (defvar rcd-temp-buffer-name "RCD TEMPORARY BUFFER") (defvar rcd-temp-buffer-modes '(("adoc-mode" . "adoc") ("emacs-lisp-mode" . "el") ("lisp-mode" . ".lisp") ("markdown-mode" . ".md") ("org-mode" . "org") ("sql-mode" . "sql") ("fundamental-mode" . "txt") ("html-mode" . "html"))) (defun rcd-temp-buffer (&optional prefix name mode) "Generate new temporary buffer." (interactive "p") (let* ((file-name (concat rcd-temp-file-directory (format-time-string "%Y-%m-%d-%H:%M:%S-") rcd-temp-buffer-name ".txt")) (buffer (or name (concat "*" rcd-temp-buffer-name "*")))) (switch-to-buffer (generate-new-buffer buffer)) (setq buffer-file-name file-name) (if current-prefix-arg (let ((mode (rcd-choose (map-keys rcd-temp-buffer-modes) "Major mode: "))) (funcall (intern mode))) (funcall (intern (or mode "fundamental-mode")))) buffer-file-name)) -- Jean Take action in Free Software Foundation campaigns: https://www.fsf.org/campaigns In support of Richard M. Stallman https://stallmansupport.org/