PGmacs: browsing and editing PostgreSQL databases from Emacs
Eric Marsden (he/him) - eric.marsden@risk-engineering.org, @emarsden@mastodon.social
The following image shows where the talk is in the schedule for Sun 2024-12-08. Solid lines show talks with Q&A via BigBlueButton. Dashed lines show talks with Q&A via IRC or Etherpad.
Format: 14-min talk ; Q&A: BigBlueButton conference room https://media.emacsconf.org/2024/current/bbb-pgmacs.html Etherpad: https://pad.emacsconf.org/2024-pgmacs
Etherpad: https://pad.emacsconf.org/2024-pgmacs
Discuss on IRC: #emacsconf-gen
Status: Ready to stream
Sunday, Dec 8 2024, ~11:40 AM - 11:55 AM MST (US/Mountain)
Sunday, Dec 8 2024, ~10:40 AM - 10:55 AM PST (US/Pacific)
Sunday, Dec 8 2024, ~6:40 PM - 6:55 PM UTC
Sunday, Dec 8 2024, ~7:40 PM - 7:55 PM CET (Europe/Paris)
Sunday, Dec 8 2024, ~8:40 PM - 8:55 PM EET (Europe/Athens)
Monday, Dec 9 2024, ~12:10 AM - 12:25 AM IST (Asia/Kolkata)
Monday, Dec 9 2024, ~2:40 AM - 2:55 AM +08 (Asia/Singapore)
Monday, Dec 9 2024, ~3:40 AM - 3:55 AM JST (Asia/Tokyo)
Description
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.
https://github.com/emarsden/pgmacs
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.
Questions or comments? Please e-mail eric.marsden@risk-engineering.org