summaryrefslogtreecommitdiffstats
path: root/2024/talks/pgmacs.md
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--2024/talks/pgmacs.md49
1 files changed, 49 insertions, 0 deletions
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"]]
+
+<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
+<!-- You can manually edit this file to update the abstract, add links, etc. --->
+
+
+# PGmacs: browsing and editing PostgreSQL databases from Emacs
+Eric Marsden (he/him) - <mailto:eric.marsden@risk-engineering.org>
+
+[[!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"]]
+
+