README.org (3862B)
1 #+title: detubifier.el 2 #+author: Yuval Langer https://kaka.farm/ 3 #+TEXINFO_DIR_CATEGORY: Emacs misc features 4 #+TEXINFO_DIR_DESC: Replace enshittified URLs with nonenshittified front ends. 5 #+TEXINFO_DIR_TITLE: Emacs Detubifier: (emacs-detubifier) 6 #+TEXINFO_HEADER: @set MAINTAINERSITE @uref{https://kaka.farm/,maintainer webpage} 7 #+TEXINFO_HEADER: @set MAINTAINER Yuval Langer 8 #+TEXINFO_HEADER: @set MAINTAINEREMAIL @email{yuvallangerontheroad@gmail.com} 9 #+TEXINFO_HEADER: @set MAINTAINERCONTACT @uref{mailto:yuvallangerontheroad@gmail.com,contact the maintainer} 10 11 Functions that replace URLs of enshittified social media services with nonenshittified free software front ends. 12 13 * Installation. 14 15 (taken from [[http://xahlee.info/emacs/emacs/emacs_installing_packages.html]]) 16 17 1. Add the =detubifier.el= file to =~/.emacs.d/lisp= directory (if this doens't exist create it using src_sh{mkdir -p ~/.emacs.d/lisp}). 18 2. Add something like this to your emacs init file: 19 20 #+begin_src elisp 21 ;; add lisp dir in emacs init dir, to load path 22 (add-to-list 'load-path (concat user-emacs-directory "lisp/" )) 23 ;; load a package named xx.el 24 (load "detubifier") 25 #+end_src 26 27 * Usage. 28 29 1. Set up `detubifier-regexp-replacement-pairs` using the customize-variable command. 30 2. Mark that text. 31 3. Kill it. 32 4. Run `detubifier-regexp-replacement-pairs'. 33 5. Yank it in your chat room. 34 35 * Help. 36 37 - https://codeberg.org/kakafarm/emacs-detubifier/ 38 - https://kaka.farm/~git/emacs-detubifier/ (web front end: <https://kaka.farm/~stagit/emacs-detubifier/>) 39 40 * API (alpha!). 41 42 ** Variables. 43 *** =detubifier-regexp-replacement-pairs=. 44 #+index: detubifier-regexp-replacement-pairs 45 *** =detubifier-farside-url=. 46 #+index: detubifier-farside-url 47 *** =detubifier-detubifying-method=. 48 #+index: detubifier-detubifying-method 49 *** =detubifier-enshittified-urls=. 50 #+index: detubifier-enshittified-urls 51 ** Functions. 52 53 *** TODO =detubifier-browse-url=. 54 #+findex: detubifier-browse-url 55 56 - [ ] Add real URLs. 57 58 *** TODO =detubifier-custom-detubify-region=. 59 #+findex: detubifier-custom-detubify-region 60 61 - [ ] Add real URLs. 62 63 #+begin_src emacs-lisp 64 (equal (let () 65 (insert "https://youtube.com/moo 66 https://twitter.com/blah") 67 (detubifier-custom-detubify-region (point-min) 68 (point-max)) 69 (buffer-substring-no-properties (point-min) 70 (point-max))) 71 "sdfljdsf sdfkjl https://invidious.jing.rocks/moo 72 https://nitter.poast.org/blah") 73 #+end_src 74 75 *** TODO =detubifier-custom-detubify-string=. 76 #+findex: detubifier-custom-detubify-string 77 78 - [ ] Add real URLs. 79 80 (equal (detubifier-custom-detubify-string "https://youtube.com/moo 81 https://twitter.com/blah") 82 (concat "sdfljdsf sdfkjl https://invidious.jing.rocks/moo 83 https://nitter.poast.org/blah")) 84 85 #+begin_src emacs-lisp 86 (let ((some-twitter-url "https://twitter.com/Nadav_Eyal/status/1809975194926055629")) 87 (detubifier-custom-detubify-string some-twitter-url)) 88 ;; => "https://nitter.poast.org/Nadav_Eyal/status/1809975194926055629" 89 #+end_src 90 91 *** TODO =detubifier-detubify-top-kill=. 92 #+findex: detubifier-detubify-top-kill 93 94 - [ ] Add real URLs. 95 96 *** TODO =detubifier-farsidify-region=. 97 #+findex: detubifier-farsidify-region 98 99 - [ ] Add real URLs. 100 101 *** TODO =detubifier-farsidify-string=. 102 #+findex: detubifier-farsidify-string 103 104 - [ ] Add real URLs. 105 106 #+begin_src emacs-lisp 107 (let ((some-twitter-url "https://twitter.com/Nadav_Eyal/status/1809975194926055629")) 108 (detubifier-custom-detubify-string some-twitter-url)) 109 ;; => "https://nitter.poast.org/Nadav_Eyal/status/1809975194926055629" 110 #+end_src 111 112 ** Legalese. 113 :PROPERTIES: 114 :COPYING: t 115 :END: 116 117 Lorem ipsum blah blah yada yada. 118 119 * Support. 120 121 [[https://buymeacoffee.com/kakafarm][Support me 💰 on "buymeacoffee"]]! 122 123 * Functions Index. 124 :PROPERTIES: 125 :INDEX: fn 126 :END: