From 9ede1059f5db7050de8fecf291ec7963c4357083 Mon Sep 17 00:00:00 2001 From: Sacha Chua Date: Thu, 29 Aug 2024 08:17:56 -0400 Subject: add pgmacs --- 2024/talks/pgmacs.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 2024/talks/pgmacs.md (limited to '2024/talks') diff --git a/2024/talks/pgmacs.md b/2024/talks/pgmacs.md new file mode 100644 index 00000000..232294ac --- /dev/null +++ b/2024/talks/pgmacs.md @@ -0,0 +1,49 @@ +[[!meta title="PGmacs: browsing and editing PostgreSQL databases from Emacs"]] +[[!meta copyright="Copyright © 2024 Eric Marsden"]] +[[!inline pages="internal(2024/info/pgmacs-nav)" raw="yes"]] + + + + + +# PGmacs: browsing and editing PostgreSQL databases from Emacs +Eric Marsden (he/him) - + +[[!inline pages="internal(2024/info/pgmacs-before)" raw="yes"]] + +PGmacs provides an Emacs-based browsing and +editing interface for the PostgreSQL DBMS. It +allows you to browse the contents of database +tables, in paginated mode for large tables, to +edit column values in the minibuffer or using a +widget-based interface, to delete, copy and insert +new rows, and to save the contents of a table in +CSV or JSON format. You can run shell commands on +column values. You can also rename tables and +columns, add SQL comments, and generate SchemaSpy +diagrams. + +PGmacs works both in the terminal and in GUI mode. +It uses the pg-el library, which implements the +PostgreSQL wire protocol, to connect to PostgreSQL +over the network or over a Unix socket. + +The talk will provide an overview of the functionality of PGmacs, then show how it can be easily +extended to display images stored as database BLOBs inlined in a row-list buffer. + +About the speaker: + +Eric Marsden developed his first Emacs packages +pg-el, coffee.el (an implementation of the +essential Hyper Text Coffee Pot Control Protocol) +and ipp.el as a procrastination exercise to avoid +working on his PhD. He continues to use Emacs Lisp +in his spare time. + + + +[[!inline pages="internal(2024/info/pgmacs-after)" raw="yes"]] + +[[!inline pages="internal(2024/info/pgmacs-nav)" raw="yes"]] + + -- cgit v1.2.3