summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-09-20* view-conf.el (durand-focus): New define-minor-mode syntax.JSDurand
2021-09-19Fit the annotation buffer to windowJSDurand
* bookmark-conf.el: (durand-bookmark-jump-fit-to-window, bookmark-jump): Add an :after advice to fit the annotation buffer to its window. For some reason this is not done by default.
2021-09-19* init.el (global-map): Hyper-g => GnusJSDurand
2021-09-17* bookmark-conf.el (blist-expert): I am not an expert.JSDurand
2021-09-17eww-conf: use an advice to override pop-to-bufferJSDurand
* eww-conf.el (durand-pop-to-buffer-advice, durand-eww-bookmark-jump): A temporary advice is better than a temporary re-definition: at least we don't have to do all those unnecessary extra work to load window.el now. But this approach is still risky, as we override the basic function `pop-to-buffer', which might lead to unpredictable consequences. For now, it seems to work, though.
2021-09-16eww-conf: Use a giant hackJSDurand
* eww-conf.el (durand-eww-bookmark-jump): Now we don't have to copy the definition of eww. This is much more future-compatible. Instead we use a giant hack that re-defines the built-in function pop-to-buffer, and then restores its definition later, by loading the window.el file. This may be viewed as even uglier. Haha.
2021-09-15eww bookmark: fix position jumpingJSDurand
* eww-conf.el (durand-eww-bookmark-jump): I forgot to give the bookmark handler the saved position, so it might jump to weird positions. Now this is fixed.
2021-09-15change the order of filter groups of bookmarksJSDurand
2021-09-15EWW: integrate with the built-in bookmark frameworkJSDurand
* bookmark-conf.el (blist-eww-p): Group EWW bookmarks together. * eww-conf.el (durand-eww-bookmark-make-record) (durand-eww-set-bookmark-record-function, eww-mode-hook): Make records for EWW buffers. (durand-eww-bookmark-jump): Jump to EWW bookmarks.
2021-09-15bookmark: add Info groupJSDurand
* bookmark-conf.el (blist-filter-groups, blist-info-p): Add the info group.
2021-09-13bookmark: stylistic changesJSDurand
2021-09-13add a feed as a potential backupJSDurand
* elfeed-conf.el (elfeed-feeds): It is really not a good idea to keep the list of feeds in this file. I shall move this list into some other place in the future.
2021-09-13eshell-conf: Fix docs and bookmark handlerJSDurand
* eshell-conf.el (durand-eshell-bookmark-jump, eshell-bookmark-jump): Fix the bookmark handler so that it does not pop to the buffer automatically, which thus allows to open the bookmark in another window.
2021-09-13Add configurations for my package blistJSDurand
Just adding my custom groups and setting some custom variables.
2021-09-09* view-conf.el (durand-open-targets): setq + defvarJSDurand
This combination is more convenient if I want to change the value of the variable.
2021-09-06org: conform to XHTML 1.0 strict in the websiteJSDurand
* org-conf.el (durand-org-publish-html-advice): I used the tag "time", which is not supported by XHTML 1.0 strict. Also the attribute "datetime" is invalid. So I use the "p" tag with a "subtitle" attribute to display the date/time information below the title of each article/post. Now the websites all conform to the XHTML 1.0 strict standard, which is a good thing, I surmise.
2021-09-06load outline-conf in the activation functionJSDurand
* init.el (durand-maybe-enable-outline): This is the activation function for outline-minor-mode, for me. So it makes sense to define this initially as a function to load my configurations, so that I can use the functionalities even if I haven't loaded my configurations yet.
2021-09-06eshell: formatting and a time comparisonJSDurand
* eshell-conf.el (eshell-current-command-stop): I shall compare both the number of seconds and the number of micro-seconds. Fix other formatting issues as well.
2021-09-06bind ESC to apply meta!JSDurand
META is more important than CONTROL, since, for example, M-x is most conveniently input using META-x. With M-x, one can literally input any command we want, so it is per chance the most important modifier, after all.
2021-09-05org: display feeds page in the sidebarJSDurand
* org-conf.el (durand-org-publish-sidebar): It is better to display the page containing the feeds in the sidebar, in my opinion.
2021-09-05org: Exclude javascript and add date/time infoJSDurand
* org-conf.el (org-html-head-include-scripts): Don't include that snippet here. (durand-org-publish-html-advice, org-html-publish-to-html): Advice the publishing function to include a date/time information in each post.
2021-09-02bongo: bulk replace song names in playlistsJSDurand
* bongo.el (durand-bongo-replace-name-in-playlist-files): When I moved some songs to sub-directories, I would like to quickly change the song names in the playlist files quickly, otherwise when playing songs from the playlists, they will become broken links. This function provides exactly this functionality. For the usage see the documentation of this function.
2021-08-31* .gitignore: ignore tramp record file as wellJSDurand
2021-08-31bongo: handle errors in timerJSDurand
* bongo.el (durand-bongo-mpv-player-tick): Now if the timer encounters an error, it will stop itself. Hopefully this can prevent Emacs from running the tick timer indefinitely that sometimes happens for no reason.
2021-08-29Generate Atom feeds for the websiteJSDurand
* org-conf.el (durand-sitemap-custom-string-alist) (durand-org-publish-sitemap): Add links to the atom files. (durand-org-post-process): Call `durand-org-generate-atom-feed' in this function. (durand-org-atom-titles-alist): Associate titles and feed files with the project name. (durand-org-atom-preamble, durand-org-atom-entry-template) (durand-org-atom-postamble): The generated Atom file is controlled by these template variables. (durand-org-atom-format-time): The zone of the time should be in a specific format that no time format string provides. So I write this function to provide this formatting. (durand-org-generate-atom-feed): Apply the templates to generate the Atom feed files.
2021-08-28Add more feeds and a playing featureJSDurand
* elfeed-conf.el (elfeed-feeds): More feeds. (durand-elfeed-play-video, durand-eshell-download-play-sentinel) (durand-elfeed-download-video, elfeed-search-mode-map) (elfeed-show-mode-map): Add a function to instantaneously play the video in the feed.
2021-08-28Refinements to publish the blogJSDurand
* org-conf.el (durand-org-publish-sidebar) (durand-org-publish-insert-sidebar): Use a sidebar for the navigation: Instead of the built-in UP/HOME buttons, I want to go to sitemap files for different types of blog posts quickly. This is more convenient for the readers I think. This is inspired by the design of Protesilaos' website. (durand-org-publish-css-file): Add my own CSS file in the header. (durand-org-publish-favicon): Add the favicon I produced by a simple C program. (org-publish-project-alist): Add a Math type of blog posts. (durand-sitemap-custom-string-alist): Add a custom string to each type's sitemap file. (durand-org-publish-sitemap, durand-org-publish-sitemap-format): Use a table instead of a list in the sitemap. This is also inspired by the design of Protesilaos' website. (durand-org-publish-plist-get): The built-in `plist-get' mal-functions, and this is a replacement. After I update my Emacs, this problem might be fixed, and this replcement might not be needed anymore. (durand-org-publish-convert-time): Convert the result of `parse-time-string' to a time value. The result may lack some information, as the parsed string does not provide them. So this function supplies 0 for the missing values. Note that it assumes the year, month, and day cannot be missing, though. (durand-org-index-entries-max-num): Show at most a fixed number of entries on the index page. This maximum is set to 10 now. (durand-org-post-process): Shorten the date strings in the sitemap files: I need the exact date for sorting, but I don't want to show those information in the sitemap files. So I convert the long form of dates to comments, and use the shortened form for display. Also this generates a proper index page from the various sitemap files. Right now it will insert the entries to the index file each time this is called, which is kind of inefficient. I might adapt a more efficient method later on. I also want to generate Atom feeds in this function, but right now I don't have such a need, and this is not fulfilled yet. This kind of imitates the behaviour of Protesilaos' website.
2021-08-28Use my searx instance to searchJSDurand
2021-08-28* common.el (durand-take): Convenient functionJSDurand
2021-08-24* init.el ("rainbow-mode"): Useful for codes with colorsJSDurand
2021-08-24Use Org-mode to publish a blogJSDurand
* org-conf.el (org-publish-project-alist): The settings are stored in this variable. (durand-sitemap-custom-string-alist): My hack to insert some strings in sitemap files. (durand-org-publish-sitemap): Custom function to generate sitemaps. (durand-org-publish-sitemap-format): Add a date to the format of the entries. (ox): Add a require to avoid some errors at startup.
2021-08-21c-conf: re-bind and add include functionJSDurand
* c-conf.el (durand-c-prefix-map): Bind the pragma and the include functions. (c-mode-map): Bind the prefix map. (durand-c-include): Generate the include directives automatically.
2021-08-19Clear all irrelevant processes at onceJSDurand
* init.el (durand-simple-clear-processes): Clear all irrelevant processes at once. (global-map): Bind to the key "c" in `process-menu-mode-map'.
2021-08-17* .gitignore: add projectsJSDurand
2021-08-17new function: durand-copy-line-dwimJSDurand
* basic.el (global-map): Bind to "s-;". * common.el (durand-copy-line-dwim): This meets my needs to copy or duplicate lines.
2021-08-16Display Gnus in a separate tabJSDurand
The separation of Gnus into a tab means I can better handle the mails and deal with them without interrupting my other activities. * basic.el (display-buffer-alist): This creates the tab to display * GNUS. * gnus-conf.el (durand-display-gnus, gnus): This buries the original buffer and calls the previous function. And gnus is after-adviced by this function. This is needed since gnus calls `switch-to-buffer' instead of `display-buffer' internally. (durand-gnus-kill-tab): The kill-tab function kills the tab, if it is present. (durand-gnus-quit, gnus-group-mode-map): Bury the buffer and kills the tab. Bind to the original "q" key. (gnus-exit-gnus-hook): Call the kill-tab function in this hook.
2021-08-15* completion-conf.el (completions-format): one-columnJSDurand
2021-08-13bongo: only "tick" when seekingJSDurand
* bongo.el (durand-bongo-mpv-player-tick, bongo-mpv-player-tick): Cancel this timer as soon as possible. (durand-bongo-seek-stop-timer, durand-bongo-seek-tick) (durand-bongo-seek-start-timer): Start a dedicated timer for seeking purposes. Also update the seek buffer after updating the elapsed time. (durand-bongo-seek-start-timer-maybe): For compatibility, don't start the timer if the backend is not mpv.
2021-08-13fix comment headers and experiment with publishJSDurand
Some comment should start with three semi-colons so that they are treated as outline headings. * org-conf.el (org-publish-project-alist): Experiment with this.
2021-08-13adapt to the latest modus-themesJSDurand
The changes are according to the documentation in the info of the package, and are mainly personal preferences, so I do not want to record the rationales here (and there is none). * theme.el (modus-themes-syntax, modus-themes-mode-line) (modus-themes-hl-line, modus-themes-region, modus-themes-org-agenda) (modus-themes-variable-pitch-ui):
2021-08-13* gnus-conf.el (sc-confirm-always-p): too annoyingJSDurand
2021-08-13* .gitignore: This should be part of the repository.JSDurand
2021-08-12new: add outline configurationsJSDurand
Configuring outline-minor-mode, which provides an easy interface to navigate around codes. I mainly use this in Emacs Lisp buffers now. * outline-conf.el (durand-outline-regexp-alist): Each major mode could have a unique outline heading. (durand-outline-blocklist, durand-maybe-enable-outline): Don't enable outline minor mode for derived modes of the major modes in the block list. (outline-minor-mode-highlight): I want to highlight the headings. (outline-minor-mode-cycle): I like the cycling behaviour. (outline-minor-mode-map): Bind my custom key-bindings. * view-conf.el (durand-view-map): Bind to my custom map.
2021-08-12fix: sentence-end-double-spaceJSDurand
* basic.el (sentence-end-double-space): I used to erroneously set this to nil.
2021-08-12new: configure superciteJSDurand
* gnus-conf.el (sc-cite-original): This is the main user entry point of Supercite. (mail-citation-hook): This hook is used to cite messages. (sc-electric-references-p): Don't use electric reference mode automatically. I prefer the manual approach. (sc-preferred-header-style): I like "sc-header-on-said". (sc-nested-citation-p): I prefer the non-nested style.
2021-08-12rename: LICENSE -> COPYINGJSDurand
This conforms to GNU coding standard. Note this is just a personal taste. It is of course not mandatory for my personal Emacs configuration file to conform to a coding standard.
2021-08-11fix: basic - bookmark-fontifyJSDurand
* basic.el (bookmark-fontify): This Emacs-28-specific option is annoying to me, as it causes an overlay to appear which is not so easy to dismiss immediately.
2021-08-11new: gnus disable auto-save for dribble fileJSDurand
* gnus-conf.el (gnus): add an advice to disable auto-save-mode for the dribble file.
2021-08-10change: eshell-clearJSDurand
* eshell-conf.el (eshell-clear): Now it accepts a numeric argument. This will now preserve NUM many prompts.
2021-08-09change: beautify the dashboard in durand-ibuffer-clearJSDurand
* ibuffer.el (durand-ibuffer-clear): Place the point at the last character and recenter to show the whole buffer nicely.