Emacs Lisp: age
Returns the age of people by using the PostgreSQL. It is very usable to find the age of children, relatives, friends.
Example usage of a function in the Org mode table:
| Date born | Name | Age |
|------------+-------------+---------------------------|
| / | < | < |
| 2009-06-07 | Your Friend | 15 years 5 months 28 days |
#+TBLFM: $3='(age "@$1");L
And here is the function:
defun age (date)
("Returns the age by using PostgreSQL. It is usable to find out
the age of people"
let* ((command (format "psql -Stc \"SELECT age(date('%s'));\"" date))
(
(age (shell-command-to-string command))string-trim age))
(age (" mon " " month " age))
(age (replace-regexp-in-string " mons " " months " age)))
(age (replace-regexp-in-string age))
Related pages
- GNU Emacs and Emacs Lisp ResourcesThis category is about the GNU Emacs powerful piece of software and resources relating to handling business tasks and processes with GNU Emacs an Emacs Lisp.
- Emacs LispVarious Emacs Lisp functions and resources that show how business processes and communication may be supported with programming within the GNU Emacs editor and programming lanugage.
- Emacs Lisp: how to read file into a string?GNU Emacs is the extensible, customizable, self-documenting real-time display editor with full programming language Emacs Lisp. This function file-to-string will show you how to quickly read file.
- Emacs Lisp: quick publishing of Emacs Lisp function to InternetThis is new Emacs Lisp function invented on 2019-07-15 that I am using to publish Emacs Lisp functions to Internet on my gnu.support website. It may not mean much to you as you are not using the PostgreSQL database for WRS or Website Revision System. If you do have a website, you could adapt this function to your own needs and quickly publish functions to Internet without thinking. Forget about those third party websites, just host yourself web pages.
- Emacs Lisp: use speech on your computer by using festival.el and Festival Speech systemFestival already has its GNU Emacs Support, just install festival package in your GNU/Linux distribution and you will gain soon functions to output speech. Yes, instead of messages in your Emacs minibuffer, now you can hear the real speech and in several languages. Emacs could thus remind you of new emails or new messages coming and it could tell you about finished tasks or commands. Sounds nice?
- Emacs Lisp: read-from-buffer versus read-from-minibuffer, returns string from editingAs I am often editing database fields, and such fields could represent Org Mode or Markdown documents, this function is handy to quickly edit the string and return it back. It has no version control, thus I must take care what I am doing and how I am editing the string. As if something is lost, is lost forever. Unlike the read-from-minibuffer function, this one will open full editing buffer. If I switch the mode I have to use C-M-c option to return back.
- Emacs Lisp: file-to-list function reads file line by line into a listThis Emacs Lisp function reads file line by line and returns list of lines. This may be handy when lines of the file need to be processed.
- Emacs Lisp: string-to-file-force function writes string to file forcefullyI often need to write strings to file, and without looking if the file exists or not, this handy function is doing exactly that.
- Emacs Lisp: join-lines functionWhen there is need to join the lines, this handy function helps me in editing those formatted and wrapped lines into one single joined line.
- Emacs Lisp: strip-html by Sacha Chua, remove those tags!Sacha Chua is wonderful woman that likes GNU Emacs, notes, she has her thoughts well organized and lives a happy life. Once I had to find the strip-html function and it was just there, on her website, thank you Sacha!
- Emacs Lisp: Get ATTENTION in those emails by using heading-underlined functionSometimes you wish to really put attention in emails to certain facts or paragraphs of text. Using the heading-underlined function you quickly get upcased heading underlined that your reader cannot miss it!
-
Emacs
Lisp: produce speech by using espeak shell commandEspeak shell
command is often faster then using Festival Speech. This function may be
used to quickly produce some speach. Global variables such as
*espeak-amplitude*
and*espeak-voice*
can help you set it up for your own language and volume. - Emacs Lisp: mkdatedir works in Dired and quickly creates directory by dateSorting files is one of tedious jobs we all do on the computer. Sorting is often best done chronologically by dates. Thus function creates directory within GNU Emacs Lisp, usually within Dired listings. Sort files by groups, people, and dates.
- Emacs Lisp: stockpile.el calculates volumes of stockpiles, heaps, piles, moundsThis set of function is calculating stockpile volumes depending of sizes of piles, mounds, or heaps. Engineers may be able to dissect various parts of stockpiles and then calculate their volumes by using these functions.
- Emacs Lisp: quickly remove menu items from GNU Emacs menusThis shows how one can quickly remove some items from GNU Emacs menus
- Emacs Lisp: quickly insert Openstreetmap location linkThis function asks the user for location, opens the Openstreetmap and inserts the link into buffer. Imagine you wish to tell your friends where you are located, so you need to give them some pointers.
- Emacs Lisp: emacs-org-to-html.el on command line, convert your Org files on command line to HTML outputThis is one way of converting the Org files on command line to HTML output. This is script that shall be made executable with chmod +x and it runs on command line. It may be used in website revision systems to feed Org input and get the HTML output. It could redirect to HTML file quickly, without launching full GNU Emacs. You may see inside that one function is to output full HTML and other only the body of the HTML. This is for those people who need to use templates.
- Emacs Lisp: Common Lisp solution to accept Org files from standard input and emit markdown outputThis was my previous Common Lisp solution, using CLISP implementation, to accept the Org files on standard input and emit markdown export from Org files. This is still working well, but the new solution by using GNU Emacs directly is more elegant.
-
Emacs
Lisp: using mutt within GNU Emacs under ansi-termThis function
requires some modifications for your own usage. As small script has to
be setup to run the mutt directly with the
ansi-term
function. The script namedemacs-mutt.sh
is executed under ansi-term emulation within GNU Emacs. Editor is set to emacsclient so that all editing takes place within the GNU Emacs. Configuration files without special colors are chosen. -
Emacs
Lisp: switch-to-scratch and return back to previous bufferThis
function is using register 100 to
switch-to-scratch
and remembers where to return back. Global key binding is Hyper key and 8 and once in the*scratch*
buffer, the local key binding is to return back to previous buffer. -
Emacs
Lisp: take a screenshot withing GNU Emacs and
maim
maim
is small shell utility that takes screenshots, and with the option-s
it allows cropping of a screenshot. This makes it handy to bind the<print>
key toscreenshot
function. After taking screenshot, Emacs is to open the Dired buffer with list of screenshots. From there you may send them by email or do whatever you want. If you are giving it the universal argumentC-u
it will crop the rectangle on the screen. - Emacs Lisp: mark HTML on the web page and convert it quickly to Markdown formatEmacs Lisp: mark HTML on the web page and convert it quickly to Markdown format. This function needs your own customizations. You would mark the HTML on a web page within your browser. Then you run the Emacs Lisp function and the clipboard is converted into Markdown file. The file is opened for further editing and saved for future just as a note.
- Emacs Lisp: opening media files straight from GNU Emacs Dired mode by using xdg-openThis is my personal GNU Emacs Dired setup on the V key that helps me to quickly open media files or external viewers by using xdg-open and EMMS the Emacs Multimedia System.
-
Emacs
Lisp: duden-lookup opens up https://www.duden.de German dictionary to
lookup definitionsThis example demonstrates how easy it is to
advise your GNU Emacs to query the word on any website. In this case it
is https://www.duden.de/ German dictionary. To find a definition of a
German word in German language, place your cursor on the word and run
M-x duden-lookup
. Adapt the function for your needs to open up any other website in similar fashion straight from Emacs. -
Emacs
Lisp: dig-txt and dig-txt-short as small extensions
dig
functionExtending the GNU Emacs built-indig
function is very easy withC-h f
and function name and then inspecting how to make your extension. In this casedig
is looking for text records which may be suitable to inspect SPF and other related DNS records. - Emacs Lisp: avoiding repetition in writing Nginx web server configurationsImagine you are handling hundreds of domains, and each time you need to write pretty similar web server configuration for each new domain. GNU Emacs is extensible text editor and operating environment that helps you to speed up your editing. Nginx is a web server with pretty complex configuration syntax. Yet directives for each doman may be similar to each other. By adapting these functions to your own needs you may get some speed in preparation of Nginx configuration.
-
Emacs
Lisp: Send Status to your GNU Social instance via XMPP or Jabber
protocolThis is simple customization that helps the user to
send status to GNU Social instance by using XMPP protocol. It means you
could get notices over messenger from GNU Social and you could send
notices over any XMPP or Jabber messenger to GNU Social instance. You
are getting connected wherever you are. XMPP is much easier to use then
web browser. The username
update@gnusocial.club
is your GNU social instance virtual friend. That is something you set up in your GNU Social profile under IM menu. Requirement is that administrator has enabled the menu and XMPP plugin for the GNU Social instance. As of now 2019-08-07 I just guess there are not so many GNU Social instances with XMPP connection. And then you need to have your own XMPP username or Jabber ID. Such need not be on GNU Social instance, it can be anywhere you wish, on any server, if you already have it, you can use your own Jabber ID to send status updates to GNU Social instance and vice versa, you can also receive messages over GNU Social instance. Change it to suit you. It is just a simplification of thejabber-send-message
function in the Emacs Lisp packagejabber.el
. Great one! Coordinate with your team members, assign tasks directly from GNU Emacs to their messengers. Possibilities are wide to help in communication and coordination in any team. Otherwise have fun with decentralized GNU Social networks! -
Emacs
Lisp: Record voice notes within GNU EmacsSometimes you have no
time to write and maybe you are talking or maybe you simply wish to
record a voice note. Maybe you wish to send a voice message to somebody
by email. Just use the
record-voice-note
function and it will invoke the shell commandrec
from SOX sound tools system package. Yes, you must have it or this will not work. It will record a sound note and open it in Dired. Pressq
to finish recording the sound. -
Emacs
Lisp: Record screen within GNU EmacsThe program third party
program
recordmydesktop
is used for this function to invoke screen recording within GNU Emacs. You may wish to make a demonstration in video and publish such online. Record it while using few keybindings orM-x record-screen
. This page is giving you the concept of a workflow. I consider workflow more important then the function itself. You please modify it to suit your own needs. Thescreen-record-command
is spitting out the actual screen recording command, customize it as you wish. - Emacs Lisp: why is programming language Emacs Lisp so comfortable?My thoughts about the programming language Emacs Lisp. Apparently and initially designed to extend the GNU Emacs Editor, Emacs Lisp has grown into fully fledged programming language. Things like CGI, database interfaces, contact management, customer relationship management, project management, and so many other features becamse possible within GNU Emacs. Here is the summary on what I think what makes GNU Emacs and Emacs Lisp so comfortable programming language.
- Emacs Lisp: The iota function for number ranges in Emacs LispThis is the iota function that I had to make today. I have shamelessly borrowed the description from Guile reference manual on iota function from SRFI-1 and tried to make it compliant. I guess this could be done more elegantly. For me is important that it gives me the same result as intended.
- Emacs Lisp: Azбukцeдa or azbukceda is a new mixture of cyrillic and latin alphabet as used in Bosnia and Herzegovina.Azбukцeдa or azbukceda is a new mixture of cyrillic and latin alphabet as used in Bosnia and Herzegovina. It is mixture that is readable by every citizen of the country. Instead of using two alphabets the members of the society Eko Kultura speak and write in one united alphabet named azbukceda. This is new Emacs Lisp input method to write Azбukцeдa.
- Emacs Lisp: input method for FULLWIDTH LATIN LETTERSThis is input method for FULLWIDTH LATIN LETTERS for easy writing whenever necessary.
- Emacs Lisp: input method for ⒸⒾⓇⒸⓁⒺⒹ lettersThis enables easy writing of ⒸⒾⓇⒸⓁⒺⒹ letters with GNU Emacs text editor.
- Emacs Lisp: 𝕸𝖆𝖙𝖍𝖊𝖒𝖆𝖙𝖎𝖈𝖆𝖑 𝕴𝖓𝖕𝖚𝖙 𝕸𝖊𝖙𝖍𝖔𝖉This is 𝖒𝖆𝖙𝖍𝖊𝖒𝖆𝖙𝖎𝖈𝖆𝖑 𝖎𝖓𝖕𝖚𝖙 𝖒𝖊𝖙𝖍𝖔𝖉 for 𝕲𝕹𝖀 𝕰𝖒𝖆𝖈𝖘. If you wish to write with 𝖙𝖍𝖆𝖙 𝖙𝖞𝖕𝖊 𝖔𝖋 𝖑𝖊𝖙𝖙𝖊𝖗𝖘, 𝖞𝖔𝖚 𝖏𝖚𝖘𝖙 𝖑𝖔𝖆𝖉 𝖙𝖍𝖎𝖘 𝖋𝖎𝖑𝖊.
- Emacs Lisp: calculate interest rates on accrued HYIP investmentsHYIP is High Yield Investment Program, a kind of a fraudulent scheme. We are not promoting such scheme rather dis-advising people who get caught by the greed and possibility to earn high income within few days. Sometimes the “yield” may be as much as 5% per week and more. And people investing into the HYIP or High Yield Investment Programs believe the nonsense. This Emacs Lisp function can demonstrate what money could the company earn would they be collecting money themselves, without asking public to receive more and more investments. Calculate yourself and compare it logically, and you will come to conclusion that a company offering that high interest rates would never ask public for new investments, they could be earning it themselves without sharing with anybody.
- Emacs Lisp: ffmpeg-cut-diredThis function is used with Dired within Emacs to cut video files from specific begin time for specific duration. Files are cut and saved in the directory. This may be handy to use your Emacs editor as movie editor application.
- Emacs Lisp: Optimize JPG images within Dired with help of ImageMagickThis Emacs Lisp function is optimizing marked JPG images within Dired and GNU Emacs editor. It is using ImageMagick and web recommendation on how images shall be optimized. The quality of images will be 70% of the original and setttings for optimization are made for Internet. Do not use this function on images which quality shall remain intact for printing or publishing purposes others but web.
- Emacs Lisp: kdeconnect-sms-send or sending SMS straight from Emacskdeconnect is great program to connect various mobile devices and computers. It works well between mobile devices as well. Emacs as text editor functions as advanced programmable framework that allows users to do just anything with programming language Emacs Lisp allows. Example is that Emacs could be converted into SMS gateway for marketing purposes. Only the concepts are described here.
- Emacs Lisp: remove-emails, function for mutt email client to anonymize forwarded messagesThis function is helpful when writing emails with mutt or maybe other email clients that are using Emacs editor for text or mail message composition. It removes all emails displayed from buffer. At some occasions user may want to forward email messages from other people without revealing their email addresses. The mutt email client usually displayes email addresses in this format and all such addresses may be easily removed with this interactive command.
- Emacs Lisp: renumber-files, rename bunch of file names in Dired by date and numberThis function works within Dired or Directory Editor in GNU Emacs. It will rename bunch of files and renumber them automatically by date and number of the file. It is useful when you are renaming less important images or bunch of files with irrelevant file names.
- Emacs Lisp: number-to-words-clisp and number-to-words functions using CLISP to get cardinal English numbersEmacs Lisp does not have a built in function as Common Lisp to quickly return cardinal English numbers in words, so this function uses the external program CLISP or GNU Common Lisp to get the representation. Then a number 4 can be converted to word “four”
- Emacs Lisp: Tihs is itneretsing ftuncion taht wlil scarmble the txet in scuh a manenr taht it stlil ramiens readable. This interesting Emacs Lisp function in scrambling text in such a manner that it still remains readable, so called jumbled letters. Use GNU Emacs to send funny text to your friends.
- How to insert new line in Emacs editor?Several few ways are explained here on how to insert a new line before the current line while editing text with Emacs editor.
Leave Your Comment or Contact GNU.Support
Contact GNU.Support now. There is a simple rule at GNU.Support: if we can help you, we do, whenever and wherever necessary, and it's the way we've been doing business since 2002, and the only way we know