Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
####### # # E-scripts on emacsconf2022. # # Note 1: use the eev command (defined in eev.el) and the # ee alias (in my .zshrc) to execute parts of this file. # Executing this file as a whole makes no sense. # An introduction to eev can be found here: # # (find-eev-quick-intro) # http://angg.twu.net/eev-intros/find-eev-quick-intro.html # # Note 2: be VERY careful and make sure you understand what # you're doing. # # Note 3: If you use a shell other than zsh things like |& # and the for loops may not work. # # Note 4: I always run as root. # # Note 5: some parts are too old and don't work anymore. Some # never worked. # # Note 6: the definitions for the find-xxxfile commands are on my # .emacs. # # Note 7: if you see a strange command check my .zshrc -- it may # be defined there as a function or an alias. # # Note 8: the sections without dates are always older than the # sections with dates. # # This file is at <http://angg.twu.net/e/emacsconf2022.e> # or at <http://angg.twu.net/e/emacsconf2022.e.html>. # See also <http://angg.twu.net/emacs.html>, # <http://angg.twu.net/.emacs[.html]>, # <http://angg.twu.net/.zshrc[.html]>, # <http://angg.twu.net/escripts.html>, # and <http://angg.twu.net/>. # ####### # «.kla-video» (to "kla-video") # «.pyhton-video» (to "pyhton-video") https://media.emacsconf.org/2022/ https://emacsconf.org/2022/talks/ https://emacsconf.org/2022/talks/eev/ https://emacsconf.org/2022/talks/python/ https://emacsconf.org/2022/talks/realestate/ org spreadsheets https://media.emacsconf.org/2022/emacsconf-2022-realestate--real-estate-and-org-table-formulas--daniel-gopar--main.webm https://media.emacsconf.org/2022/emacsconf-2022-realestate--real-estate-and-org-table-formulas--daniel-gopar--main.webm https://media.emacsconf.org/2022/emacsconf-2022-realestate--real-estate-and-org-table-formulas--daniel-gopar.webm https://media.emacsconf.org/2022/emacsconf-2022-haskell--haskell-code-exploration-with-emacs--yuchen-pei--main.webm https://media.emacsconf.org/2022/emacsconf-2022-fanfare--fanfare-for-the-common-emacs-user--john-cummings--original.mkv https://media.emacsconf.org/2022/emacsconf-2022-fanfare--fanfare-for-the-common-emacs-user--john-cummings--main.webm https://emacsconf.org/2022/talks/health/ gnuplot https://emacsconf.org/2022/talks/haskell/ # (defun eejump-44 () (eek "M-o M-1 M-h M-w M-o")) # (find-elnode "Search and Replace") ##### # # kla-video # 2022dec04 # ##### # «kla-video» (to ".kla-video") Bidirectional links in eev ========================== http://angg.twu.net/#eev http://angg.twu.net/emacsconf2022-kla.html http://angg.twu.net/eev-current/eev-kla.el.html eev-kla.el Eduardo Ochs M-x kla: kill link to anchor Example: «an-anchor» Instructions for trying it ========================== Open eev-kla.el, go to the ";;; Commentary:" at the top of the file, and run these three blocks of tests: (find-eev "eev-kla.el") (find-eev "eev-kla.el" "a-test") (find-eev "eev-kla.el" "more-tests") (find-eev "eev-kla.el" "test-elsewhere") How does this work (inside)? ============================ Long story short: I tried to summarize the algorithm and failed, and tried again, and failed again. So: this intro (find-kla-intro) explains everything with lots of details, _and_ lots of "try it!"s that explain the functions and the data structures... The problem is that sometimes we have several hyperlinks that point to the same file... The old way of generating hyperlinks to files with `M-h M-h' - i.e., `find-here-links' - showed all the options: (find-fline "/tmp/FOO/BAR/PLIC/bletch") In the new way - in `M-x kla' and friends - an algorithm chooses the best short hyperlink. Bidirectional links =================== (find-2a ' (find-angg "HASKELL/LuaTree1.hs" "pipeThrough") ' (find-es "haskell" "pipeThrough") ) That's it! ========== Run `M-x find-kla-intro' or: (find-kla-intro) or open eev-kla.el and follow the tutorials! Most things are well documented - but `M-x kla2' is not (yet)... 1. Hyperlinks to files (and directories) 2. Hyperlinks to strings in files 3. Shorter hyperlinks to files 4. Shorter hyperlinks to strings in files 5. Shorter hyperlinks to anchors in files 6. Shorter hyperlinks to anchors and strings in files 7. Bidirectional links (with `kla' and `kla2') 8. The old way 1. Hyperlinks to files (and directories) 2. Hyperlinks to strings in files (find-file "~/bigsrc/emacs29/lisp/eshell/") (find-file "~/bigsrc/emacs29/lisp/eshell/em-unix.el") (find-fline "~/bigsrc/emacs29/lisp/eshell/") (find-fline "~/bigsrc/emacs29/lisp/eshell/esh-io.el" "Redirect to a Buffer") (find-fline "~/bigsrc/emacs29/lisp/eshell/em-unix.el" "(defun eshell-grep") \---------------------------/ \----------------/ how can we shorten this? a string to \-------------------------------------/ search for full filename 3. Shorter hyperlinks to files 4. Shorter hyperlinks to strings in files (find-code-c-d "eshell" "~/bigsrc/emacs29/lisp/eshell/") (code-c-d "eshell" "~/bigsrc/emacs29/lisp/eshell/") \----/ \---------------------------/ code directory (find-fline "~/bigsrc/emacs29/lisp/eshell/em-unix.el" "(defun eshell-grep") \---------------------------/\--------/ directory rest of the filename (find-eshellfile "em-unix.el" "(defun eshell-grep") \----/ code 5. Shorter hyperlinks to anchors in files 6. Shorter hyperlinks to anchors and strings in files (code-c-d "LATEX" "~/LATEX/" :anchor) (find-fline "~/LATEX/2022-2-C3-P1.tex" "«questao-2-gab»") (find-LATEXfile "2022-2-C3-P1.tex" "«questao-2-gab»") (find-LATEX "2022-2-C3-P1.tex" "questao-2-gab") (find-LATEX "2022-2-C3-P1.tex" "questao-2-gab" "maxima") 7. Bidirectional links (c3m212dnp 9 "title") (c3m212dna "title") (find-2a ' (find-LATEX "2022-2-C3-P1.tex" "questao-2-gab") ' (find-es "maxima" "2022-2-C3-P1") ) 8. The old way (find-kla-intro "This takes many keystrokes") 9. Try it! (find-eevfile "") ##### # # pyhton-video # 2022dec04 # ##### # «pyhton-video» (to ".pyhton-video") Short hyperlinks to Python docs =============================== http://angg.twu.net/#eev http://angg.twu.net/emacsconf2022-py.html http://angg.twu.net/eev-current/eev-rstdoc.el.html eev-rstdoc.el (find-rstdoc-intro) Eduardo Ochs Example: (find-angg "PYTHON/tut-classes.py") Tutorial: (find-rstdoc-intro) https://sachachua.com/blog/2023/01/emacsconf-backstage-using-tramp-and-timers-to-run-two-tracks-semi-automatically/ # Local Variables: # coding: utf-8-unix # End: