Recent Changes

Updates in the last 90 days

1 | 3 | 7 | 30 | 90 days
List all changes Include rollbacks Include minor changes
List later changes RSS RSS with pages RSS with pages and diff




  • 04:46 UTC (new) (history) 2019-02-04 A simple template mechanism in Elisp . . . . Marcin Borkowski A long time ago I asked on the Emacs mailing list about a templating mechanism for Emacs Lisp. Of course, there is format. However, I don’t like it as a template engine, since the entries are identified by their order and not names. Then, there is YASnippet and skeleton.el, but they are (probably) better suited for interactive use. (At least Yasnippet can be used programmatically, but it seemed to be too complicated for my needs anyway back then.) Some people suggested other solutions, none of which really appealed to me. So, I set out to write my own.



  • 19:47 UTC (new) (history) 2019-01-20 Filling and version control . . . . Marcin Borkowski It has been said a lot of times that when writing some (natural language) text with version control in Emacs, filling is a bad idea. Any change involving adding or deleting a significant number of characters and then refilling can result in all subsequent lines in a paragraph changed, and the diff looks really ugly then. The solution usually proposed is putting each sentence on a separate line, and then just use visual-line-mode to wrap your lines on the screen without putting any hard newlines in. Well, I sort of dislike this idea.


  • 05:23 UTC (new) (history) 2019-01-14 Some Org Agenda keybindings . . . . Marcin Borkowski This post is just a friendly reminder that it may be a good idea to look in the manual from time to time, just in case there are some gems hidden there you don’t remember (even if you read it once). It turns out that you can do a lot of things from the Org Agenda buffer.





  • 11:46 UTC (new) (history) 2018-12-16 A simple tip on using destructive functions . . . . Marcin Borkowski This is something fairly obvious to every seasoned Lisp programmer, but let’s not forget that there are novices, too. Many Elisp functions are noted to be “destructive”, which means that they can change their arguments. For instance, if you want to sort a list, you may use the sort function, which is said to modify its argument by side effects (this is exactly what “destructive” means). This does not necessarily mean, however, that after executing (sort some-list), the variable some-list will magically contain a sorted version of it previous self! Let’s consider two examples.




  • 16:56 UTC (new) (history) 2018-11-26 format-seconds . . . . Marcin Borkowski If you’ve ever done anything UI- and time-related in Elisp (or whatever language), chances are that you did stuff like (defun format-minutes (minutes) "Format MINUTES in a human-friendly way."