हाल की सूची के साथ स्प्लैश स्क्रीन को बदलें


18

छप स्क्रीन शुरुआत में उपयोगी है, लेकिन अब मैं कुछ और उपयोगी चाहता हूं: मैं चाहता हूं कि हाल ही में खोली गई फाइलों की सूची प्रस्तुत की जाए जब खाली करने के लिए कोई पूर्वनिर्धारित फाइल नहीं है। इससे भी बेहतर, अगर यह helm-recentfखिड़की हो सकती है (मैं helmपैकेज का उपयोग करता हूं )


मैं देख रहा हूं कि आपको एक समाधान मिल गया है, लेकिन मैं सिर्फ यह टिप्पणी करना चाहता था कि आपको Emacs टीम द्वारा तैयार किए गए तरीकों के लिए खुद को सीमित नहीं करना है startup.el.
कानूनविद

जवाबों:


15

इसके लिए MELPA पर एक पैकेज भी है: डैशबोर्ड: https://github.com/rakanalh/emacs-dashboard । पैकेज आपको नीचे दी गई छवि के अनुसार एक स्प्लैश स्क्रीन की अनुमति देता है:

डैशबोर्ड स्क्रीनशॉट

यहाँ use-packageएक कस्टम बैनर छवि और पाठ की रेखा, साथ ही साथ हाल ही की फ़ाइलों और बुकमार्क की सूची के साथ इसे सेट करने के लिए मेरे कॉन्फिगर से स्निपेट दिया गया है:

(use-package dashboard
    :ensure t
    :diminish dashboard-mode
    :config
    (setq dashboard-banner-logo-title "your custom text")
    (setq dashboard-startup-banner "/path/to/image")
    (setq dashboard-items '((recents  . 10)
                            (bookmarks . 10)))
    (dashboard-setup-startup-hook))

10

Manomagically: D, प्रश्न पोस्ट करने के बाद, मुझे अपने एक एकल उद्धरण को हटाकर काम करने का समाधान मिला .emacs

(setq initial-buffer-choice '(helm-recentf)) ;; Does not work

इसके लिए:

(setq initial-buffer-choice (helm-recentf)) ;; Works!!!
;; I still haven't tried doing with the built-in recentf only

या यह:

(setq initial-buffer-choice 'helm-recentf) ;; Works!!!

अपडेट करें

यह अभी भी वास्तव में ऊपर समाधान के साथ काम नहीं करता है। मुझे फाइल खुली हुई मिली लेकिन एमएसीएस स्विच scratchबफ़र के ठीक बाद में। मुझे उस फ़ाइल के बफर में कूदना होगा जिसे मैं चाहता हूं। इसलिए अभी भी इस पर और मदद की जरूरत है।

अपडेट २

कुछ कुश्ती के बाद elisp, मुझे यह अब वास्तव में काम करता है:

(require 'recentf) ;; Provided for the whole picture
(require 'helm)
(require 'helm-config)

(defun startwithrecentf()
 (buffer-name (find-file (car (helm-recentf))))
  )
(setq initial-buffer-choice (startwithrecentf)) 

अपडेट ३

निम्नलिखित अधिक कॉम्पैक्ट है। यह अतिरिक्त रूप से केस एमाक्स को अतिरिक्त तर्कों के साथ कहा जाता हैemacs somefile

(require 'recentf) ;; Provided for the whole picture
(require 'helm)
(require 'helm-config)
(if (< (length command-line-args) 2) 
(setq initial-buffer-choice (car (helm-recentf)))
)

2
मेरा मानना ​​है कि आपका प्रारंभिक प्रयास होना चाहिए (setq initial-buffer-choice 'helm-recentf)initial-buffer-choiceएक मूल्य है, जो parantheses बिना उद्धृत रूप दे देंगे के रूप में एक समारोह हो सकता है।
सार्थक यूजरनेम

जाहिर है मेरी elisp नौसिखिया कौशल।
बायोकैबरमैन

हम यहां सीखने के लिए हैं :)। उस फॉर्म के साथ मुझे helm-recentfशुरुआत में बफर मिलता है , इसलिए आपके अपडेट 2 समाधान की आवश्यकता नहीं होनी चाहिए।
सार्थक यूजरनेम

@MeaningfulUsername मैंने अद्यतन 3 बनाया : D यह उस स्थिति को संभालता है जहाँ आप फ़ाइल नाम या पहले से कुछ के साथ emacs कहते हैं।
बायोकैबरमैन

और जैसा कि आपने पहले ही नोट किया है, उद्धृत संस्करण बफर पर स्विच नहीं करता है, इसलिए ऐसा लगता है कि आपका (कार (हेल्म-हालफ)) सही समाधान है। (मुझे लगा कि यह सिर्फ एक सूची के बजाय एक लंबोदर अभिव्यक्ति होनी चाहिए, लेकिन यह काम नहीं किया ...)
सार्थक

2

यहाँ एक पैकेज है जो recentf-open-filesएमएसीएस को बिना किसी फ़ाइल को खोलने के लिए शुरू करने पर दिखाता है : https://github.com/zonuexe/init-open-recentf.el

उपयोग-पैकेज के साथ विन्यास :

(recentf-mode 1)
(setq recentf-max-menu-items 25)

(use-package init-open-recentf
  :config
  (init-open-recentf))

डेमॉन के साथ काम नहीं करता है।
HörmannHH
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.